OptimizerUtils

Public API utilities for optimizer operations. Provides high-level methods for strategy generation and code export.

Usage:

import { Optimizer } from "backtest-kit";

// Get strategy data
const strategies = await Optimizer.getData("BTCUSDT", {
optimizerName: "my-optimizer"
});

// Generate code
const code = await Optimizer.getCode("BTCUSDT", {
optimizerName: "my-optimizer"
});

// Save to file
await Optimizer.dump("BTCUSDT", {
optimizerName: "my-optimizer"
}, "./output");
constructor();
getData: (symbol: string, context: { optimizerName: string; }) => Promise<IOptimizerStrategy[]>

Fetches data from all sources and generates strategy metadata. Processes each training range and builds LLM conversation history.

getCode: (symbol: string, context: { optimizerName: string; }) => Promise<string>

Generates complete executable strategy code. Includes imports, helpers, strategies, walker, and launcher.

dump: (symbol: string, context: { optimizerName: string; }, path?: string) => Promise<void>

Generates and saves strategy code to file. Creates directory if needed, writes .mjs file.

Format: {optimizerName}_{symbol}.mjs