Кнопка в окне параметров. StrategyParameterButton.

Кнопка в окне параметров. StrategyParameterButton.

StrategyParameterButton представляет собой кнопку, которую пользователь видит в окне параметров и нажатием которой можно совершать какие-то действия.

Расположение в репозитории ГитХаб.

Расположение в проекте, если отрыть его на ПК:

Сам класс выглядит следующим образом:

StrategyParameterButton – класс, предоставляющий возможность добавить кнопку в окно параметров и повесить обработчик на ее событие клика. Таким образом можно добавить в алгоритм любой функционал для ручного управления, при этом не прибегая к созданию дополнительных окон. В платформе есть бесплатный робот ElementsOnChartSampleBot, демонстрирующий процесс добавления графических элементов на график при помощи этого параметра.

Состоит из следующих членов:

StrategyParameterButton – общедоступный конструктор с параметрами. Инициализирует начальное состояние объекта. Принимает следующие данные:

buttonLabel – имя, отображаемое на кнопке;

tabName – имя вкладки, на которой должен отображаться параметр;

StrategyParameterButton – закрытый конструктор без параметров.

Name – публичное свойство типа string. Возвращает имя параметра уникальное в рамках робота, в котором используется параметр.

TabName – публичное свойство типа string. Предоставляет доступ к имени вкладки, на которой будет отображаться параметр в окне параметров.

Value – публичное поле типа TimeOfDay. Содержит основное значение параметра – время дня.

GetStringToSave – общедоступный метод. Возвращает строку с настройками объекта параметра для сохранения.

LoadParamFromString – общедоступный метод. Не несет функциональной нагрузки, требуется для соответствия интерфейсу.

Name – публичное свойство типа string. Возвращает отображаемое имя параметра, оно должно быть уникальным в рамках робота.

Type – публичное свойство типа StrategyParameterType. Возвращает значение StrategyParameterType.Button.

ValueChange – общедоступное событие. Не несет функциональной нагрузки, требуется для соответствия интерфейсу.

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

UserClickOnButtonEvent – публичное событие. Высылает сигнал нажатия на кнопку.

 

Пример использования.

Можете посмотреть в технических примерах внутри проекта OsEngine. Например, в ChangePriceBotExtStopMarket. В этом роботе используются кнопки для запуска торговой логики.

На картинке Вы видите создание параметра «кнопка» и подписку на событие нажатия на кнопку:

 

Вид в интерфейсах.

Параметр Button выглядит в настройках робота как кнопка:

Оптимизировать данный тип параметра нельзя автоматически. Более того, в оптимизаторе параметр Button не отображается!

Например, робот из примера выше в оптимизаторе будет выглядеть так:

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

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

17:54
234
FAQ

Комментарии

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