You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
@@ -315,27 +314,25 @@ Each abci end block call, the operations to update prices.
315
314
At every end block, the Validator Price of all supported feeds will be obtained and checked if it is within the acceptance period (1 interval).
316
315
Any validator that does not submit a price within this period is considered to have miss-reported and will be deactivated unless the Supported feeds are in a transition period.
317
316
Accepted Validator Prices of the same SignalID will be weighted and median based on the recency of the price and the power of the validator who submitted the price.
318
-
The median price is then set as the Price.
317
+
The median price is then set as the Price. Here is the price aggregation logic:
319
318
320
-
#### Price Aggregation logic
321
-
322
-
**Input**
319
+
#### Input
323
320
324
321
A list of PriceFeedInfo objects, each containing:
325
322
-`Price`: The reported price from the feeder
326
323
-`Deviation`: The price deviation
327
324
-`Power`: The feeder's power
328
325
-`Timestamp`: The time at which the price is reported
329
326
330
-
**Objective**
327
+
#### Objective
331
328
332
-
An aggregated price from the list of priceFeedInfo.
329
+
-An aggregated price from the list of priceFeedInfo.
333
330
334
-
**Assumption**
331
+
#### Assumption
335
332
336
333
1. No PriceFeedInfo has a power that exceeds 25% of the total power in the list.
337
334
338
-
**Procedure**
335
+
#### Procedure
339
336
340
337
1. Order the List:
341
338
@@ -365,73 +362,6 @@ An aggregated price from the list of priceFeedInfo.
365
362
- Compute the weighted median of the generated points to determine the final aggregated price.
366
363
- The weighted median price is the price at which the cumulative power (sorted by increasing price) crosses half of the total weighted power.
At every `BlocksPerFeedsUpdate` block(s), the supported feeds will be re-calculated based on the parameters of the module (e.g. `MinInterval`, `MaxSupportedFeeds`).
0 commit comments