import { Client } from "../exchanges/rest"; import type { Kline, KlineInterval } from "../types"; const client = new Client("binance"); /** * 获取 Binance K 线数据(基于 MainClient REST API)。 * * 内部复用 Client(多交易所 REST 客户端)的 binance 实现, * 包含限流、Binance SDK 原生转换、连续性过滤等逻辑。 * 返回本系统标准化 {@link Kline} 数组。 * * @param symbol - 交易对符号(如 "BTCUSDT") * @param interval - K 线周期(如 "1h"、"4h"、"1d") * @param startTime - 起始时间(Unix ms) * @param endTime - 结束时间(Unix ms),可选;不传则拉取到最新 * @param limit - 单次拉取条数,默认 500(最大 1000) */ export async function fetchKlines( symbol: string, interval: KlineInterval, startTime: number, endTime?: number, limit = 500, ): Promise { // Client.fetchKlines 参数顺序:symbol, interval, startTime, limit, endTime return client.fetchKlines(symbol, interval, startTime, limit, endTime); }