EA用のMQL言語で上ヒゲと下ヒゲの関数を書く方法【MT4】

EAで自動売買プログラムを色々と書いていると、きっと、

「ローソク足の上ヒゲと下ヒゲを関数化して記述できないかな〜」

なんて思いを抱いたりすることでしょう。

 

この記事では、ヒゲの条件をEAの中で関数化する方法を紹介しておきますね。

 

ヒゲの特性である「トレンドの反転」を生かして、あなたの自動売買EAの逆張りサインにしてみてはいかがでしょうか?

MQL言語でヒゲの出現を記述してみよう

まず、トレンド転換のサインとなりそうなヒゲの定義ですが、上ヒゲの場合で考えると…

・実体部分がヒゲ部分よりも小さい

・実体部分が高値と安値の中間値よりも下に位置している

という2つの要素が必要ですね。

 

これをさっそくMQLで記述してみましょう。

 

 

まずは、いくつか関数を宣言しておくと便利です。(宣言はOnTick()の外に!)

(↓中間値を代入する関数)

double Nakachi;(OnTickの外)

{Nakachi=(iHigh(NULL,0,1)+iLow(NULL,0,1))/2;}(OnTickの中)

 

(↓ヒゲが出た足の大きさを指定する関数。ここではスキャルピング用に2pipsの大きさに設定)

double Higesize;(OnTickの外)

{Higesize=0.02;}(OnTickの中)

 

(↓上髭を代入する関数)

int Uwahige;(OnTickの外)

 

(↓下ヒゲを代入する関数)

int Shitahige;(OnTickの外)

 

こんな感じの関数を最初に宣言しておくと、記述がごちゃごちゃしないので、便利です。

 

では、まずは上ヒゲ発生が確定した時に「Uwahige」に代入させる方法を↓

(OnTickの中)

if(iOpen(NULL,0,1)<=Nakachi&&iClose(NULL,0,1)<=Nakachi
&&(iHigh(NULL,0,1)-iLow(NULL,0,1))>=Higesize)

{Uwahige=1;Shitahige=0;}

 

これで、任意の足が、

・始値と終値の両方が足の高値と安値の仲値よりも下にあり、

・かつ、足自体の長さも2pips以上ある

といういわゆる「上ヒゲ」を定義することができます。

なので、先ほど宣言しておいた「Uwahige」という関数に「1」を代入した、という流れです。

 

当然、ヒゲのサイズをもっと大きなものだけに設定したいときは、最初に「Higesize」に代入しておいた数字を0.03…0.05…などと任意の大きさに設定すればOKですね。

 

下ひげの場合も、この文章を真逆にすればいいだけです。

(OnTickの中)

if(iOpen(NULL,0,1)>=Nakachi&&iClose(NULL,0,1)>=Nakachi
&&(iHigh(NULL,0,1)-iLow(NULL,0,1))>=Higesize)

{Uwahige=0;Shitahige=1;}

 

これで、一つ前の足でヒゲが出現した時に、「Uwahige」もしくは「Shitahige」という関数が「1」になってくれます。

それをトリガーにしてOrderSend()などの売買の記述を書いていけば、ヒゲトレードEAを作ることができますぞ。

ヒゲと実体の大きさや比率も自由自在

ちなみに、

「もっと強烈なヒゲが発生した時だけに関数が変わるような記述もしたい!」

という気持ちもあるかと思います。

↓こんな感じのヒゲの時だけ、エントリーさせたい!という場合ですね。

こういう強烈なヒゲを定義することもできますので、紹介しておきます。

 

先ほどはヒゲの定義に、「足全体の仲値」を使いましたが、もっとヒゲ部分が長くて、実体が極端に短いようなヒゲ足の場合、仲値は使えません。

 

その場合、

「足の高値と安値を4分割」

ほどにしてみましょう。

 

新たに関数「Hige4bunkatsu」「HigeTOP」「HigeBOTTOM」という関数をOnTick()の外に宣言しておきます。(ネーミングが適当w)

(OnTickの外)

double Hige4bunkatsu;

double HigeTOP;

double HigeBOTTOM;

 

(OnTickの中)

{Hige4bunkatsu=(iHigh(NULL,0,1)-iLow(NULL,0,1))/4;}

これで、「足の高値と安値を4分割した値」が「Hige4bunkatsu」に代入されました。

安値が110.050で、高値が110.080だったとしたら、足の大きさは0.030(3pips)なので、

「0.0075」という数字がHige4bunkatsuの中に代入されているというわけです。

 

この数字を、安値に足したものをHigeTOPという関数に代入します。

{HigeTOP=(iLow(NULL,0,1)+Hige4bunkatsu);}

この場合、110.0575という数字がHigeTOPの中に入ったわけです。

足の全体の4分の1の境目が「HigeTOP」という関数に代入されたということになります。

なので、あとは、足の実体がこのHigeTOPを超えなければ、大きな上ヒゲをつけたということになります。

 

先ほどの仲値で作ったヒゲのコードと同じように、

if(iOpen(NULL,0,1)<=HigeTOP&&iClose(NULL,0,1)<=HigeTOP
&&(iHigh(NULL,0,1)-iLow(NULL,0,1))>=Higesize)

{Uwahige=1;Shitahige=0;}

と書けば、OKです。

 

これで、

・始値も安値も足全体の4分の1しかない上ヒゲ

を定義できました。

下ヒゲもこれを逆にするだけ。

まずは「HigeBOTTOM」という関数に、足全体の4分の1の境目を代入します。

{HigeBOTTOM=(iHigh(NULL,0,1)-Hige4bunkatsu);}

 

そして、始値と高値が足全体の4分の1よりも上にあるということを↓で定義します。

if(iOpen(NULL,0,1)>=HigeBOTTOM&&iClose(NULL,0,1)>=HigeBOTTOM
&&(iHigh(NULL,0,1)-iLow(NULL,0,1))>=Higesize)

{Uwahige=0;Shitahige=1;}

 

まとめ:ヒゲのトリガーは逆張りトレードEAには必須

以上が、MQLでの「上ヒゲと下ヒゲの書き方」でした。

 

ヒゲの大きさなどをあなたのお好みの時間軸に合うように「Higesize」で設定して、5分足のスキャルピングから、1時間足のデイトレードまで、幅広くご活用くださいね。

 

移動平均線やオシレーター系を組み合わせると、勝率の高い逆張りエントリーのEAができそうですよね。

 

ぼくも目下色々と試行錯誤中でございます。

 

では、また新しく期待値がプラスのEAなどができたら紹介しますね〜。

 

記事カテゴリ:FX自動売買

 

オススメ情報〜見た目でもっとも大事な部分とは?〜

これをお読みのあなたは、きっと知的で賢い人でしょう。
ただし、どんなにオシャレをしたり、筋トレしたり、自己研鑽しても...。
肌が汚いと、ほぼすべての努力が台無し。
服はオシャレだけど、見た目が汚いわ〜...

と思われてしまったら、損ですよね。
あなたの魅力が正しく伝わらないので、もったいなさすぎです。

女性の7割以上が男性の汚いヒゲに不快感を感じているそうです。

一昔前なら高いイメージだった本格的な医療レーザーのメンズヒゲ脱毛が、
いまなら月々3000円からできるのをご存知ですか?
あれ?...最近オレの青ひげ、濃くなってきてないか?
自分に自信が持てなくて、積極的になれない...
仕事に勉強...やりたいことに集中したいのに時間がない...涙
これらに一つでも当てはまるようなら、
いますぐヒゲ脱毛をはじめてみるべし。

ぼくもヒゲ脱毛をしていますが、控えめに言って最高です。
毎日の時間の余裕もできるし、肌もキレイになりました。
管理人オススメの定番&人気クリニックを載せておきます↓↓

【大人気!医療レーザー脱毛クリニック3選】

①100円で通い放題プランが魅力的な
ゴリラクリニック

髭脱毛

②月々3000円が魅力の
メンズリゼクリニック



③東京・名古屋・大阪なら知る人ぞ知る
「永久通い放題プラン」がある人気の
ドクターコバクリニック

Dr.コバ

各クリニックでは、カンタンなWEB予約だけで無料カウンセリングを実施中。
ヒゲ脱毛は、早く始めた方が圧倒的に有利。
一日5分をヒゲ剃りのためにムダにしていると、
365x5=1825分(約30時間)の損失。

時給1000円で考えると、
毎年3万円相当の時間をヒゲそりという非生産的なことに費やし続けているのです...。
コレが10年続いたら、どうでしょう?
替えのシェーバー代や、ローション代も考えたら...?
ヒゲを放置すると、数十万円以上のムダがあなたの人生につきまといます。
だから、ヒゲ脱毛してしまった方があきらかに合理的なのです。

ヒゲそりをつづけるほど、青ヒゲは濃くなります。
細かいキズのせいで色素沈着を起こすからです。
年とともに「剃っても剃っても消えない青ヒゲ」が濃くなるのはそれが原因です。

世の中の成功者といわれる賢い男性たちほど、
とっくにヒゲ脱毛して、有意義な時間を手に入れています。
そして、お金の余裕も生み出しているのです。
あなたもそういう賢い男性の仲間入りして、外見も内面もワンランクアップさせましょう。
ヒゲ脱毛は時間とお金を生み出す現代の錬金術ですぞ。

\いますぐ公式サイトをチェック/
ゴリラクリニック
(100円通い放題プランが大人気)
メンズリゼクリニック
(月3000円コースが魅力的)
ドクターコバクリニック
(永久通い放題コースで濃いヒゲも安心)

ブログ管理人プロフィール


記事を最後までお読みいただきありがとうございます。

ところで、もし今のあなたが「なぜかやる気がでない...慢性的にだるい..仕事もプライベートもパッとしない...自分なりに頑張ってはいるんだけど...なぜ??」という悩みを抱えているようでしたら、『ある一つの習慣』を身につけるだけで圧倒的に人生を逆転させられるチャンスがあります。

元非モテでアラサー年収200万のワープアだったぼくでも理想の恋人ができてしまったり、ネットビジネスで成功し、海外を好きなように旅しながら生きていける自由も手に入れられた究極のライフハック術です。

しかもお金も一切かからないので、あなたでもいますぐに試せます。

割とカンタンに人生を好転させられる方法はプロフページで紹介しています。2分くらいで読めます。

おすすめ!
⇒サクッと人生が好転する意外すぎる習慣を知ってみる(ブログ内プロフページ)

投資・資産運用
湿度50%
タイトルとURLをコピーしました