Open-Source ML Models for Quantitative Finance
Machine learning trading algorithms apply statistical learning models. Gradient boosting, neural networks, and transformers. To financial time-series data to predict price movements or generate trading signals. These open-source implementations cover both regression (price target) and classification (direction) formulations.
How ML algorithms connect across libraries
How ML algorithms work together in a trading system
Price, volume, indicators
Model predictions
Signal threshold filtering
Profit taking & stop loss
Position sizing & portfolio
Compare ML algorithms across key dimensions
| Metric | LightGBMRegressorFreqtrade | LightGBMClassifierFreqtrade | XGBoostRegressorFreqtrade | XGBoostClassifierFreqtrade | PyTorchMLPRegressorFreqtrade | PyTorchTransformerRegressorFreqtrade | LGBModelQlib (Microsoft) | XGBModelQlib (Microsoft) | DNNModelQlib (Microsoft) | ALSTMQlib (Microsoft) | TFTModelQlib (Microsoft) | GATsQlib (Microsoft) |
|---|---|---|---|---|---|---|---|---|---|---|---|---|
| Complexity | βββintermediate | βββintermediate | βββintermediate | βββintermediate | ββββadvanced | ββββadvanced | βββintermediate | βββintermediate | ββββadvanced | ββββadvanced | ββββadvanced | ββββadvanced |
| Prediction Type | Regression | Classification | Regression | Classification | Regression | Regression | Mixed | Mixed | Mixed | Sequence | Mixed | Mixed |
| Training Speed | β‘β‘β‘ | β‘β‘β‘ | β‘β‘β‘ | β‘β‘β‘ | β‘β‘ | β‘ | β‘β‘ | β‘β‘ | β‘β‘ | β‘ | β‘β‘ | β‘β‘ |
| Accuracy | πππ | πππ | πππ | πππ | πππ | ππππ | ππ | ππ | ππ | πππ | ππ | ππππ |
| Best For | Tabular data | Tabular data | Tabular data | Tabular data | Non-linear patterns | Time series patterns | General purpose | General purpose | General purpose | Sequential data | General purpose | Graph relationships |
Gradient boosting regression model for price movement prediction using LightGBM.
freqtrade/freqai/prediction_models/LightGBMRegressor.pyLightGBM classification model for user-defined discrete labels.
freqtrade/freqai/prediction_models/LightGBMClassifier.pyXGBoost-based regression model for continuous value prediction.
freqtrade/freqai/prediction_models/XGBoostRegressor.pyXGBoost classification model for user-defined discrete labels.
freqtrade/freqai/prediction_models/XGBoostClassifier.pyMulti-layer perceptron neural network for regression-based price prediction.
freqtrade/freqai/prediction_models/PyTorchMLPRegressor.pyLightGBM model for stock return prediction using technical and fundamental features.
| num_leaves | 31 | Maximum number of leaves |
| learning_rate | 0.1 | Boosting learning rate |
qlib/contrib/model/gbdt.pyXGBoost model for stock return prediction.
qlib/contrib/model/xgboost.pyDeep neural network for nonlinear feature extraction and return prediction.
| hidden_size | 256 | Hidden layer size |
qlib/contrib/model/pytorch_nn.pyAttention-based LSTM for sequential stock data modeling with attention mechanism.
| hidden_size | 64 | LSTM hidden size |
| num_layers | 2 | Number of LSTM layers |
qlib/contrib/model/pytorch_alstm.pyTemporal Fusion Transformer combining static and temporal features for multi-horizon prediction.
qlib/contrib/model/pytorch_tft.py