程式交易_OrdeModify()函數|介紹避免先行測試錯誤的方法
介紹OrdeModify()函數與避免先行測試錯誤的方法
很多EA都是在OrderSend()函數的後面直接加入OrdeModify()函數來設置StopLoss(停損)或TakeProfit(停利)。
因為在舊版本Build的MT4上用OrderSend()函數來設置StopLoss或TakeProfit的話會出現錯誤或拒絕下單的情況,所以會使用這種技術。
最近Build雖然已經改善了這個問題,但是在OrderSend()函數的後面直接加入OrderModify()函數的EA還是有很多。
部位不被結算的現象
在極少情況下,先行測試時會出現部位不被結算現象。
其原因就是在OrderSend()函數中沒有設置StopLoss或TakeProfit,而在後面直接設置了OrderModify()函數,導致出現錯誤令OrderModify()不能通過時,部位不被結算。
避免方法有兩種。
●1.用OrderSend()函數設置StopLoss或TakeProfit。
●2.確認OrderModify()函數的返回值來進行處理。
使用方法1時不需要再次查看,處理速度也會加快。
閱讀全文
持有OANDA真實帳戶的投資人可以使用豐富的OANDA獨有指標
開戶真實帳戶