Вся работа организована через алгоритмы, которые идентифицируются комментариями (Поручение). Возможна работа одновременно с разными алгоритмами. Например, пользователь выставляет заявку с комментарием «1» — выставляется стоп-лосс и тейк-профит на расстоянии 0.5%. Выставляет заявку с комментарием «2» — выставляется стоп-лосс и тейк-профит на расстоянии 1%. Таких алгоритмов может быть бесконечно много. Достаточно один раз настроить и пользоваться готовыми условиями выхода из позиции.
Продолжаю улучшать Робот Сетка LUA.
Очередной задачей была добавление возможности выставления заявок в центр спреда.
Задача особенно актуальна в свете новых правил Московской Биржи, где мейкерские (лимитные) заявки освобождаются от биржевой комиссии.
Я всегда пользовался стратегией фронтраннинга, т.е. вставал впереди конкурента.
По просьбам трейдеров решил добавить возможность выставлять заявки в центр спреда.
На первый взгляд достаточно взять цены спроса и предложения из таблицы Текущие Торги в QUIK и посчитать «(bid+ask)/2», но не так всё просто.
Когда мы выставляем свою заявку, мы сами создаём новые цены спроса или предложения, т.е. конкурируем сами с собой. Спред будет сужаться до выполнения заявки по рынку.
Возможен вариант брать встречную котировку и вычитать (добавлять для продажи) из неё отступ в пунктах.
Н-р, для покупки формула будет выглядеть так: «ask-point*1». Цена спроса (bid) в формуле не участвует, поэтому наша заявка будет зависеть только от цены предложения.
Довольно часто у меня спрашивают, как создать свой индекс акций или портфель. Решил сделать инструкцию.
1. Создаём копию индекса Московской биржи из акций.
— Вес акций можно взять https://www.moex.com/ru/index/IMOEX/constituents/ или https://smart-lab.ru/q/index_stocks/IMOEX/. Рекомендую второе, т.к. МБ даёт только скриншот таблицы, а на SMART-LAB можно скопировать таблицу выделением в EXCEL. Хотелось бы выгрузку в *.csv, но и за это СПАСИБО.
Важно запомнить, вес бумаг постоянно меняется. Чем больше дорожает бумага относительно остальных, тем больше её вес. Также, возможно удаление биржей бумаг из индекса и добавление новых.
— Находим примерный минимальный объём на депозите для реализации. Для этого делим цену каждой акции на коэффициент веса и берём максимальное число.
Например, для акций «Транснф ап» получим:
122300 / (0.55 / 100) = 22 236 363 р.
Где:
122300 – цена акции Транснф ап;
0.55 / 100 – вес в % делим на 100, получаем коэффициент.
Продолжаю бесплатный период своего робота.
Наибольший интерес вызвали торговые системы арбитража.
Публикую долгожданное большинством видео QUIK. Робот Сетка. ТС «Арбитраж».
Хочу отметить, что представленный пример с разницей акций Сбербанк-Сбербанк-ап представлен для общего понимания.
Робот может реализовать не только парный арбитраж.
Возможно реализовать портфельный арбитраж, можно использовать любые торговые инструменты в QUIK, можно использовать фронтраннинг, котировать другие инструменты с хеджированием и многое другое.
Заявки на разработку роботов не рассматриваю, т.к. пишу для себя и торгую на бирже тоже для себя.
Описание торговой системы «Арбитраж».
Возьмём два инструмента: Сбербанк об. по 137.18 и Сбербанк пр. по 131.85. Известно, что некоторые инструменты коррелируют между собой, т.е. цены двигаются в одном направлении. Однако, есть небольшие отличия в движении этих активов. Можно торговать эту разницу.
Тема обсуждается здесь: https://forum.quik.ru/messages/forum10/message54555/topic6400/
Для решения достаточно скопировать файлы индикаторов из подпапок в корневую папку индикаторов [QUIK]\LuaIndicators.
После перезапуска QUIK все настройки индикаторов сохраняются.
Год уже заканчивается и пора подводить некоторые итоги. Начну свою ежегодную серию итогов со своего хобби – программирование в области финансовых рынков. Увлёкся этим делом в конце 2005-го года. Тогда начал осваивать MQL4 в MetaTrader 4, но, через пару лет, поняв кухню ДЦ, перешёл в QUIK на реальную биржу. Тогда же, начал монетизировать своё хобби. Моя история прошлых лет, если кому интересно.
В статье будет, возможно, много не интересного не посвящённым в программирование, поэтому можете смело прокрутить в «Выводы».
Итоги.
В начале года не было желания что-то программировать. Часто собирался с друзьями. Мой робот в январе ушёл в минус 2% по всему счёту. Робот был настроен только в продажу рынка на деривативах, хеджируя основной портфель акций. В общем-то, это моя основная идея последних двух лет. Звёздный час робота настал в конце февраля. Как раз, когда я уехал из города, робот исправно накапливал продажи на летящем вниз рынке. Тогда я в очередной раз убедился в необходимости автоматизации. На мартовской экспирации часть средств удалось удачно перекинуть в подешевевшие акции.