Пока смартлаб соревнуется в медицинских познаниях, я решил монетизировать старые навыки. Я почти 20 лет (сам офигел, как подумал!) занимаюсь программированием, от php до с++, от мелких сайтов до игровых движков и ИИ компьютерных противников. А тут нарисовалась свободная неделя как раз. С 2017-го хотел этим заняться, внеплановые каникулы наконец-то позволили.
В прошлое воскресенье прочитал мануалы по Lua/QLua (+1 ЯП в базу знаний) и спецификации по Квику, полистал форумы, глянул пару примеров, 10-12 часов работы… и простенький бот готов. Первое впечатление — это мало отличимо от программирования ИИ персонажей компьютерных игр :) Те же циклы, коллбэки, статусы, принятие решений, отслеживание их выполнения и т.п.
Т.к. я не верю в бэктесты и демо-счета, понедельник погонял в режиме виртуальных сделок, выпилил самые грубые ошибки, а со вторника выделил лимит на одном из реальных счетов. Бот пилил 4 дня с утра до вечера, я прямо на ходу отлавливал баги и вносил корректировки.
Был забавный момент, когда подвис инет, и бот выставил пару лишних сделок, т.к. не получил инфу о старых заявках и не смог их вовремя снять. Но что-то подобное я и ожидал, поэтому и начал сразу на реальном счету, чтобы знать, где затыкать реальные дыры с минимальным ущербом. А в остальном всё заработало с первого раза, можно сказать. Причём даже так, как надо. Что странно :D
Что ещё более странно — я даже денег заработал.
Зачем мне это?
1) Диверсификация, как ни странно, можно 5-10% денег выделить. У меня уже есть аналогичный счёт для краткосрочных спекуляций (трейды от пары дней до пары месяцев) и хеджа основного инвестсчёта, теперь будут ещё и роботы.
2) Этот же движок я адаптирую под ИИС, но не для спекуляции, а для ловли шпилек вниз на нужных мне тикерах. Вечером часто вижу, что нужные мне инструменты днём просаживали куда ниже той цены, что меня устраивает, а каждое утро ставить десятки лимиток как-то не айс, тем более лимитки блокируют деньги на счету, на всё сразу я вряд ли смогу их наставить.
3) Это прикольно, в конце концов! Я будто вернулся в ~2006-й, когда сидел ночами и отлаживал поведение виртуальных болванчиков.
Трейдер с сильными скиллами по программированию рано или поздно должен «сойтись» в алготрейдера). Странно, что ещё не).
Сомнительно, что я выделю какой-то внятный лимит под это дело, но даже если эти 5-10% будут показывать динамику не ниже инвестиций — я всё равно в плюсе чисто математически :)
Ведь можно было и через 30! ))
Ну, а неск дней реала — эт пока ни о чем.
1) Почти неограниченное внимание за неограниченным количеством инструментов.
2) Куда бОльшую частоту сделок, чего я никогда не буду делать руками, хотя и робот за неделю даже сотни не сделал :)
Это не совсем классический трейдинг, это скорее попытка делать то, что я делаю будучи инвестором, только в более мелком масштабе и в сотни раз чаще :)
Нет конечно :) Интрадей я не торгую вообще и никогда не собирался. Как-то не прельщает :) Для «рук» у меня, грубо, два счёта (точнее, два пула счетов) — примерно 95/5 долгосрок/краткосрок. Причём мой краткосрок — это до пары месяцев.
Ну а множественные коллбэки на одни и те же сделки — это как я понял фича :) Каждый реконнект срабатывает по коллбэку на каждую сделку (даже давно выполненную) на каждое открытое окно сделок. Изврат конечно, непонятно применение на практике, ну т.е. о чём разработчики думали в этом случае.
То что колбэки на транзакции, ордера и сделки приходят асинхронно — это технология биржи, а не кривые разрабы. Да, сделки могут приходить раньше отчета о транзакций и могут приходить повторно при переподписке. Это надо учитывать в коде.