Избранное трейдера Сергеев Петр

по

Как быстро увеличить производительность алгоритма. Часть 2

NN2Main

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

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

Одним из наиболее мощных методов улучшения прибыльности вашей модели является объединение нескольких алгоритмов в так называемое «множество». Теория состоит в том, что комбинируя разные модели и их предсказания, мы получаем более робастные результаты. Тесты показывают, что даже объединение простых моделей может быть производительнее более сложной, но единственной стратегии.

Существует три основных техники объединения:

Смешивание:

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



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

Гайд по торговле на бирже часть2 Основа торговли

Первая часть лежит тут… smart-lab.ru/blog/155810.php… думал частично переписать, но решил просто добавить...

 

            1 Основа торговли

            Трейдинг — это прогнозирование будущих цен и торговля этого прогноза с целью извлечения прибыли.

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

            В конечном итоге, исходы прогноза всего 2 — тренд и контртренд. В случае тренда мы делаем вывод что параметр наблюдения достаточно изменился, чтоб движение продолжилось, а для контртенда на основаниии такого же изменения параметра мы сделаем вывод что движение прекратится и сменится на противоположное.

 



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

ES пара слов


Стремительное снижение цены сквозь все отмеченные ранее уровни поддержки создает ожидание возврата к нижней границы предыдущего диапазона и заставляет рассматривать краткосрочные покупки, несмотря на опасность развития падения в middle-term downtrend; в р-не 2071 можно пробовать открывать длинную позицию в размере 1/2 рабочего объема. Вторую половину следует добавлять или не добавлять, исходя из оценки ситуации в ходе регулярной сессии.

Daily/Weekly sentiment — neutral (!).
Upside target lvls 2080, 2089, 2100.
Downside target lvls 2066, 2060.

Buy lmt 1/2 2071.
Cl lmt 2080.


Kind regards.

P.S. Несколько вопросов получил я на тему того, не расстроен ли преждевременным выходом из короткой позиции на пути цены к давно обозначенным цифрам. Разумеется, нет. В момент непределенности следует следовать системе еще строже, нежели обычно. Думать об упущенной выгоде следует тогда, когда пропускаешь системные входы, но ни в коем случае — когда забираешь меньше денег с трейда, чем было возможно. Любое решение, адекватно принятое в моменте, должно оставаться таковым в вашем сознании, если вы приняли его, руководствуясь собственным сводом рабочих правил.

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

"Зональный трейдинг" Марка Дугласа на одной странице.

Правила и истины, которые я распечатал себе после прочтения книги «Зональный трейдинг» Марка Дугласа.
Теперь они висят у меня дома над монитором.
Это краткое содержание его книги, если хотите)

"Зональный трейдинг" Марка Дугласа на одной странице.

Модель скрытых состояний Маркова. Часть 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 (каждое приращение будем считать дневным):



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

Наконец-то появились нормальные визуализации потока ордеров

Так уж сложилось, что из всех видов торговли в трейдинге меня привлекает торговля по потоку ордеров.

Этой теме я посвятил довольно много времени и глубоко её исследовал. Писал свой терминал, собирал сырые данные, анализировал их, исследовал API различных датафидов и терминалов: Rithmic, CQG, Nanex, NYSE API's, NinjaTrader API, Sierrachart API, Takion API и др.

Но помимо сбора данных остро стоит проблема их корректной визуализации. Так вот с этим моментом все обстоит очень плохо. Когда человек говорит «Я читаю ленту» в голове представляется картина с сумасшедшим потоком бегущих цифр перед глазами, успеть рассмотреть и уж тем более как-то проанализировать которые практически невозможно. Большая часть из этого потока просто пролетает мимо. Безусловно с опытом наблюдения что-то начинает получаться, но это в лучшем случае 20-30% обработанной информации из всего потока. А если мы говорим о наблюдении за книгой ордеров (стакан, DOM, Depth of market), то здесь все еще хуже. Большая часть информации при наблюдении за стаканом просто не видна, т.к. частота его обновления в ядре биржи может достигать тысяч событий в секунду, а частота обновления стакана на экране вашего монитора в лучшем случае составит 1 раз в 50 миллисекунд (или 20 раз в секунду). Соответственно между двумя изменениями цифр в стакане на мониторе, могут произойти десятки изменений в реальности.



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

Новый протокол передачи данных CME MDP 3.0

    • 12 мая 2015, 23:37
    • |
    • nxt
  • Еще
По мотивам поста Светланы Орловской, я решил сравнить разницу между Time&Sales через CQG, которые перешли на новый протокол MDP 3.0, и старым протоколом FIX/FAST (провайдер данных - IQFeed).

Данные записывал в режиме реального времени через терминал NinjaTrader для CQG, и через IQFeed API напрямую.

В CQG тики действительно агрегированные.

Ниже представлен скриншот, на котором это хорошо видно:

Новый протокол передачи данных CME MDP 3.0 

Тоже самое озвучили в тех. поддержке IQFeed:

"As a high level summary, the change relates to how the exchange bundles trades within their messaging. Right now we are able to process each order for a trade independently. In the new protocol the exchange summarizes multiple orders under certain circumstances. For example, if you look at the current feed and see multiple trades at the same time and price (but different sizes), those will typically be bundled into a single trade going forward with MDP 3.0. So instead of multiple ticks such as 1@2084.75, 3@2084.75, 2@2084.75, 5@2084.75… you will see a single tick of 11@2084.75.

Since the middle of last year, our engineers have been trying to find ways to unbundle the data in the new protocol while still maintaining accuracy and reliability. Unfortunately we haven't found a good way to accomplish this with the data provided by the protocol. We continue to look at our data processing options in cooperation with the CME Exchange. In the mean time, we are happy to be able to continue providing our customers the accurate tick data they have come to expect.



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

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

hidden-markov-model-1024x412

В данном цикле статей начинаем рассматривать модель Маркова, которая находит применение в задачах классификации состояния рынка и используется во многих биржевых роботах. Статьи основаны на постах, опубликованных в блоге Gekko Quant. Также будет рассмотрены практические алгоритмы на финансовых рынках. Код в цикле приведен на языке R. Вначале будет много теории, ее надо хотя бы попробовать понять, затем разберем практические примеры.

Рабочая среда распознавания основных паттернов.

Рассмотрим набор признаков O, полученный из набора данных d и класс w, обозначающий наиболее подходящий класс для O:

\hat{w}=\arg\max_w P(w|O)



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

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

BatesFFT

Продолжение. Начало в моем блоге и на сайте.

В прошлой статье про модель Хестона мы отметили, что она обладет недостатком, который проявляется в неточности определения цен опционов на малых сроках экспирации. Здесь мы рассмотрим модель Бейтса, в которой этот недостаток устранен, и она является одной из лучших аппроксимаций, описывающих поведение цен опционов для разных страйков и периодов до экспирации.

Модель Бейтса относится к моделям стохастической волатильности и определятся следующими уравнениями:

\frac{dS_t}{dt}= r dt+\sqrt{V_t}dW_t^1+dZ_t



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

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

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

06eacc816672bc6021ef661b0ec0981a67773653

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

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



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

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