ウィリアムズ・パーセント・レンジを使ったロジックEA【Ambon】

ゲコーです。

FXトレードのプラットフォーム「MT4」に標準搭載されているテクニカルインジケータに「ウィリアムズ・パーセント・レンジ(ウィリアムズ%R)」というものがあります。

移動平均線ほどメジャーではありませんが、「買われすぎ」「売られすぎ」を判断するための「オシレータ系」のテクニカル指標として愛用しているトレーダーもいます。

 

今回は、オシレータ系のテクニカル【ウィリアムズ%R】についてEA的視点で解説していきます。

 

 

ウィリアムズ%Rについて

ウィリアムズ%Rは、ラリー・ウィリアムス氏というトレーダーによって開発されたオシレータ系のテクニカル指標で、現在の価格が一定期間の最高値と最安値のレンジのどこに位置するのかを表しています。

ストキャスティクスの%Kと似ていますが、計算式に違いがあり数値の範囲も変わってきます。

ストキャスティクスの%Kが0(下限)~100%(上限)の範囲で表されるのに対して、ウィリアムズ%Rは-100(下限)~0%(上限)の範囲で表され、一般的には数値が「0~-20%」のゾーンにあるときは買われ過ぎ、「-80~-100%」のゾーンにあるときは売られ過ぎと判断します。

 

 

ウィリアムズ%Rを使ったトレードロジック

 

一般的なロジックとしては、ウィリアムズ%Rが-80%ラインの下にあるときは「買い」、-20%ラインの上にあるときは「売り」エントリーを検討します。

しかしこれではダマシの要素が多くなるため、もう少しフィルターを検討してみましょう。

 

買いサイン

  • ウィリアムズ%Rが、-80%を下回り何度か-100%と-80%の間を行き来してから-80%を上回る
  • ウィリアムズ%Rが、-80%に到達する直前に反転する

このどちらのパターンもダマシを回避できそうです。

 

売りサイン

  • ウィリアムズ%Rが、-20%を上回り何度か0%と-20%の間を行き来してから-20%を下回る
  • ウィリアムズ%Rが、-20%に到達する直前に反転する

先ほどの逆パターンですね。

 

シンプルなトレードロジック

WPRロジック
WPRロジック

 

直近高値安値に損切りラインを置けば、このようなトレードも可能です。

①で買いエントリーして損切り

②で買いエントリーして③で利確決済

④で売りエントリーして損切りにかからず⑤で利確決済

 

ちなみにEA化してみると、まだまだ検討の余地ありでした。

 

 

ウィリアムズ%Rを応用したEAの紹介

さらに検討を加えてEA化したのが自作EA【Ambon】です。

Ambonは、ウィリアムズ%Rをエントリーのトリガーとして応用し、さまざまなフィルターでトレードを制御したGBPJPY15分足専用のEAです。

ポジションの保有時間は4時間~4日程度のことが多いデイトレからスイング系のトレードをおこないます。

勝率は高くありませんが、損小利大でコツコツ利益を積み上げるタイプのEAとなっています。

 

EAのバックテスト

Ambon_TFバックテスト
Ambon_TFバックテスト

 

  • ポンド円15分足でのバックテスト
  • テスト期間 2011年1月2日~2021年11月20日
  • 期間中トレード回数 1595回
  • プロフィットファクター 総利益 ÷ 総損失 = 1.22
  • リカバリーファクター 純益 ÷ 最大ドローダウン = 10.68
  • 勝率 38.50%

 

 

EAのフォワード計測

Myfxbookでフォワード計測中

「カスタム解析」→「マジックナンバー」とクリックして確認したいEA名にチェックを入れてから「分析」をクリック!

 

 

EA【Ambon】のパラメータ設定

Ambonパラメータ
Ambonパラメータ

 

  1. マジックナンバー:EAの識別番号です。同じMT4の他のEAと被らない番号にしてください。
  2. ロット数:ご自身の資金量に合わせて調整してください。最小ロット数はお使いのブローカーによります。
    例1 初期証拠金に対して最大ドローダウン10%以内に抑える場合 0.07ロット
    例2 初期証拠金に対して最大ドローダウン20%以内に抑える場合 0.14ロット
  3. 許容最大スプレッド:許容できるスプレッドの最大ピプス(推奨値3.5)
  4. テイクプロフィット:指値ピプス(推奨値480)
  5. ストップロス:逆指値ピプス(推奨値85)
  6. GMT:お使いのブローカーが使っているGMT(冬時間)を入力
  7. Summertime:サマータイム設定(米国式なら「1」英国式なら「2」使用していなければ「0」を入力)