Contract for partial loss level events.
Emitted by partialLossSubject when a signal reaches a loss level milestone (-10%, -20%, -30%, etc). Used for tracking partial stop-loss execution and monitoring strategy drawdown.
Events are emitted only once per level per signal (Set-based deduplication in ClientPartial). Multiple levels can be emitted in a single tick if price drops significantly.
Consumers:
symbol: string
Trading pair symbol (e.g., "BTCUSDT"). Identifies which market this loss event belongs to.
strategyName: string
Strategy name that generated this signal. Identifies which strategy execution this loss event belongs to.
exchangeName: string
Exchange name where this signal is being executed. Identifies which exchange this loss event belongs to.
frameName: string
Frame name where this signal is being executed. Identifies which frame this loss event belongs to (empty string for live mode).
data: IPublicSignalRow
Complete signal row data with original prices. Contains all signal information including originalPriceStopLoss, originalPriceTakeProfit, and totalExecuted.
currentPrice: number
Current market price at which this loss level was reached. Used to calculate actual loss percentage.
level: PartialLevel
Loss level milestone reached (10, 20, 30, 40, 50, 60, 70, 80, 90, or 100). Represents percentage loss relative to entry price (absolute value).
Note: Stored as positive number, but represents negative loss. level=20 means -20% loss from entry price.
backtest: boolean
Execution mode flag.
timestamp: number
Event timestamp in milliseconds since Unix epoch.
Timing semantics: