バックテストとペーパートレードは何が違う?実際にやって分かった4つの段階

|

「バックテストとペーパートレードって、どっちもお金を使わずに試すんだから同じじゃないの?」

AI株システムを作り始めたころ、私はそう思っていました。

ところが実際に試してみると、かなり違いました。

しかも、その違いをよく分からないまま進めた結果、私のシステムは一度止まっています。

30秒で結論

違いを簡単にすると、こうです。

バックテスト:過去ならどうだった?

Daily Replay:その日を順番に再生したら?

Realtime Paper Trade:その瞬間に本当に判断できた?

実売買:本当のお金と注文でも成立する?

今の私のAI株システムは、Daily Replayの段階です。

Realtime Paper Tradeまで一度進みましたが、そこで問題が見つかり、いったん戻しました。

この失敗で分かったのは、

「過去のデータでうまく動く」と「その瞬間に本当に使える」は別物

ということでした。

最初は「過去データで勝てればいい」と思っていた

AI株システムを作り始めたころ、まず行ったのがバックテストです。

過去の株価データに売買ルールを当てて、

「この条件なら何回チャンスが出た?」

「その後、株価は上がった?下がった?」

と調べます。

学校でいえば、過去問を解くようなものです。

過去のデータをまとめて検証できるので、最初に売買ルールを調べるには便利です。

でも、ここで一つ問題があります。

過去問でいい点が取れても、本番で同じ結果になるとは限りません。

株も同じです。

そこで私は、少しずつ本番に近い検証へ進めることにしました。

ところが「本番に近づけた」ところで止まった

一番分かりやすかったのが、Realtime Paper Tradeでの失敗です。

実際のお金は使わず、市場が動いている時間にシステムを動かそうとしました。

ところが、そこで疑問が出ました。

たとえば、あとから見ると14時15分の株価データはあります。

でも重要なのは、

「14時15分の時点で、そのデータを本当に取得できていたのか?」

です。

あとから取得したデータを使って、

「14時15分にこの価格を見て買えたことにしよう」

では、本当のRealtime検証にはなりません。

私はここを確認できなかったため、Realtime Paper Tradeをそのまま続けるのをやめました。

システムが動かなかったからではありません。

検証として正しいと言い切れなかったから止めました。

この失敗から、4つの段階を分けて考えるようになりました。

① バックテストは「過去問」

バックテストでは、すでに終わった過去の株価を使います。

確かめたいのは、

「このルールは過去ならどうなったか?」

です。

売買ルールを最初に調べる段階として使えます。

ただし、ここで成績が良かったからといって、実際の取引でも勝てるとは限りません。

だから、ここだけで実売買には進みません。

② Daily Replayは「試合後のビデオ確認」

次が、現在行っているDaily Replayです。

これはこのブログで使っている呼び方です。

市場が終わったあと、その日の確定した5分足データを時間順に再生します。

スポーツなら、試合後に映像を最初から見直すようなイメージです。

「この時点までのデータなら、この条件が成立した」

と順番に確認します。

現在はトヨタ、ソニーグループ、ソフトバンクグループの3銘柄を、同じ条件のまま20営業日記録しています。

ただし、これもRealtimeではありません。

市場終了後の確定データを使った振り返り検証です。

③ Realtime Paper Tradeは「本番時間のリハーサル」

ここから一気に本番へ近づきます。

実際のお金は使いません。

でも、市場が動いている時間に、

「その瞬間までに本当に取得できた情報だけ」

を使って判断します。

私のシステムが一度止まったのがここです。

あとから存在する株価データではなく、

その時刻に利用できたデータだったことを証明できるか

が問題になりました。

この条件を満たせるようになって初めて、Realtime Paper Tradeとして意味があると考えています。

④ 実売買は「本番」

最後が、本当にお金を使う実売買です。

ここでは計算上の結果ではなく、実際に注文を出します。

想定した価格で必ず買えるわけではありません。

売りたい価格で必ず売れるわけでもありません。

そして損失も本物です。

だから私は、

「バックテストが良かったから実売買してみよう」

とは進めないことにしました。

私が決めた進め方

今は、

バックテスト

↓

Daily Replay

↓

Realtime Paper Trade

↓

少額の実売買

という順番で考えています。

ただし、自動的に次へ進むわけではありません。

その段階で問題が見つかったら、そこで止めます。

実際、Realtime Paper Tradeでは一度止まりました。

現在はDaily Replayへ戻り、まず3銘柄を20営業日、同じ条件のまま測っています。

違いが分かると「良い結果」の見方も変わる

この4段階を知らなかったころは、

「バックテストで良い数字が出た」

と聞けば、かなり完成に近いように感じていました。

今は違います。

バックテストで分かるのは、

「過去ならどうだったか」

までです。

Realtime Paper Tradeなら、

「その瞬間に本当に判断できたか」

を確認します。

そして実売買では、

「現実の注文でも成立したか」

を確認します。

同じ「検証」でも、確かめているものが違います。

これが分かるだけでも、ネットで見かける「バックテストで○%」という数字を、少し違った目で見られるようになりました。

まとめ

バックテストとペーパートレードは、どちらも実際のお金を使わずに試せます。

でも、同じものではありません。

私自身、違いをよく分からないまま本番に近い検証へ進み、株価データの問題で一度止まりました。

だから今は、4つの段階を分けています。

過去ならどうだった?

→ その日を順番に再生したら?

→ その瞬間に本当に判断できた?

→ 本当のお金でも成立した?

一つ前の段階で成功しても、次の段階で成功する保証にはなりません。

AI株システムを作っていて、今のところ一番大きく変わったのは、

「早く実売買すること」より「今どの段階を検証しているのかを間違えないこと」の方が大切

と考えるようになったことです。

もしバックテストやペーパートレードという言葉を見かけたら、まず、

「これは4段階のどこまで確認した結果なんだろう?」

と確認してみてください。

それだけでも、その数字が何を意味しているのか判断しやすくなります。

関連記事

・AI株システムを止めた理由。yfinanceの5分足をリアルタイム前提で使ったら、初日の検証が成立しなかった

・AI株システムを3銘柄で試した初日、結果は1勝2敗でした|20日間そのまま測ります

・AIに株を売買させるの?初心者の私が作っている「AI株システム」をやさしく説明

※この記事はAIを活用した株システム開発の個人的な検証記録です。特定銘柄の推奨、投資助言、将来の利益を保証するものではありません。

類似投稿