Блог им. Dabelw

Основы (сбор графика)

Давайте соберем цену, потом разберем цену и сравним. Все будет производиться на ваших глазах в экселе. Файл, которого я прикладываю. ФАЙЛ https://cloud.mail.ru/public/27GB/5ipstzGrY  .(в зеленые области вы будите вписывать разные цифры).  Проверку на гетероскедастичность мы будем делать методом максимального правдоподобия. Во я загнул. Если просто. Мы возьмем две, хорошо известных нам стратегии и будем их прогонять на каждом шаге создания графика цены. Первая стратегия. Увеличение лота на один при убытке. Принцип опциона. И если у нас случайный процесс, то должно получаться 50/50. И удвоение позиции. Принцип мартингейта. И если у нас случайный процесс у=x^2, то у^2=x, мы всегда в плюсе. Давайте по шагам.

Шаг первый, лист W

Сгенерируем случайные числа. В экселе есть функция =случмежду(0;1). И 0 переведем в -1, а 1 в 1. У нас получился простой бинарный ряд из 1 и -1. Возьмем 100 таких цифр. Теперь посчитаем их сумму нарастающим итогом.  К сумме предыдущей прибавить следующее (Total). И построим график изменения этой суммы. Назовем это «геометрическое Броуновское движение».  Тогда, сумма всех случайных числе будет равна точке, куда пришел наш график. А сумма всех случайных чисел в квадрате, будет равна пройденному пути. А если каждый шаг происходит за 1 секунду. То это, одновременно, и время. И мы должны получить следующую зависимость. Берем 100, извлекаем корень квадратный и получаем 10. И это одно стандартное отклонение. И есть теорема, которая доказывает, что 68% траекторий  будут заканчиваться в диапазоне от -10 до +10. Вы можете это проверить сами. В графе ТЕСТ введите число. Если сумма средних от -10 до +10, ставим 1, если больше 0. У вас будет получаться среднее 0,7, в среднем. То есть в 3 случаях из 10 мы будем выскакивать из -10 +10. И это уже не 50/50 вверх или в низ. Это уже 30/70.

Если, мы проделаем то же самое, но при положительном среднем ставим 1, при отрицательном 0, то среднее будет вокруг 0,5. Отсюда напрашивается вывод. Вероятность направления 0,5, а вероятность диапазона 0,7. В какую вероятность мы будем играть?

Берем две простые стратегии на этом процессе. В одном случае это удвоение после минуса и это всем известный «мартингейт». Другой случай, увеличение ставки на +1. Естественно «мартингейт» всегда будет в плюсе, потому что Винеровский процесс частный случай мартингала. При увеличении ставки +1 необходима более тонкая настройка. Но там есть тоже интересная зависимость. В графе TEST вы можете записать доходность по стратегии при каждом проходе. Запишите цифры доходности, которые получаются при, «сумма сл чисел» -10+10. А если эта сумма будет больше или меньше, подставляйте 0. Тогда все прогоны в -10+10, в сумме будут давать положительное число. То есть, внутри одного стандартного отклонения +-10 в основном выигрыши. А таких отклонений 70%. Зато в остальных 30% случаев потери будут равны прибыли.  Откуда следует, мы имеем процесс с нормальным распределением случайностей.

Шаг второй. W+вола

Теперь нам надо добавить волы и цену вопроса. В формуле это было S*сигма*W. Берем наши W числа и каждое из них умножаем на волу. Волу, пока, мы сгенерируем через слчис(), это числа от 0 до 1 и немного уменьшим (/10), что бы это было похоже на дневные изменения. Делаем мы это «пока». Потом мы отдельно сгенерируем модель изменения волы. Сей час нам надо, что то подставить. Каждое случайное изменение волы умножим на случайное число W. Получим доходность. Зададим начальную цену x0=100. К 100 мы прибавим изменение W*сигма и так до конца ряда. Делаем график полученных цен. Это уже ближе к реальному активу. У нас не просто изменение на +1-1, а на волу +вола-вола. И теперь более отчетливо видны уровни, фигуры, волны идиота и тренды. То есть на этом графике можно оттачивать мастерство трейдера и его психологическое состояние.

Сыграем в «мартингейт» и 1+. Ну с удвоением вопросов нет. Там всегда +. При увеличении лота +1 абсолютный выигрыш положительный. То есть, в графу TEST запишем, последовательно, числа из Мартин+1. В сумме будет получаться плюс. То есть у нас сломалась случайность и появилась закономерность. А это значит, что наш компьютер сломался и больше не генерит случайные числа?  Или это еще не настоящий рынок?  Если мы уменьшим делитель нашей волы, то запросто уйдем в 0 по графику БА и от туда уже не встанем. Поэтому, пора запускать полную формулу: dx = µ x dt + σ x δW и ее перевод: x(t) = x0* eхр(µ−σ^2/2)t+σ*t ^0.5. Теперь каждое следующее число будет таким. (Не зря меня носом по топику возил. Старый уже). Переходим на лист «лог»

Шаг третий. Лог

Во первых, у нас появилось МЮ. В общем, мы можем считать это некоторой константой развития. История с кроликами. Если им не мешать и стремить волатильность к нулю, экспоненциальный рост получится. Множитель для волы 1000, МЮ 0,01. 0,02. 0,03. Экви начнет загибаться. Что удивительно. Это не как не отразится на наших марингальных стратегиях. Вола как работала, так и работает.  Поэтому ответ Мальчик Buybuy . Зарабатываем на воле не зависимо от МО. При удвоении позиции появятся очень глубокие просадки. Естественно, мы теперь 1* на сигму. Вы сами можете подставить разные параметры и сделать выводы. Ну и на графике появляются не только пробои, но и ложные пробои.

Остается последний шаг. Пока мы использовали волатильность как некое число. И это не та волатильность, которая есть на самом деле. И хотя, именно с волатильности надо было начинать, я пошел вокруг. Зато мы быстро получили цены и я сделал специальный лист «График», где вы можете оттачивать свое мастерство на пробоях уровней. Меняйте волу, МЮ, хвосты и следите. Следите, как важны круглые цифры для случайной цены. Как «Куклы» ее останавливают и разворачивают. Как ретестятся пробитые уровни. 

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

Если интересно…

★18
46 комментариев
Про кота, которому нечего делать и что он лижет при этом, уже писали?
avatar
Кан Делябр, Дмитрий Новиков один из немногих кого можно читать на этом сайте.
avatar
Begemot, заменять реальные процессы сгенерированными псевдослучайными процессами и делать выводы — это все равно, что иметь дело с резиновой женщиной.
avatar
Кан Делябр, =) Вы — знаток?
avatar
ch5oh, а Вы почитайте его посты, там много чего поучительного.
avatar
Альберт, =) он же из Питера. Конечно головастый и пишет умно. Немного завуалированно излагает, но что поделать.
avatar
Begemot, я закрыл, увидев грамматическую ошибку уже в третьей строчке. Доверия к сути почти не остаётся.
avatar
Кан Делябр, Ну нельзя же сказать что люди не будут это читать и я сам с этим не согласен и больше не буду писать и остаться при этом на окладе, писать нада. Знаете чем взрослый отличается от ребенка? Взрослый знает что такое «нада».))
avatar
Кан Делябр, Не нравится, не подглядывайте.
avatar
Опытным это может быть покажется скучным, но для тех, кто только начинает знакомство со стахостическим миром, это чрезвычайно полезный топик. Спасибо!
avatar
Если, мы проделаем то же самое, но при положительном среднем ставим 1, при отрицательном 0, то среднее будет вокруг 0,5. Отсюда напрашивается вывод. Вероятность направления 0,5, а вероятность диапазона 0,7. В какую вероятность мы будем играть?
Можно играть в любую, т. к. матожидание одинаковое, но лучше играть в никакую, ибо матожидание равно нулю (
avatar
noHurry, Мат ожидание 1/2, а ожидание серии 68%
Дмитрий Новиков, 
Если сумма средних от -10 до +10, ставим 1, если больше 0. У вас будет получаться среднее 0,7, в среднем. То есть в 3 случаях из 10 мы будем выскакивать из -10 +10. И это уже не 50/50 вверх или в низ. Это уже 30/70.
Нет — это вероятность оказаться в той или иной зоне, а если посчитать сгенерированную при этом прибыль, то получим матожидание и оно будет равно нулю. 
avatar
noHurry, Для этого мы и делаем ММ х^2, что бы получить обратную функцию. И сравниваем в х+1 (линейной). В линейной 50/50, в квадратичной плюс.
Дмитрий Новиков, вообще-то это было в шаге первом и до стратегий мы ещё не дошли, и поэтому я имел в виду постоянный лот. 
avatar
noHurry, Наверное мы об одном и том же. Мат ожидание монетки 1/2, а серия из 100 монеток, ожидание 100^0.5.
Дмитрий Новиков, что-то мне подсказывает, что нет ). Вероятность выпадения орёл/решка — 1/2, а вот заработать на этом не получится (матожидание=0). 
А 100^0,5 — это ведь дисперсия, ско? Я ведь последнее время на эту тему только тебя читаю ). 
avatar
noHurry, Это зависит от финансирования стратегии. 100^0.5=10 Это. Куда мы уйдем за 100 шагов, при случайном блуждании. Мы не можем поставить на один бросок монетки все. Это глупо. А вот ставить не серию из одних орлов это немного другое. Если вы постоянно увеличиваете ставку, то движение y=x^0,5 преобразуете в x=y^2. Получается прямая. Что мы и видим на графике с удвоением. 
Дмитрий Новиков, не понятно, что значит
Если вы постоянно увеличиваете ставку, то движениеy=x^0,5 преобразуете в x=y^2
ведь математически оба эти выражения равнозначны. 
И ещё заглянул в файл и мне не понятно, почему в столбцах «Удвоение» и соответственно «Увеличение+1» происходит перемножение количества лотов из столбцов слева с ценой? Ведь по идее нужно перемножать с доходностью, и тогда мы получим графики доходности, а не графики цены умножить на количество лотов?
avatar
noHurry, На каждом шаге мы покупаем один лот. Цена ушла вниз, в конце дня купили по текущей. Прибавили к тому что было. Цена пошла вверх, продали один лот по текущей и т.д.
Выражения однозначны. У нас квадраты уходят и получается линия. Правильно записать так у=а*х^2. У нас константа одного лота остается.
Дмитрий Новиков, интересно, да, пишите дальше
avatar
Дмитрий Новиков, матожидание нольпять или вероятность сходить вверх/вниз?
Если вероятность, то как вероятность серии может быть выше 1/2?
avatar
wrmngr, Вероятность. Из 100 бросков, 10 подряд, какая вероятность?
Дмитрий Новиков, Вероятность получить 10 орлов подряд будет (1/2)^10 для любой начальной точки. Вероятность увидеть такую серию хотя бы один раз за 100 бросков будет (100-10)*(1/2)^10. Меньше 9%.
avatar
wrmngr, 1/2^10 это получить все орлы из 10. Там так (100!/50!+50!)*1/2^10. Там надо функцию распределения случайностей подставлять. 100^0.5=10 это одно СКО. СКО=68%
Дмитрий Новиков, теперь понятно, что имеется в виду.
вы пишите интересно, но трудно для восприятия, иногда слишком вольно трактуете общепринятые формулировки. Для новичка к примеру это кошмар. Это не претензия, а пожелание на будущее:)
avatar
wrmngr, Спасибо. Постараюсь. Надо отдельный топик сделать с понятиями и определениями. Сам понял. А то не всем доступно.
Так, давайте разбираться.

1. Доказательство возврата 68% траекторий фиксированной длины в конкретную зону около нуля в студию плз. При траектории длиной 100 попадание в +-10 не слишком удивительно. Поэтому в Ваших модельных рассуждениях предлагаю поднять длину траектории до 10000 или до 1000000 и посмотреть, как изменятся рассуждения.
2. Ваши стратегии подразумевают внешнее финансирование (добавляете денег линейно или экспоненциально). Поэтому Эквити следует считать в процентах к текущему размеру использованного капитала. Пересчитайте, плз, и покажите нам новые, более аккуратные графики.

С уважением

P.S. Даже при линейном финансировании может потребоваться огромная докапитализация — далеко не +1
avatar
Мальчик Buybuy, Ну какие могут быть доказательства. ЦПТ одно стандартное отклонение 68%. Давайте поднимем траекторию до 100000000, извлечем корень квадратный и получим коридор куда попадем в 68% случаев. 
Пока капитал мы не берем. Тут обычное сравнение. Просадки видны. 
Дмитрий Новиков, да. перепутал. сорри.

А почему капитал не берем. Если он неограничен — мы всегда в плюсе на бесконечной дистанции. Не?

С уважением
avatar
Мальчик Buybuy, Замечание верное. Но тут более 100 орлов получаться не буде. Но у нас и выигрывает эта штука, потому что волатильность не настоящая. Введем волатильность, начнем капитал считать. Ок?
Дмитрий Новиков, почему не будет?

Речь же не о 100 орлах подряд, а о преобладании на 100 орлов над решками. Это другая задача (полиномиальное распределение) и вероятность в ней значительно выше. Маленькая, но не исчезающая.

С уважением
avatar
Читать с такой 'орфографией' невозможно.
avatar
Дмитрий Новиков,
спасибо, интересно.
Классная идея смоделировать случайное изменение волатильности. Но можно продолжить ряд волатильности. Добавить случайное изменение, случайного изменнения волатильности… И так до бесконечности вложенные случайности.
avatar
FZF, До бесконечности не получается. Там мы в конкретную функцию упремся. 
Почитал коменты  как на Марс слетал пообщался))
avatar
Stasik, Прикинь. А это основы трейдинга, даже не сам трейдинг.
Дмитрий Новиков, вот это прикруть бы
avatar
Картинку для наглядности про 68%, мне помогла кое что понять:




avatar

Dmitryy, а теперь нарисуйте распределение для модуля этой же Случайной Величины.


И посмотрите где находится мода и как по отношению к этой моде расположен интервал "вероятность попасть в интервал около моды равна 68%".

 

ПС Более детально:

smart-lab.ru/blog/532775.php

avatar
Писать топик с «определениями» не надо. Надо правильно использовать общепринятые понятия, а не заниматься рукомаханием, словоблудием и обязательным загонянием траекторий к стартовой точке.

 
Иногда формула стоит миллиарда слов. =)

С уважением

avatar
И построим график изменения этой суммы. Назовем это «геометрическое Броуновское движение».  Тогда, сумма всех случайных числе будет равна точке, куда пришел наш график. А сумма всех случайных чисел в квадрате, будет равна пройденному пути. А если каждый шаг происходит за 1 секунду. То это, одновременно, и время. И мы должны получить следующую зависимость. Берем 100, извлекаем корень квадратный и получаем 10. И это одно стандартное отклонение. И есть теорема, которая доказывает, что 68% траекторий  будут заканчиваться в диапазоне от -10 до +10. Вы можете это проверить сами.

Дмитрий, здравствуйте, не до конца понял этого заключения,  стандартное отклонение по нашей выборке (-1:1) будет 1, а не 10. Почему мы берем корень из 100, а не корены(100/100)? Можете пояснить мысль?
avatar
SL, У нас изменений 100 штук. Одно изменение одна секунда (интервал времени). Волатильность это (сигма^2*время Т)^0.5. Мы смотрим СКО за 100 интервалов

теги блога Дмитрий Новиков

....все тэги



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