Geminiなどの生成AIを使えば、Pythonによるデータ分析やStreamlitアプリの作成を効率化できます。しかし、J-Quants APIのように仕様変更があるサービスでは、AIに単純に「コードを書いて」と依頼するだけではエラーが発生しやすく、完成まで何度も修正が必要になる場合があります。この記事では、Geminiで株式データ分析用コードを生成するときに失敗しにくい伝え方や、API変更に対応したコード作成のポイントを解説します。
Geminiのコード生成能力と得意な分野
GeminiはPython、JavaScript、SQLなど幅広いプログラミング言語のコード生成に対応しており、基本的な処理やデータ分析コードの作成では高い能力を発揮します。
特に、データ加工、グラフ作成、機械学習のサンプルコード、Streamlitによる簡単なWebアプリ作成などは比較的得意な分野です。
一方で、外部APIを利用するプログラムでは注意が必要です。AIは現在のAPI仕様を完全に把握しているとは限らず、古いドキュメントや一般的な書き方を参考にコードを生成することがあります。
J-Quants APIのようなサービスでエラーが出やすい理由
J-Quantsのような金融データAPIでは、APIのバージョンアップによってURL、認証方法、パラメータ名、レスポンス形式などが変更されることがあります。
例えばAPI V1では動作していたコードでも、V2では取得するJSONデータの構造が変わっている場合があります。その場合、AIが以前の形式を前提にコードを書くとエラーが発生します。
また、株価データ分析では取得するデータ量や日付形式、銘柄コードの指定方法なども影響するため、単純なコード生成だけでは完成度が低くなることがあります。
Geminiに正確なコードを書いてもらうための依頼方法
生成AIにコード作成を依頼するときは、目的だけではなく、使用環境や制約条件を細かく伝えることが重要です。
例えば、以下のような情報を最初に提示すると精度が向上します。
- 使用するPythonのバージョン
- 使用するライブラリの種類とバージョン
- Streamlitで作りたい画面内容
- J-Quants APIのバージョン
- 現在発生しているエラー内容
- 現在動いているコード
「J-Quants API V2対応の株価取得コードを書いてください」という依頼よりも、「J-Quants API V2を使用し、Python3.12、Streamlit最新版、pandasを利用して、日経銘柄の株価を取得しローソク足チャートを表示したい。現在このエラーが発生しています」と伝える方が、AIは状況を理解しやすくなります。
AIに一度で完成コードを求めないことが重要
生成AIによるプログラム作成では、最初から完成版を作らせるより、段階的に作成させる方が成功率が高くなります。
例えば、以下のような流れで依頼すると安定します。
- まずAPI認証だけ成功するコードを作成する
- 次に株価データ取得部分を追加する
- 取得データをpandasで加工する
- 最後にStreamlitの画面表示を追加する
API接続、データ処理、画面表示を一度に作成すると、どこで問題が起きているか判断しづらくなります。小さな単位で動作確認しながら進めることで、修正も簡単になります。
エラー修正を依頼するときの効果的な伝え方
AIにエラー修正を依頼するときは、「動きません」とだけ伝えるのではなく、エラーメッセージ全文を貼り付けることが重要です。
さらに、現在使用しているコードも一緒に提示すると、AIは原因を特定しやすくなります。
例えば、「このコードを実行すると以下のエラーが出ます。原因を説明したあと、修正版コードを提示してください」と依頼すると、単なる修正ではなく原因分析も含めた回答を得やすくなります。
J-Quantsや金融分析ではAIに任せすぎないポイント
金融データを扱うプログラムでは、コードが動くだけでは十分ではありません。取得しているデータが正しいか、計算方法が適切かを確認する必要があります。
例えば、株価の終値、調整後終値、配当情報などは意味が異なります。AIがコードを生成できても、分析目的に合ったデータを使用しているかは利用者自身が確認する必要があります。
AIはプログラミングの補助ツールとして活用し、最終的な分析ロジックや投資判断は人間が確認することが大切です。
まとめ:Geminiのコード生成は指示の具体性で精度が大きく変わる
GeminiはPythonやStreamlitによるアプリ開発、データ分析コード作成に非常に便利なツールですが、API仕様変更があるサービスでは情報不足によるエラーが発生しやすくなります。
J-Quants APIのような外部サービスを利用する場合は、APIバージョン、環境情報、エラー内容、目的を詳しく伝えることで生成されるコードの品質を高められます。
また、最初から完成コードを求めるのではなく、認証、データ取得、加工、表示というように段階的に作成することで、AIをより効果的な開発パートナーとして活用できます。


コメント