Python対応!API公開済みFX・暗号資産おすすめ取引所比較【2026年版・自動売買Bot開発者向け】
結論: Bot開発者が口座を選ぶ基準は「API品質」一択
FXや暗号資産の口座選びは、一般投資家とBot開発者では基準がまったく異なります。
| 評価軸 | 一般投資家 | Bot開発者 |
|---|---|---|
| 重視点 | スプレッド・アプリUI | API仕様・Pythonライブラリ |
| 口座選択理由 | CMのイメージ・知名度 | REST/WebSocket対応・レート制限 |
| テスト環境 | 不要 | デモ口座(ペーパートレード)必須 |
Bot開発者が最初に確認すべきは「そのFX会社がAPIを公式に提供しているか」です。APIを公開していない取引所にBot接続は不可能であり、口座凍結リスクもあります。
Bot開発者向け おすすめ取引所
| サービス | スプレッド USD/JPY | 最小取引 | キャンペーン | 口座開設 |
|---|---|---|---|---|
| おすすめGMOコイン | Maker -0.01% | 0.0001 BTC | REST+WebSocket・ccxt対応・手数料最安 | 無料口座開設 |
| bitFlyer | 0.01〜0.15% | 0.001 BTC | 招待コードで1,500円BTC付き | 無料口座開設 |
| OANDA Japan | 0.3銭〜 | 1通貨 | デモ口座でAPIテスト可能 | 公式サイト |
※ スプレッドは原則固定(例外あり)。最新情報は各公式サイトでご確認ください。リンクはアフィリエイト広告です。
なぜ「API対応」で取引所を選ぶのか
自動売買Botが口座に要求する3つの機能
Pythonで自動売買Botを動かすには、取引所が以下の機能をAPIで提供していることが前提です。
① リアルタイム価格取得(WebSocket) ティックデータやOHLCを受け取り、売買シグナルを計算する。ポーリング(REST定期取得)では遅延が発生するため、WebSocketが実質必須。
② 注文の送信・キャンセル(Private REST API) プログラムから成行注文・指値注文を出し、約定を確認し、必要に応じてキャンセルする。
③ 残高・ポジション確認 現在の証拠金残高、ポジション状況をリアルタイムで取得し、リスク管理ロジックに渡す。
この3機能を全て提供する取引所が、Bot開発者の選択肢になります。
DMM FXは自動売買Botには不向き
国内で最も口座数の多いFX会社の一つであるDMM FXですが、DMM FXはAPIを一般向けに公開していません。手動トレードには優れた環境ですが、Pythonから注文を自動送信することはできません。スプレッドが狭くても、APIがなければBot開発者には選択肢になりません。
取引所別 API詳細評価
1. GMOコイン — 暗号資産Bot開発の最有力候補
GMOインターネットグループが運営する暗号資産取引所。暗号資産Bot開発者が国内で最も活用している取引所の一つです。
API仕様
| 項目 | 詳細 |
|---|---|
| REST API | ✅ 公式提供(注文・残高・約定履歴) |
| WebSocket | ✅ 公式提供(ティック・約定情報) |
| ccxt対応 | ✅ GMOコインはccxtライブラリで対応 |
| ドキュメント | 日本語の公式APIドキュメントあり |
| レート制限 | Public: 1秒/10リクエスト、Private: 1秒/1リクエスト |
Pythonライブラリ
# ccxtを使ったGMOコインへの接続例
import ccxt
exchange = ccxt.gmocoin({
'apiKey': 'YOUR_API_KEY',
'secret': 'YOUR_SECRET_KEY',
})
# 現在のBTC/JPY価格を取得
ticker = exchange.fetch_ticker('BTC/JPY')
print(f"BTC現在価格: {ticker['last']:,} 円")
# 残高確認
balance = exchange.fetch_balance()
print(f"JPY残高: {balance['JPY']['free']:,} 円")
手数料(2026年5月時点)
| 取引種別 | Maker | Taker |
|---|---|---|
| 現物(取引所) | -0.01%(受取) | 0.05% |
| 暗号資産FX | スプレッドのみ | スプレッドのみ |
| 入金 | 無料 | — |
| 出金 | 無料 | — |
Maker注文(指値)が約定するとマイナス手数料(手数料を受け取れる)という設計は、高頻度の自動売買と相性が良い設計です。
向いているBot戦略
- BTC/JPY・ETH/JPY等の主要ペアのトレンドフォロー
- スプレッドが狭いタイミングを狙ったスキャルピング
- 暗号資産FXを活用したレバレッジBot
2. bitFlyer — 国内最大流動性、初心者Botに豊富なサンプル
2014年設立の国内大手暗号資産取引所。BTC/JPYの流動性は国内トップクラス。
bitFlyerの無料口座開設はこちら →(招待コードで1,500円分のBTC付き)
API仕様
| 項目 | 詳細 |
|---|---|
| REST API | ✅ 公式提供(Lightning API) |
| WebSocket | ✅ 公式提供(Realtime API) |
| ccxt対応 | ✅ bitFlyerはccxtで対応 |
| ドキュメント | 英語・日本語対応の公式ドキュメントあり |
| Pythonサンプル | GitHubに公式・非公式サンプルが豊富 |
Pythonライブラリ
# ccxtを使ったbitFlyerへの接続例
import ccxt
exchange = ccxt.bitflyer({
'apiKey': 'YOUR_API_KEY',
'secret': 'YOUR_SECRET_KEY',
})
# BTC/JPYのOHLCデータを取得(バックテスト用)
ohlcv = exchange.fetch_ohlcv('BTC/JPY', '1h')
print(f"取得した足数: {len(ohlcv)} 本")
# 板情報(オーダーブック)を取得
orderbook = exchange.fetch_order_book('BTC/JPY')
print(f"最良買い板: {orderbook['bids'][0]}")
print(f"最良売り板: {orderbook['asks'][0]}")
bitFlyerの特徴と注意点
特徴:
- 国内最大のBTC/JPY流動性 → 大口ポジションでもスリッページが少ない
- Lightning FX(BTC証拠金取引)のAPIが充実
- ネット上のサンプルコードが最多 → 初めてBotを作る人に優しい
注意点(SFD制度): bitFlyerのBTC/JPY Lightning FXには SFD(Spread Fee Difference) という特殊な手数料制度があります。現物価格とFX価格の乖離が大きい場合に追加コストが発生するため、Bot戦略を設計する際はこの仕様を考慮する必要があります。
3. OANDA Japan — FX Bot開発のスタンダード
FX(外国為替証拠金取引)の自動売買では、OANDAが国内エンジニアに最も支持されているFX会社です。
注意: 筆者はOANDAのアフィリエイトプログラムに現在参加していないため、利益相反のない立場で評価しています。
API仕様
| 項目 | 詳細 |
|---|---|
| API名 | OANDA v20 REST API |
| REST API | ✅ 公式提供 |
| WebSocket | ✅ ストリーミング対応 |
| Pythonライブラリ | oandapyV20(サードパーティ、デファクトスタンダード) |
| デモ口座 | ✅ Practice(デモ)口座でAPIテスト可能 |
| ドキュメント | 英語の詳細ドキュメントあり |
デモ口座でのテストが最大の強み
OANDAはPractice(デモ)口座を作成してAPIをテストできる点が、FX Bot開発者に特に評価されています。実資金を使わずにBotのロジックを本番環境同等で検証できるため、開発フェーズでのリスクが大幅に下がります。
# oandapyV20を使ったOANDA接続例
import oandapyV20
import oandapyV20.endpoints.pricing as pricing
# デモ環境での接続
client = oandapyV20.API(
access_token="YOUR_DEMO_TOKEN",
environment="practice" # "live"に変えると本番環境
)
# USD/JPYの現在価格を取得
params = {"instruments": "USD_JPY"}
r = pricing.PricingInfo(accountID="YOUR_ACCOUNT_ID", params=params)
rv = client.request(r)
print(rv["prices"][0]["closeoutBid"])
OANDA向けBot開発の流れ
- OANDA口座開設 → Practice(デモ)口座でAPIキー発行
oandapyV20インストール → デモ環境でBot動作確認- 戦略が安定したら本番口座に切り替え
Bot開発環境の全体構成(参考)
[価格データ取得] [シグナル計算] [注文送信]
GMOコイン WebSocket → Pythonロジック → GMOコイン REST API
bitFlyer WebSocket → (pandas/numpy) → bitFlyer REST API
OANDA Streaming → テクニカル指標 → OANDA v20 API
↑
[実行環境]
Oracle Cloud 無料枠
(24時間稼働・無料)
実行環境として Oracle Cloud の Always Free インスタンス を使うと、サーバー費用ゼロでBotを24時間稼働させることができます。詳しくは「Oracle Cloud 無料枠で自動売買Botを24時間稼働させる方法」を参照してください。
口座開設の優先順位
最初に開設すべき口座
暗号資産Botを作りたい場合:
-
GMOコイン(最初の1口座として最適)
- API・WebSocket・ccxt対応がすべて揃っている
- 手数料が最安水準でBotのコスト最小化
- GMOコインの無料口座開設 →
-
bitFlyer(GMOコインと並行してAPIテストに使う)
- 流動性が最大でスリッページ検証に有利
- サンプルコードが豊富で実装しやすい
- bitFlyerの無料口座開設(1,500円BTC付き) →
FX BotをPythonで作りたい場合:
- OANDA Japan のデモ口座からスタートするのが最も安全
開設前に確認すること
- 本人確認書類(マイナンバーカードまたは免許証)
- 審査期間: GMOコイン・bitFlyer ともに即日〜翌営業日が目安
- スマートフォン(SMS認証に必要)
APIキーの安全な管理方法
口座開設後にAPIキーを発行したら、絶対にGitHubやSNSに公開しないこと。APIキーが流出すると第三者に勝手に取引されるリスクがあります。
# .envファイルで管理する(.gitignoreに必ず追加する)
# .env
GMO_API_KEY=your_actual_api_key_here
GMO_API_SECRET=your_actual_secret_here
# Pythonでの読み込み
from dotenv import load_dotenv
import os
load_dotenv()
api_key = os.getenv("GMO_API_KEY")
api_secret = os.getenv("GMO_API_SECRET")
詳しいセキュリティ設定は「FX自動売買BotのAPIキー セキュリティ管理ガイド」を参照してください。
まとめ: Bot開発者の口座選びチェックリスト
口座を選ぶ前に、以下を確認してください。
- REST APIが公式に提供されているか
- WebSocket(リアルタイム価格配信)に対応しているか
- Pythonライブラリまたはccxt対応があるか
- デモ環境でAPIテストができるか
- APIドキュメントが日本語または英語で整備されているか
この5つすべてを満たすのが、GMOコイン(暗号資産)・bitFlyer(暗号資産)・OANDA(FX)の3社です。
まず1口座を開設し、Public APIでの価格取得から始めるのが最短ルートです。
関連記事
- FX自動売買の始め方 完全ガイド
- Python FX自動売買Bot 最小構成で動かす
- Oracle Cloud 無料枠でBotを24時間稼働させる方法
- Claude CodeでFX自動売買Botを作った話
- FX自動売買BotのAPIキー セキュリティ管理ガイド
- GMOコイン 暗号資産自動売買ガイド