请问DEBUGFILE2和DEBUGFILE的区别
另,如果我想实现每个周期结束时,输出ma(c,5)的结果,请问应该怎么实现?
非常感谢
debugfile2:
输出指定的调试字符串到一个指定的文件中
用户可以在公式中通过输出指定的字符串到文件来实现调试或者其他的目的.借此可以借助这个功能来完成监控公式运行的各种细节参数.该函数用法与DEBUGFILE基本相同,唯一区别是该函数将会在所有周期内有效,该函数属于逐K线执行函数,只能在逐K线计算模式下运行。
用法:DEBUGFILE2(PATH,STR,NUM,N),PATH为用户的本地计算机路径,STR为用户指定输出的一个行文字,NUM为用户指定的一个监控数字,N为1表示自动输出当前时间,为0表示不自动输出时间.
例如:DEBUGFILE2('D:\TEST.TXT','当前资产为%.2f',1234,1),将在公式的监控部分输出到D:\TEST.TXT文件, "当前资产为1234.00"
"%.2f"为一个打印的控制符号,系统会将他替换为指定的一个数字输出,%.2f为显示两位小数,%.0f则表示不显示小数(此处为数字0,非字母O)
所属函数组:交易系统
debugfile:
在最后一个周期输出指定的调试字符串到一个指定的文件中
用户可以在程式化交易中通过输出指定的字符串到文件来实现调试的目的.借此可以借助这个功能来完成监控程式化交易的各种细节参数.因为在后台执行程式化交易时,用户在前台的图表上是看不到内部数据的
用法:DEBUGFILE(PATH,STR,NUM),PATH为用户的本地计算机路径,STR为用户指定输出的一个行文字,NUM为用户指定的一个监控数字.
1.de2是逐k线模式下的输出,de就不是了
2.debugfile2('d:\test.txt','ma=%.2f',ma(c,5),1)
按照:debugfile2('d:\test.txt','ma=%.2f',ma(c,5),1)
在1分钟周期下,打印出来的文件是这样的:
2014-02-21 10:28:05.444 ma=-1.#R
2014-02-21 10:28:05.445 ma=-1.#R
2014-02-21 10:28:05.446 ma=-1.#R
2014-02-21 10:28:05.446 ma=-1.#R
2014-02-21 10:28:05.447 ma=2188.28
2014-02-21 10:28:05.448 ma=2187.52
2014-02-21 10:28:05.448 ma=2186.72
2014-02-21 10:28:05.449 ma=2186.16
2014-02-21 10:28:05.450 ma=2185.84
2014-02-21 10:28:05.451 ma=2185.40
2014-02-21 10:28:05.452 ma=2185.60
2014-02-21 10:28:05.453 ma=2185.60
2014-02-21 10:28:05.453 ma=2185.76
2014-02-21 10:28:05.454 ma=2185.92
2014-02-21 10:28:05.454 ma=2186.08
2014-02-21 10:28:05.455 ma=2186.40
2014-02-21 10:28:05.455 ma=2186.56
2014-02-21 10:28:05.456 ma=2186.20
2014-02-21 10:28:05.457 ma=2185.72
2014-02-21 10:28:05.457 ma=2185.28
2014-02-21 10:28:05.458 ma=2184.76
2014-02-21 10:28:05.459 ma=2184.44
2014-02-21 10:28:05.459 ma=2184.04
2014-02-21 10:28:05.460 ma=2183.72
2014-02-21 10:28:05.460 ma=2183.60
2014-02-21 10:28:05.461 ma=2183.24
2014-02-21 10:28:05.462 ma=2182.72
好像不是每个周期结束才打印,请问是什么问题?
改成:
ma5:ma(c,5);
if timetot0(dynainfo(207))=time0 then debugfile('d:\test.txt','ma=%.2f',ma5);
应用于图,已经几分钟了,但是没有出现test.txt