最適分散投資比率を求める【Excel ソルバーの使い方】

ポートフォリオ理論

若干、大袈裟なタイトルになってしまいましたが、備忘録も兼ねた記事なんで期待しないでくださいねw

ポートフォリオ理論は1952年に、当時シカゴ大学の大学院生だったハリー・マルコビッツが発表した論文が起源です。

マルコビッツはのちにノーベル賞を受賞しますが、この論文は資産運用の世界に革命をもたらしました。
いやあ、若いのに大したもんだ…

この論文が画期的だったのは

・リスクというものを初めて定義した
・分散投資をすればリスクを軽減できる
・最適なポートフォリオの構築

大雑把にいうと、こんな感じです。

マルコビッツはそれまで曖昧だったリスクという表現を、リターンの標準偏差と定義しました。
これによって、「リスクは10%だ」などと表現できるようになり、またリスクを比較することも可能になりました。

銘柄を分散すればリスクが軽減するのは感覚的にもわかりますが、マルコビッツが論文を発表したときには、いかに高いリターンを得るかだけに関心がもたれ、リスク管理は疎かにされる傾向にありました。

そのときはちょうど市場が活況だったのかもあって、銘柄を分散するといっても成長株だけに集中投資が行われたようです。

しかしその後、市場が暴落したときに大きな損失が発生して、ポートフォリオ理論が脚光を浴びたというわけです。

と、ポートフォリオ理論の概要はここまで。

要するに「卵は一つの籠に盛るな」という先人の知恵を、マルコビッツが理論体系化したわけですね。

戦略の分散

では早速、具体例を使って説明してみます。

2014112001

仮にX,Y,Zの3つの戦略を持っていたとします。
グラフは、その戦略を運用したときの累計損益曲線です。

パッと見、システムZがいいですね。
単体でも十分運用可能でしょう。

こんなシステム作りたいなあ…
ちなみに上記の戦略はすべて平均0.2%、標準偏差1%で正規乱数を発生させて作ったものです。

2014112002

各戦略の日次リターンの平均、日次リターンの標準偏差、変動係数(標準偏差/平均)を求めました。

変動係数が小さいほど、安定したシステムをいえます。

なので、どういった比率でこの3つ戦略に投資すれば、もっとも変動係数が小さくなるか。
つまり、もっとも安定したシステム(統計上)を構築するのが、この記事のコンセプトです。

ではまずは、すべての戦略に同じ比率で資金を投入したときの数値を求めてみましょう。
3つの戦略なので、1つの戦略に資金の33.3%を投入します。

2014112003

結果はこのように、綺麗な損益曲線になります。
R^2も0.97あって、もうこれで十分なんですけどw

せっかくなのでExcelの機能ソルバーを使って最適化してみましょう。

ソルバーの使い方

データ⇒データ分析のところにソルバーがない方は、ファイル⇒オプション⇒アドイン⇒からソルバーをインストールしてください。

2014112004
※クリックすると拡大します

セルC6:F8にはそれぞれ数式、関数が入っています。
簡単に書くと、リターン(平均)はAVERAVE関数、標準偏差はSTEVP関数、変動係数は標準偏差/リターンです。

目的セルはF8で、3つ戦略の合成の変動係数、この最小値です。
そして、変化させるセルはC4:E4、比率です。

ソルバー機能を使うと、F8の数値が最小になるように、セルC4:E4の比率を求めてくれるのです。
すごい便利でしょw

さらに、条件をつけれます。
ここではセルF4(C4:E4の合計)を100%に設定します。
つまり、100%資金を使い切るということです。

2014112005

結果的には、28.76%:29.47%:41.77%
この比率で、戦略に投資すればもっとも安定するようです。

目で見て、ほとんど差は感じませんがw
理論的に最適な比率?は、このようにして求められます。

トレード結果

オセロの法則通り、今日は負け。

直近14営業日の成績
白黒白黒白黒白黒白黒白黒白黒…

どうなってんだw
明日は法則通り勝ってくれよ!

今日の収支 ▼5950円

損切りをする/しない矛盾

損切りは必要か?

土屋さんが以前に、損切りはしない方がいいというような記事を書いて、大きな反響があったのを覚えてます。

僕には、到底あんな高度な記事は書けませんが、今日は損切りについて少し語ってみようかと。

トレードの入門書には、しつこいくらいに損切りをしろ、損切りは大事だって書かれていますよね。

でも僕なりに言い直すと、大切なのは株を塩漬けにして資金を凍結させてしまうのが問題であって、損失の出ている株を決済するのが必ずしも正しいとは限らないって感じですかね。

僕は株を始めた直後から、損切りはすんなり行えました。
というか、損切りをしているという感覚は全くなかったです。

それは元パチプロだったから多少は期待値思考ができていたことと、トレードスタイルが順張りだったからだと思います。

僕が最初に好んでいた手法はブレイクアウト。
ある抵抗線を価格が抜けそう/抜けたときに、即座に買います。

で、首尾よく株価が上がってくれたらそのままホールド。
勢いがなくなって、もうこれ以上は上がらないかな?と思ったとこで決済します。

結果的には、これは利確(利益確定)です。
でも、これが利確だなんて思ってやってるわけじゃなかったです。

逆に、ブレイクアウトが不発に終わったとき。
これはもう、仕掛けたトレードがダメだったんだから、負けを認めて即座に決済します。

当然、そのときは損失が出ているので結果的に損切りをした、ということになるんでしょう。

今、こう書いてて改めて頭の中で整理できてきましたけど。
ブレイクアウト戦略は、株価が抵抗線を抜けて勢いがつく、という事象に賭けているので、勢いがなかったら決済をすべきです。

その結果が、損失というだけの話。
別に損切りという行為を意識して行ったわけじゃありません。

一番ナンセンスなのが、買値から10%下がったら損切りとかいうルール。

市場は自分を中心には回ってくれないので、自分の買値を基準にすることには何の意味もありませんからね。
もちろん、リスク管理という意味でも適切ではありません。

あと、逆張りスタイルの人に多いのが。

上昇相場で乗り遅れてしまったとき。
もうね、高値掴みするのだけは絶対に嫌だ!ってなります。僕も同じくw

で、ついつい空売りしちゃうんですよね。
んで、直近の高値にストップを置いたりします。

これはすごい矛盾する行為で、新規買いはダメなのに返済買いはOKってことになっちゃいますよね。

買い戻すということは、価格がもっと上昇するってことなんだから、どでん買いするのが正解でしょ。
って、ここまでいうと極論だけど。

まあ、ようするに意味のない損切りは不必要ってことですね。
なんだ、この駄文w

最低500文字は書かないと、ってやるとやっぱり記事の質が悪くなるなあ…

トレード結果

やや劣勢の一進一退は続く…
白黒白黒白ってオセロみたい。

今日勝ったから、明日は負けだから休もう♪
って、できたらラクなんだけどなあ…

今日の収支 22550円

最小分散ポートフォリオをExcelソルバーで計算

モダンポートフォリオ理論

学校の勉強なんて、大人になったら何の役にも立たない!
なんて粋がっていた、若かりしあの頃。

いやいや、けっこう役に立つことが多いですよw
特に数学はねー、もっと勉強しておけばよかったられば。

 icon-check-square-o 二次関数の頂点

先日、甥っ子(高校一年)の数学の勉強を見てたんだけど、二次関数の頂点を求めなさいって問題があって、それを上手く教えることができませんでしたOrz

エクセルのソルバーを使えば、簡単に求められちゃうからなあ。
手で計算して求めることってないもん。

でも、これって最小分散ポートフォリオを構築するのに必須なんですよね。

今、ポートフォリオ理論(MPT)の勉強をしてるんだけど、僕にはかなり難しいです。
数学の知識が足りな過ぎるー

こんなときに、学生のときにちゃんと勉強しておけばよかったって後悔するんですねw

Excelのソルバーを使って最小分散を計算

簡単な例を用いて、Excleで最小分散ポートフォリオを構築してみます。

2014111801

二つのシステムA,Bがあったとします。
ちなみにこのシステムは、ただ単に正規乱数を発生させて作ったものです。

平均が高く、標準偏差が低いシステムAだけを運用するのもアリですが、システムを分散させた方が安定はするでしょう。

試しにシステムA,Bに50%ずつの比率で資金を入れて、同時に運用したときの損益曲線を描いてみます。

2014111802

損益のボラ=標準偏差が下がり、損益曲線も綺麗になりました。
こんな感じで、仮に10個のシステムを同時に運用すれば、損益曲線はほぼ直線になります。

とはいっても、相関性のないシステムを10個も作れはしないんだけど。

ここでは現実的に、上記のようなシステムがあった場合、どのような比率で資金を分配すればもっともリスクが小さくなるでしょうか?
ということを、考えてみます。

2014111803

説明は長くなるので割愛します。
詳しく知りたい方は、「最小分散 エクセル」とかでググってください(無責任

結果的に、システムAに53%、システムBに47%入れるのが、最もリスク(分散)が小さくなるようです。

2014111804

今回は、ざっくり50%ずつで運用したのとあまり差は出ませんでしたが、それでも少しは成績がよくなっています。

次回は3つ以上のシステム、効率的フロンティアにふれたいと思います。

トレード結果

戦略に対して、地合いは完全にアゲインスト。
しかも、けっこうな強風っぽい…

今日は、これでもまだmyポートフォリオは奮闘してくれた方。
ダーツの刺さり方によっては、もっと負けててもおかしくなかった。

減資スピードはかなり速くしてるので、大火傷をすることはまずないと思うけど。

このシステムでまだしばらくは稼げるかな?と皮算用していたので、マイナスで運用停止になるのはキツいです。

FXもねえ、多少は優位性のあるものは見つけられるんだけど、スプレッドの分以上はなかなか稼げない。

状況は厳しいけど、頑張って乗り越えようじゃないか!

今日の結果 ▼35450円

アノマリーやバイアスをどう活用すればいいのか?【システムトレード】

曜日・時間帯ごとのリターンの分布

いくつかの通貨ペアで、曜日や時間帯ごとのリターンの分布を見てみると、色々なバイアスが見つかりますね。

もちろん、収益に繋げられるほど顕著なものは見つけられてないけど、少ししか検証してないのに傾向くらいは掴めるものです。

FXトレーダーには当たり前かもしれないけど、たとえばドルストレートだったら、アジア時間はボラティリティが低く、ヨーロッパやニューヨーク時間の方がボラティリティは高いとか。

えっ?そんな当たり前のこと書くなって?
いやいや、まずはその当たり前のことを調べてるレベルですから…

で、なんでアジア時間よりもニューヨーク時間の方がボラティリティ-が高いかを考えることが大事だと思います。

考えて脳みそに汗を書くことが大事。
最近、脳みそを使ってないからどんどん退化していってるんだよなあ…

そして、自分なりにファンダ的な裏付けが説明できるのならば、そのアノマリーやバイアスをどうやって収益に繋げるかの段階に進みます。

ここで大事なのが、自分なりに解を持つこと。
そうじゃなくて、理由はわからないけど過去はこうなっていたから、っていう理由だけで実弾を張ると、ドローダウンを喰らったときに確実に心が折れます。

システムを信じることができなくなって、すぐに運用を停止することになるでしょう。

そして、仮にバイアスが見つかったとしても、それはいずれ消滅するはずです。

ある時間に売りバイアスが見つかったとしましょう。
ファンダ的な裏付けもありました、どうやらその時間帯に決まってある機関が売りを入れるようです。

賢い人は、機関が売りを入れる前にショートポジションを持つでしょう。
そして、それは広まっていき、やがてバイアスは消滅するでしょう。機関が売りをやめてなくても。

ってことで、時間帯別のバイアスを使ったトレードは信用できなそうかな?っていう印象を受けました。

今日のトレード結果

まだ見ていません。
現在、夜の八時半。

だって、見たくないんだもん!!
そりゃ、プラスが確定してるなら見たいけど、マイナスの収支なんて超見たくない。

金曜日の収支で、週末の気分はだいぶ変わりますからね。
日々の収支に一喜一憂してしまうのは、何年やっても変われませんねえ…

―追記―

10時半に見ました、負けてました。
嫌な予感はよく当たる…

日銀砲で何かが変わってしまったのは仕方ないとして、やっぱり課題をやらないとダメかな…

今日の収支 ▼22510円

20141114

FXのシステムトレードの戦略のアイデア探し

FXのシステムトレードの構築

当然、FXの初心者の僕が電撃的なアイデアなんて浮かぶはずはないので、FXトレーダーの方のブログを読み漁ってます。

肝心な部分は伏せられていても、何かしらのヒントは落ちてますからね。
そこらからリバースエンジニアをかけて、手法を探ることも不可能ではないと思う。

ちょっと見た感じ、株よりもお口が緩い人が多そう?

株の場合、特に小型株なんて手が一人でもかぶったら、それだけで優位性がなくなっちゃう場合がありますからね。
発言には慎重にならざる得ません。

でもFXの場合は、多少は手法が流出しても平気なんですかね?
1ピップスって、どのくらいの資金で動かせるんだろう。

もちろん通貨によるだろうけど、ドル円とかのメジャー通貨でも、個人投資家レベルの売買が影響を及ぼすものなのかな?
そこらへんも調べてみないとですね。

ここ数日で、いくつかのトレードアイデアは拾ってきたので、それを片っ端から検証してみよう!
時系列データは比較的簡単に手に入るので、そんなに時間はかからないかな?

それよりも、トレード環境を構築するのが大変そう…
MT4を使うことになるんだろうけど、ほとんど使ったことないしなあ。

あとは、お名前ドットコムの仮想デスクトップを使えば、外出先でも安心してトレードできそうだけど。

これらのツールを使いこなせるようになるには、それなりに時間はかかりそうです。

まあ、まずはバックテストでいい結果が出てからですな。

今日のトレード結果

辛勝。
今は負けなければ御の字です。

ただ、二年前の宿題が残ったままなんだよなあ。
たぶん、今の資金サイズなら、あるフィルタをかければ収支が上がりそうです。

そうなる理屈もある程度は説明できるし、バックテストすりゃいいだけの話なんだけど。
どうにもそれをする気がしないんですよね…

今のシステムは、基本的にもう弄りたくないんですよ。
一度弄りだすと、キリがないですからね。

だったら、その分の時間をFXの検証や他のことに回した方がいいだろうと。

でも、先ほど書いたあるフィルタの検証は、たぶん一日もあれば終わるよ?
だけど、検証する気がしないんだよなあ…

だって検証して、明らかにフィルタをかけた方がいいって数値が出たら、そうせざる得ないし、色々と考えなきゃいけないことが出てくる。

要するに、面倒くさいってことですw

フィルタをかけて劇的に収支が上がるなら別だけど、まあお呪いみたいなもんでしょ?
だったら、バックテストしてみりゃ(ry

今日の収支 10250円