MF-DFAで金融時系列のフラクタル解析をやってみた。Bestrubyが好き。技術の話とスタートアップに興味があります。この広告は、90日以上更新していないブログに表示しています。2016-12-11MF-DFAで金融時系列のフラクタル解析をやってみた。Analysis(MF-DFA)を使ってちょっとした実験をしてみました。軽い結果の共有と実装結果を晒しています。した?最近休日はせこせこと金融時系列解析をしています。して急にそんなことを始めたのかといいますと、2点理由があります。一つは、いま会社で開発しているサービス改善のためです。してサービスを評価する視点がどうにも希薄だなと感じていたこと。1つはもともと経済学部にいたこともあり金融・経済の動きを分析するというのはなんだかとても面白そうに感じだからです(雑。いうことで密かにいくつか本を読んだりしつつ勉強していたのですが、さすがにそろそろ実際に手を、お金を動かして見るべきかなと思いたち、アルゴリズムの1つでも考案してみるかと言うことに至りました。Analysisもその一貫になります。今回はこの分析手法を使ってHurst指数を計算してみました。Hurst指数とは何かというと、時系列データの長期記憶性を示すものです。1のときには長期記憶性を持ちが、過去の増分と未来の増分との間に正の相関関係があるので現在のトレンドが持続しやすい傾向にあります。H=0.5のときには単純なブラウン運動になります。1/2の場合には短期記憶性を持ち、先程とは逆に過去の増分と未来の増分との間に負の相関関係があるので、現在のトレンドが反転し易い傾向にあることがわかります。ナイル川流域の貯水量に関するモデルで活用されたのが始まりのようですが、現在では金融時系列での応用もいつくか研究事例があるようです。時系列生成シミュレーションの結果は僕の実装ではなくこちらdokato/dfaのリポジトリから拝借したのですがこんな感じになります。下がH=0.9のものです。H=0.1のものは判別が難しいですが、H=0.9のグラフに関しては明確に長期的なトレンドが生成されていることがわかりますね。Analysisの実験をpythonで行うにあたり、信頼するに足る良さそうな実装が見当たらなかったこともあり、実装してみることにしました。(先出していた実装はMulti-Fractalではないのですが、問題ない実装だったなと記憶しています。)実装したMF-DFAの実装はこちらgithub.com/yss44/mf-dfaにおいてあります。Analysisの実装は公開していませんが需要があれば。何がしかの参考になれば幸いです。(パフォーマンスチューニングの余地があるので高速化したい。Windowした結果がこちらです。見事に短期記憶性を示す方向に偏っていますね。この結果はランダムウォークに対して1000回ブートストラップした結果の95%信頼区間を12.4%の確率で外れるので有意に判別しているのではないかと思っています。(ブートストラップ法ってこういう使い方で合ってますよね?まだ統計を深く理解できてはいないのですが。遊んでみたいと思ってます。終わりにもともとはローソク足を使ってプライスのアップ/ダウンのバイナリ予測の学習を単純なDNNにさせていたのですが、全く精度が出なかったので面白そうな解決策を探していました。単純にRSI/BBandとかのインジケータとかから始めようかなと思っていたのですが、興味の赴くままに調べていたらなぜかこんな事になっていました。わかりませんが数式を解読して実装するのは楽しかったです。成果に結びつけばいいのですが...金融時系列データをいじって一緒に遊ぶお友達がほしい今日このごろです。14:55MF-DFAで金融時系列のフラクタル解析をやってみた。広告を非表示にする関連記事2016-06-09転職しました。plugin書きました。CoreOS以外でetcd...2015-04-11json-schemaからSwiftのAPIクライアントを自動生成するツールを作ったはい、最近なにかと流行っている?json-schema界隈、いかがお過...2014-02-04Chefでscreenshot-as-a-serviceをインストール出来るようしてみた。Chefでスクリーンショットサーバーを立てる話です。為替の予測モデルが利益を出すにはどれくらいの精度が必要なの?MF-DFAで金融時系列のフラクタル解析をやってみた。swarmクラスタをrubyのDSLで管理するツールAlgoを作りました転職しました。読者になる24はてなブログをはじめよう!yss44さんは、はてなブログを使っています。ブログを報告するスターをつけました引用をストックしましたストック一覧を見る閉じる引用するにはまずログインしてくださいログイン閉じる引用をストックできませんでした。再度お試しください閉じる限定公開記事のため引用できません。