トランプ相場とレジーム判定

「ヘッジファンドに思わぬ救世主出現-宿敵だったはずが」 -Bloomberg、12月9日

上記はトランプ相場とヘッジファンドのパフォーマンスに関するブルームバーグの記事です。
同記事によると、最近の金融市場ではアセット間の相関が崩れているようです。
記事の中では以下の4つのインデックス相関が低下していることが示されています。

 (1) S&P500とMSCIエマージング指数
 (2) 米10年債利回りとMSCIワールド指数
 (3) Bloombergコモディティ指数とMSCIワールド指数
 (4) S&P500とTOPIX

このためアセット間でロングショート戦略を取っているヘッジファンドは、
相関関係の低下に伴うスプレッドの拡大・縮小によりリターンが改善しているとのことです。
リターンが改善しているのはロングショート系というよりもグローバルマクロ系ではないか?
とも思いますが、実際のところはよく分かりません。
もちろん裏目を引いたファンドもいる筈ですが、全体的にパフォーマンスが好転していることから
統計的・クオンツ的に予測しやすい相場になっているのでは、とも考えられます。

さらに同記事では相関の低下がアセット間だけでなく同一市場内でも起きていることに言及されています。
このように同一ユニバース内の銘柄の相関の大小でレジームを判定する、というのはよくある手法の1つです。


レジーム判定の方法にはいくつかあって、

 (1) マクロ経済市況で判定する
  CPIや国債利回り、TEDスプレッドなどの水準に基づいてレジームを判定します。
  この手法は株式インデックスから長期国債への切り替えなど、
  大雑把なアセットアロケーションに利用されることが多く、論文も多数見掛けます。

 (2) 市場のボラティリティで判定する
  市場インデックスのヒストリカルボラティリティについて、直近の値と過去の値を比較して判定します。
  例えば、直近3ヶ月のボラティリティと過去36ヶ月のボラティリティを比較したりします。
  もしくはVIXなどのボラティリティ指数の水準で直接判定する場合もあります。

 (3) 銘柄の選好状況で判定する
  高ボラ銘柄と低ボラ銘柄のリターンスプレッド、高ベータ銘柄と低ベータ銘柄のリターンスプレッドなど、
  銘柄の選好状況による投資家のリスクアペタイトを元に判定します。
  もしくは今回のトランプ相場での事例のように、ユニバース内での銘柄相関を観察して
  不特定の銘柄の挙動の変化を検出する方法もあります。

これらのレジームに応じて、アウトパフォームする銘柄が異なります。
例えばモメンタム効果は低ボラ時に機能し高ボラ時に予測力を失う、と一般的に言われています。

また、上記のようなファンダメンタル的、テクニカル的な判定手法を用いなくとも、
与えられたデータに対して直接統計的に有意なポイントで切り替えるという手法も存在します。
これはマルコフ転換モデルという手法です(レジームスイッチモデルとも呼ばれます)。
ただし、この手法はデータドリブンな手法であるため、
統計的に算出されたレジームの概念が抽象的で理解しづらいというデメリットがあります。


ここからは個人的な見解ですが、レジーム判定を使いこなすことは非常に難しいと考えています。
良いレジームを探すということは都合良くデータを選別することと殆ど同義であり、
経験上、カーブフィッティングに陥る危険性がとてつもなく高くなってしまいます。
(ただ単に自らのスキルが低いだけかもしれませんが)

レジームを切り替えて状況に応じた収益向上を目指すよりも、
戦略を分散させて如何様なレジームにも対応するほうがパフォーマンスは安定するような気がします。

シーズナリティな戦略

株価の変動には季節性があると言われます。
これを超過収益に結び付ける戦略をシーズナリティな戦略と呼びます(いわゆるアノマリです)。

その周期は短いものから長いものまで、幅広く知られています。
ウィークリーでは「曜日効果」、マンスリーでは「月初/月末効果」や「五十日(ごとおび)」、
四半期になると「SQ」や「決算周期」、年次になると「セル・イン・メイ」、
更に長期間では「米大統領選挙周期」などが挙げられます。
また、少しコアな指標としては「月齢」や「太陽の黒点」というものもあります。
では果たしてこれらが実際のトレードに使えるのでしょうか。

今回は「月初/月末効果」について検証を行います。
そもそもこのアノマリの背景にあるのは、機関投資家のポートフォリオリバランスだと言われています。
リバランスが重なる時期には当然出来高が上昇すると考えられますので、
まずは営業日毎に出来高の様子を観察していきます。

<対象銘柄>
 TOPIX500のうち、売買代金上位20銘柄および下位20銘柄
<観察期間>
 2010年1月~2016年11月
<観察方法>
 各銘柄について、その月の各営業日における自身の出来高を母集団としてZスコアを計算します。
 この処理によって、その月の中でどの営業日にどれくらいの超過出来高があったのか、
 月別/銘柄別で同一条件で取り扱うことができるようになります。
 上記のスコアを用いて各営業日の平均を集計します。

以下が結果となります。
縦軸は平均スコアを示しており、0であればその月におけるその銘柄の平均出来高があったことになります。
1であればその月におけるその銘柄の出来高の1標準偏差の超過出来高があったことになります。

161209-1.png

さて、売買代金上位群と下位群を比較すると、それぞれの特徴が読み取れます。
上位群は月末にかけて出来高が低くなる傾向にあり、月初に大きな出来高が発生しています。
つまり、月初に多くの機関投資家がリバランスしていると考えられます。
下位群も月初に大きな出来高が発生していますが、上位群に対して滑らかに低下しています。
これは、小型銘柄は一度に大量にリバランスするとマーケットインパクトの影響で執行コストが嵩むため、
小口注文でのリバランスに時間が掛かっているためと考えられます。


参考までに、ポートフォリオのリバランスは2000年代前半には月初には行われていませんでした。
以下はTOPIX500の売買代金上位について、直近と2000年代前半を比較したものです。
2000年代前半は月初から数えて第4営業日の出来高が最も高いことが分かります。
この理由についてはここでは伏せておきます(知っている方は知っていらっしゃると思います)。

161209-2.png


最後に収益性ですが、出来高と同様に日中リターンのZスコアの営業日別平均値を以下に示します。
特に売買代金下位群できれいな周期性を確認することが出来ます。
日中リターンは月末には上げやすく、月初には下げやすいことが見て取れます。

161209-3.png



では「これが実際の運用に使えるか?」と言われると、利幅が薄くそのままでは使えません。
シーズナリティな戦略とは、単純に日柄に基づいて買ったり売ったりするのではなく、
その背景にある事象を理解しそれを逆手に取るような手法を考えなければなりません。

下記は、あるシーズナリティ戦略の資産曲線です(ブログ閉鎖前に記事にしたことがあります)。
私がこれまでに発見した中で最も強力な特性を持つアノマリであり、
長年に渡ってロバストな特性が見て取れます。

161209-4.png


では「これを運用しているか?」と言われると「実際には運用していない」です。
検証も15年半ばでストップしています。
なぜ運用しないのか?
実際にシーズナリティな戦略を作ったことのある方は何となく理解して頂けると思います。

使いこなせなかった技法

「カルマンフィルタ」というものがあります。

元々はロボットアームなどの制御において、
刻々と変化する各部の状態(アームの節の位置や角度など)を推定するために作られたものです。
カルマンフィルタの用途は3種類あり、過去から現在までの軌跡を推定する「平滑化」、
現在の状態を推定する「フィルタリング」、そして一期先の状態を推定する「予測」となります。
システムの定義で触れた「オブザーバ」の役割を担うものです。

ここまででお察しの通り、この手法を「時系列分析」に応用する手法が存在します。
DLM(Dynamic Linear Model):動的線形モデルという手法です。
系の状態を文字通りダイナミック(動的)に推定するもので、
エクスポージャーβの時系列遷移を推定することができます。


ここで一般線形モデル、ダイナミックモデル、カルマンフィルタについてそれぞれ説明しておきます。
基本的な式は以下であり、それぞれのモデルで異なるのはαとβの計算期間と計算方法です。

 R=α+β×f (α:スペシフィックリターン、β:ファクターエクスポージャー)

(1)一般線形モデル
 αとβの計算期間が固定されている(特定の日時から特定の日時までの)モデルです。
 例えば計算期間は2001年~2015年であり、得られたαとβで2016年以降トレードするモデルです。
 αとβの求め方は最小二乗法に依ります。

(2)ダイナミックモデル(ローリングウィンドウモデル)
 このモデルではαとβの計算期間の幅を一定とし、直近の値で更新しながら計算します。
 12ヶ月ローリングの場合、直近12ヶ月のデータでαとβを計算し翌1ヶ月をトレードするようなモデルです。
 この場合、モデルの更新頻度は月1回であることが多いです。
 一般線形モデルと同じく、αとβの求め方は最小二乗法に依ります。

(3)カルマンフィルタ
 計算期間は手持ちのデータの始めから直近のデータ(デイトレであれば前日のデータ)まで全て使用します。
 カルマンフィルタは逐次計算であり、一期前での予測誤差を修正するようにフィードバックが掛かります。
 当然ながら初期値により計算結果が変動し、推定値が真値に近づくまである程度の時間が掛かります。


以下は、各モデルで計算(推定)したエクスポージャーβの遷移の様子を表すグラフです。

161202-1.png


まず(1)一般線形モデルでは、期間を通してエクスポージャーβは一定の値となります。
続いて(2)ダイナミックモデルでは、期間中にβが変動します。
かなり大きな触れ幅を持っており、各年代でときには符号が逆転することが分かります。
しかしその平均値は(1)と概ね一致することになります。
またローリング期間は5年ということが読み取れます(パッと見ると分かる人には分かります)。
最後に(3)カルマンフィルタでは、図のように滑らかにエクスポージャーが変化しています。
最も注目すべきは、(2)に対して(3)のほうが先行して変化していることです。

これは平滑化によってこのような特性が表れていると考えられますが、
「カルマンフィルタではエクスポージャーの変化をいち早く検出できるのではないか?」
などと期待させてくれるグラフとなっています。



さて結論から言うと、私の検証ではカルマンフィルタによる予測力の向上は得られませんでした。
カルマンゲインの調整やタイムフレームの検証などまだまだ検討の余地はあったのですが、
中途半端な状態で早々と切り上げ、他の検討へ移ってしまいました。
結局のところ、私には分不相応な技法であった気がします。

そもそもトレーディングエッジ(要するにアノマリ)の取り方として2通りしかなく、
長期間で穏やかな傾向が現れるロバストな指標を採用するか、
もしくは直近で具現化した特徴が顕著な指標をアップデートしながら採用するかしかありません。

「後者にはカルマンフィルタしかない!」と意気揚々と取り組みましたがこの有様です。
どなたか詳しい方、知見を共有していただけると助かります。

期待値の確からしさ

前回の記事で記述した「期待値の確からしさ」について考察します。

期待値の確からしさは本来であれば理論的に求めるべきなのですが、
現実のデータは複雑に絡み合っており解が求まることはまずありません。
よってこれを求めるには実践的な手法に頼るしかありません。

まずは以下のバランスカーブをご覧下さい。
これはある単純なファクターモデルについてシミュレーションした結果です。

161118-1.png

ベースとなるモデルは説明変数Aと目的変数Zの2つの変数から成り、AとZに不変の相関ρが存在します。
まずAとZについて、正規分布且つ互いに相関ρを持つ乱数をそれぞれN個発生させてデータセットを作り、
これをインサンプルデータとして単純な回帰モデルを求めます。
続いてもう一度乱数をそれぞれM個発生させて、こちらをアウトオブサンプルのデータセットとして
先ほど求めた回帰モデルの精度を検証します。
このバランスカーブが得られたとき、両者の相関係数はどれくらいでしょうか?



種明かしをすると「相関係数は0」です。
同様の内容のシミュレーションを255回繰り返すと以下のようになり、
上記のデータは255回のうちのベストデータとなります。
(255回というのはエクセルの描画限度であり、通常であれば1000回以上は試行します)

161118-2.png

もうお分かりでしょうが、
期待値の確からしさを求めるためにはこのようなランダムシミュレーションを行うしかありません。
これはモンテカルロ法と呼ばれる手法であり、統計の世界では一般的に使われています。
システムの信頼性を把握するためにはリターンの母集団に対して検定を行う手法もありますが、
そのやり方ではこのようなランダム効果の影響を排除することはできません。

もしもAとZの相関係数がρ=0.1の場合は以下のようになります。
ここでもベストデータとモンテカルロシミュレーション結果全体の両方を記載しておきます。

161118-3.png  161118-4.png



では実際のストラテジーの期待値の確からしさの求め方ですが、
十分な母数のトレード対象を確保しつつブートストラップ法によりバランスカーブのばらつきを算出します。
ブートストラップ法はモンテカルロ法の一種であり、
母集団からランダムに復元抽出を繰り返すことで、得られた結果から母集団の性質を推測するものです。
当然ながら、得られたバランスカーブの中で最も中央に位置する代表特性の期待値は、
母集団そのものの期待値とほぼ一致するはずです。
また優れたストラテジーでは代表特性まわりのばらつきが小さくなるはずです。

例えば、よく見掛けるようなトレード数2000回、期待値2%のストラテジーがあったとします。
この場合、この結果が「期待値2%の10万個程度の母集団」から得られた結果であれば信頼できるでしょう。
しかし多くの場合はそうではない筈です。
おそらく「期待値0.1%の10万個程度の母集団」からどうにかして集めた2000個だと思います。
これで実運用で期待値2%が出ると考えるほうがおかしいと思いませんか?

あなたのストラテジーは、上記のように255個のうち最も良いものを選ぶ作り方になっていませんか?
様々な条件を追加し母集団を削りとって都合の良いデータを選別する作業になっていませんか?
目的はバックテストのバランスカーブをきれいにすることでなく、実運用できるストラテジーを作ることです。
とりあえずで追加する「移動平均乖離率≧0」などという条件が、
どれほど統計的な信頼性を損なう愚行であるか、理解できると思います。

少しキツ目の口調になってしまいましたが、ご容赦下さい。


トレーディング・エッジの在処

相場で利益を得るためにはトレーディング・エッジが必要です。

トレーディング・エッジの厳密な定義は「トレードにおける統計的有意性」となります。
これは単に期待値と考えても構いませんが、その場合は期待値の「確からしさ」が問題となります。
バックテストの期待値は「その母集団で偶然(もしくは恣意的に)その値になった」だけであり、
期待値の真の値がどのくらいの範囲に存在するか、信頼性区間として把握しなければなりません。
これをハッキリさせないためにストラテジーの良し悪し(つまり実運用で利益が出るかどうか)が
判断できないのです。

トレーディング・エッジはもう少し広義の意味で「他の取引参加者に対する優位性」との解釈もできます。
今回は広義の意味でのトレーディング・エッジが何処に存在するのか考察します。


そもそも当然の話ですが、トレーディング・エッジとは取引者の能力に起因するものです。
この能力は、(1)分析力、(2)執行力、(3)資金力の3つに分類することができます。
以下、それぞれについて説明します。

(1)分析力
 相場のデータからリターンに結びつく統計的有意性を見出すことができる能力です。
 この能力は以下の通り、多岐に渡る能力から構成されます。
 
 ・一般に入手が困難なデータを入手するためのデータ収集能力
 ・一般に無視されるようなデータに着目するための企業分析・証券分析の知識および経験
 ・入手した膨大なデータを解析用のデータに加工するためのデータ処理技術
   -大規模なデータ処理のための計算環境の構築能力(ハード面)
   -大規模なデータ処理を実現するプログラミング能力(ソフト面)
 ・データに応じて正しく分析手法を選定し、正しく結果を判断するための統計的知識
 ・統計解析や機械学習の専用ツールを扱える能力
 ・最新の金融工学やトレード手法、トレードアイディアを把握するための調査能力
 ・天才的な閃き

(2)執行力
 実際の取引執行において、他の取引参加者よりも有利な約定を実現するための能力です。
 米国市場におけるHFTや取引コスト削減を目的としたアルゴリズムがこれに当たります。

 また分析によって得られたエッジの内、物理的に回収が難しいエッジを回収できる能力とも言えます。
 これは個人投資家向けの手法としてはザラ場の自動発注が挙げられます。
 発注時間短縮によるスリッページ(注文の意思決定価格と実際の約定価格との乖離)の極小化が目的です。
 ザラ場の発注は以下のような手法が考えられます。

 ・寄付直後:ギャップデータを織り込んだ銘柄選定
 ・ザラ場中:指値が約定しそうな銘柄の優先発注、状況に応じた指値の自動修正や追加発注
 ・引け直前:日中データを織り込んだ利確/ホールド判定や新規発注

(3)資金力
 これは単純にレバレッジまで考慮した買付余力です。
 資金の用途としては、多銘柄発注・多段ナンピンがこれに当たります。
 シグナルの出た銘柄を全て取引できた場合、成績が安定することが多くなります。
 また極端な話、仮に無限大の資金があれば相場で負けることは決してありえません。
 
上記の能力のうち複数を備えていればリターン獲得は比較的容易と考えられます。
もちろん一朝一夕での獲得はできず、継続的な努力が必要となります。



さて、ここからは個人的な意見なので読み飛ばしていただいて構いません。

システムトレーダーは一般的な有償(ごく稀に無償)の銘柄選定ツールを使用する場合が多いのですが、
このような銘柄選定ツールでは冒頭で説明した通り統計的有意性を確認することはできず、
分析のテンプレートが決まっているため他の使用者に対する差別化が難しいというデメリットがあります。
さらにこのようなツールで行える詳細分析とは、実のところ統計的有意性を削る行為に他なりません。
よって「銘柄選定ツールを保有しておりそれを扱える能力」は、上記の(1)に該当しているとは言えません。

このようなツールを使用する場合、
上記の(2)を組み合わせて使用しないと利益が出ない、もしくは安定しない場合が殆どだと思います。

では「偉そうなことを書いておいて手前の能力はどうなんだ」と思われるかもしれません。
当然ながら能力不足を実感しているため、このように自身の勉強用にブログを立ち上げている次第です。