VBA解釋器的一個 BUG [金字塔]
- 咨詢內(nèi)容:
Function IsTradingTime(sMarket, iTime)
If sMarket="ZJ" then
IsTradingTime= iTime>91500+5 and iTime<113000-5 or iTime>130000+5 and iTime<151500-5
Elseif sMarket="DQ" or sMarket="ZQ" then
IsTradingTime= iTime>90000+5 and iTime<101500-5 or iTime>103000+5 and iTime<113000-5 or iTime>133000+5 and iTime<150000-5
Elseif sMarket="SQ" then
IsTradingTime= iTime>90000+5 and iTime<101500-5 or iTime>103000+5 and iTime<113000-5 or iTime>133000+5 and iTime<1410000-5 or iTime>142000+5 and iTime<150000-5
Else
IsTradingTime= 0
End if
End Function
調(diào)用語句
ddd=IsTradingTime("SQ", 151530)
Application.MsgOut(ddd)
返回值-1,預(yù)期值為0
- 金字塔客服:
在VBA中,的true跟false不是我們在C++中的 1和0,true在VBA中的值就是 -1 的,你的代碼返回返回 -1說明你的代碼存在邏輯錯誤。
建議你在IsTradingTime函數(shù)中多使用Application.MsgOut調(diào)試看看每個步驟及返回值查找問題
有思路,想編寫各種指標(biāo)公式,程序化交易模型,選股公式,預(yù)警公式的朋友
可聯(lián)系技術(shù)人員 QQ: 1145508240 進(jìn)行 有償 編寫!(不貴!點(diǎn)擊查看價格!)
相關(guān)文章
-
沒有相關(guān)內(nèi)容