Discussing the article: "Data Science and ML (Part 31): Using CatBoost AI Models for Trading"

 

Check out the new article: Data Science and ML (Part 31): Using CatBoost AI Models for Trading.

CatBoost AI models have gained massive popularity recently among machine learning communities due to their predictive accuracy, efficiency, and robustness to scattered and difficult datasets. In this article, we are going to discuss in detail how to implement these types of models in an attempt to beat the forex market.

CatBoost is an open-source software library with gradient-boosting algorithms on decision trees, it was designed specifically to address the challenges of handling categorical features and data in machine learning.

It was developed by Yandex and was made open-source in the year of 2017, read more.

Despite being introduced recently compared to machine learning techniques such as Linear regression or SVM's, CatBoost gained massive popularity among AI communities and rose to the top of the most used machine learning models on platforms like Kaggle.

What made CatBoost gain this much attention is its ability to automatically handle categorical features in the dataset, which can be challenging to many machine learning algorithms.

  • Catboost models usually provide a better performance compared to other models with minimal effort, even with the default parameters and settings, these models can perform well accuracy-wise.
  • Unlike neural networks which require domain knowledge to code and make themwork, CatBoost's implementation is straightforward.

Author: Omega J Msigwa

 
Your writing is thought provoking. 

I wonder what would happen if we also tracked which trading session we're in.
 
yes, trading session is a valuable variable to have in your training data
 
All classifiers (including catboost) work correctly only with normalised attributes. Prices as attributes are not suitable.
 

and there is also the problem of exporting the classifier model to ONNX


Note

The label is inferred incorrectly for binary classification. This is a known bug in the onnxruntime implementation. Ignore the value of this parameter in case of binary classification.