Interface ISignalDto

Signal data transfer object returned by getSignal. Will be validated and augmented with auto-generated id.

interface ISignalDto {
    cost?: number;
    id?: string;
    isolated?: boolean;
    minuteEstimatedTime?: number;
    multiplier?: number;
    note?: string;
    position: "long" | "short";
    priceOpen?: number;
    priceStopLoss: number;
    priceTakeProfit: number;
    symbol?: string;
}

Hierarchy (View Summary)

Properties

cost?: number

Cost of this entry in USD. Default: GLOBAL_CONFIG.CC_POSITION_ENTRY_COST

id?: string

Optional signal ID (auto-generated if not provided)

isolated?: boolean

Isolated-margin mode: the position's margin is its own cost. Once the leveraged realizable PNL reaches -100% the position is force-closed with closeReason "liquidation" at the computed liquidation price (see getLiquidationPrice). With false (cross margin) PNL may go below -100% and the position keeps being monitored until TP/SL/time_expired. Default: GLOBAL_CONFIG.CC_SIGNAL_ISOLATED_MARGIN

minuteEstimatedTime?: number

Expected duration in minutes before time_expired. Use Infinity for no timeout — position stays open until TP/SL or explicit closePending(). Default: GLOBAL_CONFIG.CC_MAX_SIGNAL_LIFETIME_MINUTES

multiplier?: number

PNL multiplier (leverage) applied to pnlPercentage in PNL calculations. pnlCost follows automatically (pnlCost = pnlPercentage / 100 * pnlEntries). Default: GLOBAL_CONFIG.CC_SIGNAL_LEVERAGE_MULTIPLIER

note?: string

Human-readable description of signal reason

position: "long" | "short"

Trade direction: "long" (buy) or "short" (sell)

priceOpen?: number

Entry price for the position

priceStopLoss: number

Stop loss exit price (must be < priceOpen for long, > priceOpen for short)

priceTakeProfit: number

Take profit target price (must be > priceOpen for long, < priceOpen for short)

symbol?: string

Symbol of a ticker on exchange