mcpField
E
exit-strategies

exit-strategies

github.com/agiprolabs其他456513 次安装8 周前更新
代码仓库

关于 exit-strategies

exit-strategies 是面向加密货币和 Solana 代币交易的规则化退出策略技能,适合需要预先规划风险与获利退出的交易者。内容涵盖止损、分批止盈、追踪止损及时间、信号和流动性条件。

主要功能

  1. 01固定比例与 ATR 止损方法
  2. 02分批止盈与市值里程碑
  3. 03百分比、ATR 与 EMA 追踪止损
  4. 04时间和信号触发退出
  5. 05PumpFun 专用退出规则
  6. 06提供退出模拟和止损计算脚本

适用场景

  1. 01进场前设置止损与获利目标
  2. 02为波动较大的代币制定分批退出规则
  3. 03依据动量、流动性或持仓时间退出

安装

复制下面的命令,在终端中运行。

$npx skills add https://github.com/agiprolabs/claude-trading-skills --skill exit-strategies

安装后在 Claude Code 中输入/exit-strategies确认已加载。

包含的文件

除 SKILL.md 外,安装时一起下载的参考资料和脚本。

references/
stop_loss_methods.md
take_profit_strategies.md
trailing_stops.md
scripts/
exit_simulator.py
stop_loss_calculator.py

详细介绍

退出策略

入场容易,退出才是一切。纪律严明的退出策略,能让平庸的入场胜过完美入场却没有退出计划的交易。本技能介绍适用于加密货币和 Solana 代币交易的系统化、基于规则的退出方法。

退出为何重要

  • 入场决定你_是否_参与。退出决定你_能留下多少_。
  • 大多数交易者把 90% 的精力放在入场上,只用 10% 关注退出——应该反过来。
  • 没有明确的退出策略,你就只能依赖情绪,这必然导致表现不一致。
  • 每笔交易都应在入场前定义三种退出方式:止损、止盈和移动止损。

退出类别

1. 止损——风险管理型退出

预先设定价格水平,到达后平仓,以限制下行风险。

方法说明最适用场景
固定百分比在入场价 − X% 处退出简单策略、新手
基于 ATR入场价 − ATR(14) × 倍数随波动率调整
支撑位在最近的波段低点下方技术分析定义风险
最大亏损SOL/USD 绝对上限账户保护

基于 ATR 的止损(建议默认值):

import pandas_ta as ta

atr = df.ta.atr(length=14)
stop_loss = entry_price - (atr.iloc[-1] * 2.0)  # 2x ATR below entry

倍数参考:

  • 1.5×——较紧。需要较高胜率。适合剥头皮交易。
  • 2.0×——标准值。在过滤噪声与控制风险之间取得平衡。
  • 3.0×——较宽。适合高波动环境下的波段交易。

完整方法请参阅 references/stop_loss_methods.md。

2. 止盈——目标价位退出

预先设定锁定收益的价位。

固定风险回报目标:

risk = entry_price - stop_loss_price
tp_2r = entry_price + (risk * 2)  # 2:1 R:R
tp_3r = entry_price + (risk * 3)  # 3:1 R:R
tp_5r = entry_price + (risk * 5)  # 5:1 R:R

分批退出框架(建议用于 meme/PumpFun 代币):

批次仓位比例目标之后的操作
125%2× 风险将止损移至盈亏平衡点
225%3–5× 风险对剩余仓位设置移动止损
325%5–10× 风险收紧移动止损
425%移动止损留仓搏高收益——任其上涨

市值里程碑退出:

对于 R:R 比率意义不大的 PumpFun 和 meme 代币:

milestones = [
    {"mcap": 50_000,  "sell_pct": 0.25, "label": "Cover cost"},
    {"mcap": 100_000, "sell_pct": 0.25, "label": "Lock profit"},
    {"mcap": 500_000, "sell_pct": 0.25, "label": "Major profit"},
    # Hold 25% as moonbag with trailing stop
]

完整方法(包括斐波那契扩展目标和基于成交量的退出)请参阅 references/take_profit_strategies.md。

3. 移动止损——趋势跟随型退出

随价格上涨而上移、但绝不下调的动态止损。

百分比移动止损:

def percentage_trailing_stop(
    current_price: float,
    highest_since_entry: float,
    trail_pct: float = 0.10,
) -> tuple[float, bool]:
    """Return (stop_level, triggered)."""
    highest = max(highest_since_entry, current_price)
    stop = highest * (1 - trail_pct)
    return stop, current_price <= stop

ATR 移动止损(吊灯止损):

def chandelier_exit(
    highs: list[float],
    atr_value: float,
    multiplier: float = 2.5,
    lookback: int = 22,
) -> float:
    """Highest high over lookback minus ATR * multiplier."""
    highest_high = max(highs[-lookback:])
    return highest_high - (atr_value * multiplier)

EMA 移动止损:

# Exit when close < EMA for M consecutive bars
ema = df.ta.ema(length=20)
below_ema = df["close"] < ema
consecutive_below = below_ema.rolling(3).sum() == 3  # 3 bars below

常见的 EMA 周期:10(剥头皮)、20(日内交易)、50(波段交易)。

Parabolic SAR、SuperTrend 和阶梯式移动止损请参阅 references/trailing_stops.md。

4. 基于时间的退出

如果交易在规定时间内未朝有利方向变动,则退出。

bars_since_entry = current_bar - entry_bar
if bars_since_entry > max_hold_bars and current_pnl <= 0:
    exit_reason = "time_stop"

参考指南:

  • 剥头皮:5–15 分钟
  • 日内交易:4–8 小时
  • 波段交易:3–5 天
  • PumpFun 狙击:2–10 分钟(视代币而定)

时间止损可以避免资金闲置在没有活力的交易中。

5. 基于信号的退出

当触发入场的指标反转时退出。

# RSI reversal exit
rsi = df.ta.rsi(length=14)
if position == "long" and rsi.iloc[-1] > 70:
    exit_reason = "rsi_overbought"

# MACD crossover exit
macd = df.ta.macd()
if macd["MACDs_12_26_9"].iloc[-1] < macd["MACDh_12_26_9"].iloc[-1]:
    exit_reason = "macd_bearish_cross"

信号退出与移动止损结合使用效果很好——信号触发后收紧移动止损,而不是立即全部退出。

6. 基于流动性的退出

当成交量或流动性恶化、表明无法顺利退出时退出。

recent_vol = df["volume"].rolling(10).mean().iloc[-1]
baseline_vol = df["volume"].rolling(50).mean().iloc[-1]

if recent_vol < baseline_vol * 0.3:  # Volume dropped to 30% of baseline
    exit_reason = "liquidity_deterioration"

这对于流动性可能迅速枯竭的低市值 Solana 代币至关重要。

PumpFun 专属退出规则

PumpFun 代币的走势特点独特,需要专门的退出逻辑。

毕业前退出

尚未达到 85 SOL 填充量、仍处于联合曲线上的代币:

bonding_fill_pct = current_fill_sol / 85.0

if bonding_fill_pct > 0.90:
    # Near graduation — decide: hold through or exit before
    # Graduation creates volatility spike, both up and down
    pass

if bonding_fill_pct < 0.50 and time_since_entry > 300:  # 5 min
    exit_reason = "stalled_bonding_curve"
成交量衰减退出
buy_vol_1m = get_buy_volume(token, "1m")
buy_vol_5m = get_buy_volume(token, "5m") / 5  # Normalize to per-minute

if buy_vol_1m < buy_vol_5m * 0.3:
    exit_reason = "buy_volume_decay"
PumpFun 时间衰减

大多数有望成功的 PumpFun 代币都会在最初几分钟内显现动能:

时间范围操作
0–2 分钟持有——判断还为时过早
2–5 分钟若未从入场价上涨至 2×,则退出
5–10 分钟若未从入场价上涨至 3×,则退出
10 分钟以上应设置移动止损,而不是继续期待

组合退出规则

完整的退出计划会叠加多条规则。以下是推荐模板:

exit_plan = {
    "hard_stop": {
        "type": "fixed_percentage",
        "value": 0.20,  # -20% max loss
        "priority": 1,   # Checked first, always honored
    },
    "atr_stop": {
        "type": "atr_trailing",
        "multiplier": 2.5,
        "atr_length": 14,
        "priority": 2,
    },
    "take_profit": {
        "type": "scaled",
        "tranches": [
            {"at_rr": 2, "sell_pct": 0.25},
            {"at_rr": 4, "sell_pct": 0.25},
            {"at_rr": 8, "sell_pct": 0.25},
        ],
        "priority": 3,
    },
    "time_stop": {
        "type": "max_bars",
        "value": 50,
        "condition": "if_not_profitable",
        "priority": 4,
    },
}

优先级层级:硬止损 > ATR 移动止损 > 止盈 > 时间止损。

硬止损始终生效,绝不会被覆盖。第一笔止盈分批成交后,ATR 移动止损便会激活。仅当交易尚未盈利时,时间止损才会触发。

常见的退出错误

错误问题修正方法
不设止损下行风险无限入场前始终定义最大亏损
将止损位向外移动事后增加风险绝不要将止损位移离价格
不止盈盈利交易变成亏损交易采用分批退出
一次性全部退出错失收益或过早离场分批平仓
将止损设在整数关口与其他交易者的止损位重合,容易被触发以小幅随机数偏移
止损设得过紧被正常波动触发止损使用基于 ATR 的止损
抱有希望而不跟踪止盈利润回吐首次止盈后激活移动止损
忽视流动性无法按预期价格退出确定仓位大小前检查价差和市场深度

与其他技能的集成

  • position-sizing — 根据止损距离确定仓位大小。 position_size = (account_risk * account_balance) / (entry - stop_loss)
  • risk-management — 退出机制负责执行风险限制。
  • pandas-ta — 使用 ATR、EMA、RSI、MACD 实现基于信号的退出和移动止损。
  • slippage-modeling — 估算退出的执行成本,以设定实际的目标。
  • liquidity-analysis — 入场前确认退出流动性。

文件

参考资料
  • references/stop_loss_methods.md — 完整的止损方法和反模式
  • references/take_profit_strategies.md — 分批退出、R:R 目标、斐波那契扩展位
  • references/trailing_stops.md — 移动止损实现和参数指南
脚本
  • scripts/exit_simulator.py — 使用合成价格数据模拟并比较退出策略
  • scripts/stop_loss_calculator.py — 计算止损位、仓位大小和 R:R 目标

评论

支持 Markdown