Пример классического индексного арбитража для торговли двух корзин бумаг относительно друг друга по корреляции и графику минимальных остатков от разницы между двумя инструментами с возможностью тестирования и запуска в реальную торговлю. С открытым исходным кодом. Бесплатно.
Концептуально, это может выглядеть так:
Торговая идея: торгуем спредом между двумя индексами, как будто это пара. Покупаем и продаём спред между ними.
Ссылка на ГитХаб: https://github.com/AlexWan/OsEngine/blob/master/project/OsEngine/Robots/IndexArbitrage/IndexArbitrageClassic.cs
Конструктор:
1. Regime. Режим работы:
2. Regime Close Position. Тип закрытия позиции:
3. Percent depo on one leg. Процент от доступных средств на одну сторону сделки. Например, по ноге один может быть 5ть бумаг, тогда 50 % распределятся по 10% на каждую. А с другой стороны может быть 3 бумаги, на них будет по 16%, исходя из 50% на одну ногу.
4. Asset in portfolio. Название денежной единицы в портфеле. Если Prime, то будет браться общая единица исчисления, доступна в тестере и некоторых типах подключений к Московской бирже. В остальных случаях нужно выбирать название валюты по тому, как она называется у Вас в портфеле.
5. Correlation candles look back. За какой период будем считать корреляцию между индексом и бумагой в торгах.
6. Cointegration candles look back. За какой период будем считать график минимальных остатков между бумагой и индексом с оптимальным мультипликатором.
7. Deviation mult. Отклонение для стандартного отклонения на графике минимальных остатков от разницы с оптимальным мультипликатором.
8. Correlation min value. Минимальное значение корреляции для того, чтобы можно было открывать по бумаге позицию.
В настройках эмулятора биржи у меня подключен Сет данных с бумагами Московской биржи:
Создаём робота, открываем его чарт и настраиваем источники:
В Индекс номер 1 добавлены бумаги нефтегазового сектора РФ:
Для индекса 1 настроена автоформула с расчётом один раз в день, со взвешиванием по цене:
В Индекс номер 2 добавлены бумаги финансового сектора РФ:
Для индекса 2 настроена автоформула с расчётом один раз в день, со взвешиванием по цене:
В скринере 1 добавлены бумаги из индекса 1. Здесь они будут торговаться:
В скринер 2 добавлены бумаги из индекса 2. Здесь они будут торговаться:
Удачных алгоритмов!
Оглавление здесь: https://smart-lab.ru/company/os_engine/blog/997533.php
Подписывайтесь. Комментарии открыты для друзей.