Библиотеки: BestInterval - страница 6

 
fxsaber:

Только косметика - доп. инфа в логе.

Маленький косяк:

Test15

 
Mikola_2:

Маленький косяк:

Это не косяк, а правильный результат. Именно столько (пусть и отрицательное значение) было прибавлено к профиту, по сравнению с предыдущим вариантом. 

Данные проценты - сколько дало профита выкидывание еще одного интервала.
 
fxsaber:

Применение лучшего интервала всегда будет улучшать результат и показывать положительный профит.

Но нужно понимать, что если ТС не профитная, то BestInterval даст только хорошую подгонку.

Даже для профитной ТС работает правило: чем больше интервалов выкидывается, тем вероятнее подгонка.

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

В описании не просто так дан график с OOS. Не обманитесь с подгонкой.

Библиотека чуда не создает, хоть и вышла лично для меня must-have - в 100% случаев ее использую.

Решаю через нее две задачи:

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

Не хватает недельного (не суточного) аналога...

ЗЫ Если советник не MT4-style, то библиотека задействует 90% своих возможностей. И интервалы будут получены. Однако, посмотреть их применение  в Тестере сразу не получится. Там уже сам программист будет вынужден что-то не хилое придумывать для этого. Поэтому раскрытие 100% возможностей библы дает только использование MT4-style.

Абсолютно согласен! Профитная ТС первична. Осознаю и не питаю иллюзий.   :)

Такой вопрос: если я вычислил интервалы, а затем поменял диапазон тестирования в Тестере (чтобы убедиться, что найдена закономерность, а не подгонка), интервалы корректно применятся на новом диапазоне тестирования?

 
fxsaber:

Это не косяк, а правильный результат. Именно столько (пусть и отрицательное значение)

Так я про минус и говорю.

 
Mikola_2:

если я вычислил интервалы, а затем поменял диапазон тестирования в Тестере (чтобы убедиться, что найдена закономерность, а не подгонка), интервалы корректно применятся на новом диапазоне тестирования?

Да.

2018.10.12 23:59:59   BestInterval Action(true - single pass & MT4-style is required) = true
2018.10.12 23:59:59   Calculation time activated intervals is 2018.10.18 10:12:46 - TesterEA (common folder) 00:01:02 ago.
2018.10.12 23:59:59   
2018.10.12 23:59:59   Amount of Delete Intervals = 2
2018.10.12 23:59:59   00:00:00 - 02:15:22 : Profit = 1281.01 (26.00%), Total = 127 (83.46%), PF = 1.70, Mean = 10.09, DD = 600.66, RF = 2.13
2018.10.12 23:59:59   02:32:07 - 05:42:32 : Profit = 1896.41 (38.49%), Total = 262 (81.68%), PF = 1.44, Mean = 7.24, DD = 993.82, RF = 1.91
2018.10.12 23:59:59   21:53:23 - 23:59:59 : Profit = 1750.17 (35.52%), Total = 101 (79.21%), PF = 2.18, Mean = 17.33, DD = 463.34, RF = 3.78
2018.10.12 23:59:59   SUMMARY: 00:00:00 - 23:59:59 : Profit = 4927.59 (100.00%), Total = 490 (81.63%), PF = 1.65, Mean = 10.06
2018.10.12 23:59:59   
2018.10.12 23:59:59   final balance - InitBalance (100000.00) + Profit (4927.59) with BestInterval.
2018.10.12 23:59:59   OnTester - Virtual InitBalance (100000.00) + Profit (-8563.00) without BestInterval. Profit is calculated with TickValue=1 and w/o Commission+Swap.
final balance 104927.59 USD
OnTester result 91437

Выделенная строка показывает, когда был рассчитан применяемый интервал. Будут применены временные промежутки, что показаны ниже. При этом остальные их данные (профит, ПФ и т.д.) всегда показываются только для исходного Action = false. Т.е. при смене интервала тестирования Action =true смотреть нужно только временные промежутки.

Если увеличили интервал тестирования, то разность между красными значения сразу покажет, насколько увеличился/уменьшился профит. Если не подгонка, то, конечно, значение должно увеличиться.

 
Mikola_2:

Так я про минус и говорю.

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

 
fxsaber:

Да.

Выделенная строка показывает, когда был рассчитан применяемый интервал. Будут применены временные промежутки, что показаны ниже. При этом остальные их данные (профит, ПФ и т.д.) всегда показываются только для исходного Action = false. Т.е. при смене интервала тестирования Action =true смотреть нужно только временные промежутки.

Если увеличили интервал тестирования, то разность между красными значения сразу покажет, насколько увеличился/уменьшился профит. Если не подгонка, то, конечно, значение должно увеличиться.

Очень хорошо. Спасибо за пояснения.

 
fxsaber:

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

Ну и ладушки... Излишний перфекционизм - зло! (это я про себя).

Всё фигня кроме пчёл... да и пчёлы - фигня!..     :))

В любом случае - огромное спасибо за, даже не удочку, а за шикарный рыболовный комплект!

И за дополнительный стимул таки осваивать MT5.

 
fxsaber:


Решаю через нее две задачи:

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

Не хватает недельного (не суточного) аналога...

А чем неделя, принципиально, отличается от суток, если ввести (обозначить) первый час недели. 

Конечно, если говорим об алгоритмах выявления интервалов внутри суток и внутри недели.

         if(
            ..... 
           && ((New_Time[0]-3600*    Start_Hour)        % 86400    < 3600*Period_Hour)         // обусловлено интервалом внутри суток
           && ((New_Time[0]-3600*(96+Start_Weekly_Hour))%(86400*7) < 3600*Period_Weekly_Hour)  // обусловлено интервалом внутри недели (неделя 168 часов)

           )
 
Пример советника, который не получилось оптимизировать, возможно все реаультаты отсеиваются потому что в мартиноподобных системах просадка обычно превышает профит? 
Frank Ud
Frank Ud
  • www.mql5.com
Работа только на hedge-счетах! Мартин, мартингейл. Удвоение лота при просадке.  При старте открываются две противоположные позиции минимальным лотом. Для позиций сразу заданы уровни "TakeProfit" и "StopLoss".  Одна из них становится прибыльной, а вторая, естественно, убыточной. Прибыльная закрывается по TakeProfit, а убыточную, через...
Причина обращения: