最終更新:
編集

book_changes

[ソース]

book_changes メソッドは、分散型取引所(DEX) のオーダーブックの変更に関する情報を、以前のレジャーバージョンと比較して提供します。これは「ローソク足」チャートの作成に役立つ場合があります。

リクエストのフォーマット

リクエストの例:

{
    "id": "example_book_changes",
    "command": "book_changes",
    "ledger_index": 88530953
}

試してみる! >

リクエストには以下のパラメーターが含まれます。

フィールド必須?説明
ledger_hashハッシュいいえ使用するレジャーバージョンの32バイトの16進文字列。(詳しくはレジャーの指定をご覧ください。)
ledger_indexレジャーインデックスいいえ使用するレジャーのレジャーインデックス、または自動的にレジャーを選択するためのショートカット文字列。(レジャーの指定)
既知の問題

rippledのこのメソッドにいくつかの既知の問題があります。

  • デフォルトまたはショートカット文字列を使用する代わりに、ledger_indexまたはledger_hashを明示的に指定する必要があります。(Issue #5034)
  • JSON-RPC APIのレスポンスは、検証済みのレジャーをクエリする場合でもvalidatedフィールドが欠落する可能性があります。(#5035)
  • 最近閉じたレジャーをクエリする場合、成功したレスポンスが意図したデータの代わりにレジャーリクエストオブジェクトを返すことがあります。(#5033)
  • 古いレジャーからデータをクエリする場合、サーバーが長時間(30秒以上)応答しない可能性があります。(#5036)

これらのバグはClioサーバーには適用されません。

レスポンスのフォーマット

成功したレスポンスの例:

{
    "result": {
      "type": "bookChanges",
      "ledger_hash": "7AB08A2415C10E07201521F3260F77ADFF4902A528EA66378E259A07767A24B9",
      "ledger_index": 88530953,
      "ledger_time": 771100891,
      "validated": true,
      "changes": [
        {
          "currency_a": "XRP_drops",
          "currency_b": "rKiCet8SdvWxPXnAgYarFUXMh1zCPz432Y/CNY",
          "volume_a": "44082741",
          "volume_b": "158.6978676",
          "high": "277777.7777777778",
          "low": "277777.7777777778",
          "open": "277777.7777777778",
          "close": "277777.7777777778"
        },
        {
          "currency_a": "XRP_drops",
          "currency_b": "rKiCet8SdvWxPXnAgYarFUXMh1zCPz432Y/XLM",
          "volume_a": "44191586",
          "volume_b": "217.6925474337355",
          "high": "202999.9948135647",
          "low": "202999.9948135647",
          "open": "202999.9948135647",
          "close": "202999.9948135647"
        },
        {
          "currency_a": "XRP_drops",
          "currency_b": "rf5YPb9y9P3fTjhxNaZqmrwaj5ar8PG1gM/47414C4100000000000000000000000000000000",
          "volume_a": "100000000",
          "volume_b": "1242.61659179386",
          "high": "80475.34586323083",
          "low": "80475.34586323083",
          "open": "80475.34586323083",
          "close": "80475.34586323083"
        },
        {
          "currency_a": "XRP_drops",
          "currency_b": "rsoLo2S1kiGeCcn6hCUXVrCpGMWLrRrLZz/534F4C4F00000000000000000000000000000000",
          "volume_a": "33734",
          "volume_b": "0.1454210006367",
          "high": "231974.7481608686",
          "low": "231974.7481608686",
          "open": "231974.7481608686",
          "close": "231974.7481608686"
        },
        {
          "currency_a": "rKiCet8SdvWxPXnAgYarFUXMh1zCPz432Y/CNY",
          "currency_b": "rKiCet8SdvWxPXnAgYarFUXMh1zCPz432Y/USD",
          "volume_a": "158.6978670792",
          "volume_b": "21.76925474337",
          "high": "7.290000000001503",
          "low": "7.290000000001503",
          "open": "7.290000000001503",
          "close": "7.290000000001503"
        },
        {
          "currency_a": "rKiCet8SdvWxPXnAgYarFUXMh1zCPz432Y/USD",
          "currency_b": "rKiCet8SdvWxPXnAgYarFUXMh1zCPz432Y/XLM",
          "volume_a": "21.76925474337355",
          "volume_b": "217.6925474337355",
          "high": "0.1",
          "low": "0.1",
          "open": "0.1",
          "close": "0.1"
        }
      ]
    },
    "id": "example_book_changes",
    "status": "success",
    "type": "response",
    "warnings": [
      {
        "id": 2001,
        "message": "This is a clio server. clio only serves validated data. If you want to talk to rippled, include 'ledger_index':'current' in your request"
      }
    ]
  }

このレスポンスは標準フォーマットに従っており、正常に完了した場合は結果に次のフィールドが含まれます。

フィールド説明
changes配列このレジャーバージョンで更新された各オーダーブックのBook Updateオブジェクトのリスト。オーダーブックが更新されなかった場合、配列は空になります。
ledger_hashハッシュこのデータを取得する際に使用されたレジャーバージョンの識別ハッシュ。
ledger_indexレジャーインデックスこのデータを取得する際に使用されたレジャーバージョンのレジャーインデックス。
ledger_time数値このデータを取得する際に使用されたレジャーバージョンの公式クローズ時間。[リップルエポックからの秒数][]で表されます。
type文字列文字列bookChanges。これはオーダーブック更新メッセージであることを示します。
validated真偽値(省略可) trueの場合、検証済みのレジャーバージョンから取得されたことを表します。

Book Updateオブジェクト

Book Updateオブジェクトは、1つのレジャーバージョンにおける1つのオーダーブックの変更を表し、次のフィールドを含みます。

フィールド説明
currency_a文字列オーダーブック内の2つの通貨のうちの最初の通貨の識別子。XRPの場合、これは文字列XRP_dropsです。トークンの場合、base58で表された発行者のアドレスの後にスラッシュ(/)が続き、その後に通貨コードが続きます。これは3文字の標準コードまたは20文字の16進コードになります。
currency_b文字列オーダーブック内の2つの通貨のうちの2番目の通貨の識別子。これはcurrency_aと同じ形式ですが、currency_bはXRPになることはありません。
volume_a文字列 - 数値このレジャーバージョンでこのオーダーブックの取引を通じて移動した最初の通貨(つまりcurrency_a)の総量、または 取引高
volume_b文字列 - 数値このレジャーバージョンでこのオーダーブックの取引を通じて移動した2番目の通貨(つまりcurrency_b)の取引高。
high文字列 - 数値このレジャーバージョンでこのオーダーブックの取引を通じてマッチしたすべてのオファーの中で最も高い取引レート。最初の通貨と2番目の通貨の比率として表されます。(つまり、currency_a : currency_b。)
low文字列 - 数値このレジャーバージョンでこのオーダーブックの取引を通じてマッチしたすべてのオファーの中で最も低い取引レート。最初の通貨と2番目の通貨の比率として表されます。
open文字列 - 数値このレジャーバージョンでこのオーダーブックの取引を処理する前のオーダーブックの最初の取引の取引レート。最初の通貨と2番目の通貨の比率として表されます。
close文字列 - 数値このレジャーバージョンでこのオーダーブックの取引を処理した後のオーダーブックの最初の取引の取引レート。最初の通貨と2番目の通貨の比率として表されます。

XRP-トークンのオーダーブックでは、XRPは常にcurrency_aで表されます。トークン-トークンのオーダーブックでは、発行者と通貨コードでアルファベット順に並べ替えられます。

XRPに関する取引レートは常にXRPのdrop数を使用して計算されます。例えば、XRPからFOOへのレートが1.0 XRP に対して 1 FOOの場合、APIによって報告されたレートは1000000(1 FOOあたり100万ドロップのXRP)になります。

考えられるエラー

  • いずれかの汎用エラータイプ
  • lgrNotFound - ledger_hashまたはledger_indexで指定したレジャーが存在しないか、存在してはいるもののサーバが保有していません。
  • invalidParams - 1つ以上のフィールドの指定が正しくないか、1つ以上の必須フィールドが指定されていません。