OrderPipeline

StockSharp.Algo.Strategies.Decomposed

订单跟踪和处理 处理附着/进程/终止生命周期。

构造函数

OrderPipeline
public OrderPipeline(IStatisticManager stats)
orderPipeline = OrderPipeline(stats)

订单跟踪和处理 处理附着/进程/终止生命周期。

stats
统计经理.

属性

Commission
public decimal? Commission { get; private set; }
value = orderPipeline.Commission
orderPipeline.Commission = value

注册订单的佣金总额。

Orders
public IEnumerable<Order> Orders { get; }
value = orderPipeline.Orders

得到所有追踪命令。

方法

AddReceivedVolume
public void AddReceivedVolume(Order order, decimal volume)
orderPipeline.AddReceivedVolume(order, volume)

音轨接收到WaitAllTrades逻辑的音量 。

AttachAndProcess
public void AttachAndProcess(Order order)
orderPipeline.AttachAndProcess(order)

附加并立即处理命令(用于恢复的命令)。

CancelAll
public void CancelAll()
orderPipeline.CancelAll()

将所有活动命令标为已取消 。

IsTracked
public bool IsTracked(Order order)
result = orderPipeline.IsTracked(order)

检查是否跟踪到命令 。

ProcessOrder
public void ProcessOrder(Order order, bool isChanging)
orderPipeline.ProcessOrder(order, isChanging)

进程命令状态变化。 检测注册( Pending- > Active/ Done) 并点出相应的事件 。

RemoveDoneBefore
public void RemoveDoneBefore(DateTime time)
orderPipeline.RemoveDoneBefore(time)

删除已执行的旧命令 。

time
起码的订货时间要保留
RemoveDoneWithNonPositiveVolume
public void RemoveDoneWithNonPositiveVolume()
orderPipeline.RemoveDoneWithNonPositiveVolume()

取消已完成的单, 且体积不正 。

Reset
public void Reset()
orderPipeline.Reset()

清除所有追踪命令

TryAttach
public bool TryAttach(Order order)
result = orderPipeline.TryAttach(order)

尝试附加( track) 命令。 如果已经跟踪, 返回为假 。

TryGetTracked
public Order TryGetTracked(Order order)
result = orderPipeline.TryGetTracked(order)

尝试通过引用或交易 ID 找到跟踪命令实例 。

事件

Changed
public event Action<Order> Changed
orderPipeline.Changed += handler

顺序状态变化起火(未注册).

NewOrder
public event Action<Order> NewOrder
orderPipeline.NewOrder += handler

跟踪中加入新订单时会起火.

Registered
public event Action<Order> Registered
orderPipeline.Registered += handler

当命令从待发/执行时起火。