見出し画像

IsDemo()が効かない有効期限が無いデモ口座の判定方法(MQL4)

割引あり

最近話題になっている「デモ口座なのにデモ口座縛りのEAが動かない。どうして??」の件。

MQLコーディングを行う時に、一般的に多いのはデモ口座判定を行う時はIsDemo()を使ってtrueならデモ口座、falseならリアル口座という判定ですが、IsDemo()は有効期限なしデモ口座の判定には使えません(´·ω·`)

ブローカーによって最初からデモ口座の有効期限なし(無期限)の所もあるし、ブローカーに申請して期間なしにしてもらう場合もありますけど、いずれにしてもこれらの有効期限なしデモ口座はいずれもIsDemo()の返り値はfalseになります(´·ω·`)

デモ口座なのにデモ口座と判定してくれないIsDemo() っていったい…
うーん…どうしよう…となる訳ですね。

そこでサーバー名を取得してデモサーバーの名称を決め打ち判定する方法を公開されている優しい方がいました(˘ω˘ )

なりた@EA作る人(爆益八幡宮) さん
https://note.com/narita_fx/n/n043a23278d01



例えばサーバー名がForexExchangeCoLtd-Demo1ならデモ口座みたいな感じの判定ですね。
良記事ありがとうございます!\(˘ω˘ )/


IsDemo()の判定が正常にできない中、素晴らしい判定方法だと思います。

ただ、星の数ほどブローカーがあって、ブローカーによって最初からデモ口座の有効期限なし(無期限)の所や、ブローカーに申請してデモ口座の期間を無期限にしてもらう場合などに備えて、色々なブローカーのサーバー名称を書いていくというのはかなり面倒だなーと思いまして、横着なこつめは何か楽に判定できる更なる方法は無いかな(笑)と思い考えた方法を公開します!

<2022.9.20 追記>
少しでもFX EA界のリテラシー向上、技術共有に役立てばと思い無料で読めるようにしてきましたが、パクリ、上から目線の物言い、マウント取りというな嫌な人が多くいます。

そんな経緯から申し訳ないですが記事内容を有料化しましたので、ご興味ある方は投げ銭的なお気持ちでお支払下さい(´·ω·`)

続きをみるには

残り 3,701字

この記事が気に入ったらサポートをしてみませんか?