PineScript 正在退出策略并在同一柱上打开双倍大小的订单(向经纪商发送双倍数量的 Webhook)

问题描述 投票:0回答:1

使用 TradingView 中的 pine 脚本编辑器,我注意到一个奇怪的现象。当同一根柱上存在退出多头交易的触发器和进入空头交易的触发器时,该头寸的头寸规模是我预期的 2 倍。它对利润/损失计算没有影响,但会向我的经纪人发送 2 倍预期数量的 Webhook 请求。

任何使用

strategy.entry("ID1",streategy.long)
然后
strategy.entry("ID2",streategy.short)
的策略都会产生这些结果。所以我的问题是如何阻止显示此行为并向经纪人发送 2 倍预期数量的策略。这是一个例子:

我尝试了以下策略,预计交易数量为 1。

/@version=5
strategy("BarUpDn Strategy", overlay=true, default_qty_type = strategy.fixed, default_qty_value = 1)
maxIdLossPcnt = input.float(1, "Max Intraday Loss(%)")
strategy.risk.max_intraday_loss(maxIdLossPcnt, strategy.percent_of_equity)
if (close > open and open > close[1])
    strategy.entry("BarUp", strategy.long)
if (close < open and open < close[1])
    strategy.entry("BarDn", strategy.short)

但是使用 webhook 发送给经纪商的结果图表和数量是 2。

enter image description here

任何关于避免 webhook 发送 2 倍订购数量的建议将不胜感激。

pine-script webhooks pine-script-v5
1个回答
0
投票

Tradingview 不允许对冲。因此,当您改变方向时,它会先平仓,然后再改变方向。

因此,如果您持有 +1 份合约的多头头寸并想做空,您首先需要以 -1 平仓多头头寸,然后再以 -1 做空。因此,它是-2。

如果您想在图表上看到 +/- 1,您可以在

strategy.close()
之前致电
strategy.entry()
并自行平仓。

if (close > open and open > close[1])
    strategy.close("BarDn")
    strategy.entry("BarUp", strategy.long)
if (close < open and open < close[1])
    strategy.close("BarUp")
    strategy.entry("BarDn", strategy.short)

enter image description here

© www.soinside.com 2019 - 2024. All rights reserved.