В данном посте посмотрим, где взять заготовку для индикатора в OsEngine в проекте. Она Вам понадобится, чтобы делать на её основе свои индикаторы в дальнейшем. И поговорим об обязательных методах в индикаторе.
Пример лежит на ГитХаб здесь: https://github.com/AlexWan/OsEngine/blob/master/project/OsEngine/Indicators/Samples/Sample1Blank.cs
В проекте это тут:
Что там есть:
На данный момент в этом файле «Заготовка» для индикатора:
- Добавлен атрибут индикатора.
- Класс унаследован от класса Aindicator.
- Создали обязательный метод OnProcess.
- Внутри OnProcess мы обратились к статусу вызова метода. Нам нужен Configure, он вызывается при самом создании индикатора один раз. Именно здесь нужно создавать параметры и серии данных (и всё прочее).
- Создали обязательный метод OnStateChange. В нём должен был быть расчёт индикатора.
1. Атрибут «Indicator».
Чтобы OsEngine знал о том, что Ваш класс – это индикатор, надо его пометить атрибутом. Вот так:
Внутри кавычек нужно указывать название Вашего индикатора. Если атрибута не будет, или он будет с ошибками, Вы не увидите свой индикатор в интерфейсах терминала.
2. Наследование от Aindicator.
Далее, класс, который предполагается как индикатор, должен стать наследником от Aindicator. Это следующая конструкция:
Без этого не выйдет создать следующие два метода, и в них не будут приходить данные.
3. Обязательный метод OnStateChange.
В каждом индикаторе должен быть данный метод, нужно его прописать:
Он вызывается в двух случаях:
- state == Configure. При создании индикатора в системе в момент, когда такой статус, нужно создавать параметры, серии данных и прочее.
- state == Dispose. Статус при удалении. В этот момент можно удалить какие-то данные, которые Вы накапливаете в индикаторе.
4. Обязательный метод OnProcess.
В каждом индикаторе должен быть данный метод, нужно его прописать:
Данный метод будет вызываться, когда требуется пересчёт индикатора по какому-то индексу в массиве свечей. В качестве параметров метод принимает:
- Массив свечек.
- Индекс, по которому нужно рассчитать индикатор.
Удачных алгоритмов!
Комментарии открыты для друзей!
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
Подробнее https://smart-lab.ru/compan...








