我正在努力理解如何计算从ChainLink文档示例派生出来的价格。
下面是我根据提供的示例中的代码进行的计算:
// AMPL/USD / ETH/USD = AMPL/ETH
//
// decimals: 18
// baseDecimals (AMPL/USD): 18
// quoteDecimals (ETH/USD): 8
//
// basePrice (AMPL/USD): 1042171653544521600
// quotePrice (ETH/USD): 286133898282
//
// basePrice (AMPL/ETH scaled): 1042171653544521600
// quotePrice (ETH/USD scaled): 286133898282 * 10^(18-8) =
// 2.861339e+21
// AMPL/ETH (actual): 362708990937550
// AMPL/ETH (derived): (104217165.354 * 10^18) / 2.861339e+21 =
// 36422.5159459但实际价格是0.0003673 ETH (根据共同市场上限)。来自latestRoundData的ChainLink AMPL/ETH价格饲料合同函数返回362708990937550。

看来我不明白scalePrice函数是如何工作的。如何计算AMPL/ETH的正确推导价格?
发布于 2022-05-06 00:04:07
@vasiliy-yorkin
ChainLink文档示例转换这些值,以便有18位小数点。
latestRoundData函数来自于ChainLink AMPL/ETH价格提要合同,它返回的值以wei为单位。
362708990937550 wei = 0.00036270899093755 ETH
https://stackoverflow.com/questions/72117254
复制相似问题