StrategyConfigMsg 模式
至少
target_profit_pct、stop_loss_pct、trailing_stop_pct 或 deadline_timeout_sec(在 configure 消息上)之一必须大于零。
TakeProfitLevelMsg 模式
在连接时设置策略
策略在首次连接时在configure 消息中提供:
退出阶梯(止盈级别)
退出阶梯让你在多个阈值处获取部分利润,而不是在单一价格处退出全部仓位。每个级别指定利润目标和要卖出的剩余仓位百分比。工作原理
- 当利润达到某个级别的
profit_pct时,流卖出当前仓位的sell_pct。 - 如果某个级别的
trailing_stop_pct > 0,则在该级别激活追踪止损而不是立即卖出。 - 级别按
profit_pct从低到高评估。 - 全局
target_profit_pct仍作为硬上限;如果在所有级别触发前达到,则卖出剩余仓位。
流动性保护
启用liquidity_guard 后,流在生成退出信号前检查池流动性。如果池无法在合理滑点下吸收卖出,信号将被推迟直到流动性改善或超时强制退出。
这对于在薄池中的大仓位很有用,立即卖出会导致过大的滑点。
保本追踪
breakeven_trail_pct 字段启用一个在仓位保本(利润 >= 0)后激活的追踪止损,从保本点而非峰值追踪。
与从最高观察利润追踪的标准 trailing_stop_pct 不同,保本追踪保护你免于在曾短暂盈利的仓位上回吐所有收益。
追踪止损说明
追踪止损追踪仓位开仓以来观察到的最高利润。当利润从该峰值下降trailing_stop_pct 时,退出信号触发。
追踪止损仅在仓位盈利后激活。如果仓位在盈利之前就变为亏损,则触发止损。
会话中更新策略
你可以随时通过发送update_strategy 消息更改策略而无需重连:
截止时间
deadline_timeout_sec 在 configure 消息上设置(不在策略对象本身上)。它定义持有仓位的最大时间(秒),无论盈亏如何都会请求退出信号。
使用 StreamSession 时,截止时间计时器在客户端运行并在触发时自动调用 requestExitSignal。如果你直接使用 StreamClient,你必须自己实现截止时间逻辑。

