ストックドッグスマートフォン用の表示で見るストックドッグKatoTakahiro。金融系の会社で働くSEが株やPython、その他諸々について書いています。一目均衡表をPythonでプロット2016-10-04一目均衡表をPythonでプロットPython目次はじめに一目均衡表とはコード解説はじめにdoz13189.hatenablog.com先日、一目均衡表をPythonでプロットしようとして盛大に失敗しました。グラフとしての形を保ててなかったです。あきらめるか悩んだのですが、普通に考えてそんなに難しくないので頑張ることにしました。何とか形を保った一目均衡表が完成しました。いうことで今回は一目均衡表をPythonでプロットした手順を解説します。一目均衡表とはすごく昔からプロのトレーダーから愛用されているテクニカル指標の一つです。細田悟一によって、1936年(昭和11年)に考案された。wikipediaこれって二・二六事件勃発した年ですね。教科書上の出来事になっていてもおかしくないくらいの時代に発明されているんですね。ちなみに、この年には他にも上野動物園からクロヒョウが脱出したり、柴犬が天然記念物に指定されてます。(どうでもええ)まだ、PCのない時代ですから、これを昔の人達は手書きしていたみたいです。歴史を振り返ったところで、一目均衡表について説明したいところなのですが。私が説明しても一目均衡表のいの字もわからないと思うのでググりましょう。ちなみに私はこのサイトが分かりやすかったと思います。www.sevendata.co.jp奥が深いテクニカル指標なので、このサイトだけでなく他のサイトも見て回ったほうが良いと思います。転換線=(過去9日間における最高値+同最安値)÷2基準線=(過去26日間における最高値+同最安値)÷2先行スパン1={(転換値+基準値)÷2}を(当日を含めた26日先すなわち)25日先にプロットしたもの先行スパン2={(過去52日間における最高値+同最安値)÷2}を(当日を含めた26日先すなわち)25日先にプロットしたもの遅行スパン=(本日の終値)を(当日を含めた26日前すなわち)25日前にプロットしたものこれが一目均衡表で使用される指標の計算方法です。スパン1先行スパン2遅行スパンでは、まず転換線について見てみます。pdPandasのSeriesを使います。2rollingで9日間のデータを取得します。取得した9日間の中から最高値を取得するために、.max()を使います。最小値の取得も同じような手順で、.min()を使います。この最高値と最小値の中値が欲しいので、これらを足して2で割ります。これで転換線が完成です。計算式はこれなんですが、転換線とほぼ同じです。基準線=(過去26日間における最高値+同最安値)÷29日間から26日間に増えただけです。2これで基準線もできました。次に先行スパン1です。先行スパン1={(転換値+基準値)÷2}を(当日を含めた26日先すなわち)25日先にプロットしたもの25日先のプロットは後でするとして、まず計算だけ行います。2先ほど作ったこの2つの指標を足して2で割ることでできます。次に先行スパン2です。先行スパン2={(過去52日間における最高値+同最安値)÷2}を(当日を含めた26日先すなわち)25日先にプロットしたもの転換線、基準線と計算式はほぼ同じです。52日に伸びただけですね。2これで先行スパン2も完成です。遅行スパンはそのまんま終値をプロットします。指標が出揃ったのでプロットしていきます。"change")基本的にはmatplotlibでプロットしてやればOKです。一目均衡表は雲と呼ばれるものがあり、これが特徴でもあります。先行スパン1と先行スパン2の間を灰色で塗ることで、雲っぽくなるので、これをmatplotlibで実現する必要があります。y2)fill.betweenを使えば上手くいきました。xに日付を入れ、y1に先行スパン1、y2に先行スパン2を入れれば、雲が出来上がります。linewidth="0.5")Dateに+26をすることで、26日先にプロットしてやります。やってもらうとわかると思うのですが、26じゃ上手くいきません。この26は土日も含めての26になってしまうのですが、実際は土日を含めずに26日先にプロットです。この数値の決め方にかなり頭をひねったのですが、結局いい方法は見つかりませんでした...SBIのアプリで見た一目均衡表と比べながらこの数値を調整すると、38でピッタリきました。何かいい方法を探します...あとは好みで色や線の太さを変えればいいと思います。雲は少し透明のほうが見やすいので、alphaは0.5くらいに設定すると良い雲になります。最後にローソク足と組み合わせると一目均衡表になります。以上で解説終わります。単純移動平均線やボリンジャーバンドと合わせて使っていきたいですね。(27)注目記事プロフィール金融系の会社で働くSEが株やPython、その他諸々について書いています。読者になるスターをつけました引用をストックしましたストック一覧を見る閉じる引用するにはまずログインしてくださいログイン閉じる引用をストックできませんでした。再度お試しください閉じる限定公開記事のため引用できません。