TradePipeline

StockSharp.Algo.Strategies.Decomposed

Trade processing. Handles deduplication, PnL calculation, commission/slippage accumulation.

Constructors

TradePipeline
public TradePipeline(IPnLManager pnlManager, IStatisticManager stats)
tradePipeline = TradePipeline(pnlManager, stats)

Trade processing. Handles deduplication, PnL calculation, commission/slippage accumulation.

pnlManager
PnL manager.
stats
Statistic manager.

Properties

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

Total accumulated commission.

MyTrades
public IEnumerable<MyTrade> MyTrades { get; }
value = tradePipeline.MyTrades

All tracked trades.

Slippage
public decimal? Slippage { get; private set; }
value = tradePipeline.Slippage
tradePipeline.Slippage = value

Total accumulated slippage.

Methods

Contains
public bool Contains(MyTrade trade)
result = tradePipeline.Contains(trade)

Check whether the trade is already tracked.

Reset
public void Reset()
tradePipeline.Reset()

Clear all data.

TryAdd
public bool TryAdd(MyTrade trade)
result = tradePipeline.TryAdd(trade)

Try to add a trade. Returns false if duplicate. Processes PnL, commission, slippage.

Events

CommissionChanged
public event Action CommissionChanged
tradePipeline.CommissionChanged += handler

Fires when commission changes.

PnLChanged
public event Action<DateTime> PnLChanged
tradePipeline.PnLChanged += handler

Fires when PnL changes due to a trade.

SlippageChanged
public event Action SlippageChanged
tradePipeline.SlippageChanged += handler

Fires when slippage changes.

TradeAdded
public event Action<MyTrade> TradeAdded
tradePipeline.TradeAdded += handler

Fires when a new trade is successfully added.