返回博客
蓝图分享

蓝图交易新增反向开仓功能

NavaX Product9 min read

为了帮助用户更灵活地研究蓝图信号,并快速测试同一套交易逻辑在相反方向下的表现,NavaX 在蓝图回测和挂载蓝图交易中新增了 反向开仓 功能。

启用反向开仓后,NavaX 不会修改蓝图中的指标、条件或信号判断逻辑,而是在蓝图产生开仓信号后,将最终执行的开仓方向进行反转。

简单来说:

  • 蓝图触发开多信号时,实际执行开空
  • 蓝图触发开空信号时,实际执行开多

该功能同时支持:

  • 蓝图回测
  • 挂载蓝图交易

用户可以先在回测中比较正常开仓与反向开仓的结果,再决定是否在实际挂载蓝图时启用。

什么是反向开仓?

反向开仓是指将蓝图生成的开仓信号方向进行反转。

假设某个蓝图原本的交易逻辑为:

满足多头条件 → 开多
满足空头条件 → 开空

启用反向开仓后,实际执行逻辑将变为:

满足多头条件 → 开空
满足空头条件 → 开多

反向开仓只改变最终的开仓方向,不会自动修改蓝图中的指标参数、判断条件或信号触发位置。

例如,蓝图设置为:

  • EMA20 上穿 EMA50 时开多
  • EMA20 下穿 EMA50 时开空

启用反向开仓后:

  • EMA20 上穿 EMA50 时实际开空
  • EMA20 下穿 EMA50 时实际开多

因此,反向开仓可以理解为:

保留原始蓝图信号,但将每一个开仓信号的多空方向反转。

反向开仓不是什么?

反向开仓并不是在已经持有仓位时,先平掉当前仓位,再建立相反方向的新仓位。

它也不是自动反手交易功能。

两者的区别如下。

NavaX 反向开仓

蓝图触发开多信号
    ↓
将信号方向反转
    ↓
实际执行开空

NavaX 的反向开仓作用于 开仓信号的执行方向,而不是对现有持仓执行平仓和反向建仓。

为什么增加反向开仓功能?

在策略研究过程中,一套表现较差的蓝图并不一定代表它的信号完全没有价值。

有些蓝图可能存在以下情况:

  • 多空方向设置相反
  • 信号更适合作为反向交易参考
  • 在特定市场中具有明显的反向特征
  • 原本用于趋势交易的条件,在震荡市场中更适合作为反向信号
  • 用户希望快速验证信号方向是否需要调整

过去,用户需要进入蓝图编辑器,手动修改多头与空头开仓节点,才能测试反向效果。

启用反向开仓后,无需修改蓝图结构,即可直接测试相反方向的交易结果,从而降低策略研究和参数验证的操作成本。

回测中的反向开仓

在蓝图回测中启用反向开仓后,回测引擎会保留蓝图原有的信号触发时间和判断条件,仅将开仓方向反转。

例如,蓝图在某根 K 线上产生开多信号。

正常开仓

蓝图触发开多信号
    ↓
回测建立多仓

反向开仓

蓝图触发开多信号
    ↓
回测将方向反转
    ↓
建立空仓

如果蓝图产生开空信号,则反向回测会建立多仓。

通过这一功能,用户可以在不修改蓝图的情况下,快速生成两组可比较的回测结果。

如何比较正常开仓与反向开仓?

建议使用完全相同的回测参数分别运行两次。

第一次回测

记录原始蓝图结果。

第二次回测

开启反向开仓,保持其他参数不变,再次运行回测。

需要保持一致的参数包括:

  • 交易对
  • K 线周期
  • 回测时间范围
  • 初始资金
  • 开仓金额
  • 杠杆倍数
  • 手续费设置

完成两次回测后,可以重点比较:

  • 总收益
  • 收益率
  • 最大回撤
  • 胜率
  • 盈亏比
  • 交易次数
  • 手续费
  • 多头交易表现
  • 空头交易表现
  • 连续盈利次数
  • 连续亏损次数

只有保持其他参数一致,才能更准确地判断信号方向反转带来的影响。

挂载蓝图中的反向开仓

用户在挂载蓝图时,也可以选择是否启用反向开仓。

启用后,蓝图仍然按照原有条件计算信号,但 NavaX 会在提交订单前反转开仓方向。

执行逻辑如下:

蓝图计算指标和条件
    ↓
生成开仓信号
    ↓
NavaX 反转信号方向
    ↓
按照反转后的方向提交订单

对应关系如下:

蓝图原始信号正常执行启用反向开仓后
开多开多开空
开空开空开多

反向开仓不会直接修改或覆盖蓝图文件。

关闭该选项后,蓝图仍会恢复按照原始方向执行。

反向开仓对平仓信号有什么影响?

反向开仓的核心作用是反转开仓方向。

由于实际建立的仓位方向发生变化,蓝图后续的止盈、止损和平仓逻辑也需要能够正确管理反转后的仓位。

例如,蓝图原始信号为开多,但启用反向开仓后实际建立的是空仓,那么后续仓位管理必须按照空仓方向处理:

  • 空仓止盈价格通常低于开仓价格
  • 空仓止损价格通常高于开仓价格
  • 空仓平仓需要执行买入平仓

相反,蓝图原始信号为开空,但实际建立多仓时:

  • 多仓止盈价格通常高于开仓价格
  • 多仓止损价格通常低于开仓价格
  • 多仓平仓需要执行卖出平仓

NavaX 会根据实际持仓方向处理相关交易操作,但用户仍应通过回测确认蓝图中的仓位管理逻辑是否适用于反向执行。

表现持续为负的蓝图

如果蓝图在较长时间和多个市场阶段中持续亏损,可以使用反向开仓测试其信号是否具有反向参考价值。

但需要注意,原策略亏损并不代表反向执行后一定盈利,因为手续费、滑点、止盈止损以及开平仓价格都会影响结果。

多空方向可能设置错误的蓝图

如果蓝图逻辑基本合理,但开仓方向可能配置相反,可以使用反向开仓快速验证。

震荡型交易蓝图

部分趋势类信号在震荡行情中可能表现出反向特征。

通过反向回测,可以研究这些信号是否更适合均值回归逻辑。

信号研究型蓝图

如果用户主要希望研究某组指标条件与未来价格方向的关系,反向开仓可以帮助快速比较正向与反向结果。

哪些情况下不应仅依赖反向开仓?

反向开仓是一种研究和执行选项,但不能替代对蓝图逻辑本身的分析。

以下情况下需要谨慎使用。

原蓝图存在未来函数或信号重绘

如果蓝图使用了未确认数据、未来数据或会重绘的指标,即使反向执行,也无法解决信号本身不可靠的问题。

原蓝图在计算手续费后亏损

如果策略在不计算手续费时略有盈利,但加入手续费后亏损,反向开仓通常不会自动解决交易频率过高的问题。

止盈止损明显不合理

如果原蓝图的仓位管理参数不适合反向方向,仅反转开仓可能导致止盈止损效果异常。

信号没有稳定方向性

如果信号结果接近随机,正向和反向执行都可能缺乏长期稳定性。

只测试了很短的时间范围

短期回测结果可能受到单一行情影响。应在多个市场阶段和足够长的时间范围中测试。

反向开仓不等于反向整个策略

反向开仓只反转开仓信号的多空方向,并不代表蓝图中的所有逻辑都会自动反转。

通常不会自动反转的内容包括:

  • 指标参数
  • 开仓条件表达式
  • 信号触发时间
  • 仓位大小
  • 杠杆倍数
  • 加仓条件
  • 冷却时间
  • 最大持仓数量
  • 时间退出条件
  • 风险控制参数

因此,反向开仓更准确的定义是:

反转蓝图最终生成的开仓方向,而不是重写整套蓝图策略。

反向开仓是否会改变信号出现的位置?

不会。

启用反向开仓后,蓝图仍然会在相同的时间和价格位置触发原始信号。

改变的只是最终订单方向。

例如,原始蓝图在 BTCUSDT 价格为 60,000 USDT 时触发开多信号:

  • 正常模式:在该信号位置建立多仓
  • 反向模式:在该信号位置建立空仓

因此,正向与反向回测之间的信号时间通常保持一致,但实际仓位方向和盈亏结果会不同。

仅做多蓝图

如果蓝图只包含开多信号,启用反向开仓后,这些开多信号将全部按照开空执行。

原本的仅做多蓝图会在执行层面变为仅做空。

仅做空蓝图

如果蓝图只包含开空信号,启用反向开仓后,这些开空信号将全部按照开多执行。

原本的仅做空蓝图会在执行层面变为仅做多。

多空双向蓝图

如果蓝图同时包含多头和空头信号,则两个方向都会互换:

  • 开多信号变为开空
  • 开空信号变为开多

对回测结果的可能影响

启用反向开仓后,回测结果可能发生以下变化。

收益方向可能变化

原本盈利的交易可能变为亏损,原本亏损的交易也可能变为盈利。

但由于止盈止损、手续费、滑点和行情路径的影响,结果通常不会简单地完全相反。

胜率可能变化

如果原信号经常判断错误方向,反向开仓可能提高胜率。

如果原信号方向本身有效,反向开仓可能降低胜率。

盈亏比可能变化

多头和空头行情的波动结构可能不同,因此反向后的平均盈利和平均亏损不一定与原始结果对称。

最大回撤可能变化

反向执行可能改善收益,也可能显著增加回撤。

尤其在具有长期单边趋势的市场中,多头和空头策略的风险并不完全相同。

手续费通常不会因此减少

如果信号数量没有变化,反向开仓通常不会明显减少交易次数和手续费。

先回测,再挂载

建议先在回测中启用反向开仓,确认反向结果具有足够的稳定性后,再考虑用于挂载蓝图。

不要只比较最终收益

还应同时比较:

  • 最大回撤
  • 胜率
  • 盈亏比
  • 连续亏损
  • 手续费
  • 不同年份表现
  • 不同交易对表现
  • 多头与空头表现

使用多个市场阶段测试

建议覆盖:

  • 上涨趋势
  • 下跌趋势
  • 横盘震荡
  • 高波动行情
  • 低波动行情

检查止盈止损方向

确认反向开仓后,止盈止损能够按照实际仓位方向正确计算和执行。

小额验证实际执行

即使回测表现良好,正式挂载时也建议先使用较小资金观察实际订单执行情况。

开启反向开仓后,蓝图本身会被修改吗?

不会。

反向开仓是回测或挂载时的独立执行设置,不会修改蓝图中的节点、条件和参数。

关闭反向开仓后会恢复原方向吗?

会。

关闭后,蓝图将继续按照原始开仓方向执行。

开多信号一定会变成开空吗?

是的。

启用反向开仓后,蓝图生成的开多信号会按照开空方向执行。

开空信号一定会变成开多吗?

是的。

启用后,蓝图生成的开空信号会按照开多方向执行。

反向开仓会自动平掉当前仓位吗?

反向开仓的定义不是“先平仓再反手”。

它只负责反转新产生的开仓信号方向。实际是否能够开仓,还取决于蓝图的持仓限制、当前仓位状态和交易所账户模式。

回测中开启后,挂载蓝图也会自动开启吗?

不会。

回测和挂载蓝图中的反向开仓设置相互独立,正式挂载时需要单独确认。

为什么原蓝图亏损,反向后仍然亏损?

可能的原因包括:

  • 手续费和滑点较高
  • 止盈止损不适合反向仓位
  • 信号本身接近随机
  • 交易频率过高
  • 多空市场结构不同
  • 回测时间过短
  • 蓝图存在其他逻辑问题

反向开仓可以替代修改蓝图吗?

不能完全替代。

它适合快速测试和执行方向反转。如果反向结果长期有效,仍建议进一步分析并优化蓝图的原始逻辑、命名和仓位管理规则。

总结

NavaX 蓝图交易中的反向开仓功能,用于将蓝图最终生成的开仓信号方向进行反转。

启用后:

  • 开多信号实际执行开空
  • 开空信号实际执行开多

该功能同时支持蓝图回测和挂载蓝图交易。用户无需修改蓝图结构,即可快速比较正向与反向执行结果。

需要注意的是,反向开仓只改变开仓方向,并不会自动反转蓝图中的全部逻辑。

正式使用前,应重点检查:

  • 止盈止损方向
  • 仓位管理规则
  • 手续费与滑点
  • 最大回撤
  • 不同市场阶段的表现
  • 挂载蓝图后的实际订单执行情况
风险提示: 回测结果不代表未来表现。反向开仓不会保证原本亏损的蓝图变为盈利蓝图。请在充分回测和小额验证后谨慎用于实际交易。

Product Update

Multi-exchangeDesktopExecution

相关阅读

蓝图交易新增反向开仓功能 | NavaX