バックテスト結果を答えだと思って期待値を追うと言ってる方へ

投資全般


こんにちは!shinです!

今日は前から思っていた、
バックテスト結果を答えだと思っている方に向けて書きたいと思います。

自動売買を回している方とか、
シグナルを使っている方に多いのですが、

正直、考えが甘いです。

なのでバックテスト結果の見方というものについて、
詳しく書いていきたいと思います。


そもそも自分でバックテストを取らない人は、
楽をしようとしている人が多いです。

なので、統計学について勉強しようという人も少ないです。
そして統計学だけでもダメです。

僕も自分でバックテストを取るようになって、
学びましたし考えるようになりました。

過去にもブログを書いていますので、
良かったらそちらもご覧ください。

ツイッターでもブログでも繰り返し言ってるのですが、

バイナリーオプションのバックテストで期待値があるということと、
スロットの設定6は期待値があるということは全く違います。


これを理解せずに、期待値を追ってるんで淡々とエントリーしますっていう人多すぎます。

自動売買も同じです。

確率は収束するんで、信じてずっと回しますとか。

で、それでしっかり勝ってるって人を何人知ってますか?

そうは言いつつも過去の僕自身も同じでした。

今まで2回自動売買を購入しましたが、しっかりとドローダウンしました。

それは何故か?

確率は収束しないの?

そもそもバックテストが偽りの物だった?

理由は色々あります。

まず、1つ目。

①そもそもバックテスト結果が偽りだった可能性はある。

正直、そんなの論外じゃん!!
って思うかもしれませんが、この可能性も十分にあります。

だって、中身が分からないのでどんなバックテスト結果を出されても分からないんですよ。
BOanalyzerとかそういうもののバックテスト結果を偽るのなんて、
ちょっと知識がある人間なら簡単です。

まぁ、さすがにそれは無いだろうっていうのであれば、
次の2つ目です。

②カーブフィッティングと不利なポジションになることを考慮していなかった。

今日、お伝えしたいのはこれです。

これめちゃくちゃ難しいんです。

これを理解せずに確率は収束するとか言ってるから養分なんですよ。

聞いているか過去の僕よ。

バックテスト結果がそれなりに良くて、
エントリーポイントがリペイントしてるとか
現実的にはエントリー出来ないところではないのに、
世の中の自動売買のほとんどは負けていく。

その現実をしっかり見ないといけない。

バックテストというのはその名の通り、
過去の相場で一定の条件を用いてエントリーを試すわけですよね。

そこで一定の勝率が出たから、これからもある程度の勝率が出るだろうということです。

大事なのがある程度の勝率が出る「だろう」というところです。

スロットの設定6に座れば、たとえ一日打って負けたとしても、
期待値は確実にプラスです。

「確実に」です。

一方、バックテスト結果はある程度の勝率が出る「だろう」です。

ここに恐ろしいぐらいの違いがあります。

ホントここを甘く見ないでください!

いやマジです!

甘く見ている人が多いから、ドローダウンしてるんですよ。

統計学だけじゃダメって言った部分にも繋がるのですけど、
偽りのバックテスト結果じゃないのに、ドローダウンするんですよ。現実は!!

そこにちゃんと目を向けなきゃダメです。


カーブフィッティングって言うのは簡単なんですけど、けっこう奥が深い話になります。
あと不利なポジションを想定しているかって言うのも、鬼ほど大事です。

カーブフィッティングとは

カーブフィッティングって、そもそもご存知ですか?
バックテストをする中で、過去相場で勝率が上がるように条件を付けたりするのですが、
その相場に合わせすぎたものをカーブフィッティングと言います。

典型的なのが期間が短すぎるとかですね。
それは先ほど紹介した記事にも書きましたが、
エントリー回数と信頼度の話になります。

ただ、それだけじゃありません。
例えば、バックテスト取った期間を通して相場を見た時に、
強い上昇トレンドが起きていたとします。

そのバックテストを取って、
自分のロジックはハイエントリーが強いとか、
ローエントリーは長期が弱いなんて判断をすると、
その逆のトレンドが起こった時に殺される確率は上がります。

だって、長期で見ると上昇トレンドなら、
そりゃローエントリーの長期判定は弱くなる可能性は高くなりますよね。

なので、バックテストを取った結果のエントリー回数や勝率だけに注目するんじゃなくて、
その期間の相場がどうだったかも考えなければいけません。

逆に言うと、
そこを合わせにいけば見かけだけ勝率を上げることって出来るんですよ!!

分かりますか?

強い上昇トレンドが起きてたのなら、
ローエントリーは厳しい条件にして、
ハイエントリーだけ緩い条件にすれば勝率とエントリー回数って稼げるんですよ。

ちょっと知識があって、悪いことをしようと思えばけっこう簡単に出来ます。
全員がやっているとは言えませんが、やろうと思えばやれる人はいっぱいいます。

だから、勝率60%の手法をプレゼント!って言っても、そういうロジックの可能性もあります。

販売している自動売買やシグナルのバックテストでもそういう可能性は常にあります。

皆さん、ホントにこれを理解していましたでしょうか?

僕がわざわざロジックを開示して、
自分でハイ、ロー、判定時間別に勝率を確認出来るように
シグナルを作っている意味が伝わりますでしょうか。


バックテスト結果を偽るのは論外ですが、
こんな風にカーブフィッティングさせて勝率を上げることも出来るからなんです。

でも、人が作ったロジックなんて分からないので、
カーブフィッティングかどうかも分からないんですよ。

だから、詐欺も出来るんです。ドローダウンもするんです。
まぁ、ドローダウンはまだ他の理由もあるんですが…。

ちなみにshin式RSIダイバーシグナルやBADsignalはハイとローのロジックはほぼ同じです。
どうしても勝率が出なかった通貨だけ多少調整してあります。

正直、合わせにいけばもう少し勝率を上げれるんですよ。

でも、見かけだけ良くしても結果がついてこなければ価値が無いですよね。

数々の有名な人が作った自動売買がドローダウンしてますよね。

中身は知りませんが、どこまで利用者のことを考えていたのかな?と思ってしまいます。
その中で販売者は全員が言ってると思います。

確率は収束するから長い目で見て欲しいと。

知識が無い人相手に調子の良いことを言うんですよ。

そもそも確率の収束の話で言いますと…

USD/JPYの5分足のRSIで30-70を前足で超えたら、逆張りエントリー5分判定とします。
その場合、5年で約10000回ぐらいのエントリーがあり、
スプレッドを考慮しなければ勝率は54%程度あります。
エントリー回数と勝率の信頼度については、先ほど紹介した記事に書いていますが
これを信頼度95%で計算してみると、
プラスマイナス1.81%に収まるようです。

なので、RSIの30-70での逆張りは95%の確率で勝率が52.19~55.81%に収まるということになります。
試行回数的にもかなりの信頼がおけるはずなんですが、
実際はどうだったのか。

2014年から2019年で1年ごとに見てみると勝率は52.46~56.35%でした。
2017年で上振れした形で56.35%となり、52.19~55.81%を超えていますね。

上振れしていることはエントリーする分にはプラスに働くのでいいのですが、
重要なのはそこじゃないです。
本来なら上振れする確率は2.5%しかないのに、過去5年の間に起きているんです。

それは何を意味するか。

おそらく1年単位(約2000エントリー)ぐらいでは、
確率は収束しきらないということです。


厳密に言うと、
収束しきらないことも十分にあると考えて行動した方が良いということです。

これだけのエントリー数があっても、信頼度95%に収まらないのです。
通常、自動売買やシグナルはこれよりもエントリー回数が少ないことがほとんどです。

もしくは相場には偏りがあるため、そのまま統計学を当てはめてはいけないということですね。
最近はこちらの理由もあるのかなと思いますね。

だから、年間を通して負け越す時も全然あるよって話ですね。

ただ、カーブフィッティングについては、
どの程度が正解かっていうのが無いのが難しいんですよ。
だって相場に合わしにいかないと、過去の傾向が分からないですし、
かといって、過去相場にしか通用しないのであれば意味が無いし。

だから、ロジックを作る時に製作者なりに考えて、
その期間の相場だけに合わせるんじゃなくて、
なるべく汎用的になるように条件を決めていくことが必要なんですよね。

それと、勝率がブレるのを前提において複数通貨で運用することで、
上振れする通貨と下振れする通貨が出てきて、
結果的にある程度の勝率に収まってくれるのかなと思っています。

なので、1通貨とか2通貨だけで運用するというのはリスクが上がると僕は考えています。


あと、ついでに言っておきたいことが2つあります。

まずは時間別の勝率について。

よくツイッターなどでバックテスト結果から、
この時間は弱いので自動売買の運用を止めましたとかいうのを見ます。

それって、時間別のエントリー回数が何回あって、
何%ぐらいの差があって止めてますか?

明確な基準は決めれないとは思いますが、
例えば5年で2400回のエントリーがあるロジックとします。

それの時間別の勝率を出した時に、
24時間で均等に割れるとして、
1時間当たり、エントリー回数は100回ですよね。

本来は各市場によって回数は変わるのですが、
便宜上、均等に分けますね。

その中で、8時台が勝率56%で4時台が勝率50%とします。

何も考えない人は、なるほど!このロジックは8時台が強いんだ!
とか思っちゃったりします。

でもエントリー回数が100回ずつしかない中の勝率56%なんて、
ほとんど役に立ちません。

よく考えてください。

コインを1時間に100回ずつ投げて、
表の回数をカウントします。

それで、8時台に56回表が出て、4時台に50回表が出る。

ごく当たり前ぐらいの確率じゃないですか?

100回程度の試行回数だと、そのぐらいのことは普通に起きるんです。

だから、
・明らかに勝率の差がある(出来れば10%ぐらい欲しい)
・違いの理由が推測出来る。

この二つの要素が揃わない限りは、誤差として捉えておいていいと思います。

それと2つ目になるんですが、
指標だから自動売買を止めておきますとか、
今日は〇勝したんで止めておきます、とか言ってる方…

何故ですか?

止めたら期待値は上がるんですか?根拠は?
そのルールでバックテスト取ってるの?
むしろ指標でエントリーしない想定でバックテスト取ってる人いないですよね?
〇勝したらその日のエントリーやめる想定でバックテスト取ってるの?

ただの気分で言ってないですか?

シグナルとして裁量を加味して使っているなら、
自分のメンタルと相談して決めれば良いと思います。

ただ、自動売買を回しているとか言いながら、
そんな発言の人がけっこういるのに驚いてるんですよね。

データが無いなら、答えはひとつ!

分からないんですよ。

というかむしろ、
せっかく取ったバックテストの結果と違うことをしたら、
確実に違う結果になるのに何故データも無しにその選択をするんでしょうか?
僕には全く理解出来ません。



そして、最後にして最大の問題。

いくらバックテスト結果に偽りなくても、
ロジックに過度なカーブフィッティングが無くても、
確率の収束よりも厄介な問題があります。

それが、
不利なポジションでの約定です。

これについて、どこまで余裕を見ているかです。

正直ここを甘く見ている人が多すぎるなと。

まず、スプレッド問題ですね。
これまでも何度も言ってきましたが、
同じ時間にエントリーする人が多い場合に、
こちらに不利なスプレッドが出ます。

そして、それはどのぐらい出るかが決まってません。
相場のボラティリティや参加者の人数やエントリー金額で決まっています。

よくSNSでバックテスト結果を載せている人がいます。
ただ、あまりスプレッドにこだわっている人は少なく見えます。

いや、スプレッドなんてたいして出てない時もあるし、
ある程度勝率に余裕があるなら、
期待値稼げるようにエントリー回数多い方がいいでしょ!

みたいなことを考えている人もいます。

はっきり言いましょう!!

甘すぎ!!

欲張り過ぎ!!



これまでも説明してきてますが、
スプレッドが1出ていれば、基本的に1%前後落ちます。
そして、それは判定時間が短いほど影響が大きいです。

だから、5分確定足のロジックとかだと、
スプレッド1で2%落ちることも普通にあります。

仮にUSD/JPYでスプレッド5が出ていると想定した場合、
5分判定で、6~10%
10分判定で、5~8%
15分判定で、3~7%

このぐらい勝率が落ちます。
もちろんロジックによりますが、
長期判定になれば、価格の変動幅も広がるので必然的にスプレッドに強くなります。

つまり、スプレッドを想定せずに勝率が60%あったところで、
無裁量で入っていたら、超高確率で負けていきます。

これが巷のツールが負けている大きな原因のひとつです。
スプレッドを想定するとバックテスト結果が悪くなって集客がしにくくなるので、
良い部分だけ見せている販売者は多いです。

ちなみに僕のシグナルは全てスプレッドをしっかりと想定したうえでバックテストを取っています(宣伝)

正直この点についても、スプレッドを気にせずに見かけ上の期待値を上げることは出来ましたが、
そもそも自分のために作っているシグナルなのでそんなことはしませんでした。

ただ!!
これだけ説明してもまだ食い下がる人とかもいます(笑)

スプレッドって出る時は出てますけど、
毎回は5とか出てないので、そこまで気にする必要は無いと思いますけどって。

そんなこと言っとるでドローダウンするんじゃい!!

バイナリー業者のレート操作と約定拒否があるんじゃい!!

スプレッドが1出ていただけで、1~2%下がるんです。

約定の段階で1ポイントだけ不利なポジションでエントリーさせて、
判定の段階で1ポイントだけ不利な判定にする。

それだけで業者側は2~4%勝率が上がるんですよ。

特に自動売買の場合は、一度エントリーが弾かれた後にそのまま再エントリーを試みますよね。

裁量で見てたら、その一瞬でかなり不利なポジションになりそうなら諦めますよね。
でも、自動売買はそのまま約定しにいくので1ポイントどころじゃないぐらい勝率が下がります。

特に一瞬の髭を取りにいくロジックとかだったら、より約定拒否に遭いやすいですし、
値動きが早い場合は相当悪いポジションになってしまう場合もあります。

有利なポジションに行く可能性もあるじゃないか!って意見もあると思います。
ただ、これは裁量でエントリーしている方なら分かると思いますが、
明らかに自分のエントリー方向から不利なポジションに行った時に約定しやすくなってます。

体感ですがほぼ確実だと思います。
自分が業者だったら普通にそうしますしね。

さらにそこにスプレッドが加わったらどうでしょうか?

世の中の大半の自動売買が勝てない理由が分かってきましたか?

これを全て加味したうえで損益分岐点を超えないと利益が出ないんですよ。

ましてや、何百台とか売ってる自動売買なんて常にスプレッドはMAXですからね。

それに対して使ってるロジックがスプレッドを想定していない勝率60%なんて、
業者にお金捨てにいくだけじゃないですかね?

それを説明せずに大金を払わせてるんだから、けっこうひどいと思いますよ。


まぁ、他人の悪口は置いといて…。


ただ!!

これでもまだ、反論してくる奴がいるんですよ!!
知識がないゆえに。
マジで人に言われたことを鵜呑みにせずに、
自分で勉強して自分で考えた方がいいですよ。


僕の自動売買にはスプレッド回避機能があるんで大丈夫だと思うんですけど…って。


むしろ何故分からない?!!


基本的にスプレッドなんて回避した方が良いなんて保証は無いですから。

その理由は2つ。
・いつどのぐらいスプレッドが出るかは業者次第なので、
 回避した方が良いのかどうかのバックテストが取れない。

・多くの参加者がエントリーしてスプレッドが出ている場合、
 仮にそこがすごく良いポイントでpipsが抜けるところでも回避してしまう可能性がある。


以上を持ちまして、ほぼすべての反論を論破出来たのではないでしょうか(笑)

ここまでたくさんのことを説明してきました。
バックテストの結果という見た目上は良いのに勝てないものが多い理由が分かりましたでしょうか?

でも、だからと言ってもちろん僕のシグナルが最強だなんて思いません。

ただ、僕はこういうことを想定して、
それを加味して勝てるようにシグナルを作っていますよということを
知って頂きたかったというのがあります。


今日はけっこう厳しいことを書きましたが、
ペイアウト倍率も下がったり、約定拒否やレート操作もひどくなったり、
ひと昔前より単純に勝つことが厳しくなってきています。

その中でシグナル購入者の方を筆頭に、
僕と関わった方の利益に繋がるようなことを発信していきたいなと思っています。

厳しいですが、勝てる可能性はあると思ってます!!

まだまだ検証中のロジックがいくつかあって、
現状は通用していて僕自身期待しています。

これからも頑張っていきましょう!!

日々、精進です。

それではまたー!!

コメント