StrategyParameterString представляет собой обертку для перечислений и строковых значений. Будем разбираться с тем, где данный параметр находится в OsEngine и как его использовать.
Расположение в репозитории ГитХаб.
Расположение в проекте, если отрыть его на ПК:
Сам класс выглядит следующим образом:
Включает следующие члены:
StrategyParameterString – общедоступный конструктор с параметрами. Инициализирует начальное состояние объекта. При этом внутрь передаётся коллекция строк, из которой пользователь потом может выбирать. Принимает следующие данные:
name – название для экземпляра;
value – значение по умолчанию;
collection – список допустимых значений для параметра;
tabName – имя вкладки, на которой должен отображаться параметр;
StrategyParameterString – общедоступный конструктор с параметрами. Инициализирует начальное состояние объекта. При использовании данного конструктора в параметр можно будет вписать любое значение. Принимает следующие данные:
name – название для экземпляра;
value – значение по умолчанию;
tabName – имя вкладки, на которой должен отображаться параметр;
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://t.me/osengine_official_support
Комментарии