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

по

Бэктестинг с Горшковым и Курбаковским в AllDerivatives Café



Квант и разработчик торговых систем Андрей Горшков поделился опытом обработки исторических биржевых данных при создании и тестировании торговых алгоритмов. Опционный трейдер и управляющий Виталий Курбаковский рассказал о подводных камнях бэктестирования данных опционной торговли.

Определение факторов прибыльности стратегии

    • 21 февраля 2016, 11:48
    • |
    • uralpro
  • Еще

Fig3  

Статья из блога www.jonathankinlay.com поможет лучше понять работу вашей торговой стратегии и повысить ее производительность в будущем.

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

Производительность стратегии

Давайте посмотрим, как это работает на практике. В нашем случае будем использовать следующую внутридневную стратегию на фьючерсах E-mini:

Fig1

Общая производительность стратегии довольна высока. Среднемесячная прибыль за период с апреля по октябрь 2015 года почти 8 000 долларов на контракт, за вычетом комиссии, со стандартным отклонением всего 5 500 долларов. Годовой коэффициент Шарпа около 5.0. На платформе с хорошим исполнением стратегия может масштабироваться до 10-15 контрактов, с годовой прибылью от 1 до 1.5 миллионов долларов.



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

Изучаю FIX протокол с нуля. Пытаюсь выставить заявки. Первые обсуждения.

Начало положено тут 
Продолжил тут
Затем тут

Обсуждения

     Сегодня будет без введения. Мои первые публикации вызвали небольшие обсуждения, как в комментариях, так и в личных беседах. Если классифицировать, то можно подвести некие итоги:
  • занимаюсь ерундой, до меня уже давно все создано. Прежде чем, что либо начать, конечно же я изучаю положение дел. Я прекрасно изучил, что уже есть конкретные разработки. Но я уже говорил, что я готовлюсь к хорошим вакансиям и хочу знать досконально протокол. Человек я щепетильный, мне важно знать каждую мелочь. Другого метода изучения я не придумал. 
  • мой код не оптимален. Хоть я и не услышал конкретные доводы, но все же склонен к такой мысли. Код только строится и конечно будет еще дорабатываться.
  • выбрал не ту платформу. Тут самое интересное. Были интересные беседы. Но надо заметить. Я не отвечаю на позывы типа: «си ерунда, бери  то-то». Я считаю это не профессиональным. Но все же интересные моменты были. Итог:
      — Для скоростного трейдинга желательно уходить на Linux. Основной довод — несовершенство windows многозадачности. Лишним доказательством будет являться набор постоянных вакансий на рынке, где требуются именно Linux программисты. Также вы должны заметить, какое внимание Linux оказывается на будущей конференции алготрейдеров (27 февраля).
    — Желательное использование Си и Java. Ничего пока не могу сказать. Но стоит заметить, как и в беседах было подчеркнуто, так и в вакансиях на рынке, западные компании требуют именно java программисты. 
  • в любом случае, направление движения изучения вырисовывается, за что, спасибо собеседникам
  • в личных беседах я увидел заинтересованности в изучении протокола. Думаю статьи и дальше будут полезны. Литературы доступной с разжевыванием мало. А интерес смотрю есть.
  • получил несколько предложений поработать вместе. Оказывается СЛ читают интересные люди. Это радует.


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

Варианты прямого доступа к Московской Бирже

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

На колокации в зоне  биржи доступны:

1.Валютный рынок и Рынок Акции/Облигации
   FAST — протокол мультикаст раздачи  рыночных данных.
   FIX  -  протокол для  постановки заявок.
   ASTS Bridge  он же  Teap  -  забудьте  о его существовании.
   Волшебные  буквы ASTS подразумевают подключение любым  из вариантов  -)))

2. Рынок  FORTS
   CGate — уникальная утилитка в  виде черного окошка.(Здесь следует добавить заклинание  Plaza II ).  Позволяет получать два  вида биржевых данных.  
   Без ордер лога — урезаный режим в  котором поступают данные по стаканам.
   Полный ордер лог  -  режим  в  котором  приходит лог всех заявок (поставленных снятых исполненных и  т.д.)

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

Value и цена обучению Дейтрейдингу Часть 4 (Бесплатное Обучение)

Часть 1
Часть 2
Часть 3

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

Прошло много времени. Модель, по которой Пропкомпании работали в прошлом  уже не существует. По крайней мере, она очень сильно изменилась. Так как же был устроен  первый Prop, где меня обучили торговле? На чем зарабатывает Пропкомпания?


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

Машинное обучение для улучшения вашей стратегии

    • 20 января 2016, 16:16
    • |
    • uralpro
  • Еще

ml-strategy-techniques-1

Предлагаю перевод интересной статьи с сайта www.inovancetech.com о нетрадиционном применение техник машинного обучения: Machine Learning Techniques to Improve Your Strategy.

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

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

Как улучшить управление позицией

Управление позицией — это очень важный аспект трейдинга, которому часто не уделяется должное внимание. Многие трейдеры смотрят на управление позиции с точки зрения уменьшения риска убытков, но не инструмента увеличения прибыльности стратегии. Конечно важно избегать большого риска, используя небольшую часть торгового счета ( не более 2%) в каждой сделке, но лучший способ — это применение фиксированного лота или фиксированного процента от вашей максимальной позиции для каждого трейда.



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

Я и программирование

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

1. был у нас предмет ТПП. Теория технология программирования. Вёл его замдекана Евдокимов Виктор Евгеньевич. Так вёл, как будто всё уже давно умеют программировать и иногда шутил. Но проблема была в том, что все кто сидел на лекции на первом курсе, действительно похоже умели программировать, а я один сидел и ни черта не мог понять.
Я и программирование 
Я даж тогда карикатуру нарисовал про лекции по ТПП:
Я и программирование

2. был у нас предмет компьютерная графика. Вёл Сальников Вячеслав Юрьевич. Там были жесткие лабы и это был единственный раз, когда я реально был вынужден чего-то программировать на C++. Сальников был норм препод, я ничерта не понимал, как всегда, но можно было растопить лёд кое-как.

3. был у нас предмет по микропроцессоррам. Лобан Валерий Иванович. Я едва успевал чото делать. Помню свой шок, когда для какой-то лабы он сказал невзначай — ну а тут вам надо налабать драйвер на ассемблере, чтобы подключить микропроц к компу. Тут я ваще в осадок выпал. Как я это в состоянии сделать? Меня этому никто не учил! Нет же никаких книг и инструкций на эту тему!!! Где узнать как это сделать? Купил даже какую-то толстую книгу по ассемблеру, прочел страниц 30, и забросил....


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

Влияние информации в книге заявок на метрики рынка. Часть 4

    • 12 января 2016, 14:45
    • |
    • uralpro
  • Еще

effLOB

Окончание.Начало здесь.

Проверка эффективности индикаторов на реальных данных

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

Мы использовали два отдельных набора данных для исследования предсказательной способности индикаторов:

  1. Сентябрь 19,2012. Падение фьючерсов WTI Crude Oil, когда цена снизилась более 4$ за четыре минуты ( большая часть падения была в интервале 30 сек этого периода), и достигла минимума в 12:55 дня.
  2. Обвал цен 6 мая 2010. Обвал произошел на фьючерсах E-mini S&P500, когда цена упала на 3% за четыре минуты. В 1:45 дня она достигла минимума, когда биржа CME остановила торги (планка), затем цена начала свое восстановление.


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

Открыл библиотеку для бектестинга

По мотивам: smart-lab.ru/blog/300948.php

Ссылка:
github.com/bytefury/trading_robot_2

Выкладываю скорее для себя. Вряд ли кто-то будет разбираться в ней и тем более пользоваться.

Пример стратегии: github.com/bytefury/trading_robot_2/blob/master/strategies/common/mo_watcher_strategy.hpp

Что она делает: отправляет заявку, если было три серии совершения сделок на 200 и более контрактов. Серия сделок должна произойти не более, чем за 5 секунд. И промежуток между сериями должен быть не более, чем 5 секунд. Инчае стратегия прерывается и всё начинается заново.

И никаких вам 200 перменных и 3000 кубов на tslab'е! :)

Это если в кратце. Там ещё много чего есть. Например, автоматическое перемещение заявки, если между ней и лучше сделкой того же направления накопилось больше 50 заявок. Есть и другое.

Возможно кому-то пригодятся классы на С++ для работы с файлами qsh-формата. Это портирования с C# версия классов Морошкина.

ЗЫ: ищу работу по разработке на С++. Если есть интересные предложения, то в профиле на гитхабе есть email.

Влияние информации в книге заявок на метрики рынка. Часть 3

    • 06 января 2016, 10:09
    • |
    • uralpro
  • Еще

effLOBscheme

Начало здесь.

Индикаторы стабильности книги лимитных ордеров

Традиционно стабильность, или эластичность рынка, представляется термином ликвидность, которая является возможностью трансформации одного вида актива в другой за короткий временной период без потерь. Легкость такой трансформации, в смысле требующегося времени и воздействия на цену, видится как мера здорового состояния рынка. К сожалению, ликвидность — это многомерное явление, делающее трудным сведение его к единому значению. Можно определить ликвидность в 4-х измерениях:

Время между сделками. Определяет возможность исполнить транзакцию немедленно по текущей цене. Время ожидания между сделками характеризует данную меру.

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



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

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