IPortfolio

StockSharp.MatchingEngine

Interface for managing a single portfolio's state.

属性

AvailableMoney : decimal

Available money (current - blocked).

BeginMoney : decimal

Initial money amount.

BlockedMoney : decimal

Blocked money for pending orders.

Commission : decimal

Total commission paid.

CurrentMoney : decimal

Current money (begin + PnL).

EnableStopOut : bool

Enable automatic position liquidation on stop-out.

MarginCallLevel : decimal

Margin call level threshold. When margin level falls to this value, a warning is triggered.

Name : string

Portfolio name.

RealizedPnL : decimal

Total realized PnL.

StopOutLevel : decimal

Stop-out level threshold. When margin level falls to this value, positions are liquidated.

TotalPnL : decimal

Total PnL (realized - commission).

方法

CalculateUnrealizedPnL(Func<SecurityId, decimal?>) : decimal

Calculate unrealized PnL across all positions.

getCurrentPrice
Function to get current market price for a security. Returns null if price unavailable.

返回值: Total unrealized PnL.

GetAllPositions() : IEnumerable<PositionInfo>

Get all position info objects.

GetPosition(SecurityId) : PositionInfo

Get position for security.

securityId
Security ID.

返回值: Position info or null.

GetPositions() : IEnumerable<ValueTuple<SecurityId, decimal, decimal>>

Get all positions.

返回值: Enumeration of positions.

ProcessOrderCancellation(SecurityId, Sides, decimal, decimal)

Process order cancellation (unblock funds).

securityId
Security ID.
side
Order side.
volume
Cancelled volume.
price
Price used for margin calculation.
ProcessOrderRegistration(SecurityId, Sides, decimal, decimal)

Process order registration (block funds).

securityId
Security ID.
side
Order side.
volume
Order volume.
price
Order price for margin calculation.
ProcessTrade(SecurityId, Sides, decimal, decimal, decimal?) : TradeProcessingResult

Process a trade execution.

securityId
Security ID.
side
Trade side.
price
Trade price.
volume
Trade volume.
commission
Commission amount.

返回值: Trade processing result.

SetMoney(decimal)

Set initial money.

money
Money amount.
SetPosition(SecurityId, decimal, decimal)

Set initial position.

securityId
Security ID.
volume
Position volume.
avgPrice
Average entry price.