All Projects → decisivealpha → Decisiveml

decisivealpha / Decisiveml

Licence: bsd-3-clause
Machine learning end-to-end research and trade execution

Projects that are alternatives of or similar to Decisiveml

Ismartdnn
Light-weighted neural network inference for object detection on small-scale FPGA board
Stars: ✭ 62 (-1.59%)
Mutual labels:  jupyter-notebook
How to make a tensorflow image classifier live
Stars: ✭ 63 (+0%)
Mutual labels:  jupyter-notebook
Pizzafire
Run your own DeepStyle factory on the cloud.
Stars: ✭ 63 (+0%)
Mutual labels:  jupyter-notebook
Relaynet pytorch
Pytorch Implementation of retinal OCT Layer Segmentation (with trained models)
Stars: ✭ 63 (+0%)
Mutual labels:  jupyter-notebook
Ipybind
IPython / Jupyter integration for pybind11
Stars: ✭ 63 (+0%)
Mutual labels:  jupyter-notebook
Hmms
Continuous-time Hidden Markov Model
Stars: ✭ 62 (-1.59%)
Mutual labels:  jupyter-notebook
Dmia2018 fall public
Stars: ✭ 63 (+0%)
Mutual labels:  jupyter-notebook
Sudo rm rf
Code for SuDoRm-Rf networks for efficient audio source separation. SuDoRm-Rf stands for SUccessive DOwnsampling and Resampling of Multi-Resolution Features which enables a more efficient way of separating sources from mixtures.
Stars: ✭ 64 (+1.59%)
Mutual labels:  jupyter-notebook
Constrained decoding
Lexically constrained decoding for sequence generation using Grid Beam Search
Stars: ✭ 63 (+0%)
Mutual labels:  jupyter-notebook
Pysparkgeoanalysis
🌐 Interactive Workshop on GeoAnalysis using PySpark
Stars: ✭ 63 (+0%)
Mutual labels:  jupyter-notebook
Niwidgets
Neuroimaging widgets for jupyter notebooks
Stars: ✭ 63 (+0%)
Mutual labels:  jupyter-notebook
Anomaly detection for cern
This is code for my CERN presentation
Stars: ✭ 63 (+0%)
Mutual labels:  jupyter-notebook
Codingworkshops
Programming challenges for python, webdev, data science Python Project Night
Stars: ✭ 63 (+0%)
Mutual labels:  jupyter-notebook
Deeplabv3p gluon
DeepLab v3+ in MXNet Gluon
Stars: ✭ 63 (+0%)
Mutual labels:  jupyter-notebook
Deeplearning Nlp Models
A small, interpretable codebase containing the re-implementation of a few "deep" NLP models in PyTorch. Colab notebooks to run with GPUs. Models: word2vec, CNNs, transformer, gpt.
Stars: ✭ 64 (+1.59%)
Mutual labels:  jupyter-notebook
Vitech
tuyển chọn các tài liệu về công nghệ bằng tiếng Việt
Stars: ✭ 63 (+0%)
Mutual labels:  jupyter-notebook
Tutorials 2017
Geophysical Tutorials column for 2017
Stars: ✭ 63 (+0%)
Mutual labels:  jupyter-notebook
Learners Space
This repository contains all the content for these courses to be covered in Learner's Space -
Stars: ✭ 64 (+1.59%)
Mutual labels:  jupyter-notebook
Recsyspuc 2020
Material del curso de Sistemas Recomendadores IIC3633 PUC Chile
Stars: ✭ 64 (+1.59%)
Mutual labels:  jupyter-notebook
Deep3dpose
Stars: ✭ 63 (+0%)
Mutual labels:  jupyter-notebook

DecisiveML

Build Status PyPi Python Discord Chat

DecisiveML enables end-to-end research and trade execution with machine learning

Install

pip install decisiveml

Develop

Dependency management uses poetry, test suite is nose, and code style is black.

To develop:

  1. Initialize with make install
  2. Run tests with: make test

Examples

See notebooks for more

Trend Scanning

See docs for more on Trend Scanning

import decisiveml as dml
import numpy as np
import pandas as pd

# Generate random price history
raw_frame = pd.DataFrame(index=pd.date_range("2018-12-01", "2019-07-01"))
raw_frame["equity"] = (np.random.randn(raw_frame.shape[0]) / 100).cumsum()
raw_frame["close"] = 48.76 * (1 + raw_frame["equity"])

# Use a cross-over signal as entry
df = raw_frame["2019-01-01":"2019-06-01"].copy()
df["mavg"] = df.close.rolling(10).mean()
m_crossabove = (df.close.shift(1) < df.mavg) & (df.close > df.mavg)
m_crossbelow = (df.close.shift(1) > df.mavg) & (df.close < df.mavg)
df["entry"] = df[m_crossabove | m_crossbelow].close

# Calculate trendscanning
trend = dml.getBinsFromTrend(
    molecule=df["entry"].dropna().index, close=df.close, span=[22, 44, 11],
)

Monte Carlo

See docs for more on Monte Carlo

import decisiveml as dml

# set up margin requirements for instrument
margin = 5000
start_date = datetime.date(2016, 1, 1)
end_date = datetime.date(2018, 1, 1)

# list of trades
trades_list = random.sample(range(-2000, 2300), 100)

# Initialize
mc = dml.MonteCarlo(trades_list)

# We will sample with replacement the number of trades per year
# so we need the start and end date to determine how many trades at in a year on average
mc.settings(margin, start_date, end_date)

# Test different levels of equity starting at this value
trial_starting_equity = int(margin * 1.5)

# Run the Monte Carlo
results = mc.run(trial_starting_equity)

# Results:
# ========
# Recommend a starting equity of 15000.0, which has 5.9% Risk-of-Ruin, 81% Probability-of-Profit and a 1.65 Returns/Drawdown Ratio
# Risk Assessment: FAILED
# MC-Drawdown: 30.2% MC-1.5x-DD: 45.2%
# Average monthly net profit: 307.8

Support

Released under BSD-3-Clause license

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].