Блог им. melamaster

RI (фРТС), волатильность, 15 лет, sqrt?

По мотивам… ну, вы сами поняли:)

Вместо пролога. Зачем нам волатильность? Зачем нам её приводить одну к другой и сравнивать? Её физический смысл — как далеко может убежать траектория случайного процесса. Надеюсь, на СЛ стало меньше людей, сомневающихся в том, что изменение цены и сама цена — процесс случайный? Итак, что нам говорит некая сигма? Что наш процесс в среднем убежит на столько-то и столько-то, если мы будем генерировать много траекторий или делать эксперимент много раз и тд и тп. Ну и классика для чистого СБ это квадратный корень. Ну и мы знаем, что если за 1 час в среднем пьяный матрос отклоняется по сторонам на 5 метров, то за 4 часа он в среднем отблуждает от некого центра на 10 метров.

Теперь цена. И в БШ и везде у нас для масштабирования волатильности используется квадратный корень.

А давайте посчитаем? Пойдем от обратного. Волатильности тут уже считали. И доказывали, что вся отлично выводится одно из другого путем взятия квадратного корня (хоть сперва на минутках посчитай минутную, хоть на дневках дневную). И это хорошо, посколько процесс один и хочется, чтобы волатильностей у него много не было — как ни считай. Правда нам уже и доказали, что не совсем это так и могут быть нюансы.

А мы давайте посчитаем вот что. Возьмем фРТС с 2005 года и будем его нарезать — сэмплировать на минутках. От часовых отрезков до нескольких дней. Каждый такой отрезок будем сдвигать вправо. И для каждого отрезка будем запоминать две величины: DP и DT. DP это насколько изменилась цена за данный отрезок, DT — сколько это заняло времени. Полный перебор сделать у меня, конечно, не получилось. Поэтому сэмплы я двигал по 20 минутных отсчетов и чем выше масштаб, тем меньше там получалось сэмплов. Итого:
RI (фРТС), волатильность, 15 лет, sqrt?


































DT в днях. Сделаем абсциссу логарифмической:
RI (фРТС), волатильность, 15 лет, sqrt?


































Ну вот мы и видим что-то такое нелинейное и вроде квадратичное. Оно и логично. Чем больше DT, тем больше будет DP, но вроде кажется, что как раз пропорционально квадратному корню. А давайте в малых окрестностях DT посчитаем сигмочки:
RI (фРТС), волатильность, 15 лет, sqrt?


































sdp это те самые волатильности, mdt это среднее значение DT для своей окрестности. После 30 дней совсем маленькие выборки, поэтому их отбросим и посчитаем желаемое:
RI (фРТС), волатильность, 15 лет, sqrt?



























Лучшая аппроксимация из элементарных — степенная, но не квадратный корень…
★9
62 комментария
Все на рынках случайно? То есть ничего там математикам не светит? 
avatar
GoodBargains, приращения цены от времени, безусловно, случайны. Просто потому, что цена не зависит от времени и зависеть никак не может.
avatar
PSH, 
временами не случайны ;) 
Дмитрий Овчинников, если вы берете голый график неизвестного инструмента, неизвестного таймфрейма и начинаете его исследовать на предмет зависимости приращений e от t — проверьте, вы всегда будете получать один и тот же результат, эти приращения — случайный процесс.

То, что какой-то процесс развивается во времени, не значит, что он от времени зависит. Например, размножение зеленых водорослей в пруду — процесс, явно зависимый от времени. А изменение вашей высоты над уровнем моря при гулянии по лесу — нет. Вы можете сопоставить каждое время t каждой высоте h, но функцию h(t) задать невозможно
avatar
GoodBargains, почему не светит? Зависит от уровня знаний. Скажем, если у нас 10 игровых автоматов типа «однорукий бандит», у них одинаковая вероятность выигрыша. Вы как сторонний наблюдатель, видите, что 9 из 10 уже имеют приличный отрыв по выигрышам от одного, на каком выгоднее играть?
avatar
Dmitryy, по прежнему одинаково на всех, по условию задачи 
avatar
Dmitryy, на любом, если там корень из T. Если не корень из T, а… 0.42 степень, как у автора, то выгоднее, конечно, на тех, которые уже много выиграли.

Разве это не очевидно?
avatar
Kot_Begemot, для меня не очевидно. Допустим выигрыш каждого это 5%, мы видим, что у 9 уже было по 2 выигрыша, в то время как у одного ни одного. Я считаю, что на следующих наблюдениях вероятнее всего должен выиграть именно последний, чтобы не портить статистику.
avatar
Dmitryy, тогда вы считаете, что случайный процесс обладает ненулевой зависимостью от предыдущих значений, эффектом памяти или, другими словами — корреляцией. 
avatar
Kot_Begemot, или немарковский процесс. Ну нет, я конечно так не считаю :)
(теперь вижу, что сам себе противоречу, возможно пример с одноруким бандидом был не удачным)
avatar
переход от лог шкалы к линейной без ошибки сделан?
avatar
ПBМ, что смущает?
avatar
Sergey Pavlov, тоже показалось подозрительным, что финальная формула отображает линейную взаимосвязь волатильности и корня от логарифма времени. Или обратную (V= C / Sqrt( Ln(T) ))? В общем, тоже плохо соображаю, позже коммент удалю, чтоб не позориться)

P.S. я понял, в чем запутался — подумал, что R^2 тоже находится в показателе степени икса, все дело в скобках
avatar
Владислав К, 
 R^2 (вообще нигде не находится).  Это ESS 
avatar
flextrader, «Так вон оно че, Михалыч!»
А я уж подумал, что это было просто такая форма записи единой формулы
0.0223 * x ^ (0.426*R^2) = 0.988

А это, оказывается, просто степенная функция и через пробел оценка отклонения…
avatar
Владислав К, 
оценка отклонения…
все ж '^2' коэффициента корреляции
avatar
ПBМ,
пост получается о том что SnP на растущем рынке показывает растущую волатильность?
нет


avatar
Я точно на смартлабе? =/
Боюсь спугнуть, но выглядит всё так, как будто бы тут стали публиковать интересные топики по теме трейдинга.
Хм…
Fry (Антон), это потому что рыночек какаха и начали вылезать из своих норок =
avatar
DT в рабочих днях или календарных? Отношение степени из аппроксимации к sqrt() 0.426/0.5=0.852, а отношение sqrt(5)/sqrt(7)=0.845. Очень близко.
avatar
Антон Куклев, в календарных. 
avatar
Sergey Pavlov, как всё просто оказалось)
avatar
Антон Куклев, нет никакого смысла сравнивать sqrt(5/7) с отношением степеней. чисто математически.
а вообще Афтару, конечно есть смысл дополнить последний скрин кривулькой N^0.5 ))

и несколько тезисов, вместо обоснования, если принимать Вашу гипотезу
* скейлинг на 'не корректное(переразмер-е) время' должен сказываться не на показателе, а на сдвиге всего временного ряда (это особенно д.б. очевидно при переходе N>5)  
* в интервале  N (0;1) aka при 'интрадее', отклонения были б прям существенные (тут бы для наглядности нам и пригодилась s(N)= N^0.5)
* такие штуки не дали б коэфф. корреляции порядка .993

Поэтому строго, имхо, но я больше  склонен списывать это (mismatch .5/.426) все на  интрадей/гепы и соответственно на «условную» нормальность (ну или возникающую периодич. не идентичность/деформацию) распределения, при которой естественно  скейлинг sqrt(N) работать не будет
avatar
flextrader, в качестве аргумента смоделируем мою гипотезу. Воспользуемся кодом, любезно предоставленным Eugene Logunov. Сигму посчитаем по торговым дням, а аппроксимацию сделаем по календарным, добавив два выходных.
> s <- 1:30
> sigma.s <- 0.0223*(s^0.5)
> s.calendar <- s+rep((0:5)*2, each=5)
> regr.x <- cbind(1, log(s.calendar))
> regr.y <- log(sigma.s)
> regr.coeffs <- solve(t(regr.x) %*% regr.x) %*% t(regr.x) %*% regr.y
> sigma.0 <- exp(regr.coeffs[1])
> hurst.exp <- regr.coeffs[2]
> cat(sprintf('sigma.0=%.4f; hurst.exp=%.4f\n', sigma.0, hurst.exp), sep = ' ')
sigma.0=0.0229; hurst.exp=0.4476
Получили степень 0.4476 вместо 0.5. Выходит, что влияние есть и оно существенно.
avatar
Антон Куклев, 
сорри я не оч. понял. а не д.б. 
<- cbind(0, log(s.calendar))
?
avatar
ПBМ, потому что СИ реверсивный актив по отношению к обычным индексам акций, у которых на падении вола растет.
avatar
Сергей, это можно как-то применить? В расчете цен опционов или еще где?
avatar
yurikon, теоретически, да. Чтобы перейти к практике, нужно еще уйму всего проделать с высокой вероятностью, что эта среднняя температура по больнице так и останется средней темп по больнице.
avatar
Sergey Pavlov, если степень 0,426 — означает ли это, что процесс больше минреверсный, чем трендовый? И от каких значений его надо контрить? ))
avatar
yurikon, во-1, это за 15 лет, за которые РИ сильно-сильно поменялся. во-2, да, получается, что траектории его (при таком способе оценки) разбегались во времени медленнее, чем это было бы у ГБД, т.е. какая-то устремленность к центру присутствует. Что в каком-то виде очевидно, если посмотреть на график РТС за этот период. Он болтается в широчайшем боковике. Контрить лучше контру:))
avatar
Eugene Logunov, с удовольствием:



avatar
Дмитрий Овчинников, ничего, просто мы о разном :)
avatar
Не совсем уловил, как считается sdp. Возможно там и собака :)
avatar
bstone, возможно. Мы получили за 15 лет на разных контрактах кучу отрезков с разными dp и dt. Теперь берем, например, все отрезки у которых 0.95<=dt<1.05 дней. Для всех этих отрезков считаем обыкновенное СКО по всем dp, которые в эту окрестность попали, т.о. получаем sdp. В качестве mdt считаем простое среднее по всем dt, попавшим в этот отрезок.
avatar
Шикарные картинки, только я не все понял. Нельзя ли формульно, что такое Dt, DP  и что и как усреднеятся. 
Попутно, как производилась склейка фьючей и зачем взяты неторговые дни в расчет. 
avatar
SergeyJu, как рассчитывались величины я выше в комментах ответил. Может понятнее после этого:
Мы получили за 15 лет на разных контрактах кучу отрезков с разными dp и dt. Теперь берем, например, все отрезки у которых 0.95<=1<1.05 дней. Для всех этих отрезков считаем обыкновенное СКО по всем dp, которые в эту окрестность попали, т.о. получаем sdp. В качестве mdt считаем простое среднее по всем dt, попавшим в этот отрезок.

Склейка никак не производилась. Я считал только по раздельным контрактам, файл за файлом, следил лишь за тем, чтобы каждый новый файл начинался после последней даты предыдущего. Поэтому так мало выборок с десятками дней — в одном контракте таких с гулькин нос можно нарезать. Я к торговым/неторговым никак в этом расчете не относился. Смотрел на это с точки зрения календарного времени и всё. Пока так. Т.е. неторговые дни попадают только при измерении времени dt.
avatar
SergeyJu, Если формульно, то у нас есть ряд цен закрытия C(t-n)...C(t-1),C(t).
dp=C(t)/C(t-k)-1
dt=difftime(datetime(t),datetime(t-k)), т.е. точная разница во времени, приведенная к календарным дням.
k — плавающая величина от 100 до десятков тысяч.
avatar
ПBМ, 
SnP на растущем рынке показывает растущую волатильность?
)))да как же это м.б. разумеющимся. разумеется такое только если ряд цен spx будет круче exp
avatar
Какое перекрытие Вы брали для расчета при больших длительностях, шаг 20 мин или больше? 
За 15 лет у Вас взято 59 фьючей. Для 1 месячных данных это более 200 независимых точек, даже для 90 дней — 59. Не так уж мало, но сыпь на третьем графике справа слишком уж размашистая, полумесяц — это странно. 
avatar
SergeyJu, сдвиг там до 100 мин увеличивался при увеличении dt до многих дней. Смотрите, сдвиг на самом деле не 100 мин, а 100 минуток из файла. Иногда эти 100 минуток это 100 минут, иногда это несколько дней. Плюс к этому в 2005-2006 годах разреженность файлов большая. В любом случае один контракт это три месяца. Три месяца это один отрезок длиной 100 дней. Поэтому 100-дневных отрезков мало и там систематическая ошибка за счет фазы рынка того времени.
avatar
Sergey Pavlov, я понимаю, что у Вас гэп через выходные = 1 минута. Мне чисто методически не нравится
(а) календарные дни вместо торговых
(б) смешивание внутридневного формата и овернайта
(в) отказ от логарифма в ретурнах
(г) смешение дней с вечеркой и без вечерки. 
При этом не думаю, что эти замечания носят существенный характер. Лучше скажите, это можно как-то использовать?
avatar
SergeyJu, меня изначально интересовала волатильность на относительно небольших масштабах (то, что происходит в пределах одного-двух-трех дней), где использование логарифма почти ничего не меняет. Не люблю я логарифмы.

Да, всё, о чем вы пишите, хорошо бы вычистить, но это — допработа, которой пока не охота заниматься, а результат хочется увидеть скорее. В данном случае это удовлетворение любопытства. Вот такой получился факт.

Если бы это в лоб как-то монетизировалось вот так сходу, я бы уже…
avatar
Sergey Pavlov, ну, на таких размерах выбор дней рабочие vs календарные значение имеет, а учесть то или иное — не сложно. 
А что хотели увидеть, какой эффект? 
avatar
SergeyJu, хотел посмотреть насколько получится отличие от 0,5. Ожидал более близкого к 0,5 значения. Но это всё очень средненько для очень длинного интервала. А дальше я уже погрузился во всё это в динамике от контракта к контракту.
avatar
Ну хорошо, не зависит от времени. Это понятно, То есть вы не можете выращивать деньги на бирже как яблоки или водоросли. Для этого собственно есть депозит.
S = S*(1+r)^dt

На рынках же учтываются внешние события (новости) и они действительно не зависят от времени, они просто случаются. Это импульс. А вот развите реакции на импульс очень даже зависит от времени и имеет вполне детерминированные паттерны. В журнале ФО была про это статья, и там в пределах нескольких минут была выявлена вполне ощутимая взаимная корреляция котировок во времени.
avatar
Для не самых умных представителей СЛ, как 0.426 получилось? Как было посчитано желаемое :)
avatar
Опцишизик никогда не поймет 3 вещи:
1- если ему расказывают о деньгах, то там уже нет денег.
2- когда ему трут за формулы, то разводят на комиссию.
3- если ему воще чето трут, то речь идет именно о его деньгах.))
avatar
КАРАТЕЛЬ, у вас такое завидное упорство во зле 
avatar
Kot_Begemot, низя давать околорынку расслабляться, а то офигевать начинают и поушам ездить, слабоумных жалко, я гуманист))).
avatar
Eugene Logunov, о! большое спасибо! )
avatar
Первый рисунок — детская пугалка из пяти пальцев.
avatar
Eugene Logunov, да не. мне понятно как выполняется линеаризация и без коммента и что самое главное, задолго до коммента(. прямо ну очень задолго лет 10, не меньше. это проблема интерпретации кода, поэтому — не обращайте внимание
avatar

теги блога Sergey Pavlov

....все тэги



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