Predict profitability of trades based on indicator buy / sell signals

Overview

Predict profitability of trades based on indicator buy / sell signals

Trade profitability analysis for trades based on various indicators signals:

  • MACD
  • Simple Moving Average
  • Exponential Moving Average

  • Trading assumptions:
    1. Trade is profitable if, profit >0
    2. Buy / sell happen the following day of the signal
    3. Buy / sell are taken 10% from the open price towards close price

    Machine learning assumptions:
    • Binary classification: 1 - profit, 0 - loss
    • A separate model for each company / ticker
    • Model is trained vs optimal precision

    Machine learning models used:
    1. Linear Support Vector Classifier
    2. Decision Tree Classifier
    3. Random Forest Classifier
    4. Gradient Boosting Classifier
    5. XGBoost Classifier
    6. Keras classifier

    Trade analysis intermediate results:
    30-40% of trades based on indicator signals are profitable
    In general trades on SMA signals are more often profitable than the ones based on EMA signals

    Trade profitability predictions intermediate results (based on test data)/
    The precision of the predictions is oscilating around 70%, which is pretty good, considering that the analysts estimate other signals accuracy as 30 to 50% (double top, shoulder & arms, etc). This means, there is ~70% chance that predicted trade will be profitable (Reminder: profitable -> profit > 0)
    However, the recall is only around 15%, which means that very the model pick-up very few of the actually profitable trades.

    #Detailed analysis tbc

    Owner
    Tomasz Porzycki
    Tomasz Porzycki
    Probabilistic time series modeling in Python

    GluonTS - Probabilistic Time Series Modeling in Python GluonTS is a Python toolkit for probabilistic time series modeling, built around Apache MXNet (

    Amazon Web Services - Labs 3.3k Jan 03, 2023
    BentoML is a flexible, high-performance framework for serving, managing, and deploying machine learning models.

    Model Serving Made Easy BentoML is a flexible, high-performance framework for serving, managing, and deploying machine learning models. Supports multi

    BentoML 4.4k Jan 04, 2023
    [DEPRECATED] Tensorflow wrapper for DataFrames on Apache Spark

    TensorFrames (Deprecated) Note: TensorFrames is deprecated. You can use pandas UDF instead. Experimental TensorFlow binding for Scala and Apache Spark

    Databricks 757 Dec 31, 2022
    Greykite: A flexible, intuitive and fast forecasting library

    The Greykite library provides flexible, intuitive and fast forecasts through its flagship algorithm, Silverkite.

    LinkedIn 1.7k Jan 04, 2023
    PyPOTS - A Python Toolbox for Data Mining on Partially-Observed Time Series

    A python toolbox/library for data mining on partially-observed time series, supporting tasks of forecasting/imputation/classification/clustering on incomplete multivariate time series with missing va

    Wenjie Du 179 Dec 31, 2022
    Python Research Framework

    Python Research Framework

    EleutherAI 106 Dec 13, 2022
    Model Validation Toolkit is a collection of tools to assist with validating machine learning models prior to deploying them to production and monitoring them after deployment to production.

    Model Validation Toolkit is a collection of tools to assist with validating machine learning models prior to deploying them to production and monitoring them after deployment to production.

    FINRA 25 Dec 28, 2022
    A concept I came up which ditches the idea of "layers" in a neural network.

    Dynet A concept I came up which ditches the idea of "layers" in a neural network. Install Copy Dynet.py to your project. Run the example Install matpl

    Anik Patel 4 Dec 05, 2021
    mlpack: a scalable C++ machine learning library --

    a fast, flexible machine learning library Home | Documentation | Doxygen | Community | Help | IRC Chat Download: current stable version (3.4.2) mlpack

    mlpack 4.2k Jan 01, 2023
    A statistical library designed to fill the void in Python's time series analysis capabilities, including the equivalent of R's auto.arima function.

    pmdarima Pmdarima (originally pyramid-arima, for the anagram of 'py' + 'arima') is a statistical library designed to fill the void in Python's time se

    alkaline-ml 1.3k Dec 22, 2022
    A quick reference guide to the most commonly used patterns and functions in PySpark SQL

    Using PySpark we can process data from Hadoop HDFS, AWS S3, and many file systems. PySpark also is used to process real-time data using Streaming and

    Sundar Ramamurthy 53 Dec 21, 2022
    Flask app to predict daily radiation from the time series of Solcast from Islamabad, Pakistan

    Solar-radiation-ISB-MLOps - Flask app to predict daily radiation from the time series of Solcast from Islamabad, Pakistan.

    Abid Ali Awan 1 Dec 31, 2021
    💀mummify: a version control tool for machine learning

    mummify is a version control tool for machine learning. It's simple, fast, and designed for model prototyping.

    Max Humber 43 Jul 09, 2022
    Python implementation of the rulefit algorithm

    RuleFit Implementation of a rule based prediction algorithm based on the rulefit algorithm from Friedman and Popescu (PDF) The algorithm can be used f

    Christoph Molnar 326 Jan 02, 2023
    Feature-engine is a Python library with multiple transformers to engineer and select features for use in machine learning models.

    Feature-engine is a Python library with multiple transformers to engineer and select features for use in machine learning models. Feature-engine's transformers follow scikit-learn's functionality wit

    Soledad Galli 33 Dec 27, 2022
    Simple, fast, and parallelized symbolic regression in Python/Julia via regularized evolution and simulated annealing

    Parallelized symbolic regression built on Julia, and interfaced by Python. Uses regularized evolution, simulated annealing, and gradient-free optimization.

    Miles Cranmer 924 Jan 03, 2023
    PyHarmonize: Adding harmony lines to recorded melodies in Python

    PyHarmonize: Adding harmony lines to recorded melodies in Python About To use this module, the user provides a wav file containing a melody, the key i

    Julian Kappler 2 May 20, 2022
    Distributed Evolutionary Algorithms in Python

    DEAP DEAP is a novel evolutionary computation framework for rapid prototyping and testing of ideas. It seeks to make algorithms explicit and data stru

    Distributed Evolutionary Algorithms in Python 4.9k Jan 05, 2023
    AutoTabular automates machine learning tasks enabling you to easily achieve strong predictive performance in your applications.

    AutoTabular AutoTabular automates machine learning tasks enabling you to easily achieve strong predictive performance in your applications. With just

    wenqi 2 Jun 26, 2022
    We have a dataset of user performances. The project is to develop a machine learning model that will predict the salaries of baseball players.

    Salary-Prediction-with-Machine-Learning 1. Business Problem Can a machine learning project be implemented to estimate the salaries of baseball players

    Ayşe Nur Türkaslan 9 Oct 14, 2022