I'm trying to train an algorithm to copy some of the top traders on various forex social trading sites. The problem is that the traders only trade around say 10 times per month so even if I only look at minute resolution numbers that's .02% of the time [ 10/(60*24*30)*100 ].

I've tried using random forest and it gives an error rate of around 2% which is unacceptable and from what I've read most machine learning algorithms have similar errors rates.

Does anyone know of a better approach?

  • $\begingroup$ I'm not in this business but I imagine they would want error bars on their estimates to quantify the risk, so they would gravitate towards Bayesian methods. The best place to ask as @wacax says is Quant.SE. $\endgroup$
    – Emre
    Jan 28, 2016 at 18:30
  • $\begingroup$ What do you mean by 'copy some of the top traders'? It isn' t very clear what you are trying to predict with what features. $\endgroup$
    – xgdgsc
    Jan 30, 2016 at 1:41
  • $\begingroup$ I'm trying to train an algorithm using the "buy and sell decisions" of real people so that I can then predict when I should buy or sell in the future. $\endgroup$
    – Charlie
    Feb 1, 2016 at 20:30

1 Answer 1


Random forests, GBM or even the newer and fancier xgboost are not the best candidates for binary classification (predicting ups and down) of stocks predictions or forex trading or at least not as the main algorithm. The reason is that, for this particular problem, they require a huge amount of trees (and tree depth in case of GBM or xgboost) to obtain reasonable accuracy (Breiman suggested using at least 5000 trees and to "not be stingy" and in fact his main ML paper on RF he used 50,000 trees per run).

However, some quants use random forests as feature selectors while others use it to generate new features. It all depends on the characteristics of the data.

I would suggest you read this question and answers on quant.stackexchange where people discuss what methods are the best and when to use them, among them ISOMAP, Laplacian eigenmaps, ANNs, swarm optimization.

Check out the machine-learning tag on the same site, there you might find information related to your particular dataset.

  • $\begingroup$ Can you please explain more about what you mean by tree depth for random forest? It's not a problem for me to run with 50K "number of trees" - but the error doesn't change. My main question is are there any ML algorithms that have lower errors than that? $\endgroup$
    – Charlie
    Jan 29, 2016 at 18:37
  • 1
    $\begingroup$ tree depth (max.depth) and interaction depth only apply to xgboost and GBM respectively, both tree based methods and both more accurate than random forests. And as for better algorithms, from a purely classification accuracy (as well as other metrics) point of view the ones included in the answer almost always outperform Random Forests. IF the error doesn't change even after switching to a better algorithm then you should most likely do some feature engineering which unfortunately is mostly kept secret in the quant world. $\endgroup$
    – wacax
    Jan 29, 2016 at 19:33

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.