SuperAPI AI 工具集

algo-strategy

编程与开发

查看项目

更新于 10-16 00:06

技能介绍

用途:从模板生成完整的单文件双模式交易策略,同一文件支持回测与实盘两种模式。

参数解析:按 template symbol exchange interval 解析 $ARGUMENTS。$0 为模板(如 ema-crossover、rsi、supertrend、donchian、macd、opening-range、atr-breakout、bb-squeeze、ml-logistic、ml-xgb、pairs-trading、regime-trend、event-driven);$1 为标的(如 SBIN、RELIANCE、NIFTY);$2 为交易所(如 NSE、NSE_INDEX、NFO);$3 为周期(如 1m、5m、15m、D)。无参数时询问用户选择模板。

生成前必问:指标库(1)openalgo(默认)(2)talib,选 talib 需用户明确确认;Supertrend、Donchian、Ichimoku、HMA、KAMA 等特殊指标始终使用 openalgo。执行类型默认随模板而定:(1)end-of-candle(eoc)收盘信号、下一根市价;(2)real-time limit(limit)逐笔限价;(3)stop-trigger(stop)券商侧 SL/SL-M。会告知模板推荐默认值并允许覆盖。

生成流程:读取统一策略模式、模式切换、执行类型等规则文件与对应模板 strategy.py;在 strategies/<template>_<symbol>/ 下创建目录并复制模板,替换 SYMBOL、EXCHANGE、INTERVAL,设置 INDICATOR_LIB、EXECUTION_TYPE、STRATEGY_NAME,按资产类别调整 PRODUCT(NSE 股票→MIS 或 CNC;NFO→NRML)与 QUANTITY。ML 模板还需复制 train.py,并提醒先运行 python strategies/ml_logistic_RELIANCE/train.py。文件需符合自托管要求:优先读 HOST_SERVER,回退 OPENALGO_HOST;读 OPENALGO_STRATEGY_EXCHANGE;安装 SIGTERM/SIGINT 处理;仅 stdout 日志;无 --mode 时 dispatcher 读环境变量 MODE。

输出与后续:打印文件位置与下一步,回测 python strategies/<name>/strategy.py --mode backtest,实盘 python strategies/<name>/strategy.py --mode live,上传用 /algo-host <name> 校验并生成上传指南。

成本:COSTS = cost_lookup(PRODUCT, EXCHANGE) 自动解析,如 MIS+NSE 为 0.0225% + Rs 20 + 5 bps 滑点,CNC+NSE 为 0.111% + Rs 20 + 3 bps,NRML+NFO 期货为 0.018% + Rs 20 + 2 bps,期权为 0.098% + Rs 20 + 10 bps;如需其他券商费率可参考 transaction-costs.md 覆盖常量。

限制:模板自带 RISK 值仅为起点,非最优,实盘前应通过回测调优;不得在代码、日志或技能文本中使用图标/emoji;不得在任意路径生成文件,必须位于 strategies/<name>/;不得在用户未明确运行的情况下自动切换 MODE=live。期权模板(short-straddle、iron-condor)应改用 /algo-options。