rss

Профиль компании

Финансовые компании

Блог компании Os_Engine | AServer #2. Параметры и окно настроек. Коннекторы к OsEngine #54

Продолжаем разговор про AServer. Класс реализующий в себе часть (до 80%) логики любого коннектора. Сегодня поговорим про параметры подробнее. 

AServer #2. Параметры и окно настроек. Коннекторы к OsEngine #54

1. AServer в проекте.

AServer #2. Параметры и окно настроек. Коннекторы к OsEngine #54

2. Идём в регион параметров:

AServer #2. Параметры и окно настроек. Коннекторы к OsEngine #54


3. Регион Parameters.

Регион, в котором расположены параметры сервера. Как стандартные, так и кастомные.

AServer #2. Параметры и окно настроек. Коннекторы к OsEngine #54

  1. Активирован ли Aserver до конца. Когда становится true, параметры могут начать сохраняться. До этого только грузятся.
  2. Стандартные настройки сервера.
  3. NeedToHideParams. Если true, стандартные параметры сервера не будут отображаться в окне сервера. Используется в серверах данных.
  4. Массив, в котором хранятся все параметры сервера.
  5. Методы для создания новых параметров.
  6. Методы сохранения / загрузки настроек параметров из файловой системы.
  7. Обработчики событий обновления параметров.

 

4. Типы параметров для AServer.

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

В проекте:

AServer #2. Параметры и окно настроек. Коннекторы к OsEngine #54

В начале класса Вы увидите перечисление с типами этих параметров:

AServer #2. Параметры и окно настроек. Коннекторы к OsEngine #54

4.1. Параметр типа String.

Строковый параметр.

AServer #2. Параметры и окно настроек. Коннекторы к OsEngine #54

Value – значение, которое ввёл в параметр пользователь.

 

4.2. Параметр типа Bool.

AServer #2. Параметры и окно настроек. Коннекторы к OsEngine #54

Value – значение, которое ввёл в параметр пользователь.

 

4.3. Параметр типа Int.

AServer #2. Параметры и окно настроек. Коннекторы к OsEngine #54

Value – значение, которое ввёл в параметр пользователь.

 

4.4. Параметр типа Decimal.

AServer #2. Параметры и окно настроек. Коннекторы к OsEngine #54

Value – значение, которое ввёл в параметр пользователь.

 

4.5. Параметр типа Path.

AServer #2. Параметры и окно настроек. Коннекторы к OsEngine #54

Value – значение, которое ввёл в параметр пользователь.

ShowPathDialog вызывается из окна параметров пользователем, открывает меню выбора файла для пользователя. Если он что-то выбрал, сохраняется в Value.

 

4.6. Параметр типа Enum.

AServer #2. Параметры и окно настроек. Коннекторы к OsEngine #54

Value – значение, которое выбрано из предложенных вариантов пользователю.

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

 

4.7. Параметр типа Button.

AServer #2. Параметры и окно настроек. Коннекторы к OsEngine #54

Событие UserClickButton – на это событие предполагается подписаться сразу после создания такого параметра в реализации сервера для того, чтобы самостоятельно сделать в обработчике какую-то логику.

Реализацию параметра Button можно посмотреть в InteractiveBrokersServer:

AServer #2. Параметры и окно настроек. Коннекторы к OsEngine #54

Мы видим здесь:

  1. Создание параметра типа Button.
  2. Подписку на событие UserClickButton и обращение из обработчика к ServerRealization.

 

5. Стандартные настройки AServer.

В самом верху класса Aserver в регионе “Instead of a constructor” есть активация коннектора. Происходит это в момент, когда в свойство ServerRealization мы подгружаем объект реализации сервера.

Set`ер довольно длинный, про него будет отдельный пост. Пока нам интересно создание стандартных параметров, управляющих стандартными штуками, которые есть в Aserver:

AServer #2. Параметры и окно настроек. Коннекторы к OsEngine #54

  1. Будем ли мы сохранять ленту сделок в файловую систему или нет.
  2. За сколько дней мы будем сохранять ленту сделок в файловую систему, если будем.
  3. Будем ли мы сохранять историю свечей в файловую систему или нет.
  4. Сколько свечей мы будем сохранять в файловую систему, если будем.
  5. Нужно ли подгружать в трейды данные по текущему лучшему Bid и Ask.
  6. Нужно ли удалять трейды из памяти.
  7. Нужно ли удалять свечи из памяти.
  8. Использовать полный стакан котировок или только лучший Bid и Ask.
  9. Пропускать на верх только трейды с изменившейся ценой.

Прорисовываются стандартные параметры сервера в интерфейсе всегда ниже, чем кастомные. Вот они в АЛОР:

AServer #2. Параметры и окно настроек. Коннекторы к OsEngine #54

6. Пример создания кастомного параметра в коннекторе ALOR.

Идём в Server АЛОР и смотрим на конструктор:

AServer #2. Параметры и окно настроек. Коннекторы к OsEngine #54

В визуальном интерфейсе это выглядит так:

AServer #2. Параметры и окно настроек. Коннекторы к OsEngine #54

7. Окно параметров севера.

Вызывается и контролируется в регионе AServer под названием GUI.

AServer #2. Параметры и окно настроек. Коннекторы к OsEngine #54

Удачных алгоритмов!




Пост из серии «Коннекторы к OsEngine»

Серия о том, как стать настоящим программистом и изменить свою профессию.

Оглавление и смыслы здесь: https://smart-lab.ru/company/os_engine/blog/959953.php

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

OsEngine: https://github.com/AlexWan/OsEngine
FAQ: https://o-s-a.net/os-engine-faq
Поддержка 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

AServer #2. Параметры и окно настроек. Коннекторы к OsEngine #54


теги блога Алексей Ван <o-s-a.net>

....все тэги



UPDONW
Новый дизайн