Блог им. gift

Про тестирование и оптимизацию торговых систем

Часто натыкаюсь на сообщения типа — зачем тестировать и оптимизировать торговую систему на исторических данных за 5 и более лет, торговать то я буду сейчас и рынок уже другой, достаточно и годовых данных. Иногда даже и полугодовые данные устраивают некоторых. 

Представим что мы находимся в конце 2010 года, у нас на руках простая торговая система 2-х пересекающихся SMA работающая только от лонга. Прооптимизировав за 2010 получаем следующую эквити и выходные данные: 

 




Вроде как все отлично — решает оптимизатор и торгует этой системой весь 2011 год, итоговая эквити и выходные данные которого выглядят следующим образом: 

 

 

Выводы напрашиваются сами.


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

1. показала стабильные результаты на большом тестовом, историческом периоде (от 5-ти лет)

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

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

4. Тестирование этой системы, без смены параметров дало нормальные результаты еще минимум на 5-10-ти других не сильно кореллированных инструментах. 

5. Система достаточно устойчива при тестовом просскальзывании в 1.5-два раза превышающем, то которое ожидаются в реальной торговле. 

Призываю к простой вещи — не заниматься самообманом, тем самым сохранив в целости собственные средства. 
377 | ★14
52 комментария
+, тоже хотел такой пост написать… Только насчеет 4-го пункта не совсем согласен… Все же считаю, что паттерновая торговля очень привязана к инструменту. Другие — может быть…
avatar
CamarillaDaily, + насчет 4го пункта, какой-то совсем грааль получается)
avatar
Марсель Тазетдинов, есть такие и вовсе даже ничего особенного
Александр Дрозд, а вы на каком языке пишите программы для трейдинга??
avatar
mrTrader, на WealthLab 4 все тестирую, а там обычный паскаль
Александр Дрозд, а потом когда код пишите в рабочую прогу на чем после теста?
avatar
mrTrader, а я из велзалаба роботом тойже стратегией и торгую. Все просто. WL+адаптер приказов+адаптер потоковых данных+Quik Все полностью автоматизировано.
Александр Дрозд, а где этот WealthLab 4 скачать нахаляву?+адаптер приказов+адаптер потоковых данных+
+ ??
avatar
mrTrader, WL в торентах, потоковый адптер на официальном сайте квика, адаптер выставления заявок ищите в сети, есть хорошие решения от русских ребят, стоят всего пару тыщ.
Александр Дрозд, Да понятно, что есть, но это как-бы все равно, что написать «Универсальные правила ведения любого бизнеса», если следовать которым, то по-любому будешь успешен…
avatar
CamarillaDaily, у меня такие есть (на S&P500 адекватны в тестах тоже), но к сожалению даже они не гарантируют успеха в будущем.
По 4 пункту. Согласен. CamarillaDaily, Нормальные результаты на других инструментах — не значит выдающиеся. Конечно система оптимизированная под какой-то один фьюч вряд ли будет столь же успешной на другом. Но если при тестировании на истории на других инструментах эквити скрипта летит вниз — стоит задуматься. ИМХО.
avatar
OFY, А если в нуле?
avatar
CamarillaDaily, вот это я уже называю — заниматься самообманом )) Хотя если у вас четко паттерновые алгоритмы, то конечно тяжело быть универсальным. Есть у меня такие и их не торгую по причинам описанным выше.
Александр Дрозд, а сколько обычно одновременно торгующих систем у Вас?
avatar
OFY, по одному инструменту 3 системы торгующих в лонг и в шорт
Александр Дрозд, ясность!
avatar
Александр Дрозд, А у Вас разные системы для лонгов и шортов? Пробовали ли когда-нибудь делать системы в которой сигналы для лонга и шорта используются разные, в том числе по итогам тестирования за большие сроки?
Интересен опыт роботостроителя относящийся к характеру падения и характеру подъёма цен как к разным рынкам, а не зеркально (на форексе зеркальность подходит).
avatar
agmalov, у меня несколько систем, каждая из которых торгует и в лонг и в шорт, причем в каждой из систем лонг или шорт, не «и»
Александр Дрозд, спасибо за инфу! стало быть я на верном пути ;)
avatar
Александр Дрозд, А что вы тогда вообще торгуете, я никак не пойму. У вас на сайте счет колеблется на доли процентов, значит без плеча, или вообще с дробным плечом, и, тем не менее, допустимая просадка стоит — 30%!!! Без плеча просадка 30%!!! Я не обсуждаю ваши результаты, Боже упаси, просто не пойму критерии выбора вами системы для торговли…
avatar
CamarillaDaily, системы торгуемые мною на тестах показывают максимальную просадку в 15%, 30% это как раз запас о котором я писал в п.3 А в целом, если посмотрите исторические отчеты на том же сайте, то как опытный системный трейдер сделаете вывод, что система, на данный момент, работает нормально и без особых отклонений.
Александр Дрозд, а можно ссылку в студию?
avatar
OFY, на что?
Александр Дрозд, на сайт со статистикой.
avatar
OFY, в профиле все есть )
Александр Дрозд, ок, спасибо.
avatar
Александр Дрозд, Не спорю. Но макс просадка в 20%+ не великовата для торговли без плеча?
avatar
CamarillaDaily, увы обстоятельства: большой торгуемый объем -> большие просскальзывания -> больше просадки, меньше доходность.
CamarillaDaily, ИМХО в нуле тоже плохо! Я, например, когда профпригодность системы оцениваю прогоняю по нескольким ликвидным инструментам с тем же таймфреймом. И на том же инструменте с другими таймфреймами. Если на большинстве вариантов система зарабатывает и ни на каких сильно не сливает — я доволен.
avatar
я бы еще добавил, что обязательно надо тестировать на другом периоде в не оптимизации, например на 2010 оптимизировали на 2008/2009/2011 проверили. Потому что эффект от переоптимизации всегда будет и чем больше свободных параметров у системы тем он значительнее.
avatar
vlad1024, эту мысль я пытался выразить в пункте 2
123insaider, это ирония надеюсь? )
С пунктом 4 не согласен, другие инструменты, особенно некореллированные, могут совсем другой жизнью жить — разная волатильность, трендовость и.т.п., поэтому по-моему глупо выбраковывать систему, приспособленную к торговле одним инструментом и дающую по нему 3-5 лет стабильно высокие результаты на нем, только потому, что она плохо работает на совсем непохожем. Из собственного опыта — для систем, торгующих успешно в течении почти 2 лет индексами RTS и FTSE (на реальных счетах), не удалось подобрать параметров для S&P и Nikkei, которые бы не сливали даже на тестах. И это довольно кореллируемые инструменты!!! Я молчу уже про валюты и бонды, например, это совсем другое поведение — и только (опять же исключительно по моему мнению) дятел будет искать общую систему с одинаковыми параметрами для индексов и валют.
А вместо пункта 4 добавил бы пункт, в котором порекомендовал бы попробовать подобрать к системе, дающей 5-7 лет хорошей торговли на одном инструменте, другие параметры, позволяющие получить такие же результаты на другом, пусть даже кореллируемом инструменте или на этом же, но c другим тайм- фреймом. И так далее, чем больше работающих параметров, тем лучше — добиться хорошей диверсификации. И тогда даже не страшно, если из этих 5-7 лет на 1-2 годах система показала не очень хороший результат, с очень большой вероятностью диверсификация по инструментам и тайм-фреймам поможет вытянуть эти неудачные участки одного инструмента за счет других.
avatar
Maksim Chertkov, у меня такие системы есть. Значит это возможно, значит это работает, значит это перспективно. Хотите верьте, хотите нет )
Александр Дрозд, завидую белой завистью.
avatar
OFY, кстати не раз выкладывал результаты ее работы, посмотрите в предыдущих топиках.
Александр Дрозд, охотно верю, но так же с большой вероятностью думаю, что если попытаться оптимизировать эти системы отдельно под валюты и с другими параметрами под индексы, они покажут значительно лучшие результаты в силу большой разности поведения этих инструментов. Основной смысл был в том что 4 пункт ну совсем не обязателен, ибо в большинстве случаев из-за него будут отбрасываться хорошие и перспективные системы. С оставшимися пунктами согласен 100%.
avatar
Maksim Chertkov, про оптимизацию каждой согласен. В то же время степень свободы такой системы заметно ухудшится. Т.е. соль в том чтобы, как бы это наивно не звучало, сделать универсальную систему.
Александр Дрозд, для супердолгосрочных стратегий, торгующих на дневных таймфреймах, я еще с вами соглашусь, все что ниже требует тщательного индивидуального подхода. Для аналогии приведу пример с моторными маслами для машин — раньше их было несколько видов, а сейчас чуть ли не под каждый мотор подбирают индивидуально для лучшей работы и перебирают для этого кучу параметров, потому что скорости работы растут. Тоже самое и с рынками — принципы не меняются (так же как и состав у каждого из масел на 95% одинаков), но лучший результат покажет именно та стратегия, которая максимально учтет поведение конкретного инструмента, при этом не будучи переоптимизированной. Вот этот баланс как мне кажется и надо искать для каждого инструмента, а не универсальную систему, которая будет сносно работать и на тракторе и на формуле1 (некореллируемые инструменты).
avatar
Maksim Chertkov, работа трактора и формулы один предопределена на 99%, рынок же предопределен системой в лучшем случае на 60% (я бы даже сказал, что 60 идеалено для системы)
Александр Дрозд, кто хочет искать мегауниверсальный грааль — пусть ищет, на мой взгляд критерий №4 неважен, а там каждый решит сам.
avatar
Maksim Chertkov, согласен. Например Газпром и Сбер ведут себя совершенно по-разному, надо выбирать на чем тестировать, но хорошо если сберовский скрипт не сливает на газе. По-поводу диверсификации Вы абсолютно правы. Но, к сожалению, на фортсе по инструментам особо не диверсифицируешься. Ликвидных мало.
avatar
Maksim Chertkov, Поддержу Александра-такие системы есть.Более того, есть системы которые торгуют сносно некоторые валюты и фьюч на Дакс, например.Так что все относительно
Куртвапов Рустем, о! спасибо )
Куртвапов Рустем, да не отрицал я что такие системы есть, просто хотел донести что даже если удастся найти такие параметры, которые работают универсально, работать они будут именно что сносно, как вы правильно заметили. А для хорошей их работы параметры лучше подбирать индивидуально для каждого инструмента, но делать это правильно.
avatar
Maksim Chertkov, Да, конечно, стоит дорабатывать систему с учетом индивидуальности рынка, подбирать для нее лучшие параметры. Ну, вообще, есть 2 типа закономерностей(глобальные и локальные): которые присущи многим рынкам в целом(но они будут отрабатываться на нескольких рынках, но немного хуже на каких-то конкретных рынках в силу разного характера этих рынков, состава участников и т.п.)и которые присущи конкретному типу рынка, они будут показывать на данном рынке очень хорошие результаты, но могут показывать очень посредственные на других рынках. Важно понимать физический смысл неэффективности, у кого вы забираете деньги, что заставляет эту группу участников постоянно действовать в неких ситуациях стереотипно и терять деньги.
Немного сумбурно написал, но надеюсь понятно.
Куртвапов Рустем, да это все общие мысли, они правильные, не в этом вопрос. Вот нашли вы, к примеру, систему, зарабатывающую индексом Nikkei, дающую хорошую прибыль по тестам 3-5лет, не сливающую при изменении всех параметров на 30%. И что — ее выбрасывать на помойку только потому что она работает только на нем, а на кукурузе, бондах и паре франк\фунт сливает? ИМХО, это бред…
avatar
Maksim Chertkov, Нет, конечно.Это то, что я охарактеризовал термином локальная связность.Единственное что очень хорошо бы понимать-почему система зарабатывает на Никкее, а не зарабатывает на Даксе, например? За счет чего? Если можете четко ответить на этот вопрос-можно запускать смело систему в бой, ИМХО, конечно
Ну а где график за 2008й-2010й, по которому мы бы заранее знали, что в 2011м эту систему использовать не стоит? Вдруг она именно в 2011 сломалась?
Неубедительное доказательство получается.
avatar
1.да хорошо только fRi c 2009 торгуется полноценно(с вечеркой и без останова торгов). всего 3года. ждём 2 года курим бамбук?
2. Я думаю и года(если более 1000 сделок) достаточно для теста, если при отклонении на 20-30% от основных параметров, система не сильно теряет в профите. — просто так мало кто тестит — а это важнее чем тест 10 лет н обез разброса параметров (никому не говорите. грааль на).
avatar
Роботорговец, полностью согласен, тоже это пытался сказать.
А еще 5 лет, на 5 некореллируемых инструментах, да без смены параметров… КПД будет весьма скромный.
avatar

Читайте на SMART-LAB:
Фото
Денежный рынок vs облигации: фокус смещается
В период роста ключевой ставки Банка России фонды денежного рынка стали весьма популярны. За это время они обеспечили инвесторам высокую...
Фото
📊 Что означает переподписка выпусков облигаций
Переподписка — это ситуация, когда спрос инвесторов на выпуск облигаций превышает объём предлагаемых бумаг. Например, если компания...
Фото
12 марта Группа Ренессанс страхование опубликует МСФО за 2025 год
Напоминаем, что 12 марта 2026 года RENI опубликует МСФО Группы за 2025 год, а также проведет День инвестора, чтобы рассказать о ситуации на...
Фото
Хэдхантер. Отчет МСФО 25г. “Режет косты“ и ждёт X2 темпов роста по выручке на 26г.
Вышли финансовые результаты по МСФО за Q4 2025г. от компании Хэдхантер: 👉Выручка — 10,47 млрд руб. (+0,4% г/г) 👉Операционные расходы —...

теги блога Александр Дрозд

....все тэги



UPDONW
Новый дизайн