こんにちは。TATです。
今日のテーマは「日本株でMarket Smith(マーケットスミス)みたいなチャートをPythonで自作してみた」です。
Market Smith(マーケットスミス)はアメリカ株の取引ツールです。
成長株投資で有名なウィリアム・J・オニールが創設したInvestor's Business Daily(通称「IBD」)が運営しています。
豊富なチャート分析機能を有しており、多くのアメリカ株投資家に愛用されています。
利用するには有料会員になる必要があり、月額149.95$(あるいは年間1,449$)と少々高めの金額設定です。
今回は、このMarket Smith(マーケットスミス)で提供されているチャートっぽいものを日本株に適用してPythonで作ってみたのでご紹介します。
必要なデータを収集して、ないデータは自分で作りました。集大成です。
また、最近いろいろと発信しているうちに「データを売って欲しい」とのお問合せが増えてきたので、一部データはnoteで販売しています。
もしご興味あればご覧ください。
ここではnoteでも提供しているMarket Smith(マーケットスミス)っぽい日本株版チャートについて少しご紹介できればとおもいます。
目次
まずはMarket Smith(マーケットスミス)のチャートを確認してみる
本題に入る前にまずはMarket Smith(マーケットスミス)のチャートを確認してみましょう。
どんなものかわからないことには自作しようがないですからねw
引用元:https://marketsmith.investors.com
Market Smith(マーケットスミス)のサイトで紹介されているチャートを拝借してきました。
いろんな情報が詰まっています。
左のテーブルには年間のEPSの推移とか、PERとかROEなど、様々な情報がまとまっています。
チャートには、移動平均線、四半期ごとのEPS前年同期比の成長率、さらにレラティブストレングスが併記されています。
オニールの投資手法であるカップウィズハンドルもチャート上でわかるようになっています。
基本的にはオニールのCAN-SLIM投資手法に必要な情報がまとまっている感じです。
【オニールの成長株発掘法】CAN-SLIM投資法のまとめ
続きを見る
日本株でMarket Smith(マーケットスミス)みたいなチャートをPythonで自作してみた
ここから本題です。
上記でご紹介したようなMarket Smith(マーケットスミス)感あるチャートを日本株で作っていきます。
まずは完成品をどうぞ
いろいろと解説していく前に、まずは完成品をご紹介します。
Pythonのmplfinanceというライブラリを使っています。
通常のローソク足と出来高のチャートに、移動平均線、売上高とEPSの前年同期比、レラティブストレングス(黒の点線)を併記しました。
また、いくつかオリジナル要素も組み込んだのでご紹介します。
オリジナル1:EPSのみではなく、売上高の前年同期比も追加した
Market Smith(マーケットスミス)本家ではEPSのみですが、僕の場合は売上高ものせました。
EPSだけ上がって売上高が上がっていない銘柄を一目で確認できるようにするためです。
オリジナル2:ディストリビューションも追加した
チャートにちょくちょく登場する▼はディストリビューションを示しています。
ディストリビューションは株価の売り抜けとも言われ、株価反転のきっかけにもなります。
天井の見極めにも有効です。
【株価下落・暴落のサイン?】「ディストリビューション」について解説します【事例あり】
続きを見る
オリジナル3:監視銘柄の登録日を追加した
最後に、監視銘柄の登録日を追加しました。
僕が運営する「投資でニート生活」では2種類の監視銘柄を管理しています。
チャートでは紫色の縦点線でOとMと記載しています。
Oはオニールの頭文字であり、「直近の決算短信から抽出した監視銘柄一覧」の登録日です。
ここには、直近の四半期決算の売上高とEPSが前年同期比で20%以上成長した銘柄が登録されています。
オニールのCAN-SLIM投資手法をCを参考にしています。
【CAN-SLIM投資法】その①:C(当期四半期のEPSと売り上げ)
続きを見る
Mはミネルヴィニの頭文字で、「週足チャートから抽出した監視銘柄一覧」の登録日です。
ここには、オニールと並んで成長株投資で有名なミネルヴィニが提唱しているトレンドテンプレートの条件(レラティブストレングスは除く)を満たした銘柄が登録されています。
【毎週無料公開】日本株にミネルヴィニのトレンドテンプレートを適用してスクリーニングする!
続きを見る
必要なデータはプログラム(Python)で自動収集しています
チャート作成に必要なデータについてはプログラムで自動収集しています。
収集したデータは僕が運営する「投資でニート生活」で管理しています。
株価データの収集
Pythonなら、株価データを簡単に取得することができます。
専用のライブラリを使えば一瞬です。
Pythonで株価データを扱う方法まとめ【データの取得・分析・可視化等、なんでもできます】
続きを見る
業績はXBRLデータから収集
EPSや売上高などの業績については、TDNETとEDINETからXBRLデータを収集しています。
XBRLデータだと、xml形式になっているので、プログラムによるデータ解析がしやすくなります。
開発は結構地獄でしたが、頑張った甲斐がありました。
PythonでTDNETとEDINETからXBRLデータを集めたら地獄だった話。
続きを見る
レラティブストレングスは独自の計算方法を適用
オニールの投資手法で重視されるレラティブストレングスについては、計算方法が公開されていません。
また、Market Smith(マーケットスミス)では日本株のレラティブストレングスは提供されていません。
結果、独自の計算方法をプログラムで実装しました。
ググってみると信憑性の高そうな計算方法が紹介されていたので、これをPythonで実装して日本株で計算することにしました。
毎週土曜日に計算をしています。
Market Smith(マーケットスミス)ではレラティブストレングスは毎日計算しているようですが、僕の場合は毎週です。
日足のチャートでは週ごとのレラティブストレングスを引き伸ばしています。
【毎週無料公開】日本株でレラティブストレングスっぽいものを計算する【オニールの成長株発掘法】
続きを見る
ディストリビューションはプログラムで自動検出
最後に、ディストリビューションです。
こちらはプログラムで自動検出しています。
判定方法さえわかれば、あとはプログラムに落とし込めばOKですね。
【株価下落・暴落のサイン?】「ディストリビューション」について解説します【事例あり】
続きを見る
たくさんのデータが必要だが、プログラムに任せれば余裕です
Market Smith(マーケットスミス)っぽいチャートを作りには、たくさんのデータが必要になります。
これらを全てマニュアルで集めたら大変ですが、プログラムで自動収集することができれば余裕です。
サーバー上で勝手にプログラムが走っているので、毎日データを自動収集してくれています。
APIを構築しているので、API経由で最新のデータはいつでも取得することができるようになっています。
チャートを作るのもプログラムで自動化されているので、証券コードを入れれば瞬時(実際には3秒くらいかかる)にチャートが自動生成されます。
とりあえず、Python最強です。
リクエストにお応えして、データの一部はnoteで提供しています
最後にちょこっとお知らせです。
本ブログや「投資でニート生活」で情報発信していくにつれて、「データを売って欲しい」というお問合せが増えてきました。
本当にありがとうございます。
ぶっちゃけ最初のうちはスルーしてしまっていたのですが(すみませんw)、結構リクエスト数が増えてきたのでnoteで一部データを販売することにしました。
TATのnoteを見る
基本的にデータの提供だけです。銘柄推奨とかは一切しません。
noteの運営方針として真っ先にお伝えしておかなければいけないのが、「あくまでデータの提供のみである」ことです。
銘柄推奨とかは一切しません。
基本的には、僕が実際に使っているデータをそのままnoteに貼り付けているだけです。
僕自身もこのデータを使って投資銘柄を選定しています。
ただ、最終的には、会社HPを見て事業を確認したり、社長のインタビュー記事を見たりして最終判断を下しています。
ここを自動化することはどうしてもできません。
データを使ってある程度のスクリーニングやシグナル検知はできますが、最終的な判断は人になるかとおもいます。
なので、僕のnoteではあくまで情報の提供だけであり、銘柄の推奨とかは一切しません。
最終的な判断はご自身で行なっていただくようにお願いいたします。
TATのnoteを見る
本記事で紹介したようなチャートも提供しています
noteでは、本記事で紹介したようなチャートもご覧いただけます。
noteで提供しているデータは、チャート以外にも過去の年間業績推移とかROEとかTDNETの最新情報とか大量保有報告書の情報とかもまとめています。
イメージこんな感じです。PDF形式です。
全銘柄対象ではなくて、ファンダメンタルやテクニカル指標などの設定した条件で銘柄を絞っていきます。
条件をクリアした銘柄のみをPDF形式にまとめて提供しています。
TATのnoteを見る
その他にもいろいろなデータを提供しています
上記のPDF形式のデータ以外にもいろいろなデータを提供しています。
簡単にスクリーニングができるようにExcel形式にまとめたデータであったり、完全にデータを貼っただけの読むだけの記事だったり様々です。
一部無料で提供しているデータもあります。
ご興味ありましたら是非とも一度ご覧になってくださいませ。
それぞれ単体でも販売していますが、一応月額課金にしていただくとお得になるような料金設計にしています。
TATのnoteを見る
まとめ
本記事では「日本株でMarket Smith(マーケットスミス)みたいなチャートをPythonで自作してみた」というテーマで、僕のこれまでの集大成をご紹介しました。
ここまでオリジナリティあるチャートを自作している人はなかなかいないとおもいます(自画自賛w)。
作り上げるのは大変でしたが、このチャートのおかげで銘柄選定が非常にスムーズになりました。
PDF形式で情報をまとめているので、僕はそれを見ながら投資対象を探していくだけです。
兼業で株式投資をするには時間の確保が問題になります。
あと僕の場合は子供が小さいので仕事以外の時間でも株に割ける時間は限られます。
時間を有効活用するには、Pythonなどのプログラムで一部の作業を自動化してしまうと効果的です。
膨大な情報量でもプログラムに任せてしまえば楽ちんです。
本業の傍らでやってるので、専業投資家に比べると、投資にかけられる時間は多くありません。
しかしながら、本業(や育児)で時間が限られている中でも、僕の場合はプログラムによる自動化をうまく駆使しながら専業投資家にも負けないようなパフォーマンスを出してやろうと、鼻息荒くしてこれからも戦っていきますw
ここまで読んでくださり、ありがとうございました。