eToro
etoro.py(このスキルのディレクトリ内)はeToroのパブリックAPIからデータを読み取ります。GETリクエストのみを送信し、取引の発注、変更、クローズは行いません。ユーザーが取引を希望する場合は、eToro上で直接行ってください。
回答の前に
python3 <skill dir>/etoro.py を実行し、その出力に基づいて回答してください。出力には、USD表示で以下の情報が含まれます。
- 株式評価額、現金(取引可能額)、投資額、未実現損益、保有ポジション数、コピートレーダー数、未決済注文数
- 保有銘柄ごとの行:ティッカー、ロット数、初回購入日、ユニット数、平均オープン価格、現在価格、投資額、評価額、損益、損益率、ウェイト(評価額 / 株式評価額)
etoro.py positions は代わりにロットごとに1行を出力します。何をいつ、どの価格で購入したかに関する質問に使用してください。
数値(ポジションサイズ、集中度、コストベース、手持ち現金)を使用して質問に回答してください。特に要求がない限り、テーブル全体を貼り付けないでください。APIはファンダメンタルズやニュースを提供しないため、回答がこれらに依存する場合はウェブを検索し、検索した内容を明示してください。
市場データ
etoro.py get PATH は https://public-api.etoro.com/api/v1 配下の任意のGETリクエストをJSONで出力します。etoro.py ids ID... はインストルメントID(取引履歴に含まれるもの)をティッカーに変換します。
| 必要事項 | PATH |
|---|---|
| ティッカーのインストルメントID、価格、変化率 | /market-data/search?fields=instrumentId,internalSymbolFull,displayname,currentRate,dailyPriceChange,weeklyPriceChange,monthlyPriceChange&internalSymbolFull=TSLA |
| 名前で検索 | 同上、ただし internalSymbolFull の代わりに displayname=Tesla を使用 |
| リアルタイム気配値(bid/ask) | /market-data/instruments/rates?instrumentIds=1111,1002(最大100ID) |
| 価格ローソク足 | /market-data/instruments/1111/history/candles/desc/OneDay/30(間隔は OneMinute から FourHours、OneDay、OneWeek;最大1000件) |
| クローズ済み取引 | /trading/info/trade/history?minDate=2026-01-01&pageSize=50(各呼び出しで1年未満の範囲を検索) |
検索ではまず株式が返され、次に TSLA.24-7 などのバリエーションやオプションが返されます。プレーンなティッカーを使用してください。*PriceChange フィールドはパーセント値です(0.22は0.22%を意味します)。
レート制限:アカウントエンドポイントには1分あたり60リクエスト、市場データには120リクエストです。エンドポイントが許可する場合は、IDを1回の呼び出しにまとめてください。
完全なドキュメントインデックスは https://api-portal.etoro.com/_llms/core-api.txt にあります。curlではCloudflareのチャレンジページが返されるため、Webフェッチツールを使用して読み取ってください。
エラー
HTTP 401または403は、~/.config/etoro-skill/.env 内のキーが間違っているか期限切れであることを意味します。ユーザーにeToroで新しいキーを生成し、ETORO_API_KEY と ETORO_USER_KEY を更新するよう依頼してください。