PositionTargetManager

StockSharp.Algo.PositionManagement

Автономный менеджер, который доводит позицию до целевого значения с помощью настраиваемых алгоритмов.

Наследует: BaseLogReceiver

Конструкторы

PositionTargetManager
public PositionTargetManager(ISubscriptionProvider subProvider, ITransactionProvider transProvider, IMarketRuleContainer container, Func<Security, Portfolio, decimal?> getPosition, Func<Order> orderFactory, Func<bool> canTrade, Func<Sides, decimal, IPositionModifyAlgo> algoFactory)
positionTargetManager = PositionTargetManager(subProvider, transProvider, container, getPosition, orderFactory, canTrade, algoFactory)

Инициализирует новый экземпляр PositionTargetManager.

subProvider
Поставщик подписки.
transProvider
Поставщик транзакций.
container
Контейнер правил рынка.
getPosition
Функция для получения текущей позиции по паре финансовый инструмент/портфель.
orderFactory
Фабрика по созданию новых заказов с желаемыми свойствами.
canTrade
Функция, которая возвращает, разрешена ли торговля.
algoFactory
Фабрика для создания алгоритмов изменения положения. Параметры: сторона, объем.

Свойства

MaxRetries
public int MaxRetries { get; set; }
value = positionTargetManager.MaxRetries
positionTargetManager.MaxRetries = value

Максимальное количество повторных попыток по сбою заказа.

OrderType
public OrderTypes OrderType { get; set; }
value = positionTargetManager.OrderType
positionTargetManager.OrderType = value

Тип заказа, который нужно использовать.

PositionTolerance
public decimal PositionTolerance { get; set; }
value = positionTargetManager.PositionTolerance
positionTargetManager.PositionTolerance = value

Терпимость к рассмотрению достигнутой цели позиции.

Методы

CancelTarget
public void CancelTarget(Security security, Portfolio portfolio)
positionTargetManager.CancelTarget(security, portfolio)

Отменить цель для пары финансовый инструмент/портфель.

security
финансовый инструмент.
portfolio
Портфолио.
DisposeManaged
protected override void DisposeManaged()
positionTargetManager.DisposeManaged()

Освободите ресурсы.

GetTarget
public decimal? GetTarget(Security security, Portfolio portfolio)
result = positionTargetManager.GetTarget(security, portfolio)

Получите целевую позицию для пары финансовый инструмент/портфель.

Возвращает: Целевая позиция или нулевое значение, если не установлено.

IsTargetReached
public bool IsTargetReached(Security security, Portfolio portfolio)
result = positionTargetManager.IsTargetReached(security, portfolio)

Проверьте, достигнуто ли целевое положение.

SetTarget
public void SetTarget(Security security, Portfolio portfolio, decimal target)
positionTargetManager.SetTarget(security, portfolio, target)

Установите целевую позицию для пары финансовый инструмент/портфель.

security
финансовый инструмент.
portfolio
Портфолио.
target
Значение целевой позиции.

События

Error
public event Action<Security, Portfolio, Exception> Error
positionTargetManager.Error += handler

Происходит при возникновении ошибки во время управления целевыми объектами.

OrderRegistered
public event Action<Order> OrderRegistered
positionTargetManager.OrderRegistered += handler

Происходит при регистрации заказа менеджером.

TargetReached
public event Action<Security, Portfolio> TargetReached
positionTargetManager.TargetReached += handler

Происходит при достижении целевой позиции.