TrueDate(真正交易日期)这个函数在交易策略中无用(如下图),但是在行情报价的K线图上有用,这是什么原因呢?
看错了,在策略中也可以用的
仔细验证后,发现还是有问题:
IF (TrueDate(0)<>TrueDate(1))//判断当日首K(小于日线级别)
问题1是:在行情报价的K线图上准确,但是在交易策略的K线图上不准确(向后推迟1根K线,标记在21.15上),请老师再次亲自验证。
问题2:替代方案如下,不是更简单吗?
TimeStamp ts = TradingOpenDateTime(Symbol,DATE); //获取当日开盘时间
IF (TIME*1000000000==ts.time)
PlotString("当日首K","1",L,WHITE);
TrueDate,按系统设计是不可回溯的。
那么TrueDate(0)<>TrueDate(1),用的()是什么意思?我理解仍然是在回溯,为什么不用[0][1].
建议反馈研发部门,将其设定为序列变量(可回溯),保持系统逻辑的一致性,用小()回溯不伦不类,也不易于新手学习理解。
问题1:大概率跟你时间切割有关 显示问题 所有数据源要统一时间刻度
问题2:判断交易日首K、末K,有很多方案,就如你发现的,除了trueDate,还有非常多的方案
问题3:如果没记错,TrueDate设计就是可回溯的
关于问题3:
早先就是序列变量
有了夜盘
就有了TrueDate函数
研究的过程中
尽量去理解
而非永远抱着怀疑态度质疑基础性常识性问题
问题2:
我脑海中,闪现出来的方案起码也有5-6种
而且
直接用Date\Time
是一种非常不好的习惯
涉及到时间的切割方式