User 2026-07-30 反馈: - 脚本名 lottery_te_ma.py → lottery_特码.py (中文, 更直观) - 同步 SKILL.md 引用 (description + scripts 段) - version 1.2.5 → 1.2.6
176 lines
6.4 KiB
Markdown
176 lines
6.4 KiB
Markdown
# Daily-T-Analysis 策略推荐 + 多策略点位 (2026-07-29)
|
||
|
||
## 背景
|
||
|
||
`~/.hermes/scripts/daily_t_analysis.py` cron (`cb187ab5f9fc`) 每天 21:00 北京时间(美股开盘前)推送持仓做 T 点位。
|
||
|
||
**之前**只输出:支撑/阻力、低吸/高抛价、盈亏比、性价比。
|
||
|
||
**用户反馈**(2026-07-29):
|
||
> "现在还有个定时任务,每日做T的,要结合交易策略 给出交易的点位。 需要调整"
|
||
>
|
||
> "这是趋势判断,还有点位有什么计算方法呢,海龟交易是算点位的吗"
|
||
>
|
||
> "B和D" → 加海龟完整方案 + Bollinger/Wave
|
||
>
|
||
> "还有其他策略吗?" → 再加 RSI(2) + MACD
|
||
|
||
## 修复 (2 轮)
|
||
|
||
### 第 1 轮: 加入策略建议列
|
||
|
||
每票在支撑/阻力行后插入一行 `💡 策略: <name> (★★★)`。
|
||
|
||
决策函数 `recommend_strategy(trend, atr_pct, pnl_pct, current, support, resistance)` — 7 种策略, 1-3 星置信度。
|
||
|
||
### 第 2 轮: 多策略点位 (海龟/Bollinger/Wave/RSI/MACD)
|
||
|
||
每票在策略行后追加 5 个策略块 (按出现条件):
|
||
|
||
```
|
||
💡 策略: <综合策略> (★★★) — <一句话理由>
|
||
🐢 海龟: 入场 / 止损 / +0.5/+1.0/+1.5 ATR 金字塔价格 (仅突破点显示)
|
||
📊 Bollinger: 中轨 / 上轨 / 下轨 / (1 Unit = 2σ)
|
||
🌊 波浪入场 (W2回撤): 0.382 / 0.5 / 0.618 + 止损 (W1 底)
|
||
📈 RSI: RSI(2) 数值 + 超卖/超买/中性 | RSI(14) 数值
|
||
📉 MACD: 金叉/死叉 + 多/空 + DIF/DEA/柱 (需要 ≥26 根 K 线)
|
||
```
|
||
|
||
## 5 个策略点位计算函数 (代码)
|
||
|
||
### `turtle_levels(highs, lows, closes, atr, current)` — 海龟 20 日系统
|
||
|
||
```python
|
||
high_20 = max(highs[-20:])
|
||
low_20 = min(lows[-20:])
|
||
if current > high_20 * 0.995: # 在高点附近 (0.5% 内) → 多
|
||
return {entry: high_20, stop: current - 2*atr, pyramid: [+0.5/+1.0/+1.5 ATR]}
|
||
elif current < low_20 * 1.005: # 在低点附近 → 空
|
||
return {entry: low_20, stop: current + 2*atr, pyramid: [-0.5/-1.0/-1.5 ATR]}
|
||
return None # 不在突破点 = 不显示
|
||
```
|
||
|
||
经典规则:
|
||
- 入场: 突破 20 日新高/低
|
||
- 止损: 2 ATR
|
||
- 加仓: 每 0.5 ATR 金字塔 (最多 3 次)
|
||
|
||
### `bollinger_levels(closes, current, atr_pct)` — 20 SMA ± 2σ
|
||
|
||
```python
|
||
sma20 = sum(closes[-20:]) / 20
|
||
sd = (sum((c - sma20)**2 for c in closes[-20:]) / 20) ** 0.5
|
||
upper = sma20 + 2*sd; lower = sma20 - 2*sd
|
||
```
|
||
|
||
总是显示 (中轨/上轨/下轨)。入场触下轨买, 触上轨卖。
|
||
|
||
### `wave_levels(highs, lows, atr, current)` — Elliott Wave 1+2
|
||
|
||
```python
|
||
w1_top = max(highs[-10:]) # 近期 10 周期高
|
||
w1_bot = min(lows[-10:]) # 近期 10 周期低
|
||
w1_range = w1_top - w1_bot
|
||
fib_382 = w1_top - w1_range * 0.382
|
||
fib_500 = w1_top - w1_range * 0.5
|
||
fib_618 = w1_top - w1_range * 0.618
|
||
stop = w1_bot
|
||
```
|
||
|
||
回撤入场: 0.382 / 0.5 / 0.618, 止损 W1 底。
|
||
|
||
### `rsi_levels(closes, period=14)` — Connors RSI(2) 策略
|
||
|
||
```python
|
||
# RSI(14) 标准 Wilder
|
||
# RSI(2) 短周期
|
||
if rsi_2 < 10: signal = "🟢超卖" # 入场
|
||
elif rsi_2 > 80: signal = "🔴超买" # 出场
|
||
else: signal = "⚪中性"
|
||
```
|
||
|
||
### `macd_levels(closes, current)` — MACD (12, 26, 9)
|
||
|
||
```python
|
||
ema12 = ema(closes[-26:], 12)
|
||
ema26 = ema(closes[-26:], 26)
|
||
dif = ema12 - ema26
|
||
# DEA = DIF 的 9 EMA (简化: 取多窗口 DIF 平均)
|
||
cross = "金叉" if dif > dea else "死叉"
|
||
```
|
||
|
||
入场: 金叉做多, 死叉做空/出场。柱状图为正 = 强势多头。
|
||
|
||
## 推送格式完整示例 (2026-07-29 推送实测)
|
||
|
||
```
|
||
📌 UNH.US | 9股(9手) | 成本426.00USD
|
||
现价428.79 | 🟢+0.7% | ↗️偏多 | ATR13.48(3.1%)
|
||
支撑412.54 | 阻力436.32
|
||
💡 策略: 波段做T (★★☆) — 温和多头—低吸支撑,高抛阻力
|
||
📊 Bollinger: 中轨 424.89 | 上轨 435.15 | 下轨 414.63 | (1 Unit = 2σ = 10.26)
|
||
🌊 波浪入场 (W2回撤): 0.382 442.87 / 0.5 437.08 / 0.618 431.29 | 止损 412.54
|
||
📈 RSI: RSI(2) 78.2 ⚪中性 | RSI(14) 51.9
|
||
🎯 低吸415.24 → 高抛433.62 | 1股(1手)
|
||
📐 性价比: ⭐⭐ 中
|
||
```
|
||
|
||
## ⚠️ 关键 Pitfall
|
||
|
||
### longbridge candlesticks API 严格限 30 根 K 线
|
||
|
||
无论 period (5m/15m/1h/1d), 长桥都只返 ~30 根。
|
||
|
||
- MACD 需要 ≥26 根 → **常常拿不到完整数据**, RSI/MACD 行可能不显示
|
||
- Wave 用 [-10:] 10 根 → OK
|
||
- Bollinger/Turtle/综合策略 用 [-20:] → OK
|
||
|
||
**对策**: 接受 MACD 可能不显示,推送格式里 MACD 用 `if macd:` 保护。
|
||
|
||
## 为什么这个模式值得记下 (CLASS-LEVEL)
|
||
|
||
**通用模式**:"每天推送 = 多个策略点位 + 综合判断 + 置信度" — 任何分析型 cron 都应该这样设计:
|
||
|
||
1. **多策略点位并行输出**: 不只一个策略, 给用户 4-5 个选择 (海龟/Bollinger/Wave/RSI/MACD)
|
||
2. **综合策略行 + 置信度**: 1 行标签给用户快速判断
|
||
3. **每个策略 1 句话理由**: 不是空标签, 是 "为什么"
|
||
4. **emoji 图标**: 🐢海龟 / 📊Bollinger / 🌊Wave / 📈RSI / 📉MACD (视觉区分)
|
||
5. **不在突破点的策略不显示**: 海龟只在 20 日高低点附近显示, 不然全是"0"
|
||
|
||
**可复用到**:
|
||
- `daily_t_analysis.py` (已部署)
|
||
- `lottery-hot-data` (未来可加奇门/梅花/玄空/河洛 4 框架点位)
|
||
- 任何 cron 推送的策略展示
|
||
|
||
## 不替代策略库
|
||
|
||
| 工具 | 用途 |
|
||
|---|---|
|
||
| **本 daily_t_analysis 策略行** | 推送中给持仓每票 1 行标签 |
|
||
| **本 daily_t_analysis 5 策略点位** | 每票多个具体入场/止损位 |
|
||
| **intraday-regime-detector (本 skill)** | 大盘/候选池的市场状态判别 |
|
||
| **strategy-management** | 具体策略 (RSI2/VWAP/海龟/早盘动量) + SL/TP 计算 |
|
||
| **longbridge-t-monitor** | 实际下单/平仓执行 |
|
||
|
||
## 集成路径
|
||
|
||
如果要让 daily_t_analysis 真正接入本 skill (regime 检测):
|
||
|
||
```
|
||
cron cb187ab5f9fc (21:00 北京)
|
||
↓ daily_t_analysis.py 跑每票技术面
|
||
↓ 输出支撑/阻力 + trend + ATR + 价格区间
|
||
↓ (可选) 调 intraday_regime.diagnose(df) 看市场状态 (需 5min K 线)
|
||
↓ 推送: 每票 + 元策略判别
|
||
```
|
||
|
||
⚠️ **时间尺度警告**: daily_t_analysis 用 5 日 K 线 (短期), intraday-regime-detector 用 5min K 线 (分钟级),两者时间尺度不同,**不要混用 regime 的输出**到 daily_t_analysis 的策略行。
|
||
|
||
## 版本
|
||
|
||
- **v1.0** (2026-07-29 早): 加 `recommend_strategy()` + 7 种策略 + 置信度
|
||
- commit: `b566350` → Hermes-Scripts
|
||
- **v2.0** (2026-07-29 晚): 加 5 策略点位 (海龟/Bollinger/Wave/RSI/MACD)
|
||
- commit: `450326d` → Hermes-Scripts
|
||
- daily_t_analysis.py: 全部 5 个新函数 + 推送格式更新
|
||
- 影响: cron `cb187ab5f9fc` 下次 21:00 北京时间推送会含全部策略点位 |