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
Copy file name to clipboardExpand all lines: docs/1-intro.mdx
+1-1Lines changed: 1 addition & 1 deletion
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -180,7 +180,7 @@ Gain a deep understanding of the core concepts that differentiate Flare from oth
180
180
Its native data protocols - [Flare Time Series Oracle](/ftso/overview) and [Flare Data Connector](/fdc/overview) - are enshrined directly into the core [Flare Systems Protocol](/network/fsp), inheriting the full economic security of the Flare network.
181
181
182
182
<ThemedImage
183
-
alt="Diagram of Flare's architecture, illustrating the Flare Systems Protocol with its enshrined data protocols including the Flare Time Series Oracle and Flare Data Connector."
183
+
alt="FlareSystems Protocol with enshrined FTSO and FDC."
The **F**lare **T**ime **S**eries **O**racle **(FTSO)** is an [enshrined oracle](/support/terminology#enshrined-oracle) that provides decentralized data feeds to the Flare network. Since the release of FTSOv1 two years ago, users and applications on Flare have enjoyed consistent and reliable pricing, with zero downtime or failures. FTSOv2 builds on the robust foundation laid by its predecessor, offering several enhancements:
22
+
The **F**lare **T**ime **S**eries **O**racle **(FTSO)** is an [enshrined oracle](/support/terminology#enshrined-oracle) that provides decentralized data feeds to the Flare network.
23
+
Since the release of FTSOv1 two years ago, users and applications on Flare have enjoyed consistent and reliable pricing, with zero downtime or failures.
24
+
FTSOv2 builds on the robust foundation laid by its predecessor, offering several enhancements:
13
25
14
26
-**Secure.** Enshrined into Flare's core protocol, every oracle feed in FTSOv2 inherits the economic security of the entire network.
15
27
@@ -23,10 +35,12 @@ The **F**lare **T**ime **S**eries **O**racle **(FTSO)** is an [enshrined oracle]
23
35
24
36
## Architecture
25
37
26
-
FTSOv2 ensures fast, secure, and manipulation-resistant feeds by using a stake-weighted verifiable randomness function (VRF) to select a sample of data providers for incremental delta updates. These updates maintain long-term accuracy by anchoring to Scaling feeds, which use a full commit-reveal process and update every 90 seconds. During high market volatility, volatility incentives can increase the sample size of data providers for a quicker response to market conditions.
38
+
FTSOv2 ensures fast, secure, and manipulation-resistant feeds by using a stake-weighted verifiable randomness function (VRF) to select a sample of data providers for incremental delta updates.
39
+
These updates maintain long-term accuracy by anchoring to Scaling feeds, which use a full commit-reveal process and update every 90 seconds.
40
+
During high market volatility, volatility incentives can increase the sample size of data providers for a quicker response to market conditions.
27
41
28
42
<ThemedImage
29
-
alt="FTSO Price Comparison"
43
+
alt="Diagram comparing FTSO block-latency feeds vs centralized exchange price updates."
@@ -35,11 +49,14 @@ FTSOv2 ensures fast, secure, and manipulation-resistant feeds by using a stake-w
35
49
36
50
The FTSOv2 architecture consists of four key components:
37
51
38
-
1.**Verifiably Random Selection:** Each block on Flare triggers the selection of data providers to deliver the next feed update using a stake-weighted Verifiable Randomness Function. This ensures fairness and resistance to manipulation.
52
+
1.**Verifiably Random Selection:** Each block on Flare triggers the selection of data providers to deliver the next feed update using a stake-weighted Verifiable Randomness Function.
53
+
This ensures fairness and resistance to manipulation.
39
54
40
-
2.**Incremental Delta Update:** Selected data providers submit new feed updates as fixed incremental deltas applied to the previous feed value. This maintains reliable and continuous updates, ensuring integrity and accuracy.
55
+
2.**Incremental Delta Update:** Selected data providers submit new feed updates as fixed incremental deltas applied to the previous feed value.
56
+
This maintains reliable and continuous updates, ensuring integrity and accuracy.
41
57
42
-
3.**Volatility Incentive Mechanism:** To handle periods of high market volatility, FTSOv2 introduces volatility incentives, temporarily increasing the sample size of selected data providers in exchange for a fee. This permissionless mechanism ensures a faster response to significant price movements.
58
+
3.**Volatility Incentive Mechanism:** To handle periods of high market volatility, FTSOv2 introduces volatility incentives, temporarily increasing the sample size of selected data providers in exchange for a fee.
59
+
This permissionless mechanism ensures a faster response to significant price movements.
43
60
44
61
4.**Anchoring to Scaling Feeds:** Scaling feeds, which employ a full commit-reveal process across all data providers, act as anchors to ensure long-term accuracy.
45
62
@@ -51,22 +68,30 @@ For a detailed explanation of the FTSOv2 mechanism, read the [FTSOv2 whitepaper]
51
68
52
69
### Verifiably Random Selection
53
70
54
-
Every block on Flare, generated approximately every 1.8 seconds, initiates the selection of a sample of data providers to deliver the next feed update. This selection process leverages a stake-weighted verifiable randomness function (VRF), where the likelihood of each data provider being chosen is proportional to their stake. The expected sample size is one, and data providers have no control over, nor knowledge of, when they will be selected.
71
+
Every block on Flare, generated approximately every 1.8 seconds, initiates the selection of a sample of data providers to deliver the next feed update.
72
+
This selection process leverages a stake-weighted verifiable randomness function (VRF), where the likelihood of each data provider being chosen is proportional to their stake.
73
+
The expected sample size is one, and data providers have no control over, nor knowledge of, when they will be selected.
55
74
56
-
In detail, each block has a unique seed value, used by FTSOv2 data providers to generate a personal random score. This score, coupled with a cryptographic proof, ensures its authenticity and verifiability, preventing prediction or manipulation by others. Data providers are chosen based on their scores: those with scores below a certain threshold are selected to make updates. The selection probability is proportional to the data provider's stake, allowing for weighted sampling where participants with a higher stake have a greater chance of being selected. This mechanism ensures fairness and resistance to manipulation.
75
+
In detail, each block has a unique seed value, used by FTSOv2 data providers to generate a personal random score.
76
+
This score, coupled with a cryptographic proof, ensures its authenticity and verifiability.
77
+
Data providers are chosen based on their scores: those with scores below a certain threshold are selected to make updates.
78
+
The selection probability is proportional to the data provider's stake, allowing for weighted sampling where participants with a higher stake have a greater chance of being selected.
57
79
58
-
To maintain security, the seed value itself evolves pseudo-randomly. This approach balances security and randomness, preventing adversaries from influencing the selection process. The system is designed to be statistically robust, ensuring a reliable and continuous selection of participants to uphold the integrity and accuracy of updates.
80
+
To maintain security, the seed value itself evolves pseudo-randomly. This approach balances security and randomness, preventing adversaries from influencing the selection process.
81
+
The system is designed to be statistically robust, ensuring a reliable and continuous selection of participants to uphold the integrity and accuracy of updates.
59
82
60
83
### Incremental Delta Update
61
84
62
-
The selected data providers submit the new feed update, which is a fixed incremental delta applied to the previous feed value. The base increment size for all updates is `1/2^13 ≈ 0.0122%`, a value determined through extensive market analysis and approved by Flare governance. The delta can be in one of three directions:
85
+
The selected data providers submit the new feed update, which is a fixed incremental delta applied to the previous feed value.
86
+
The base increment size for all updates is `1/2^13 ≈ 0.0122%`, a value determined through extensive market analysis and approved by Flare governance.
87
+
The delta can be in one of three directions:
63
88
64
89
-**Up (+)**: The new feed value is incrementally increased from the previous value.
65
90
-**Down (–)**: The new feed value is incrementally decreased from the previous value.
66
91
-**Unchanged (0)**: The new feed value remains the same as the previous value.
67
92
68
93
<ThemedImage
69
-
alt="FTSO Update Architecture"
94
+
alt="Diagram of delta updates showing up, down, unchanged adjustments."
- $p$ is the protocol parameter named _precision_, and
88
113
- $\delta$ is the update provided by a data provider, with $\delta(t)$ being one of the three options $\{-1, 0, 1\}$.
89
114
90
-
The precision parameter is set to a default value of $p = 1/2^{13} ≈ 0.0122\%$, which has been rigorously tested against price feeds from centralized exchanges. Another key protocol parameter is the average number of updates submitted per block, with a default value of $e = 1$. The average number of updates submitted per block $e$ can be temporarily increased in exchange for a fee using the volatility incentive mechanism.
115
+
The precision parameter is set to a default value of $p = 1/2^{13} ≈ 0.0122\%$, which has been rigorously tested against price feeds from centralized exchanges.
116
+
Another key protocol parameter is the average number of updates submitted per block, with a default value of $e = 1$.
117
+
The average number of updates submitted per block $e$ can be temporarily increased in exchange for a fee using the volatility incentive mechanism.
91
118
92
119
</details>
93
120
94
121
### Volatility Incentive Mechanism
95
122
96
-
From statistical analysis, FTSOv2's mechanism is capable of capturing over 99% of all price movements under normal market conditions. However, during periods of high market volatility, the small size of each increment may be slower to reflect large price movements. To address this, FTSOv2 introduces volatility incentives, which allows for a temporary increase in the sample size of data providers in exchange for a fee. The volatility incentive mechanism is permissionless, enabling anyone on Flare to trigger it by paying the required fee.
123
+
From statistical analysis, FTSOv2's mechanism is capable of capturing over 99% of all price movements under normal market conditions.
124
+
However, during periods of high market volatility, the small size of each increment may be slower to reflect large price movements.
125
+
To address this, FTSOv2 introduces volatility incentives, which allows for a temporary increase in the sample size of data providers in exchange for a fee.
126
+
The volatility incentive mechanism is permissionless, enabling anyone on Flare to trigger it by paying the required fee.
97
127
98
-
Typically, the expected sample size is one. With volatility incentives, this sample size is temporarily increased, allowing for more updates and quicker responses to large price movements. Importantly, only the expected sample size increases, not the actual sample size, which further helps protect the protocol against various statistical attacks.
128
+
Typically, the expected sample size is one.
129
+
With volatility incentives, this sample size is temporarily increased, allowing for more updates and quicker responses to large price movements.
130
+
Importantly, only the expected sample size increases, not the actual sample size, which further helps protect FTSOv2 against various statistical attacks.
99
131
100
132
### Anchoring to Scaling
101
133
102
-
FTSOv2's block-latency feeds are designed to be statistically self-correcting. To further ensure their long-term accuracy, FTSOv2 uses the anchor feeds from [Scaling](/ftso/scaling/overview). Anchor feeds utilize a full commit-reveal process across all data providers with an inter-quartile range (IQR) band calculation, and update once every voting epoch (i.e. 90 seconds). Data providers are only rewarded if the block-latency feeds converge to within `±0.25%` of the anchor feeds every voting epoch.
134
+
FTSOv2's block-latency feeds are designed to be statistically self-correcting.
135
+
To further ensure their long-term accuracy, FTSOv2 uses the anchor feeds from [Scaling](/ftso/scaling/overview).
136
+
Anchor feeds utilize a full commit-reveal process across all data providers with an inter-quartile range (IQR) band calculation, and update once every voting epoch (i.e. 90 seconds).
137
+
Data providers are rewarded when the block-latency feeds remains within `±0.25%` of the anchor feeds every voting epoch.
0 commit comments