【無料全文公開】プログラミング知識ゼロでも自動売買が作りたい人のための「EAつくーる」集中講座|第1回 ボリンジャーバンドの手法を作りたい!
自動売買プログラムを作成するには、プログラミングの知識が必要で、そんなのは自分にとって無理に違いない! …といった理由から、自動売買作成を諦めている人はいませんか? しかし、諦めることはありません。なぜならば、知識不足を補ってくれる支援ツール「EAつくーる」があるからです。この連載では、同ソフトの開発者に取材し、具体的な使い方を教わる様子をお伝えします。
岩渕恵輔さんプロフィール
いわぶち・けいすけ。平成元年生まれ。福島高専物質工学科卒業後、長岡技術科学大学へ編入。大学院生時代にFXにハマり、MT4を使い始める。
岩淵 まず、ミドルライン反発の定義を確認させてください。ローソク足がミドルラインに触れた瞬間か、下回ったときか、下回ってさらに足が確定したときか…といった細かい条件設定が必要になります。
編集部 ローソク足の安値がミドルラインよりも下回り、それから上抜いていくという事象でお願いします。足の確定は不要です。
岩淵 ではその動きを、ポジション1の売買条件1(画像①参照)で設定していきます。ドロップダウンリストが四つ並んだところで、左端を「ローソク足」、一つ飛ばして「ボリンジャーバンド」、そして右端を「新規買いエントリー」にします。そしてローソク足がボリンジャーバンドよりも下回ることを表現したいので不等号のマークを「<」にします。それらの左下のローソク足の設定としては、適用価格を「安値」に、計算位置を「1本前」にします。
EAつくーるでは、計算位置0本前はいま形成中のローソク足を表し、それ以前に確定した足の情報を使う場合は1本以上前の数値を指定します。今回は1本前がミドルラインを割ってから上にいったときと設定するので、ローソク足安値を1本前にします。同様に右側のボリンジャーバンドの方も計算位置を1本前、期間を「21」、モードを「センターライン」にします。
編集部 今の作業で、1本前のローソク足安値が、ボリンジャーのミドルラインを割り込んだ状況を示すことができました。
岩淵 そうですね。そしてこれにローソク足が上抜いていく条件を加え、その両者を紐付けることで、エントリー条件を完成させます。そのためには「売買条件を追加」を押し、売買条件2(画像②参照)のタブを開き、新規条件追加の部分を「条件追加(AND)」に変えます。その隣の追加先の条件は先ほど設定した「条件1」とします。その他の設定は条件1と同様に進め、今度はローソク足の方がセンターラインよりも大きいことを示す不等号マークの「>」にします。これにより、安値がセンターラインよりも下だったところから、終値がセンターラインよりも上になったときにエントリーすることができます。
編集部 売買条件1と2を紐付けることで、「ミドルラインタッチ後の反発でエントリー」を表現できたわけですね。
岩淵 では続いて、決済の設定をします。利益確定と損切りの条件は別々で作る必要がありますので、まずは利益確定の条件から作成していきます。+2σラインにタッチした瞬間の決済で良いですか? それとも終値の確定を待ちますか?
編集部 タッチの瞬間でお願いします。
岩淵 では、また売買条件3を追加し進めます(画像③参照)。今度は新しく決済条件を作るので「新規条件追加」とし、「買いポジション決済」に。再び「ローソク足」と「ボリンジャーバンド」を選びます。タッチしたらすぐ決済するには今の値を使うので、適用価格は「終値」、計算位置は「0本前」です。このように終値の計算位置0本前は、そのまま現在の価格を意味します。
ボリンジャーバンドの側は、+2σタッチで決済ということですから、偏差を「2」、モードを「+σ」にします。そして不等号の部分を、ローソク足が+2σよりも大きいときを意味する「≧」に変更します。これで+2σよりも現在価格が大きくなったときに決済するという設定になりました。
編集部 利益確定も、エントリーと同様の考え方で容易に作れますね。
岩淵 そうなんですが、この条件ですと必ずしも利益確定とはならず、タッチしたときに損している可能性もあるんです。これを解消するには条件を追加して、利益が生じているときだけ決済し、含み損のときは決済しないと設定します。
また売買条件4(画像④参照)を追加します。「条件追加(AND)」で先ほどの売買条件3に紐付けます。その下では左側を「損益」、右側を「数値指定」にしてください。左側の損益は、設定方法が「口座全体の損益」と「特定のポジションの損益」の2パターンがありまして、前者ですと他のEA取引も混ぜた全てのポジションの損益がいくつなのか、という条件で取引します。後者ですと、このEAの中にポジション1、2、3…と作っていけるんですけど、そのうち特定のどれか一つのポジションが対象となります。先ほど作った条件1、2は、ポジション1の中に作りましたので、これを対象に設定します。付け加えると、下に計算方法の指定というのがありまして、「金額で計算」「pipsで計算」の二通りあり、言葉通りに1万円とか10pipsといった数値を設定できます。
右側の数値指定では、デフォルトが100なんですがこれを「0」に変えます。そして不等号の部分を損益の方が大きい「>」にすると、ポジション1の損益が0よりも大きいときに決済するということになり、必ず利確の時に決済となります。これで利確の条件は完成です。
編集部 では損切りは?
岩淵 損切りの設定は、利確のときと同じ流れでできます。売買条件5(画像⑤参照)を追加して「買いポジション決済」とし、今度はモードを「−σ」に変えます。そして先ほどとは不等号が逆向きになる「≦」を選びます。
次に売買条件6(画像⑥参照)を追加。「条件追加(AND)」で条件5と紐付け、先ほどと同様に指定します。今度は「<」にすると損益が0よりも小さいときに決済されるといった条件がつけ加えられます。
そして最後に「EA作成」を押してファイルを作れば完成です。以上でご指定のロジックのEAは作成完了になります。ちなみに利確と損切りの二つが共存しているんですが、どちらか片方の条件を満たした段階で決済が発動することになります。
この無料ページは定額制サービス「マネーアップ」のコンテンツです。
200以上のFX動画、雑誌FX攻略.comバックナンバー(2018年1月〜最新号)でFXが学び放題!詳細はこちら
日本で唯一の月刊FX専門雑誌「FX攻略.com」公式サイトはこちら
よろしいですか?