Replikant_mih
Replikant_mih личный блог
26 апреля 2017, 12:08

Не любите многопараметрические стратегии? – Вы просто не умеете их готовить.

На самом деле в этой теме нужно много о чем сказать, не забыть бы всего). Начну с начала: много, очень много от кого слышу про то, что параметры – зло, много параметров – большое, нечеловеческое зло. Типа чем больше параметров, тем меньше шансов что в out of sample бою стратегия будет работать так же как и на is sample тесте. Здесь, наверное, надо сделать небольшое отступление: в трейдинге, как в кодинге, справедливо правило: если что-то работает, то и зашибись, не надо ничего менять. Простые стратегии работают (не все конечно) – это факт, и хорошо. Если вы не умеете работать со стратегиями с большим числом параметров – работайте с простыми стратегиями. Ещё в трейдинге есть правило: выбирай лучший вход – если у тебя есть достаточно выдержки, то ты будешь отсекать входы, где вроде и оно, но не совсем, я лучше подожду, чтоб был вход без «но» — и этот подход хорошо работает. Это я к чему такое отступление (применительно к теме поста) делал – к тому, что если у вас работают простые стратегии (здесь, далее и ранее, простые – с малым числом параметров или без них вообще) – торгуйте их, зарабатывайте и радуйтесь жизни. Но я всё-таки уверен, что много-параметрические стратегии работаю, нужно просто подойти с правильной стороны. Ниже об этом.

 

Далее хочу рассказать, почему моё отношение к многопараметрическим стратегиям несколько оппозиционно. Но начну с аналогии)). Возьмём бары, минутные и часовые. Возьмём 10 часовых и 600 минутных баров, представляющих один и тот же результат. В каком наборе содержится больше информации – очевидно, в минутном. С каким проще работать, опять-таки, почти очевидно – с часовым. И там и там можно найти одни и те же формации, тот же треугольник, только на часовых это будет 3 подряд идущие свечи с сужающимися диапазонами, а на минутках – обычный классический треугольник. Больше ли будет нести инфы треугольник на минутках относительно трехсвечного треугольника, представляющего точно ту же самую формацию? – конечно больше. Другими словами абсолютно одинаковые трехсвечные формации на часовиках внутри на минутках могут быть абсолютно разными и если вы не умеете работать с информацией, то для вас это будет зло, в этом случае ваши результаты будут лучше если вы анализируете свечные формации а-ля из 3-х свечей, если же умеете, вы сможете, условно говоря, на 3-х свечных часовых добиться таких же результатов, как и чуть выше упомянутый субъект, а на минутках – ещё лучших результатов.  Таким образом у этих людей рост объёма информации в одном случае приведет к улучшению результатов, в другом к ухудшению. К чему аналогия – а к тому, что с многопараметрическими стратегиями то же самое – умеешь – получишь лучшие результаты, не умеешь – не торгуй и торгуй то, что умеешь и получишь неплохие результаты, просто будешь упускать часть возможностей.

 

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

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

Про то, а какие же методы правильные – в следующих выпусках)). Вроде ничего не забыл по теме.

66 Комментариев
  • SergeyJu
    26 апреля 2017, 12:24
    Вот когда Вы начнете писать по делу, а не вообще-вообще, тогда и будем посмотреть.
      • SergeyJu
        26 апреля 2017, 12:49
        Replikant_mih, если рассуждать абстрактно. 
        Нужно спросить себя, а какой средний срок удержания позиции и какой средний доход на сделку я хочу иметь. Предположим, далеко не ХФТ, то есть средний доход на сделку, условно, 1%. Тогда квантование потока цен по уровню, условно, 0,1% будет нести, навскидку,  90% необходимой Вам информации, а все, что ниже — как ни усирайся, 10%. Если на 90% инфы Вы имеете 2-х параметрическую систему, добавление еще 10% инфы более, чем 1 параметр Вам не добавит. 
        А квантование по уровню 0,1% на FRTS даст Вам примерно тот же часовой бар. Ну, или получасовой, без разницы. 
  • Sergey Pavlov
    26 апреля 2017, 12:26
    Рекомендовано: срочно погружаться в реальные торги, через два года непрерывных реальных алготоргов эти «наивности» исчезнут почти сами собой.
      • Sergey Pavlov
        26 апреля 2017, 12:34
        Replikant_mih, Гегель весьма обстоятельно на феноменологическом уровне показал как вообще-вообще всякое бытие, если в него очень пристально всматриваться, превращается в ничто...

        P.S. не согласен:)
          • Sergey Pavlov
            26 апреля 2017, 12:44
            Replikant_mih, например, вот это:
            В каком наборе содержится больше информации – очевидно, в минутном. С каким проще работать, опять-таки, почти очевидно – с часовым.
            Это, конечно, не верно.

            Дело не в теоретизировании как таковом, а в том, по какому поводу строится теоретизирование. Трейдинг это очень практичное занятие, в котором очень полезно теоретизировать, но теории строить очень практичные, отталкиваясь от опыта и предметной наполненности. Сны разума с легкостью рождают чудовищ…
    • Пафос Респектыч
      26 апреля 2017, 14:57
      Sergey Pavlov, вместе с депозитом, и, возможно не одним )) Рубрика «вредные советы»!
  • Андрей К
    26 апреля 2017, 13:04
    Попробуйте свою теорию на опыте.
  • Egor Prosto
    26 апреля 2017, 13:36
    Какой смысл писать такие статьи не имея практического опыта алго торговли?
  • Alex
    26 апреля 2017, 13:59
    А всё просто, любую, даже простейшую систему без параметров можно параметризовать, параметризовать можно абсолютно всё, ну или как минимум много чего))). И в этом мульти-параметризованном варианте, производном от изначальной беспараметрической системы, такая беспараметрическая система будет частным случаем много-параметрической, одним из вариантов комбинаций значений параметров, другими словами, т.е. один из множества прогонов с разными значениями параметров будет соответствовать тому самому изначальному беспараметрическому варианту.

    Мне вот тут фраза понравилась: «А всё просто» ^^
  • Alex
    26 апреля 2017, 14:03
    особенно непосредственно торговли стратегий в бою — сразу же перехожу от теории к практике

    так переходите сразу. чего ждать: www.portfolio123.com Используется в Стенфорде для построения моделей. 15 дней триала, — достаточно для проверки любой теории.
  • Alex
    26 апреля 2017, 14:15
     Я не хочу проверять теорию ради проверки теории)), я хочу торговать в бою и зарабатывать деньги этой торговлей 

    добро пожаловать! PS Завидую я вашему оптимизму :p

  • Alex
    26 апреля 2017, 14:25
    помогают справляться с временными трудностями, которые в трейдинге — частый гость трейдера.

    нет ничего более постоянного, чем временное ^^
  • Alex
    26 апреля 2017, 14:33
    кстати о заработке… вы знали, что Quantopian выплачивает $5000 ежемесячно алгоритму, взявшему самый большой профит (вернее скорз) на демонстрационных торгах?
  • Alex
    26 апреля 2017, 14:42
    вот правила
    а вот условия capital allocation (продажа лицензии на алгоритм)
      • Пафос Респектыч
        26 апреля 2017, 15:01
        Replikant_mih, заголовок хороший, но всё, что дальше, простите, полный бред ) забудьте про свечи, их нет )
          • Пафос Респектыч
            26 апреля 2017, 15:17
            Replikant_mih, аргумент очень простой. Основная проблема от увеличения количества параметров стратегии состоит в том, что значительно улучшаются результаты от её переподгонки на истории и на out-of-sample в том числе, если мы просто отбрасываем те стратегии, которые плохо работают на OOS. Ваша «писанина» не содержит даже свидетельств понимания этого момента, не говоря уже о каких-то подходах по его преодолению )
              • Пафос Респектыч
                26 апреля 2017, 15:27
                Replikant_mih, какая разница, сколько параметров при неправильном подходе? Это совершенно неважно. Но самое смешное, что других-то подходов особо нет. Всё равно надо обучать модель на одних данных, а проверять на других ) Это как-бы мета-подход, и куда от него деться? )
  • Alex
    26 апреля 2017, 15:04
    Я пока сосредоточился на этапе создания пула работающих стратегий

    Хех. Средняя зарплата блек стаб кодера = $300K в год. На Западе целые «спец-подразделения» институциональных фондов рыскают в поисках «голов». Вот вам и все «торговая стратегия» :p 
  • Alex
    26 апреля 2017, 15:08
    Нет, меня такая не устраивает.

    Т.е. 300.000 американских денег в год вас не устраивает? Вы в каком мире живете, дорогой Replikant_mih? (ничего личного) :p
  • SMT
    26 апреля 2017, 15:11
     Просто многопараметрические стратегии  при оптимизации легко подгоняются под историю. 
     Но если форвард-тестирование показывает устойчивые результаты —  то почему бы и нет?
      • SMT
        26 апреля 2017, 15:28
        Replikant_mih, 
        С каги работаете?
          • SMT
            26 апреля 2017, 15:41
            Replikant_mih, я к тому, что трейдеры, работающие с патернами волатильности, как правило, уходят от понятия «таймфрейм» — и  используют гаги, ренко, зигзаги по  волатильности итп, построенные по данным, несущем больше информации, нежели бары — как правило, по аск/бид истории. 
    • Пафос Респектыч
      26 апреля 2017, 15:18
      SuperMegaTrader, потому что форвард тестирование это тоже может быть переподгонка, если мы выбрасываем те стратегии, которые плохо его проходят.
        • Пафос Респектыч
          26 апреля 2017, 15:29
          Replikant_mih, это не моя мысль, это общеизвестные азы машинного обучения.
      • SMT
        26 апреля 2017, 15:32
        Zweroboi, что значит переподгонка? Случай теста на пиках плохих параметров? И такое может быть.
         Так делается многофорвардный тест, который, как правило, решает эту проблему. Т.е тестируется робот со встроенным оптимизатором. И на основании этого можно судить о перспективности стратегии.
        • Пафос Респектыч
          26 апреля 2017, 16:18
          SuperMegaTrader, переподгонка, в общем смысле — обучение модели моделировать данные, а не сам процесс, который их породил. Многофорвардный тест сам по себе от неё тоже не спасает, это всего лишь частный случай n-fold кроссвалидации, которая тоже сама по себе не спасает )
            • Пафос Респектыч
              26 апреля 2017, 16:52
              Replikant_mih, Я-то? Я как раз наоборот загоняюсь по моделям и алгоритмам обучения, если с ними всё нормально, то с валидацией проблем нет )
          • SMT
            26 апреля 2017, 19:10
            Zweroboi,  а что тогда спасает?  (Кроме как обучение модели моделировать сам процесс, а не данные, которые он породил).

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

            А когда трейдер накидал кучу индикаторов на график и пытается оптимизировать их многочисленные параметры, то как определить что параметры не г-но?  Или нефиг рыпаться, ибо они по-любому будут г-но, т.к это имеет мало общего с моделированием процесса?
            • Пафос Респектыч
              26 апреля 2017, 20:01
              SuperMegaTrader, может быть я не совсем корректно выразился, «не спасает» не в том смысле, что не нужна вообще кросс-валидация. Она всего лишь даёт некоторую чиселку, которая сама в свою очередь является случайной величиной, со своим каким-то распределением. Взяли одни интервалы — будет одна, другие — другая. Если распределение, скажем, плюс-минус около нуля, а мы всё, что нам не нравится, выкидываем и оставляем только 5% справа — то вот привет подгонка.

              Разумеется, решение лежит в плоскости устройства самой модели и алгоритма подбора её параметров (обучения), они рассматриваются в комплексе, и глядя на распределение результатов кросс-валидации для разных случайных выборок уже можно делать какие-то выводы.
              • SMT
                27 апреля 2017, 10:24
                Zweroboi, А как думаете, возможно ли создать прибыльного бота под линейную торговлю на наборе стандартных индикаторов путем оптимизации их параметров? ТАм и параметры взаимозависимые почти все.
                • Пафос Респектыч
                  27 апреля 2017, 13:06
                  SuperMegaTrader, в смысле, можно ли сделать прибыльного бота на технических индикаторах? Конечно можно, даже не можно, а нужно! ) Не совсем понял только, что значит «путём оптимизации их параметров» — зачем оптимизировать параметры индикаторов? Нужно просто больше индикаторов с разными параметрами )
                  • SMT
                    27 апреля 2017, 15:03
                    Zweroboi, у меня не особо получилось. Возможно, не сильно времени уделил и знаний прикладных не достаточно было -бросил играться с оптимизацией.   Хотя, это еще когда я только пришел на форекс было дело. Возможно, то что не прокатило на форексе — на российском рынке акций прокатило бы. Он на много более неэффективен.
                    Раз говорите «даже не можно, а нужно!»  - значит неспроста Вы этим серьезно занимались и получили результаты. )
                       Какой результат  теста для Вас приемлем? Имею в виду статистику.   Фактор  воссановления, к-т Шарпа и др. 
                    • Пафос Респектыч
                      27 апреля 2017, 17:26
                      SuperMegaTrader, у меня свой софт, никогда не пользовался какими-то встроенными оптимизаторами и стандартными метриками типа Шарпа, они имхо не очень информативны. Я смотрю только на среднюю сделку и чтобы торговля не выглядела случайной — стат. тесты смотрю что показывают — писал в блоге у себя тут.
            • Пафос Респектыч
              26 апреля 2017, 20:05
              SuperMegaTrader, а уж какие у модели входные данные — значения индикаторов или что ещё, это на что фантазии хватит )
            • Пафос Респектыч
              26 апреля 2017, 20:06
              SuperMegaTrader, ботайте ресамплинг короче )
              • SMT
                27 апреля 2017, 10:39
                Zweroboi, не, ботать хватит с меня.) С оптимизацией многопараметрических у меня ничего толкового не вышло. В плане, получения устойчивого результата. И не собираюсь дальше рыпаться.  Я исследовал влияние изменения каждого параметра на результат. В итоге пришел к выводу, что почти все параметры, которые я использовал -г-но и «результат» выходил лишь благодаря тому что «звезды сошлись» случайно.  А когда начинал отсеивать «плохие» параметы — то из многопараметрической системы получались одна-двупараметрические. Кстати, почему -то  уверен, что у автора  90% параметров в его многопараметрических системах — мусор.
              • SMT
                27 апреля 2017, 11:24
                Replikant_mih, респект тогда.
  • Alex
    26 апреля 2017, 15:12
    Трейдер, — это всегда наемный рабочий :p
      • Alex
        26 апреля 2017, 15:17
        Replikant_mih, не будем углубляться в детали ^^

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

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