Mackenna
Mackenna личный блог
22 августа 2019, 09:28

Торговая система. Мои критерии выбора

"Если хочешь зарабатывать — лучше строить торговые системы, а не прогнозы". Тимофей Мартынов.


Здравствуйте, дамы и господа!

Каким же требованиям должна отвечать торговая система (далее – ТС)? Напомню, что бессистемная, основанная на субъективных оценках торговля это игра с отрицательным математическим ожиданием выигрыша и потеря денег при использовании такого подхода – вопрос времени и количества совершенных сделок (смотрите статью "Опыт — мудрость глупцов!").

1. ТС должна быть алгоритмизирована в виде торгового робота – только такой подход дает возможность проверить гипотезу о поведении котировки, заложенную в ТС, смоделировав сделки по правилам ТС с использованием известной истории изменения котировок на длительных временных интервалах, включающих различные рыночные ситуации (продолжительные тренды, флэтовые периоды, резкие (новостные) изменения и пр.) Тестирование ТС торговлей в реальном времени практически неприменимо, так как из-за бесконечной вариативности торговых систем может просто не хватить жизни для проверки достаточного их количества, а действительно прибыльная ТС — золотой самородок в куче пустой породы. Кроме того, серия тестов на истории с различными параметрами ТС позволяет найти оптимальные их значения для различных финансовых инструментов, например, расстояния до уровней стоп-лосса и тейк-профита для инструментов с различной волатильностью.

2. ТС должна использовать наименее популярные, а лучше уникальные методы анализа. На финансовых рынках деньги не создаются, а лишь меняют владельца — одни люди отнимают деньги у других. Трейдеры — сообщество с очень высокой профессиональной конкуренцией, которое неизбежно разделяется на успешное меньшинство (большинство не может быть успешным по определению, так как это относительное понятие) и неуспешное большинство. Рынок всегда против большинства. Если вы будете использовать для торговли классические, «проверенные временем» методы анализа, например, различные уровни, трендовые линии, популярные индикаторы типа МА, RSI или «стохастика» (при условии традиционной их интерпретации), то неизбежно будете на стороне большинства, т.е. с убытком:

«Результаты всегда печальны для тех, кто следует общей тенденции.» 
Питер Л. Бернстайн.

3. ТС должна генерировать достаточно большое число сделок, не менее 50 в год (одной сделки в неделю). Если ТС редко генерирует сигналы на открытие сделок, то, скорее всего, она настроена на редкие, а может быть уникальные рыночные ситуации (например, продолжительные тренды без сколько-нибудь значимых коррекций, вызванные Брекзитом или выборами президента США в 2016-м), которые, вполне возможно, и не повторятся в обозримом будущем. Если же сигналов достаточно много, то ТС настроена на рядовые, часто повторяющиеся рыночные ситуации, которые с высокой вероятностью продолжат складываться на рынке и в будущем.

4. ТС должна показывать схожие результаты тестирования на сходных финансовых инструментах. Например, если ваша ТС показывает прекрасные результаты тестов на валютных парах с британским фунтом, но убыточна на парах с евро или швейцарским франком, то это повод задуматься, а не следствие ли это какого-нибудь уникального рисунка волатильности, сформированного, например, Брекзитом? Тогда в будущем, используя эту ТС для торговли GBP, вы получите такой же результат, что показали тесты на других валютах — убыток. С другой стороны, не стоит добиваться, чтобы одна и та же ТС одинаково хорошо работала, например, и на валютном, и фондовом рынках — слишком разные по характеру поведения инструменты там торгуются.

5. ТС не должна иметь более 2-х оптимизируемых параметров кроме SL и TP. Представьте, что некая ТС построена на взаимном пересечении 3-х скользящих средних или сигналах других индикаторов с одним параметром — периодом расчета. Если период расчета может принимать, например, 10 различных значений, от 3-х до 12-ти, то мы получим, что ТС имеет 1000 комбинаций параметров (10 в 3-й степени, классическая задача комбинаторики о числе размещений с повторениями), т.е. 1000 вариантов ТС, один из которых, весьма вероятно, «удачно ляжет» на рисунок волатильности периода тестирования и тест покажет прекрасный результат. А если оптимизируемых параметров 5? Да еще попробовать их на 5-ти разных таймфреймах? Несложно подсчитать, что такая ТС будет иметь полмиллиона вариантов и результатам теста доверять будет нельзя. Это так называемая «переоптимизация».
Как писали Ч.Лебо и Д.Лукас, чем опытнее трейдер, тем проще торговая система. Так что «плодить сущности» надо осторожно.

Оказалось, что эти критерии очень жесткие и найти соответствующую им ТС весьма непросто. Моя сама результативная ТС MATS работала только на золоте, ТС «Алчность и страх» и ТС «Криптомикс» генерируют слишком мало сделок, чтобы делать статистические обобщения.
Как-то я приблизительно подсчитал, что за 10 лет протестировал более 2,5 тысяч (!) ТС – описанных в литературе, подсказанных коллегами, разработанных самостоятельно. Если тестировать ТС на не менее чем трехлетней истории, то указанным критериям соответствует только одна ТС — на немного усовершенствованном мной регрессионном осцилляторе. Вот результаты ее бэк-тестов («плечо» 1:1, в зависимости от склонности к риску, каждый сам решит, какое «плечо» использовать):

Торговая система. Мои критерии выбора

Торговая система. Мои критерии выбора

Торговая система. Мои критерии выбора

Оптимизируемых параметров три, но они выбираются из очень ограниченного списка: период регрессионного осцилятора выбирался из 24, 48 или 72 часов, уровень SL искал в интервале 0.5-1.0%, а отношение TP/SL в интервале 0.5-2. ТС не «переоптимизованна», это точно.
Но ее эффективность совсем не вдохновляет.

Совсем другое дело, ТС на трех «скользящих регрессиях»:

Торговая система. Мои критерии выбора
И эффективность ТС меня устраивает, и статистическая значимость теста вроде достаточная, но...
Как показали тесты на других валютах, — работает она только на EURUSD
Кстати, у меня довольно часто получается такой результат тестирования — ТС показывают достаточно хороший результат только на паре евро с долларом. Я объясняю это тем, что этот финансовый инструмент лидирует с большим отрывом по ликвидности. Одна из формулировок Закона больших чисел: «Совокупное влияние достаточно большого числа случайных факторов на результат не случайно.» Факторы — заявки продавцов и покупателей, результат — текущая котировка EURUSD. Только эта пара обладает достаточной ликвидностью, чтобы влияние случайных факторов на котировку было минимальным. Так как визуально отличить случайные колебания цены менее ликвидных инструментов  от неслучайных не представляется возможным (смотрите статью "Как становятся успешными трейдерами"), а на случайных, по определению, заработать нельзя, то, может быть, эффективность ТС на EURUSD и неэффективность на других парах как раз это и показывает? Но это лишь предположение.

А как вы думаете, коллеги?

Профита всем!

Если статья вам понравилась, вместо кнопки «Хорошо» жмите сюда,

                                                                        А если нет, то сюда

35 Комментариев
  • Fedia
    22 августа 2019, 09:37
    Mackenna, очень похоже, что так оно и есть. Недаром подавляющее большинство спекулянтов работают только с EURUSD.
    • VladMih
      22 августа 2019, 16:42
      Fedia, не факт. Сам постоянно на ней работал, а сейчас там делать нечего. По крайней мере интрадей со среднедневным ренжем 50 пунктов ловить нечего.
      Да и на старших таймах больше боком, да раком последние 4 месяца.
  • Дмитрий Нуштакин
    22 августа 2019, 09:39
    а на паре EURUSD какое плечо при тесте?
  • FullCup
    22 августа 2019, 09:40
    Хорошо написано. Но…
    4. ТС должна показывать схожие результаты тестирования на сходных финансовых инструментах.

    а потом про свою ТС пишите:
    Как показали тесты на других валютах, — работает она только на EURUSD.
    Понимаю, далее пытаетесь аргументировать исключительность Вашей ТС.
    Но не логично… Или Ваша ТС не удовлетворяет изложенным выше Вашим же критериям «хорошести» ТС! )))
    Удачи! Интересная статья!
  • Turbo Pascal
    22 августа 2019, 09:49
    1) Махровый кухонный околорынок детектед.
    2) Плюсовая ТС обычно проста как 2 копейки. Не надо там никаких алгоритмов и роботов.
  • Lewvik
    22 августа 2019, 10:22
    ТС никому ничего не должна) Она просто преобразует информацию в сделки
  • Кирилл Глухов
    22 августа 2019, 10:33
    Не плодить сущности в виде параметров это хорошо. Однако оптимизация всего двух параметров на выход из позиции (SL и TP) чаще всего делает систему не эффективной на реале. Так как происходит жесткая подгонка под рынок. Совет: искать другие точки/техники/правила выхода из позиции. 
  • Vitaliy
    22 августа 2019, 11:40
    на моем опыте излишнее тестирование приводит к отказу от потенциально прибыльных систем. Лично я отказался от тестирования на истории от слова совсем. 
    • Adam Kazimirovich
      22 августа 2019, 17:52

      Vitaliy, эх, плюсануть нечем! (+)
      Тоже с интересом читаю тут батлы по технологиям и инструментам тестирования, и не понимаю: «нафига сие» ...

  • SergeyJu
    22 августа 2019, 12:54
    1. Я стараюсь использовать не более 3 параметров в системах. 
    2. Желательно — разной природы.
    3. Тейки и стопы не использую.
    4. Очень важно исследовать систему на устойчивость — в более-менее широкой окрестности «оптимального» набора параметров система должна быть вполне позитивной, пригодной к торговле. 
    5. Применимость одной систем к нескольким разным активам — хороший бонус. 
      • SergeyJu
        22 августа 2019, 15:58
        Mackenna, при некоторых дополнительных условиях — да.
          • SergeyJu
            22 августа 2019, 16:06
            Mackenna, хорошее отношение риск/дрходность, устойчивость к шевелению параметров, длительный период бэктестинга, доха на сделку существенно выше транзакционных издержек.
              • SergeyJu
                22 августа 2019, 16:25
                Mackenna, да
  • wrmngr
    22 августа 2019, 14:35
    Этот набор критериев подходит для строго ограниченного класса стратегий — среднесрочные спекуляции на одном активе.
  • Lev Levin
    22 августа 2019, 14:40
    "Рынок всегда против большинства. Если вы будете использовать для торговли классические, «проверенные временем» методы анализа, например, различные уровни, трендовые линии, популярные индикаторы типа МА, RSI или «стохастика» (при условии традиционной их интерпретации), то неизбежно будете на стороне большинства, т.е. с убытком."
    А если анализировать этими способами, но открывать в противоположную сторону, то с прибылью будем? 
  • Salamandra
    22 августа 2019, 14:41
    Я бы добавил: ТС должна выигрывать у рынка не только в деньгах, но и в пунктах (т.е. показывать прибыль и на постоянном лоте)
    • SergeyJu
      22 августа 2019, 16:02
      Salamandra, если система не использует переменный объем, то она обязана быть устойчиво прибыльной и в деньгах, и в пунктах и в процентах, по барабану. Если она использует переменный объем, то примерно тоже самое, только чуточку сложнее.
    • VladMih
      22 августа 2019, 16:44
      Salamandra, зря добавили. Если хотите идеала, то это не здесь.
      Впрочем, дело даже не в идеале — почитайте что-нибудь о грамотном манименджменте и поймете сами, что важны не пункты, а ТП/СЛ.
  • Сергей Симонов
    22 августа 2019, 16:24
    Единственный критерий годности ТС — успешное прохождение процедуры Walk Forward Optimization. Процедуру можно изобразить так:




    • SergeyJu
      22 августа 2019, 16:27
      Сергей Симонов, 
      1. Не единственный критерий.
      2. Не всегда удобный и не всегда достаточный. 
        • SergeyJu
          22 августа 2019, 16:50
          Mackenna, машинным обучением никогда не занимался специально, так что и переноса принципов не было.
          p.s. Думаю, что работать в трейдинге будет бустинг, а не нейронки. 
  • Андрей Ш.
    22 августа 2019, 17:46
    Не знаю, чем вам так нравится Euro/Usd.  Даже мои самые лучшие трендовые роботы, отлично работающие на Si, хорошо на SBRF, при этом показывают очень слабенькие результаты на евро-долларе, имеется ввиду, отрезки в 6-7 лет на одних параметрах
  • Врач-бондиатОр
    22 августа 2019, 19:18
    Не слышали про И.Чечета и его генераторы торговых систем? 

Активные форумы
Что сейчас обсуждают

Старый дизайн
Старый
дизайн