以文本方式查看主题

-  金字塔客服中心 - 专业程序化交易软件提供商  (http://weistock.com/bbs/index.asp)
--  公式模型编写问题提交  (http://weistock.com/bbs/list.asp?boardid=4)
----  问几个实际调试中的问题  (http://weistock.com/bbs/dispbbs.asp?boardid=4&id=52677)

--  作者:cnmfy
--  发布时间:2013/6/1 14:38:36
--  问几个实际调试中的问题

input:N(45,2,5000,1),M(15,1,5000,1);
RUNMODE:0;//工作于逐K模式
VARIABLE:Maxhh=0,Minll=0;//句1
VARIABLE:PMaxhh=0,PMinll=0;//2

findhh:H;//3
fingll:L;//4

IF NOT(ISLASTBAR) THEN EXIT;//5
IF(N<DATACOUNT) THEN //6 该句处设置了断点;
begin 
   ... 
end;

采用逐K模式调试

问题:为什么没有执行到断点语句6处
          我将断点设在如上句6处,单步调试可以看到运行句1--句5循环运行;如果直接F5,会显示程序结束,表明始终没有执行到断点句6处。
          是不是IF的判断条件ISLASTBAR的原因?
          上述语句,是不是只有在开盘时间,才会执行到句6断点处






--  作者:cnmfy
--  发布时间:2013/6/1 14:47:27
--  
问题2:单步调试时,每根K线程序都会执行一遍,那么
                         VARIABLE:Maxhh=0,Minll=0;//句1
                         VARIABLE:PMaxhh=0,PMinll=0;//2

             每当在一个新的K线周期执行时,上面几个全局变量会被重新初始化为0么?

--  作者:cnmfy
--  发布时间:2013/6/1 15:04:10
--  回测信号不对
问题3:非开盘时间,我如何在最后一个根K线上观察程序的执行?
--  作者:cnmfy
--  发布时间:2013/6/1 15:40:30
--  
问题2,我自己解决了:图表程式化交易模式下,全局变量只被初始化一次

我在后面加个一句:
VARIABLE:Maxhh=0,Minll=0;
VARIABLE:PMaxhh=0,PMinll=0;

findhh:H;
fingll:L;

PMaxhh:=2;

从第二根K线开始PMaxhh的值一直是2,说明PMaxhh没有被重新初始化,逐K模式下,全局变量只初始化一次。



--  作者:cnmfy
--  发布时间:2013/6/1 17:04:46
--  
问题自己都解决了