Избранное трейдера Prosto_tak

по

Улыбка волатильности. Модель Хестона

heston_gr

Продолжаем рассматривать алгоритмы построения улыбки волатильности. В этой статье будем находить «справедливые» цены опционов при помощи модели Хестона, которая относится к так называемым моделям стохастической волатильности. Хестон предложил использовать в качестве модели базового актива систему следующих уравнений:

dS_t=r S_t dt+\sqrt{V_t}S_tdW_t^1



( Читать дальше )

Улыбка волатильности. Ad-hoc Блэк Шоулз

    • 29 апреля 2015, 10:29
    • |
    • uralpro
  • Еще

06eacc816672bc6021ef661b0ec0981a67773653

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

Цена опционов, как известно, вычисляется по формуле Блэка-Шоулза, однако из-за того, что некоторые допущения, относящиеся к модели цены базисного актива, не соответствуют реальному статистическому распределению, опционам разных страйков приходится присваивать различные значения так называемой подразумеваемой волатильности (IV), которая входит в уравнение Блэка-Шоулза как параметр. Возникает ситуация с двумя неизвестными — мы вычисляем IV  по текущей цене опциона, при этом не зная, насколько справедлива эта цена в настоящий момент, следовательно не можем определить, дешево стоит опцион сейчас или дорого. Если бы нам удалось определить истинную волатильность рынка, то рассчитав по ней цену и сравнив с текущей, можно было бы принимать решение о покупке или продаже опциона. Поэтому основная задача, которую нужно решить в стратегиях покупки/продажи волатильности — построение правильного графика подразумеваемой волатильности опционов, в зависимости от страйков, из-за его формы имеющим название улыбки волатильности, или поверхности волатильности, если речь идет о разных периодах до экспирации — см. график в заглавии.



( Читать дальше )

Результаты роботорговли за март

    • 28 апреля 2015, 10:23
    • |
    • uralpro
  • Еще

grafrobot_9825_image001

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

Немного расскажу об используемых роботах. Общая архитектура этих программ основана на структуре robot_uralpro, но значительно усовершенствована в плане гибкости, что позволяет добавлять любой новый алгоритм без перестройки основного скелета робота, вплоть до опционных стратегий. Новый робот торгует валютным фьючерсом Si, но применяются некоторые элементы старого алгоритма robot_uralpro. Всего реализовано 3 стратегии на данный момент, в торгах принимают участие пока только две, третья не набрала достаточного количества статистики, так как медленнее остальных, поэтому только тестируется. Сделана диверсификация по параметрам для каждого алгоритма на 10 разных наборов, следовательно, торгуют одновременно как бы 20 роботов. Стратегии основаны на наблюдениях, сделанных при тестировании математических моделей, никаких ценовых паттернов не используется. Роботы подключены к бирже через Plaza2, колокейшена нет, выбран обычный хостинг с минимальным пингом до плазовских IP. На данный момент он равен 3 мс. Средний раундтрип заявок составляет около 10 мс. Эквити за один день — 23.03.2015 — на графике ниже. Выбрал, конечно, один из лучших:)



( Читать дальше )

Линейная регрессия с использованием фильтра Калмана

    • 23 апреля 2015, 10:12
    • |
    • uralpro
  • Еще

price_corr

Линейная регрессия часто используется для вычисления пропорции хеджирования в парном трейдинге. В идеальной ситуации коэффициенты этой регрессии — наклон линии регрессии и свободный член (пересечение) остаются всегда постоянными. Однако в реальности все, конечно, не так радужно, и значения этих параметров постоянно меняются во времени. Как правильно вычислять коэффициенты регрессии, чтобы избежать подгонки к текущей ситуации, рассматривается в статье "Online Linear Regression using a Kalman Filter". Для этой цели в данной публикации используется фильтр Калмана. 

Для тестирования берутся исторические цены закрытия двух биржевых фондов ETF — австралийского EWA и канадского EWC с 2010 по 2014 год. Динамика цен этих фондов показывает взаимосвязь, что продемонстрировано на  диаграмме рассеивания в заглавии поста. Однако по этому же графику видно, что эту взаимосвязь невозможно описать с помощью линейной регрессии с постоянными коэффициентами. 



( Читать дальше )

Использование CART в предсказании направления рынка

    • 21 апреля 2015, 10:19
    • |
    • uralpro
  • Еще

tree

Интересный подход к предсказанию направления  рынка рассмотрен в статье "Using CART for Stock Market Forecasting". Для того, чтобы предугадать движение цены на недельном отрезке используется техника под названием CART (Classification And Regression Trees) — построение классификационного графа (дерева) с целью предсказать значение  целевой характеристики (цены) на основании набора объясняющих переменных. CART находит применение во многих областях науки и техники, но применим и в торговле, так как обладает набором свойств, хорошо подходящими для этой цели:

  • может применяться при любом типе статистического распределения
  • может применяться как для линейных, так и нелинейных зависимостей
  • устойчив к событиям, выходящим за рамки статистических распределений

Для построения дерева автор использует библиотеку языка R, вычисляющую рекурсивное разделение (Recursive Partitioning) rpart.



( Читать дальше )

Модернизация стратегии robot_uralpro. Lead-lag relationship

    • 16 апреля 2015, 10:22
    • |
    • uralpro
  • Еще

108

Трейдеры, которые приобрели мою программу robot_uralpro (см. пост на смарт-лабе), спрашивают, можно ли доработать алгоритм для применения его на современном рынке? Напомню, стратегия робота основана на взаимоотношении цен синтетического индекса, составляемого динамически из рыночных цен акций, входящих в индекс РТС, и фьючерса RI. Идея «одноногого» статистического арбитража, реализованного в роботе, будет работать и сейчас, только в том случае, если научиться правильно определять, какой актив опережает другой в смысле динамики их цен. Эта статья посвящена правильному выявлению такого взаимодействия, которое в англоязычных источниках называется «lead-lag relationship» -опережение-отставание между разными активами.

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



( Читать дальше )

Стратегия "Гэп на открытии"

    • 14 апреля 2015, 10:07
    • |
    • uralpro
  • Еще

Небольшое исследование стратегии «Гэп на открытии рынка» в блоге Pawel Lachowicz. Автор  случайным образом выбрал 10 акций из состава индекса Доу-Джонса, и провел бэктестирование вышеуказанной стратегии. Основные параметры алгоритма:

вход в позицию: если цена открытия актива в день t выше цены закрытия актива в день t-1, и если минимальная цена актива в день t выше максимальной цены актива в день t-1, акция покупается на следующий день, причем цена покупки устанавливается равной цене закрытия дня t;

triggers-2

 

выход из  позиции происходит просто по временному критерию — акция удерживается после входа от 1 до 21 дня, количество дней — это параметр оптимизации для бэктеста.

Сначала бэктест прогоняется на каждом активе отдельно на выборке длительностью 1 год. Пример для акции AXP — сколько в течение этого времени обнаружено условий для входа в позицию (обозначены кружками):



( Читать дальше )

Алгоритмы маркетмейкера. Часть 5

    • 09 апреля 2015, 11:27
    • |
    • uralpro
  • Еще

Алгоритмы маркетмейкера. Часть 5

Продолжаем разбирать численное решение уравнения Хамильтона-Якоби-Беллмана. В прошлой части мы составили выражение для оператора \widetilde{\mathcal{L}}(t,y,f,s,\phi), в котором есть слагаемые, получить значение которых можно из реальных данных. Во-первых, что из себя представляют дифференциальные матрицы D1,D2. Это матрицы размерностью N_F\times N_F, где, для D1(согласно определению в части 4) в ячейках [j,j] стоят -1, если fj<0 и 1 в остальных случаях,  в ячейках [j,j+1] стоят 1, если fj<0 и 0 в остальных случаях, и в ячейках [j,j-1] стоят -1, если fj≥0 и 0 — в остальных случаях. Как составить матрицу D2, я думаю, вы догадаетесь сами, взглянув на ее определение в



( Читать дальше )

Алгоритмы маркетмейкера. Часть 4

    • 07 апреля 2015, 11:25
    • |
    • uralpro
  • Еще
Алгоритмы маркетмейкера. Часть 4
Прошлые части цикла здесь. В этой части статьи мы найдем численное решение системы уравнений оптимального управления позицией маркетмейкера. Такое решение легко запрограммировать и использовать в реальной торговле для контроля за лимитными и маркет ордерами в соответствии с полученными стратегиями θmk,θtk. Для упрощения разложим функцию владения на слагаемые, чтобы получить сокращенную функцию владения v(t,y,f,s), которая представляет собой только динамическую составляющую основной функции:

V(t,x,y,p,f,s)=x+py+v(t,y,f,s)



( Читать дальше )

Алгоритмы маркетмейкера. Часть 3

    • 02 апреля 2015, 09:46
    • |
    • uralpro
  • Еще

Алгоритмы маркетмейкера. Часть 3

Продолжаем разбирать работу JIANGMIN XU «Optimal Strategies of High Frequency Traders». Чтобы составить уравнение оптимального контроля, сначала сформулируем проблему оптимизации алгоритма при используемых стратегиях θ,  как достижение максимума следующего матожидания:

\max_{\theta^{mk},\theta^{tk}}\mathbb{E}_0[X_T-\gamma\int^T_0 Y^2_{t-}d[P,P]_t],



( Читать дальше )

....все тэги
UPDONW
Новый дизайн