【MQL4】OrderCloseでエラーコード138が返ってくる原因と解決方法

※本ページはプロモーションが含まれています

いやー、MQL4は仕様どおりに作っても、取引所が絡んだエラーが多いです。

OrderCloseの関数でも同じでした。エラーコード138が必ず返ってくる。

色々調べて試して、ようやく解決しました。記事にまとめてみました。

目次

OrderCloseのエラー内容

20日移動平均線にタッチしたら手仕舞いするというロジックを組んだんだけど、どうしてもオーダーがオープンになったままクローズしない。

 

ログで表示するようにしてみると、OrderCloseの際に、エラーコード138、その内容はREQUOTEでした。

エラーコード138の意味

公式リファレンスによると

あわせて読みたい
Runtime Errors - Codes of Errors and Warnings - Constants, Enumerations and Structures - MQL4 Refere... Runtime Errors - Codes of Errors and Warnings - Constants, Enumerations and Structures - MQL4 Reference
矢野テック
矢野テック

REQUOTE(再見積もり)のエラーという意味のようですが、意味がわからん。

原因はスリッページの値が低いから

相当しらべて、あれこれ色々いじってみたのですが、解決せず。

 

しかし、以下の方の記事に検索でヒットして、解決しました。

もっちゃんのMT4開発日記
『138エラーの謎がとけた・・・』 スリップページの設定が狭すぎたことが原因だったようだ参考にしていた書籍では OrderSendのスリップページの単位はpipsとあり 見本のプログラムでも「3…
矢野テック
矢野テック

スリッページの値を低く設定すると発生するようです。現に、僕のソースではスリッページ0で動かしてました。

スリッページ=30で実施したところ無事うごきました

スリッページを30ポイントに設定したら、ちゃんとクロースできました。

取引所によって、スリッページの下限は変わるみたい。

調べてもわからないはずだ。。

最後に正常稼働したOrderCloseのソース

このページに検索でたどり着いた方は、色々やっている方だろうから、ご存知だと思うけど。

矢野テック
矢野テック

長くなるので書かなかったけど、上記はロングのみのオーダーをクローズする関数です。OrderType() == OP_SELL でショートのオーダーを検知できます。

 

ブログランキングに参加してます。この記事が少しでもお役に立ちましたら、応援ポチっとお願いします。

にほんブログ村 為替ブログ システムトレード 自作EA派へ
にほんブログ村

お友達にMT4インジケータープレゼント中

機械学習使った日々の予測結果や、細かい試行錯誤の結果はLINEで公開しています。パスワード付き記事もこちらから。

また、今ならお友達には矢野テック自作のMT4用のインジケーターをプレゼント中です。

友だち追加

よかったらシェアしてね!
  • URLをコピーしました!
  • URLをコピーしました!

この記事を書いた人

プログラマー。FXのMT4を使った自動売買EA作成やBOT作成などが趣味。2016年から元本10万円をどこまで増やせるか挑戦中。一旦は10万⇒700万⇒2017暴落 20万。ガチホからFXトレードに変更。 現在1000万円。その過程やノウハウは無料メール講座にまとめました。1か月で学べます。→無料メール講座

ご質問はコメント欄からお願いします

コメント一覧 (4件)

  • バックテストとの整合性もあるので、スリッページ30は痛くないですか?
    私の場合はAlpariのデモで、スリッページ3~5だとエラー138がたびたび返ってきますが、
    スリッページ6だと大丈夫なようです?!
    サーバーが遠いんですかね?

    • 先月までは3でも問題なく約定していましたが、今月に入ってエラー138が頻発し始めました。
      ただpipsでなくpoint表記だから30point=3pipsなのでバックテスト結果とそれほど乖離もないだろうし、それでいいわけですかね?

      • 今まで動いていたのにスリッページでエラーになるということは仕様が変わったのかもしれませんね。スリッページの許容値については、自分ではコントロールできないので、動く範囲にこちらが合わせるしかないかなと思ってます。

    • コメントありがとうございます。サーバーによって、スリッページの許容値はかなり違うと思います。そして、デモとリアルでも変わってきます。デモでは低スリッページでも動くけど、いざリアルで動かすとエラー連発みたいな。それでかなり悩まされました。

匿名 へ返信する コメントをキャンセル

目次