noro

Закономерности или подгонки

BITSTAMP:BTCUSD   Биткоин / Доллар США
При создании торговой системы (любой) всегда возникает проблема "подгонки под данные прошлого". Дело в том что тестировать на данных будущего мы не можем - у нас их просто нет. Поэтому тестировать можно только на прошлом. Если мы не будем тестировать на прошлом вовсе, тогда как мы вообще определим работает ли система или нет? Поэтому важно отличать закономерности от подгонок.

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

У этой проблемы есть 2 общепринятых таких решения:
1) Тестировать на нескольких однотипных активов, у которых не слишком большая корреляция между собой
2) Убрать из теста скажем 1 год, и оценивать по нему

Пример 2

Тестируем систему с 2010 год по 2016 и не смотрим 2017 вообще. Если система хорошо выигрывает рынок с 2010 по 2016 и это закономерность а не подгонка, то она по идее должна и в 2017 тоже выиграть. Далее смотрим 2017 выиграла или нет? Если выиграла, значит это скорее всего не подгонка, а закономерность. К сожалению TradingView такой фичи не дает.

Пример 1

Тестируем на одном активе, но не смотрим что получилось на других похожих активов. Похожие активы - это такие где примерно равные фундаментальные причины влияют на колебания цен, и сидят примерно такие же игроки, которые любят перескакивать с одного актива на другой, но выбирает однотипные. Например, тот кто сегодня закрыл сделку по "EOS/USD", в разы более вероятно откроет сделку по "LTC/USD", чем по "Газпром/рубль". Общих фундаментальных факторов у "LTC" и "EOS" должно быть в разы больше чем у "EOS" и акций "Apple Inc" или нефти. Так получается эти два актива однотипные.

Если стратегия строилась с использованием данных по лайтам, но не тестировалась на "EOS", значит. Либо она на "EOS" не сработает, потому что тупо подгонка. Либо сработает, тогда это уже закономерность. Как минимум на большинстве однотипных парах она должна работать.

Тогда далее возникает проблема корреляции активов. Если активы однотипные и сильно скоррелированы, то прибыльная стратегия на одном активе скорее всего окажется и на другом. Но не потому что она работает на закономерности, а просто потому что цены активов ходят почти одинаково.

И тут если посмотреть коэффициент корреляции между "EOS" и "BTC", например, то выяснится что корреляции там почти нет. Так прибыльность стратегии скорее всего базируется на знании закономерности, а не подгонке и совпадению.

Гарантирует ли это доходность в будущем? Нет :) Закономерность может исчезнуть в любой момент.

Тут я именно "подогнал" настройки для биткойна на дневном для демонстрации как делать не надо. С одной стороны вроде как дает 440.000% прибыли. Но по факту: рынок дает 390.000% за тот же период, превосходство стратегии слишком мало, и в будущем она скорее всего проиграет. Во-вторых, имеется огромная просадка в -82%, что тоже многое говорит. В третьих, отключен шорт, который бы вообще всё слил :) У прибыльной стратегии должны быть прибыльны и шорты и лонги. Если прибыльна только одна сторона из двух - это подгонка. И в будущем работать оно не будет. Следовательно, эта стратегия никак не подойдет для дневных графиков крипты.
Тестируем систему с 2010 год по 2016 и не смотрим 2017 вообще... К сожалению TradingView такой фичи не дает.

if year > 2010 and year < 2016
strategy.entry("long", strategy.long, when = long_enter)
strategy.close("long", when = long_exit)

Вы не это искали? :)
Ответить
noro Ga77ett
@Ga77ett, это я знаю, там на часовом котировки только с 2017 выдаются - в этом проблема
Ответить
Как раз тестировал на EOS и хотел отписаться.А тут вы сами все мои мысли и озвучили именно с этой монетой:)).Именно так и будет,если уйдем в небольшую волантильность ,то все наши потуги получения прибыли с нынешней стратегией будут тщетны.И дай Бог здоровья Норо и он нам напишет новую стратегию обьективной реальности:)
+3 Ответить
RU Русский
EN English
EN English (UK)
EN English (IN)
DE Deutsch
FR Français
ES Español
IT Italiano
PL Polski
SV Svenska
TR Türkçe
PT Português
ID Bahasa Indonesia
MS Bahasa Melayu
TH ภาษาไทย
VI Tiếng Việt
JA 日本語
KO 한국어
ZH 简体中文
ZH 繁體中文
AR العربية
HE עברית
Домой Скринер акций Скринер форекс Скринер криптовалют Экономический календарь О проекте Особенности Правила поведения Модераторы Решения для сайтов и брокеров Виджеты Компонент графиков Отзывы и предложения Блог и новости ЧаВо Справка и Wiki Твиттер
Профиль Настройки профиля Счёт и оплата Мои запросы в поддержку Связаться с поддержкой Опубликовано идей Подписчики Подписан Личные сообщения Чат Выйти