Вместо CodeBase : простая реализация мартингейла, в которой можно поменять сигнальную часть и вообще использовать произвольные сигналы. Даже результаты Machine Learning :-)
Можно крутить в тестере, можно менять сигнал. Но даже для демки - надо весьма дорабатывать, приложенный код на среднем уровне FreeLance.
Сигнал взят от балды - классическое пересечение 2-х машек, и опционально дневной AO . То есть фактически рандом, как у всех
Главное, мартин довольно аккуратно выводит из полос неудач:
Примечания к алгоритму:
* мартингейл считается от просадки. Как и 99% ММ, которые так или иначе на нём основаны. Не надо себе льстить, если в правилах ММ есть "увеличим объём или усредним после N проигрышей/недели убытков/крупного факапа/первых удач" то это мартингейл. И считается он как функция от графика просадки, отличаются только нюансы расчетов. В приложенном коде простая функция. А вообще стоит ещё учитывать фактор времени, а не только отсчёты сделок.
* чем позже будет вход в мартин (то есть начнётся реальное увеличение объёмов) тем лучше. (лучше конечно вообще без него). В коде - вход в мартин после двух неудач подряд.
* чем раньше будет выход из мартина тем лучше. В коде есть раннее завершение мартина при достижении 3,5,8,13 крат начального объёма
* (в коде этого нет) не надо пытаться отбить проигрыш - достаточно корректировать, чтобы "нижняя огибающая графика в контрольных точках была чуть лучше чем просто при СБ".