MCAGAggregator Volatility Check

Before an MCAGAggregator contract accepts a newly transmitted rate in a new round, it checks that the new rate has not changed too drastically from the previous round. This is done by comparing the absolute differences between the new and previous rate are less than the _volatilityThreshold, given in a per-second cumulative rate.

For example, if the previous rate transmitted by the aggregator corresponds to a yearly coupon of 5% (or an on-chain per-second cumulative rate of 1000000001547125957863212449), and the _volatilityThreshold is set to 315522921573372069, or a yearly coupon of 1%, the next rate must be:

  • greater than a minimum rate of the current rate + the _volatilityThreshold, or 1000000001547125957863212449 + 315522921573372069 = 1000000001862648879436584518, corresponding to a yearly coupon of 4%

  • less than a maximum rate of the current rate + the _volatilityThreshold, or 1000000001547125957863212449 - 315522921573372069 = 1000000001231603036289840380, corresponding to a yearly coupon of 6%

Last updated