ヴォラティリティの指数平滑化

  • SBI 証券(HyperSBI)や楽天証券(MarketSpeed)で表示される標準偏差は、標本標準偏差(1/(N-1))ではなく、ただの標準偏差(1/N)。それも、終値の素の値をそのまま標準偏差化しただけ。一般に Volatility の算出に使われる、対数差分の値に基いた標準偏差ではない。(標準偏差の算出期間を 2 日間にして確認した)。実は、ボリンジャーバンドも、世間一般的にはこの(信頼性の劣る)方式の標準偏差を使って描いているようだ。
  • 素の値の標準偏差と、対数差分の標準偏差でグラフ化して比較してみたが、生の値では、「上昇に敏感、下降に鈍感」になるので、生の値の標準偏差のグラフでは、対数差分のグラフには見られない、ダマシの上昇が発生していた。全体的にズボラに見れば〝誤差の範囲内〟と嘯いて片付けることもできるが、「ダマシ」という観点から見れば、これは致命的だろう。
  • また個人的に、ヴォラティリティについては低下に注視したいので、「下降に鈍感」なのはやはり困る。
  • 通常の標準偏差の算出方法では、時間の観念(加重平均の発想)がなく、対象期間中の値を無差別に用いる単純平均によるものなので、短期的なヴォラティリティではグラフの形状が乱れるのが悩みどころ。何が困るかというと、新しい値動きに反応してヴォラティリティが変動してくれるのならいいのだが、単に、過去の大きな値動きが、対象期間からスワップアウトして外れたというだけで、値がガクッと下がる場合がある(ボリンジャーバンドで「スクィーズ」と呼ばれて持て囃されているものの正体がそれだと知って愕然とした)。こういう古いデータのスワップアウトによる影響を回避するために「こそ」指数平滑平均などの加重平均の発想がある(新しいデータに敏感にするため、というのは知ったか論だろう。そんなに新しいデータに反応させたければ、その分対象期間を短かくすればいいだけの話)。
  • とはいえ、一般的に、移動平均というのは、平均値を算出するためのものとして論じられており、それを「標準偏差の算出」に適用してもいいのだろうか? という疑問がある。だが、「リスク管理最前線 第60回 〜ボラティリティの推定(その1)〜」によると、分散の算出について、指数平滑化による漸化式を適用しているので、やっても構わないように思われる。ただ、このブログの数式は、分散の算出式がそもそも間違っている(「日次リターンの」2 乗を単純平均したり加重平均したりしているが、「日次リターンの(平均との)偏差の」2 乗を平均するのが、そもそもの分散・標準偏差の基本的発想のはずである)のがちょっと不安が残るところだが……。
  • さらに、「偏差の 2 乗」の平均値を算出するにあたって、指数平滑化した加重平均にしても構わないとして、日々、漸化式で算出するとする。では、そもそもの、偏差を算出するための平均値はどうするのか? これも指数平滑化移動平均を使うのか? これは単純平均のままの方がいいのか? 結論から言うと、「これも指数平滑化移動平均を使う」となる。「偏差の 2 乗」の平均値に加重平均を使うということは、新しいデータほど重みが大きいので、そのままでは単純平均に対する新しいデータの偏差が余計に大きく評価されてしまう。だから、単純平均ではなく、加重平均に対する偏差で評価するのがフェアになる。実際にグラフを描いて比較してみたが、(1) 何も加重平均を使わない元の標準偏差、(2) 単純平均に対して「偏差の 2 乗」を加重平均した場合と、(3) 指数平滑化平均に対して「偏差の 2 乗」を加重平均した場合では、(2) の分散・標準偏差が、古いデータのスワップアウトによる影響が緩和された一方で、新しいデータに対するグラフの上昇強度が (1) よりも過激化しているのがわかる。(3) によって本来の (1) に対して古いデータのスワップアウトによる影響が緩和されつつ、新しいデータに対する反応は (1) と同程度に納めることができた。
  • また、上掲のブログでは、標本{分散/標準偏差}(1/N ではなく、1/(N-1) を使うこと)についても特に触れられていない。分散・標準偏差に指数平滑化を適用した上で、さらに、標本{分散/標準偏差}の考え方をどう適用するのが正解なのだろうか?
  • 僕の〝右脳的〟(つまり〝左脳的〟論理的な確認作業をサボってスキップしている)数学理解では、× N/(N-1) するのは、サンプルから算出された平均値が、母集団から算出される本来の平均値に対してブレているのに、それを無視している分だけ過小評価されたヴォラティリティを還元するためだから、平均値を使って算出されている値に対して × N/(N-1) をする必要がある。なので、漸化式のうち、当日分の偏差に α を乗じるわけだが、その偏差は当日の対数差分値と指数平滑移動平均値との間で差を取ったものを 2 乗して計算しているわけだから、この項には × N/(N-1) をする。一方、前日の分散((1 - α) を乗じる項)に対しては、そのまま使う。
  • これでやっと、ボリンジャーバンドを描画するための偏差値として、「スクィーズ」を見つけようとする場合にダマシの無い、申し分のない安全なものが算出できるのではないか。
  • あとは、Yang-Zhang ヴォラティリティ推定法を使うとか、そういう次元の工夫を入れるくらいしか残っていないと思う。
  • 実際に、ヴォラティリティ算出法の比較をしてみたが、(終値間の比較による)通常の算出法と比較して、Parkinson・Garman-Klass・Rogers-Satchell でも大きくは違わなかった。ただし、対等な比較にするため、通常の算出法も含めて、全て、オーバーナイト部分は分けて扱って算出している(期待値なので、分散値を最後に加算すればいいだけ。もちろん、この工夫だけで、通常の算出法に関しても、劇的に精度が上がる。オーバーナイト部分と、日中部分に分けて値動きを考えて偏差を取るだけである)。もちろん大まかな形は一致するとはいっても、通常の算出法よりも、Parkinson・Garman-Klass・Rogers-Satchell は形状がより精巧な感じになっているのがわかる。また、Parkinson・Garman-Klass・Rogers-Satchell の 3 者間においても、特に、Rogers-Satchell は発想が前 2 者とはかなり異質なのでどのように異なるのか興味があったが、やはり大きくは変わらず、微妙に精度が上っただけというのも驚きで、流石は本職の学者たちが門外漢からすると奇っ怪にすら見える難解な数式を駆使して導いているだけはあると思った次第(個人的には、この Rogers-Satchell がお気に入り。というのも、式の特性からしてドリフトの影響から完全に独立しているのが良い)。また、Yang-Zhang も検証してみたが、実質、オーバーナイト部分を分けて扱う工夫を除けば、日中部分に対して、通常の算出方法と Rogers-Satchell のハイブリッドで使うというアイデアを提示しているところに彼らの研究の独自性があり、結局、主役は Rogers-Satchell の式となっている(実質、Rogers-Satchell の拡張利用法という感じ)。ハイブリッドで使う場合の最適な係数を導き出す部分が彼らの独自研究である。グラフを描いてみても、基本は Rogers-Satchell で、所々、通常の算出法に寄っている感じになる。そこまで複雑なことをしなくても、実用的には、オーバーナイト部分を分けて扱って日中部分の Rogers-Satchell の分散値と合算するだけの工夫で十分だと思う。
  • 最後に、上記の算出法について、それぞれ EMA 化してみたが、Parkinson・Garman-Klass・Rogers-Satchell の 3 者の差異が目立たなくなった。一方、EMA 化によって通常の算出法との違いの部分(通常の算出法では雑であろうと思われる部分)がよりはっきりしている。通常の算出法の EMA では、所々にダマシ的な突起があるのがわかる。
  • Volatility Estimator について色々検証してみようと思ったそもそもの動機は、「ダマシ」の回避である。以上の検証により、(1) 指数平滑(EMA)化と (2) Parkinson・Garman-Klass・Rogers-Satchell のいずれかの Estimator を使うこと、この 2 点は必須だろう(もちろん、素の値の標準偏差などは論外)。ボリンジャーバンドを描くにしても、この必須条件を満たした標準偏差を使って上下バンドを描く必要がある。

コメント

このブログの人気の投稿

OpenWrt での Wi-Fi 設定

和歌山(?)の女性宮司の霊能力者を特定した

OpenWrt で外部 USB ストレージを使う