Блог им. uralpro

Разница между HFT на фьючерсах и акциях

    • 04 сентября 2016, 12:06
    • |
    • uralpro
  • Еще

Разница между HFT на фьючерсах и акциях

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

 Один талантливый молодой разработчик пришел ко мне с интересной кривой прибыльности высокочастотной стратегии, которую он создал на фьючерсах E-mini (рисунок в заглавии).

Очевидно, что он использовал технику мани менеджмента, так любимую многими разработчиками алгоритмов на фьючерсах. Я предложил ему посмотреть, как будет чувствовать его стратегия при торговле тысячным лотом E-mini, при падении рынка на 20 пунктов. Внутридневная просадка в 100 000$ может сделать такой алгоритм гораздо менее привлекательным. С другой стороны, если вы уже заработали миллионы долларов на стратегии, то можете не особо беспокоиться по этому поводу.

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

Затем я спросил его, как стратегия входит в позицию — пассивно, посылая лимитные ордера на покупку или продажу, или агрессивно, пересекая спред для продажи на биде и покупая на аске. У меня было предположение, что он скажет, учитывая объемы сделок в стратегии, и он его подтвердил, ответив, что алгоритм использует пассивные входы и выходы. Оставляя пока возможность исполнения 1000 контрактов при таком виде входа, я попросил показать кривую прибыльности для одного контракта в этой стратегии, без применения мани менеджмента. Она все еще выглядела впечатляющей:

Разница между HFT на фьючерсах и акциях

Критические замечания по поводу пассивных стратегий

Есть определенные допущения, видимые в выше показанных результатах, одно из которых — вероятность исполнения ордера. Обычно в розничных программных платформах, таких, как например Tradestation, сделано допущение при тестировании, что ваши ордера будут исполнены, если сделки в данных происходят по цене вашего лимитного ордера. Предположение о 100% исполнении ордера в высшей степени нереалистично.Ваши ордера учавствуют в соревновании за приоритет в очереди заявок с ордерами многих тысяч других трейдеров, включая HFT компании, которые стараются опередить вас в каждый момент времени. Вследствие, реальная вероятность исполнения намного ниже — от 10% до 20%.И это в случае удачи. А многие случаи исполнения будут «токсичны» — ордера на покупку исполнятся как раз перед движением рынка вниз, а ордера на продажу — перед движением вверх. В результате, реальная производительность стратегии будет далека от красивых графиков гипотетических кривых прибыльности.

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

Разница между HFT на фьючерсах и акциях

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

Разница между HFT на фьючерсах и акциях

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

Пример высокочастотной стратегии на акциях

 Далее сравним стратегию на фьючерсах с примером подобной высокочастотной стратегии на акциях. При оптимистичной вероятности исполнения кривая эквити выглядит так:

Разница между HFT на фьючерсах и акциях

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

Разница между HFT на фьючерсах и акциях

Микроструктура рынка

 Здесь есть фундаментальная причина в разности поведения двух стратегий при различных вариантах исполнения, которые соответствуют очень разным микроструктурам рынков фючерсов и акций. В случае стратегии на E-mini средняя сделка может быть, скажем на 50$, что эквивалентно только 4 тикам ( каждый тик стоит 12,5$). Таким образом коэффициент отношения средней сделки к шагу цены = 4:1. В стратегии на акциях при похожей средней цене сделки размер шага цены может быть и около 1 цента. Для фьючерсной стратегии, пересечение спреда для входа и выхода более чем в очень ограниченном количестве случаев ( или пропуске входов в случае лимитных ордеров) быстро уничтожит всю прибыльность системы. Высокочастотная стратегия на акциях, с другой стороны, будет работать устойчивей, из-за малого размера шага цены.

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

Другие стратегии и алгоритмы автоматической торговли смотрите на моем сайте www.quantalgos.ru

★12
27 комментариев

Всё ещё переживашь, будешь ли интересен на конфе?))

Скажу так… буду ждать и с удовольствием посмотрю видос, если Тимофей выложит! К слову мне может не так интересны/близки темы, как интересна методология мышления.

avatar
waldhaber, особо не переживаю, тема полезная для всех алготрейдеров, в этом мы сами убедились за последние полтора месяца, когда был достаточно дерганый рынок. Беспокойство было только по поводу малой истории реального применения, она и сейчас небольшая, но определенные выводы уже сделать можно
avatar
uralpro, Что вы используете в качестве бэктестера для HFT?
avatar
Алексей С, сами бэктестер написали на С++
avatar
 Если не секрет, какой критерий исполнения заявки?
avatar
Алексей С, да все учитываем, и сделки и пересечение цены, и очередь
avatar
Всё гораздо хуже!
реальная вероятность исполнения намного ниже — от 10% до 20%.И это в случае удачи.
Ещё ниже! Уж поверьте практику с CME.
А многие случаи исполнения будут «токсичны» — ордера на покупку исполнятся как раз перед движением рынка вниз, а ордера на продажу — перед движением вверх.
Реально почти все случаи исполнения такими и будут.

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

А дело вот в чём. От ордера «случайного участника» в стакане ES на CME маркет-мейкер убегает и придерживает цену над ордером (проверьте сами — это элементарно). Придерживается при этом даже базовый расчётный индекс S&P500 во время амерской сессии, а во время европейской — придерживается вся связка DAX-ES и цепочка! Придерживается ещё как!
И вот что будет:
1) исполнение на сильном прорыве сразу в убыток;
2) никакого исполнения не будет.

Ценами на фьючерсах кукл манипулирует только так.
Не, ну кто Вам даст ловить все зигзаги цены? =)
Мало того, если исполнять по рынку, то рынок зажимают и увозят в убыток надолго. Пытаются высадить.
Иначе это была бы бесплатная раздача денег всем желающим со стороны.

Вот такая реальность CME
И ещё ключевой момент: очередь там нарушается. Нереально занять очередь первым. А на тех инструментах, где учитывается кроме времени ещё и объём заявки при сортировке последовательности исполнения — так там вообще сплошной развод!
Их даже штрафуют за это… раз в год на 3 копейки =)
Fry (Антон), хороший коммент. Главное не в скорости роботов
и классности их алгоритмов, фишка в «маркет-мэйкерах» и их
технологиях по дойке «стада».
; рь
avatar
Petrov, не знаю, если бы не было больших участников, маркетмейкеров в том числе, нам бы было зарабатывать гораздо труднее :))
avatar
uralpro, я, собственно, не против маркет-мэйкеров (не будь их, не было бы и рынка; р)), но надо с абсолютной чёткостью понимать, что «технические причмоки» ничто по сравнению инсайдом умноженным на торговые ресурсы многократно превышающие средние показатели  крупных физиков.
; р))
На мой взгляд, успешные частные трейдеры — это трейдеры прилипалы. А уж как они прилипли к брюху «большой белой акулы» не суть важно. С помощью «умного робота» или собственных дрожащих ручек. Главное результат.

ПС. Про высокоскоростные молотилки рассуждать не буду.
Мой небольшой отрицательный опыт знакомства с ними не объективен. А так, скажу, очень затратно содержать и огромные комиссионные в пользу «продавцов лопат».

ПСС. И кстати, последних я тоже люблю.
Они честно делают своё дело и никто не заставляет
трейдера насильно покупать у них их услуги.
: о))
avatar
В случае стратегии на E-mini средняя сделка может быть, скажем на 50$, что эквивалентно только 4 тикам ( каждый тик стоит 12,5$). Таким образом коэффициент отношения средней сделки к шагу цены = 4:1. В стратегии на акциях при похожей средней цене сделки размер шага цены может быть и около 1 цента.
Автор, наверно, хочет сказать, что цена сделки $50 — это на 100 акций, а тик в 1 цент — на одну? Косо звучит. Даже если брать 50 центов — это очень много для ХФТ.
Для ХФТ спред + 2 тика — это очень хорошая сделка, имхо. По ES это будет $37.5. По ликвидной акции это будет 3 цента. Ну, учитывая, что волатильность акции в 4-5 раз выше, пусть будет 10 центов. На графике страты на акциях оно и заметно — добавили -1 цент (тик) в страту и тут же эквити просела в 1.5 (ПОЛТОРА раза), т.е. доходность на одну сделку (НЕ круг «купил-продал») была ровно 3 цента, стала 2 цента.
По страте ES на одном контракте видно, что после нормировки она просела на 6000*2*12.5 = 150к. Почему для каждого трейда посчитано целых два тика в минус — непонятно, один трейд — это же не полный круг.
А тестировать ХФТ стратегию на голых тиках, без вообще ничего, без очереди, без реальных объёмов — это сильно.
avatar
Кто знает, что такое TradeStation тот посмеялся. Невероятно дырный тестер
avatar
Что касается HFT, считаю что бектестить можно ключевые гипотезы, но никак не конечные алгоритмы.
avatar
Cristopher Robin,  что вы имеете в виду? И почему нельзя сделать бэктест HFT алгоритма?
avatar
uralpro, потому что эффективный HFT-алгоритм обязан сам сильно валиять на рынок.
avatar
Cristopher Robin, в этом есть доля правды, но только доля. HFT алгоритмы вполне можно тестировать на исторических данных, при условии, что они «полные»
avatar
uralpro, мое мнение, данные полными не могут быть в принципе. В таком масштабе времени на результат основное влияние начинают оказывать случайные факторы, которые в разной степени возникают почти на всех участках инфраструктуры. Причем, чем совершеннее инфраструктура, тем больше это становится проблемой. Не говоря уже об упомянутых нелинейных эффектах. Зато данные истории могут быть достаточными для проверки отдельных гипотез, на основании которых потом можно развить рабочий алгоритм, почему нет.
avatar
Я вообще не представляю торговлю HFT-роботом лимитными ордерами. Ведь сразу упадет частота сделок. Да, вы быстро встанете в хвост очереди и потом будете долго стоять. А если ваша очередь быстро подойдет, то ещё хуже. Значит вы встали против моментума и получите убытки.
avatar
buy_sell, все правильно говорите, но если алгоритм это не просто занятие очереди, а чуть посложнее, то лимитные ордера это почти единственный выбор
avatar
uralpro, как вы учитываете то, что алгоритм запущенный на рынке изменяет поведение рынка? Или совсем не учитываете?
avatar
buy_sell, в тех алгоритмах, что сейчас работают, не учитываем. Они и не влияют на рынок, до определенного объема, значение которого довольно высокое
avatar
uralpro, вы говорите о себе во множественном числе. О какой команде идет речь, если не секрет?
avatar
Cristopher Robin,  мы с моим давним партнером (еще по ЛЧИ-2010) и еще один человек с хорошим знанием рынка, который и был инициатором создания команды
avatar
uralpro, это ошибка. Слабые возмущения не влияют на систему, когда она находится в устойчивом состоянии, но если система приблизилась к зоне неустойчивости, то взмах крыла бабочки может вызвать тайфун. Значит ваш алгоритм должен уметь определять состояние рынка и немедленно выходить из рынка при возрастании неустойчивости.
avatar
buy_sell, нет, не ошибка. Все подкреплено статистическими расчетами, бэктестами и давней историей боевых торгов
avatar

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

Например, ниже наши примеры исполнения заявок в режимах «касания» и «пробития» цены.
Limit Orders Execution Mode

avatar

теги блога uralpro

....все тэги



UPDONW
Новый дизайн