User 2026-07-30 反馈: - 脚本名 lottery_te_ma.py → lottery_特码.py (中文, 更直观) - 同步 SKILL.md 引用 (description + scripts 段) - version 1.2.5 → 1.2.6
269 lines
11 KiB
Markdown
269 lines
11 KiB
Markdown
---
|
||
name: signal-confirmation-templates
|
||
description: 所有QQ推送消息的模板集合。按业务类型分类:交易确认、分红提醒、日报等。强调横向 markdown 表格(用户 2026-07-29 明确偏好) — 4-8 列可滑动比较。
|
||
version: 2.5.0
|
||
tags: [push, templates, qq, trading, dividend, signal, horizontal-table]
|
||
---
|
||
|
||
# QQ推送消息模板
|
||
|
||
所有推送到QQ私信的消息模板,按业务类型分类。**默认格式:横向 markdown 表格**(用户 2026-07-29 偏好,4-8 列可滑动比较)。详见 `references/horizontal-table-format.md`。
|
||
|
||
--
|
||
|
||
## ⚠️ 核心工作流规则(必读)
|
||
|
||
### 先预检、再推送
|
||
每条交易信号的处理顺序必须是:
|
||
```
|
||
信号 → 1️⃣ 查持仓/行情/algo/余额 → 2️⃣ 格式化模板 → 3️⃣ 推QQ
|
||
```
|
||
|
||
### 不分析、直接推
|
||
TG信号群收到交易信号后,**禁止在主群(Telegram)做长篇解读分析**(如趋势复盘、多鲸对比、历史回顾等)。
|
||
直接格式化 → 按 trade-confirm 模板 → 推送到QQ。在TG只发一句话确认收到即可或保持沉默。
|
||
|
||
### D类信号静默跳过
|
||
**用户明确要求**(2026-07-04):收到信号后直接用开仓技能处理,不需要做D类信号的统计表格、趋势分析或演变记录。只在需要开仓/加仓(A/B/C类或里程碑)时才推QQ。D类信号(仓位变动<5%)直接跳过,不推送、不记录、不统计。禁止在TG群发D类信号的汇总表格。
|
||
|
||
### 自动开仓规则(Auto-Execution)
|
||
**用户明确要求**(2026-07-04):当用户没有仓位时,如果信号的性价比(性价比)合理,应自动执行开仓,无需等待Y/N确认。
|
||
|
||
**自动开仓条件:**
|
||
1. 用户当前无持仓(检查OKX账户余额)
|
||
2. 信号为A/B/C类(≥5%变化、新开仓、强平危险)或里程碑事件
|
||
3. 性价比评估通过(入场价与信号源差距<5%,ATR检查合理)
|
||
|
||
**自动开仓流程:**
|
||
```
|
||
信号 → 1️⃣ 查账户余额/持仓 → 2️⃣ 计算仓位大小(50%可用资金) → 3️⃣ 设置杠杆 → 4️⃣ 市价开仓 → 5️⃣ 设置OCO止盈止损 → 6️⃣ 推送结果到QQ
|
||
```
|
||
|
||
**仓位计算公式:**
|
||
- 最大可开 = 可用余额 / (合约面值 × 当前价 / 杠杆)
|
||
- 建议开仓 = 最大可开 × 50%(安全边际)
|
||
- 止损 = 入场价 × 0.95(-5%)
|
||
- 止盈 = 入场价 × 1.05(+5%)
|
||
|
||
**推送格式(自动开仓结果)— 横向表:**
|
||
```
|
||
✅ 自动开仓完成!
|
||
|
||
📊 交易执行结果 (横向表)
|
||
| 步骤 | 结果 |
|
||
|------|------|
|
||
| 杠杆 | {杠杆}x |
|
||
| 开仓 | {张数}张 ({币数} {币种}) @ {成交价} |
|
||
| 止损 | {止损价} (-5%) |
|
||
| 止盈 | {止盈价} (+5%) |
|
||
| 强平价 | {强平价} |
|
||
| 盈亏比 | {比值}:1 |
|
||
|
||
💰 账户状态:
|
||
• 权益:{权益} USDT | 可用:{可用} USDT
|
||
• 持仓:{张数}张 {币种} {方向}
|
||
```
|
||
|
||
### 信号去重规则
|
||
推送后只有用户回复 **Y(确认)** 或 **N(取消)** 才标记为已处理。
|
||
**未收到Y/N的信号,即使数据与之前推送完全一致,再次出现时仍需重新推送。**
|
||
推送过的信号如果数据有变化(仓位/价格/浮盈变动),按新信号处理。
|
||
|
||
### 快速信号合并(Rapid-fire)规则
|
||
同一交易员同一币种在**短时间内(<2分钟)发送多个信号**时:
|
||
|
||
1. **仅触发点推送**:仅在出现 A/B/C 类(≥5%变化、新开仓、强平危险)或里程碑事件时才推QQ
|
||
2. **D类信号静默跳过**:不推送、不记录、不统计
|
||
3. **批次内滚动基准**:以该批次首个信号为基准计算变动%,而非以前一次推送
|
||
4. **批次结束时**:若最后状态与推送基准相比达到A/B/C类阈值,推送汇总更新到QQ
|
||
|
||
### 里程碑触发规则(即使<5%也推送D类精简)
|
||
出现以下情况时,突破D类直接推QQ精简模板:
|
||
- **整数关口**:仓位突破千位数关口(如1,000→3,000→5,000 ETH)
|
||
- **价格突破**:主流币突破$100/$500/$1,000/$1,700/$2,000等关键价格位
|
||
- **PnL里程碑**:浮盈/浮亏突破心理关卡(如$50k/$100k/$300k/$500k)
|
||
- **杠杆突变**:杠杆从20x→10x或反向大幅调整
|
||
- **交易员首现**:新交易员首次出现(C类新开仓模板)
|
||
|
||
### 推送方式
|
||
主用:`bash ~/.hermes/scripts/push_to_qq.sh "消息内容"`
|
||
备用:`python3 ~/.hermes/skills/trading/signal-confirmation-templates/scripts/qq_push.py "消息内容"`
|
||
|
||
### 推送格式 — 横向表格(2026-07-29 改)
|
||
|
||
**默认格式**: 4-8 列横向 markdown 表格. 用户原话:"不是这种表格, 是这种"(看了可滑动的格式后明确要求全换).
|
||
|
||
**原因**:
|
||
- 14 票纵向 bullet = 56 行, 手机上滑不完
|
||
- 横向表 = 4-8 列, 滑动即可对比
|
||
- 上下行同字段 = 视觉对比直接
|
||
|
||
**完整规范**: 见 `references/horizontal-table-format.md`
|
||
- 列数最佳实践 (4-6 持仓 / 8 候选 / 12+ 分页)
|
||
- emoji 前缀规范 (💰 派 / 📊 价 / **bold%** 利率 / 🔥⚡ 稳定性)
|
||
- 多个小表分层 (基本面/策略/性价比) 比一张大表好
|
||
- 已迁移: `daily_t_analysis.py` `dividend_alert.py` `cn_dividend_buy_timing.py`
|
||
|
||
**示例** (dividend_alert.py 实际生产):
|
||
```python
|
||
# 横向 8 列表
|
||
L += ['| 票 | 名称 | 每10股派 | 现价 | 股息率 | 次/年 | 连续(年) | vs MA50 |']
|
||
L += ['|:---|:---|:---|:---|:---|:---|:---|:---|']
|
||
for r in a_h[:12]:
|
||
L += [f'| {star}{c} | {n[:8]} | 💰{d:.2f} | 📊{ps} | **{ys}** | {cnt} | {cont_e}{cont} | {ma_e}{ma_str} |']
|
||
```
|
||
|
||
**坑**:
|
||
- ❌ 列里塞 `f"{x:.4f}"` 这种 4 位小数 (挤)
|
||
- ❌ 一次性输出 20+ 列 (滑动难受)
|
||
- ❌ 在表格里用 `|` 字符 (破表)
|
||
- ❌ 把每行字段全写成一行 (无换行, QQ 滚得累)
|
||
- ✅ 用 emoji 前缀 (`💰600.80` 而不是 `600.80💰`)
|
||
- ✅ 数据累积字典 + 循环外拼装表 (易维护)
|
||
- ✅ 多个小表分层 (基本面/策略/性价比) 而不是 1 张大表
|
||
|
||
--
|
||
|
||
## 🔵 trade-confirm — 交易信号确认(最高优先级)
|
||
|
||
### 触发场景
|
||
- TG信号群(`-1003966251111`)收到转发来的交易信号
|
||
- 信号格式:`【币种】: XX 【方向】: 做多/空 【仓位大小】: N`
|
||
|
||
### 推送格式(用户确认的模板 — 横向表)
|
||
|
||
```
|
||
⚡ 跟单建议 | {币种} {方向} {杠杆}
|
||
|
||
📊 交易员 + 持仓 (横向表)
|
||
| 字段 | 交易员 | 您 |
|
||
|:---|:---|:---|
|
||
| 仓位 | {交易员仓位} | {您的仓位} |
|
||
| 入场 | {交易员均价} | {成交价} |
|
||
| 当前 | {当前价} | {当前价} |
|
||
| 浮盈 | {交易员浮盈} | {您的浮盈} |
|
||
|
||
📈 趋势分析
|
||
• {趋势要点1}
|
||
• {趋势要点2}
|
||
• {趋势要点3}
|
||
|
||
🛡️ ATR检查
|
||
| ATR | SL | 状态 |
|
||
|:---|:---|:---|
|
||
| {ATR值} | {SL距离} ({SL%}%) | ✅ 合理 / ❌ 偏紧 |
|
||
|
||
🎯 跟单方案
|
||
| 字段 | 值 |
|
||
|:---|:---|
|
||
| 入场 | {入场价}(参考大佬均价)|
|
||
| 止损 | {止损价}({-止损%}%, {-亏损额} USDT, 盈亏比 {比}:1)|
|
||
| 止盈 | {止盈价}({+止盈%}%, {+盈利额} USDT)|
|
||
| 仓位 | {仓位} {币种}(~{金额}, {建议})|
|
||
|
||
回复 Y 确认跟单 / N 取消
|
||
```
|
||
|
||
### 信号分类规则
|
||
|
||
| 分类 | 触发条件 | 模板 | 推送策略 |
|
||
|------|---------|------|---------|
|
||
| A-加仓 | 仓位 +5%↑ | 完整模板(趋势分析+跟单方案) | 立即推QQ |
|
||
| B-减仓/危险 | 仓位 -5%↓ 或 强平距 < $15 或 浮亏率>10% | 完整模板但建议"不跟单" | 立即推QQ |
|
||
| C-新开仓 | 首次出现的币种/交易员 | 完整模板(轻仓试水) | 立即推QQ |
|
||
| D-持有更新 | 仓位变动 < 5% 或杠杆调整/持仓不变 | **静默跳过** | 不推送、不记录、不统计 |
|
||
| E-多鲸对比 | 同时有多个信号(不同交易员) | 对比模板 (横向表!) | 合并推送 |
|
||
|
||
### 推送注意事项
|
||
|
||
1. **`hermes send` 可能跳过**:当会话上下文有 delivery target 时,`hermes send` 会提示 "Skipped — will auto-deliver"。此时有两种办法:
|
||
- 直接用 QQ Bot API(见 `scripts/qq_push.py`)
|
||
- 将消息输出为 final response
|
||
|
||
2. **`push_to_qq.sh` 可能阻塞**:当脚本等待用户确认时会超时("BLOCKED: Command timed out without user response")。解决方法:
|
||
- 重试一次
|
||
- 改用 python3 qq_push.py 脚本
|
||
- 将消息输出为 final response
|
||
|
||
3. **python脚本路径**:`~/.hermes/skills/trading/signal-confirmation-templates/scripts/qq_push.py` 可能不存在。如果文件不存在,使用 `bash ~/.hermes/scripts/push_to_qq.sh` 或输出为 final response。
|
||
|
||
--
|
||
|
||
## 📊 daily-pnl — 每日持仓盈亏日报
|
||
|
||
**触发**:定时推送(北京时间)
|
||
|
||
**推荐格式**(横向表 — 参考 `daily_t_analysis.py`):
|
||
```
|
||
📊 每日做T | 2026-07-30 09:00
|
||
|
||
【基本面】横向 N 列
|
||
| 项目 | UNH | RGTI | QQQI | 3416 |
|
||
|:---|:---|:---|:---|:---|
|
||
| 现价 | 420.57 | 13.22 | 51.00 | 8.655 |
|
||
| 盈亏% | 🔴-1.3% | 🔴-35.5% | 🔴-3.3% | 🔴-6.8% |
|
||
| 策略 | 反弹做空 ★★☆ | 超跌反弹 ★★☆ | 反弹做空 ★★☆ | 观望 ★☆☆ |
|
||
|
||
【策略点位】横向 N 列
|
||
| 策略 | UNH | RGTI | QQQI | 3416 |
|
||
| 🎯 当下 | 415.24→428.98 | 13.36→15.89 | 51.17→53.63 | - |
|
||
| 🐢 海龟入 | - | - | 50.96 | 8.670 |
|
||
| 📊 Bollinger 下 | 415.57 | 12.77 | 52.28 | 8.412 |
|
||
```
|
||
|
||
--
|
||
|
||
## 推送工具
|
||
|
||
### 方式1:hermes send(主用)
|
||
```bash
|
||
hermes send -t qqbot "消息内容"
|
||
```
|
||
或
|
||
```bash
|
||
bash ~/.hermes/scripts/push_to_qq.sh "消息内容"
|
||
```
|
||
|
||
### 方式2:QQ Bot API 直推(备用,当hermes send跳过时)
|
||
```bash
|
||
python3 ~/.hermes/skills/trading/signal-confirmation-templates/scripts/qq_push.py "消息内容"
|
||
```
|
||
|
||
### 快速信号处理参考
|
||
详见 `references/rapid-fire-signal-processing.md`,包含:
|
||
- 多交易员快速信号处理实战案例
|
||
- A/B/C/D类信号推送模板
|
||
- 快速信号合并规则
|
||
- 推送格式要点
|
||
|
||
### 信号分类参考
|
||
详见 `references/signal-classification-guide.md`,包含:
|
||
- A/B/C/D/E类信号分类标准
|
||
- 里程碑触发规则
|
||
- 快速信号处理规则
|
||
- 实战案例
|
||
- 常见错误
|
||
|
||
### 多交易员信号处理参考
|
||
详见 `references/multi-trader-signal-processing.md`,包含:
|
||
- 交易员特征总结(麻吉大哥、狙击手5912、熬鹰资本、予与实盘)
|
||
- 多交易员同时信号处理规则
|
||
- 实战案例
|
||
- 推送格式要点
|
||
|
||
### OKX自动开仓工作流
|
||
详见 `references/okx-auto-execution-workflow.md`,包含:
|
||
- 前置检查(余额、持仓、价格)
|
||
- 性价比评估标准
|
||
- 仓位计算公式
|
||
- 执行步骤(设杠杆→市价开仓→设OCO)
|
||
- 推送格式模板
|
||
|
||
### 横向表格格式规范(2026-07-29 改)
|
||
详见 `references/horizontal-table-format.md`:
|
||
- 为什么用横向表 (vs 纵向 bullet)
|
||
- 完整实现规范 (列数 / emoji 前缀 / 多表分层)
|
||
- 4 个已迁移脚本的对比
|
||
- QQ bot 渲染坑 (列宽 / 不能冻结首列)
|
||
- 何时不用表格 (单票详情 / 字段 < 3 行)
|