Install any skill in seconds. Free to start, no credit card required.
Get Started Free →股指期货/期现价差分析。当用户说"股指期货"、"IF"、"IC"、"IM"、"IH"、"期指"、"基差"、"期现价差"、"升水"、"贴水"、"futures"、"期货贴水多少"、"对冲"、"期现套利"时触发。分析股指期货(IF沪深300/IC中证500/IH上证50/IM中证1000)的基差变化、期限结构、持仓变动,辅助判断市场情绪和套利机会。支持研报风格(formal)和快速查看风格(brief)。
.claude/skills/aifinlab-a-share-futures-analysis/SKILL.md| Test case | Without → With | Effect | Δ tokens | Δ turns |
|---|---|---|---|---|
| case-10 | ✗→✓ | ▲ Improved | 175% | 0% |
| case-13 | ✗→✓ | ▲ Improved | 33% | 0% |
| case-19 | ✗→✓ | ▲ Improved | 51% | 0% |
| case-04 | ✓→✗ | ▼ Worse | 41% | 0% |
| case-22 | ✓→✗ | ▼ Worse | -25% | 0% |
bashSCRIPTS="$SKILLS_ROOT/cn-stock-data/scripts" # 现货指数实时行情(IF/IH/IC/IM 对应现货) python "$SCRIPTS/cn_stock_data.py" quote --code SH000300,SH000016,SH000905,SH000852 # SH000300=沪深300(IF), SH000016=上证50(IH), SH000905=中证500(IC), SH000852=中证1000(IM) # 现货指数K线(近30个交易日,用于计算均线和走势对比) python "$SCRIPTS/cn_stock_data.py" kline --code SH000300 --freq daily --start [30日前日期]
python# 股指期货行情(akshare) import akshare as ak # 当月合约日线行情(symbol 格式:品种代码+0 表示当月连续) df_if = ak.futures_zh_daily_sina(symbol='IF0') # IF当月连续 df_ih = ak.futures_zh_daily_sina(symbol='IH0') # IH当月连续 df_ic = ak.futures_zh_daily_sina(symbol='IC0') # IC当月连续 df_im = ak.futures_zh_daily_sina(symbol='IM0') # IM当月连续 # 下月合约:IF1, IH1, IC1, IM1 # 当季合约:IF2, IH2, IC2, IM2 # 下季合约:IF3, IH3, IC3, IM3 # 具体合约(如 IF2603 = 2026年3月合约) df_contract = ak.futures_zh_daily_sina(symbol='IF2603')
web 搜索补充(数据源无法覆盖的关键信息):
Step 1: 期指+现货数据获取 获取四大股指期货品种的当月/下月/当季/下季合约行情,以及对应现货指数实时报价: | 品种 | 期货代码 | 对应现货 | 现货代码 | 合约月份 | |------|---------|---------|---------|---------| | IF | IF0/IF1/IF2/IF3 | 沪深300 | SH000300 | 当月/下月/当季/下季 | | IH | IH0/IH1/IH2/IH3 | 上证50 | SH000016 | 当月/下月/当季/下季 | | IC | IC0/IC1/IC2/IC3 | 中证500 | SH000905 | 当月/下月/当季/下季 | | IM | IM0/IM1/IM2/IM3 | 中证1000 | SH000852 | 当月/下月/当季/下季 |
Step 2: 基差计算 计算各品种基差及年化基差率:
输出基差表: | 品种 | 当月基差 | 当月年化(%) | 下月基差 | 下月年化(%) | 贴水/升水 | |------|---------|-----------|---------|-----------|----------|
Step 3: 期限结构分析 分析同一品种四个合约的价格排列:
Step 4: 持仓分析 通过 web 搜索获取前20名席位持仓数据:
Step 5: 综合研判 & 输出 汇总分析,给出市场情绪判断:
| 维度 | formal(策略报告) | brief(快速查看) | |------|------------------|-----------------| | 品种覆盖 | IF/IH/IC/IM 全品种分析 | 仅用户指定品种或 IF+IC | | 合约覆盖 | 当月/下月/当季/下季全分析 | 仅当月合约 | | 基差分析 | 基差+年化基差率+历史分位 | 基差及升贴水方向 | | 期限结构 | 完整结构分析+变化趋势 | 正向/反向一句话 | | 持仓分析 | 前20席位多空+主力变化 | 净多/净空方向 | | 套利分析 | 期现套利+跨期价差机会 | 无 | | 结论 | 客观多空分析+风险提示 | 情绪方向判断 | | 免责声明 | 需要(期货高风险) | 不需要 |
默认风格:brief
python# 调用 skill result = run_skill({ "param1": "value1", "param2": "value2" })
bashpython scripts/run_skill.py --input data.json
| Case | Status | Duration (ms) | Turns | Tokens | Tool calls | ||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| Without | With | Δ | Without | With | Δ | Without | With | Δ | Without | With | Δ | ||
case-01 | fail→fail | 17,121 | 6,110 | -64% | 1 | 1 | 0% | 2,571 | 2,276 | -11% | 0 | 0 | — |
case-02 | fail→fail | 32,555 | 13,537 | -58% | 1 | 1 | 0% | 5,295 | 2,683 | -49% | 0 | 0 | — |
case-03 | fail→fail | 26,714 | 10,222 | -62% | 1 | 1 | 0% | 3,649 | 2,515 | -31% | 0 | 0 | — |
case-04 | pass→fail | 12,249 | 9,711 | -21% | 1 | 1 | 0% | 1,673 | 2,360 | +41% | 0 | 0 | — |
case-05 | fail→fail | 16,758 | 21,021 | +25% | 1 | 1 | 0% | 2,445 | 5,489 | +124% | 0 | 0 | — |
case-22 | pass→fail | 26,695 | 14,983 | -44% | 1 | 1 | 0% | 3,255 | 2,448 | -25% | 0 | 0 | — |
case-23 | pass→fail | 26,458 | 41,634 | +57% | 1 | 1 | 0% | 3,445 | 2,599 | -25% | 0 | 0 | — |
case-06 | pass→pass | 22,150 | 20,162 | -9% | 1 | 1 | 0% | 3,036 | 4,819 | +59% | 0 | 0 | — |
case-07 | pass→pass | 18,043 | 14,549 | -19% | 1 | 1 | 0% | 2,290 | 4,003 | +75% | 0 | 0 | — |
case-08 | pass→pass | 17,166 | 31,538 | +84% | 1 | 1 | 0% | 2,328 | 3,679 | +58% | 0 | 0 | — |
case-09 | pass→fail | 16,289 | 12,584 | -23% | 1 | 1 | 0% | 2,163 | 2,525 | +17% | 0 | 0 | — |
case-10 | fail→pass | 8,491 | 10,901 | +28% | 1 | 1 | 0% | 1,407 | 3,871 | +175% | 0 | 0 | — |
case-11 | pass→pass | 36,178 | 17,244 | -52% | 1 | 1 | 0% | 3,057 | 4,551 | +49% | 0 | 0 | — |
case-12 | pass→pass | 6,877 | 6,374 | -7% | 1 | 1 | 0% | 1,193 | 3,029 | +154% | 0 | 0 | — |
case-13 | fail→pass | 11,117 | 5,843 | -47% | 1 | 1 | 0% | 2,267 | 3,024 | +33% | 0 | 0 | — |
case-14 | pass→pass | 27,253 | 3,612 | -87% | 1 | 1 | 0% | 3,208 | 2,643 | -18% | 0 | 0 | — |
case-15 | pass→pass | 16,919 | 6,354 | -62% | 1 | 1 | 0% | 1,992 | 2,854 | +43% | 0 | 0 | — |
case-16 | pass→fail | 20,702 | 44,296 | +114% | 1 | 1 | 0% | 2,987 | 7,322 | +145% | 0 | 0 | — |
case-17 | pass→pass | 24,271 | 17,479 | -28% | 1 | 1 | 0% | 3,101 | 3,782 | +22% | 0 | 0 | — |
case-18 | pass→pass | 22,847 | 7,966 | -65% | 1 | 1 | 0% | 4,095 | 3,489 | -15% | 0 | 0 | — |
case-19 | fail→pass | 24,777 | 15,955 | -36% | 1 | 1 | 0% | 2,973 | 4,483 | +51% | 0 | 0 | — |
case-20 | pass→fail | 28,167 | 11,401 | -60% | 1 | 1 | 0% | 4,385 | 2,423 | -45% | 0 | 0 | — |
case-21 | fail→fail | 13,430 | 11,237 | -16% | 1 | 1 | 0% | 1,706 | 2,449 | +44% | 0 | 0 | — |
DecimalAI ran this skill against gemini-3.6-flash twice over the same eval suite — once with the skill loaded and once without — and compared the two runs case by case. 23 cases were attempted, and 13 counted toward the lift figure. The other 10 produced results that are not comparable between the two arms, so they are excluded from the headline rather than averaged into it. The headline lift of -13 percentage points is the difference between those two pass rates over the 13 comparable cases. 9 cases got worse with the skill loaded, and they are included in that figure.
Without the skill loaded, the model failed this case. With it loaded, the same prompt on the same model passed. This is one improved case from the latest verified run; every case, including any that regressed, is in the table above.
Other measured skills in the registry, with their headline benchmark lift.