macrotrends について
米国上場銘柄と ADR の過去の財務データを Macrotrends から取得するコマンドラインスキルです。API キー不要でページ内データを抽出し、約 15 年分の年次データと一部の四半期データを扱えます。
主な機能
- 01損益計算書、貸借対照表、キャッシュフロー
- 0220 項目の財務比率
- 03年間従業員数
- 04年次・四半期データの選択
- 05ティッカーから slug への自動解決
- 06JSON 出力とリクエスト間隔の設定
活用シーン
- 01企業の財務諸表の経年比較
- 02四半期業績と財務比率の確認
- 03年間従業員数の追跡
- 04財務データの JSON 出力
インストール
コマンドをコピーしてターミナルで実行します。
npx skills add https:/ / github.com/ gauss314/ skills --skill macrotrendsインストール後、Claude Code で/macrotrendsを入力して読み込まれたか確認します。
同梱ファイル
SKILL.md と一緒にインストールされる参考資料やスクリプト。
references/MARKETS_REFERENCE.mdSTATEMENTS_REFERENCE.mdscripts/fetch_financials.py詳細
Macrotrends — 財務データスクレイパー
Macrotrends のスクレイパーです。損益計算書、貸借対照表、キャッシュフロー計算書、財務比率、従業員数の過去の財務データを、米国市場の約6,500銘柄(NYSE、NASDAQ、AMEX)について15年以上取得できます。30か国以上の国際 ADRも含まれます。
データはページ内に埋め込まれた JSON に含まれています(API キーは不要で、requests と BeautifulSoup のみで取得できます)。
⚠️ 法的注意事項
- Macrotrends に公式の公開 API はありません。このスクレイパーは、ウェブ上で公開されているデータにアクセスします。
- Macrotrends の利用規約を遵守してください。
- レート制限を実装してください(リクエスト間の間隔は最低2秒、3秒を推奨)。
- サイトの HTML/JS 構造が変更されると、スクレイパーが動作しなくなる可能性があります。
インストール
pip install requests beautifulsoup4
スクリプト
| スクリプト | 説明 |
|---|---|
| fetch_financials.py | メインスクリプト:財務諸表、比率、従業員数 |
クイックスタート
# Income statement anual
python scripts/fetch_financials.py --ticker NVDA --income
# Todo lo disponible (income + balance + cashflow + ratios + employees)
python scripts/fetch_financials.py --ticker AAPL --all
# Statements trimestrales
python scripts/fetch_financials.py --ticker MSFT --income --quarterly
python scripts/fetch_financials.py --ticker MSFT --balance --quarterly
# Ratios anuales o trimestrales
python scripts/fetch_financials.py --ticker NVDA --ratios
python scripts/fetch_financials.py --ticker GGAL --ratios --quarterly
# Employee count
python scripts/fetch_financials.py --ticker NVDA --employees
# Output a archivo JSON
python scripts/fetch_financials.py --ticker AAPL --all --output data.json
# Silencioso (solo JSON)
python scripts/fetch_financials.py --ticker NVDA --all --quiet
利用可能なエンドポイント
| フラグ | データ | 頻度 | 期間 |
|---|---|---|---|
--income | 損益計算書 | 年次、四半期 | 約15年/約60四半期 |
--balance | 貸借対照表 | 年次、四半期 | 約15年/約60四半期 |
--cashflow | キャッシュフロー | 年次のみ | 約15年 |
--ratios | 財務比率(20種類) | 年次、四半期 | 約15年/約60四半期 |
--employees | 従業員数 | 年次 | 約15年 |
--all | 上記すべて | --quarterly に応じて | - |
追加フラグ
| フラグ | 説明 |
|---|---|
--quarterly | 四半期頻度を使用します(利用可能な場合) |
--output | 出力先の JSON ファイル(デフォルト:stdout) |
--slug | スラッグを手動で指定します(検索が機能しない場合) |
--delay | リクエスト間の待機時間(デフォルト:3.0秒) |
--quiet | サイレントモード |
ティッカーからスラッグへの変換
Macrotrends は、/stocks/charts/{TICKER}/{SLUG}/financial-statements 形式の URL を使用します。
スラッグは、内部の検索エンドポイントを介して自動的に解決されます。例:
| ティッカー | スラッグ |
|---|---|
| AAPL | apple |
| NVDA | nvidia |
| MSFT | microsoft |
| GGAL | grupo-financiero-galicia-sa |
| TSLA | tesla |
検索に失敗した場合は、スラッグを手動で指定できます。
python scripts/fetch_financials.py --ticker GGAL --slug grupo-financiero-galicia-sa --all
財務諸表ごとに取得できるデータ
損益計算書(22項目)
売上高、売上原価、売上総利益、研究開発費、販売費および一般管理費、営業利益、純利益、EBITDA、EBIT、EPS、発行済み株式数など。
貸借対照表(23項目)
現金、売掛金、棚卸資産、総資産、総負債、株主資本、負債、利益剰余金など。
キャッシュフロー計算書(29項目)
純利益、減価償却費、運転資本の変動、設備投資、フリーキャッシュフロー、配当、自己株式の買い戻しなど。
財務比率(20種類)
流動比率、負債資本比率、売上総利益率/営業利益率/純利益率、ROE、ROA、ROI、1株当たり純資産、1株当たりフリーキャッシュフローなど。
従業員数
年間の総従業員数。
項目の完全な一覧は、references/STATEMENTS_REFERENCE.md を参照してください。
市場のカバレッジ
Macrotrends は、NYSE、NASDAQ、AMEX に上場している約6,500銘柄(ADR を含む)をカバーしています。
| 種類 | 数量 | 例 |
|---|---|---|
| 米国普通株 | 約5,300 | AAPL、NVDA、MSFT |
| 国際 ADR | 約276以上 | GGAL(アルゼンチン)、BABA(中国)、TM(日本)、PBR(ブラジル)、SAN(スペイン)、BP(英国) |
| ETF とファンド | 約91 | SPY、QQQ、VTI |
| クラス A/B 株 | 約22 | BRK.A、BRK.B |
市場、国別の ADR、ティッカーの検索方法については、references/MARKETS_REFERENCE.md を参照してください。
レート制限
| 動作 | 推奨事項 |
|---|---|
| 遅延なしで連続してリクエストする | 429 Too Many Requests |
| 推奨される遅延 | リクエスト間に3秒 |
| 1回の実行あたりのティッカー数 | 最大で約5~6件(ブロックを避けるため) |
| バックオフ | 429を受け取った場合は、30~60秒待ちます |
よくあるエラー
| エラー | 原因 | 解決方法 |
|---|---|---|
429 Too Many Requests | レート制限 | --delay を増やすか、待ちます |
slug not found | ティッカーを解決できませんでした | --slug を手動で指定します |
No data found for X | エンドポイントを利用できません | Macrotrendsにティッカーが存在することを確認します |
originalData not found | ページの構造が変更されました | issueを報告します |
スキルの構成
skills/macrotrends/
├── SKILL.md # Este archivo
├── references/
│ ├── STATEMENTS_REFERENCE.md # Referencia de campos
│ └── MARKETS_REFERENCE.md # Cobertura de mercados y ADRs
└── scripts/
└── fetch_financials.py # Script principal