За последние годы, из-за появления множества специализированных под автоматический трейдинг платформ и библиотек понятие «алготрейдер» растянулось на несколько разных областей знаний. Сегодня алготрейдер это и хардкор программист С++ и TSLab редактор и S# кодер.
Так все-таки, какие существуют способы создания торговых роботов? В чём профит и проблемы того или иного подхода.
Holy war inside...

С++ или C# + 10000 часов = злой HFT.
S#.API + 1000 часов = милый HFT или злой скальпер.
TSLab+ 50 часов = милый скальпер.
На сегодня популярны несколько способов создания торговых роботов. К сожалению, они не классифицированы и боясь, наткнутся на обвинения в том, что я science freak, всё же попробую разбить их на категории:

Категории алготрейдеров по способу создания МТС и краткий перечень их плюсов и минусов. Чем левее блок, тем более сложные алгоритмы можно создавать.
Visual School algo
— категория алготрейдеров которые пишут роботов в визуальных редакторах платформ для трейдинга.
Самый грубый и разрекламированный способ создания МТС.
Популярные редакторы:
- TSLab;
- WhelthLab;
- MetaTrader;
- S#.Studio;
- Multicharts;
- TradeStation;
- OECTrader.
До первого бэк теста необходимо уделить вопросу от 5 до 20 часов.
Идеально подходит трейдерам, которые не хотят быть программистами.
Высшая форма развития робота — набор роботов — скальперов (Что в некоторых ситуация вообще-то тоже не плохо).
Api School algo
— категория алготрейдеров которые используют встроенные в платформы для трейдинга языки программирования.
Популярные языки:
- QPILE — встроенный язык Quik.
- MQL — встроенный язык MetaTrader
- Easy Language — встроенныйязыкMulticharts, TradeStation, OEC Trader.
- C# — язык TsLab, WhelthLab и S#.Studio.
Данный способ создания МТС, несмотря на свою популярность, кажется лично мне попыткой прикрутить к трактору самолёт.
Как этим заболеть:
- Тратим 100 часов на визуальный редактор любой из платформ представленных выше.
- Понимаем, что это всё херня, что надо писать свои индикаторы и использовать нечто оригинальное.
- Учим один из встроенных языков (+ 200 — 500 часов).
- ...
- Профит.
Понимаю, что это вызовет срач однако высокую скорость исполнения
ни одной из перечисленных платформ не поставлю, хоть и большинство из них сам не юзал. А всё потому что все мои эксперименты с событийными и
MVC/
MVP архитектурами провалились. Полученные роботы работали медленнее Монолита без делегатов, событий и сложных взаимодействий объектов. Поэтому вероятность того, что роботы на базе даже того же
S#.
Studioбыстрее
C# оптимизированных (по скорости исполнения) роботов, ничтожно мала. А вот вероятность того, что они на несколько порядков медленнее, напротив, стремиться к единице.
В общем и целом не плохой выбор для начинающего алготрейдера. На первое время (а может и навсегда), функционала будет достаточно, кроме того, готовый каркас повысит безопасность программы.
Но здесь необходимо понимать, что драгоценное время будет упущено и потом, возможно, придётся долго и мучительно переучиваться писать самому.
Высшая форма развития робота — полуавтоматический
HFT. Т.е. платформа, в которую жестко забивается точка входа, точка выхода, и изредка переоптимизируясь всё это работает под чутким присмотром алготрейдера.
New School algo
— категория алготрейдеров которые создают МТС используя готовые библиотеки.
В России это
S#.API
S#.API это набор объектов и подпрограмм, которые
программист C# может использовать в своих МТС. Это не визуальный редактор и не готовая программа!
Разница с предыдущей категорией — скорость. За счёт того, что это библиотека, есть возможность не брать лишнего «в дорогу», из-за этого теоретически, должен быть качественный рывок по скорости исполнения. Хотя конечно надо это дело проверять...
Сами разработчики утверждают, что на обучение этой магии надо потратить около полу года. Если по 8 часов в день, то около 1500 часов, если по 5, то около 1000.
Как и в предыдущей категории, высшая форма развития робота — полуавтоматический
HFT.
Old School algo
— категория алготрейдеров которые сами создают свои библиотеки и платформы для торговли.
Плюсы такого способа создания роботов очевидны. Нет никакой привязки к архитектуре, отсюда возможность создавать самые быстрые МТС любой сложности.
Вся проблема заключается в том, что для того чтобы научится с нуля писать самых простейших роботов, надо потратить от 1500 до 2000 (двух тысяч) часов времени.
Ни в одном институте таких перцев не готовят.
На рынке труда также невероятно дорог, как и редок.
Высшая форма развития робота — ИИ
HFT. Т.е. платформа, которая в серии бэк-тестов, сама находит работающие на сегодняшний день паттерны, затем торгует их и управляет позицией.
Выбор способа создания МТС очень ответственный и сложный момент в жизни алготрейдера. От этого зависит вообще ВСЁ! И при этом есть ощущение, что у многих этот процесс происходит не осознанно. Про
OLDSCHOOL ALGO мало кто пишет, в то время как другие способы создания роботов преподносятся как «абсолют» и рекламируются на каждом шагу. Надо друзья это дело исправлять...
И ещё для тех, кто не решил по какому пути идти, уместно вспомнить одного моего преподавателя из института (цитата):
«Если хотите стать программистом, то начинайте учить С++, т.к. если начать с C# то переучиться не получиться, это как наркотик...».
Зимаев И.
О чем это он там намекает: Чем проще даётся создание законченной программы, тем сложнее морально потом переходить к каким-то более сложным способам создания того же самого, пусть даже это будет перспективнее и технологичнее. Поэтому надо сразу выбирать технологичный и сложный путь, ориентируясь на лучших в своём деле. Тогда всё обязательно получиться!
полуавтоматический HFT? как-то странно это
А по поводу того, что олд скул никто не пиарит, это вопрос времени. Начнут. Сейчас уже все подряд пиарят. Дошло до того, что маркетмейкерские страты в массы толкают. Это вообще не нормально.