🔴
読む前に: 個人の私的利用に限定されたサービスです

J-Quants API は個人の私的利用に限って提供されており、法人による利用は禁止されています。加えて、取得したデータそのものを閲覧できる形で配布・共有することも、データを利用したアプリを提供することも、営利・非営利を問わず認められていません。ここでいう私的利用とは自身の投資分析やポートフォリオ管理を指し、分析結果を継続反復して第三者へ提供・配信する行為は含まれません。法人での利用や外部への配信が必要なら J-Quants Pro が案内されています。「株価データでサービスを作る」用途を考えている場合、技術的な検討に入る前にここで結論が出ます。

日本株のデータを使った分析をしたいとき、これまでは証券会社の非公式 API をスクレイピング的に叩くか、有料のデータベンダーと契約するかの二択に近かった。J-Quants は日本取引所グループ(JPX)が公式に提供する API で、東証上場銘柄のデータを正規のルートで取得できる点に意義がある。

取得できるデータ

日足・分足の株価、財務諸表、銘柄一覧と業種分類、信用取引残高、TOPIX などの指数データが揃う。バックテストやクォンツ研究で必要になる基本的なデータセットがひと通りカバーされているため、個人開発者が投資分析ツールを作る土台として現実的な選択肢になる。

料金とプランの構造

無料プランでも過去数年分の日足データが使えるので、まずはバックテスト用途で試せる。リアルタイム性のあるデータや分足は有料プランの領域で、月額数千円台から段階的に上がる構造になっている。注意したいのは、無料プランは取得できる過去の期間が浅く、長期のバックテストには履歴の長いプランが要る点だ。「どこまで遡ったデータが要るか」が、料金プランを分ける実質的な基準になる。

つまずきやすい点

データ取得には事前のリフレッシュトークン取得とそれを使ったID トークンの発行という認証フローがあり、初めて触ると入口で手間取りやすい。また配信データには更新タイミングがあり、当日の値が即座に反映されるわけではない。

向かない用途

注意したいのは、これは「分析用のデータ提供 API」であって、高頻度トレーディングの基盤ではないという点だ。データの提供には遅延があり、レート制限もかかる。ミリ秒を争う自動売買を組むなら別の仕組みが必要になる。リサーチとバックテストに用途を絞れば、公式データという信頼性が大きな利点になる。

公式データであることの重み

非公式の手段で集めた株価データは、サイト構造の変更で取得が止まったり、値の正確さを誰も保証してくれなかったりという不安定さがつきまとう。J-Quants は JPX が直接提供する以上、データの出所が明確で、株式分割や銘柄コードの変更といったコーポレートアクションの扱いも一貫している。バックテストの結果は元データの質に左右されるため、「分析の前提が信頼できる」ことそのものが、無料・有料を問わずこの API を選ぶ実質的な理由になる。長期的に分析基盤を育てるなら、データソースを公式に一本化しておく価値は大きい。

バックテストで最も事故る「見えていなかった情報」

過去データを使って売買戦略を検証するとき、当時は入手できなかった情報を使ってしまう先読みバイアスが最大の落とし穴になる。決算数値は発表日以降でなければ使えないし、上場廃止した銘柄を除外した銘柄リストで検証すると、生き残った銘柄だけを見る生存者バイアスがかかる。データが正確であることと、検証が正しいことは別問題だ。

🔴
「いつ時点で知り得たか」を必ずデータに持たせてください

各レコードについて、その情報が公開された日時を保持し、検証時にはその時点以降しか参照しない作りにする必要があります。この設計を後から入れるのは困難なので、データ取り込みの段階で公表日を必ず記録してください。良好なバックテスト結果の多くは、この処理が甘いことが原因です。

取得を運用に乗せるときの注意

データは日次で更新されるため、取り込み処理を定期実行する構成になる。取得失敗や部分的な欠損に気づかないまま分析を続けると、結論そのものが狂う。取り込み後に件数や日付の連続性を検査し、異常があれば止める仕組みを入れておきたい。金融データの分析では、パイプラインの健全性チェックが分析ロジックと同じくらい重要になる。

プランで変わるのは「どこまで遡れるか」と「どれだけ待たされるか」

無料を含めて 4 段階のプランがあるが、プランで切り替わるのはデータの種類より、 提供期間と遅延の方だ。取得できるデータの顔ぶれ自体は共通していて、 上位プランほど遡れる年数が長く、配信の遅延が短くなる。

つまり検討の順序は「必要なデータがあるか」ではなく、 **「何年分の履歴が要るか」と「どれくらい新しい値が要るか」**になる。 5 年分のバックテストで足りるのか、20 年分の相場局面を跨いで検証したいのかで、 必要なプランが決まる。

🔴
無料プランは 1 年で自動解約されます。検証環境の前提にしないでください

無料プランは 1 年間に限って利用できる設計で、1 年後に自動で解約されます。「無料のまま運用を続ける」ことは想定されていません。さらに無料プランは直近 12 週間ぶんのデータが取得できないため、当日はもちろん、直近 3 か月弱の値も返ってきません。無料プランで作った仕組みをそのまま本番に置くと、期限と鮮度の両方で行き詰まります。試用のための枠だと割り切って、継続するなら有料前提で設計してください。

分足と PTS — よく混同される 2 つ

分足・ティックのデータは提供されている。ただし現物株のみで先物は対象外、 かつ日次で更新される形式であってリアルタイム配信ではない。 「分足が取れる=ザラ場中に使える」ではないので、ここは取り違えやすい。

一方で PTS・地方取引所は配信の予定が無いと明示されている。 東証の板情報を前提にした分析はできるが、PTS を含めた市場全体の 値動きを追う用途には、この API だけでは届かない。 夜間取引を含む戦略を検証したいなら、最初に別のデータソースを探す必要がある。

財務データは「累計値」で返る

売上高や営業利益は、四半期単体の値ではなく期首からの累計値として返ってくる。 第 2 四半期の値は上半期の合計であって、その 3 か月ぶんではない。

これを単体の四半期業績として扱うと、前年同期比も成長率も静かに壊れる。 数値そのものは正しく、エラーにもならないため、分析結果を見ても異常に気づけない 種類の間違いになる。四半期単体が欲しければ、前四半期の累計値との差分を 自分で取る必要がある。決算をまたぐ処理を書く前に、ここは必ず確認したい。

認証は 2 段階で、トークンには寿命がある

リフレッシュトークンを取得し、それを使って ID トークンを発行する 2 段構えになる。 実際に API を呼ぶときに添えるのは後者で、こちらは寿命が短い。 定期実行のバッチを組むなら、ID トークンを都度発行し直す前提で書く。 初回の疎通確認だけを見て「トークンを環境変数に置けばよい」と組むと、 数日後に 401 で止まる。