DEBUGFILE和DEBUGFILE2的寫法[金字塔模型]
模型策略源碼: DEBUGFILE和DEBUGFILE2的寫法
這兩個函數的用戶體驗太那個什么了。現做一個詳細的說明,為新手節約點時間(我就是這么好心)
一、debugfile只在最后一個周期才執行,debugfile2可作用于所有周期。這個大概誰都能明白。
二、兩者都可以往指定文件輸出特定的唯一的數字,但是
DEBUGFILE(PATH,STR,NUM),沒有參數N,寫了參數則公式通不過。始終輸出打印時間。
DEBUGFILE2(PATH,STR,NUM,N),有參數N,小心了!N<=0不打印輸出時間,N>0(不見得是整數)輸出打印時間。不寫參數N則公式通不過。
三、DEBUGFILE(\'D:\\TEST.TXT\',\'當前資產為%.2f\',1234)
DEBUGFILE2(\'D:\\TEST.TXT\',\'當前資產為%.2f\',1234,1)
‘%.2f’這個打印控制符里面的‘f’必須小寫,否則公式能通過,但是數字輸出為空。這算是小意思了,不算為難你。
四、DEBUGFILE除了可以輸出指定數字以外,還可以輸出一連串的字符串,包括把數字轉化為字符串,沒有控制符‘%.2f’了,例:
debugfile( \'D:\\TEST.TXT\' ,\'當前價格: \'+numtostr(close,2) +\' \'+\'開盤價 \'+numtostr(open,2),-1);
但是,你發現這個例子里面最后有個參數‘-1’,是什么?這是為難你的地方。DEBUGFILE本身沒有輸出時間控制參數N(見第二條),
所以這最后面的數字不是參數N,不是控制是否輸出打印時間的。但是必須要有個數,隨便是什么數,但是不能空。
空則公式通不過。
DEBUGFILE2除了可以輸出指定數字以外,還可以輸出一連串的字符串,包括把數字轉化為字符串,沒有控制符‘%.2f’了,例:
debugfile2( \'D:\\TEST.TXT\' ,\'當前價格: \'+numtostr(close,2) +\' \'+\'開盤價 \'+numtostr(open,2),-1,10);
請注意最后兩個參數-1和10,因為DEBUGFILE2帶有參數N(見第二條),所以該例句中最后一個數10是參數N,10>0因此要打印輸出時間。
而前面那個-1,則代表填任意數字都行。后面兩個數都必須填,少一個,則公式通不過。
五、總算是搞明白了。看下面的 debugfile2( \'D:\\TEST.TXT\' ,\'當前價格: \'+numtostr(close,2) +\' \'+\'開盤價 \'+numtostr(open,2),-1,10);
的輸出結果:
2014-06-11 14:42:30.630 當前價格: 2154.00 開盤價2155
有什么不對嗎?有。當前價格‘2154.00’帶有小數,開盤價‘2155’沒小數(不是也應該帶小數嗎?)哎,輸不了那么多字符串,
debugfile2對輸出字符串數量有限制,中文字符串一個頂幾個,到后面輸不出來小數了。
{別忘了將本網告訴您身邊的朋友,向朋友傳達有用資料,也是一種人情,你朋友會感謝你的。}
有思路,想編寫各種指標公式,程序化交易模型,選股公式,預警公式的朋友
可聯系技術人員 QQ: 1145508240 進行 有償 編寫!(不貴!點擊查看價格!)
相關文章
-
沒有相關內容