Минимум что надо знать о Алготрейдинге (HFT торговля)


Прежде чем начать разговор об алготрейдинге, необходимо дать ему определение.
Итак, что такое алготрейдинг? Существует разное определение данному понятию, неизменным остается только его суть и принципы, на основе которых строится работа. Алготрейдинг – трейдинг, который проходит посредством полностью автоматизированного алгоритма, который прописывает трейдер, исполнение которого потенциально приносит трейдеру прибыль. Фактически это программа, которая несет в себе последовательность исполнения действий. 

trading_robot.jpg

Сам трейдер составляет и определяет последовательность подачи заявок на покупку или продажу, указывая порядок управления своими средствами.
Условия управления капиталом, установленные трейдером как параметры программы, определяют необходимый или оптимальный размер вложений, например, купленных ценных бумаг. Так же эта система управляет допустимой потери или риска, при котором размер убытка будет приемлемым. При этом управление риском производится путем установки алгоритма стоп-лосс.
Отсутствие у алгоритмической программы чувств и эмоций позволяет избежать нервных срывов или иных эмоциональных всплесков. Это безусловно идет в плюс, та как работа трейдера зачастую происходит на грани нервного напряжения, и порой у человека могут сдать нервы, что повлечет за собой необдуманный шаг и как следствие потери. В то же время, трейдер имеет возможность вмешиваться в работу торговой стратегии, внося необходимые корректировки. 
Задача алготрейдинга – это точное исполнение указаний своей системы. Часто в некоторых источниках можно увидеть название механические торговые системы (МТС), однако алготрейдинг наиболее распространенное название. По сути, алгоритм «механически» исполняется программой, исключая суждения о рыночной ситуации и состоянии различных инструментов. Нужно сказать, что «механическая» система не всегда автоматизирована. Последняя в отличие от первой, самостоятельно совершает сделки, при этом участие человека не требуется или сведено к минимуму.

trade_systems.jpg

Эксперты отмечают, что алготрейдинг состоит из двух этапов. Давайте подробнее рассмотрим их.
На уровне первого этапа, трейдер создает свою «механическую» стратегию. После создания, проходит процесс тестирования на маркет данных, и впоследствии, при достижении стратегией необходимого уровня потенциальной прибыли, тестирование переходит в режим реального времени или реальных торгов. Отметим, что последний этап проходит при использовании минимального капитала, так как является тестированием, а некоторые трейдеры предпочитают ему «торговлю на бумаге». При этом доходность, это не единственный критерий который дает оценку работоспособности стратегии.
Давайте поговорим о средствах создания и последующего тестирования созданных стратегий. К таким средствам могут относится специальные программы, предназначенные для технического анализа созданных алгоритмических систем. Наиболее известными являются: осуществляется с использованием специализированных программ: MetaStock, S#.Designer, Wealth-Lab, ТSLab и другие.
Программа стратегии пишется на различных языках программирования таких как: C#, C++, LUA и другие. Записанный алгоритм дает возможность использовать скаченные маркет данные для тестирования стратегии, а в дальнейшем позволяет выставлять заявки в программах используемых для торговли. Стоит отметить, что стратегии могут быть созданы как в программах конструкторах например: S#.Designer, ТSLab, в которых стратегия создается на базе кубиков, а программа представляет собой схему, так и в программах где используется непосредственное программирование MetaStock, Wealth-Lab , в том числе с использованием готовых библиотек, например S#.API.
Второй этап разработки начинается после того как стратегия трейдера полностью прошла тестирование и готова к реальной торговле. На втором этапе реализуется подход к работе стратегии либо создается торговый робот, который будет торговать по установленному алгоритму, либо трейдер выбирает ручное выставление заявок по сигналу получаемому от созданной стратегии.
Трейдер подключает экспортирование биржевых маркет данных, полученных в режиме реального времени к программе в которой создана его торговая стратегия. Стратегия обрабатывает полученные данные и исходя из результата, подает сигнал на подачу заявок.
Еще раз напомним, что действия по сигналу стратегии могут быть сделаны вручную трейдером, например как в системе QUIK, а так же могут быть делегированы торговому роботу, который выставляет заявки автоматически согласно алгоритму, например в таких системах как S#.Designer, MT4, TSlab.

Trade_Strategy.jpg

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






10 комментариев

avatar
Пара замечаний из личного опыта:

В заголовке — Алготрейдинг — это не всегда HFT, все-таки HFT — частный случай. К примеру, один и тот же алгоритм, торгуемый на 1-мин таймфрейме и часовых/дневных таймфреймах - можно ли считать торговлю  на 1-мин графике  HFT? А на 5-мин? Есть вопросы...

"… действия по сигналу стратегии могут быть сделаны вручную трейдером, например как в системе QUIK, а так же могут быть делегированы торговому роботу, который выставляет заявки автоматически согласно алгоритму, например в таких системах как S#.Designer, MT4, TSlab." 
Действия по системе могут быть автоматизированы и в системе Квик, а то у тех кто не в теме может сложиться впечатление, что это не так.

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

Как-то так

В целом ирнформация полезна, спасибо, от меня +
avatar
Вадим, благодарю за конструктивный комментарий

avatar
Да не за что. Что-то тут совсем грустно стало. Нового и тем более интересного контента совсем мало. А про комментарии вообще молчу. Никто даже крякнуть не удосужится. Как по мне — странно это.  Если человек пишет — это ведь не для себя (хотя такие наверное тоже есть), а для всех. Тебе дают информацию, чтобы тебе стало лучше и понятнее. Есть те, кто не в теме или те, кто не понимает о чем речь, а остальные могли бы подискутировать.
Трейдинг — занятие сугубо индивидуальное. Так общение здесь могло бы компенсировать вынужденное одиночество этого занятия… Не могу этого понять, никак не могу…
По статистике сливают 95-88%. Уйти в себя или думать что ты сам все знаешь — не совсем правильная стратегия, как мне кажется.
avatar
Ну я стараюсь опубликовывать свое мнение, сам торгую немного, создаю стратегии. Конечно интересно если не просто читают, но и коментят. Многое можно узнать прочитав мнение людей. Потому благодарен Вам за коменты)))). В ближайшее время хочу опубликовать статью по арбитражу, надеюсь на конструктивную критику. И еще раз спасибо.
avatar
Может порекомендуете ресурсы где можно почитать и по опубликовывать свои статьи, контента много, но основные хабр и смарт слишком доморощенны.
avatar
Где почитать не рекомендую, не сильно этим сам интересуюсь. У меня есть несколько подписок на трейдеров, которые сами реально зарабатывают. Слушать остальных не вижу смысла, да и времени нет на это.
Есть две стратегии — ориентир на процесс или ориентир на результат. По мне так просто публикации (пусть даже и полезные) без системы и ориентира на конечный результат — это ближе к первому. Может я и не прав конечно, но это мое мнение.
Вот ты пишешь, что создаешь стратегии. Зачем? До сих пор не создал ту, которая тебя не устраивает в результативности/простоте/ еще чем-то? А если создал, то зачем искать что-то еще? Лучшее-враг хорошего. Если у тебя есть стратегия, устраивающая тебя по доходности, то что тебе еще нужно? Работай по ней (результат для себя), научи других (результат для других). Когда-то ты станешь седым и старым. Подумай о том, что ты увидишь в этот момент, оглядываясь назад
avatar
И если считаешь, что массовое использование твоей стратегии убьет ее (если это так, то может она не настолько хороша), то ты мог бы другим не давать готовые стратегии (раздавать рыбу), а научить принципам и способам их создания (раздавать удочки). Мне кажется, есть очень высокий спрос на это.

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

Привет коллеги.


С удовольствием прочитал как статью, так и комменты.


Ближе к делу: Пилю бота на Java в меру своих компетенций в кодинге.


Промежуточный результат: youtu.be/xUVnS6lTYGQ
В настоящий момент ищу логическое решение обработки убыточных позиций.
Буду рад познакомиться, обсудить вопросы по теме алготрейдинга, открыт к обмену опытом.

Добавить комментарий