Приветствую!
Я думаю многие задумывались о том, что с Quik довольно сложно работать, если вам надо написать хорошего профессионального торгового бота.
Да, внутри Quik есть встроенный язык LUA, но он скриптовый — это тебе не тот же C# на котором ты как на лексусе с кондиционером едешь.
Напрямую подключиться к квику из вашего бота невозможно, рождаются кривые решения. Чем больше механизмов, тем все это работает косячнее. А когда начинаются всякие переподключения, особенности перехода ночной торговли, выходные, из всего этого глиномеса происходит полный ужас.
Мы постоянно делаем каких-то ботов. Недавно поступил запрос на создание «российского бота» с квиком. Мы решили свернуть с этой знакомой и неблагоприятной дороги и попробовать поработать с common trade api. Выбор пал сюда, потому что у клиента был счет с Финам и он уже активно работал с транзаком. К транзаку у клиента были одни теплые эмоции, хотя как по мне софт уже прилично устарел, но Финам дал ему новую жизнь…
Сразу скажу, Финам мне ничего за это не платил, а стоило бы :) Пишу, как есть. В целом, считаю, что это реально достойная альтернатива квику.
С Алор Апи я не работал. Пока писал статью, зашел посмотреть что там с алор апи, на сайте все прям описано крайне красиво. Надо проверять. На словах ты конь морской, а не деле непонятно.
Российский рынок алготорговли крайне слабый. И я видел, как развиваются эти технические продукты — им крайне сложно и тяжело, финансируются они крайне слабо, отсюда и слабые технические решения.
Алор, Финам — берите меня уже, я наведу порядок.
Плюсы Common Trade API:
— просто подключаешься к Rest API без каких либо терминалов и прочего говна и отправляешь заявки. Это круто и удобно. Почти как на бинанс.
— Работает промежуточные сервер, то есть коннектимся к промежуточному серверу, который вне основной биржи всегда готов принять заявку и выставить ее. Механизм похож чем то на Interactive Brokers.
— Есть дополнительные фишки, которые уже были вшиты в Транзак и перенесены на это АПИ. Так что для любителей Транзака, который стопроцентно морально устарел — это отличный переход. Переход на что-то свежее со старыми функциями. К примеру «задержки» при выставлении стопа.
— Можно получить последнюю цену инструмента, минуя всякие тики. Просто из позиции.
— Легко использовать.
— Есть чат с поддержкой вк. И там реально отвечают и можно найти ответы на свои вопросы.
Минусы:
— Лимиты довольно приличные и часто вылетает ошибка «что сервер загружен». Через запросы вы получаете всю информацию, а через сокеты только «биржевой стакан» и «мои заявки и сделки», поэтому приходиться часто дергать запросы, чтобы получить информацию. Из-за того что часто дергаете информацию, можете налететь очень быстро на лимиты. Особенно если у вас много кодов клиентов, вы налетите крайне быстро на эту ошибку. В целом это не трагично, работать с этим можно.
С одной стороны для новичка написать бота будет крайне просто, практически как к крипто бирже. Для более сложного бота придется помучиться с запросами и лимитами, сделать повторяющиеся запросы и так далее…
Мы работаем на C#, но есть примеры на питоне. Я думаю, что для тех, кто программирует на питоне — это супер простой вариант старта и написания бота. А на C# мы подготовили своего рода коннектор, который позволяет бота написать быстрее.
Мы публикуем бесплатный коннектор.
https://github.com/algofintrader/Common-Trade-API-C-
Мы в основном работали со стоп заявками и множественными счетами + стабильность. То есть проход бота от дня ко дню, переподключение, работа в ночное время.
— Автоматически проверяет часы работы, переподключение.
— Получение портфелей, стопов по таймеру.
— Отправка обычных заявок, отправка стопов
— Попытка отправить стоп 9 раз. В случае лимитов и прочих нюансов.
Конкретно в этом коннекторе отсутствует
— подписка на заявки сделки, на биржевой стакан (нужна более плотная адаптация) Чуть позже мы все это добавим.
— Пока, что это пробный вариант. Мы проверяем насколько нужно людям вообще публикация таких коннекторов
В запасе еще есть
— Коннектор к Interactive Brokers адаптированный (не знаю насколько это актуально для РФ сейчас)
— Коннектор к DyDx — поддерживает работу через прокси внутри коннекторов. Изначально делался для американцев (у них запрещена торговля)
— Plaza 2. (ну это классика)
Пишите в комментариях, может быть нужны другие коннекторы.
Алор апи по скорости на уровне или чуть хуже, но глюков больше.
Трейд АПИ финам на сейчас обрабатывает не все инструменты, транслирует не все необходимые поля и только для единых счетов, моносчета не подключить. Трейд АПИ работает через медленные сервера транзака, по скорости трансляции данных заметно хуже (50-100мс), чем быстрые сервера транзака.
Алгопак через сокеты на сейчас работает на уровне медленных серверов транзак коннектор и только на акции. Разработчики алгопака планирует повысить скорость и добавить на вебсокеты срочный рынок. Похоже — для небыстрой (может быть и для быстрой) маркет даты Алгопак отлично подойдет осенью-зимой и будет лучше, чем Трейд АПИ.