{
  "title": "Cron Job: 快速盯盘-15分钟",
  "type": "盯盘",
  "created_at": "2026-06-01T16:55:42.985685",
  "summary": "**Job ID:** d3797d924ddc\n**Run Time:** 2026-06-01 16:31:42\n**Schedule:** 0,15,30,45 9-16 * * 1-5\n[IMPORTANT: You are running as a scheduled cron job. DELIVERY: Your final response will be automaticall",
  "content": "# Cron Job: 快速盯盘-15分钟\n\n**Job ID:** d3797d924ddc\n**Run Time:** 2026-06-01 16:31:42\n**Schedule:** 0,15,30,45 9-16 * * 1-5\n\n## Prompt\n\n[IMPORTANT: You are running as a scheduled cron job. DELIVERY: Your final response will be automatically delivered to the user — do NOT use send_message or try to deliver the output yourself. Just produce your report/output as your final response and the system handles the rest. SILENT: If there is genuinely nothing new to report, respond with exactly \"[SILENT]\" (nothing else) to suppress delivery. Never combine [SILENT] with content — either report your findings normally, or say [SILENT] and nothing more.]\n\n【快速盯盘-15分钟】\n📋 价位触发规则：操作建议必须基于明确的价格触发条件\n- 现价未触及止盈/止损/加仓价 → 写👀观望 + 写明条件（如\"等待站稳300以上\"）\n- 触及价位的 → 写具体操作+仓位比例+价格\n- 示例：海博思创现价297，止盈位300。未触及→观望\"等待站稳300以上减仓50%\"\n- 示例：海博思创现价302，已触及300止盈位→🎯止盈：300以上减50%（208→104股）\n\n⚠️ 操作建议格式铁律：每条建议必须包含具体价格+仓位比例\n禁止输出：\"部分止盈\"\"适当减仓\"\"关注\"\"观望\"等模糊词\n正确格式示例：\n  🎯 止盈：300以上减50%（200股→100股），回落至280全部接回\n  🤝 持有：现价300，成本257.7，浮盈+16.5%，暂持\n  🛑 止损：跌破260清仓（200股）\n  🟢 加仓：回落至270~275加仓100股（仓位12%→18%）\n  👀 观望：等待站稳295以上再考虑\n\n⚠️ 表情符号规则：每只股票的操作建议前面必须加对应表情符\n🟢=买入/加仓  🔴=卖出/减仓  👀=观望  🤝=持有  🎯=止盈  🛑=止损\n\n一、时间检查。早于9:30→SILENT。午休11:31~12:59→SILENT\n\n二、拉实时行情 + 读数据源\n读取 /home/hmo/web-dashboard/data/portfolio.json 和 /home/hmo/web-dashboard/data/watchlist.json 获取持仓+自选列表\n用curl qt.gtimg.cn拉实时行情（持仓股+自选股）\n无触发→SILENT\n\n三、有信号时分析：每只异常±3%+输出。格式：代码|名称|现价|涨跌%|建议【时效】|原因\n⚠️ 港股价格完整性校验：从行情原始字符串取值，不用浮点数（避免精度丢失）。\n示例：百济神州行情169.90输出169.90（非69.90），华虹行情155.30输出155.30（非55.30）。\n\n四、输出：「📊 快速盯盘 | 时间」+ 信号内容。系统自动推，不做外部推送。\n\n六、XMPP推送和dashboard同步（最终输出后执行）\n1. 将报告全文用docker exec推送到XMPP：\n   docker exec ejabberd ejabberdctl send_message chat zhiwei@yoin.fun hmo@yoin.fun \"\" \"报告内容\"\n2. 将结构化分析数据POST到dashboard：\n   curl -X POST http://localhost:8899/api/analysis/batch -H 'Content-Type: application/json' -d '{\"holdings\":[每只股票的分析],\"watchlist\":[自选股的分析]}'\n3. 输出保留原样（用于本地存档），不做[SILENT]\n\n\n⚠️ 价格合理性校验：每只股票生成买入区间后，必须校验现价与买入区间是否匹配\n- 如果现价 < 买入区间下限 × 0.5（现价比买入区低一半以上）→ 标注⚠️数据异常，标记为\"价格异常需重估\"\n- 如果现价 > 买入区间上限 × 2（现价比买入区高一倍以上）→ 标注⚠️数据异常，标记为\"价格异常需重估\"\n- 港股（代码以0开头或含HK标识）必须用港股价格参考，不套用A股区间\n- 示例：华虹半导体01347港股现价约25-30，买入区间125-130是A股数据 → 明显异常\n\n## Response\n\nSince it's 16:30 (after market close for both A-shares at 15:00 and HK at 16:00), and the portfolio analysis was already updated at 16:17, there are no new triggers in this 15-minute window. Let me verify the stop-loss thresholds against closing prices:\n\n**Portfolio stop-loss vs actual closing prices:**\n- 法拉电子: SL 150, close 154.40 → ✅ 安全（-2.9%距止损）\n- 百济神州: SL 168, close 171.50 → ✅ 安全（-2.0%距止损）\n- 华恒生物: SL 23.18, close 23.57 → ✅ 安全（-1.7%距止损）\n- None breached.\n\nNo new price triggers since the 16:17 analysis.\n\n[SILENT]\n",
  "stocks_mentioned": [],
  "_id": "cron_d3797d924ddc_2026-06-01_16-31-42"
}