README_REALTIME.md 3.4 KB

Auto Report 实时信号增强版

文件说明

  • auto_report_long_only_t1.py - 原始版本,使用30分钟K线数据
  • auto_report_realtime.py - 增强版本,在14:50等关键时间点会获取实时行情计算信号
  • realtime_signal.py - 独立的实时信号检测工具

主要改进

1. 收盘前实时信号检测 (14:50)

原版问题:

  • 14:50运行时只能拿到14:30的K线数据
  • 14:30-15:00这根K线要到15:00才收盘
  • 无法反映14:30-14:50之间的价格变化

改进方案:

  • 在14:50获取实时行情
  • 基于14:30的技术指标 + 当前实时价格,估算当前信号状态
  • RSI、KDJ等指标根据价格变化进行估算
  • 邮件报告中包含实时信号检测结果

2. 邮件触发逻辑优化

原版:

  • 有交易 或 盘后时间 → 发送邮件
  • 14:50无交易时可能跳过发送

增强版:

  • 有交易 → 发送邮件
  • 实时信号触发 → 发送邮件(即使无交易)
  • 收盘前时间(14:50) → 发送邮件(包含实时信号)
  • 盘后时间 → 发送例行报告

3. 邮件主题优化

实时信号版本会在邮件主题中显示实时信号分数:

  • 🟢 CYB50-T1报告 04-01 14:50 | 实时5分 | 收益+2.50% (触发买入)
  • ⚪ CYB50-T1报告 04-01 14:50 | 实时2分 | 收益+2.50% (未触发)

使用方法

方法1:直接运行实时版本

cd /root/.openclaw/workspace/cat-fly
python3 auto_report_realtime.py

在14:50左右运行会自动获取实时行情并计算信号。

方法2:独立实时信号检测

cd /root/.openclaw/workspace/cat-fly
python3 realtime_signal.py

仅检测当前信号状态,不生成完整报告。

方法3:更新定时任务

修改 cron_jobs.json,将14:50的任务指向新版本:

{
  "id": "catfly-afternoon-1450-realtime",
  "name": "catfly-afternoon-1450-realtime",
  "schedule": {"expr": "50 14 * * 1-5", "tz": "Asia/Shanghai"},
  "payload": {"script": "auto_report_realtime.py"}
}

实时信号计算逻辑

基于最后一根完整K线(14:30)的技术指标,结合实时价格进行估算:

  1. RSI估算:价格每变化1%,RSI约变化2.5个点
  2. KDJ估算:J值对价格敏感,价格每变化1%,J约变化3个点
  3. 布林带:使用实时价格判断与下轨的距离
  4. 动量:使用实时价格相对上一K线收盘的变化率
  5. MA趋势:沿用上一K线的MA趋势判断

注意事项

  1. 实时信号是估算值,基于价格与技术指标的近似线性关系
  2. 实际交易信号仍以完整K线收盘后的计算为准
  3. 实时信号主要用于提前预警,在收盘前10分钟给出参考
  4. 网络不稳定时可能无法获取实时行情,会回退到使用K线数据

测试

可以在任意时间测试实时信号检测:

python3 realtime_signal.py

输出示例:

================================================================================
实时信号评估结果
================================================================================
当前价格: 3367.82
最后一根K线收盘: 3387.91
价格变化: -0.59%

技术指标估算:
  RSI(估算): 39.97
  KDJ J(估算): 12.69
  布林带: [3353.48, 3504.82]

信号评分: 2/4 (阈值: 4分触发买入)
触发信号: 触及下轨, 日内低位, MA下降趋势惩罚

⚪ 建议: 未触发买入信号
================================================================================