请金字塔的技术人员帮忙看看,我这样推理是否正确。
HOLDING在同一周期中,会随着指令的执行而变化。但是,当模型被读完一次后,再次读的时候,HOLDING就被初始化,恢复为前一个周期最后一个交易函数执行后所得到的结果。
所以,同一模式的函数
IF THOLDING>0 THEN TSELL(CON,1,MKT);
IF THOLDING=0 THEN TBUY(LO,1,MKT);
IF HOLDING>0 THEN SELL(CON,1,MKT);
IF HOLDING=0 THEN BUY(LO,1,MKT);
前者会有可能在高频扫描下,即开即平。
而后者不会,只有在下一周期开始,如果符合条件才会平仓。因为每次重新HOLDING初始化,所以此时HOLDING为0.但因为上一次扫描模型时已执行了一次开仓,所以不重复。这只是我的假设。
因为说明书三番四次说明。千万要先写平仓,再写开仓。不然图表也会即开即平
我是把MYHOLDING:HOLDING放在模型的不同位置上得出这样的结论。放在语句执行后,怎样都符合理论。但放在最前就不是了。我怀疑就是这样的原因作怪。
我不明白原理,很多时候就会有问题,
发过模型,发过问题。也没有人回答。我也知道你们忙。所以才想搞清楚。不是想知道公司的机密。
这里不涉及到机密的问题。
只是从你描述来看,逻辑比较紊乱,我们也具体不清楚你到底是想了解什么。
http://www.weistock.com/bbs/dispbbs.asp?boardid=4&Id=332 问题4 所涉及到的调试技巧,将会对你了解内部运行机制和调试你的问题代码有很大的作用,我想你一定没好好看过
王峰先生。说话不要太绝对。你说我的逻辑乱可能的确是。但你们的指导文章从一开始我就打印出来拜读的。也是一步步调试的。现在模型不是不能写出来。只是我想优化,预防更多的突发情况,是运行速度更快。
我知道你们忙,但不能动不动都把别人当新手看。我跟你们客服都打交道1年了。有很多BUG都是我提出修改的。也有不少问题是一起解决的。