OrderPipeline
Отслеживание и обработка заказов. Управляет жизненным циклом прикрепления/обработки/отмены.
Конструкторы
public OrderPipeline(IStatisticManager stats)
orderPipeline = OrderPipeline(stats)
Отслеживание и обработка заказов. Управляет жизненным циклом прикрепления/обработки/отмены.
- stats
- Статистический менеджер.
Свойства
public decimal? Commission { get; private set; }
value = orderPipeline.Commission
orderPipeline.Commission = value
Общая комиссия от зарегистрированных заказов.
public IEnumerable<Order> Orders { get; }
value = orderPipeline.Orders
Получите все отслеживаемые заказы.
Методы
public void AddReceivedVolume(Order order, decimal volume)
orderPipeline.AddReceivedVolume(order, volume)
Отслеживать полученный объем для логики WaitAllTrades.
public void AttachAndProcess(Order order)
orderPipeline.AttachAndProcess(order)
Прикрепите и немедленно обработайте заказ (используется для восстановленных заказов).
public void CancelAll()
orderPipeline.CancelAll()
Отметить все активные заказы как отмененные.
public bool IsTracked(Order order)
result = orderPipeline.IsTracked(order)
Проверьте, отслеживается ли заказ в данный момент.
public void ProcessOrder(Order order, bool isChanging)
orderPipeline.ProcessOrder(order, isChanging)
Изменение состояния технологического заказа. Обнаруживает регистрацию (Ожидает -> Активно/Готово) и запускает соответствующие события.
public void RemoveDoneBefore(DateTime time)
orderPipeline.RemoveDoneBefore(time)
Удалить старые выполненные заказы.
- time
- Минимальное время хранения заказа.
public void RemoveDoneWithNonPositiveVolume()
orderPipeline.RemoveDoneWithNonPositiveVolume()
Удалить выполненные ордера с неположительным объемом.
public bool TryAttach(Order order)
result = orderPipeline.TryAttach(order)
Попробуйте прикрепить (отследить) заказ. Возвращает false, если оно уже отслеживается.
public Order TryGetTracked(Order order)
result = orderPipeline.TryGetTracked(order)
Попробуйте найти экземпляр отслеживаемого заказа по ссылке или идентификатору транзакции.
События
public event Action<Order> Changed
orderPipeline.Changed += handler
Срабатывает при изменении состояния заказа (нерегистрации).
public event Action<Order> NewOrder
orderPipeline.NewOrder += handler
Срабатывает, когда к отслеживанию добавляется новый заказ.
public event Action<Order> Registered
orderPipeline.Registered += handler
Срабатывает, когда заказ переходит из состояния «Ожидание» в состояние «Активный/Выполнено».