PolygonToTrade. Последовательность для торговли. Регионы и их внутреннее устройство.

PolygonToTrade. Последовательность для торговли. Регионы и их внутреннее устройство.

В данной статье мы рассмотрим отдельную последовательность инструментов для торговли в валютном арбитраже. Рассматривать будем более подробнее, чем источник, ибо именно здесь у нас содержится торговая логика и возможно кому-то из Вас захочется её изменить.

 

1. Отношение BotTabPolygon и PolygonToTrade.

BotTabPolygon – источник данных, реализующий интерфейс IIBotTab.

PolygonToTrade – это другой, более низкоуровневый класс, который отвечает непосредственно за торговлю определённой последовательности из трёх инструментов.

У каждого BotTabPolygon может быть множество последовательностей внутри:

Данная архитектура позволяет:

1. Применять для последовательностей общие настройки.

2. Быстро создавать сотни последовательностей инструментов для торговли через авто-создание последовательностей из пользовательских интерфейсов.

3. Одним кодом обрабатывать сигналы из сотен последовательностей.

В этой статье рассмотрим код PolygonToTrade:

 

2. Расположение в OsEngine.

Ссылка на класс на ГитХаб: https://github.com/AlexWan/OsEngine

 

3. Регионы внутри класса.

 

1. Сервисный код и конструктор.

2. Публичные свойства и настройки.

3. Торговая логика.

4. Входящие и исходящие события.

5. Логирование.

 

4. Service. Constructor. Регион.

1. Конструктор. На вход принимает:

a. Уникальное имя последовательности. Оно должно обязательно быть уникальным, чтобы можно было сохранять настройки объекта в файловую систему.

b. Тип программы, который создаёт экземпляр последовательности.

2. Поле уникального имени последовательности.

3. Уникальный номер последовательности в рамках данного источника. Это необходимо для безболезненной сортировки последовательностей в BotTabPolygon.

4. Метод загрузки настроек объекта из файловой системы.

5. Метод сохранения настроек объекта в файловую систему.

6. Метод удаления объекта.

7. Свойство, включающее или выключающее подачу данных с рынка в данный объект. Это свойство вызывается, когда пользователь в облегчённом интерфейсе жмёт на галочку on/off в таблице робота.

8. Свойство, включающее или выключающее эмулятор внутри источников в последовательности. Это свойство вызывается, когда пользователь в облегчённом интерфейсе жмёт на галочку Emulator on/off в таблице роботов.

9. Свойство сохраняющее расположение панели управления в пользовательском интерфейсе. Открыто / закрыто.

 

5. Properties and settings. Регион.

Это всё можно вызвать из последовательности из робота.

1. HavePosltion. Свойство. Возвращает true в случае, если по какому-то внутреннему источнику есть позиции.

2. Источники для торговли.

3. Представление последовательности в аккуратном строковом выражении.

4. Мгновенный профит по последовательности в абсолютном выражении.

5. Мгновенный профит по последовательности в процентах.

6. Стороны сделки по инструментам в последовательностях.

7. Валюты по последовательности. От стартовой до последней.

8. Объёмы по последовательности. От стартового до последнего.

9. Профит для генерации сигнала на верх из объекта.

10. Тип сигнала при превышении профита по последовательности.

11. Разделитель для названия пар в последовательности. Используется, если на бирже есть разделитель.

12. Тип комиссии, вычитаемой во время расчёта прибыльности и объёмов по последовательности.

13. Размер комиссии, вычитаемой во время расчёта прибыльности и объёмов по последовательности.

14. Нужно ли вычитать из объёмов размер комиссии.

15. Тип задержки между выставляемыми ордерами.

16. Задержка между выставляемыми ордерами в MLS.

17. Тип цены ордера. Limit / Market.

18. Проскальзывание для лимитных ордеров.

19. Проверки на то, что последовательность правильная. И стартовая валюта совпадает с завершающей.

 

6. Logic. Регион. 

1. Вызов логики для торговли по последовательности.

2. Метод отсылки ордера по паре.

3. Метод для проверки завершения торгов по последовательности.

4. Статус позиций по парам, торгуемым в последовательности.

5. Обработка событий успешного открытия позиций по парам в последовательности.

6. Обработка событий ошибки на открытии позиции по парам в последовательности.

 

7.    Events. Регион.

1. Механизм расчёта профита по последовательности.

2. Исходящие события, когда меняется профит по последовательности.

Здесь можно задать вопросы и поделиться своими мыслями по поводу данной стратегии: https://t.me/o_s_a_chat

Os Engine поддержка терминала: https://t.me/osengine_official_support 

 

13:34
280

Комментарии

Нет комментариев. Ваш будет первым!