【環境構築検証③】Python自動売買のAPI連携に「kabuステーション」を選定した理由

前回までで、自動売買プログラムを安定して稼働させるためのハードウェア環境(ミニPC+ダミープラグ)の構築記録をまとめました。 今回からは、検証用ミニPCの中身である「ソフトウェア環境」の構築に入ります。まずは、プログラムから注文を出すための窓口となる「証券会社のAPI」の選定理由について記録します。

きっかけは「1冊の技術入門書」

Pythonを使って株の自動売買を行うには、証券会社が公式に提供している「API(アプリケーション・プログラミング・インターフェース)」を利用する必要があります。

自動売買システムの検証を始めるにあたり、プログラムと証券口座をどう繋げばよいか模索していた際、参考書として手に取ったのが以下の技術書でした。

この書籍の中で複数のAPI対応証券会社が紹介されており、Pythonを用いた個人開発の観点から「auカブコム証券(現在の三菱UFJeスマート証券)のAPI」の仕様や親和性について詳しく解説されていました。これが、今回の検証環境として同社のAPIを採用する最初のきっかけとなりました。

最大の選定理由は「開発情報の多さ」

技術書を参考にしつつ、最終的にこのAPI環境でシステムを構築しようと決断した最大の理由は、「インターネット上にPythonとkabuステーションAPIを連携させる技術記事や有志のコード(知見)が豊富に存在していたから」です。

プログラミングによる個人開発において、予期せぬエラーやバグは必ず発生します。その際、利用者の少ないマイナーなAPI環境を選んでしまうと、検索しても解決策が見つからず開発が頓挫するリスクがあります。 その点、kabuステーションAPIは個人の自動売買開発者によく利用されており、トラブルシューティングが行いやすい(デバッグのハードルが下がる)という技術的なメリットがありました。

現在の検証用API環境について

このような開発のしやすさ(技術的な情報のアクセス性)を考慮し、本ブログの検証システムでは「三菱UFJeスマート証券」の口座を開設し、kabuステーションAPIを利用して日々の稼働テストを行っています。

※なお、APIへの資金移動に用いる連携銀行口座については、証券会社が指定する範囲内で任意の金融機関を利用しています。


次回は、このkabuステーションをミニPCにインストールした後の「APIの利用設定」と、専用機におけるPCの負荷を極限まで下げる「グレー画面化(描画の軽量化)」の技術的な設定手順について解説します。

⚠ 免責事項 本記事は管理人がシステムの検証に用いているAPI環境の選定理由(技術的背景)を記録したものであり、特定の証券会社の利用や口座開設を推奨するものではありません。各証券会社のAPI仕様や手数料は変更される可能性があるため、ご利用の際は必ず公式サイトの最新情報をご確認いただき、自己責任にてご判断ください。