Обсуждение статьи "Выцарапываем профит до последнего пипса" - страница 13

 

Real VS Tester.

Красная - без скольжения. Синяя - со скольжением.


Поскольку ничего не менялось с момента запуска, то можно сравнить отличие результата в Тестере и на реале для каждой ТС.

Красная линия показывает результат без скольжений. Совпадение для каждой ТС довольно высокое.

Синяя линия показывает скольжение. Здесь несколько необычно, т.к. можно видеть скольжение в Тестере и скольжение на реале. Линии снова довольно близки.


Надо учитывать, что на реале были реджекты и обрывы связи (раз 50 в сутки по 10-20 секунд каждый).


ЗЫ Графики построены с помощью Graphics.mqh через Report.mqh.

 

При настройке ТС есть два подхода

  1. Торговля постоянным лотом.
  2. ММ, как часть от свободных средств (или баланса).

Первый случай хорош тем, что можно видеть величину мат. ожидания используемой закономерности. Казалось бы, что чем оно выше, тем лучше. Но когда речь заходит об реинвестировании робастой ТС, то может случиться так, что большее количество мелких сделок выгоднее, чем меньшее количество сделок крупнее.

Например, в пипсах результат может быть одинаков у двух проходов. Но проход с бОльшим количеством сделок может стать предпочтительнее при реинвестировании.


Поэтому хорошо бы иметь критерий оптимизации для реинвестирования.

Взял такой: какая относительная прибыльность достигается при жестко заданной максимальной относительной просадке.

Алгоритм вычисления этой прибыльности можно посмотреть здесь.

sinput double inMaxDD = 0.3; // Для какой максимальной просадки вычислить риск?

double OnTester()
{
  double SumGain, MaxDD, RF;
 
  // https://www.mql5.com/ru/forum/170953/page21#comment_13448682   
  return(GetSumGain(GetRisk(inMaxDD, 0.01, _Symbol), SumGain, MaxDD, RF, _Symbol) ? SumGain : 0);
}

При таком расчете можно не думать о ММ совсем в своей ТС для тестера. Все будет работать, будто ММ есть.


ЗЫ Конечно, в OnTester добавляется доп. условие по наличию отрицательных сделок и их приличном количестве.

 
fxsaber:

Поэтому хорошо бы иметь критерий оптимизации для реинвестирования.

Взял такой: какая относительная прибыльность достигается при жестко заданной максимальной относительной просадке.

Какое принципиальное отличие от рекавери фактора?

 
Andrey Khatimlianskii:

Какое принципиальное отличие от рекавери фактора?

1: при риске 2.00 увеличение было бы в 64.50 раза с максимальной относительной просадкой по балансу 0.82, фактор восстановления = 50.28
1: при риске 1.90 увеличение было бы в 56.63 раза с максимальной относительной просадкой по балансу 0.80, фактор восстановления = 43.34
1: при риске 1.80 увеличение было бы в 49.22 раза с максимальной относительной просадкой по балансу 0.78, фактор восстановления = 37.14
1: при риске 1.70 увеличение было бы в 42.36 раза с максимальной относительной просадкой по балансу 0.75, фактор восстановления = 31.64
1: при риске 1.60 увеличение было бы в 36.12 раза с максимальной относительной просадкой по балансу 0.73, фактор восстановления = 26.80
1: при риске 1.50 увеличение было бы в 30.52 раза с максимальной относительной просадкой по балансу 0.70, фактор восстановления = 22.59
1: при риске 1.40 увеличение было бы в 25.57 раза с максимальной относительной просадкой по балансу 0.67, фактор восстановления = 18.94
1: при риске 1.30 увеличение было бы в 21.25 раза с максимальной относительной просадкой по балансу 0.64, фактор восстановления = 15.80
1: при риске 1.20 увеличение было бы в 17.52 раза с максимальной относительной просадкой по балансу 0.61, фактор восстановления = 13.12
1: при риске 1.10 увеличение было бы в 14.33 раза с максимальной относительной просадкой по балансу 0.57, фактор восстановления = 10.84
1: при риске 1.00 увеличение было бы в 11.64 раза с максимальной относительной просадкой по балансу 0.53, фактор восстановления = 8.92
1: при риске 0.90 увеличение было бы в 9.38 раза с максимальной относительной просадкой по балансу 0.49, фактор восстановления = 7.30
1: при риске 0.80 увеличение было бы в 7.51 раза с максимальной относительной просадкой по балансу 0.45, фактор восстановления = 5.95
1: при риске 0.70 увеличение было бы в 5.97 раза с максимальной относительной просадкой по балансу 0.40, фактор восстановления = 4.83
1: при риске 0.60 увеличение было бы в 4.72 раза с максимальной относительной просадкой по балансу 0.35, фактор восстановления = 3.91
1: при риске 0.50 увеличение было бы в 3.70 раза с максимальной относительной просадкой по балансу 0.30, фактор восстановления = 3.14
1: при риске 0.40 увеличение было бы в 2.88 раза с максимальной относительной просадкой по балансу 0.25, фактор восстановления = 2.52
1: при риске 0.30 увеличение было бы в 2.23 раза с максимальной относительной просадкой по балансу 0.19, фактор восстановления = 2.01
1: при риске 0.20 увеличение было бы в 1.72 раза с максимальной относительной просадкой по балансу 0.13, фактор восстановления = 1.60
1: при риске 0.10 увеличение было бы в 1.32 раза с максимальной относительной просадкой по балансу 0.07, фактор восстановления = 1.27

ФВ - во сколько раз удалось подняться после самой крупной относительной просадки.


Допустим, рухнули в 10 раз, а затем поднялись во столько же, в конце получив исходный баланс. Тогда прибыльность равна единице, просадка 90%, ФВ = 10.

Допустим, рухнули в 5 раз, а затем поднялись в 10, в конце получив удвоенный баланс. Тогда прибыльность равна двойке, просадка 50%, ФВ = 10.


PS Лучше взять ТС, прогнать в Оптимизаторе и сравнить ФВ и OnTester.

 
fxsaber:

ФВ - во сколько раз удалось подняться после самой крупной относительной просадки.

первый раз вижу такое определение.
 
TheXpert:
первый раз вижу такое определение.

Хорошо бы дополнить другим определением.

 
fxsaber:

Хорошо бы дополнить другим определением.

например из сигналов.

Фактор восстановления (recovery factor) рассчитывается как отношение абсолютной прибыли к максимальной просадке. Чем выше фактор восстановления, тем быстрее система восстанавливается после просадки.

вот забугорное:

The ratio of gained profit to maximum drawdown.
 

Да, я о другом РФ говорил, о классическом.

Еще есть вариант с нормированием по времени, например брать не всю прибыль, а среднюю прибыль за год (просадку оставлять максимальной за все время). Тогда РФ не будет сильно меняться в зависимости от интервала тестирования.

 
TheXpert:

например из сигналов.

Тогда этот ФВ совсем не годится при реинвестировании.

 
fxsaber:

Тогда этот ФВ совсем не годится при реинвестировании.

если взять логарифм годится, ваш ФВ не годится просто всегда хотя бы потому что зависит от места самой большой просадки.
Причина обращения: