Stocks
目次
Yahoo 経由で株価、履歴、検索、比較、暗号資産の情報を取得します。
skill の情報
| 提供元 | 追加 skill — hermes skills install official/finance/stocks で入れます |
| パス | optional-skills/finance/stocks |
| バージョン | 0.1.0 |
| 作者 | Mibay (Mibayy), Hermes Agent |
| ライセンス | MIT |
| 対応プラットフォーム | linux, macos, windows |
| タグ | Stocks, Finance, Market, Crypto, Investing |
| 関連 skill | dcf-model, comps-analysis, lbo-model |
参考: SKILL.md 全文
Stocks Skill
Yahoo Finance 経由で市場データを読み取ります。コマンドは quote、search、 history、compare、crypto の 5 つです。Python の標準ライブラリだけで動くので、 API キーも pip での追加インストールも要りません。Yahoo のエンドポイントは非公式なので、 アクセス制限がかかったり、仕様が変わったりすることがあります。
こんなときに使います
- 今の株価を聞かれたとき(AAPL、TSLA、MSFT など)
- 会社名からティッカーを調べたいとき
- OHLCV の履歴や、ある期間の値動きを知りたいとき
- 複数のティッカーを並べて比べたいとき
- 暗号資産の価格を聞かれたとき(BTC、ETH、SOL など)
事前に必要なもの
Python 3.8 以上の標準ライブラリだけで動きます。任意で ALPHA_VANTAGE_KEY を設定しておくと、 Yahoo 側の crumb 保護がかかったフィールドが null で返るときに、market_cap、pe_ratio、 52 週の高値・安値を補えます。無料のキーはこちらです: https://www.alphavantage.co/support/#api-key
実行のしかた
terminal ツールから呼び出します。インストール後は次のようにします。
SCRIPT=~/.hermes/skills/finance/stocks/scripts/stocks_client.py
python3 $SCRIPT quote AAPL出力はすべて標準出力への JSON です。切り出したいときは jq に通してください。
早見表
python3 $SCRIPT quote AAPL
python3 $SCRIPT quote AAPL MSFT GOOGL TSLA
python3 $SCRIPT search "Tesla"
python3 $SCRIPT history NVDA --range 6mo
python3 $SCRIPT compare AAPL MSFT GOOGL
python3 $SCRIPT crypto BTC ETH SOLコマンド
quote SYMBOL [SYMBOL2 ...]
現在値、変化額、変化率、出来高、52 週の高値・安値を返します。
search QUERY
会社名からティッカーを探します。上位 5 件について、シンボル、名称、取引所、種別を返します。
history SYMBOL [--range RANGE]
日次の OHLCV に加えて、統計値(最小、最大、平均、期間リターン %)を返します。指定できる期間は 1mo、 3mo、6mo、1y、5y です。既定は 1mo です。
compare SYMBOL1 SYMBOL2 [...]
価格、変化率、52 週の騰落を並べて比べます。
crypto SYMBOL [SYMBOL2 ...]
暗号資産の価格を返します。BTC のように渡せば、スクリプトが -USD を自動で付けます。
つまずきやすいところ
- Yahoo Finance の API は非公式です。予告なくエンドポイントが変わったり、アクセス制限が
かかったりします。急にリクエストが失敗し始めたら、たいていこれが原因です。
quoteでmarket_capやpe_ratioが null になることがあります。Yahoo の crumb セッションが
確立していないときに起きます。ALPHA_VANTAGE_KEY を設定すると補えます。
- まとめてリクエストするときは、あいだに少し間隔を空けてアクセス制限を避けてください。
- これは読み取り専用です。発注も、口座との連携もできません。
確認
python3 ~/.hermes/skills/finance/stocks/scripts/stocks_client.py quote AAPLsymbol: "AAPL" と、数値の price フィールドを持つ JSON オブジェクトが返ります。