StrategyParameterString представляет собой обертку для перечислений и строковых значений. Будем разбираться с тем, где данный параметр находится в OsEngine и как его использовать.
Расположение в репозитории ГитХаб: https://github.com/AlexWan/OsEngine/blob/master/project/OsEngine/Entity/StrategyParameter.cs
Расположение в проекте, если отрыть его на ПК:
Сам класс выглядит следующим образом:
Включает следующие члены:
StrategyParameterString – общедоступный конструктор с параметрами. Инициализирует начальное состояние объекта. При этом внутрь передаётся коллекция строк, из которой пользователь потом может выбирать. Принимает следующие данные:
StrategyParameterString – общедоступный конструктор с параметрами. Инициализирует начальное состояние объекта. При использовании данного конструктора в параметр можно будет вписать любое значение. Принимает следующие данные:
StrategyParameterString – закрытый конструктор без параметров.
GetStringToSave — общедоступный метод. Возвращает строку с настройками объекта параметра для сохранения.
LoadParamFromString — общедоступный метод. Принимает массив строк с настройками для параметра и инициализирует состояние объекта.
Name – публичное свойство типа string. Возвращает отображаемое имя параметра, оно должно быть уникальным в рамках робота.
TabName – публичное свойство типа string. Предоставляет доступ к имени вкладки, на которой будет отображаться параметр в окне параметров.
Type – публичное свойство типа StrategyParameterType. Возвращает значение StrategyParameterType.String.
ValueString– публичное свойство типа string. Задает или возвращает текущее основное значение параметра. Именно к этому значению нужно обращаться из кода робота. Тут хранится значение, которое пользователь выбрал в интерфейсе.
ValuesString – публичное свойство типа List<string>. Возвращает список значений, доступных для ValueString.
ValueChange — общедоступное событие. Сигнализирует об изменении значения ValueString.
Можете посмотреть в технических примерах внутри проекта OsEngine. Например, в CustomParamsUseBotSample:
Здесь переменная Regime используется для определения торгового режима у робота. Создаётся в конструкторе:
Используется в качестве дополнительной точки выхода из торговой логики, если пользователь выбрал Off:
В окне параметров робота данный параметр виден во всплывающем меню:
В оптимизаторе это выглядит так:
Удачных алгоритмов!
Комментарии открыты для друзей!
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