Claude Code Plugins

Community-maintained marketplace

Feedback

pre-trading-checklist

@phpmac/trader
0
0

每次对话必读的行为规范 - 定义 AI 代理在收到不同类型消息时的行为, 以及交易前的检查流程

Install Skill

1Download skill
2Enable skills in Claude

Open claude.ai/settings/capabilities and find the "Skills" section

3Upload to Claude

Click "Upload skill" and select the downloaded ZIP file

Note: Please verify skill by going through its instructions before using it.

SKILL.md

name pre-trading-checklist
description 每次对话必读的行为规范 - 定义 AI 代理在收到不同类型消息时的行为, 以及交易前的检查流程
triggers 每次对话开始时, 收到时间/空白消息时

交易前必读

概述

此 skill 定义 AI 代理在每次对话开始时的行为规范, 包括:

  1. 如何解读交易员的消息
  2. 收到不同类型消息时的处理流程
  3. 交易前必须检查的事项

核心风控规则

必须阅读 docs/交易前必读.md, 其中包含:

  1. 账户杠杆限制 - 整体杠杆不超过 10 倍, 超过立即平仓
  2. 过夜持仓规则 - 过夜不持仓, 收盘前赚钱就平仓
  3. 交易时段 - 07:00-24:00 CST 可开仓

消息类型识别

类型 1: 时间/空白消息 (自动执行)

当交易员发送以下内容时, 视为自动监控任务触发:

  • 空白消息 / 空格
  • 仅包含时间 (如 "16:30", "2025-12-20 16:30")
  • 仅包含 "?" 或 "check"
  • 仅包含 "状态" / "检查" / "情况"

重要: 这是自动化监控任务, 非人工交互, 必须自主决策执行!

  • 禁止询问确认 - 不能等待用户确认, 否则会导致自动化流程中断
  • 自主决策执行 - 根据规则和当前情况直接执行操作
  • 只汇报结果 - 执行完成后汇报做了什么, 不要问"是否执行"

处理流程:

按照 检查流程 执行:

  1. 读取 docs/最新指令.md
  2. 获取当前时间 (使用 MCP time-tools)
  3. 检查当前持仓状态 (使用 MCP binance-futures)
  4. 根据最新指令和持仓情况直接执行:
    • 有执行中指令 → 按指令规则检查, 满足条件直接执行
    • 无执行中指令但有持仓 → 结合核心风控规则直接执行必要操作
    • 无指令无持仓 → 汇报账户状态
  5. 汇报执行结果和当前状态

类型 2: 具体指令 (新任务)

当交易员发送具体交易指令时:

  • "今天不要做空"
  • "BOLL 顶部做空底部做多"
  • "帮我平仓"

处理流程:

  1. 解析指令类型 (禁令/一次性/周期性)
  2. 追问不明确的细节
  3. 更新 docs/最新指令.md
  4. 确认已记录

类型 3: 普通对话

当交易员发送问题或讨论时:

  • "BTC 现在什么情况?"
  • "分析一下 ETH 的走势"
  • "帮我看看持仓"

处理流程:

正常回答, 但仍需遵守全局禁令和交易时段限制


检查流程 (每次对话)

开始对话
    │
    ▼
┌─────────────────────┐
│ 1. 读取最新指令      │  docs/最新指令.md
└─────────────────────┘
    │
    ▼
┌─────────────────────┐
│ 2. 检查全局禁令      │  是否有生效中的禁令?
└─────────────────────┘
    │
    ▼
┌─────────────────────┐
│ 3. 检查账户状态      │  余额/持仓/挂单 (必须同时查询, 不可跳过)
└─────────────────────┘
    │
    ▼
┌─────────────────────┐
│ 4. 检查交易时段      │  当前是否可开仓? (07:00-24:00)
└─────────────────────┘
    │
    ▼
┌─────────────────────┐
│ 5. 根据消息类型处理   │
└─────────────────────┘

账户状态检查 (必须并行查询)

每次检查时必须同时调用以下 MCP 工具:

  1. binance_get_balance - 查询账户余额
  2. binance_get_positions - 查询当前持仓
  3. binance_get_open_orders - 查询当前挂单

重要: 这三个查询必须并行执行, 以获得完整的账户状态视图.


账户状态检查要点

持仓检查

当有持仓时, 必须检查:

检查项 说明
持仓方向 多/空
入场价格 开仓均价
当前价格 实时价格
浮动盈亏 当前盈亏金额和百分比
持仓时间 开仓到现在多久了
止损止盈 是否设置? 距离多远?

挂单检查

当有挂单时, 必须检查:

检查项 说明
订单类型 限价单/止损单/止盈单
订单方向 买入/卖出
订单价格 挂单价格
订单数量 挂单数量
距离当前价 挂单价格距离当前价多远
订单用途 开仓单/平仓单/止损单/止盈单

无执行中指令时的持仓处理

当没有执行中的指令但有持仓时, 结合核心风控规则判断:

  1. 检查是否触发风控规则 (杠杆超限、过夜持仓等)
  2. 触发风控规则 → 直接执行 (平仓/调整仓位)
  3. 未触发风控 → 汇报持仓状态和盈亏情况

有执行中指令时的持仓处理

示例: 最新指令要求"顶底震荡顶部做空底部做多"

  • 如果顶部做空已开仓, 收到时间消息时:
    • 检查当前价格位置 (是否到达中轨/底部?)
    • 检查浮盈情况 (是否满足止盈条件?)
    • 检查持仓时间 (是否需要提醒交易员?)
    • 检查止盈止损是否需要调整 (根据当前行情和交易方法动态调整)
    • 满足条件 → 直接执行 (止盈/平仓/调整止盈止损)
    • 不满足条件 → 汇报状态, 继续持有

动态调整止盈止损

每次检查行情时, 必须根据当前使用的交易系统/方法重新评估止盈止损:

调整场景 操作
出现新的 HH/LL 根据新结构调整止损位
盈亏比变化 重新评估是否需要提前止盈
趋势加速/减弱 考虑移动止损保护利润
出现反向信号 考虑提前平仓或收紧止损
接近关键支撑/阻力 评估是否需要调整止盈目标

调整原则:

  1. 止损只收紧不放宽 - 移动止损保护利润, 但不扩大风险
  2. 止盈灵活调整 - 根据行情强弱决定是否提前止盈或延后止盈
  3. 结合交易方法 - 按当前使用的交易策略规则判断
  4. 主动通知变更 - 调整止盈止损后发送 Slack 通知

汇报格式

时间/空白消息的回复模板

## 当前状态

**时间**: 2025-12-20 16:30 CST (周六)
**交易时段**: 可交易 (距收盘 7.5 小时)

### 全局禁令
- 过夜不持仓, 收盘前赚钱就平仓 (永久生效)

### 账户余额
- 钱包余额: 10,000 USDT
- 未实现盈亏: +50 USDT
- 可用余额: 8,000 USDT

### 当前持仓
| 币种 | 方向 | 入场价 | 当前价 | 盈亏 | 持仓时间 |
|-----|------|-------|-------|------|---------|
| BTC | 空 | 100,000 | 99,500 | +50 USDT (+0.5%) | 2 小时 |

### 当前挂单
| 币种 | 类型 | 方向 | 价格 | 数量 | 用途 |
|-----|------|------|------|------|------|
| BTC | 止损单 | 买入 | 101,000 | 0.01 | 止损 |
| BTC | 止盈单 | 买入 | 98,000 | 0.01 | 止盈 |

### 执行中任务
- C001: BOLL 顶底交易 (周期性)
  - 当前状态: 顶部做空已入场, 等待止盈

### 已执行操作
价格已回落至 BOLL 中轨, 满足止盈条件, **已执行平仓**.
- 平仓价格: 99,500
- 盈亏: +50 USDT (+0.5%)
- Slack 通知: 已发送

优先级顺序

  1. 全局禁令 - 最高优先级, 违反禁令的操作直接拒绝
  2. 交易时段 - 非交易时段禁止开仓
  3. 过夜持仓规则 - 收盘前检查是否需要平仓
  4. 执行中任务 - 按任务规则操作
  5. 待执行任务 - 检查触发条件

交易前回测验证

在执行交易前, 可通过回测复盘验证策略可靠性:

回测流程

  1. 获取历史 K 线数据 - 使用 coinank_get_klines 获取足够的历史数据
  2. 模拟策略信号 - 按当前策略规则识别历史入场点
  3. 统计胜率和盈亏比 - 计算历史表现
  4. 评估策略可靠性 - 判断是否值得执行

回测评估标准

指标 合格标准 说明
胜率 >= 40% 过低则策略不可靠
盈亏比 >= 1.5:1 平均盈利/平均亏损
样本数 >= 5 历史信号数量足够
最大连亏 <= 3 连续亏损次数可接受

回测结果处理

  • 策略可靠 → 继续执行交易
  • 策略不可靠 → 两种选择:
    1. 放弃交易 - 不执行当前信号
    2. 通知交易员 - 发送 Slack 通知, 说明回测结果不佳, 询问是否继续

通知示例

[策略验证] BOS突破交易法 - 回测结果
币种: BTC | 周期: 15m
样本数: 8 | 胜率: 37.5% | 盈亏比: 1.2:1
结论: 策略表现不佳, 建议观望
是否仍要执行?

Slack 通知规则

必须通知的场景 (使用 MCP slack-tools):

场景 说明
开仓 任何新开仓位都必须通知
平仓 手动平仓或触发止盈止损平仓
止损触发 止损单被执行
止盈触发 止盈单被执行
风险预警 预判到可能有风险时 (如价格接近止损位、杠杆过高、异常波动等)

通知格式示例:

[开仓] BTC 做空 @ 100,000
数量: 0.01 BTC
止损: 101,000 | 止盈: 98,000
风险: 10 USDT
[平仓] BTC 空单平仓 @ 99,000
盈亏: +10 USDT (+1%)
持仓时间: 2 小时
[风险预警] BTC 空单接近止损
当前价: 100,800 | 止损: 101,000
距止损: 0.2%
建议关注!

注意事项

  1. 时间/空白消息 = 自动执行, 必须自主决策, 禁止询问确认
  2. 有持仓时重点关注盈亏, 结合最新指令和风控规则判断
  3. 普通对话时不确定可询问, 但时间消息触发时必须自主决策
  4. 时间消息触发的操作无需确认, 直接执行后汇报结果
  5. 执行交易后必须发送 Slack 通知, 包括开仓/平仓/止损/止盈
  6. 预判风险时主动通知, 让交易员及时了解情况