Interface IPersistBreakevenInstance

Per-context breakeven state persistence instance interface. Scoped to a specific (symbol, strategyName, exchangeName) triple.

Each signal's breakeven data is stored under its own signalId key within the context-scoped storage.

Custom adapters should implement this interface to override the default file-based breakeven persistence behavior.

interface IPersistBreakevenInstance {
    readBreakevenData(signalId: string, when: Date): Promise<BreakevenData>;
    waitForInit(initial: boolean): Promise<void>;
    writeBreakevenData(
        data: BreakevenData,
        signalId: string,
        when: Date,
    ): Promise<void>;
}

Implemented by

Methods

  • Read persisted breakeven data for a specific signal.

    Parameters

    • signalId: string

      Signal identifier

    • when: Date

      Logical timestamp at which the read is happening (reserved for API consistency)

    Returns Promise<BreakevenData>

    Promise resolving to breakeven data record (empty object if none persisted)

  • Initialize storage for this breakeven context.

    Parameters

    • initial: boolean

      Whether this is the first initialization

    Returns Promise<void>

    Promise that resolves when initialization is complete

  • Write breakeven data for a specific signal.

    Parameters

    • data: BreakevenData

      Breakeven data record to persist

    • signalId: string

      Signal identifier

    • when: Date

      Logical timestamp this write belongs to (reserved for API consistency)

    Returns Promise<void>

    Promise that resolves when write is complete