カブチャレを使って、日本株銘柄トレードのバックテストをしてみよう!〜仮想トレード編〜

カブチャレでは、日本の株式市場全銘柄の過去株価データを元に「自分のトレード戦略が統計的にどれくらいの収益を稼げるのか」「過去どれくらいのパフォーマンスだったのか」をチェックできるバックテストが行え、またザラ場中でもリアルタイムで戦略にマッチした銘柄をスクリーニングすることが出来るサービスです!

カブチャレを活用することで「この戦略では95%の確率で利益は◯%〜◯%の範囲内に収まる」といった「統計的に有意な戦略を発見」することが出来るのでどんどん活用して勝てるトレーダー・投資家を目指しましょう!

前回までは、バックテストの戦略条件を作成してテストし、結果のチェックの仕方までをご紹介しました!

カブチャレを使って、日本株銘柄トレードのバックテストをしてみよう!〜戦略作成編〜

カブチャレを使って、日本株銘柄トレードのバックテストをしてみよう!〜テスト結果の見方編〜

今回はそのテストで良さそうな戦略をさらに深掘りしていく「仮想トレード」を使っていきましょう!

仮想トレード機能ってなに?

仮想トレードでは、バックテストで行なった戦略と結果を元に実際のトレードに近い形でトレードのテストを行うことができます。

バックテストでは統計解析によって戦略の有用性がまずあるかを確認する目的なので、シグナルが発生した銘柄全てに対して投資を行います。

なので、初期投資額を100万円(1銘柄につき)と設定していた場合、同日に10銘柄シグナルがあれば10銘柄×100万円の1000万円を上限に購入を行なっています。

でも実際には、例えば手元資金が100万円であれば、同日複数シグナルが出た銘柄の中からその資金の範囲内で株を購入してトレードを行う必要がありますよね?

そこで、仮想トレードという機能で、実際のトレードと同じ様にトレードのテストを行いさらに戦略の有用性を分析していくんです!

仮想トレードの設定方法

まずは、バックテストの「完了したバックテスト」から「仮想トレードへ」ボタンを押しましょう。

するとその戦略が指定された状態で仮想トレードの各種設定ができます。

また、仮想トレードの「戦略」タブからも仮想トレードを行う戦略を指定することもできます。

仮想トレードの設定画面はこんな感じになっています。

設定項目がいろいろありますが、まずは全部デフォルトで大丈夫です!

戦略

仮想トレードに使用する戦略の名前が表示されます

投資資金

実際にリアルトレードと同じく投資資金を決めましょう。

市場投入資金

後述する運用方法複利運用の場合には、投資資金の中から、実際に銘柄に投資する上限資金を設定でき、差額を余剰資金(追加資金)として使用できます。

基本的にはまず「単利運用」でトレードを行なって有用性をチェックすれば大丈夫なので、デフォルトの100%にしておきましょう。有用性が確認できたら「複利運用」でここの資金を変えてどれだけパフォーマンスが違うのか見る流れですね!

1日の最大投入額(複利運用を選択時)

市場投入資金のうち、1日に投資する最大金額を設定できます。その金額内で同日に1銘柄または複数銘柄へINを行います。
1日の最大投資額は市場投入資金を超える事はできません。
金額指定をした場合には、複利運用でも金額は変わりません。

レバレッジ

レバレッジをかけたい場合に1.0〜3.3倍の間で設定できます。レバレッジをかけた場合、
投資資金 市場投入資金 1日の最大投入額 1銘柄への最大投入額 で設定した金額(%指定は除く)が全てレバレッジの倍率に増加した状態からトレードスタートになります。

売買手数料についてはレバレッジはかかりません。

1銘柄の最大購入額(複利運用を選択時)

並行して複数銘柄を売買したい場合に使用します。%指定の場合、1日の最大投入額に対しての比率になります。

例えば、1銘柄の最大購入額を50%と設定した場合、同日に複数シグナルがあった場合に1日の最大投入額の50%を上限にトレードを行うことになります。

1シグナルのみであれば、1日の最大投入額を上限にトレードを行います。

複数銘柄に分散した場合と1銘柄に全部つっこむ場合とでどれだけパフォーマンスが違うのかチェックできますね!

1銘柄の最低購入額(複利運用を選択時)

並行して複数銘柄を売買したい場合に使用します。%指定の場合、1日の最大投入額に対しての比率となります。

1銘柄の最低購入額を10%と設定した場合、1日の最大投入額の10%以上を1銘柄にあてることになります。

なので、複数銘柄への投資に設定していた場合、シグナルが出ていても残資金がこの10%に満たない場合には購入(または空売り)しないということになりますね。

売買手数料(往復)

実際のトレードでかかる売買手数料を考慮する事ができます。設定した場合、上限額からその手数料を引いた額の範囲でINを行います。

スリッページを設定したい場合にも、ここで指定を行ないましょう。

運用方法

単利の場合には、利益が出ても市場投入資金以上のトレードはしません。

また、損失が出て市場投入資金より資産が下回ったとしても、常に市場投入資金(市場投入資金が70万円の場合、資金が50万円となっても常に70万円を投入)でトレードが行われます。

複利の場合は出た利益も含めてより現実的なトレードをします。

単利運用は「戦略間の比較」に適しているので、

単利で戦略を比較し、有効な戦略に対し複利運用を用いて現実に即した分析を行なうといいでしょう!

テスト対象期間

テストする対象期間を設定できます。

テスト対象期間が選択したバックテスト結果で行なった期間を超えていた場合でもバックテストでの期間内で仮想トレードが行われます。

出来高での制限

低位株など出来高が少ない銘柄の場合、1銘柄または1日の最大投入額を設定していても、投資額がその銘柄の1日の出来高の多くを占めてしまい実際のトレードと大きく乖離してしまう場合があります。

バックテスト戦略で出来高や売買代金の条件を指定していれば問題ないですが、指定していない場合には設定をすることでシグナルが出ていても出来高が少ない銘柄はINを行わないよう除外できます。

例えば、

前日出来高の10%

と設定した場合には、

 「前日出来高が10,000株」であれば、「1,000株までを上限」にIN

を行うということになります。

基本的にバックテスト時にそういった銘柄の絞り込みはしておくようにしましょう!

シグナルの優先順位

同日に複数シグナルが出た場合にどのシグナルを優先してINするか設定できます。

IN戦略の決済に始値を使用している場合は、前日のデータを使い、終値を使用している場合はシグナル当日のデータを使用します。

インジケーターも含めデータは全て日足のデータが使用されます。

  • 例1)A:始値 B:なし B-A:高い順
    始値の金額が大きい銘柄を優先します

 

  • 例2)A:始値 B:高値 B-A:高い順
    高値と始値の差(高値 - 始値)が大きい銘柄を優先します

 

  • 例3)A:終値 B:25日単純移動平均線(SMA) B-A:低い順
  • 25日単純移動平均線(SMA)と終値との乖離(25日SMA - 終値)が小さい銘柄を優先します。終値がSMAより上にある場合、B-Aはマイナスの値となるため、低い順ではマイナスの値が大きい銘柄(SMAより上方に乖離が大きい銘柄)が優先されます。高い順の場合、SMAより下方に乖離が大きい銘柄が優先されます。

優先順位を設定しない場合、ランダムでINを行います。

分析手法

分析手法は「単一」「モンテカルロ分析」があります。

利用しているプランによっては、モンテカルロ分析という強力な統計シミュレーションを使うこともできます!

単一では一回のシミュレーション(指定期間内で一連のトレード)を行うわけですが、戦略によってたまたまいい結果だった場合もありますよね?

なので、何度かシミュレーションを行い、結果のばらつきがどの程度あるのか観測する必要があります。

モンテカルロ分析の場合は、統計手法の1つを用いて1000回のシミュレーションを行い、その結果のばらつきから統計的に95%の確率で起こりうる総合結果を算出します。

さらに単一シミュレーションではシグナルの時系列順は変えませんが、モンテカルロの場合には時系列すらもバラバラにしてシミュレーションを行うので、「季節性でパフォーマンスがいいだけだった」「トレンドに乗れただけ」といった要因を排除して、純粋に1トレードごとで積み重ねたパフォーマンスをチェックすることができます。

モンテカルロ分析では戦略条件やシグナル数により数分〜数時間かかる場合があるので、まずは単一分析を何度か繰り返して結果のばらつきをチェックしてみましょう!

結果のチェック

仮想トレードもバックテストの時の結果で見れるものとほとんど同じになります。

リアルなトレードに即してトレードシミュレーションを行った結果のパフォーマンスをチェックしていってください!

また、「トレード履歴」タブでは実際のトレードと同じなので資産の推移もチェック出来て、「いつ何の銘柄を何株買っていつ売ったか」というトレード履歴を時系列でみていくことができますよ!

こちらもその行をクリックするとその銘柄のIN、OUTの時点のチャートが表示されるので便利ですね〜

完了したシミュレーション

ここは、モンテカルロ分析を選択した場合に表示されます。

モンテカルロ分析はバックグラウンドで1000件ものシミュレーション処理がされているので、シミュレーションが終わるとメールでお知らせが来ます。

また、バックテストと同じ様に進捗もここで確認できます。

完了したシミュレーションは「結果を表示」ボタンで表示してみましょう。

モンテカルロシミュレーションの結果チェック

モンテカルロ法を使用した仮想トレードを行った場合、結果が単一シミュレーションとは少し違ってきます。

一連のトレードを1000回も繰り返すので、1つ1つのトレード履歴や期間別に確認することはできません。

そもそも、モンテカルロ法は時系列もバラバラに混ぜてランダムな状態でトレードするので期間という概念がないですからね。

結果はこういった様に表示されます。

1000回トレードのシミュレーションを行った結果、95%でこの勝率に収まってますよ〜とか、利益はこの範囲ですよ〜という事がより鮮明にわかりますね。

総合結果や損益統計には「95%信頼区間」「99%信頼区間」というものがありますが、これも統計的に「95%の確率だと〜」というものと「99%の確率だと〜」という意味になります。

統計(厳密には推測統計っていいますが)ってすごいですね!

サンプルエクイティカーブでは、1000回のトレードシミュレーションのうちランダムに選んだ97件のシミュレーションと最大で資産が増えた(減った)シミュレーション最大のドローダウンがあったシミュレーションの計100件の資産推移グラフが表示されます。

100件ですらもうイナズマの様にしか見えませんが、トレードするとこのくらいの資産増減範囲に収まるんだなぁというのが感覚的にわかりますね!

パーセンタイル統計

パーセンタイル統計では、損益率や最大DD(ドローダウン)など各指標をそれぞれ上位から下位まで並べた時に下位5%でどれくらいなのか」「上位5%(95%)でどれくらになるのか」という事がわかります。

ここからも、「中央の50%では損益率は22%前後」という95%信頼区間で出た損益率統計値に近いということがわかりますね。

スクリーニングをしよう

ここまでで有用な戦略が見つかったら、あとはそのバックテスト条件で毎日スクリーニングしてシグナルの出ている銘柄を見つけましょう!

バックテストの画面に戻って戦略を選択すると画面下に「スクリーニングへこの戦略をインポート」というボタンが出てくるので、ボタンを押せば同じ条件がスクリーニング画面で設定された状態ですぐにスクリーニングできますよ〜

コメントを残す

メールアドレスが公開されることはありません。 が付いている欄は必須項目です