LongPort OpenAPI について
LongPort OpenAPI は、投資家や開発者が取引・相場分析ツールを構築するための SDK と、プログラムから利用できる市場・口座インターフェースを提供します。注文、相場、ポートフォリオ、購読、金融データなどを複数の言語から扱えます。
主な機能
- 01注文の作成・変更・取消
- 02リアルタイムおよび過去の相場取得
- 03残高・ポジション・約定の照会
- 04相場と注文更新の購読
- 05金融・市場情報の取得
- 06複数言語向け SDK
活用シーン
- 01注文管理ツールの構築
- 02相場・取引戦略の分析
- 03ポートフォリオと口座残高の監視
- 04リアルタイムの相場・注文更新の受信
MCP 対応
README には Longport OpenAPI の MCP サーバー実装が記載されていますが、ツールや設定方法の説明はありません。
設定
ローカルサーバーの設定はどのクライアントでも共通です。コピーしてクライアントの MCP 設定ファイルに貼り付けてください。
このサーバーのパッケージやリモートエンドポイントはまだ取得できていません。プロジェクトの README の手順に従ってください。
ツール
ローカルサーバーのツールはマシン上で起動して初めて取得できます。メンテナーはまだツール一覧を提供していません。
詳細
Longport OpenAPI SDK
Longport OpenAPI は、調査・開発能力を持つ投資家向けに、プログラムから利用できる株価情報と取引のインターフェースを提供します。また、投資家が自身の投資戦略に基づいて、取引や株価分析のツールを構築できるよう支援します。主な機能は次のとおりです。
- 取引 - 注文の作成、変更、キャンセル、本日および過去の注文や約定詳細の照会など
- 株価情報 - リアルタイム株価、過去の株価情報の取得など
- ポートフォリオ - 口座資産、保有ポジション、資金のリアルタイム照会
- リアルタイム配信 - リアルタイム株価と注文状況の変更通知を提供
このリポジトリには、次の主要コンポーネントが含まれています。
| 名前 | ドキュメント | 説明 |
|---|---|---|
| Rust | ドキュメント | Longport OpenAPI for Rust (>= 1.89.0) |
| Python | ドキュメント | Longport OpenAPI for Python 3 (>= 3.8) |
| Node.js | ドキュメント | Longport OpenAPI for Node.js (>= 10) |
| Java | ドキュメント | Longport OpenAPI for Java (>= 11) |
| C | ドキュメント | Longport OpenAPI for C (>= C99) |
| C++ | ドキュメント | Longport OpenAPI for C++(>= C++17) |
| Go | https://github.com/longportapp/openapi-go | |
| MCP | Longport OpenAPI の MCP サーバー実装 |
コンテキストの種類
| コンテキスト | 説明 |
|---|---|
QuoteContext | リアルタイム株価、ローソク足、オプション、ワラント、ウォッチリスト、プッシュ配信のサブスクリプション |
TradeContext | 注文、ポジション、口座残高、約定、キャッシュフロー |
AssetContext | 口座明細のダウンロード |
ContentContext | ニュース、コミュニティのトピック |
FundamentalContext | 財務報告書、アナリスト評価、配当、バリュエーション、企業概要、株主 |
MarketContext | 市場状況、ブローカー保有状況、A株/H株プレミアム、取引統計、異常アラート、指数構成銘柄 |
CalendarContext | 金融カレンダー(決算、配当、株式分割、IPO、マクロデータ、市場休場日) |
PortfolioContext | 為替レート、ポートフォリオの損益分析 |
AlertContext | 価格アラート管理(追加/有効化/無効化/削除) |
DCAContext | ドルコスト平均法プランの管理 |
SharelistContext | コミュニティのシェアリスト管理 |
クイックスタート
上の表から言語 SDK を選び、インストール方法と最初のリクエストについては、その README に従ってください。リファレンスドキュメント全文:https://longportapp.github.io/openapi
SDK ドキュメント
https://longportapp.github.io/openapi
トラブルシューティング
- 環境変数が反映されない
- macOS/Linux:
export ...の影響は現在のシェルセッションに限られます。 - Windows:
setx ...の設定を反映するには、新しいターミナル/セッションを開く必要があります。
- macOS/Linux:
- 認証エラー(401/403)
LONGPORT_APP_KEY、LONGPORT_APP_SECRET、LONGPORT_ACCESS_TOKENが正しく、有効期限が切れていないことを確認してください。- OpenAPI アプリに必要な権限が付与されていることを確認してください。
- ネットワーク/接続エラー
- HTTPS/WSS のファイアウォール/プロキシのルールを確認してください。
- カスタムエンドポイントを使用する場合は、
LONGPORT_HTTP_URL、LONGPORT_QUOTE_WS_URL、LONGPORT_TRADE_WS_URLを設定してください。
- 相場情報のサブスクリプションがすぐに終了する
- プッシュイベントを受信するには、プロセスを実行し続けてください(イベントループ/スリープ/ブロッキング受信ループ)。そうしないと、プッシュイベントを確認できません。
- デバッグ
LONGPORT_LOG_PATHでログを有効にしてください。- 相場情報に接続できても内容が空に見える場合は、相場情報パッケージが開かれていることを確認するため、
LONGPORT_PRINT_QUOTE_PACKAGES=trueを維持してください。
最小限の確認
環境または認証情報が正しいか不明な場合は、組み込みの HTTP クライアントの例から始めてください。
-
Python:
python examples/python/http_client.py -
Node.js:
node examples/nodejs/http_client.js -
Rust:
cargo run --manifest-path examples/rust/Cargo.toml -p http_client -
Java(サンプルモジュールのディレクトリから):
cd examples/java/http_client mvn -q -DskipTests package mvn -q -DskipTests exec:java -
C/C++:
examples/c/http_client/main.cとexamples/cpp/http_client/main.cppのソースを使用してください。- ビルド手順はツールチェーンによって異なります。該当する言語 SDK の README を参照してください。
期待される結果:
- 認証情報が有効でネットワークに接続できる場合、HTTP 呼び出しは JSON を返します。
- 401/403 が返される場合は、
LONGPORT_APP_KEY、LONGPORT_APP_SECRET、LONGPORT_ACCESS_TOKENを確認してください。 - タイムアウトする、または接続できない場合は、プロキシ/ファイアウォールとエンドポイントの環境変数を確認してください。
リソース
ライセンス
次のいずれかのライセンスの下でライセンスされています。
- Apache License, Version 2.0(LICENSE-APACHE または http://www.apache.org/licenses/LICENSE-2.0)
- MIT license(LICENSE-MIT または http://opensource.org/licenses/MIT)。どちらを選択するかは任意です。
コメント
AI アプリケーションが外部のツールやデータソースに統一的な方法で接続するためのオープンなプロトコルです。クライアントはモデルとの対話を担い、MCP サーバーはツール・リソース・プロンプトテンプレートを提供します。標準メッセージでやり取りするため、1 つのサーバーを複数のクライアントで再利用できます。