@backtest-kit/signals

中文文档
23.7.0发布于 2026/10/29MITTypeScriptESM + CJS近 30 天下载 2777

AI动力交易系统技术分析和交易信号生成库. 计算出4个时间范围内的50+指标,并生成LLM消耗的平分报告.

中文使用文档
文档目录8 节
  1. 为什么
  2. 快速开始——一个电话
  3. 颗粒控制
  4. 每个时间段计算什么
  5. 为什么不自己计算指标呢?
  6. API 参考
  7. * 贡献
  8. 许可证

@ kit/ signals

人工智能交易的多时框架技术分析 反测试- kit. 计算跨越四个时间段的50+指标,加上订货本深度,并发布LLM准备的减记报告——将整个市场背景降为一次呼叫中的LLM提示.

screenshot

Ask DeepWiki npm TypeScript

📚 文档 • 妇女 参考执行情况 • 妇女 GitHub 图像

npm install @backtest-kit/signals backtest-kit

为什么

一个LLM交易策略 和你交来的市场环境一样好 通过四个时间段计算50+指标,格式化订单-书深度,并将其全部设定为干净的记分下线——用手,每分一分——是决定信号质量的不光彩的200行. 这个软件包是工作,预计算,缓存,并与后端测试- kit 的时间线同步: 1 commitHistorySetup(symbol, messages) 将1m/15m/30m/1h的书和蜡烛历史+指标附加到 LLM 消息阵列中.

  • 📈 四个同步时间框架 1米) 短期 15米) 轮班 30米) 长期 1小时.
  • 🎯 50+指标 ——RSI,MACD,博林格,斯多克斯克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克.
  • 📊 顺序书深度 ——最佳出价/任务,分布,前20级,流动性不平衡.
  • 🤖 LLM 已就绪的标记下调 上下文注入格式表格.
  • ⚡ 缓存 ——按时间框架 TTL;缓存被错误清除.
  • 📦 零配置 ——在引擎的时空上下文上工作出盒.

快速开始——一个电话

import { commitHistorySetup } from '@backtest-kit/signals';

const messages = [];
await commitHistorySetup('BTCUSDT', messages);
// messages now hold: order book + 1m/15m/30m/1h candle history
// + indicators for all 4 timeframes + system context (symbol, price, timestamp)
const signal = await llm(messages);
完成LLM战略
import { v4 as uuid } from 'uuid';
import { addStrategy, dumpSignal } from 'backtest-kit';
import { commitHistorySetup } from '@backtest-kit/signals';
import { json } from './utils/json.mjs';   // your LLM wrapper

addStrategy({
  strategyName: 'llm-strategy', interval: '5m', riskName: 'demo',
  getSignal: async (symbol) => {
    const messages = [{ role: 'system', content: 'You are a trading bot. Analyze the indicators and generate a signal.' }];
    await commitHistorySetup(symbol, messages);
    messages.push({ role: 'user', content: [
      'Based on the technical analysis above, generate a trading signal.',
      'Use position: "wait" if signals are unclear or contradictory.',
      'Return JSON: { position: "long"|"short"|"wait", priceTakeProfit: number, priceStopLoss: number }',
    ].join('\n') });

    const resultId = uuid();
    const signal = await json(messages);
    await dumpSignal(resultId, messages, signal);   // archive for debugging
    return { ...signal, id: resultId };
  },
});

颗粒控制

更喜欢选择什么是 进入即时? 调用单个报告函数——每个附件一个下划线部分 messages。 。 。 .

9个颗粒函数
import {
  commitBookDataReport,                                 // order book: bids/asks, spread, imbalance
  commitOneMinuteHistory, commitFifteenMinuteHistory,   // candle histories (last 15 / 8 …)
  commitThirtyMinuteHistory, commitHourHistory,
  commitMicroTermMath, commitShortTermMath,             // indicator tables per timeframe
  commitSwingTermMath, commitLongTermMath,
} from '@backtest-kit/signals';

const messages = [];
await commitBookDataReport('BTCUSDT', messages);
await commitOneMinuteHistory('BTCUSDT', messages);
await commitMicroTermMath('BTCUSDT', messages);
// …add only the sections you want, then call your LLM

commitHistorySetup 仅仅是按正确顺序运行这些系统的指挥者.


每个时间段计算什么

时限蜡烛指标使用大小写
微型 (单位:1米)页:1RSI(9,14),MACD(8,21,5),Stochastic,ADX(9),Bollinger(8,2),ATR,CCI,Volume, Squeeze超短条目缩放
短期 (15米)144国RSI(9)、MACD(8、21、5)、Stochastic(5、3、3)、ADX(14)、Bollinger(10、2)、Fibonacci日交易
周转期 (30米)96 (韩语)RSI(14),MACD(12,26,9),Stochastic(14,3,3),Bollinger(20,2),支持/抵抗周转贸易
长期 (1小时)100个RSI(14)、MACD(12,26,9)、ADX(14)、Bollinger(20,2)、SMA(50)、DEMA、WMA、Volume Trend趋势分析
报告结构(订购簿-蜡烛-指标)

订货簿 - 符号、最佳出价/任务、中价、分布、深度不平衡((bid_vol − ask_vol)/(bid_vol + ask_vol),+ = 购买压力),以及前20名投标/任务级别 % of total。 。 。 .

蜡烛历史 ——每烛台:时间戳,OHLC,体积,起伏,体型.

指标 宽的每栏表格;例如,微分栏:价格、RSI(9)、RSI(14)、MACD、信号、直方图、Stoch%K/%D、ADX、+DI、-DI、BB上/中/下行、ATR(5/9)、CCI(9)、Vol Trend、Momentum、ROC、Support、Resist、Squeeze、press-随后是a 数据来源 附注列出所使用的每个期间.

缓存密钥算法( K)

快取 TTL (已清出误差): 1米数据 → 1分 1分 → 15分 → 5分 → 30分 → 1分 1分 → 30分 → 订货簿 → 5分 .

  • 支助/抵抗 • 长期采用4个圆烛支点方法.
  • 费博纳奇 0级/23.6级/38.2级/50级/61.8级/78.6级/100%,分机号127.2级/161.8级/261.8%;与价格最接近的等级为1.5%可容忍度.
  • 数量 微型:SMA(5),趋势增加/下降/稳定(±20%);长期:6-烛光平均(±10%).
  • 订单-书本不平衡 —— 说 (bid − ask)/(bid + ask),正=购买压力.
自定义日志器( 默认为无操作)
import { setLogger } from '@backtest-kit/signals';
setLogger({ log: console.log, debug: console.debug, info: console.info, warn: console.warn });

为什么不自己计算指标呢?

差别
// ❌ Manual — 40+ indicators, formatting, caching, all by hand
const candles = await getCandles('BTCUSDT', '1m', 60);
const rsi  = calculateRSI(candles, 14);
const macd = calculateMACD(candles, 12, 26, 9);
const bb   = calculateBollingerBands(candles, 20, 2);
// …and the markdown formatting, and the cache
messages.push({ role: 'user', content: formatToMarkdown(rsi, macd, bb /* … */) });

// ✅ With signals
await commitHistorySetup('BTCUSDT', messages);

预计算,缓存,优化 ^ 50+ 指标 × 4 个时间段 ^ LLM-已备标记下行 ^ 与后置测试时间段同步 ^ 验证和已建错误处理 .


API 参考

导出说明
commitHistorySetup(symbol, messages)Orchestrator - 附加命令书+所有蜡烛历史+所有指标+上下文
commitBookDataReport(symbol, messages)顺序书深度和不平衡部分
commitOneMinuteHistory 编号 : commitFifteenMinuteHistory 编号 : commitThirtyMinuteHistory 编号 : commitHourHistory每个时间段的烛花历史部分
commitMicroTermMath 编号 : commitShortTermMath 编号 : commitSwingTermMath 编号 : commitLongTermMath指标表部分(1米/15米/30米/1小时)
setLogger(logger)替换默认的无操作日志
lib内部IoC服务集装箱(先进使用)
完整源图
  • function/history.function.ts ——四个 commit*History 函数. function/math.function.ts ——四个 commit*Math 函数. function/other.function.ts —— 说 commitBookDataReport + 键 commitHistorySetup。 。 。 .
  • tools/setup.tool.ts —— 说 setLogger。 。 。 . contract/{History,ReportFn}.contract.ts 报告职能合同. interfaces/Logger.interface.ts。 。 。 .
  • lib/ 木卫一: core/{di,provide,types}, (中文(简体) ), services/common/LoggerService, (中文(简体) ), services/history/{One,Fifteen,Thirty}MinuteCandleHistoryService + 键 HourCandleHistoryService, (中文(简体) ), services/math/{MicroTerm,ShortTerm,SwingTerm,LongTerm}MathService + 键 BookDataMathService (数学服务是包的批量——每包32–45 KB). 每个导出到其中之一的地图; 无 src/ 没有证件.

* 贡献

叉/ PR 打开 GitHub 图像。 。 。 .

许可证

麻省理工学院 特立奥尔斯基平板电脑

版本与发布记录

@backtest-kit/signals 共发布 177 个版本,首次发布于 2026/01/14;过去 12 个月发布了 177 个版本。

版本发布日期距今
23.7.0latest2026/10/299 天前
23.6.02026/10/299 天前
23.5.02026/10/2612 天前
23.4.02026/10/2613 天前
23.3.02026/10/2514 天前
23.2.02026/10/2414 天前

关于 @backtest-kit/signals 的常见问题

@backtest-kit/signals 是什么?

AI动力交易系统技术分析和交易信号生成库. 计算出4个时间范围内的50+指标,并生成LLM消耗的平分报告.

如何安装 @backtest-kit/signals?

在项目目录运行 npm install @backtest-kit/signals,或使用 pnpm add / yarn add / bun add。它还需要宿主项目提供 peer 依赖:typescript(^5.0.0)、backtest-kit(^23.7.0)。npm 7 及以上与 pnpm 8 及以上默认会自动安装必需的 peer 依赖,Yarn 需要手动安装。

@backtest-kit/signals 支持 TypeScript 吗?

支持。包内自带 TypeScript 类型声明(package.json 声明了 types 入口),安装后即可获得类型提示,无需再安装 @types 包。

@backtest-kit/signals 支持 ESM 还是 CommonJS?

同时提供 ES Module 与 CommonJS 入口,import 和 require() 都可以使用,打包工具会自动选择合适的版本。

@backtest-kit/signals 可以商用吗?

@backtest-kit/signals 使用 MIT 许可。宽松许可:允许商业使用、修改和再分发,通常只需在分发时保留原版权与许可声明。以上为概括,不构成法律意见,请以许可原文为准。

@backtest-kit/signals 的下载量有多少?

根据 npm 官方下载统计,@backtest-kit/signals 在 2026/10/08 – 2026/11/06 这 30 天内被下载 2,777 次,日均约 93 次。下载量会把 CI 构建、镜像同步和作为其他包依赖的安装一并计入,适合横向比较热度,不能直接等同于使用人数。

@backtest-kit/signals 还在维护吗?

最新版本 23.7.0 发布于 2026/10/29(9 天前);至今共发布 177 个版本,其中过去 12 个月发布了 177 个;首次发布于 2026/01/14。发布频率只是参考信号:功能稳定的工具可能很少需要更新,建议结合源码仓库的 issue 和提交记录判断。