Постов с тегом "алгоритмы": 269

алгоритмы


Измерение токсичности потока ордеров. VPIN для HFT. Часть 2

con_035928_0

Прошлая часть — в моем блоге.

Стандартный подход к вычислению PIN состоит в нахождении методом максимального правдоподобия ненаблюдаемых параметров (α,δ,μ,ϵ) описывающих стохастический процесс трейдов, и последующем вычислением PIN из этих параметров. Мы представим аналитическую оценку токсичности, не требующую промежуточного вычисления ненаблюдаемых величин. Мы обновляем нашу метрику в привязке к объемам для учета скорости прибытия новой информации на рынок. Эта метрика, которая называется VPIN, предоставляет простую оценку токсичности потока ордеров в высокочастотном окружении.

Природа информации и времени

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



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

Измерение токсичности потока ордеров. VPIN для HFT. Часть 1

VPIN_Dist

В статьях об индикаторе PIN мы определили, что на рынке присутствуют два типа трейдеров — информированные и неинформированные. Заявки неинформированных трейдеров всегда подвержены adverse selection risk со стороны информированных. Ситуация, когда после исполнения таких заявок цена движется в невыгодную для неинформированных участников сторону, называется токсичностью потока ордеров. Индикатор PIN служил для измерения этой токсичности, в данной статье мы рассмотрим усовершенствованный индикатор VPIN, который применим и для высокочастотной торговли. Цикл статей основан на публикации Maureen O’Hara "Flow Toxicity and Liquidity in a High Frequency World". Будет все описываться очень подробно, потому что, кроме нахождения непосредственно VPIN, в этой публикации много интересных выводов и фактов.



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

Стратегии на базе индикатора Bollinger - Алготрейдинг

Торговые стратегии на базе индикатора Bollinger 

Ли́нии (по́лосы) Бо́ллинджера(англ.Bollinger bands) — технического анализа финансовых рынков, отражающий текущие отклонения цены акции, товара или валюты.

Индикатор рассчитывается на основе стандартного отклонения от простой скользящей средней. Обычно отображается поверх графика цены. Параметрами для расчета служит тип стандартного отклонения (обычно двойное) и период скользящей средней (зависит от предпочтений трейдера).

Индикатор помогает оценить, как расположены цены относительно нормального торгового диапазона. Линии Боллинджера создают рамку, в пределах которой цены считаются нормальными. Линии Боллинджера строятся в виде верхней и нижней границы вокруг скользящей средней, но ширина полосы не статична, а пропорциональна среднеквадратическому отклонению от скользящей средней за анализируемый период времени.



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

#Wealth, #Флёров, Спорно, кратко и актуально

Не банально, сжато — только полезные фитчи, применимые на практике, по мнению Флёрова. Must see!
Специально для Финансовой лаборатории  #Wealth, #Флёров, Спорно, кратко и актуально

Модель скрытых состояний Маркова. Часть 4

hmmTrendFollow-OutOfSample-Corrected

Окончание цикла статей. Начало и другие алгоритмы биржевой торговли смотрите в моем блоге и на сайте.

В прошлой части мы продемонстрировали обучение модели Маркова на данных, полученных с помощью симуляции. В данной статье рассмотрим производительность модели на реальных данных. Будем тестировать трендследящую стратегию на индексе S&P500.

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

Мы хотим создать трендследящую стратегию, поэтому должны выбрать участки на выборке цен S&P500, которые соответствуют восходящему и нисходящему трендам ( также можно отметить участки, где тренды отсутствуют). Можно это сделать вручную, а можно применить программу, которая автоматически расставит метки в соответствии с вашими определениями тренда.



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

Модель скрытых состояний Маркова. Часть 3

hmmStateProbabilities

В этой части рассмотрим обучение модели скрытых состояний Маркова на языке R. В прошлых статьях мы изучили математическую основу модели, которая воплощена в библиотеке RHmm. Есть два способа распознавания режимов с помощью модели Маркова, первый — использование одной модели, каждое состояние которой отражает режим, в каком находится рынок. Второй способ подразумевает построение нескольких моделей, каждая из которых создана для одного режима, задача состоит в том, чтобы выбрать ту модель, которая генерирует данные, наиболее соответствующие текущему состоянию рынка. Рассмотрим оба эти способа.

 

Метод первый — одна модель с несколькими состояниями.

Для обучения модели будем использовать исходные данные, полученные симуляцией из нормального статистического распределения N(mu,sigma), где mu — медиана, sigma — среднеквадратичное отклонение. Распознавание будем производить для двух режимов — бычьего (bull) рынка, на котором наблюдается восходящий тренд и медвежьего (bear) рынка, на котором тренд нисходящий. Соответственно, сгенерируем приращение значений из двух нормальных распределений - N (mu.Bull,sigma.Bull) и N(mu.Bear,sigma.Bear). На рисунке показан результат такой генерации на 300 наблюдений, 100 первых из которых получены из бычьего распределения, 100 вторых — из медвежьего и 100 последних — из бычьего с другими параметрами mu и sigma (каждое приращение будем считать дневным):



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

Вопрос знатокам Теорвера...

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


Вопрос знатокам Теорвера...

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

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

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

108

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

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



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

Простая прибыльная стратегия

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

Выбираем 2 ликвидных опциона CALL и PUT (например опционы на RIM5, примерно одинаковой стоимости)
И просто покупаем тот, который в моменте дешевеет, и продаём, который дорожает… и всё =)

В алгоритме делаем 3 параметра:
  — максимально допустимая позиция (количество колов или путов которые мы можем купить)
  — минимальная позиция (держим минимумальную позу даже если опцион колл или пут сильно вырос в цене)
  — шаг цены, через который мы будем наращивать лонг при падении цены


Когда CALL падает — PUT растёт, и наоборот. Пока набираем дешевые колы, по дорогим путам фиксим прибыль и наоборот.
Продаём при обновлении максимума дня, тоже постепенно — по штучке на выбранный шаг цены.
Если даже случится апокалипсис, и колы обнулятся, то путы взлетят (мы ведь держим минимально необходимую позу и тех и других)

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

Исходники robot_uralpro ЛЧИ 2010

Исходники robot_uralpro ЛЧИ 2010
В своем прошлом посте я обещал раскрыть алгоритм robot_uralpro (25 место ЛЧИ 2010, HFT), но получил в личку много просьб от читателей смарт-лаба ( видимо тех, кто занимается алгоритмической торговлей) этого не делать. Аргументация, в общем, сводилась к тому, что народ у нас достаточно образованный и этим разоблачением алгоритма я могу наплодить армию конкурентов для  роботорговцев. И это правда -  например, когда в 2009 году начинал разработку стратегий, я вообще не знал ничего о том, как работают HFT, но, шаг за шагом, в условиях почти нулевой информации, удалось создать прибыльный алгоритм. Тем не менее, свои обещания надо выполнять, поэтому я принял решение, которое позволит трейдерам, серьезно интересующимся высокочастотной торговлей, получить обещанное, и даже больше, но в то же время значительно ограничит распространение: я предоставлю не только описание алгоритма, но и сам исходный код робота на C# с подробными комментариями точно в том виде, в котором он работал на ЛЧИ 2010, но все это — не бесплатно .  Далее причины, почему покупать это не нужно:

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

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