【無料EA】恐らく世界的に最も有名なEA XMT-Scalperの検証
XMT-Scalper
今日は有名な無料EA「XMT-Scalper」を検証していきます。
僕の場合(過去に)リアル口座稼動後、数日で停止した経緯があったりします(笑)
XMT-Scalperとは
以前投稿したBBQ EAと同様、WWI(http://worldwide-invest.org/)フォーラムで公開されているフリーのEAです。
XMT-Scalper(woldwide-invest.org)
ダウンロードもここからできます。(WWIにユーザー登録してログインしないとダウンロードできません)
ソースコードも公開されており、「フリーでソースコードが公開されている優れたEA」といえばXMT-Scalperを挙げる人もいるのではないでしょうか。(たぶん)
なお、XMT-ScalperはMillion Dollar Pipsという有料EAの動きを真似て作ったもの・・・らしいです。
バックテスト結果
期間:2010年1月1日~2015年6月26日(データ:FXDD1分足)
通貨ペア:EURUSD(M1) スプレッド:10
- PF 2.48、総取引数14977回、勝率49.15%
- 平均勝トレード $5.28 負トレード $-2.06
- 最大勝トレード $50.80 負トレード $-3.50
- ※ロットは0.1固定
取引数もPFも申し分なし、勝率は高くありませんが1トレードの損失が少なく抑えられています。
問題点
これは「僕が実際に稼動してみて見えてきた問題点」であって、「必ずこの問題が発生する」というわけではありません。
デモ口座で稼動するとトレード数が少なくなる
理由はわかりませんが、デモ口座で稼動するとバックテストよりも大幅にトレード数が少なくなりました。
先ほど紹介したフォーラムの中でも、この現象を報告している人がいるので僕だけではないようです。
開発者のCapella氏は「スリッページとかリアル口座とは違うからね」みたいな回答していたような記憶が。
回数は少なくなるものの、利益は出していたので1ヶ月ほど様子を見てからリアル口座で稼動を開始しました。
リアル口座で稼動すると負ける
業者によるようですが、僕が稼動したMyFX Marketsでは負けトレードの方が多く、赤字になりました。
数日様子を見て改善する様子もなかったため停止。通常はここまで早く停止することは無いのですがバックテストの結果ともデモ口座での結果とも異なるため「何かある」のではと考えました。
後ほど調査しようと思いつつ、他に調査したいこともあったのでXMT-Scalperはお蔵入りとなっていました・・・。
ソースコード解析
ソースコードを見るといろいろと細かい計算をしていて複雑そうな印象でしたが、基本となるロジックは単純なカウンターシステムでした。
仕掛け
ロジックは3種類あり、いずれかを選択します。
1.高値の加重移動平均線と安値の加重移動平均線
2.ボリンジャーバンドの±2σ
3.加重移動平均のエンベロープ
既定値では1.の加重移動平均を使用します。
いずれのロジックも高値のラインを価格が超えたら逆指値で売り、安値のラインを価格が超えたら逆指値で買いを入れます。
逆指値を入れる価格は現在値にストップレベル(もしくはフリーズレベルの大きい値の方)を加減算した値になっています。
※要は逆指値を入れるために現在値から少し離して注文を入れます。
手仕舞い
損切りと利食い、トレーリングストップで手仕舞いするようです。
テクニカルの類は使用していません。
最適化
FXDDの1分足データで最適化してみました。 期間その他は上記のバックテスト結果と同様です。
- PF 3.37、総取引数36915回、勝率66.37%
- 平均勝トレード $2.97 負トレード $-1.74
- 最大勝トレード $79.30 負トレード $-2.50
- ※ロットは0.1固定
PF、取引数、勝率、利益いずれも大幅に上がりました。勝ちトレードと負けトレードの平均損益の比(リスクリワードレシオ)がやや悪化してしまったのは少々気になりますが・・・大丈夫でしょう(たぶんw)
念のため稼動予定業者のMT4でバックテスト
- PF 3.18、総取引数2189回、勝率66.38%
- 平均勝トレード $2.97 負トレード $-1.84
- 最大勝トレード $43.70 負トレード $-2.50
FXCMジャパンの直近データ(2015/04/24~2015/06/29)を使いました。
FXDDとほぼ同じ結果が出ているので後は、リアルでどれほどやれるか・・・?
スプレッドが想定より広くなったり、よく滑るようだとバックテストどおりには利益が出ないかも知れません。
(低スプレッドで、かつ高い約定力が無いと利益が出ない・・・らしいです)
FXCMジャパン試験稼動結果
前回の試験稼動ではデフォルト値を使ったのですが、今回は最適化したパラメータを使用しています。
- 稼動期間:2015/07/01~2015/07/23
- トレード回数:約300回(ロット0.01~0.03)
- 損益:-2,305円
残念ながら全然ダメでした。理由はわかりません・・・。(他のEAも稼動しているのでPFなどの詳細な情報はありません)
XMT-Scalperのトレード結果でよければGoogleDocsで公開するのでそちらをみてください。(役に立つとは思えませんがw)
同期間バックテスト
FXCMジャパンの1分足データを使って試験稼動期間のバックテストを実行してみました。
PF5.08、勝率72.38%、総利益22.26ドル(総利益27.71ドル、総損失-5.45ドル)
凄く良い!なぜかトレード数がリアルトレードの3分の1しかありませんが…??
違いが出る理由は定かではありませんが、仮想TickデータとリアルなTickデータでは大きく異なるということでしょうか…
※モデリング品質が25%になるのはMT4の仕様です
結論(とりあえず)
FX Marketsに続き、FXCMジャパンでもリアルトレードでは利益を上げることはできませんでした。
XMT-Scalper(woldwide-invest.org)では、全然勝てないという声は少ないのですが。(確か、中にはあったはずですが「業者が悪い(俺意訳)」で終わっていた気が・・・)
製作者の使っている業者は日本語対応していないので、厳しいんですよね・・・(パスポートなどの英語の証明書を持っていないので色々面倒)
FXCMジャパン、滑っている(スリッページが発生している)のでしょうか?
XMやTitanFXに変えると違いがでるのか・・・?(FXCMジャパンよりもスプレッド広いのですが)
まずは最大スプレッドを10→5に変更(0.5pips)、スリッページを3から2に変更してもう少し様子を見たいと思います。
※結果は後日、また記事にします(たぶん)
その結果はまた後日にでも。もし、「ここで動かしたら良い感じだよ!」という情報あったらください!(懇願w)
2015年8月5日追記
メール・コメントにて情報ありがとうございます!こんなにたくさんいただいたのは初めてです!
さて、「最大スプレッドを5に変更」「スリッページを3から2に変更」ですが、最大スプレッドを5にするとトレード数が少なすぎ、6にするとあまり勝てないという結果になりました。
スリッページは変更しても意味はないそうです(´~`;)
頂いたメールから抜粋・引用します。
MarketExecutionではスリッページの設定にどの値を入れても0と認識されてしまうため、
設定値を変更しても滑りは発生します。
FXCMジャパンでは-10~+10ポイントの範囲くらいで滑っていたかと思います。
平均して3ポイントくらいはポジション建てる時に滑ります。
決済時は若干滑りにくいですがそれでもポジションをたてるときの半分くらいは滑ります。
(ちなみにOANDAジャパンでは30ポイントくらい滑ってました・・・。)
しらんかったー!Σ(゜○゜;)
いや、まぁ、そうですよね。そのままマーケットに投げてるんだから・・・。
これ以上、FXCMジャパンで試しても勝てそうにないので停止することにしました。
コメントでいただいた件で「ストップレベル」についてはこちらではどうしようもなく・・・(良い業者があれば試してみます。引き続き情報募集中です!)
cTraderに変えてみたらどうでしょう!という件については、試してみないとなんとも。変換サイトでは上手くいかなかったそうなので、がんばらないといけなそうですw(そこまで僕の気力が持つかな~?)
もしかしたら頑張るかもしれません!
2015年8月7日追記
FXCMジャパンにてXMT-Scalperの稼動時ログを確認したところ、ストップレベル0と表示されていました。(もっと早く確認するべきでした・・・)
ストップレベル0でも勝てるわけではないようです。
cTraderついては「変換すれば勝てる」というものでは無さそうですので試さないことにしました。
このEAですが、以前ティックデータでバックテストしたところ散々な目に遭いました・・・。MT4の擬似ティックアルゴリズムを利用しているのかもしれません。。