策略和指标之间的一根蜡烛差异(tradingview 中的 pineScript)

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

我发现我的策略和指标之间存在不一致。如果我直接在指标上进行测量,那么我就有了正确的切入点。如果我在一个策略中完成所有操作,那么交易总是会延迟一根蜡烛。

更清楚:

我的想法很简单。如果 SAR 从蜡烛的顶部移动到蜡烛的底部,则为买入位置。如果 SAR 从蜡烛底部移动到蜡烛顶部,则为卖出头寸。

//@version=5
strategy("myStrategy", overlay=true,calc_on_every_tick = true, process_orders_on_close =true)
start = input(0.02)
increment = input(0.02)
maximum = input(0.2, "Max Value")
SAR = ta.sar(start, increment, maximum)
plot(SAR, "ParabolicSAR", style=plot.style_cross, color=#f2f4f8,linewidth = 4)

if SAR[1]>high[1] and SAR<low
    strategy.entry("Buy", strategy.long,comment="Buy",qty=1)
if SAR[1]<low[1] and SAR>high
    strategy.entry("Sell", strategy.short,comment="Sell",qty=1)

如果我用眼睛分析我的策略,当 SAR 指标在图表上绘制其图标时(在当前蜡烛的开盘点),我开仓。 但如果我通过 pine 脚本编辑器实施我的策略,它会在当前蜡烛的收盘点开仓。

我希望 pine 脚本在 SAR 运动后立即开仓(在蜡烛开盘时而不是在蜡烛收盘时) (见附件截图)

这种差异从何而来,我如何将策略中的交易设置为与指标绘制向下/向上箭头相同的蜡烛?

myStrategy

pine-script pine-script-v5 trading tradingview-api
2个回答
0
投票

默认情况下,您的策略将在下一根蜡烛打开时进入交易。如果将

process_orders_on_close
调用的
strategy()
参数设置为
true
,则可以更改此设置。

您也可以通过属性窗口执行此操作。

process_orders_on_close (const bool) 当设置为 true 时,生成一个 在 bar 关闭和策略后额外尝试执行订单 计算完成。如果订单是市价订单,则 经纪人模拟器在下一个柱线开盘前执行它们。如果 订单是价格相关的,只有当价格 满足条件。如果您想关闭,此选项很有用 当前柱上的头寸。此设置也可以在 策略的“设置/属性”选项卡。选修的。默认为假。

编辑:

默认情况下,策略不会在每次报价时都执行。因此,当您实时查看图表时,您可能看不到图表。要启用对每个报价单的计算,您可以将

calc_on_every_tick
函数的
strategy()
参数设置为
true

您也可以通过属性窗口执行此操作。

calc_on_every_tick (const bool) 指定策略是否应该 在每个实时报价上重新计算。如果为真,则策略为 在实时柱上运行,它将在每次图表更新时重新计算。 如果为假,该策略仅在实时柱关闭时计算。 使用的参数不影响历史上的策略计算 数据。此设置也可以在策略的 “设置/属性”选项卡。选修的。默认为假。


-1
投票

你能解决这个问题吗?如何?谢谢。

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