Claudeで株式・オプションを分析する方法
Claudeで株式やオプションを分析する実践ガイドです。キー不要で無料の市場データAPIを使い、3通りの接続方法と、根拠ある回答を得るコピペ用プロンプトを紹介します。
Claude は金融データを読み取り、その意味を説明することに非常に優れています。一方、今日の数値を把握することは苦手です。言語モデルの学習データは、質問する数か月前で終わっているためです。解決策は単純です。API から最新の市場データを Claude に渡し、分析、比較、平易な英語での説明という、Claude が本来得意とする処理を任せます。
このガイドでは、無料の市場データ API を使う方法、Claude を接続する3つの方法、コピーして使える実用的なプロンプトを説明します。あらかじめ明記すると、この API は当チームが開発した Strasmore のものです。アカウントは不要なので、このガイドの内容を5分以内に試せます。
Claude にデータソースが必要な理由
ツールを接続せずに Claude に「現在の Microsoft の配当利回りはどのくらいですか」と尋ねると、2 つの失敗パターンのいずれかになります。回答を拒否するか、数か月前の学習データに基づいて回答します。どちらも、モデルが現在の株価にアクセスできないことが原因です。モデル自身で情報を検索することはできません。
データソースを接続すると、状況は大きく変わります。Claude は JSON を流暢に読み取り、数十行のデータを文脈から見失わずに保持できます。さらに、データが実際に示している内容を比較、順位付け、要約できます。ここで回答の品質を左右するのは、渡すデータの品質です。
キー不要の無料市場データ API
Strasmore のデモ API は、米国株式とオプションのデータについて、固定クエリのカタログをプレーンな JSON で提供します。サインアップは不要で、API key もレート制限への対応もありません。エンドポイントの完全なリファレンスはAPI ドキュメントの記事にあります。概要は次のとおりです。
# What queries exist? (start here)
curl "https://ai.strasmore.com/api/demo/catalog"
# The highest large-cap dividend yields right now
curl "https://ai.strasmore.com/api/demo?q=dividend_yield_leaders"
# Implied-volatility leaders in the options market
curl "https://ai.strasmore.com/api/demo?q=iv_leaders"
# The latest market headlines with tickers
curl "https://ai.strasmore.com/api/demo?q=latest_market_news"各レスポンスには、行、カラム名、数値を生成した正確な SQL が含まれます。この点は AI を使う作業で重要です。データと SQL を一緒に Claude に渡せば、結果だけでなくクエリの内容も説明できます。
価格には遅延があり、オプションの greeks は日次の終値時点の値です。学習、スクリーニング、分析のワークフローでは、これで十分です。これは取引フィードではありません。このガイドの対象は取引執行ではなく、分析です。
方法 1: JSON をチャットに貼り付ける
セットアップ不要の方法です。curl を 1 回実行し、JSON をコピーして、明確な指示とともに Claude のチャットへ貼り付けます。claude.ai の Web アプリ、デスクトップアプリ、その他のチャットインターフェースで利用できます。
効果的なプロンプトの形式は次のとおりです。
Here is JSON from a market data API. The `sql` field shows exactly
how the numbers were computed.
[paste the JSON here]
1. Summarize what this data shows in plain English.
2. Which three rows stand out, and what makes them unusual?
3. What would you want to check next before drawing conclusions?3 つ目の質問が重要です。データから導ける限界を明示するよう Claude に促し、無理な推論を防ぎます。また、「配当履歴を確認する」「セクターと比較する」といった提案により、何もない状態で作成するよりも、次のクエリを適切に組み立てられることがよくあります。
方法2: Claude Code 自身にデータを取得させる
Claude Code を実行している場合は、コピーと貼り付けを完全に省略できます。Claude Code は自分で curl を実行できるためです。質問し、データの保存場所を伝えます。
Fetch https://ai.strasmore.com/api/demo/catalog, pick the query that
best answers this question, fetch it, and analyze the result:
which large-cap stocks pay the highest dividend yields right now,
and how do their P/E ratios compare?Claude Code はカタログを読み取り、dividend_yield_leadersを選択して取得し、実際の行データを使って処理します。エージェントループはローカルマシン上で実行されるため、マシン上の他の機能とも連携できます。結果をファイルに保存したり、Python スクリプトでグラフ化したり、今日の画面を先週保存した画面と比較したりできます。注意すべきコストが 1 つあります。エージェントが取得したすべての JSON ペイロードは会話に残り、次のターンで再送信されます。そのため、Claude Code の長時間セッションは高額になります。
常時稼働する Linux サーバーは、このワークフローに適した環境です。「画面を取得し、昨日の画面と比較し、概要を書き出す」という毎日のループには、スリープしないマシンが必要です。また、SSH 接続が切れてもセッションを維持できる、tmux を使って VPS 上で Claude Code を実行する方法の詳しいガイドも用意しています。この方法を使う場合は、先にVPS 上で AI エージェントを安全に実行する方法を読んでください。shell access を持つエージェントには、適切なガードレールが必要です。
Way 3: Claude API と fetch ツール
構築するソフトウェアでは、Claude に API をツールとして提供します。Anthropic の Python SDK を使えば、必要な接続処理は 1 つのツール定義と 1 つの fetch 関数だけです。
import json, urllib.request
import anthropic
def fetch_demo(query_key: str) -> str:
url = f"https://ai.strasmore.com/api/demo?q={query_key}"
with urllib.request.urlopen(url, timeout=30) as r:
return r.read().decode()
client = anthropic.Anthropic()
tools = [{
"name": "fetch_market_data",
"description": "Fetch a fixed market-data query. Keys are listed at "
"https://ai.strasmore.com/api/demo/catalog e.g. "
"dividend_yield_leaders, iv_leaders, latest_market_news.",
"input_schema": {
"type": "object",
"properties": {"query_key": {"type": "string"}},
"required": ["query_key"],
},
}]
# Claude decides when to call the tool; your loop executes fetch_demo()
# and returns the JSON as the tool result. See Anthropic's tool-use docs.質問にデータが必要な場合、Claude はツールを呼び出します。取得処理を実行して JSON を返すと、Claude は記憶ではなく実際の行データに基づいて回答します。クライアントは環境変数からキーを取得するため、このコードをサーバー上やクラウドプロバイダーの背後で実行する場合は、値をハードコードする前に、そこで クライアントを認証する方法を確認してください。この方法だけは、チャットのサブスクリプションではなくトークン単位で課金されます。そのため、Claude API に無料枠があるか知りたい場合、簡単に言えば、登録時に少額のクレジットが付与され、その後は従量課金になります。インラインツールではなく再利用可能なサーバーを使用したい場合は、同じパターンを Model Context Protocol でも利用できます。ホスティングについては、VPS 上の MCP サーバーガイドで説明しています。
良い分析を得るためのプロンプト
接続方法にかかわらず、次のパターンを使うと出力が安定して改善します。
- 行を引用するよう Claude に指示します。「すべての主張について、ティッカーと、その根拠となる数値を示してください」と指定します。これにより、曖昧な要約を防げます。
- データで示せない内容を尋ねます。遅延価格、終値時点の greeks、固定されたスクリーニング結果にはそれぞれ限界があります。尋ねておけば、Claude はその点を明確に説明するため、分析の妥当性を保てます。
- 予測ではなく比較を求めます。「表示された payout ratio に基づき、これらの利回りのうち持続可能と考えられるものはどれですか」と尋ねると、根拠のある回答になります。「どの株価が上昇しますか」と尋ねると、データが裏付けていない予測を、もっともらしく書いた回答になります。
- SQL をコンテキストに含めます。
sqlフィールドによって、スクリーニングの構築方法を Claude に正確に伝えられます。そのため、銘柄が除外された理由を、時価総額の下限や利回りの上限などに基づいて説明でき、根拠のない理由を作りません。
固定クエリでは足りなくなったとき
デモの画面は、意図的に固定されています。次の段階は、Strasmore の有料 API です。同じデータウェアハウスで、米国株式の 22 年分とオプションの 12 年分の履歴を利用できます。プログラムから使用する key により、SQL または自然言語で独自の質問を実行できます。ワークフローは変わりません。ツールが公開エンドポイントではなく、認証済みのエンドポイントからデータを取得するようになり、質問の内容を自分で定義できるだけです。Claude は、文書化されたスキーマに対する ClickHouse SQL の作成に実際に優れています。そのため、「$10B を超えるすべての REIT の配当履歴を取得し、5 年間の成長率で順位付けする」という処理も、1 回のプロンプトで実行できます。
FAQ
Claude はデータソースなしで株価を分析できますか?
現在の数値については分析できません。Claude の学習データは今日より前で終了しているため、現在の価格についての回答は古い記憶に基づくものになります。ライブ API を渡せば、直前に取得したデータの行に基づいて分析できます。
Strasmore demo API は本当に無料ですか?
はい。API key、登録、カードはいずれも不要です。遅延した米国株式と日次オプションデータについて、固定クエリのカタログを提供しており、AI エージェントが利用しやすいよう意図的に公開されています。
このために VPS は必要ですか?
いいえ。貼り付けて使うワークフローにはブラウザーしか必要ありません。エージェントのループをスケジュールに従って実行し、接続が切れても処理を継続し、過去の結果をローカルファイルに保存したい場合は、VPS が役立ちます。
これは金融アドバイスですか?
いいえ。ここで扱うのはすべて分析用のツールです。Claude はデータを要約して比較しますが、その結果をどう使うかは利用者の判断です。また、教育目的の遅延データは取引執行の根拠にはなりません。
1 つの画面を 1 つのチャットに接続すれば、違いはすぐに分かります。Claude は、把握できない数値について自信ありげに話すのをやめ、把握できる数値について有用な分析を始めます。