生成专业A股早报/晚报,涵盖大盘指数、市场情绪、K线走势图、行业/概念板块排行、个股涨跌榜、主题新闻追踪及综合分析,支持输出 Markdown、PNG 图表和 PDF。数据来源于东方财富公开 API、同花顺公开板块页和海外公开行情接口,适用于每日报告需求。
A股日报生成器 - Skill 使用说明是一项面向实际任务的技能,主要用于Skill ID : a-share-daily-report;版本 : v1.0;
适用场景 :;每日交易前的市场预判(早报,建议 6:00-9:00 生成);收盘后的复盘总结(晚报,建议 1。它将相关步骤、工具调用和结果整理方式集中到统一流程中,帮助使用者更快完成目标并减少重复操作。从功能定位来看,该技能强调把分散的操作要求整理成清晰、可复用的处理流程,使用户能够围绕既定目标快速准备输入、选择执行方式并获得结构化结果。
实际使用前应先确认任务范围、数据来源、运行环境、必要权限和关键参数,再依据技能说明逐步执行;若输入条件不完整,应先补齐信息或采用保守配置,避免因错误假设导致结果偏离需求。执行过程中需要关注工具调用是否成功、接口或依赖是否可用、输出格式是否符合预期,并对异常提示、缺失字段和边界情况进行处理;涉及批量任务时,还应保存进度,避免中断后重复操作。该技能适合用于一次性任务,也可以接入自动化工作流,与其他技能或上层代理配合完成更完整的业务链路;在组合使用时,应明确每一步的输入输出关系,并避免不同步骤之间出现参数冲突。
Skill ID:
a-share-daily-report版本: v1.0 维护者: 阿宽 最后更新: 2026-04-02
本 Skill 提供 A 股日报自动生成能力,通过 OpenClaw 平台一键生成专业的市场早报和晚报。
适用场景:
./venv/bin/python3 -m skills.a-share-daily-report.scripts.generate_report --mode morning [--date YYYY-MM-DD] [--publish]
输出:reports/morning/A股早报-YYYYMMDD.md
内容:
./venv/bin/python3 -m skills.a-share-daily-report.scripts.generate_report --mode evening [--date YYYY-MM-DD] [--publish]
输出:reports/evening/A股晚报-YYYYMMDD.md
内容:
--publish # 启用发布到飞书
前置配置:
在项目根目录 .env 中配置:
FEISHU_NOTIFY_OPEN_ID=ou_xxxxxxxxxxxx # 飞书用户 open_id MX_APIKEY=mkt_xxxxxxxx # mx-data API 密钥(可选)
或在 config/config.yaml 中配置:
publish:
feishu_doc:
enabled: true
folder_token: "" # 文件夹 token(可选)
feishu_message:
enabled: true
target_chat_id: "ou_xxxxxxxxxxxx"
发布结果:
| 参数 | 类型 | 必填 | 默认值 | 说明 |
|---|---|---|---|---|
--mode |
str | 是 | morning |
morning(早报)或 evening(晚报) |
--date |
str | 否 | 今天 | 报告日期,格式 YYYY-MM-DD |
--publish |
flag | 否 | False | 是否发布到飞书 |
--config |
str | 否 | 默认路径 | 自定义配置文件路径 |
--outdir |
str | 否 | 配置值 | 覆盖输出目录 |
# 数据源配置
data_sources:
akshare: # 主数据源:A 股指数/板块/情绪/龙虎榜
enabled: true
cache_ttl: 3600
tushare: # 备用:资金流向
enabled: true
mx_data: # 期指数据(A50、沪深300)
enabled: true
api_key_env: "MX_APIKEY"
sina: # 新浪财经
enabled: true
cache_ttl: 1800
# 输出配置
output:
base_dir: "/Users/yibiao/Desktop/openclaw_doc/财经日报"
morning_subdir: "morning"
evening_subdir: "evening"
# 自选股路径
watchlist:
path: "config/watchlist.yaml"
# 发布配置
publish:
feishu_doc:
enabled: true
folder_token: ""
feishu_message:
enabled: false
target_chat_id: ""
pdf:
enabled: false
engine: "wkhtmltopdf"
watchlist:
- code: "002594.SZ"
name: "比亚迪"
note: "新能源车龙头"
- code: "300308.SZ"
name: "中际旭创"
note: "光模块龙头"
格式:xxxxxx.SZ(深市)、xxxxxx.SH(沪市)。建议 3-5 只核心持仓。
# 全部测试 ./venv/bin/python3 -m pytest skills/a-share-daily-report/tests/ -v # 分析模块(10 用例) ./venv/bin/python3 -m pytest skills/a-share-daily-report/tests/test_analyzer.py -v # 渲染模块(5 用例) ./venv/bin/python3 -m pytest skills/a-share-daily-report/tests/test_renderer.py -v
generate_report.py (主控制器)
├── DataFetcher (数据采集, 1600+ 行)
│ ├── get_index_data() # 指数行情
│ ├── get_market_sentiment() # 市场情绪
│ ├── get_money_flow() # 资金流向
│ ├── get_sector_data() # 板块数据
│ ├── get_lhb_data() # 龙虎榜
│ ├── get_us_market() # 美股市场
│ ├── get_futures_data() # 期指数据
│ ├── get_news() # 新闻
│ ├── get_market_overview() # 市场全景
│ ├── get_market_depth() # 盘面深度
│ ├── get_major_indices() # 主要指数
│ ├── get_global_assets() # 全球资产
│ ├── get_industry_fund_flow() # 行业资金流
│ └── get_watchlist_performance() # 自选股行情
│
├── Analyzer (分析引擎, 978 行)
│ ├── generate_summary() # 30 秒总览
│ ├── analyze_watchlist_*() # 自选股分析
│ ├── generate_trading_strategy() # 交易策略
│ ├── analyze_focus_stocks() # 关注标的
│ ├── suggest_position() # 凯利公式仓位
│ ├── analyze_market_overview() # 市场全景
│ ├── analyze_technical_analysis() # 技术面分析
│ ├── analyze_comprehensive() # 综合分析
│ ├── analyze_theme_tracking() # 主题投资追踪
│ └── classify_news() # 新闻分级
│
├── Renderer (报告渲染, 878 行)
│ ├── render_morning_report()
│ └── render_evening_report()
│
└── Publisher (发布器)
├── publish_morning_report()
└── publish_evening_report()
数据流:采集 → 分析 → 渲染 → 保存 →(可选)发布
降级策略:主源失败 → 备用源 → Mock 数据。所有源失败时仍可生成报告。
| 数据项 | 主源 | 备用源 | 说明 |
|---|---|---|---|
| 指数数据 | akshare | yfinance | 实时行情含成交额 |
| 市场情绪 | akshare (涨停/连板) | Mock | 涨停家数、连板高度 |
| 资金流向 | akshare (北向资金) | Mock | 北向/主力净流入 |
| 行业板块 | akshare | Mock | 行业/概念板块涨跌 |
| 龙虎榜 | akshare | Mock | 机构游资买卖 |
| 美股数据 | yfinance | Mock | 纳指/标普/道指 |
| 期指数据 | mx-data API | Mock | A50/沪深300 期指 |
| 新闻 | mx-search API | Mock | 财经新闻 + 分级 |
| 全球资产 | mx-data API | Mock | 美元/黄金/原油 |
# 启用详细日志 export LOG_LEVEL=DEBUG ./venv/bin/python3 -m skills.a-share-daily-report.scripts.generate_report --mode morning # 验证数据源连通性 ./venv/bin/python3 -m skills.a-share-daily-report.scripts.verify_data_sources # 验证数据真实性 ./venv/bin/python3 -m skills.a-share-daily-report.scripts.verify_data_truth
FEISHU_NOTIFY_OPEN_ID 或 target_chat_id在 data_fetcher.py 中添加方法,返回统一格式:
def get_your_data(self, dt):
return {"success": True, "data": ..., "source": "your_source"}
在 analyzer.py 中添加方法,输入 data 字典,返回统一格式。
在 renderer.py 中修改对应的 render_*_report 方法。
状态:生产就绪 最后更新:2026-04-02
相关专题
热门下载
相关下载
精品课程
共6课时 | 54.6万人学习
共89课时 | 133.4万人学习
共49课时 | 82.2万人学习