Добавляем роботу индикатор и торговую логику.

Добавляем роботу индикатор и торговую логику.

На текущий момент у нас есть робот, который видит OsEngine и в который можно подключить данные:

 

Шаг 1. Добавляем в бота индикатор.

Для этого нам нужно:

1. Создаём переменную типа Aindicator в теле класса.

2. Внутри конструктора создаём её таким вот образом. Строка 1 отвечает за то, чтобы класс был создан на фабрике индикаторов. Строка 2 отвечает за то, что мы размещаем этот индикатор на источнике данных.

 

Шаг 2.  Подписываемся на событие завершения свечи.

Для этого надо обратиться к источнику BotTabSimple, который мы создавали ранее. У него есть множество всяких событий, но мы в данном случае подпишемся на событие завершения свечи. Называется оно CandleFinishedEvent:

1. Подписываемся на событие завершения свечи.

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

 

Шаг 3. Делаем логику входа и выхода.

Для этого добавляем в обработчик события завершения свечи этот код:

1. Если свечей меньше 10, выходим из логики. Костыль, чтобы не было ошибок.

2. Берём массив со всеми открытыми позициями.

3. Берём у последней свечи Open и Close.

4. Берём у индикатора текущее значение.

5. Если позиций нет, то заходим в логику открытия позиции.

6. Входить будем, когда Open последней свечи был ниже скользящей, а Close выше. Т.е. произошёл пробой скользящей, и мы закрепились выше.

7. Если уже есть какая-то позиция, то заходим в логику её закрытия.

8. Если ушли ниже скользящей, это сигнал о закрытии.

9. Если последняя позиция не в статусе Open, то ничего не делаем. Мы закрываем только открытые позиции. Это Важно, т.к. по позиции уже могут быть закрывающие ордера. И нам спамить не нужно.

10. Вызываем метод закрытия позиции по маркету.

На данном этапе робот в тестере начал торговать:

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

 

P.S.

Os Engine поддержка терминала: https://t.me/osengine_official_support 

Обсуждаем в телеграмме: https://t.me/o_s_a_chat

Канал проекта: https://t.me/bad_quant

17:15
258

Комментарии

Нет комментариев. Ваш будет первым!