Оптимизация советника....кто и как...

Тема в разделе "Тестирование", создана пользователем Lich_sl, 1 Декабрь 2017.

  1. Lich_sl

    Lich_sl Знаток Аргонавт

    Регистрация:
    24 Июль 2015
    Сообщения:
    129
    Симпатии:
    111
    Баллы:
    70
    Пол:
    Мужской
    Привет всем.
    Хотелось бы поговорить о тестировании советника, точнее об оптимизации.

    Много написано на просторе инета, но либо я искать не умею, либо умениями не охотно делятся, или что то еще.

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

    По началу я не сильно расстраивался недостатку информации, тк не оптимизировал, а только тестил советники.

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

    Поэтому хочу спросить тут тех кто занимается оптимизацией помочь понять принцип «правильной оптимизации».

    Так же освещу свой в картинках и с описанием, а вы уж направьте на путь истинный.

    Итак. Первое что заметил, что есть двухмерный график, вещь клевая, но если у вас ВСЕГО 2 параметра, при большем уже нужно сильно анализировать, тк не только раскрашивает клетку но и ПЕРЕКРАШИВАЕТ в максимальное значение. Например…. Есть 4 параметра и когда выберем 2х мерный п1 от п2 например увидим равномерно закрашенную область. А если уменьшить количество параметров, то таже область будет закрашена совсем по другому, что вводит в заблуждение. Конечно если получаем не равномерно закрашенную область при многих параметрах, то получается, что при любых условиях какие-то значения можно отсечь, чем я и пользуюсь, но об этом ниже.

    Еще вопрос заметил, если после оптимизации менять только диапазон значений параметра, то следующая оптимизация проходит за секунды, используя предыдущий прогон, но так не всегда, кто ни будь может подсказать как добиться чтобы было всегда? Например параметр ЕМА от 1 до 100 с шагом 1, потом делаю 50-90, он либо заново все прогоняет, либо за секунды пересчитывает…непонятки((((

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

    В общем есть советник у которого 6 оптимизируемых параметра 2 периода скользящих, ТП, СЛ и еще 2 основных параметра, уровень выше/ниже которого включается работа и дельта от максимума когда произвести вход.

    Пробовал как в статье с ТЛП разделить параметры по степени важности…. Но оптимизируя частями происходит еще большая путаница и увеличение времени (тк в итоге все параметры влияют на конечный результат).

    Оптимизацию провожу по отношению К = Прибыль/МаксДД. Очень похоже на встроенный параметр, но есть нюанс…я учитываю РЕАЛЬНУЮ просадку, а именно учитываю закрытые в минус (СЛ) сделки + плавающая просадка, а MT учитывает в просадку выход сделки в плюс, что на мой взгляд не оч правильно.

    Итак, имеем советник и 6 параметров и прогоним его по паре EURGBP за один год, если загнать полный адекватный диапазон значений с хорошим шагом, то в итоге получаем много много десятков миллионов прогонов(((( а генетический алгоритм прогонит всего 10000, что с высокой вероятностью пропустим хорошие множества для получения хорошего сета.

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

    В результате получаем 500000 вариантов и прогоняем 10000 из них получили такую картину
    EG 1.gif

    Вроде не плохо теперь будем ссужать диапазон параметров с помощью 2х мерного графика, здесь покажу только один для примера.
    EG 1_1.gif

    Тут видно что на данный момент Период ЕМА можно ограничить областью 50-265, и так со всеми параметрами

    Второй прогон
    EG 2.gif

    Также по 2хмерному уменьшаем диапазон, и уменьшаем шаг повышая точность.

    Третий

    EG 3.gif
    Четвёртый

    EG 4.gif
    Пятый

    EG 5.gif
    В итоге получили уже в районе 30000 вариантов, и генетический алгоритм, не дает возможностей для уменьшения диапазона параметров

    Трудно что либо отсечь в таком графике

    EG 6_1.gif
    Тут и возникает такая ситуация, что фактически имеем К от 2 до 18, а 2ч мерный нам показывает 15-18, причем на всех комбинациях параметров если использовать 2хмерный график.

    Теперь проводим ТУПО перебор, ооооочень долго(((((30000 занимает от 8 до 12 часов

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

    Седьмой прогон
    EG 7.gif

    По графику видно, что наблюдается некая стабильность и последний параметр уже не сильно влияет на общую картину… поэтому берем почти серединку со смещение влево и прогоняем уже по 5ти параметрам

    Восьмой
    EG 8.gif




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

    Девятый

    EG 9.gif
    Тут чуток корректируем диапазон периода ЕМА и ТП

    Десятый

    EG 10.gif
    Тут видно что СЛ кардинально не меняет ситуацию, а просто уменьшает К, за счет того что увеличивается просадка изза увеличения СЛ. Делаем шаг СЛ ТП и ЕМА еще меньше, вдруг мы пропустили ВЫЛЕТЫ

    Одиннадцатый

    EG 11.gif
    Опять видим что картина не изменилась кардинально…берем серидинку по СЛ

    Двенадцатый

    EG 12.gif
    Тут у нас остались только ЕМА и ТП, наклон вверх тк ТП растет, и при большом ТП у нас начитаются вылеты

    Тк у нас всего 2 параметра… можно посмотреть 2хмерный график
    EG 12_1.gif

    Чуток отсекли ЕМА и ТП, чуть расширили, чтоб был нормальный диапазон, хотябы 15-20 по ТП, что небыло вылетов….и так по др параметрам.
    EG 13.gif
    Далее начинается самое нудное….. и оптимизирую по каждому параметру в диапазоне, находя максимум, в итоге получается сет… На прогон по 2м и более параметрам терпения уже не хватает((((

    Это будет часть 2.
     
    Hawkwind, bellduke и loopsider нравится это.
  2. Lich_sl

    Lich_sl Знаток Аргонавт

    Регистрация:
    24 Июль 2015
    Сообщения:
    129
    Симпатии:
    111
    Баллы:
    70
    Пол:
    Мужской
    Часть 2

    Итак, теперь прогоняю по одному параметру чтоб выбрать лучшее

    Параметр 1
    EG P1.gif

    Возьмем значение 29 варианта, и вперед тестить 2й параметр

    Параметр 2 ТП
    EG P2.gif

    Параметр 3 СЛ

    EG P3.gif
    Параметр 4
    EG P4.gif

    Параметр 5
    EG P5.gif

    Параметр 6
    EG P6.gif

    Везде выбираем серединки…. Можно сделать еще пару кругов, но результаты сильно не изменяются, главное чтоб не было вылетов.

    Итого выходит такой сет с итоговым К = 13. Profit = 123. DD = 9.44
    SET.jpg

    А вот сет с К = 21. Profit = 115. DD = 5,45 Но тут ТП в 2 раза выше СЛ
    SET 2.jpg
     
    Последнее редактирование: 1 Декабрь 2017
    victor2 и Hawkwind нравится это.
  3. Lich_sl

    Lich_sl Знаток Аргонавт

    Регистрация:
    24 Июль 2015
    Сообщения:
    129
    Симпатии:
    111
    Баллы:
    70
    Пол:
    Мужской
    Хотелось бы услышать, мнения о правильности или нет моего подхода, а также очень жду советов!
    Спасибо за внимание!

    Самое интересное, что вынес когда начал заниматься оптимизацией, это то что СЛ это СИЛА)))
     
    Последнее редактирование: 1 Декабрь 2017
  4. victor2

    victor2 Знаток Аргонавт

    Регистрация:
    10 Декабрь 2014
    Сообщения:
    123
    Симпатии:
    131
    Баллы:
    120
    Пол:
    Мужской
    Я на Forex с:
    2014
    Что-то посоветовать вряд ли смогу, опыта маловато. Но результаты тестов впечатляют. Такой советник имеет право на существование. Только спред на мой взгляд неверен, когда у Робофорекса на центовом счете он был равен 3 пункта по пятизнаку?
     
  5. Lich_sl

    Lich_sl Знаток Аргонавт

    Регистрация:
    24 Июль 2015
    Сообщения:
    129
    Симпатии:
    111
    Баллы:
    70
    Пол:
    Мужской
    Там 4х значные. на 5ти знаке результаты теже, а вот скорость прогона ниже((((
    Да после сета прогоняю. с разным спредом...
     
  6. victor2

    victor2 Знаток Аргонавт

    Регистрация:
    10 Декабрь 2014
    Сообщения:
    123
    Симпатии:
    131
    Баллы:
    120
    Пол:
    Мужской
    Я на Forex с:
    2014
    И все-таки у Робофорекса пятизначные котировки. А это значительно влияет на тестирование.
     

.

Поделиться этой страницей

translate