*

第13回:コードに汎用性を持たせる~”USDJPY”よりSymbol()~

公開日: : FX自動売買開発 , , , ,

MT4で設定を変更ができるような記述をする

これまでに様々なコードを扱いましたが、
これまでの書き方では毎回設定や数値を変更するたびに
ソースコードを編集しなければなりません。

今回はなるべくコードを編集せずに、
MT4側で設定を変更できるような記述を取り扱います。
※パラメータ化は今回は行いません。

例えば、
通貨ペアを指定する場面で”USDJPY”と指定してしまうと、
“USDJPYmajor”、”USDJPYminor”等のようになっている特殊なMT4ブローカーの場合、
正しく処理されません。

上記のようにSymbol()
(現在MT4で選択されている通貨ペア)を使うことにより、
MT4側の変更がEAに反映されるようになります。

また、
時間足についてもPERIOD_M5などを使うと、
たとえチャートが1時間足になっていたとしてもEAでは5分足で計算してしまいます。

のように「Period()」もしくは「0」と入力することにより汎用性が増します。

どの通貨ペアでも使えるpips単位を作る

pips単位について困ったことはありませんか。

現在多くのMT4業者ではドル円の最小単位が0.001となっています。
一昔前までは0.01だったこともありここに様々な問題が発生しています。

トレードでの話では1pips = 1銭 = 0.01 を表しますが、
MT4の最小桁は0.01か0.001の場合があります。

そのため、どちらの場合にも対応できるよな記述が必要になります。

EA起動時に一回だけ処理されるOnInit()内でpipsという変数を作ります。
下記がその記述ですが今までに扱っていない記述方法がでてくるので「
よくわからないけど、これでpipsという単位が使える」くらいの感覚で十分です。

for文を勉強したらまたここに戻ってきてください。

MarketInfo(Symbol(),MODE_DIGITS)というのは現在セットされている通貨ペアで、
小数第何位まで扱えるかという数値を返します。

2桁、4桁(EURUSD)の業者の場合はそのまま、
3桁、5桁の業者の場合は、10倍することにより、0.01 0.0001がpips単位になります。

ここで作ったpipsを使うことにより、
「ドル円がシグナル発生から5pips上がったら」という条件を

ではなく

と書くことができます。

0.05と書いてしまうとユーロドルの際におかしなことになりますが、
5*pipsと書くことにより、ドル円でもユーロドルでも使えるEAになります。

※3桁、5桁の場合に10倍するという記述だけで済まそうとすると、
CFDに対応できなくなります。

このコメントはWEBに公開されるので、問い合わせ等はメールでお願いします。

関連記事

第17回:OrderSelectでポジションの情報を取得する

ポジションの情報を取得する 今回はすでに持っているポジション、オーダーした複数のポジションの情報を

記事を読む

第6回:オーダーに条件をつける IF文

ここではオーダーを送信する前に条件文を挿入します。 条件の書き方 前回までには、「新規ポジシ

記事を読む

第5回:コンパイルとEAの生成

ここではソースコードからEAを生成します。 mqファイルのコンパイル ソースコードファイルは

記事を読む

【MQL4】外部ソフトなしで稼働するコピートレードツールを作る。その⑦

前回は、コピー先でエントリーするところまで行ったので、今回は決済処理をします。 決済は「ファイル関

記事を読む

EAに自動的に最適化させる

どんなに優秀なEAでも、 ライブで稼働させる場合、定期的なパラメータの最適化が必要です。

記事を読む

 
  • ブログ管理人の横瀬兼元(ペンネーム)です。

    各トピックに対するコメントは各記事のコメント欄にお願いします。それ以外のご質問、ご相談などは
    infoあっとfxantenna.com
    まで
    私の偽物がいるらしいので偽物にご注意ください。
no image
ストップレベル=0はストップレベルがないことではない

MT4/MT5では予約注文を行う際にストップレベルというものがあります

no image
私の偽者、偽ブログにご注意ください

読者の方からご連絡いただいたのですが、私のブログの内容をそのままコピー

no image
サービス展開向けの仮想通貨自動売買システムを作るには

前置き ビットコイン、仮想通貨の自動売買を作る目的として、通常は個人

一回の演算で複数のリクエストを送る 仮想通貨の自動売買⑪

公開:2017/9/4 基本的にjson形式でAPIをたたく場合

コインチェックAPIで信用取引 仮想通貨の自動売買⑩

公開:2017/9/4 これまではAPIで現物取引を扱ってきまし

→もっと見る

PAGE TOP ↑