見出し画像

データドリブンFXラボ ~決済価格を決めるロジック~

 今回はMT4 or MT5のEA(Expert Advisor)の決済に関する記事です。エントリーしたポジションをどの価格で決済するロジックは、1回1回のトレードを良い結果として終了させられるかどうか、自動売買の重要な要素の一つになります。

# 大切なこと

リターンの最大化を求めつつも、リスクの回避も意識

 なぜなら、高いリターンを求めて決済を先延ばしにすると、いつのまにかトレンドが逆転して、その後数か月スパンでその価格以上に来ることはなかった、、結果損切りということはよくあります。このバランスはとても難しいです。

 では、どうするのが良いでしょうか?一手法を以下に記します。

基本方針

 私のトレード方針はスキャルピングです。ポジションを所有することはリスクと捉え(参考過去記事:発言系イベントの予測の難しさ)、1回あたりのトレードはわずかな利益で決済します。その代わりに、トレードの回転率を向上させることで、利益を積み上げます。決済価格の算出としては、以下の式になります。

決済価格 = 平均取得価格 + 固定のpips値 + 相場変動に応じたpips値

 平均取得価格 + 固定のpips値でベースのリターンを確保し、相場変動が大きければ上乗せリターンを期待する作戦です。

 相場変動の指標には、1分足のボリンジャーバンド(期間は20分)の1σの値を用いてます。

 他にも相場の変動を表す指標はありますが、この1分足のボリンジャーバンドが適切かどうかの評価はできていません。なかなかバックテストで相場の揺らぎを再現できるか難しく、バックテストでの定量的な評価方法を追求していません。
 ただ、フォワードテストでは良い結果につながっています。(個人的には2020年に導入したテクニックで一番インパクトある効果)

その他のリスク回避策

 想定外の価格での決済や未決済を防ぐために、以下のルールを追加しています。

・スプレッドが一定値より大きい場合は決済させない
・スリッページを指定
・1度の決済指示で最大3回までリトライ処理

以上となります。
もちろん、これがベストプラクティスではありません。

 例えば、トレイリングによる決済価格を上げる方法も有効とされる記事[1]もあるので、リスクをある程度制御しながらリターンを大きくする追加ロジックは今後も追及していきます。

また、損切は別のロジックとして別記事で書きます。

参考資料

[1] トレーリング・テイクプロフィット?は有効なのか? 

-------------------------------------------------------------------------------------

※本記述はあくまで私の知見を公開したものです。実際の投資は自己責任でお願いいたします。

記事やMT4に関する質問、ご意見、EA等の開発に関する要望等ありましたら遠慮なくご連絡ください。

もし記事など良かったなと思いましたら、サポートよろしくお願いします。より良いコンテンツを作れるように実験や環境作りに使わさせて頂きます。