↓そもそも「MT4って何?」という方はこちら。
メタトレーダー(MT4)の使い方!入手方法も解説
↓サンプルEAの動かし方や評価、改編方法は以下
MT4で自作するFX自動売買システム(EA)とは?作り方を徹底解説!
1.【質問】ダウ理論では勝てないのでしょうか?
ダウ理論に基づく順張りは株やFXの王道と言えると思います。
しかし、これをEAに組み込んでも勝率がいまいち上がりません。
特にポンド円のような動きが大きい通貨は特に難しく感じています。
方向があっているのにストップを刈られた経験が数多くあります。
より多くの利益を上げる方法はないでしょうか。
2.【回答】ボリンジャーバンドを使ってみましょう。
ボラリティが大きい通貨はEAと相性が悪いので避けるべきです。
理由は再現性が低くバックテストの結果が当てにならないからです。
今回はトレンドが分かりやすいドル円で使える手法を紹介します。
ボリンジャーバンドで短期的な反発(押し目)を狙います。
ボリンジャーバンドとは?
米国投資家のジョン・ボリンジャーが考案した手法です。
統計学に基づき価格変動を予測するテクニカル指標です。
計算式が気になる方は調べていただくとして、要点は以下になります。
ポイント
ボリンジャーバンドの
±1σ範囲に収まる確率 ⇒ 68.3%
±2σ範囲に収まる確率 ⇒ 95.4%
±3σ範囲に収まる確率 ⇒ 99.7%
ボリンジャーバンドはiBands()で取得
iBands( ①, ②,③,④,⑤,⑥,⑦,⑧ );
①通貨ペア指定。チャート上のペアを指定する場合はNULL。
②時間足指定。チャートの時間足を指定したい場合は0。
③平均期間指定。
④標準偏差指定。通常±3σの範囲内で指定。
⑤バンドシフト指定。
⑥適用価格指定。終値の場合は0。
⑦ライン番号指定。上バンドは1、下バンドは2。
⑧値を取得するバーの指定。現在のバーであれば0。
トレンドを移動平均、タイミングをボリンジャーバンドで把握
こちら で公開しているコードのマーカ部分に注目して下さい。
command //------------------------------------------------------------------------------------ // 1. getprm : パラメータ取得 //------------------------------------------------------------------------------------ void getprm(){ for(int i=4; i>=0; i=i-1){ M0[i] = iMA(rcur,time, Ma1, 0, 0, 0, i); M1[i] = iMA(rcur,time, Ma2, 0, 0, 0, i); U1[i] = iBands(rcur,time,Ma2,1.5,0,PRICE_CLOSE,1,i); L1[i] = iBands(rcur,time,Ma2,1.5,0,PRICE_CLOSE,2,i); M2[i] = iMA(rcur,time,Ma3, 0, 0, 0, i); M3[i] = iMA(rcur,time,50, 0, 0, 0, i); } } //------------------------------------------------------------------------------------ // 2. check : 取引条件確認 //------------------------------------------------------------------------------------ void check(){ //条件処理 for(int i=4; i>=0; i=i-1){ if(M1[i]<=M2[i]){ //トレンド方向把握 result = -1; //売り方向 if(M0[i]>=U1[i]) //売買タイミング把握 goflg = true; else goflg = false; } else if(M1[i]>=M2[i]){ //トレンド方向把握 result = 1; //買い方向 if(M0[i]<=L1[i]) //売買タイミング把握 goflg = true; else goflg = false; } else{ result = 0; goflg = false; } } }
「トレンド方向把握」「売買タイミング把握」という2段階で判断しています。
売買タイミングを測るための手段としてボリンジャーバンドを使用しています。
深い所でエントリーすれば利幅が取りやすく、損切り幅も抑えることが可能です。
3.EA開発に詰まったら
EA開発に限らず、物事に詰まったら外部の知識を頼るのが賢い選択です。
以下ではトレードとプログラミングに役立つ参考書籍やサービスを紹介します。
①書籍でトレードの勉強
基本ブログ内で完結するよう心がけていますが、以下の本があると理解が深まります。
シリーズものですがとりあえず1冊読んでみると良いかと思います。
②無料のプログラミングスクールを活用
ソースコードの理解に苦しむようであれば初級レベルのプログラミングを学びましょう。
最初の基礎ベースを身に着けるならTechAcademyがおすすめです。
TechAcademyは1週間の無料体験があるので、それで十分学べるかと思います。
4.まとめ
ボリンジャーバンドは逆張り以外にも相場の勢いを測るために使うことが可能です。
特に「バンドウォーク」と呼ばれる状態は強いトレンドを示すことで有名です。
抵抗として使う場合は短期足では平気で±3σを超えてくることに注意して下さい。
±3σだからOK!ではなく他の指標と絡めて使うのが重要です。
便利ですが過信しすぎないようにしましょう。
その他のロジックについて知りたい方は以下の記事を参照下さい。
>>参考:『FX自動売買システム(EA)の自作に困った際のヒント集』
以上、参考になれば幸いです。