作者:
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!!