Function listenWalkerComplete

  • Subscribes to walker completion events with queued async processing.

    Emits when Walker.run() completes testing all strategies. Events are processed sequentially in order received, even if callback is async. Uses queued wrapper to prevent concurrent execution of the callback.

    Parameters

    • fn: (event: IWalkerResults) => void

      Callback function to handle walker completion event

    Returns () => void

    Unsubscribe function to stop listening to events

    import { listenWalkerComplete, Walker } from "backtest-kit";

    const unsubscribe = listenWalkerComplete((results) => {
    console.log(`Walker ${results.walkerName} completed!`);
    console.log(`Best strategy: ${results.bestStrategy}`);
    console.log(`Best ${results.metric}: ${results.bestMetric}`);
    console.log(`Tested ${results.totalStrategies} strategies`);
    });

    Walker.run("BTCUSDT", {
    walkerName: "my-walker",
    exchangeName: "binance",
    frameName: "1d-backtest"
    });

    // Later: stop listening
    unsubscribe();