Тестер: вкладка оптимизация - максимальная просадка

 

Как задать ограничение максимальной просадки в долл. а не в % ?

Это нужно для определения живучисти эксперта.

В % не совсем правильно, т.к. результат сильно зависит от времени начала тестирования.

Поясню: баланс может увеличится очень резко и соответственно просадка в % будет маленькой по отношению к текущему балансу но не в начальному.

Абсолютная просадка относительно начального депо тоже не совсем правильный параметр в этом случае, т.к. стоит начать тестирование в другой момент времени на том же интервале и абсолютная просадка будет другой.

 

Для проверки такой устойчивости нужно прогнать несколько тестов, например, год длиной, сдвигая даты начала/конца по 2 месяца назад. С десяток-полтора тестов хотя бы. Тогда и будет видно "истинное лицо" такой конфигурации, как она себя поведёт в разное время.

 

Я, например, себе сделал возможность запускать тест/оптимизацию по годам, по кварталам, начиная с любого места и т.д. и там эти просадки очень хорошо видны и илюзии относительно устойчивости стратегии очень быстро пропадают.

А параметр "максимальная просадка в валюте депозита" отлично видна в результатах оптимизации - вторая колонка с права.

При депо 10000 и этой просадке 3000 это означает что если начнем тестить в любой момент времени внутри тестируемого диапазона дат максимальная просадка составит 30%.

Поэтому я считаю что в вкладке ограничения оптимизации очень нужно иметь такую возможность останавливать тест если мах. просадка в долларах превысила определенное значение.

Возможно разработчики не совсем внимательно вникли в проблему, но предлагаемое в МТ ограничение в % это совершенно не то о чем я здесь говорю.

Можно конечно утереться и обойчить без этого, но зачем тогда вести бесконечные дискусии о скорости оптимизации и т.д.?

Зачем тестить проходы с просадкой в долл. 7000 (70%) и с относительной просадкой 15% - обман самого себя.

 

Кто нибудь докажет мне что при депо в 10000 максимальная просадка в 2000 и 20% это одно и тоже?

Тестирование без реинвестирования и постоянным лотом.

Rosh? Renat?

Я утверждаю что это разные вещи, т.к. после некоторого увеличения депо пожет последовать серия убытков (с постоянным лотом), которую увеличенный депо выдержит, и если начать торговлю непосредственно перед этой серией убытков ,то неизбежно будет слив.

Поэтому мое пожелание: кроме ограничения максимальной просадки в % нужно добавить ограничение мах. просадки в долларах.

Можно конечно эту остановку оптимизации предусмотреть в коде самостоятельно, но зачем тогда вкладка "оптимизация"?

Пусть все сами себе програмируют что хотят.

 

Почти дублирую самого себя:

Тут на форуме предлагались и другие варианты критериев, довольно экзотические. Всем не угодишь, у меня и у самого могут появиться какие-нибудь критерии. И вместо того, чтобы увеличивать список, плодя кучу параметров, многие из которых будут непонятны для большинства, лучше сделать универсальное решение, т.е. возможность кодировать пользовательский параметр на языке MQL4. Тогда писателю при желании удастся и черта соленого сделать.

 
Aleksey24:

Как задать ограничение максимальной просадки в долл. а не в % ?

Это нужно для определения живучисти эксперта.

В % не совсем правильно, т.к. результат сильно зависит от времени начала тестирования.

Поясню: баланс может увеличится очень резко и соответственно просадка в % будет маленькой по отношению к текущему балансу но не в начальному.

Абсолютная просадка относительно начального депо тоже не совсем правильный параметр в этом случае, т.к. стоит начать тестирование в другой момент времени на том же интервале и абсолютная просадка будет другой.

Для Вашего случая в тестере есть все необходимое, как мне кажется



Разницу между разными видами просадки можно увидеть на примере счета Alexandre (alexgomel). Насчет пользовательской функции оптимизации я тоже в курсе - О бедном target'е замолвите слово ..
 

Я учился на Ваших статьях на Альпари, Rosh, однако при всем уважении не могу согласиться.

Не уверен, что Вы до конца вникли в поднимаюмую мной проблему.

Просто нужно дабавить в эту вкладку следующее:

Maximal drawdown (%)

Maximal drawdown ($)

Сейчас ограничение доступно только в % ( хотя об этом нужно догадываться т.к. ничего не написано)

Отмеченные Вами пункты не заменят этот параметр.

Maximal drawdown ($) выводится в результатах оптимизации (называется "просадка $").

 
Aleksey24:

Отмеченные Вами пункты не заменят этот параметр.


Согласен c Aleksey24. Минимальный баланс позволяет отсеивать результаты по абсолютной просадке. Но это не максимальная просадка в $, о которой идет речь. Тоже самое касается и минимальной маржи и относительной просадки - это все несколько другие вещи.

Вариант фильтрации по максимальной просадке в $ был бы очень полезен, т.к. он позволяет делать утверждения о максимальных потерях ТС в рамках тестируемого периода, независимо от конкретного момента начала торговли ТС внутри этого периода. А это дает возможность адекватно оценить объем минимального начального капитала, который нужен для работы по тестируемой ТС.

 
bstone:
Aleksey24:

Отмеченные Вами пункты не заменят этот параметр.


Согласен c Aleksey24. Минимальный баланс позволяет отсеивать результаты по абсолютной просадке. Но это не максимальная просадка в $, о которой идет речь. Тоже самое касается и минимальной маржи и относительной просадки - это все несколько другие вещи.

Вариант фильтрации по максимальной просадке в $ был бы очень полезен, т.к. он позволяет делать утверждения о максимальных потерях ТС в рамках тестируемого периода, независимо от конкретного момента начала торговли ТС внутри этого периода. А это дает возможность адекватно оценить объем минимального начального капитала, который нужен для работы по тестируемой ТС.


Вот! Человек другими простыми словами идеально об"яснил то что я пробую втолковать!

Разработчики - слово за вами! Просто сделайте это - не жмитесь! :)

 
Так понятие максимальная просадка как раз и подразумевает максимальную просадку (масло масляное) аки "максимальных потерях ТС в рамках тестируемого периода, независимо от конкретного момента начала торговли ТС внутри этого периода. "

Осталось только доказать, что тестер считает не то. А значение Balance minimum позволяет ограничить абсолютную просадку.

Minimal margin level позволяет ограничить Относительную(процентную) просадку.
 
Mathemat:

Почти дублирую самого себя:

Тут на форуме предлагались и другие варианты критериев, довольно экзотические. Всем не угодишь, у меня и у самого могут появиться какие-нибудь критерии. И вместо того, чтобы увеличивать список, плодя кучу параметров, многие из которых будут непонятны для большинства, лучше сделать универсальное решение, т.е. возможность кодировать пользовательский параметр на языке MQL4. Тогда писателю при желании удастся и черта соленого сделать.

Полностью поддерживаю, самое оптимальное решение это запускать тестер с параметрами по желанию -

tester(int param1, int param2, double param3) и т.д. а с результатами потом можно делать все что душе угодно.

Другой вопрос - что разработчики уже нераз заявляли что никаких доработок в МТ4 небудет (кроме устранения багов) , остается надеятся что в МТ5 эти пожелания учтут.