Изображение блога
OS_Engine_team
OS_Engine_team Блог компании Os_Engine
05 августа 2024, 16:24

Ваш первый робот с фильтром от индекса. Быстрый старт в программировании OsEngine #5

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

В качестве базы мы возьмём нашего предыдущего робота, сделанного в рамках этой серии статей, и добавим в него новый источник данных -  BotTabIndex.

Ваш первый робот с фильтром от индекса. Быстрый старт в программировании OsEngine #5 

Шаг 1. Берём наш предыдущий пример и переносим в проект.

Сам скрипт находится здесь: https://disk.yandex.ru/d/_aKkIx-h0kNqCA

Надо его добавить в проект. Вот сюда:

Ваш первый робот с фильтром от индекса. Быстрый старт в программировании OsEngine #5

Шаг 2. Переименовываем скрипт, чтобы не было конфликтов с названиями.

Пусть он у нас теперь называется MyNewSimpleBotOnIndex:

Ваш первый робот с фильтром от индекса. Быстрый старт в программировании OsEngine #5 

Сменить название нужно во всех пяти местах, обозначенных на картинке.

 

Шаг 3. Добавляем новый источник, генерирующий индекс.

Ваш первый робот с фильтром от индекса. Быстрый старт в программировании OsEngine #5 

  1. Сначала создаём переменную полем класса. Пока она пустая. Просто ссылка.
  2. Теперь создаём источник BotTabIndex. Путём вызова метода TabCreate, передавая туда тип источника Index.
  3. Сохраняем в нашу переменную источник. Забирая ссылку на него из массива TabsIndex.

 

Шаг 4. Ложим на индекс скользящую среднюю.

Ваш первый робот с фильтром от индекса. Быстрый старт в программировании OsEngine #5 

  1. Добавляем переменную типа Aindicator, в которой будем хранить скользящую среднюю с индекса.
  2. В конструкторе создаём её и ложим на источник индекса.

 

Шаг 5. Расширяем логику робота новым фильтром по индексу.

Всё, что этого касается, будет располагаться в событии обновления свечи по моноисточнику, где у нас и раньше была торговая логика:

Ваш первый робот с фильтром от индекса. Быстрый старт в программировании OsEngine #5

  1. Берём у источника, отвечающего за индекс свечи. Проверяем, чтобы они были настроены.
  2. Берём последнее значение индекса. Берём последнее значение скользящей средней с индекса.
  3. Если последнее значение скользящей у индекса равно нулю, выходим из логики.
  4. Сам фильтр. Если индекс ниже своей скользящей средней, то позицию в ЛОНГ не открываем. Ждём, когда индекс начнёт расти.

Включаем тестер, подключаем бумаги и смотрим, что там:

Ваш первый робот с фильтром от индекса. Быстрый старт в программировании OsEngine #5 

Жизнь налаживается…

Если что, это MOEX TOP 30 с 2014 года. По этим данным строится индекс. В качестве торгового инструмента Сбербанк. 30 минутки.

Ссылка на исходный код робота: https://disk.yandex.ru/d/SmUvfwXvdIHTYA

Не забывайте добавлять в проект…

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

Пост из серии статей «Быстрый старт в программирование на OsEngine».

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

Ваш первый робот с фильтром от индекса. Быстрый старт в программировании OsEngine #5

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

Ваш первый робот с фильтром от индекса. Быстрый старт в программировании OsEngine #5

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

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

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