Изображение блога
OS_Engine_team
OS_Engine_team Блог компании Os_Engine
Сегодня в 15:08

Добавление индикаторов на источник BotTabIndex. Индикаторы OsEngine #12

Продолжаем разбираться с тем, как добавлять индикаторы на различные источники данных в OsEngine. И у нас на очереди индексы. Посмотрим, как добавлять индикаторы на BotTabIndex и как потом обращаться к данным индикатора из робота.

Добавление индикаторов на источник BotTabIndex. Индикаторы OsEngine #12

1. Где исходники?

Посмотреть исходный код робота, показанного ниже в качестве примера, можно, открыв его в проекте OsEngine:

Добавление индикаторов на источник BotTabIndex. Индикаторы OsEngine #12

Обязательно откройте его исходный код, чтобы посмотреть, как это работает.

Робот довольно сложный. Он из серии постов про индексный арбитраж. Не пугайтесь. Нас интересует процедура добавления индикатора на Индекс. Это две строки кода.

На индексе у робота расположен индикатор стадий волатильности:

Добавление индикаторов на источник BotTabIndex. Индикаторы OsEngine #12 

 

2. Создание индикатора и привязка его к индексу.

Нас должны интересовать следующие вещи:

Добавление индикаторов на источник BotTabIndex. Индикаторы OsEngine #12 

  1. Объявлено поле в теле класса типа Aindicator с названием, по которому мы будем к индикатору обращаться, к которому будет доступ везде из робота.
  2. Создание индикатора через вызов фабрики индикаторов.
  3. Добавление индикатора на источник BotTabIndex.

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

 

3. Вызов фабрики индикаторов для создания индикатора.

Для того, чтобы в роботе создать индикатор, нужно обратиться к фабрике индикаторов. Вот эта строка:

Добавление индикаторов на источник BotTabIndex. Индикаторы OsEngine #12

Метод IndicatorsFactory.CreateIndicatorByName имеет следующие параметры:

  1. String class. Название индикатора. То, как он называется в папке Scripts или внутри OsEngine, должно точно совпадать с названием индикатора.
  2. String name. Уникальное имя индикатора. По этому имени данные внутри индикатора будут сохраняться в файловую систему, поэтому обычно нужно использовать «Имя робота» + «Ещё что-то», что здесь и происходит.
  3. Bool canDelete. Можно ли удалить индикатор с графика. Обычно нужно ставить false, чтобы пользователь не мог удалить этот индикатор вручную.

 

4. Добавление индикатора на источник BotTabIndex.

После того, как индикатор создан, необходимо положить его на источник. Для этого:

Добавление индикаторов на источник BotTabIndex. Индикаторы OsEngine #12 

Обращаемся к источнику, на который будем привязывать индикатор, и вызываем у него метод CreateCandleIndicator. На вход метод принимает:

  1. Объект индикатора. В данном случае это _alligator.
  2. String nameArea. Область данных, на которую разместится индикатор. Prime – это основная область, на которой лежат свечи. Впишите сюда любую другую, и индикатор отобразиться в новой области данных.

 

5. Доступ к данным индикатора в логике робота.

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

Добавление индикаторов на источник BotTabIndex. Индикаторы OsEngine #12 

  1. Проверка наличия данных в индикаторе. Здесь мы смотрим последние данные в DataSeries. Если там 0, выходим из логики робота.
  2. Запрос данных для проверки рыночного условия. А здесь мы запрашиваем последние данные по индикатору. Затем, в данном случае, проверяем стадию волатильности для торговли, установленную пользователем.

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

Комментарии открыты для друзей!

Добавление индикаторов на источник BotTabIndex. Индикаторы OsEngine #12

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

Добавление индикаторов на источник BotTabIndex. Индикаторы OsEngine #12

0 Комментариев

Активные форумы
Что сейчас обсуждают

Старый дизайн
Старый
дизайн