作者:
rcwang (啊嘻汪)
2019-01-01 00:53:00先提程式技術方面, 這是所謂的防衛子句寫法這廣泛出現在許多類似 C 與 C++ 的程式語言的程式中這有點像是站衛兵的意思, 如果符合條件就會被衛兵趕出去趕出去的方法有 continue 與提早的 return那麼在程式交易方面, 例如 Easy Lang 或 Power Lang或是一些 C# Based 的開發環境, 例如 Wealth-Lab 都有把掛單的流程責任切得很清楚, 基本原則就是每個動作都要查他不能不給你查, 所以設計上 Order Command 都會有 return但是共識上會假設程式執行很快, 所以不會幫你鎖單也就是如果你 OrderSelect 但是其他 EA 也在跑他也能動他所以你通常都會看到只對 Error Path (出錯的執行路徑)的處理, 就像是一堆 !OrderSelect, !OrderClose但是是不是執行成功就不用檢查? 實務上還是要因為有時候銀行端/伺服器端, 會幫你自動撤單(不知道原因)又自動幫你補單(感覺像他手殘按到) 銀行端補單的 MagicNumber 會非常詭異, (通常伴隨著錯誤的 lots...)所以其實還是要做, 但是你在網路上查得的各種資源原則上還是會假設 Order Cmd 出去就穩了難得看到 MQL 的文, 推推 QQ!!