MT4でASKレートとスプレッドを記録するインジケーター

MT4のチャートは売値であるBIDレートが表示されている

今売れば、チャートが表示しているレート(上図の例では 109.076)で売ることになる。

一方、今買う場合は、ASKレートで買うことになるので、上図の例では 109.091 で買うことになる。

チャートに表示されているレート(109.076)よりも 1.5pips 高いレートで買うことになるので、FXを始めたばかりの人は「もっと安い価格で買ったはずなのにおかしい」と感じるかもしれないが、これはFXの基本的な仕組みである。

ASKとBIDの差がスプレッドであり、取引時のコスト(手数料)になる。

売りポジションの決済はスプレッドを考慮する必要がある

買いポジションを決済するという行為は「売る」ことになるので、チャートに表示されているBIDレート(売値)で決済するので違和感なく決済できる。

しかし、売りポジションを決済する時にはチャートに表示されているBIDレートよりもスプレッド分だけ高いASKレートで「買い戻す」ことになるので注意が必要である。

ちなみに、ASKラインは メニュー:チャート → プロパティ → 全般タブ で、「Askのラインを表示」で表示できる。

利益確定時はスプレッド分だけ高く設定すること

赤丸で売って、直近安値である 108.020 に到達したら利益確定するように設定する場合を考える。

この場合、決済指値として設定するレートは 108.020 ではなく 108.020 にスプレッド分だけ高いレートにしなければならない。

スプレッドが 1.5pips の場合は、108.020 + 1.5pips = 108.035 となる。

もし、決済指値を 108.020 に設定していた場合、チャート上のレートが 108.020に達しても利確されない。なぜなら、ASKレートはまだ108.035だからだ。ASKレートが108.020 (チャート上のレートが 108.005) に到達してやっと決済される。

損切り設定はスプレッド分だけ高く設定すること

次に、赤丸で売って、直近高値である 108.145 より上に行ってしまったら損切りするように設定する場合を考える。

この場合、逆指値として設定するレートは 108.145 ではなく 108.145 にスプレッド分だけ高いレートにしなければならない。

スプレッドが 1.5pips の場合は、108.145 + 1.5pips = 108.160 を決済逆指値に設定する。

もし、決済逆指値を108.145 に設定した場合、チャートでは 108.145に到達していなくても 108.130 に達した時点で、ASKが 108.145になるので、その時点で損切りされてしまうので注意が必要だ。

さらに厄介なことが、スプレッドは固定ではなく変動するため、急にスプレッドが広がった場合は、チャートでは直近高値に到達していないのに、損切りされてしまうことがある点だ。

スプレッドが広がって損切りになる場合がある

重要な経済指標の発表直前・直後や大きな変動時にスプレッドが拡大した場合、近くに設定していた損切りラインにかかる時がある。

また、MT4の日付変更となる日本時間の朝6時(冬時間では朝7時)は、スプレッドが大きくなる傾向があるため、チャートを見た感じでは売りポジションの損切りラインにかかっていないと思われるような場面でも、なぜか損切りされている時がある。

そんな時には、本当にASKレートが損切りラインに到達していたのかを確認したくなるのが心情である。

OANDAでは過去のスプレッド実績を公開しているが、XMなどの他の業者では公開されていない。

損切りされた時間帯のスプレッドを確認できたとしても、本当にASKレートが損切りラインに到達していたかどうかは不明であるため、「スプレッドが広がったことが原因で損切りにかかったのだろう」とあきらめるしかない。

MT4ではASKレートのローソク足を表示できない

MT4では、現在のASKラインは確認できるが、過去のASKレートを確認する方法が提供されていない。

日本のFX業者ではローソク足をASK表示できるアプリを提供しているところもあるが、MT4では、ASKレートのローソク足を表示する機能が提供されていないのが難点だ。

MT4でASKやスプレッドを記録するインジケーター

MT4の標準機能では過去のASKやスプレッドを確認できないため、AskRecorderという名前のインジケーターを作成した。

AskRecorderの目的はASKの最高値を記録することであり、最大スプレッドを記録することが目的ではない。

なお、AskRecorderが動作している間だけ記録するため、AskRecorderを動作させる前のASKやスプレッドは確認できない。

AskRecorder

AskRecorderの動作仕様:

  • 毎分の最高値となるAskと、その時のスプレッドとBidを記録する。
  • 記録した情報を1分間隔でエキスパートのログファイルに出力する。

確認方法

直近のログは、 エキスパートのログファイルで確認できる。

エキスパートのログファイルは、ターミナルの「エキスパート」タブで表示する。

XMのスタンダード口座の GBP/USD の例:

下の画像では、XMのスタンダード口座の USD/JPYで、日本時間 06:00:01にスプレッドが14.0pipsに広がって ASKが 107.296になっていることが確認できる。

過去のログファイルは、メニュー:ファイル → データフォルダを開く → MQL4 → Logs フォルダーに1週間分が格納されている。

逆に言うと、1週間以上前の最大ASKは確認できなくなる。

AskRecorderのダウンロード: (ex4ファイル / zipファイル

MaxSpreadRecorder

AskRecorder と似ているが、微妙に目的が違うインジケーター MaxSpreadRecorder を作成した。

MaxSpreadRecorder の目的は毎分の最大スプレッドを記録することであり、最高ASKレートを記録することが目的ではない。

興味のある方はこちらもどうぞ。

MT4で最大スプレッドを記録するインジケーター

コメント