Tradingview 策略回测错误 "no data"

Tradingview Strategy backtest error "no data"

我用 pinescript 写了一个示例策略。我很困惑如何使用当前数据让我在回测中 No data

//@version=5
strategy("My strategy", overlay=true, margin_long=100, margin_short=100)


ma1 = ta.ema(close, 28)
ma2 = ta.ema(close, 36)
ma3 = ta.sma(close, 20)
ma4 = ta.sma(close, 50)

plot(ma1, title='MA 1')
plot(ma2, title='MA 2')
plot(ma3, title='MA 3')
plot(ma4, title='MA 4')

longCondition = ((close<=ma1) and (close>ma2) and (close>ma3) and (close<=ma4))?true:false  
if (longCondition)
    strategy.entry(id = 'Long Entry', direction = strategy.long, when = longCondition, alert_message = 'Long(' + syminfo.ticker + '): Started')

shortCondition = ta.crossover(ma1,ma2)
if (shortCondition)
    strategy.entry(id = 'Long Entry', direction = strategy.short, when = shortCondition, alert_message = 'Short(' + syminfo.ticker + '): Started')

但是,如果将 longCondition 更改为

longCondition = ((close<=ma1) and (close>ma2) and (close<=ma3) and (close<=ma4))?true:false  

我可以看到回测结果

我注意到当当前蜡烛满足条件时会出现这种情况,然后它会显示回测结果,如果当前蜡烛不满足条件则不会给出数据错误。

但我认为无论哪种情况我 select 回测数据都应该生成,因为这种情况应该在过去的某个地方发生过,对吧?因此应该采取切入点并生成回测图表。

请告诉我这是如何工作的,我在理解上哪里出错了。

no matter which condition I select backtesting data should be generated because this condition should have occurred somewhere in the past, right?

不是真的。除非你能证明你的条件已经满足,策略测试器显示“无数据”,否则我会相信策略测试器的说法。

我将您的脚本(没有您提到的更改)添加到 BTCBUSD Binance 1W 图表。没有条目,因此 -> 没有数据

如果我转到 1D 时间范围,则会有一些交易,并且有这些交易的数据。