Изображение блога
OS_Engine_team
OS_Engine_team Блог компании Os_Engine
29 июля 2024, 17:47

Биржевой инструмент. Класс Security. Примитивы в OsEngine #7

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

В терминале мы видим их где-то здесь:

Биржевой инструмент. Класс Security. Примитивы в OsEngine #7

1. Что такое биржевой инструмент?

Любой торговый инструмент в OsEngine описывается классом Security. В объекте хранятся важные параметры инструмента, которые часто бывают необходимы в торговом алгоритме.

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

 

2. Класс Security в OsEngine.

За предоставление информации по инструментам в OsEngine отвечает класс Security. Посмотреть на него на ГитХаб можно здесь: https://github.com/AlexWan/OsEngine/blob/master/project/OsEngine/Entity/Security.cs

В самом проекте он находится тут:

Биржевой инструмент. Класс Security. Примитивы в OsEngine #7

А сам класс выглядит так:

Биржевой инструмент. Класс Security. Примитивы в OsEngine #7

Рассмотрим все члены данного класса.

Security – общедоступный конструктор.

Name – короткое название инструмента.

NameFull – полное наименование торгового актива.

NameClass – класс актива. Существует множество классов: акции, облигации, свопы, фьючерсы, опционы, валюты, криптовалютные пары и другие. Данное поле указывает, к какой группе принадлежит бумага.

NameId – уникальный идентификатор в рамках всех инструментов на бирже.

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

State – содержит значение перечисления SecurityStateType. Возможны следующие значения:

  • 1. Activ – торги по бумаге разрешены;
  • 2. Close – торговля активом запрещена;
  • 3. UnKnown – состояние не определено;

PriceStep – шаг цены, минимально возможное изменение цены инструмента.

Lot – количество единиц акции или актива, покупаемого за один контракт. Например, для акций Сбербанка это 100. Т.е. купив один контракт Сбера на MOEX, Мы получаем 100 акций. На биржах криптовалют это обычно единица.

PriceStepCost – денежная стоимость движения цены за один шаг. Другими словами, это размер прибыли, который будет получен, если купить один лот и продать по цене на один шаг дороже без учета комиссии.

Go – гарантийное обеспечение для одного контракта, размер денежных средств, который будет заблокирован при открытии позиции.

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

  • 1. None — не задано.
  • 2. CurrencyPair – валютная, криптовалютная пара.
  • 3. Stock – акция.
  • 4. Bond – облигация.
  • 5. Futures – фьючерс.
  • 6. Option – опцион.
  • 7. Index – биржевой индекс.

ShowDialog – публичный метод, который открывает окно настроек. Данное окно позволяет вручную настроить значимые поля объекта.

Decimals – указывает количество знаков после запятой в цене инструмента. Если цена кратна единице, содержит значение ноль.

MinTradeAmount – минимально допустимый объем операции по инструменту.

DecimalsVolume — количество знаков после запятой в минимальном объеме.

PriceLimitLow – минимальная цена инструмента, ниже которой запрещено выставлять заявки.

PriceLimitHigh — максимальная цена инструмента, выше которой запрещено выставлять заявки.

OptionType – если инструмент принадлежит к классу опционов, поле указывает тип опциона.

  • 1. None — не задано;
  • 2. Put – пут опцион;
  • 3. Call – колл опцион;

Strike – указывает фиксированную цену страйка, если инструмент принадлежит классу опционов.

Expiration – дата завершения обращения срочного контракта, если инструмент принадлежит классу фьючерсов и опционов.

LoadFromString — общедоступный метод, принимает строку, содержащую данные по всем полям, парсит ее и инициализирует состояние объекта.

GetSaveStr — общедоступный метод, не принимающий параметров. Возвращает строку, в которую записаны все поля объекта для дальнейшего сохранения в текстовый файл.

 

3. Обязательные поля Security.

Надо понимать, что не все поля, обозначенные в классе, будут доступны по всем коннекторам в OsEngine. В зависимости от АПИ мы можем иметь набор совершенно разных данных.

Обязательные поля, которые есть везде:

  1. Name
  2. NameFull
  3. NameClass
  4. NameId
  5. Exchange
  6. Price Step
  7. Lot
  8. PriceStepCost
  9. SecurityType
  10. Decimals
  11. DecimalsVolume

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

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

Биржевой инструмент. Класс Security. Примитивы в OsEngine #7

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

Биржевой инструмент. Класс Security. Примитивы в OsEngine #7

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

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

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