[JA] translate get_aggregate_price API

This commit is contained in:
tequ
2024-12-13 15:40:01 +09:00
parent 9215620439
commit 4aa8199ce3

View File

@@ -0,0 +1,170 @@
---
html: get_aggregate_price.html
parent: ledger-methods.html
blurb: 指定されたOracleインスタンスの集計価格を計算します。
labels:
- オラクル
---
# get_aggregate_price
_([PriceOracle amendment][])_
[[ソース]](https://github.com/XRPLF/rippled/blob/master/src/ripple/rpc/handlers/GetAggregatePrice.cpp "ソース")
`get_aggregate_price`メソッドは、指定された`Oracle`オブジェクトの集計価格を取得し、平均値、中央値、整形された平均値の3つの価格情報を返します。
## リクエストフォーマット
リクエストの例:
{% tabs %}
{% tab label="WebSocket" %}
```json
{
"command": "get_aggregate_price",
"ledger_index": "current",
"base_asset": "XRP",
"quote_asset": "USD",
"trim": 20,
"oracles": [
{
"account": "rp047ow9WcPmnNpVHMQV5A4BF6vaL9Abm6",
"oracle_document_id": 34
},
{
"account": "rp147ow9WcPmnNpVHMQV5A4BF6vaL9Abm7",
"oracle_document_id": 56
},
{
"account": "rp247ow9WcPmnNpVHMQV5A4BF6vaL9Abm8",
"oracle_document_id": 2
},
{
"account": "rp347ow9WcPmnNpVHMQV5A4BF6vaL9Abm9",
"oracle_document_id": 7
},
{
"account": "rp447ow9WcPmnNpVHMQV5A4BF6vaL9Abm0",
"oracle_document_id": 109
}
]
}
```
{% /tab %}
{% tab label="JSON-RPC" %}
```json
{
"method": "get_aggregate_price",
"params": [
{
"ledger_index": "current",
"base_asset": "XRP",
"quote_asset": "USD",
"trim": 20,
"oracles": [
{
"account": "rNZ9m6AP9K7z3EVg6GhPMx36V4QmZKeWds",
"oracle_document_id": 34
},
{
"account": "rMVKq8zrVsJZQFEiTARyC6WfZznhhLMcNi",
"oracle_document_id": 100
},
{
"account": "r92kJTnUbUUq15t2BBZYGYxY79RnNc7rLQ",
"oracle_document_id": 2
}
]
}
]
}
```
{% /tab %}
{% /tabs %}
[試してみる >](/resources/dev-tools/websocket-api-tool?server=wss%3A%2F%2Fs.devnet.rippletest.net%3A51233%2F#get_aggregate_price)
リクエストには以下のパラメータが含まれています:
| フィールド | 型 | 必須? | 説明 |
| ---------------- | ------ | ------ | ---- |
| `base_asset` | 文字列 | はい | 価格を計算する資産の通貨コード。 |
| `quote_asset` | 文字列 | はい | 基軸資産の価格を計算する資産の通貨コード。 |
| `trim` | 数値 | いいえ | 外れ値を削除する割合。有効な削除範囲は1-25。削除範囲が含まれている場合、APIは整形された平均値の統計情報を返します。 |
| `trim_threshold` | 数値 | いいえ | 古い価格データをフィルタリングする秒単位の時間範囲を定義します。デフォルト値は0で、データをフィルタリングしません。 |
| `oracles` | 配列 | はい | Oracleを識別するオブジェクトの配列。Oracleオブジェクトは1から200のOracleの識別子をリストする必要があります。 |
`oracles`配列の各メンバーは、次のフィールドを持つOracleオブジェクトです。
| フィールド | 型 | 必須? | 説明 |
| -------------------- | ------ | ------ | -------------------------------------------- |
| `account` | 文字列 | はい | `Oracle`オブジェクトを制御するXRPLアカウント |
| `oracle_document_id` | 数値 | はい | `Account`の価格Oracleの一意の識別子 |
## レスポンスフォーマット
レスポンスの例:
```json
{
"result": {
"entire_set": {
"mean": "0.78",
"size": 3,
"standard_deviation": "0.03464101615137754"
},
"ledger_current_index": 3677185,
"median": "0.8",
"time": 1724877762,
"trimmed_set": {
"mean": "0.78",
"size": 3,
"standard_deviation": "0.03464101615137754"
},
"validated": false
},
"status": "success",
"type": "response"
}
```
| フィールド | 型 | 説明 |
| -------------------------------- | ------------- | ---- |
| `entire_set` | オブジェクト | 収集されたOracleの価格の統計情報。 |
| `entire_set.mean` | 文字列 - 数値 | 単純な平均値。 |
| `entire_set.size` | 数値 | 平均値を計算するデータセットのサイズ。 |
| `entire_set.standard_deviation` | 文字列 - 数値 | 標準偏差。 |
| `trimmed_set` | オブジェクト | 整形されたOracleの価格の統計情報。`trim`フィールドがリクエストに指定されている場合にのみ表示されます。 |
| `trimmed_set.mean` | 文字列 - 数値 | 整形されたデータの単純な平均値。 |
| `trimmed_set.size` | 数値 | 整形された平均値を計算するデータセットのサイズ。 |
| `trimmed_set.standard_deviation` | 文字列 - 数値 | 整形されたデータの標準偏差。 |
| `time` | 数値 | すべての`LastUpdateTime`値の中で最も新しいタイムスタンプ。Unix時間で表されます。 |
{% admonition type="info" name="注記" %}
- 指定されたOracleの最新の`Oracle`オブジェクトが取得されます。
- すべてのオブジェクトの中で最も新しい`LastUpdateTime`が上限時間として選択されます。
- `Oracle`オブジェクトは、指定された`base_asset`/`quote_asset`ペアを含み、`AssetPrice`フィールドを持ち、その`LastUpdateTime`が指定された時間範囲内である場合、集計データセットに含まれます。
- `Oracle`オブジェクトが指定されたトークンペアの`AssetPrice`を含まない場合、最大3つの過去の`Oracle`オブジェクトが調査され、要件を満たす最新のものが含まれます。
{% /admonition %}
## 起こりうるエラー
- すべての[汎用エラータイプ][]。
- `invalidParams` - 1つ以上のフィールドが正しく指定されていないか、1つ以上の必須フィールドが欠けています。
- `internal` - `trim_threshold`の設定によりすべての価格が削除された。
- `objectNotFound` - データセットに価格がない。
- `oracleMalformed` - `oracles`配列が不正。少なくとも1つのオブジェクトフィールドが正しく指定されていないか、オブジェクトの数が1から200の範囲外です。
-
{% raw-partial file="/docs/_snippets/common-links.md" /%}