StopLevelとFreezeLevelによる制限

分かりにくい2つの制限

MQL4で長らく曖昧に理解していたStopLevelとFreezeLevel。ようやく正しい仕様を理解できました。というか、ちゃんとMQL4のサイトに定義がありましたorz

Requirements and Limitations in Making Trades

「ここに記載されている表の条件を満たしなさい。そうしないと注文エラーになりますよ。」ということです。例えば、StopLevelのBuyポジションの場合、損切り価格(SL)は、「Bid-SL ≥ StopLevel」を満たしなさいという意味です。

StopLevelはMarketInfo(Symbol(), MODE_STOPLEVEL)、FreezeLevelはMarketInfo(Symbol(), MODE_FREEZELEVEL)で取得できます。なお、StopLevelとFreezeLevelはポイント値ですので、比較式を作る時は注意(比較する側される側、どちらもポイントに換算するか価格に換算するか)が必要です。

ずっとモヤモヤしていた問題が1つ解決できました!

今まで掲載していたorderSendReliable()とorderModifyReliable()を一部見直さないといけませんね。この記事を公開したら、すぐ書き直そうっと。

余談ですが、MarketInfo(Symbol(), MODE_STOPLEVEL)とAccountStopoutLevel()は、字面が似ていますが意味が全然違います。前者は上記の通り、通貨ペアごとの仕掛けの制限を表します。後者は、FX業者の強制ロスカット率を表します。お間違えのないように。

MT4の無料プログラミング講座

LINE公式アカウントを友だち追加して、MT4のプログラミング講座を無料で受けちゃおう!

超豪華プレゼントも盛りだくさん♪

MT4プログラミングを習得すると、オリジナルEA運用、作成代行、商品販売等、複数の収入源を手に入れられるよ。副業に最適だね!

↓↓↓ 詳細はこちら ↓↓↓

アイキャッチ

>

エターナル・パートナーPRO ~MT4裁量トレード支援ツール~ 「MT4は裁量トレーダーに優しくない」そう思ったことありませんか?もっと快適にトレードするための強力な売買ツールが必要だと考え、開発したのが「エターナル・パートナーPRO」です。元々は自分自身のために開発したツールですので、手抜き無しのガチものです。既に200名近い方に手に取っていただき、喜びの声が続々と届いております。ぜひご覧ください!

CTR IMG