PineScript正在退出策略,并在同一栏上打开双倍定单

时间:2019-08-19 15:17:48

标签: trading algorithmic-trading pine-script

在TradingView中使用pinescript编辑器,我注意到了一个有点奇怪的情况。当存在触发多头交易(止损)的触发器和进入同一空头上的新空头的触发器时,两者均打开,但是,该空头的头寸规模比应有的大两倍。

以下是相关代码:

// When uptrend, use upper band as a stop market buy 
if (uptrend) 
    strategy.entry("Long", strategy.long, stop = h)

// Exit longs with a trailing stop. Assume longStopPrice is calculated per bar
if (strategy.position_size > 0)
    strategy.exit("Trailing Stop", "Long", stop = longStopPrice)

// When downtrend, use lower band as a stop market sell 
if (downtrend) 
    strategy.entry("Short", strategy.short, stop = l)

// Exit shorts with a trailing stop. Assume shortStopPrice is calculated per bar
if (strategy.position_size < 0)
    strategy.exit("Trailing Stop", "Short", stop = shortStopPrice)

这是UI上的输出:

enter image description here

请注意,多头头寸规模为15.358918,随后几根柱形,以尾随止损尺寸-15.358918关闭。但是,在相同的条尺寸-30.70059上也开设了一个新的空头交易(不应为-30,而应为-15)。

enter image description here

第二次交易稍后,通过大小为+15.34的追踪止损进行平仓(但是-30被打开)。

该策略使您在回测的整个过程中净空-15个单位。理想情况下,我希望strategy.enter只输入一个单一头寸大小和止损单即可平仓,而不是输入双重头寸平仓一半。

有什么想法吗?

1 个答案:

答案 0 :(得分:0)

如果下降趋势则添加到- 和strategy.position_size == 0