-
bitcoin $79248.069182 USD
1.09% -
ethereum $2511.064695 USD
1.53% -
tether $0.999850 USD
0.01% -
bnb $756.247700 USD
0.89% -
xrp $1.438158 USD
3.79% -
usd-coin $0.999958 USD
0.01% -
solana $104.884928 USD
2.06% -
tron $0.339008 USD
0.51% -
hyperliquid $86.722420 USD
3.32% -
zcash $1235.386194 USD
9.84% -
dogecoin $0.090749 USD
1.59% -
monero $503.916600 USD
-2.09% -
chainlink $12.600233 USD
-0.32% -
unus-sed-leo $9.181565 USD
-0.39% -
cardano $0.221251 USD
2.14%
Uniswap Price Oracle: 使用方法? (開発者ガイド)
Uniswap price oracles use time-weighted average prices (TWAPs) from cumulative reserve data—developers compute averages over custom windows by subtracting and dividing stored `priceCumulativeLast` values by elapsed time.
2026/04/04 16:40
Uniswap 価格オラクルについて
1. Uniswap 価格オラクルは、瞬間的なスポット価格ではなく、過去のプールリザーブから導出される時間加重平均価格 (TWAP) に依存します。
2. 各オラクルは、ブロックごとに更新される累積価格値を保存するため、開発者はカスタムの時間枠にわたる平均を計算できます。
3. コアメカニズムには、ペアコントラクトからのprice0CumulativeLast変数とprice1CumulativeLast変数の読み取りが含まれます。
4. これらの値は、価格と最後の更新からの経過時間 (秒単位) の合計を表します。
5. 開発者は、 observe()を呼び出すか、2 つのスナップショットの差を手動で計算して、必要な期間にわたる平均価格を導き出す必要があります。
Oracle 監視のセットアップ
1. Oracle の機能がアクティブになる前に、 initialize()を使用してプールを初期化する必要があります。
2. #observe()関数を使用すると、呼び出しごとに最大 512 個の観測値まで、複数の価格ポイントを一度に取得できます。
3. 観測スロットは、512 を法とするインデックスを持つ固定サイズの配列です。各スロットにはタイムスタンプと価格データが保持されます。
4. 開発者は、要求された時間枠が利用可能な最も古い観測の経過期間を超えないようにする必要があります。
5. 要求されたタイムスタンプの観測が存在しない場合、フォールバック ロジックがオフチェーンで実装されていない限り、システムは元に戻ります。
時間加重平均価格の計算
1. TWAP を計算するには、終了時の累積価格から開始時の累積価格を引き、経過秒数で割ります。
2. 式は次のとおりです: (P_end - P_start) / (t_end - t_start) 。ここで、P は累積価格を示し、t はブロックのタイムスタンプを示します。
3. token0/token1 ペアの場合、 price0CumulativeLast はtoken0 ごとの token1 の比率を生成し、 price1CumulativeLastは token1 ごとの token0 を生成します。
4. 固定小数点演算により精度が失われる可能性があります。開発者は中間計算にQ112.112形式を使用する必要があります。
5. オフチェーンの計算では、多くの場合、タイムスタンプのスプーフィングによる操作を防ぐために、オンチェーンのタイムスタンプと同期し、ブロック番号を検証する必要があります。
セキュリティに関する考慮事項と制限事項
1. オラクルは、攻撃者が単一ブロック内でリザーブを操作できるため、十分な時間枠なしで使用された場合、フラッシュ ローン攻撃に対して脆弱になります。
2. 観察期間が短いと、低流動性条件下でのボラティリティの急上昇やフロントランニングの影響を受けやすくなります。
3. 開発者は、ペア コントラクトが正しいバージョンの Uniswap V2 または V3 Oracle インターフェイスを実装していることを確認する必要があります。
4. 再入保護は監視機能に組み込まれていますが、カスタム ラッパーは徹底的に監査されないとリスクを再導入する可能性があります。
5. 古いデータに対するネイティブのエラー処理は存在しません。アプリケーションは、古いスロットを監視する場合、タイムアウトとフォールバックのメカニズムを実装する必要があります。
よくある質問
Q: Uniswap オラクルは、外部呼び出しなしで Solidity スマート コントラクトで直接使用できますか? A: はい、ただし保存された累積値を観察する場合にのみ使用できます。実際の TWAP 計算には時間デルタの計算が必要であり、これにはオフチェーンの前処理またはオンチェーンのタイムスタンプ検証のいずれかが必要です。
Q: 保存されている最も古いスロットよりも古い観測をリクエストした場合はどうなりますか? A: 呼び出し元が循環バッファ範囲内の有効なインデックスを提供しない限り、 observe()関数はTooOldエラーで元に戻ります。
Q: 高価値の DeFi プロトコルに Uniswap V2 オラクルを使用するのは安全ですか? A: 選択した時間枠によって異なります。操作に対する耐性が必要なプロトコルでは、24 時間を超えるウィンドウを使用し、冗長性を確保するために他のデータ ソースと組み合わせる必要があります。
Q: Uniswap V3 オラクルは、使用パターンの点で V2 と大きく異なりますか? A: はい、V3 ではティックベースの価格設定と集中流動性が導入されており、開発者は不均一な時間間隔にわたる累積価格データを解釈する際にアクティブな流動性の範囲を考慮する必要があります。
免責事項:info@kdj.com
提供される情報は取引に関するアドバイスではありません。 kdj.com は、この記事で提供される情報に基づいて行われた投資に対して一切の責任を負いません。暗号通貨は変動性が高いため、十分な調査を行った上で慎重に投資することを強くお勧めします。
このウェブサイトで使用されているコンテンツが著作権を侵害していると思われる場合は、直ちに当社 (info@kdj.com) までご連絡ください。速やかに削除させていただきます。
- 市場センチメントの変化の中、ビットコインは臨界の3万8000ドルゾーン付近で推移
- 2026-09-09 16:45:01
- 9月に再びクジラの蓄積が見られる中、XRP価格はブレイクアウトの準備が整っている
- 2026-09-09 12:35:01
- ポーランドの仮想通貨捜査拡大で5人目のゾンダクリプト容疑者を起訴
- 2026-09-08 20:45:01
- コスモス価格予測: $ATOM はマルチチェーンの勢いの中で大ブレイクアウトに注目 – IMP レベルが明らかに!
- 2026-09-08 20:45:01
- Solana の V1 トランザクション アップグレードにより、ZK 証明とトランザクション容量の強化が解放され、ブロックチェーンのプライバシーとスケーリングが再構築されます
- 2026-09-08 20:40:02
- XRP価格ウォッチ:市場の変化の中でアナリストが2ドルの目標に注目する中、重要な日が迫る
- 2026-09-08 20:40:02
関連知識
OKX ポジションにマージンを追加するにはどうすればよいですか?
2026-09-10 07:20:15
市場のボラティリティパターン1. 2022 年第 3 四半期以降、Bitcoin の取引日の 68% 以上で、24 時間枠内で 15% を超える価格変動が発生しました。 2. イーサリアムは、流動性が低い期間、特に UTC の 02:00 ~ 06:00 の間、一貫して BTC よりも高い日中ボラテ...
OKX 先物で証拠金モードを変更するにはどうすればよいですか?
2026-09-09 00:00:07
マージンモードの基礎を理解する1. 証拠金モードは、OKX 先物取引のポジション全体に担保をどのように割り当てるかを決定します。 2. 分離証拠金は各ポジションに専用の担保を割り当て、取引ごとのリスクエクスポージャを制限します。 3. クロスマージン株式のすべてのオープンポジションにわたる利用可...
OKX で BTC/USDT マーケットを見つけるには?
2026-09-10 01:20:19
市場シンボルのマッピング1. OKX は、一般的な取引ペアの表記とは異なる標準化された商品 ID 形式を使用します。シンボルBTC-USDTは、すべての OKX API エンドポイントおよび UI 要素で使用される公式の機器 ID です。 2. BTC/USDT や BTCUSDT などの従来の表記...
Bybit先物にトレーリングストップを設定するにはどうすればよいですか?
2026-09-09 20:20:00
トレーリングストップの仕組みを理解する1. Bybit Futures のトレーリング ストップは、市場がトレーダーに有利に動くにつれて自動的に調整される動的な注文タイプです。 2. エントリーポイントからではなく、現在の市場価格から一定の距離 (価格またはパーセンテージで測定) を維持します。 3...
Bybit先物でマージンモードを切り替える方法?
2026-09-09 06:00:29
Bitcoin 半減力学1. Bitcoin のプロトコルは、ブロック報酬が約 210,000 ブロックごとに半分になる固定発行スケジュールを強制します。 2. このイベントはおよそ 4 年ごとに発生し、ブロックごとに流通する新しい BTC の数を直接減少させます。 3. マイナーは、2020 年の...
Bybitで未決注文をキャンセルするにはどうすればよいですか?
2026-09-09 07:40:02
Bitcoin 半減力学1. Bitcoin のプロトコルでは、ブロック報酬を通じて新しいユニットが導入され、2,100 万コインの固定供給上限が強制されます。 2. 210,000 ブロックごと、つまり約 4 年ごとに、ブロック報酬は半分に減ります。これは半減として知られるプロセスです。 3. 最...
OKX ポジションにマージンを追加するにはどうすればよいですか?
2026-09-10 07:20:15
市場のボラティリティパターン1. 2022 年第 3 四半期以降、Bitcoin の取引日の 68% 以上で、24 時間枠内で 15% を超える価格変動が発生しました。 2. イーサリアムは、流動性が低い期間、特に UTC の 02:00 ~ 06:00 の間、一貫して BTC よりも高い日中ボラテ...
OKX 先物で証拠金モードを変更するにはどうすればよいですか?
2026-09-09 00:00:07
マージンモードの基礎を理解する1. 証拠金モードは、OKX 先物取引のポジション全体に担保をどのように割り当てるかを決定します。 2. 分離証拠金は各ポジションに専用の担保を割り当て、取引ごとのリスクエクスポージャを制限します。 3. クロスマージン株式のすべてのオープンポジションにわたる利用可...
OKX で BTC/USDT マーケットを見つけるには?
2026-09-10 01:20:19
市場シンボルのマッピング1. OKX は、一般的な取引ペアの表記とは異なる標準化された商品 ID 形式を使用します。シンボルBTC-USDTは、すべての OKX API エンドポイントおよび UI 要素で使用される公式の機器 ID です。 2. BTC/USDT や BTCUSDT などの従来の表記...
Bybit先物にトレーリングストップを設定するにはどうすればよいですか?
2026-09-09 20:20:00
トレーリングストップの仕組みを理解する1. Bybit Futures のトレーリング ストップは、市場がトレーダーに有利に動くにつれて自動的に調整される動的な注文タイプです。 2. エントリーポイントからではなく、現在の市場価格から一定の距離 (価格またはパーセンテージで測定) を維持します。 3...
Bybit先物でマージンモードを切り替える方法?
2026-09-09 06:00:29
Bitcoin 半減力学1. Bitcoin のプロトコルは、ブロック報酬が約 210,000 ブロックごとに半分になる固定発行スケジュールを強制します。 2. このイベントはおよそ 4 年ごとに発生し、ブロックごとに流通する新しい BTC の数を直接減少させます。 3. マイナーは、2020 年の...
Bybitで未決注文をキャンセルするにはどうすればよいですか?
2026-09-09 07:40:02
Bitcoin 半減力学1. Bitcoin のプロトコルでは、ブロック報酬を通じて新しいユニットが導入され、2,100 万コインの固定供給上限が強制されます。 2. 210,000 ブロックごと、つまり約 4 年ごとに、ブロック報酬は半分に減ります。これは半減として知られるプロセスです。 3. 最...
すべての記事を見る














