Skill flagged — review recommended

ClawHub Security found sensitive or high-impact capabilities. Review the scan results before using.

astock-report

A股报告生成与推送技能。触发方式:晨报(cron 08:00)、晚报(cron 20:00)、收盘小结(cron 15:00)、盘中预警(cron 每5分钟)、财经周末要闻(cron 周五20:00)、IPO周报(cron 周六09:00)。内置两套系统:①投资者情绪打分(6维度,满分100)②AI后市展望(收盘...

Audits

Suspicious

Install

openclaw skills install a-stock-report

A股报告系统

A股数据驱动型报告自动生成与推送系统,支持晨报 / 收盘小结 / 晚报 / 盘中预警 / IPO周报 / 财经周末要闻


快速开始

# 收盘小结(独立脚本,直接推送,无需LLM生成内容)
python3 /workspace/skills/A-stock-report/scripts/send_close_summary.py
python3 /workspace/skills/A-stock-report/scripts/send_close_summary.py --date 20260413

# 晚报
python3 /workspace/skills/A-stock-report/scripts/send_evening_report.py

# 晨报(需LLM先生成内容,写入 /tmp/morning_report_content.txt)
python3 /workspace/skills/A-stock-report/scripts/send_morning_report.py

# 财经周末要闻(需LLM先生成内容,写入 /tmp/weekend_news_content.txt)
python3 /workspace/skills/A-stock-report/scripts/send_weekend_news.py
python3 /workspace/skills/A-stock-report/scripts/send_weekend_news.py --extract-only  # 仅提取情绪数据

# IPO周报
python3 /workspace/skills/A-stock-report/scripts/send_ipo_report.py

# 盘中预警
python3 /workspace/skills/A-stock-report/scripts/send_intraday_alert.py

执行模式

收盘小结、晚报、晨报 采用不同模式:

  • 收盘小结:单一 Python 脚本,内置全部逻辑(取数 → 打分 → 生成报告 → 推送),cron 直接触发,无需 LLM 生成内容。
  • 晚报:两步(LLM 生成内容 → 脚本落地 + 推送),cron prompt 控制。
  • 晨报:两步(LLM 生成内容 → 脚本落地 + 推送),cron prompt 控制。

数据来源

数据来源接口
六大指数(点位/涨跌幅)腾讯实时 APIqt.gtimg.cn
富时A50期货(实时)腾讯实时 APIqt.gtimg.cn/q=hf_A50
涨跌停家数AKSharestock_zt_pool_em
炸板率AKSharestock_zt_pool_em
北向资金AKSharestock_hsgt_north_net(列名:北向净买额,需 .fillna(0)
概念板块涨跌(前5/后5)妙想 MX → cron LLM兜底claw/query(概念板块涨幅/跌幅前10)
行业板块涨跌(申万)AKSharestock_board_industry_name_em
两融余额/融资余额AKSharestock_margin_detail
两融交易额/融资买入额AKSharestock_margin_detail
两融余额/A股流通市值AKSharestock_margin_detail + 总市值
成交额(今日实时)腾讯实时 API沪市+深市
成交额(历史/两融同日期)AKSharestock_sse_deal_daily + stock_szse_summary
沪深300 PE / 历史分位AKShare + 腾讯AKShare + PE
股市风险溢价本地计算PE → 国债收益率
主力净流入/行业资金妙想 MXclaw/query
盘面点评/后市展望妙想 MXclaw/news-search
舆情/财经要闻妙想 MX / batch_web_searchclaw/news-search

文件名日期规则

报告文件名日期取值
收盘小结--date 参数值;无参数则取当天
晚报--date 参数值;无参数则取当天
晨报生成当天
财经周末要闻生成当天

注意:晚报内容里的两融余额/北向数据标注日期(如"两融余额(04月13日)")是数据对应的上一交易日,与文件名日期可能差1天。


周末要闻情绪轨迹数据来源

一周情绪轨迹从历史报告MD文件中提取,合并规则:

指标来源key取法
涨停家数/情绪打分收盘小结 收盘小结_YYYYMMDD.md从文件名提取 YYYYMMDD
北向资金/两融余额/两融比例晚报 晚报_YYYYMMDD.md报告内容里两融余额那行提取日期作为 key

两套数据以交易日 key 对齐合并,保证周一到周五趋势线一致。


防并发锁

各脚本使用独立的锁文件,同时运行互不干扰:

脚本锁文件
send_close_summary.py/tmp/a_stock_close_summary.lock
send_evening_report.py/tmp/a_stock_evening.lock
send_morning_report.py/tmp/a_stock_morning.lock
send_weekend_news.py/tmp/a_stock_weekend.lock
send_ipo_report.py/tmp/a_stock_ipo.lock
send_intraday_alert.py/tmp/a_stock_intraday.lock

报告模板

晨报

📰 【股市晨报】YYYY年MM月DD日(周X)

━━━ 隔夜全球市场 ━━━
【美股收盘】
▪ 道琼斯:XXXXX.XX点,+/-X.XX%
▪ 标普500:XXXXX.XX点,+/-X.XX%
▪ 纳斯达克:XXXXX.XX点,+/-X.XX%(可附"X连涨/连跌X日")
▪ VIX恐慌指数:XX.XX(+/-X.XX%),恐慌等级:【XX区间】

【港股及A50】
▪ 恒生指数:XXXX,+/-X.XX%(附简要背景)
▪ 富时A50期货:XXXXX点,+/-X.XX%,偏强/偏弱运行【预判A股明日开盘】

【大宗商品】(可选)
▪ WTI原油:XXX美元/桶,+/-X.XX%
▪ 现货黄金:XXXX美元/盎司,+/-X.XX%

━━━ 财经要闻 ━━━
【1】(标题)|✅利好/❌利空/⚠️中性 对A股影响
  点评:(2-3句,分析事件对A股情绪/板块的影响)
【2】(标题)|✅利好/❌利空/⚠️中性 对A股影响
  点评:...
(6-10条,每条含:标题、✅/❌/⚠️标签、2-3句逻辑分析)

━━━ 今日操作建议 ━━━
【大盘研判】
(综合外围市场、宏观政策、量能等因素,给出2-3句综合判断)

【操作建议】
1. 【板块/策略】(期限):具体建议+附标的
2. 【板块/策略】(期限):...

【风险提示】
⚠️ (1-3条,最重要的风险)

⚠️ 仅供参考,不构成投资建议。股市有风险,投资需谨慎。

收盘小结

📊 【A股收盘小结】YYYY年MM月DD日

━━━ 一,主要股指表现 ━━━
• 上证指数:XXXX.XX,↑/↓X.XX%
• 深证成指:XXXX.XX,↑/↓X.XX%
• 创业板指:XXXX.XX,↑/↓X.XX%
• 科创50:XXXX.XX,↑/↓X.XX%
• 沪深300:XXXX.XX,↑/↓X.XX%
• 中证500:XXXX.XX,↑/↓X.XX%

━━━ 二,资金流向 ━━━
  主力资金:净流入/流出XX亿(全市场)
  🔺 涨幅前五:
    · 板块名+X.XX%
    · 板块名+X.XX%
    · 板块名+X.XX%
    · 板块名+X.XX%
    · 板块名+X.XX%
  🔻 跌幅前五:
    · 板块名-X.XX%
    · 板块名-X.XX%
    · 板块名-X.XX%

━━━ 四,量化情绪打分 ━━━
━━━ 四,量化情绪打分 ━━━(满分100,6项等权平均)
• 涨停XX家 → X分(满分15)
• 涨跌停比:XX倍 → X分(满分15)
• 北向净流入:+XX亿 → X分(满分20)
• 主力净流入:+XX亿 → X分(满分20)
• 炸板率:+XX% → X分(满分20)
• 沪深300:+X.XX% → X分(满分10)
━━━━━━━━━━━━
综合评分:XX/100 🟢做多|🟡偏多|⚪分歧|🟠偏空谨慎|🔴冰点

━━━ 五,后市展望 ━━━
(脚本固定文案,cron触发时AI自动补充)

━━━ 数据来源:腾讯财经·东方财富AKShare ━━━
⚠️ 仅供参考,不构成投资建议。股市有风险,投资需谨慎。

晚报

📋 【A股晚报】YYYY年MM月DD日

━━━ A股收盘 ━━━
• 上证指数:XXXX.X,↑/↓X.XX%(可附重要说明,如"创X年X月以来新高")
• 深证成指:XXXX.X,↑/↓X.XX%
• 创业板指:XXXX.X,↑/↓X.XX%(附说明)
• 科创50:XXXX.X,↑/↓X.XX%
• 沪深300:XXXX.X,↑/↓X.XX%
• 中证500:XXXX.X,↑/↓X.XX%
• 成交额:X.XX万亿元

━━━ 亚太股市 ━━━
• 恒生指数:XXXX,↑/↓X.XX%(附简要背景,如"美伊封锁升级,港股承压")
• 日经225:XXXXX,↑/↓X.XX%(附背景)
• 韩国综合:XXXX,↑/↓X.XX%(附背景)

━━━ 市场风险偏好 ━━━
• 两融余额(MM月DD日):XXXXX亿,较前日+/-XXXX亿
• 两融余额/A股流通市值(MM月DD日)= X.XX%
  → 安全区间 ✅(或"⚠️预警/高危")
• 两融交易额/A股成交额(MM月DD日)= X.X%
  阈值:<7%保守 | 7-11%中性 | >11%过热
  → 比例=X.X% → 中性/过热/保守
• 股市风险溢价(MM月DD日)= X.XX%
  阈值:<3%高估 | 3-6%中性 |>6%低估
  → 溢价率=X.XX% → 高估/中性/低估
• 沪深300 PE = XX.XX,近5年分位点 XX.X%

━━━ 财经要闻 ━━━
【1】(标题)|✅利好/❌利空/⚠️中性 对A股影响
  点评:(2-3句,分析事件对A股情绪/板块的影响)
【2】...(共5-8条)

━━━ 今日操作建议 ━━━
【大盘研判】(综合判断,2-3句)
【操作建议】
1. 【板块/策略】(期限):具体建议
2. 【板块/策略】(期限):...
【风险提示】(1-3条)

⚠️ 仅供参考,不构成投资建议。股市有风险,投资需谨慎。

财经周末要闻(cron 触发后 LLM 生成)

📰 【财经周末要闻】过去48-72小时

━━━ 十条重要财经要闻 ━━━
【1】(标题)→ ✅利好/❌利空
  逻辑:...  交易风险提示:...

━━━ 一周情绪轨迹 ━━━
• 涨停家数趋势:周一X家 → 周二X家 → ... → 周五X家
• 北向资金趋势:周一+/-XX亿 → ... → 周五+/-XX亿
• 两融余额/A股流通市值:周一X.XX% → ... → 周五X.XX%
• 两融交易额占比:周一X.X% → ... → 周五X.X%
• 量化情绪打分:周一XX分 → ... → 周五XX分
• 整体趋势:[升温/降温/震荡]

━━━ 整体市场情绪研判 ━━━
情绪指标总结 | 核心驱动因素 | 当前风险点 | 下周操作参考

⚠️ 仅供参考,不构成投资建议。

定时任务(cron)

任务时间(北京时间)sessionTargetwakeMode
📰 晨报-推送周一~五 08:00isolatednow
📉 收盘小结-推送周一~五 15:30isolatednow
📋 晚报-推送周一~五 20:00isolatednow
📈 盘中预警交易时段每5分钟(9:30-11:29, 13:00-14:59)isolatednow
📰 财经周末要闻周日 20:00isolatednow
📋 A股IPO周报周五 09:00isolatednow

wakeMode 已设为 now,确保每次按时执行。

盘中预警触发时段说明:严格对应 A 股实盘集合竞价规则(9:15-9:25 开盘,11:30-12:59 休市,15:00 收盘)。脚本通过 is_trading_window() 函数判断,仅在 9:30-11:29 与 13:00-14:59 内触发。


配置文件

  • Webhook:/workspace/keys/wecom_webhook.ini
  • MX_APIKEY(妙想):/workspace/keys/mx_api_key.ini
  • 加载器:/workspace/keys/keys_loader.py

MX_APIKEY 格式(注意 option 名必须为 mkt_api_key):

[mx_api_key]
mkt_api_key = mkt_XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX

常见问题

Q:生成后如何做质量检查? A:生成报告后必须检查以下四项:

  1. 日期检查:报告第一行日期 == 文件名日期 == 当天实际日期(三者必须一致)
  2. 星期检查weekday() 映射周日到周六正确(0=周一,6=周日)
  3. 数据完整性:涨跌停统计、风险偏好、操作建议四段落齐全
  4. 时效性:数据陈旧(>2个交易日)时在报告内注明

Q:如何判断涨停情绪? A:阈值如下:

  • 涨停家数 ≥ 50 → 🟢 极强
  • 涨停家数 ≥ 30 → 🟡 偏强
  • 涨停家数 ≥ 15 → 🟠 一般
  • 涨停家数 < 15 → 🔴 偏弱

Q:如何判断炸板率? A:阈值如下:

  • 炸板率 < 20% → 强势(炸板率低)
  • 炸板率 20-40% → 中性
  • 炸板率 40-55% → 偏弱
  • 炸板率 ≥ 55% → 弱势

Q:北向资金显示 0 亿? A:可能是接口数据为空(节假日/非交易日),或列名变更。检查 北向净买额 列是否存在,若有 NaN 值需用 .fillna(0)

Q:两融数据比当天少一天? A:正常现象。两融数据在当天收盘后约 1~2 小时后更新,晚报/收盘小结取到的是上一交易日数据。

Q:定时任务重复推送? A:检查 wakeMode 是否为 now,并确认脚本锁文件(/tmp/a_stock_*.lock)已生效。

Q:财经要闻/明日操作建议为空? A:晚报 cron 已配置 batch_web_search,AI 触发时自动搜索并填充。如仍为空说明搜索未返回有效结果。

Q:报告内容日期和文件名不对应? A:收盘小结文件名=报告日期;晚报文件名=生成当天日期,内容日期=上一交易日;周末要闻以内容里两融余额标注的日期为 key,与收盘小结文件名日期对齐合并。

Q:如何使用 --date 指定历史日期? A:python3 send_close_summary.py --date 20260413(只支持收盘小结)