【TTO通信】Pythonで銘柄抽出(スクリーニング)はどこまで実現可能か? [Python#017]
<< 前回のnoteはこちら
しゅん@Trade Techです。
株式投資・・特に
日本株を扱う上で非常に難しいのが、
プログラミングを習得できたからと言って、
何でも可能になるわけではない
ということです。
日本は海外に比べても
まだまだ金融関連の仕組みが
オープンになっていません。
何か売買戦略のアイデアがあった時に、
プログラミングのコードとしては書けるが
肝心のデータを取得できる方法が無い・・
というのは、よくある事。
特にリアルタイムの情報を
個人レベルで入手するのはかなり難しいです。
メルマガやTwitterで多かったのが、
以下のような質問です。
【銘柄の抽出(スクリーニング)を自動化したい】
(例)
TradingViewのインジケーターと同じ条件で銘柄抽出しトレードしたい
前日ランキング上位の銘柄を抽出しトレードしたい
・・様々な理由はありましたが、
これはスクリーニングが大引け後で良いのか、
それともリアルタイム性が必要なのか、
によって難易度が大きく変わってきます。
大引け後で良いのであれば
かなり色んな事が可能です。
TradingViewインジケーターのサイン発生条件を
Pythonコードに移植した上で・・
J-Quants APIを利用し
日々の株価データを自動ダウンロードさせて
サイン発生した銘柄を抽出することが可能です。
また前日までの
全銘柄株価データが手元にあることになるので、
自前のランキングデータを
日々作成することもできますよね。
その一方で、
場中にリアルタイムで抽出したい場合は
かなり難易度がアップします・・。
全銘柄の中から
自分で考えたサイン発生に基づき
リアルタイムスクリーニングする
というのは、現状難しいです。
ランキング情報については、
「kabu STATION API」の
詳細ランキング取得機能を使うと
いくつかのランキングデータは
リアルタイムで取得できるようです。
https://kabucom.github.io/kabusapi/reference/index.html#operation/rankingGet
これと銘柄登録を組み合わせれば、
最大50銘柄になりますが
自動スクリーニング&銘柄監視が可能かと思います。
ただ、リアルタイム監視の場合は
パソコンやネット環境のスペックなども影響するので
スリッページが発生するかもしれません。
リアルタイム監視の場合は、
ロジック以外に色々と考える必要がありそうです。
というわけで、
スクリーニング1つとっても
・大引け後や寄り付き前に抽出できればよいのか
・リアルタイムで抽出したいのか
によって大きく難易度は変わってきます。
現状では、
毎回トレード対象となる銘柄が変わるような
トレード戦略をシステム化したい場合、
最も現実的で実現しやすい方法は
以下のような形かなと思っています。
・J-Quans APIなどを使って、前日までに得られる情報を元に当日監視する銘柄を50以内に絞り込む(TradingViewの株式スクリーナー、ランキング情報、ニュースの材料、その他手動で用意、など)
・kabu STATION APIを使って、前日に利確/損切りなどの発注を事前にしておくか、当日にのPUSH配信でリアルタイム監視(もしくは裁量でトレード)
僕も基本的には
このようなスクリーニングを軸に
トレードシステムの構築を色々と進めております。
できないこと、難しいことを知ったうえで、
できることを組み合わせてシステム構築するのも
プログラミングを活用する上で大切になってきますね。
何か他にもご質問などあれば
本メルマガ下にあるお問合せフォームからお願いします。
(個別での回答はしておりませんのでご了承ください)
さて、次回は
じゃあPythonで最初に覚えるべきことって、何?
という点についてお話ししたいと思います。
しゅん@Trade Tech
【ブログ】 https://tradetech.online/
【Twitter】 https://twitter.com/eltraders
【Youtubeチャンネル】 https//www.youtube.com/channel/UCRq7nwlHqNepd-LDkurrEdQom
<更新通知をメールで受け取りたい方はこちら>
無料メルマガ「トレードテック・オンライン通信」登録フォーム
https://mailchi.mp/trade-tech/lubw5jj4fc
<更新通知をnoteで受け取りたい方はこちら>
https://note.com/tradetech/m/m5b47d6bf400c
※公開している銘柄および検証結果については、銘柄の推奨や売買指示などを行なったり、効果を保証するものではありません。実際の投資判断は各自の自己責任でよろしくお願いいたします。