dynamic-stop-loss

本文为 https://www.itrade.icu 量化交易实验室出品。访问获取更多福利

访问获取更多福利

📘 聪明人只止必要的损:一文搞懂 Freqtrade 动态止损

在自动交易系统中,止损策略是控制亏损、保护本金的核心机制之一。 相比固定止损,Freqtrade 提供的 custom_stoploss 方法支持更加灵活、动态的止损设计,帮助你在盈利中保护利润,在亏损中及时撤退。


✳️ custom_stoploss

custom_stoploss 允许你根据持仓状态、时间、市场行情等因素,动态计算并返回一个止损价格。 返回值类型:float,表示新的止损价;也可以返回 -1 表示继续使用默认止损机制。

注意:该函数主要用于止损不支持止盈逻辑。如果你想控制止盈,应该使用 custom_exit


📌 典型用途:

  • 跟踪止损(trailing stop)

  • 多阶动态止损(随着利润增长不断提升止损线)

  • 高位止盈保护(防回撤)

  • 阶梯止损(先宽后紧)


🧪 实战案例 1:跟踪止损逻辑(经典方式)

随着价格上涨,我们动态上移止损位,始终保持 2% 下跌空间。

✅ 优点:止损位永远跟着当前价格上移,不回撤。 ⚠️ 注意:止损只会“提高”,不会下调!


🧪 实战案例 2:利润分级止损(多档收益)

如果你想更精细化管理止损:

  • 盈利 0~5% → 止损 -2%

  • 盈利 5~10% → 止损 0%(保本)

  • 盈利 >10% → 止损锁定 5% 盈利


🧪 实战案例 3:防洗单小幅浮亏止损

一些币种容易“冲高回落”洗掉止损。 这时我们可以设置动态耐受浮亏:只有在亏损超过 -3%,才触发止损。


📊 止盈 vs 止损:对比概览

项目
止盈(custom_exit)
止损(custom_stoploss)

函数名

custom_exit

custom_stoploss

是否触发平仓

✅ 直接卖出

✅ 设置新的止损价格

调用频率

每个周期评估

每个周期评估

使用目的

获利退出

控制亏损,保护本金

返回值

True / False / float

止损价(float)或 -1

搭配机制

可以和 custom_exit_price

可以和 trailing_stop 配合


🧰 和 trailing_stop 配合建议

如果你已启用:

那么建议将 custom_stoploss 只用于前期控制(初始阶段), 后期由 trailing_stop 进行利润保护,两者配合更稳健。


🧭 配置建议(启用 custom_stoploss)

在策略文件中定义函数后,无需额外启用。系统默认会调用。 但建议配合以下设置:


追踪止损示意表

阶段

价格

止损价

说明

开仓初始

100

100 × (1 - 2%) = 98

初始止损,防止立刻亏损

第1次上涨

105

105 × (1 - 2%) = 102.9

止损价上移,锁定部分利润

第2次上涨

110.25

110.25 × (1 - 2%) = 107.945

继续跟踪止损,保护利润更进一步

第3次上涨

115.76

115.76 × (1 - 2%) = 113.45

持续追踪止损

说明:随着价格上涨,止损价自动跟进,防止回落导致利润回吐。


📌 重要提醒

  • 返回值是“止损价格”,不是百分比。例如当前价格为 100,你返回 95 就表示“跌到 95 就卖出”。

  • 返回 -1 表示放弃修改,系统会用 stoploss 参数定义的默认值。

📦 小结

  • custom_stoploss 是 Freqtrade 中最强大的风险控制工具之一。

  • 它能实现跟踪止损、浮盈保护、多级逻辑等复杂止损系统。

  • 配合 trailing_stopcustom_exit,能构建出完整的资金防御体系


Last updated