株価を見ていると周期性が見えてくるような気がする。
それは配当が行われるタイミングであったり、何となく四半期あるいは2年サイクルであったり。。。
全ての関数はフーリエ変換により、周期性の異なる波形とその強さの和で示すことができる、と大学時代に学習した。
修士論文ではデータ解析の誤差(季節変動であったり、データの持つ様々な”ゴミ”)をフーリエ変換することにより、要素を分解し、より真であろう解を導くことが可能となる。
実際にフーリエ変換で明らかに他の要素によるものと思われる例えば季節変動などを取り除くと驚くほどすっきりした結果を得ることができた。
日常生活でフーリエ変換の活用の場などというものは全く思い描くことができなかったが、株価はどうだろう。
試しにパナソニックやJTの株価でやってみた。
データの取得はこの記事の一番最後を参照
フーリエ変換(FFT)
何とエクセルでできる!
周期性から実際の期間(日数)に置きなおした。
FFTの性質から1024日分のデータとなるが、両端の値が大きくなってしまう(つまりは最も周期が短いものと長いものとで説明しようとしてしまう)ため、任意で表示する範囲を限定してみた。
結果は・・・
良く分からないものとなってしまった。
最小単位あるいは最大単位に近いところで強いスペクトルが出てしまったが、これは特別な周期が株価の変動を示していない、ということなので思い描いていたような配当時期あるいは四半期など一定のサイクルは見つけることができなかった。
残念ではあるが、「特別な周期性はない」ということはできるのだろう。
前向きに捉えると大学での勉強が役立った、と解することもできる。
参考サイト
フーリエ変換の方法
https://imagingsolution.net/office/excel/excel_fourier_analysis_fft/
エクセルでフーリエ変換ができることを知りました。
ただし、FFTのようです。2のn乗個のデータのみが解析対象となります。
日付で並べると土日祝日はn/aとなってしまうので株価データのある日をカウントして2のn乗となるデータ数を見つけないといけませんね・・・
関数 count や isnumberなどを使用しました。
株価データ
https://kabuoji3.com/stock/download.php
こちらから過去の株価データをダウンロードできます。
参考
http://kabu.staba.jp/jissen/Jissen123.htm
同じことを考えている人がいるんですね・・
最初に日数変換って何?と思いましたが、要は対象期間が730日とすると周期1は1/730日となります。
なので1年が知りたいのであれば周期2となるし、2年(フルスケール)の周期のスペクトルを知りたいのであれば周期1で調べます。
正しいかは不安ですが。。。