Изображение блога
OS_Engine_team
OS_Engine_team Блог компании Os_Engine
28 ноября 2023, 18:57

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

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

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

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

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

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

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

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

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

  1. Применять для последовательностей общие настройки;
  2. Быстро создавать сотни последовательностей инструментов для торговли через автосоздание последовательностей из пользовательских интерфейсов;
  3. Одним кодом обрабатывать сигналы из сотен последовательностей.

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

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

 

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

Ссылка на класс на ГитХаб:

https://github.com/AlexWan/OsEngine/blob/master/project/OsEngine/OsTrader/Panels/Tab/BotTabPolygon.cs

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

 

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

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

  1. Сервисный код и конструктор;
  2. Публичные свойства и настройки;
  3. Торговая логика;
  4. Входящие и исходящие события;
  5. Логирование.

 

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

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

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

  1. Уникальное имя последовательности. Оно должно обязательно быть уникальным, чтобы можно было сохранять настройки объекта в файловую систему;
  2. Тип программы, который создаёт экземпляр последовательности.

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

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

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

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

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

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

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

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

 

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

 

5. Logic. Регион.

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

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

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

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

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

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

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

6. Events. Регион.

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

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

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

Комментарии открыты для друзей, добавляйтесь!

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

OsEngine: https://github.com/AlexWan/OsEngine
Поддержка OsEngine: https://t.me/osengine_official_support

Регистрируйся в АЛОР и получай бонусы: https://www.alorbroker.ru/open
Сайт АЛОР БРОКЕР: https://www.alorbroker.ru
Раздел «Для клиентов»: https://www.alorbroker.ru/openinfo/for-clients
Программа лояльности от АЛОР БРОКЕР и OsEngine: https://smart-lab.ru/company/os_engine/blog/972745.php

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

0 Комментариев

Активные форумы
Что сейчас обсуждают

Старый дизайн
Старый
дизайн