FxPro Trading APIを解説|機能と連携方法
FxProで利用可能なTrading APIは、取引プラットフォームや外部システムを接続し、 市場データの取得、口座情報の確認、注文の発注や管理を自動化するために使用されます。
APIを利用すると、取引プラットフォームを手動で操作する代わりに、 独自に作成したプログラムや取引システムから対応機能を実行できます。 ただし、利用できるAPI、接続方式、対応銘柄は、口座タイプやプラットフォームによって異なります。
FxProでは、cTraderと連携するAPIや、一定条件を満たす利用者向けの接続方式が案内される場合があります。 利用を開始する前に、FxPro Directまたはサポートを通じて、 自分の口座で使用できるAPIと申請条件を確認してください。
| API機能 | 主な用途 | 確認する項目 |
|---|---|---|
| 市場データ | 価格、銘柄情報、チャートデータの取得 | 更新頻度、対応銘柄、履歴データの範囲 |
| 注文管理 | 注文の発注、変更、取消、決済 | 対応注文タイプ、数量制限、取引時間 |
| 口座情報 | 残高、純資産、証拠金、ポジションの確認 | 更新方法、口座権限、利用可能な項目 |
| 認証 | API利用者と口座の安全な接続 | アクセストークン、権限範囲、有効期限 |
APIを利用するには、最初にFxProへ登録し、 対応する取引口座を作成する必要があります。 ライブ環境で利用する場合は、本人確認や口座認証の完了が求められることがあります。
すべての口座で同じAPIが自動的に利用できるとは限りません。 対応プラットフォーム、取引量、口座タイプ、技術的な利用目的などによって、 追加申請や承認が必要となる場合があります。
APIキー、クライアントID、シークレット、アクセストークンなどの認証情報は、 第三者へ公開しないでください。 ウェブサイトの公開コードやGitHubなどの公開リポジトリへ直接保存することも避ける必要があります。
対応するAPIでは、Bid価格、Ask価格、銘柄情報、 チャートデータなどを取得できる場合があります。 リアルタイムデータと過去データでは、使用する接続方式や取得方法が異なることがあります。
リアルタイム価格を継続的に受信する場合は、 ストリーミング接続や対応するリアルタイム配信機能を使用します。 接続が切断された場合に備えて、再接続とデータ復旧の処理を実装することが重要です。
過去の価格データは、チャート作成、指標計算、 Expert Advisorや取引アルゴリズムの検証に利用できます。 利用可能な期間、時間足、データ量はAPIによって異なります。
対応するTrading APIでは、成行注文、指値注文、 逆指値注文などをプログラムから発注できる場合があります。
注文を送信する際は、銘柄、売買方向、取引数量、 注文タイプ、価格、Stop Loss、Take Profitなどの必要情報を指定します。
保有ポジション、未決済注文、現在の損益、 必要証拠金などをAPIから確認できる場合があります。 また、対応する機能を使ってStop LossやTake Profitを変更したり、 ポジションの一部または全部を決済したりできます。
注文送信後は、注文ID、処理結果、約定価格、 拒否理由などの応答を記録してください。 通信エラーが発生した際に同じ注文を重複して送信しない仕組みも必要です。
デモ口座で注文機能を試すAPIを使って、取引口座の残高、純資産、 使用証拠金、余剰証拠金、証拠金維持率などを確認できる場合があります。
口座の状態を継続的に監視することで、 ポジションを追加できるか、証拠金が不足していないか、 損失が設定した範囲内に収まっているかを判断できます。
取得した口座データを外部システムへ保存する場合は、 個人情報や取引情報を適切に保護してください。 不要な情報を長期間保存せず、アクセス権限も限定することが重要です。
自動売買システムでは、注文ロジックだけでなく、 損失を制限するためのリスク管理機能を組み込む必要があります。
API接続、価格配信、注文応答が正常に動作しているかを監視します。 一定時間データが更新されない場合や、注文応答が返らない場合は、 自動的に新規注文を停止する設計が有効です。
注文拒否、認証エラー、通信切断、 取引時間外、証拠金不足などのエラーを区別して処理します。 エラー内容を記録し、同じ処理が無限に繰り返されないようにしてください。
Trading APIとの連携には、Python、JavaScript、Java、C#など、 HTTP通信やストリーミング接続を扱えるプログラミング言語を使用できます。
FxProまたは対応プラットフォームから提供される公式ドキュメントを確認し、 認証、接続、データ取得、注文処理の順に実装してください。 非公式ライブラリを使用する場合は、更新状況や安全性も確認する必要があります。
| 開発言語 | 利用例 | 確認ポイント |
|---|---|---|
| Python | 市場分析、データ処理、取引アルゴリズム | 非同期処理、再接続、数値精度 |
| JavaScript | ウェブアプリ、ダッシュボード、リアルタイム表示 | シークレットをブラウザ側へ保存しない |
| Java | サーバーシステム、大規模な取引アプリ | 接続管理、ログ、並列処理 |
| C# | cTrader関連の自動売買、Windowsアプリ | 対応APIと開発環境の確認 |
API連携を始める際は、FxProまたは対応プラットフォームが提供する 最新の技術資料を使用してください。 古いサンプルコードや非公式なエンドポイントは、 現在の仕様と一致しない場合があります。
接続できない場合や利用条件が分からない場合は、 FxPro Directのライブチャットまたはカスタマーサポートへ問い合わせてください。 問い合わせ時には、利用している口座タイプ、プラットフォーム、 エラーメッセージ、発生時刻などを伝えると確認しやすくなります。
FxPro Directへ進む