USDJPY暴落時の状況をピンポイントで検証してみる

2019年1月4日

疑惑

2019年1月3日に円絡みの通貨が大幅に下落しましたが、その時の状況をMT4/MT5で検証してみようと思います。

既にデータを修正している業者もありますしバックテストなので完全な再現は難しいですが、やっておく価値はあると思うので1月4日時点のデータで検証します。

検証の前に考えること

目的

検証の目的は「状況を再現して今後同じようなことがあった場合の対策を考える」ことで、今回の急落では2つほど問題があったと考えています。

  1. 急落で仕掛けるはずのシステムが動かなかった(機会損失)
  2. 想定以上の損失が出た(損失)

「1.」のパターンは私のシステムでも発生しており、スプレッドが予想以上に広がったためフィルターでエントリーが弾かれていました。

ある意味では想定通りの結果でしたが、肝心な時に動かなかったのは大きな問題なので、急落のパーセントに応じてスプレッドフィルターの値を緩めるような検討をしようと思います。

本題は「2.」のパターンで、「想定外の損失が出たパターン」を再現しつつ対策を考えていこうと思います。


損失のパターン

大きな損失となったパターンを日本時間の7時35分(MT4では0時35分)基準で2つに分けます。

  1. 7時34分59秒(MT4では0時34分59秒)以前にストップロスになった場合、通常通りの損失と考えられますので暴落が原因ではなく「システムや手法」そのものに問題があると考えられます。
  2. 7時35分00秒(MT4では0時35分)以降にストップロスになった場合、暴落により想定していた以上に損失が拡大した可能性があります。

今回は「2.」のパターンを再現していきます。

このパターンで大きな損失となった場合は、「ストップロスを入れていたが、想定より不利な価格で約定してしまった」ということになるのではないでしょうか。

ストップロスは逆指値なので今回の暴落である程度滑ったと考えられます。「その滑りを再現できるか?」がポイントだと思います。


検証

パターン1

  • エントリー・・・7時30分(MT4時間は0時30分)
  • ストップロス・・・エントリー価格より130 pips下
  • タイムフレーム・・・1分足

バックテストの結果を掲載します。

楽天(MT4の全ティック)

SL130検証(RAKUTEN)

OANDA(MT4の全ティック)

SL130検証(OANDA)

FXPro(MT5のリアルティック)

SL130検証(FXPro)

HotForex(MT5のリアルティック)

SL130検証(HotForex)

FBS(MT5のリアルティック)

SL130検証(FBS)

Tradeview(MT5のリアルティック)

SL130検証(Tradeview)

XM(MT5のリアルティック)

SL130検証(XM)

次に各社のストップロスの滑り具合を確認します。

業者名ツールストップロス決済差分
楽天MT4107.361107.3610.0 pips
OANDAMT4107.369107.3690.0 pips
FXProMT5107.377107.3760.1 pips
HotForexMT5107.380107.3354.5 pips
FBSMT5107.391107.3632.8 pips
TradeviewMT5107.366107.3610.5 pips
XMMT5107.379107.23914.0 pips

この結果から、エントリー130 pips下のストップロス値(107.3付近)では、急落の序盤であったため、想定した損失と大きくずれることはなかったことが分かります。

そして、MT4の方では楽天もOANDAも滑りが0.0 pipsとなっており、バックテストで滑りを検知できないのでは?という新たな懸念が生まれます。もしかしたら「国内業者で安定度が高いだけ」ということも考えられますので、もう1つ検証をすることにしました。


パターン2

  • エントリー・・・7時30分(MT4時間は0時30分)
  • ストップロス・・・エントリー価格より200 pips下
  • タイムフレーム・・・1分足

変更したのは、ストップロスを130 pips下から200 pips下とした部分のみです。

楽天(MT4の全ティック)

存在しない価格で約定したことになってしまいました。

SL200検証(RAKUTEN)

OANDA(MT4の全ティック)

OANDAも楽天と同じく存在しない価格で約定したことになりました。

SL200検証(OANDA)

FXPro(MT5のリアルティック)

SL200検証(FXPro)

HotForexotForex(MT5のリアルティック)

値が飛んだあとに約定しているのである意味正しい動きと思います。

SL200検証(HotForex)

FBS(MT5のリアルティック)

HotForexに比べて値が飛ぶタイミングが遅かったため、飛ぶ前に約定しました。

SL200検証(FBS)

Tradeview(MT5のリアルティック)

SL200検証(Tradeview)

XM(MT5のリアルティック)

SL200検証(XM)

業者名ツールストップロス決済差分
楽天MT4106.661106.6610.0 pips
OANDAMT4106.669106.6690.0 pips
FXProMT5106.677106.41126.6 pips
HotForexMT5106.681105.305137.6 pips
FBSMT5106.691106.31337.8 pips
TradeviewMT5106.666105.294137.2 pips
XMMT5106.679106.33934.0 pips

HotForexとTradeviewでは値が飛んだところにストップロスが入っており、想定よりもだいぶ下で約定してしまいました。


分かったこと

業者ごとに配信データが大きく異なる

想定外の損失につながった業者は値の飛び具合が激しかった業者だと思います。値さえ配信されていれば急落中でも40 pips以内の差で約定していますが、値が飛んでしまった場合はストップロスから130 pips以上離れたところで約定してしまいました。

また、7時35分台は全ての業者でローソク足を確認できましたが、36分以降では各社で配信状況が異なりました。

この状況から、殆どの業者では35分のどこかで値が飛び、次にまともに配信できるようになったのが38分の途中ということが分かります。

時間ローソク足が存在しない横棒のローソク足のみ(実質無効?)
35分
36分HotForex
FBS
Tradeview
OANDA
XM
37分HotForex
FBS
Tradeview
XM
38分楽天

バックテストでの再現性が微妙

リアルティックを使用しないデータでバックテストをしても、急騰急落の検証は難しいことが分かりました。

具体的には、MT4の通常データでバックテストした場合は「全ティック」の検証でも正しい結果にはならないということです。(TickStoryやTick Data Suiteを使えば大丈夫だとは思いますが。)

今回の検証のようにストップロスを入れるようなシステムでは特に再現が難しいです。(滑りが発生しませんし、値が無いところでも約定しますので。)


今後の対策とまとめ

話が発散してしまいましたが、当初の目的が「今後同じようなことがあった場合の対策を考える」ことでした。

「同じようなこと」とは「急落時の想定外損失」のことで、「想定外損失」とは「ストップロス値よりもかなり不利な価格で約定してしまった」ことです。(ややこしいですが。。。)


想定外損失の最も大きな原因は業者の配信する値が飛んだこと

ということになってしまうと根本的な対策は難しいです。
レートの配信においては運の要素が大きいと思いますので、今回は良さそうなデータを配信していても次に同じことができるかは分かりません。(後から改ざんされれば検証もできなくなりますし。)

根本的な部分は業者に依存してしまい、私たちのコントロールできる部分ではありませんのでコントロールできる部分で考えたいと思います。(怪しい業者はそもそも使わないという前提はありますが。)


対策1

リアルティックデータかつ複数業者(できれば5社以上)でバックテストする

最もパフォーマンスの悪い業者でも許容範囲内の結果となれば同じような急騰急落が来ても想定内の損失におさまるのではないでしょうか。もちろんそれ以上のものがくればまた別の話ですが。


対策2

今回の急落で逆に利益が出るようなシステムを取り入れる

検証した話とは全く関係ありませんが、「順張り」や「急騰急落狙い」のシステムであれば利益が出たかと思います。

高勝率システムで固めると、どうしても逆張りの利益少な目が多くなってしまうので、色々な種類でシステムを構成したほうが良さそうです。


最後に

検証はあくまでも「想定外の損失は極力避けたい」という想いで実施したもので、想定内であれば適切なリスクを取りつつベットし続けたほうが良いと思います。

逆に今回の急落で何のシステムも動かず無傷だった私は、大きなリターンを得るのも難しいように感じました。リスクの無いところにはリターンも無いからです。

本来ならばマーケットが混乱するほど勝つのも簡単になるはずなので、しっかり対応できるシステムを考えていこうと思います。

興味がある方は以下もご覧ください。