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
ООО «ВАН ТЕХНОЛОГИИ»т: +7 953 769 56 45
* Торговля на финансовых рынках связана с риском, который лежит на Вас.
* Ничто из написанного на сайте o-s-a.net не является рекомендацией.
* Если Вы этого не понимаете, не читайте этот сайт, ничего не покупайте.
Комментарии