通貨供給量の照会
初級⚓︎
取引所や市場データアグリゲーターは、時価総額やトークン指標を表示するために正確な供給量の数値を必要とします。
Symbolネットワークは、専用のRESTエンドポイントを通じて、ネイティブ通貨であるXYMの最大供給量、総供給量、および循環供給量を公開しています。
このチュートリアルでは、それぞれの値を照会し、それらから追加の指標を導き出す方法を説明します。
前提条件⚓︎
このチュートリアルでは、SDKを必要とせずにSymbol REST APIを使用します。 HTTPリクエストを行う方法さえあれば実行可能です。
完全なコード⚓︎
このスニペットでは、 NODE_URL 環境変数を使用してSymbol APIノードを設定します。
値が指定されない場合は、デフォルトのテストネットノードが使用されます。
デフォルトノードはテストネットです
デフォルトのノードはテストネットを指しています。
本番環境の供給量データについては、 NODE_URL をメインネットノードに設定してください。
利用可能なメインネットノードのリストについては、symbol.fyi/nodesを参照してください。
コード解説⚓︎
供給量の値の取得⚓︎
各供給量の値は、専用のエンドポイントを通じて利用できます。
/network/currency/supply/maxGET: ネットワークプロパティで設定されている、XYMのハードキャップ(最大発行上限)。/network/currency/supply/totalGET: 現在までに発行(ミント)されたXYMの総量。 新しいXYMは、新しいブロックごとのインフレーション報酬を通じて徐々に発行されます。/network/currency/supply/circulatingGET: 総供給量から、ネメシスアカウント、トレジャリー(財務)アカウント、およびハーベスト、モザイクレンタル、ネームスペースレンタルの手数料を収集するシンクアカウントが保持する残高を差し引いた値。
これら3つのエンドポイントはすべて、(JSONではなく)プレーンテキストの数値を返します。これらは絶対単位ではなく、すでに小数点以下の桁数を含む全体単位(例: 8999999999.000000 )で表されています。
注意: 循環供給量はノードに依存します
非循環アカウントのリストは各ノードオペレーターによって(ノードの rest.json ファイル内で)設定されるため、異なるノードが異なる循環供給量の値を報告する可能性があります。
供給量データを統合する場合は、デフォルト設定を持つ信頼できるノードを照会するようにしてください。
追加の指標の導出⚓︎
3つの値をすべて取得した後、コードは2つの追加の指標を導き出します。
- Non-circulating (非循環): 総供給量と循環供給量の差。
- Unminted (未発行): 最大供給量と総供給量の差。今後発行される予定の残りのXYMを表します。
出力⚓︎
以下の出力は、通貨供給量を照会する典型的な実行例を示しています。
これらの値はテストネットノードからのものであり、メインネットの供給量の数値を反映していません。
出力は、XYMの供給量の完全な内訳を示しています。
- 最大供給量 (maximum supply) (2行目): XYMのハードキャップです。
- 総供給量 (total supply) (3行目): すべてのXYMがまだ発行されているわけではないため、最大供給量より少なくなります。
- 循環供給量 (circulating supply) (4行目): 一部の発行済みXYMは非循環アカウントによって保持されているため、さらに少なくなります。
- 非循環供給量 (non-circulating supply) (5行目): 総供給量と循環供給量の差を表します。
- 未発行供給量 (unminted supply) (6行目): インフレーション報酬を通じて徐々に発行される残りのXYMを示しています。
結論⚓︎
このチュートリアルでは、以下の方法を説明しました。
| ステップ | 関連ドキュメント |
|---|---|
| 最大供給量の取得 | /network/currency/supply/max GET |
| 総供給量の取得 | /network/currency/supply/total GET |
| 循環供給量の取得 | /network/currency/supply/circulating GET |
| 追加の指標の導出 | - |
次のステップ⚓︎
特定のアカウントのXYM残高を確認するには、アカウント残高の照会 チュートリアルを参照してください。