Мальчик buybuy
Мальчик buybuy личный блог
21 августа 2024, 16:36

Простой тест на применимость теоретико-вероятностных моделей к рыночным ценам

Добрый день, коллеги!

Этот пост написан в продолжение дискуссии, начатой

Открытое письмо к VictorGromov. Доколе?! (smart-lab.ru)

К сожалению, сам я в ней поучаствовать не смог, т.к. был мгновенно забанен за систематическое называние  VictorGromov большим земляным червяком, не уважающим нас, смердов. Ну и правильно. Чем больше на СЛ будет таких активных и плодовитых авторов, как  VictorGromov, тем больше годного контента мы с вами получим. Аминь!

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

Пусть x(n) — это логарифм цены
Пусть d(n)=x(n)-x(n-1) — это приращение логарифма цены

В 99% вероятностных подходов к рынку базовой случайной величиной является не цена, а ее приращение (ну, или приращение ее логарифма). Опять же не буду повторяться, почему это удобнее — на этот счет есть 100500 публикаций.

Посмотрим на d(n) как на реализацию случайного процесса. Мы ничего особо не знаем про этот процесс, но можем попытаться оценить матожидание и дисперсию по этой единственной реализации.

Для этого построим график частичных сумм d(1)+...+d(n). Получим мы, ессно, исходный ряд x(n) и вот такой график:

Простой тест на применимость теоретико-вероятностных моделей к рыночным ценам
Из него мы видим, что матожидание d(n) скорее всего положительно, дисперсия/СКО высоки по сравнению с матожиданием, так что ничего уверенного про поведение цены в ближайшем будущем мы сказать не можем. Также мы не знаем, стационарны ли матожидание и дисперсия, либо же они меняются со временем.

Теперь построим еще 2 случайные величины:

y(n) = abs(d(n))
z(n) = d(n)*sign(d(n-1))

и применим к ним такую же процедуру.

В первом случае получим график:

Простой тест на применимость теоретико-вероятностных моделей к рыночным ценам
Из него мы видим, что матожидание y(n) слабо зависит от времени, а дисперсия мала по сравнению с матожиданием. После детрендирования ряда (исключения из него линии регрессии), можно увидеть колебания около нуля и порассуждать о кластеризации волатильности. Ну и монотонный рост не вызывает у нас вопросов — мы складываем только неотрицательные числа.

Второй случай интереснее:

Простой тест на применимость теоретико-вероятностных моделей к рыночным ценам

Это по сути график эквити простейшей реверсивной трендовой линейной торговой системы порядка 1. Из него мы также видим, что матожидание z(n) слабо зависит от времени, а дисперсия мала по сравнению с матожиданием.

Но тут мы уже имеем дело со знакопеременным рядом, так что тот факт, что частичные суммы четко ложатся на асимптотическую прямую, объяснить уже непросто.

ТЕПЕРЬ ВЫ, КОЛЛЕГИ:

1. Берете любую теоретико-вероятностную модель, которую Вы используете для работы на рынке (случайное блуждание, авторегрессионные модели, модели с кластеризацией волатильности, любые кастомные модели с изменяющимися во времени матожиданием и дисперсией) и пробуете воспроизвести этот феномен (последовательность z(n) и график ее частичных сумм).
2. Далее берете любой знакомый вам ряд ценовых котировок (Si, Ri, GAZP, SBER, валюты, индексы, коммодитиз, американские стоки, крипту — вообще все, что угодно, кроме облигаций, дисконтные инструменты можно) и воспроизводите график сумм z(n). Это можно сделать в Excel за 3 минуты. И видите, что магия работает, правда, в 90% случаев у вас выйдет не монотонно возрастающая, а монотонно убывающая функция. Главное, чтобы таймфрейм был малый (1m, но можно юзать 15m, 30m, 1h, дальше — хуже), а количество баров — большое (иначе получатся корявые, а не красивые картинки).
3. Видите, что теоретико-вероятностная модель радикально расходится с реалом. И, чтобы как-то привести ее в соответствие, следует выкрутить корреляцию соседних приращений цен вплоть до +-100% (что не слишком соответствует действительности и не подтверждается графиком выборочной АКФ).
4. Задаете себе вопрос — если в этом тесте теоретико-вероятностная модель показывает одно, а рыночные котировки — совсем другое, то каковы реальные границы применения этой теоретико-вероятностной модели? Будет ли она работать и нести бабло?

Как-то так.

С уважением

P.S. Иногда (редко) вместо 3-го графика получается какой-то фантазийный мусор. В 99.9% случаев это означает, что:
1. Котировки «кухонные»
2. На этом рынке нет ликвидности
3. Вы взяли не все котировки (убрали ночные торги, которыми не пользуетесь)
Других исключений пока найдено не было, но все может быть в теории...

54 Комментария
  • Kot_Begemot
    21 августа 2024, 17:00

    А есть у вас котировки по NG,SPY,NASDAQ?  

      • Kot_Begemot
        21 августа 2024, 17:16
        Мальчик buybuy, спасибо, буду знать, если что)
          • Kot_Begemot
            21 августа 2024, 17:41

            Мальчик buybuy, нет, но там есть другая проблема, связанная с тем, что нарисовать эквитей можно даже слово «Счастье», если заниматься машинным обучением до упора совсем.Я потому и написал, что они сильно сложнее.

             

            Для простых моделей этот ваш индикатор Z очень даже крутой, бесспорно. (Наверное на М1 ещё круче). И да, я понимаю к чему вы клоните, но не понимаю вашей… восхищенности сим преобразованием. Я и не такое в жизни подгонял уже. Сам даже не повторю сейчас что я делал… Но получал трендовость при полном провале всех тестов, в том числе на отличие от GBM (ABM). Но по рынку это не выстрелило совершенно, рынок проще оказался )

             

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

             

            С уважением.

             

  • Kot_Begemot
    21 августа 2024, 17:12
    Задаете себе вопрос — если в этом тесте теоретико-вероятностная модель показывает одно, а рыночные котировки — совсем другое, то каковы реальные границы применения этой теоретико-вероятностной модели? Будет ли она работать и нести бабло?

     

    Вообще говоря слабо понятно, что означает «совсем другое»?

    Модельные ряды дают качество роста 3-4 (шарп)

    Реальные… от +2 (Si) до -7 ( комоды).

    Мои системы ито более ровные графики выдают чем это всё. Но они посложнее, конечно.  

      • Kot_Begemot
        21 августа 2024, 17:17
        Мальчик buybuy, да одно и то же, тем более теорию всегда можно подтянуть под практику при желании. 
      • Kot_Begemot
        21 августа 2024, 17:33

        Мальчик buybuy, 

         

        Вот например график «3» для трендовой модельки :

         

        с кластеризованной волатильностью.

         

        T-test = -8.08, такого даже коммоды не дают качества (от -4, до -7).

         

        А это RI с T-test = -2.1

        Не понимаю, что я должен тут такого необычного увидеть???

        С уважением.

         

          • Kot_Begemot
            21 августа 2024, 17:43
            Мальчик buybuy, верхний синий график это график 3, взятый преобразованием z(x), где x — красный график 2, полученный из Trend + Noise которые синие и зеленые на графике 2. График 3 это z( d ( RI1! ))

              • Kot_Begemot
                21 августа 2024, 18:01
                Мальчик buybuy, да, конечно, рост или падение регулируется весами компонент. 
                  • Kot_Begemot
                    21 августа 2024, 21:15

                    Мальчик buybuy, на сгенерированных данных очень устойчивый минус по предложенным суммам, на m15 RI ± ноль.

                    SR, GZ, NG, GD и даже Si — минус, хотя по Si «старая» сумма — плюс. Но если надо положительную сделать, можно и положительную, вопрос в том ещё какие дополнительные условия должны выполняться? Две суммы в хороший + и всё? Или ещё «старая» в минус должна быть при этом?

                     

                    В принципе-то понятно, что это тест на трендовость, и пройти его легче легкого отдельно, но так чтобы «старая» сумма в минус, а эти обе в плюс и на том же ТФ и так ещё чтобы… в общем можно, но это уже будет не ТВиМС по-моему )

  • SergeyJu
    21 августа 2024, 18:44
    Взял дневки на индексу насдак сто. Повторил формулу для Z.
    Получил график, весьма неровно падающий вниз. И если за период натуральный логарифм самого индекса вырос примерно на 2, то график Z снизился на 3. Причем картинка весьма негладкая. 
    Так-то давно известно, что в насдаке и СП500 сидит странный контртренд, который при обычной торговле побивается комиссиями.
    Но вот чего я не понял, так это то, какую  модель такая картинка должна опровергнуть.
      • SergeyJu
        21 августа 2024, 19:36
        Мальчик buybuy, а непременно должна быть какая-то единая модель? Да еще и в классических терминах  из учебника. 
        Как по мне, мы ищем работающие алгоритмы, не какую-то безумную параметрику на все времена и рынки. 
          • SergeyJu
            21 августа 2024, 20:51
            Мальчик buybuy, даже если нет полного выполнения всех условий, МНК что-то да покажет. А народу, не отягощенному лишними знаниями и умениями, этого достаточно.
            Почему мы хотим, чтобы эквити росла по прямой из левого нижнего  угла в правый верхний. Потому что, помимо прочего,  это дает надежду, что нашли преобразование, которое из нестационарного ряда делает почти стационарный. Причем в реальности мы мыслим в других терминах. 
            Нет ли в таком алгоритме ошибки и нет ли переподгонки, если все выглядит слишком хорошо. А эти базовые вопросы вовсе не из теорвера.
    • Sergey Pavlov
      21 августа 2024, 19:31
      SergeyJu, автор имеет в виду следующее. Если взять рандомный ряд приращений из нормального распределения, то получим два таких графика. d[n] и z[n]:
      Оба графика на глаз — случайный блуждания.

      Если берём минутки IMOEX, то эти же преобразования дают нам для d[n] и z[n] «чудо», о котором предлагает задуматься автор:


      • SergeyJu
        21 августа 2024, 19:41
        Sergey Pavlov, на первом графике я вижу события 2008 и 2022 годов? Если это Z. 
        На втором я вижу нестационарную  волатильность, если это Y.
        Или все не так? 
        • Sergey Pavlov
          21 августа 2024, 19:58
          SergeyJu, первая пара графиков это кумулятивная сумма d (верхний график) и кумсумма z (нижний график) для случайно сгенерированных данных. Вторая пара графиков это кумсумма d (верхний) и кумсумма z (нижний) для минуток IMOEX.

          d[n]=log(x[n])-log(x[n])
          z[n]=d[n]*sign(d[n-1])

          x для первой пары графиков это генератор случайных чисел.
          x для второй пары графиков это IMOEX
            • Sergey Pavlov
              21 августа 2024, 20:01
              Мальчик buybuy, конечно, там -1. Опечатался в комменте. Эта сумма возрастает как на картинке из-за отрицательной корреляции соседних приращений на минутном ТФ для IMOEX. Давно известный факт. Получили теоретически красивую эквити. Если мы сгенерируем рандомные данные с высокой корреляцией соседних приращений, то получим этот же эффект. Непонятно, о чем пост:)
                • Sergey Pavlov
                  21 августа 2024, 20:21
                  Мальчик buybuy, да, конечно, при отрицательной корреляции сумма z должна убывать. Это я, не подумав, ляпнул. Если растёт (как вышло для IMOEX), значит там в среднем после положительного приращения положительное, а после отрицательного — отрицательное. АКФ для d в этом случае об этом же говорит:


                  А это уже любопытно. Не помню, чтобы до минуток считал корреляцию для IMOEX. Возможно, для индекса впервые это сделал))
                  Раньше от тиков до минуток просчитывал всё это по отдельным бумагам типа SBER, GAZP и тд. Там вроде сплошь до минуток были отрицательные корреляции.
                • Sergey Pavlov
                  21 августа 2024, 20:23
                  Мальчик buybuy, ну и не понимаю, почему для этого же эффекта мы должны прям 100% корреляцию организовать. Надо поковыряться на счет 20-30%.
  • yurikon
    22 августа 2024, 08:09

    @Мальчик buybuy , можно пойти дальше и нарезать тиковую ленту не по времени, а по другим критериям (цена, объем и тд). И провести те же тесты.

    В этом диссере ученик Ширяева сделал такие шаги.
    new-disser.ru/_avtoreferats/01002738594.pdf

    Что думаете про такое усовершенствование методы ?


  • _landy
    22 августа 2024, 11:07
    @Мальчик buybuy, вопросик больше по предыдущему посту (про формулы для ММ) — что думаете про классические модели вроде Glosten-Milgrom или Guéant–Lehalle–Fernandez-Tapia?
  • the bat
    22 августа 2024, 14:42
    Нашел на просторах инета SPBFUT_Si_1m
    ~2,87 млн значений


      • the bat
        25 августа 2024, 13:51
        Мальчик buybuy, проверил повторно, всё так же. Получается, фьючерс СИ контртрендовый.
        Намутил такую систему на 10 минутках. Правила простые, но с учетом комиссий не работают (



  • А. Г.
    23 августа 2024, 01:34
    Одномерное распределение не имеет прямого отношения к возможности успешной торговли или ее невозможности:

    smart-lab.ru/blog/452099.php

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

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