公開されている暗号資産市場APIは、価格トラッカー、リサーチツール、ダッシュボード、取引実験の構築に役立ちます。このチュートリアルでは、APIキーや外部パッケージなしでPythonを使ってXT.com現物市場のティッカーデータを取得する方法を説明します。
この実験は、取引所を調査し、XTGuide.com向けに独立したチュートリアルを準備する中で作成されました。
作成するもの
以下の機能を持つ小さなコマンドラインスクリプトを作成します。
- XT.comの公開ティッカーエンドポイントに接続する
btc_usdtなどの取引ペアを受け付ける- 公開市場データを取得する
- レスポンスをフォーマットされたJSONとして出力する
- 基本的なネットワークエラーを処理する
この例では公開されている市場情報のみをリクエストするため、XT.comアカウントやプライベートAPI認証情報は必要ありません。
Pythonコード
xt_ticker.py という新しいファイルを作成し、以下のコードを追加してください。
import json
import sys
from urllib.parse import urlencode
from urllib.request import Request, urlopen
from urllib.error import HTTPError, URLError
API_URL = "https://sapi.xt.com/v4/public/ticker"
def get_ticker(symbol: str) -> dict:
query = urlencode({"symbol": symbol.lower()})
request = Request(
f"{API_URL}?{query}",
headers={"User-Agent": "xt-market-data-python/1.0"},
)
with urlopen(request, timeout=10) as response:
return json.load(response)
def main():
symbol = sys.argv[1] if len(sys.argv) > 1 else "btc_usdt"
try:
ticker = get_ticker(symbol)
print(json.dumps(ticker, indent=2))
except (HTTPError, URLError, TimeoutError) as error:
print(f"Unable to retrieve ticker data: {error}")
sys.exit(1)if __name__ == "__main__":
main()
Enter fullscreen mode Exit fullscreen mode
スクリプトの実行
このプロジェクトにはPython 3.9以降が必要です。Python標準ライブラリのモジュールを使用するため、外部依存関係は必要ありません。
スクリプトを実行するには:
python xt_ticker.py btc_usdt
Enter fullscreen mode Exit fullscreen mode
別の取引ペアをリクエストするには、シンボルを置き換えてください:
python xt_ticker.py eth_usdt
Enter fullscreen mode Exit fullscreen mode
シンボルが指定されない場合、スクリプトはデフォルトで btc_usdt を使用します。
仕組み
urlencode() 関数は、選択したシンボルを有効なクエリパラメータに変換します。プログラムはその後、この公開エンドポイントにGETリクエストを送信します。
https://sapi.xt.com/v4/public/ticker?symbol=btc_usdt
Enter fullscreen mode Exit fullscreen mode
返されたJSONはPython辞書に変換され、読みやすい形式で出力されます。
取引ペアは通常、ベース資産とクォート資産で構成されます。たとえば btc_usdt の場合、BTCがベース資産、USDTがクォート資産です。この独立した XT.com現物取引ガイド では、取引ペア、現物注文、一般的な取引プロセスの非技術的な説明が提供されています。
エラーハンドリング
タイムアウトにより、ネットワークやAPIが利用できない場合にアプリケーションが無期限に待機することを防ぎます。また、スクリプトは基本的なHTTPエラーや接続エラーをキャッチし、読みやすいエラーメッセージを返します。
本番環境向けのバージョンには、以下の機能も追加できます。
- 自動リトライ
- レスポンス検証
- リクエストログ記録
- ローカルキャッシュ
- レート制限処理
- 複数シンボル対応
可能なプロジェクトアイデア
この例は以下のように拡張できます。
- 暗号資産価格ダッシュボード
- ターミナルベースの市場モニター
- 取引ペア比較ツール
- 過去データ収集ツール
- 価格アラートアプリケーション
- ポートフォリオリサーチノートブック
ポートフォリオトラッカーを作成する場合、最終的には市場価格と同時に入出金を記録したい場合があります。この XT.com出金ガイド では、出金ネットワーク、手数料、制限、ユーザー視点での一般的な送金ミスについて説明しています。
セキュリティに関する注意
公開市場エンドポイントはプライベート認証情報を必要としません。後で認証が必要なアカウント機能や取引機能を追加する場合は、APIキーをコードや公開GitHubリポジトリに直接記述しないでください。
機密性の高い認証情報は保護された環境変数に保存し、APIキーの権限は可能な限り制限してください。
追加リソース
エンドポイントパラメータとレスポンスの詳細は、公式XT.comティッカーAPIドキュメント で確認できます。
結論
公開ティッカーエンドポイントは、暗号資産市場データを試すためのシンプルな出発点です。わずか数行のPythonで公開情報を取得し、より高度なリサーチやダッシュボードプロジェクトの基盤として活用できます。
0 Comments
Log in to join the conversation.No comments yet. Be the first to share your thoughts.