rss

Профиль компании

Финансовые компании

Блог компании Os_Engine | Доступ к портфелю на бирже и позиции на бирже. BotTabSimple #8

Некоторые типы алгоритмов должны уметь получить доступ к биржевому портфелю и контролировать не только свои позиции, но и позицию на бирже.

В этой статье будем разбираться с тем, как это делается.

Подробнее о том, что такое портфель и биржевая позиция: https://smart-lab.ru/company/os_engine/blog/1043474.php

Доступ к портфелю на бирже и позиции на бирже. BotTabSimple #8 

В классе BotTabSimple это находится здесь:

Доступ к портфелю на бирже и позиции на бирже. BotTabSimple #8 

 

Portfolio. Запрос портфеля на бирже.

Пример обращения к портфелю из события завершения свечи у робота:

Доступ к портфелю на бирже и позиции на бирже. BotTabSimple #8 

  1. Берём из источника портфель, к которому он подключен, и сохраняем в переменную myPortfolio.
  2. Берём доступные средства по портфелю. Доступно не везде!
  3. Берём блокированные средства по портфелю. Это те средства, которые заблокированы под выставленные заявки и т.д. Доступно не везде!
  4. Берём открытые по портфелю позиции. Это могут быть как открытые данным источником позиции, так и все остальные, включая другие бумаги.

 

Запрос PositionOnBoard метода.

Чтобы запросить только позиции в портфеле по биржевому инструменту, который торгуется данным источником, можно воспользоваться свойством BotTabSimple – PositionsOnBoard.

Пример:

Доступ к портфелю на бирже и позиции на бирже. BotTabSimple #8

  1. Берём из источника позиции только по инструменту, который подключен к торгам в этом источнике. Позиций может быть несколько по одному инструменту и на бирже! Это может быть Лонг и Шорт одновременно, если биржа такое позволяет. В таком случае свойство PositionOnBoard вернёт две позиции, и на конце у них в названии будет либо SHORT, либо LONG.
  2. Если позиции на бирже по инструменту есть, считаем какие именно.
  3. Объявляем переменную для общей позиции по инструменту.
  4. Объявляем переменную для лонгов по инструменту.
  5. Объявляем переменную для шортов по инструменту.
  6. Если позиция на бирже явно помечена как ЛОНГ, добавляем в соответствующую переменную.
  7. Если позиция на бирже явно помечена как ШОРТ, добавляем в соответствующую переменную.
  8. Если позиция на бирже явно никак не помечена в какую-то сторону, добавляем в соответствующую переменную.

 

Пример доступа к портфелю из публичных роботов в OsEngine.

Во время выставления заявок Вам может занадобиться рассчитывать размер сделки в зависимости от Ваших текущих активов. Обычное дело.

В проекте OsEngine есть замечательный пример, в котором реализован расчёт объёмов разными способами, включая обращение к портфелю и позициям по портфелю. Находится он здесь:

Доступ к портфелю на бирже и позиции на бирже. BotTabSimple #8 

Основная статья про этот пример находится здесь: https://smart-lab.ru/company/os_engine/blog/1036776.php

А нам интересен метод GetVolume:

Доступ к портфелю на бирже и позиции на бирже. BotTabSimple #8

Внутри него рассчитывается объём для входа в позицию. Нам интересен вариант расчёта объёма от размера депозита:

Доступ к портфелю на бирже и позиции на бирже. BotTabSimple #8

  1. Здесь мы запрашиваем портфель у класса BotTabSimple. Это обычный простой источник для торговли в OsEngine. Самый распространённый. Будем дальше по Гайду очень много про него говорить.
  2. Если пользователь выбрал портфель типа Prime, то запрашиваем размер активов прямо у портфеля. Это вариант с Квик, когда сам портфель знает о своих активах, и они одни на весь портфель.
  3. Если пользователь назначил иное название для активов (например, USDT, или бывает RUB или EUR), то идём искать их в массив PositionOnBoard. Это вариант для Криптобирж и Тинькова. 

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

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

Доступ к портфелю на бирже и позиции на бирже. BotTabSimple #8

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

Доступ к портфелю на бирже и позиции на бирже. BotTabSimple #8


UPDONW
Новый дизайн