Service for generating and saving walker markdown reports.
Features:
constructor();
loggerService: any
Logger service for debug output
getStorage: any
Memoized function to get or create ReportStorage for a walker. Each walker gets its own isolated storage instance.
subscribe: (() => () => void) & ISingleshotClearable
Subscribes to walker emitter to receive walker progress events. Protected against multiple subscriptions. Returns an unsubscribe function to stop receiving events.
unsubscribe: () => Promise<void>
Unsubscribes from walker emitter to stop receiving events. Calls the unsubscribe function returned by subscribe(). If not subscribed, does nothing.
tick: any
Processes walker progress events and accumulates strategy results. Should be called from walkerEmitter.
getData: (walkerName: string, symbol: string, metric: WalkerMetric, context: { exchangeName: string; frameName: string; }) => Promise<WalkerCompleteContract>
Gets walker results data from all strategy results. Delegates to ReportStorage.getData().
getReport: (walkerName: string, symbol: string, metric: WalkerMetric, context: { exchangeName: string; frameName: string; }, strategyColumns?: StrategyColumn[], pnlColumns?: PnlColumn[]) => Promise<...>
Generates markdown report with all strategy results for a walker. Delegates to ReportStorage.getReport().
dump: (walkerName: string, symbol: string, metric: WalkerMetric, context: { exchangeName: string; frameName: string; }, path?: string, strategyColumns?: StrategyColumn[], pnlColumns?: PnlColumn[]) => Promise<...>
Saves walker report to disk. Creates directory if it doesn't exist. Delegates to ReportStorage.dump().
clear: (walkerName?: string) => Promise<void>
Clears accumulated result data from storage. If walkerName is provided, clears only that walker's data. If walkerName is omitted, clears all walkers' data.