SuperAPI AI 工具集

chart-indicator

测试与质量

查看项目

更新于 10-16 00:06

技能介绍

用途:为 OpenAlgo /trading 图表终端(openalgo-charts)创建、移植或调试自定义图表指标。指标会出现在选择器中,并自带生成的设置对话框、图例行和布局持久化,无需构建步骤、无需重启。注意:这是图表的 JavaScript 路径,与策略、扫描器和回测所用的 Python openalgo.ta 指标完全不同(语言、运行时、API 均不同);若请求针对 Python 指标,则本技能不适用。

核心规则:绝不直接把文件写入 strategies/indicators/。该目录被实时图表导入,运行时失败往往静默(如某列少一个元素、plot key 与 calc 返回不匹配时会什么都不画也不报错)。正确流程:先写入草稿路径,校验,通过后再安装。示例: node .claude/skills/chart-indicator/validate.mjs <scratch>/my_indicator.js node .claude/skills/chart-indicator/validate.mjs <scratch>/my_indicator.js --install 仅当零错误时才 --install 复制到 strategies/indicators/,否则退出码 1。不要安装未通过的指标,不要削弱校验器来通过,警告需报告用户。

不要运行 npm install:完整前端树 560 MB、521 个包,而校验器只需两个 ES 模块共 368 KB,会自行查找:先 frontend/node_modules/openalgo-charts,再自身 .cache/,最后按 frontend/package.json 固定版本仅下载该包(零依赖,约一秒,之后缓存)。若获取失败(无网络、npm 不可用),需告知用户并让其选择:修复连接,或跳过预检依赖图表自身校验(加载时以 toast 报告相同结构问题);不得静默跳过校验。

版本要点:描述符契约自本技能编写以来只增加了可选字段,旧指标在固定构建上继续可用。2.5.1 起 AlertControllerOptions.spentLines:'hide' 可使已触发/过期警报隐藏其线而保留记录;2.5.0 ChartTableOptions.cellWidth 支持 'auto',单元格自动剪切文字;2.4.8 支持按住拖动平移;2.4.7 警报线可拖动;2.4.6 新增 hasSource、markerAnchor、图例可读等可选字段;2.4.5 可选持仓量与宿主合约;2.4.0 提供 securitySeries、plot.offset、Marker 形状、fills[].overlay、plot.colorParts、inputs interval/time、ctx.requestBars 等;2.3.0 起图表可做多标的算术表达式(transform 层,不属于自定义指标 API);2.2.1 输入可带 tooltip、plot 可设 priceFormat;更低版本各有绘图工具、品牌水印、缩放、Tier-2 数据状态、精度按窗格、calc 每帧运行一次等变化。使用 2.4.0 及以上特性前应先用 node -p 查看已安装版本,旧固定版本上不要使用。

工作流:先完整阅读请求,识别被绘制内容、信号、跨 bar 状态、每日/会话重置项;写公式前查 reference/cookbook.md;避免直接写 indicators 目录,先草稿后校验再安装。