# 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%`


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://docs.kuma.bond/kuma-protocol/developers/smart-contract-architecture/rate-feed/mcagaggregator-volatility-check.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
