ゴールデンクロスを用いた簡単なEAを作ろう
はじめに
GogoJungle / Skijan を運営しております、株式会社ゴゴジャンです。
今回は、EAつくーるの基本的な操作について理解した方向けに、実際に「ゴールデンクロス」という定番のテクニカル指標を用いた簡単なEAを作成する手順、そしてバックテストの手法と結果までを紹介していきます。
EAつくーるに初めて触れる方は、ぜひ下記リンクから過去の記事をご覧ください。
・EAつくーるの基本操作と使い方
・取引条件について徹底解説
・オプションについて知ろう
目次
・ゴールデンクロスとは?
・EAの基本項目を設定する
・取引条件のロジックを設定する
・バックテストを行う
・様々な設定を試してみる
・おわりに
ゴールデンクロスとは?
はじめに、今回取引ロジックに用いる「ゴールデンクロス」というチャート分析の手法について紹介します。
ゴールデンクロス
ゴールデンクロスとは、長期の移動平均線と短期の移動平均線を組み合わせて表示した際に、短期の移動平均線が長期の移動平均線を下から上に突き抜ける形で交差(クロス)するタイミングのことを指します。
これは、相場が上昇傾向になるかもしれないという買いサインの一つとして考えられています。
デッドクロス
逆に、短期の移動平均線が長期の移動平均線を上から下に突き抜ける形で交差(クロス)することをデッドクロスと言い、売りサインの一つとして考えられています。
ゴールデンクロスと取引例
実際に発生したゴールデンクロスと、今回作成するEAを用いた取引の例を見てみましょう。
ゴールデンクロス発生時に買いエントリーを行い、反転して移動平均線がクロスした際にポジションの決済を行っています。
※クロスした次の足でエントリー・決済するロジックを利用しています
このように、トレンドを推測して注文を行うことによって利益を得ることを目標にロジックを作っていきます。
トレンドの判断
ただし、これらのサインが出たからといって確実に相場の上昇・下降トレンドの発生などを判断することはできません。その他の様々な情報と掛け合わせて相場を判断する材料の一つとして評価されています。
また、移動平均線は、平均値の期間が異なれば違う形状になります。
平均値の期間が長ければ長いほど、その線は緩やかな傾きになります。
その他、移動平均線を平行にずらして表示する、クロスの角度の深さから判断するといったような手法もあり、また、他の時間足も表示するなど、様々な要素によって判断することができます。
それらをいかに使いこなせるかによって、パフォーマンスは変わります。
EAの基本項目を設定する
今回は、このゴールデンクロスが発生したと判断した際に買いエントリーを行い、デッドクロスが発生した際にそのポジションを決済する、というロジックを作成していきます。
簡素化のため、最初は損切りや利食いは設定せずにロジックを作成してみましょう。
EAつくーる -> 基本項目
今回、EAを作成するにあたって基本項目は以下のように設定しました。
「ロット数」は一回のトレードでの取引量を表しています。
lotやpipsについてはFX会社によって定義が異なることがあるので、ご自身の利用しているFX会社のホームページなどで調べて設定しましょう。
また、損切りと利食いは前述の通り簡易化のためゼロに設定しており、固定の損切りと利食いは動作させていません。
取引条件のロジックを設定する
それでは、取引条件のロジックを設定していきましょう。
EAつくーる -> 取引条件
から、 「条件追加(OR)」ボタンを押して条件を追加します。
今回はゴールデンクロスが発生した際に行われる「買い注文」とデッドクロスが発生したときに行われる「買いポジション決済」の二つの取引条件が必要なので、OR条件を二つ追加します。
また、それぞれエントリーと決済の際に追加で条件処理を行うため、AND処理も一つずつ追加しましょう。
右側の取引種別ボタンを押し、「買いポジション決済」に変更します。
これで、「買い」「買い決済」という項目が表示されたら準備は完了です。
エントリー条件の設定
まず、買い注文が実行されるための条件を設定します。
「ゴールデンクロスが発生したとき」という条件を直接そのまま設定することはできないので、長期・短期の移動平均線を比較する条件を2つ直列に用いて設定します。
今回は期間7の移動平均線を短期移動平均線、期間21の移動平均線を長期移動平均線と考えてロジックを作成します。
下図の矢印を現在位置としたとき、
①時点(2本前のローソク)において短期移動平均線が長期移動平均線より下にあり
②時点(1本前のローソク)において短期移動平均線が長期移動平均線より上にある
という場合において、ゴールデンクロスが発生したと判断します。
それでは、実際に買いエントリーの条件を設定していきます。
「条件1の設定」ボタンを押して買いエントリーの一つ目の条件を設定しましょう。計算期間や計算地位、不等号の向きに注意しましょう。
買いエントリーの二つ目の条件についても以下のように設定しましょう。先ほどと不等号の向きが逆になっているので注意しましょう。
決済条件の設定
次に、デッドクロス発生時に買いポジション決済する条件を設定します。
ゴールデンクロス発生と同じように二つの条件を用いてデッドクロスの判定を行います。
条件3,条件4を以下の通りに入力しましょう。
以上により、非常に初歩的なものではありますが、ゴールデンクロス発生時に買いエントリーを行い、デッドクロス発生時にポジションを決済するというEAを作成することができました。
バックテストを行う
それでは、作成したプログラムを用いてMT4上でバックテストを行ってみましょう。「MT4 EA作成」ボタンで作成したEAをダウンロードしましょう。
ダウンロードしたMQLファイルをMeta Editor上でコンパイルし、MT4のストラテジーテスター上で読み込みます。
10年間、USDJPY、1時間足でバックテストを行った結果、以下の通りになりました。1,000,000円から開始した証拠金が最終的におよそ1,706,567円まで増加しています。
決して安定した結果とは言えず、円安推移に乗っかった形での動作だと考えられますが、こうして利益が発生する様子を確認することができます。
実際に中身を見てみると、こうした取引が行われています。
ロジック成功例
冒頭で提示した取引例です。ゴールデンクロス発生時に買い注文を行い、デッドクロス発生時に売り注文を行うことで差額をしっかりと利確することができています。
ロジック失敗例
値動きが激しく、ゴールデンクロスやデッドクロス発生の判断をするのが遅れ、その交点から乖離した場所でエントリーや損切りを行っている様子を確認することができます。
様々な設定を試してみる
こうして作成したEAですが、EAつくーるの機能を用いて改善の余地は大量にあります。
簡素化のために省略した利食いや損切りの設定や、移動平均線の種類・期間など色々な仕組みを試すことで最適化していきましょう。
条件画面から、移動平均線も単純移動平均・指数移動平均・平滑移動平均・線形加重移動平均などを選択することができます。
また、EAのパフォーマンスを向上させるために、オプションを追加することもおすすめです。
おわりに
ゴールデンクロスを用いたEA作成方法については以上になります。
あくまで基本的な手法であり、販売できるような「良いEA」を作成するためにはより細かいチューニングやテストといったことが必要になりますので、そうした点については今後の記事で紹介していきます。
EAつくーるで作成したEAは、条件の組み合わせ、条件指定の誤りなど、様々な理由で意図したとおりに稼働しない場合もございます。
バックテストおよびデモ口座にて、稼働確認ができてから、リアル口座にて稼働開始をお願いいたします。
今後とも「EAつくーる」をよろしくお願い申し上げます。
よろしいですか?