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

Обязательные к реализации члены класса BotPanel. Создаём робота, которого видит система, через Атрибут. OsEngine.

В классе BotPanel имеется ряд абстрактных членов, которые необходимо реализовать в классах наследниках.

По-простому, надо сделать несколько обязательных методов после того, как Вы начнёте создавать своего робота.

Рассмотрим пример создания робота. Пустого, но который уже будет виден тестером.

Обязательные к реализации члены класса BotPanel. Создаём робота, которого видит система, через Атрибут. OsEngine.

 

Шаг 1. Создаём в проекте класс MyFirstSimpleBot.

Обязательные к реализации члены класса BotPanel. Создаём робота, которого видит система, через Атрибут. OsEngine.

 

Шаг 2. Добавляем директивы using.

Это нужно, чтобы подключить нужные библиотеки и пространства имён в робота:

Обязательные к реализации члены класса BotPanel. Создаём робота, которого видит система, через Атрибут. OsEngine.

  1. Это системные штуки. Чтобы подключились стандартные типы данных C# и коллекции (нам нужны будут листы List<>) данных.
  2. Это примитивы в OsEngine. Свечи, трейды, ордера и всё остальное.
  3. Это индикаторы и всё, что с этим связано.
  4. Здесь расположен класс родитель для всех роботов, которым сейчас будем пользоваться.
  5. Это помогает прописывать робота в системе через атрибут класса, что очень удобно.
  6. А здесь хранятся все источники данных в OsEngine.

Шаг 3. Даём классу понять, что он робот. Наследуемся от BotPanel.

Для этого после названия класса ставим двоеточие и пишем BotPanel. После чего создаём обязательные члены класса для BotPanel. Должно получится вот так:

Обязательные к реализации члены класса BotPanel. Создаём робота, которого видит система, через Атрибут. OsEngine.

  1. Наследование. После того, как Вы это (: BotPanel) написали, программа поймёт, что Вы делаете робота для OsEngine.
  2. Нужно прописать конструктор. В нём мы будем задавать начальное состояние робота, объявлять источники и подписываться на события.
  3. Метод, хранящий в себе название робота. Чуть позже его реализуем.
  4. Метод, вызывающий уникальное окно робота. У нас его не будет, т.ч. мы просто удалим всё, что там внутри метода.

 

Шаг 4. Задаём роботу имя.

Для этого нам понадобиться доработать исходник в двух местах:

Обязательные к реализации члены класса BotPanel. Создаём робота, которого видит система, через Атрибут. OsEngine.

  1. Добавляем атрибут. В скобках пишем ТОЧНОЕ имя нашего класса.
  2. Добавляем возвращаемое значение в метод GetNameStragyType. В скобках тоже должно быть точное название нашего класса.

 

Шаг 5. Создаём моноисточник BotTabSimple.

Идём в конструктор и создаём источник для подключения к одному инструменту. Должно получиться вот так:

Обязательные к реализации члены класса BotPanel. Создаём робота, которого видит система, через Атрибут. OsEngine.

В красном квадратике вызов метода, создающего источники. В данном случае источники типа Simple.

 

Шаг 6. Сохраняем источник BotTabSimple как поле класса.

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

Обязательные к реализации члены класса BotPanel. Создаём робота, которого видит система, через Атрибут. OsEngine.

  1. Создаём переменную типа BotTabSimple. Вне методов, чтобы из всего робота было её видно.
  2. В конструкторе мы положим в ранее созданную переменную источник. И будем далее обращаться к источнику по этой ссылке.

 

Шаг 7. Готово! Запускаем тестер и настраиваем источник!

Запускаем проект. Если что, это вот эта кнопка в Visual Studio. Надо обязательно проект собрать:

Обязательные к реализации члены класса BotPanel. Создаём робота, которого видит система, через Атрибут. OsEngine.

Выбираем тестер. И когда нажимаем на кнопку добавить робота, видим наш «MyNewSimpleBot»:

Обязательные к реализации члены класса BotPanel. Создаём робота, которого видит система, через Атрибут. OsEngine.

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

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

Обязательные к реализации члены класса BotPanel. Создаём робота, которого видит система, через Атрибут. OsEngine.

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

Обязательные к реализации члены класса BotPanel. Создаём робота, которого видит система, через Атрибут. OsEngine.

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

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

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