Брутфорс vs Неэффективности рынка

17:14 Naragot 0 Comments



Автоматизированные торговые стратегии строятся по двум основным принципам: брутфорс и использование известной неэффективности рынка.

Брутфорс


Берётся некая абстрактная гипотеза обычно из мат. статистики, которая на практике проверяется на рыночных данных. Фактически этим я и занимался в первые годы своей торговой практики. В более запущенных случаях гипотеза строится на множестве индикаторов с кучей параметров.

Минусы подхода вполне очевидны: полученная система может великолепно выглядеть на бэктестах, но в реальности в подавляющем большинстве случаев окажется неробастной, то есть неустойчивой. Форвард тесты здесь тоже не помогут. Почему? А что вы сделаете, если система не пройдёт форвард тест? Правильно, подкорректируете параметры или отбросите её и будете искать новую. И так до тех пор, пока полученная система не пройдёт форвард тест. Но форвард тест ничего не гарантирует, и его результат может по иронии судьбы также оказаться такой же неробастной подгонкой, что и бэктест.

Использование неэффективности рынка


В отличие от брутфорса берётся заведомо известное свойство рынка. Рыночные котировки не являются случайными, а значит у них есть достаточно ограниченное количество логически объяснимых неэффективностей, на которых и строится весь технический анализ. После проверки на рыночных данных выносится вердикт о целесообразности дальнейшего углубления в конкретную тему. Обычно качественные системы заводятся с полтычка.

При наличии уже некоторого результата о том, насколько неэффективность устойчива, можно судить по поведению системы в широком диапазоне параметров. Для своих систем пару лет назад я использовал так называемые стресс-тесты: все имеющиеся параметры я достаточно сильно увеличивал, убеждаясь, что система остаётся стабильно прибыльной, хоть и меняются, что очевидно, доходности, просадки и периоды стагнации.

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

Всякую рыночную неэффективность не получается использовать на любом торговом инструменте: не даром даже на Форексе идёт деление на мажоры, миноры, экзотику и пр. Трендовые системы, например, работают в основном на валютных парах с высокими торговыми объёмами. При всём многообразии инструментов на Форексе такими являются от силы 5-7. В этом заключается объяснение, почему одну и ту же качественную трендовую систему можно адаптировать под EURUSD, GBPUSD, USDJPY, XAUUSD, но нельзя в большинстве случаев под, например, AUDCHF. Обычно если система также работает на некотором кроссе, то это скорее значит, что движение, которое она отрабатывает, берёт корни из движения на мажоре. И наоборот, возвратная система на AUDCAD, EURGBP, AUDNZD вряд ли будет хорошо адаптирована к EURUSD.

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

____________
Подписка на анонс новых постов в Телеграме: @naragot_blog
Подписка на анонс новых постов в Твиттере: @NaragotBlog
Подписка на анонс новых постов в ВКонтакте: Naragot PAMM
Подписка на анонс новых постов в Инстаграме: @naragoth

0 коммент.: