システムトレード・クイズ3選ツイート株式予報チャンネルでは、Yahoo!ファイナンス株価予想達人の中原良太が、初心者でもわかりやすい株式投資のコツをお届けします。第106回目のテーマは、「第1回:システムトレード・クイズ」です。今回はいつもと趣向を変えて、システムトレードにまつわるクイズを出題。こんにちは、株式予報の中原良太です。今週は、「第1回システムトレード・クイズ」というテーマで、動画セミナーを始めていきたいと思います。セミナーというより、今回はワークショップに近いかたちになっております。具体的には、システムトレードに関するクイズをいくつか出していきます。システムトレードをやってない方にとってはあまり役に立たないと思うので、そういう方はそっと画面を閉じていただければと思うんですけども。この動画セミナーをご覧いただいている方は、大半がシステムトレーダーの方だと思いますので、そういう方はぜひお役立ていただけたらなと思います。なんでこんなテーマを選んだかというと、システムトレードをやっていて、「えっ、それってやっちゃいけないんじゃない?」みたいなことをやっているシステムトレーダーの方が、ちょいちょいいらっしゃって......。このクイズが、自分の売買ルールを改良する1つのきっかけになればと思って、この動画セミナーを収録することに決めました。役に立つ内容だと思いますので、ぜひ最後までお付き合いいただけたらと思います。いうことで、さっそく始めていきましょう。今回の講座の目的なんですけれども、「システムトレーダーなら、一度は悩んだことのある場面を、クイズ形式で考えてみる」ということです。この動画の半分ぐらい、僕はしゃべらずにぼーっとしてます。その間に(みなさんは)クイズに対する答えを「自分だったらこうするかな」と考えてください。そのあとに、僕なりの答えをお伝えしていこうかなと思っています。僕の考え方が必ずしも正しいとは限らないんですけれども、1つの参考になればと思っています。前置きとして、まず、僕らトレーダーは常に選択をしているかと思います。トレードはそもそも、選択の連続なんです。いつ、どの株をどれぐらい買って売って、どういう戦略を立てて、どのような手法を使って......と、常日頃から選択をしているものだと思います。トレードの世界は、いかに賢く選択していくかが、利益を出し続けるための肝だと考えていて、一つひとつの小さな選択ミスが、のちのち大きな失敗につながりかねないと思うんです。選択ミスをしないように、常日頃から正しい選択をしようという心がけを持つのが大事だと思っています。その上で、システムトレーダーもシグナルに愚直に従うだとか、いろいろ考えなきゃいけないことがある中で、売買ルールを作るときに度重なる選択があると思います。「システムトレーダーだったら、この場面でよく迷うな」という局面を今日は集めましたので、それをもとに、僕なりの考え方を共有できればと思っています。注意していただきたい点が1つあります。それは何かというと、今回の動画セミナー内で僕が示す答えは、あくまで僕個人が考えているものであって、必ずしも学術的に正しいといったものではありません。僕が正しいと考えているもの・意見ですので、その点について、あらかじめご了承いただければと思っております。それでも、少しは参考になると思ってますので、僕なりの考え方を共有していきます。いうことで、この点をご了承いただいた方から、次に進んでいきたいと思います。今、売買ルールを最適化しています。あなたはこれから新しい売買ルールを作っていくんですけれども、ドローダウンを運用資金の2割に抑えた状態......(運用資金が)100万円なら損失を20万円に抑えた上で、利益を最大化したいと考えるとします。今回調節していくのは、前日比という条件式です。前日比という条件式を上げたり下げたりして、ドローダウンを2割に抑えた状態で利益を最大化する。いうのを、考えていきましょう。選択肢として、この中に(前日比)マイナス1パーセント以下からマイナス8パーセント以下まで、8通りあります。考える時間を1分ほど設けますので、ぜひその間に、いろいろと考えてみてください。ドローダウンを運用資金の2割に抑えた状態で、合計損益を最大化したい。僕なりの考えを、ご紹介していきたいと思います。システムトレードを始めたばかりの方だったら、おそらくこの中から「前日比マイナス4パーセント以下」を選んだかもしれません。ドローダウンがきちんと2割以内に抑えられていて、かつ年利が最大になっているからです。僕は、これは答えとしてはふさわしくないかなと考えています。いうと、これは過去の動画セミナーでもお伝えしたことがあると思うんですけれども、前日比という条件式を1パーセント調節したことによって、ドローダウンが大きく変化していっているんです。マイナス1パーセント以下のときには(ドローダウンが)35パーセントから、マイナス8パーセント以下にしたときにはドローダウンが15パーセントまで小さく抑えられたということで、前日比わずか1パーセントで、ドローダウンが大きく変動するんです。それはどういうことかというと、前日比が小さな銘柄が偶然現れた瞬間に、ドローダウンが更新されて、大きくなってしまう。それだけドローダウンが前日比に大きく依存しているので、ちょっとでも間違いがあったら、簡単にドローダウンが2割を超えてしまうんじゃないかと考えています。「前日比マイナス4パーセント以下」を選んだとしたら、確かに検証結果上はドローダウンを2割以内に抑えられているんですけれども。そのすぐ近く、「マイナス3パーセント以下」という条件式には、ドローダウン25パーセントという条件式が待っているんです。その隣(前日比マイナス2パーセント以下)には、ドローダウン30パーセントも待っています。いうことで、「ちょっと条件式が甘すぎると、簡単にドローダウンを更新しちゃうんじゃないの?」というのが、僕なりの考え方です。今回のような例の場合は、ピーク(のものの周辺も含めて、最適だと思える数字を選ぶ)。ドローダウンを2割に抑えた上で利益を最大化するのは、もちろん大事なんですけども、「ちょっと間違いがあっても、ドローダウンは2割以内に抑えられるんじゃないか?」と考えられるように、条件式を微調節していく必要があるかなと考えています。いうことで、例えば安全を重視するのであれば「前日比マイナス8パーセント以下」とか。厳しくして、ドローダウンが小さな方にどんどん調節していく。利益を出したいと考えている場合は、「前日比マイナス5パーセント以下」とか。「1パーセントくらいのずれだったら、しょうがないかな」と考えて、隣(前日比マイナス4パーセント以下)にドローダウン20パーセントがある、現時点で(ドローダウン)17パーセントの条件式を採用する。いう具合に、ピークのものの周辺も含めて最適だと思える数字を選ぶのが、大事かなと思っています。いうことで、「ドローダウンを2割以内に抑えたい」を必須条件だと考えた場合は、僕はまず「(前日比マイナス)4パーセント以下」は、ちょっと危険すぎやしないかと思います。最低でも1パーセントの余裕を持って、マイナス5、6、7、8パーセント。下にいけばいくほど、ドローダウンを2割に抑えた状態という目的は達成されやすいのかなと考えています。下の方へ、選択肢をずらしていくのがいいんじゃないかなと思っています。いうのが、まず1問目の答えでした。いうことを一緒に考えていくことはないので、いい機会になればと思って、こういう問題を出しております。いうことでまず1つ目の「最適値はどれか?」という問題については、こんな具合に考えていくのが、僕なりにはいいかなと思っています。ピークの周辺値を確認する。良かったのは、マイナス4パーセント以下だった......これは間違いないんですけども、その周辺も含めて一番良かったかどうかを考えるのが、非常に大事なポイントかなと思います。安全を見るのであれば、できるだけピークを拾って、その周辺全部が良いこと。自分の選択したパラメータの周囲全部が良いことを確認するのが、安全性・堅牢性の高い売買ルール作りにつながるんじゃないかなと考えております。いうことで次、さっそく2問目へ行ってみましょうか。事例1は、前日比を0.1パーセント刻みで調節した場合の検証結果です。事例2が、前日比を5パーセント刻みで調節していった場合の検証結果です。こちらも、1分ほどお時間を設けますので、ぜひ考えてみてください。答え合わせをしていきたいと思います。言っても、僕の答えが正しいとは限らないんですけど。僕ならこの場合、どちらが過剰最適化なのかと考えるか。僕が考える、悪い方は......。悪い選択は、下側(事例2)かなと考えました。いうと、こちらは取引回数に大きな変化が現れていないからです。いうことかというと、サンプルが大きく変化してないのに得られた検証結果の違いは、統計的には有効ではない。誤差の範囲だと捉えるのが、普通かなと考えています。システムトレードは基本的に、統計的なデータの有効性を信じてトレードするのが定則だと思っているんですけれども。「統計的にデータが有効じゃない」と言われちゃったら、それってシステムトレードじゃないんです。数字合わせと言えばいいですかね。「検証結果が良かったからやってます」というだけで、「統計とかぜんぜん気にしてません」みたいな、ちょっともったいないトレードになってしまうと考えています。事例1の場合は、前日比をすごく細かく刻んでいるんですけれども、トレード回数に1,000回程度の大きな変化が現れています。確かに、誤差の範囲と言われればそうなのかもしれないですが、確実にサンプルには大きな変化が生じています。大事なのはパラメータの区切り方。小さく区切るか大きく区切るかではなく、サンプルがどれだけ変化しているのか。大事なのは、数字を細かく刻んだのがカーブフィッティングだ、過剰最適化だと考えることじゃなくて、取ったサンプルがどれだけ違うか。そこでちゃんと傾向を見いだせるかどうかに注目するのが、大事だと思います。「サンプルが変化しているから、これは統計的に有効なんだ」と判断するのが、大事なポイントかなと思っています。条件式がいくら細かろうが、ちゃんと得られた検証結果に大きな変化が見られて、ちゃんと傾向が掴めているのであれば、それはカーブフィッティングじゃないんじゃないのというのが、僕なりの考え方です。理想的には、前日比5パーセント刻みとかむっちゃ荒く、ざっくり調節した上で取引回数も大きく変化しているのが、一番の理想なんですけれども。前日比0.1パーセントなんて、偶然で変わってしまいかねない数字なので。いえ、サンプルが大きく変化しているかどうかが、統計的な優位性に大きく影響してくるポイントだと思いますので、僕だったらこっちを重視するかなと思っています。これはあり得ない例なので、なんとも言えないんですけれども。実際にこういう例が現れたら、僕は事例1の検証結果を評価したいと考えております。いうことで、過剰最適化なのは事例2。僕だったら、事例1を正しいと解釈します。こんな感じで、システムトレーダーだったら「どれぐらい細かく条件式を調節しようかな」とか、いろいろ考えると思うんですけれども。基本的には、荒いに越したことはないです。細かく調節しすぎると、過剰最適化になるので。そもそも、なんで過剰最適化が起こるかというと、「得たデータに統計的な有効性がないから、過剰最適化だ」という判断をするんです。結果的な取引回数とか、得られたデータのもとはなんなのかを考えるのが、一番大事なポイントかなと考えております。仮に「事例2も、得られたデータがぜんぜん違うサンプルに基づいたものなんだよ」と言われたら、それは過剰最適化じゃないよという判断になりますので、それはそれで留意しておく必要があるかなと思います。こんな感じで、システムトレード・クイズを続けていきたいと思います。今日は3つだけご紹介したいなと思ったので。