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

по

Пишем торгового робота на C#. Часть 2. Реализация торгового алгоритма

В прошлой части данной статьи мы узнали, как подключиться к терминалу QUIK, создали свой DDE сервер, с помощью которого мы смогли импортировать данные в наше приложение. Сейчас нашей задачей является реализация торгового алгоритма робота и отправка заявок на совершение торговых операций в терминал.
За основу алгоритма для торговли возьмем алгоритм, который я описывал ранее (http://robostroy.ru/community/article.aspx?id=537). В качестве входа в сделку используется свечной паттерн: две повышающиеся свечи — дают сигнал на покупку, две понижающиеся — сигнал на продажу.
Помимо этого, условием входа в длинную позицию также является условие:
High[bar] > High[bar-1] and  Low[bar] > Low[bar-1]
т.е. максимум текущей свечи больше максимума предыдущей и минимум текущей больше минимума предыдущей.


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

Один день из жизни Ri. Или введение в микроструктурный анализ

Для большинства трейдеров свечные графики различного таймфрейма это и есть рынок, там скрывается все — и тренд и боковик и хитрый маркет мэйкер с глобальным кукловодом. Начнем с простых фактов, за одну сессию 2012.11.07 на фьючерсе Ri ядро биржи обработало 10 449 043 транзакций или примерно 12 000 транзакций в минуту, одна свечка самого «высоко частотного» минутного таймфрема скрывает за собой огромное количество более элементарных действий. Поэтому мы спустимся на самый низкий уровень того, что происходит на бирже и начнем оттуда.

    Можно долго рассказывать про то как устроена биржа, про промежуточные сервера и другие части «транспортной» инфракстуры, какие задержки они вносят при путешествии заявки, но в конце пути любая заявка попадает в ядро биржие, где непосредственно происходит то ради чего все собственно и затевалось — сведение(matching). И на этом уровне, в смысле формата данных и производимых элементарных действий, FORTS мало чем отличается от той же CME или любой другой современной биржи. Входной поток состоит из заявко двух типов, на вставку(insert) и отмену(cancel). Бьете вы по рынку или выставляете заявку в глубь стакана — для ядра нет разницы, все это в конечном итоге преобразуется в заявку на вставку, которой присваивается свой уникальный идентификатор. Другой тип заявок — на отмену, позволяет убрать часть(или всю) предшествующей заявки на вставку. Ядро принимая на входе поток состоящий из заявок на вставку и отмену, создает поток сведенных сделок, каждая сведенная сделка связана с двумя заявками участвующих в сделке. Исходя из полученного потока, затем строятся стаканы, и тиковые данные(сведенные сделки), которые рассылаются пользователям(к примеру на RTS срезы стаканов строятся с периодичностью 30 миллисекунд), и лишь затем тики преобразуются в красивые свечки, отображаемые на экране. Поток данных содержащий заявки на вставку, отмену и сведенные сделки, на FORTS называется Full Order Log.

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

Вкалывают роботы

    • 03 октября 2013, 07:01
    • |
    • Mikola
  • Еще
Михаил Самюэлевич пил чай. Уже много лет это была его персональная традиция – пить чай за полчаса до закрытия торгов. Пить чай и просматривать отчеты роботизированных систем об итогах торгов за день. Михаил Самюэлевич контролировал более трети торгового объема на крупнейших биржевых площадках в мире. Не сам, конечно. Совершать миллионы и даже тысячи операций в день одному человеку не под силу. Не под силу даже команде трейдеров. Уже давно, даже очень давно, более 80 % операций на всех биржах совершают роботы. Не огромные человекообразные, конечно. У торговых роботов нет физического тела. Это всего лишь строчки программного кода. Сотни и тысячи строчек кода, выполняемого отдельными компьютерами, суперкомпьютерами, кластерами суперкомпьютеров, разбросанных по всему миру. Алгоритмы сжирают биржевую информацию, от новостей в лентах до тиков, препарируют и перерабатывают ее в соответствии с замыслом автора алгоритма, подвергая всем известным видам анализа, и получают на выходе однозначный торговый сигнал, который отправляется в биржевые системы и реализуется в виде конкретных сделок по конкретным инструментам на конкретных торговых площадках.


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

Прибыльны ли классические МТС?

 
Под классическими МТС понимаю МТС на основе анализа ценовых баров, анализирующие и торгующие один инструмент.

Ответ на вопрос о прибыльности тесно связан с вопросом о предсказуемости рынка по данным технического анализа. Если нет предсказуемости, то прибыльная МТС не возможна. Но и не каждая возможность предсказывать может быть превращена в прибыль по ряду причин. Самая главная, пожалуй, это издержки торговли (комиссия, спред и т.п.).
Поскольку не существует простого и очевидного способа ответа на данные вопросы, то противоположные мнения спокойно сосуществуют в среде трейдеров и вроде бы не противоречат их жизненному опыту.
Понятие “предсказание” тоже не простое. Например, если я априори знаю некое стихотворение и мне сказали первую строку, то я могу сказать следующую. В некоторым смысле я предсказываю. Но для того, кто не знает стихотворения предсказание выглядит не возможным. Так и для случая торговли: если у меня есть стратегия, которая устойчиво коррелирует с движениями рынка, то рынок для меня не выглядит абсолютно случайным. Если нет — то я буду склоняться к мысли что рынок случаен. (Кстати, для всезнающего бога, пожалуй, понятие “вероятность” не должно существовать в принципе).


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

Моделирование улыбки

Я прочитал два предыдущих поста, решил написать свой, чтобы обрушить поток конструктивной критики на похожую идею.

Я торгую только американский рынок. Поэтому буду моделировать на примере S&P500.
Цель: я хочу совместить implied улыбку волатильности, с теоретической полученной из цен опционов посчитанных по физическому распределению цен S&P500, которое я буду моделировать.

Моделировать физическое распределение я буду следующим образом. Есть такая модель Normal Inverse Gauss, относится к классу моделей Levy process. Она позволяет построить физическое распределение по 4-м моментам: стандартное отклонение, skew, kurtozis, мат. ожидание(mean). Эти 4 момент легко посчитать на историческом участке цен S&P500.  Я использовал годовые моменты, 2-х, 3-х и 4-х годовые для построение распределения. Матожидание я использовал не историческое, а просто risk free rate, то 0,0006(0,06%) для месячного опциона. 

После того как любому отклонению от мат. ожидания присвоена вероятность с помощью физического распределения, можно оценить опционы в $. Для этого использую fft(fast fourier transformation), такая функуция встроена в стандартный пакет matlab. Далее пересчитываю в implied цены опционов для каждого страйка S&P500.

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

Обобщенная модель стоимости опционов


Я давно обещал выложить в сеть свою статью из журнала FO с обобщенной моделью стоимости опционов, что сейчас и делаю
Сначала некоторые замечания к статье, ниже она сама
 
 
 
Обобщенная модель (ОМ) создавалась как упрощенная версия классической модели Блэка-Шолеса (БШ) для автоматической торговли опционами. Впоследствии оказалось, что главное достоинство ОМ состоит в том, что она позволяет обойтись без введения в рассмотрение понятия кривой волатильности (IV) и от всех последующих неприятностей, связанных с необходимостью ее анализа и прогнозирования.
 
Основная идея ОМ продемонстрирована на рисунке (Рис.1). Ожидаемая подвижность m ATM опционов, связанная с ценой формулой (6), есть линейная функция цены Fбазового актива (БА).


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

Толстые хвосты и эмпирические распределения. Продолжение

Продолжаю тему, поднятую в статье «Толстые хвосты и эмпирические распределения». Напоминаю, в материале рассматривался вопрос, как влияют толстые хвосты распределения цены базового актива на появление улыбки волатильности. В представленной модели фьючерс РТС каждый день прыгает на величину, случайно выбранную из ряда его ежедневных приращений в прошлом. Ранее были показаны результаты модели для 100 шагов движения цены. К ним мы еще вернемся, а пока рассмотрим, что происходит при небольшом количестве шагов модели. В этом случае, Центральная Предельная Теорема только начинает работать, и толстые хвосты разворачиваются во всей своей павлиньей красе.

Толстые хвосты и эмпирические распределения. Продолжение


Выше представлена модельная улыбка за 10 дней и две реальных кривых волатильности опционов с аналогичным сроком жизни. Как и раньше, в модели введена поправка на тренд. По оси Х номер страйка от центрального, графики совмещены по горизонтали. 


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

Historical options market data

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

Historical options market data

Отмечу, что мне нужны были именно исторические данные (дневные или внутридневные). Данные за  последний торговый день по всем сериям можно скачать бесплатно, например, с Yahoo. Я же, повторюсь, искал уже накопленные (исторические) данные. Бесплатно я их не нашел, цены и спецификацию по основным поставщикам данных привожу ниже.

Livevol
Маркет дату Livevol можно назвать эталоном исторических рыночных данных. И вот почему:
Granular: 1-minute option and stock intervals with open, high, low, close, volume, bid, ask, calculations.
Calculations: Implied Volatility, Greek, and IV Index Calculations for every interval.
Time & Sales: Every stock and option trade from January 2004 to now.
Accessible: Stored in text files with comma separated values, fields set up for immediate bulk load into standard databases.
Complete: In addition to the trade and quote data, Livevol offers earnings, dividend, symbol change, and yield curve supporting data.
Стоит такая маркет дата недешево:
Тип данных: Trades, Underlying symbols: 1/все, Срок: 1 месяц, Цена: $20/$3000
Тип данных: Trades, Underlying symbols: 1/все, Срок: 1 год, Цена: $240/$20 000
Тип данных: 1 min, Underlying symbols: 1/все, Срок: 1 месяц, Цена: $10/$2000
Тип данных: 1 min, Underlying symbols: 1/все, Срок: 1 год, Цена: $120/$12 000
Тип данных: 15 min, Underlying symbols: 1/все, Срок: 1 месяц, Цена: $10/$1000
Тип данных: 15 min, Underlying symbols: 1/все, Срок: 1 год, Цена: $120/$5 000
Тип данных: 1 day, Underlying symbols: 1/все, Срок: 1 месяц, Цена: $5/$300
Тип данных: 1 day, Underlying symbols: 1/все, Срок: 1 год, Цена: $60/$1 000
Сумма одного заказа не менее $500.

Market Data Express

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

Толстые хвосты и эмпирические распределения

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

Часто можно услышать, как толстые хвосты назначают главной причиной возникновения улыбки волатильности. На недавно прошедшей НОК одним из наиболее интересных выступлений была презентация Виталия Курбаковского о причинах появления улыбки волатильности. Уважаемый мэтр строил улыбку на основе эмпирического распределения.
Проверим сами, как влияют толстые хвосты на форму улыбки. Построим модель движения фьючерса РТС на основе данных о ежедневной доходности close to close основной сессии. Возьмем ряд ежедневных приращений склеенного фьючерса с января 2010г. по февраль 2013г. Конечное значение цены близко к начальному, но, чтобы совсем исключить тренд, последнее значение цены фьючерса примем равным первому, а именно 157090 п. Период модели – 100 дней. Каждый день актив прыгает на величину, случайно выбранную из ряда прошлых значений. В конце траектории посчитаем стоимость опционов. Повторим опыт миллион раз. Усредним результаты каждого опыта и получим ожидаемую стоимость опционов в финальной точке. Она совпадает со справедливой стоимостью опционов в  начальной точке,  ведь ставка равна нулю. Результат моделирования в терминах волатильности представлен ниже
Толстые хвосты и эмпирические распределения


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

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