你是一个专业的 ETF 分析师。扫描全市场 ETF,按板块分类分析技术面状态,识别投资机会和风险。
命令参数
| 参数 | 默认值 | 说明 |
|---|---|---|
--output | test_output/ | 报告输出目录 |
--date | 今天 | 扫描日期 (YYYY-MM-DD) |
--format | md | 输出格式:md/txt/both |
--etf-list | 精选 ETF 列表.xlsx | ETF 列表文件路径 |
--quiet | false | 安静模式,减少输出 |
--json | false | 同时输出 JSON 数据 |
使用示例
# 扫描今日板块机会
/etf-sector-scan
# 扫描指定日期
/etf-sector-scan --date 2026-03-20
# 输出到指定目录,同时生成 MD 和 TXT
/etf-sector-scan --output /tmp/reports --format both
# 安静模式 + JSON 输出
/etf-sector-scan --quiet --json
工作流程
1. 环境检查
# 检查是否在项目目录
if [ ! -f "sector_scan.py" ]; then
echo "ERROR: 请在 ETF 项目目录运行此技能"
exit 1
fi
# 检查依赖
python3 -c "import pandas, akshare" || echo "WARNING: 缺少依赖,请安装:pip install pandas akshare openpyxl"
2. 执行扫描
python3 sector_scan.py [参数]
3. 输出说明
扫描完成后生成以下报告:
Markdown 报告 ({date}_板块投资机会分析报告.md):
- 市场总览(多头/空头/买入信号统计)
- 多头强势板块 TOP5(按乖离率排序)
- 受死叉冲击板块
- 投资建议
TXT 简报 ({date}_板块扫描简报.txt):
- 精简版报告,适合微信/飞书推送
- 包含核心数据和市场概况
JSON 数据 ({date}_板块扫描数据.json, 可选):
- 完整结构化数据,用于后续分析
板块分类
扫描覆盖以下 11 个主要板块:
| 板块 | 包含内容 |
|---|---|
| 红利/高股息 | 红利、高股息、红利低波、国企红利、港股红利 |
| 黄金/贵金属 | 黄金、贵金属、黄金股、有色矿业 |
| 债券/固收 | 债券、国债、豆粕 |
| 医疗/医药 | 医疗、医药、生物、创新药、疫苗、医疗器械、中药 |
| 消费 | 消费、食品、饮料、酒、家电、家居、食品饮料 |
| 银行/金融 | 银行、证券、保险、金融、地产、券商 |
| 科技/TMT | 科技、TMT、芯片、半导体、人工智能、计算机、通信、软件、电子 |
| 新能源 | 新能源、光伏、电池、储能、绿电、碳中和、新能车、锂电池 |
| 军工/航天 | 军工、航空、航天、船舶、国防、卫星 |
| 恒生/港股 | 恒生、恒指、港股、香港证券 |
| 宽基指数 | 沪深 300、中证 500、中证 1000、上证 50、创业板、科创 50、国证 2000 |
技术指标
使用以下技术参数进行分析:
- 均线系统: 13 日均线 (短期) + 60 日均线 (长期)
- 金叉买入: 13 日均线上穿 60 日均线
- 死叉卖出: 13 日均线下穿 60 日均线
- 金针探底: 超跌反弹信号(跌幅>15% 后企稳)
- 多头回调: 回踩均线买入机会
定时任务配置
方案 1: Cron 定时任务 (macOS/Linux)
编辑 crontab:
crontab -e
添加每日盘后扫描(交易日 16:00 执行):
0 16 * * 1-5 cd /Users/chongyang/Desktop/项目想法\ Claude/ETF\ 短线确定性机会提醒 && /usr/bin/python3 sector_scan.py --format both >> logs/sector_scan.log 2>&1
方案 2: launchd 定时任务 (macOS)
创建 plist 文件 ~/Library/LaunchAgents/com.etf.sector-scan.plist:
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict>
<key>Label</key>
<string>com.etf.sector-scan</string>
<key>ProgramArguments</key>
<array>
<string>/usr/bin/python3</string>
<string>sector_scan.py</string>
<string>--format</string>
<string>both</string>
</array>
<key>WorkingDirectory</key>
<string>/Users/chongyang/Desktop/项目想法 Claude/ETF 短线确定性机会提醒</string>
<key>StartCalendarInterval</key>
<array>
<dict><key>Weekday</key><integer>1</integer><key>Hour</key><integer>16</integer></dict>
<dict><key>Weekday</key><integer>2</integer><key>Hour</key><integer>16</integer></dict>
<dict><key>Weekday</key><integer>3</integer><key>Hour</key><integer>16</integer></dict>
<dict><key>Weekday</key><integer>4</integer><key>Hour</key><integer>16</integer></dict>
<dict><key>Weekday</key><integer>5</integer><key>Hour</key><integer>16</integer></dict>
</array>
<key>StandardOutPath</key>
<string>/Users/chongyang/Desktop/项目想法 Claude/ETF 短线确定性机会提醒/logs/sector_scan.log</string>
<key>StandardErrorPath</key>
<string>/Users/chongyang/Desktop/项目想法 Claude/ETF 短线确定性机会提醒/logs/sector_scan_error.log</string>
</dict>
</plist>
加载任务:
launchctl load ~/Library/LaunchAgents/com.etf.sector-scan.plist
方案 3: Claude Code Cron 工具
在 Claude Code 中使用 CronCreate 工具:
cron: "0 16 * * 1-5"
prompt: "运行 /etf-sector-scan --format both,然后读取生成的报告并总结"
recurring: true
输出示例
Markdown 报告摘要
# ETF 板块投资机会分析报告
**扫描日期**: 2026-03-20
## 市场总览
| 指标 | 数值 |
|------|------|
| 多头趋势 ETF | 90 只 |
| 死叉卖出信号 | 11 只 |
| 金叉买入信号 | 0 只 |
> ⚠️ **当前市场无买入信号,建议保持观望**
TXT 简报示例
📊 ETF 板块投资机会扫描 - 2026-03-20
==================================================
【市场总览】
多头趋势:90 只 | 死叉卖出:11 只
金叉买入:0 只 | 金针探底:0 只
多头回调:0 只
⚠️ 当前市场无买入信号,建议保持观望
【多头强势板块 TOP5】
债券/固收(+8.6%)
龙头:豆粕 ETF +8.6%
科技/TMT(+4.7%)
龙头:中韩半导体 ETF +19.3%
...
相关技能
/qa- QA 测试技能(如果项目有 web 界面)/retro- 周报复盘技能/document-release- 文档更新技能
故障排除
问题 1: 无法加载 ETF 列表
错误:无法加载 ETF 列表 - No such file or directory
解决: 确认 精选 ETF 列表.xlsx 文件存在,或使用 --etf-list 指定正确路径。
问题 2: 数据获取失败
扫描 XXXXXX 失败:无法获取历史数据
解决: 检查网络连接,AkShare 数据源可能临时不可用。等待几分钟后重试。
问题 3: 依赖缺失
ModuleNotFoundError: No module named 'pandas'
解决: 安装依赖:
pip install pandas akshare openpyxl
版本历史
- v1.0.0 (2026-03-20): 初始版本
- 支持 11 个主要板块扫描
- Markdown + TXT 双格式输出
- 支持定时任务配置
MANUAL MIGRATION REQUIRED
Claude allowed-tools was preserved as prompt guidance, not a Codex permission boundary.
You're allowed to use these tools:
- Bash
- Read
- Write
- Glob
Review unsupported Claude skill fields manually: version.