Whether this notification is from backtest mode (true) or live mode (false)
Why signal closed (time_expired | take_profit | stop_loss | closed)
Unix timestamp in milliseconds when the tick result was created (from candle timestamp in backtest or execution context when in live)
Duration of position in minutes (from pendingAt to closeTimestamp)
Exchange name where signal was executed
Unique notification identifier
OptionalnoteOptional human-readable description of signal reason
Original entry price at signal creation (unchanged by DCA averaging)
Original stop loss price before any trailing adjustments
Original take profit price before any trailing adjustments
Pending timestamp in milliseconds (when position became pending/active at priceOpen)
Final PNL at signal close (from data.pnl)
Absolute profit/loss in USD
Total invested capital in USD
Profit/loss as percentage (e.g., 1.5 for +1.5%, -2.3 for -2.3%)
Exit price from PNL calculation (adjusted with slippage and fees)
Entry price from PNL calculation (effective price adjusted with slippage and fees)
Trade direction: "long" (buy) or "short" (sell)
Exit price when position was closed
Entry price for the position
Stop loss exit price
Take profit target price
Signal creation timestamp in milliseconds (when signal was first created/scheduled)
Unique signal identifier (UUID v4)
Strategy name that generated this signal
Trading pair symbol (e.g., "BTCUSDT")
Unix timestamp in milliseconds when signal was closed (closeTimestamp)
Total number of DCA entries (_entry.length). 1 = no averaging.
Total number of partial closes executed (_partial.length). 0 = no partial closes done.
Discriminator for type-safe union
Signal closed notification. Emitted when a trading position is closed (TP/SL hit).