It has indeed been a good trading time, for counter trend strategies, my own manual trading has paid off way better than it normally does in these times so at this stage anyway, I share in your joy.

Thanks. We live in a world where testing, testing, testing is the name of the game at the moment. Our lives are starting to depend on it.bodavid » Thu Apr 30, 2020 10:48 am wrote:Congratulations!![]()
![]()
![]()
![]()
![]()
![]()
![]()
![]()
![]()
![]()
![]()
![]()
Steve, you can and must be really very proud of your endless creative work!
Slopey Peaky Bob is probably one of the best Eas around and I believe many of your other older EAs are also working good for traders who have learned to tame them.
Cheers,
Ben
Source: https://manual.zorro-project.com/tutorial_kelly.htm.Why the square root? Here's the background in short. In short term trading with high leverage, the required capital is mainly determined by the expected maximum drawdown. The maximum drawdown of any trade system increases over time. A system tested over 10 years has worse drawdowns than the same system tested over only 5 years. When modeling drawdown depth mathematically with a diffusion model, the maximum drawdown is proportional to the square root of the trading time. But the maximum drawdown is also proportional to the invested amount: When investing twice the volume you'll get twice the drawdown. Thus, if you would reinvest a fixed percentage of your balance, as suggested in most trading books, the maximum drawdown would grow by both effects proportionally to time to the power of 1.5. It will thus grow faster than your account balance. This means that at some point, a drawdown will inevitably exceed the balance, causing a margin call. There are several methods to overcome this problem, and one of them is to reinvest only an amount proportional to the square root of the capital growth. Thus when your capital doubles, increase the trade volume only by a factor of about 1.4 (the square root of 2), i.e. 40%.
Code: Select all
if (UseEquity)
DoshDollop = AccountInfoDouble(ACCOUNT_EQUITY);
// Reinvest with the square root of the profit, to reduce long term drawdowns.
// The EA can use 'extern double InitialCash = 1000;' and 'extern bool SqrtReinvest = true;' to enable it
if (SqrtReinvest && (DoshDollop > InitialCash))
DoshDollop = sqrt(DoshDollop/InitialCash)*InitialCash;