読者です 読者をやめる 読者になる 読者になる

pd.Panelちゃん

 最近ようやく株の分析をどうするかなと考え始めたのですが、その時に、データフレームは便利だけど、よく考えたらエクセルと変わらない部分として、幾つかの情報を取り扱う場合、その都度違うデータフレームで数字を取り扱わないというのがあるかなぁと思いました。

 例えば、複数の銘柄の価格と出来高を扱うときは1つずつファイルを作って読み込んで、また1つずつ分析したり戻ったりという感じになるなということで、なんか今ひとつやなと思いました。pandas本でそれを打ち破って複数銘柄で4本足の時系列データを扱うというのがあったのを思い出し、それなら、すごい事出来るんでねぇかと思い、ちょっとやってみることにしました。
 
 基本的にそれで使うのはpandasのPanelという関数です。Intro to Data Structure の下の方に使い方は有ります。あと、日本語だとこのQiitaの記事がわかりよいです。というか、これしか出てこないような。

 

 でどのように使うかというと、まず、私がやってみましたのは225の価格、出来高、前日比のデータを読み込み、それをpd.Panelに突っ込むということです。インポートするのはpandas、matplotlib.pyplot、seabornです。
 
 pn = pd.Panel({'last':df,'volume':df_v,'pct':df_pct})
 
 てな感じです。簡単です。それでできるのは以下の様な感じです。

 

f:id:mazarimono:20160914221320p:plain

 

 するとこんな感じで個別銘柄の動きを取り出せたりします。

 

f:id:mazarimono:20160914221251p:plain

 で、これでどんなことするかというのはこれから考える部分もあるんのですが、例えば、高値近辺にある銘柄を探し、その銘柄の出来高出来高、前日比、のチャートを一気に作るってのができますね。ここでは25銘柄分のグラフを作り、それをファイルに残すという感じにしてみました。このチャートを価格のところをmatplotlib.financeを使って四本足にしたりしたいところですが、今のところできません。追々出来る様になるかもしれません。
 

f:id:mazarimono:20160914221622p:plain

 

f:id:mazarimono:20160914221640p:plain

 

 初めて使ってこれくらい便利なものが考えついたので、使っているうちにより良い利用法が思いつくように思います。いやー楽しみ楽しみ。