pub struct StylizedFactsReport {
pub excess_kurtosis: f64,
pub abs_return_autocorr: f64,
pub vol_clustering_acf: f64,
pub gain_loss_skew: f64,
pub aggregational_gaussianity: f64,
pub zumbach_asymmetry: f64,
}Expand description
The measured stylized-facts profile of a return series. Each field is a plain
statistic; the realism predicates (StylizedFactsReport::has_fat_tails …)
compare them against a RealismThresholds.
Fields§
§excess_kurtosis: f64Excess kurtosis (kurtosis - 3). > 0 ⇒ fatter tails than a Gaussian.
abs_return_autocorr: f64Lag-1 autocorrelation of |returns| — the cleanest single volatility-clustering signal (magnitudes persist even when signed returns do not).
vol_clustering_acf: f64Mean autocorrelation of squared returns over the first several lags — the slow-decaying persistence that is the hallmark of volatility clustering.
gain_loss_skew: f64Skewness of returns — the gain/loss asymmetry (equity indices fall faster than they rise, so this is typically negative). Reported, not gated.
aggregational_gaussianity: f64Excess-kurtosis drop under temporal aggregation (raw − aggregated). > 0 ⇒
the distribution becomes more Gaussian at longer horizons (aggregational
Gaussianity); the aggregation block size is AGGREGATION_BLOCK.
zumbach_asymmetry: f64Time-reversal-asymmetry (Zumbach/leverage) score: lev_fwd − lev_rev, the
difference between “past return → future volatility” and “past volatility →
future return” lead-lag correlation. ~0 under time reversal; markedly
non-zero (usually negative, from the leverage effect) in real markets.
Implementations§
Source§impl StylizedFactsReport
impl StylizedFactsReport
Sourcepub fn has_fat_tails(&self, t: &RealismThresholds) -> bool
pub fn has_fat_tails(&self, t: &RealismThresholds) -> bool
Fat tails: excess kurtosis clears the bar.
Sourcepub fn has_volatility_clustering(&self, t: &RealismThresholds) -> bool
pub fn has_volatility_clustering(&self, t: &RealismThresholds) -> bool
Volatility clustering: |return| autocorrelation clears the bar.
Sourcepub fn has_aggregational_gaussianity(&self, t: &RealismThresholds) -> bool
pub fn has_aggregational_gaussianity(&self, t: &RealismThresholds) -> bool
Aggregational Gaussianity: kurtosis shrinks enough under aggregation.
Sourcepub fn has_time_reversal_asymmetry(&self, t: &RealismThresholds) -> bool
pub fn has_time_reversal_asymmetry(&self, t: &RealismThresholds) -> bool
Time-reversal asymmetry: the Zumbach/leverage score is large enough in magnitude (either sign) to distinguish the series from its time reversal.
Sourcepub fn is_realistic(&self, t: &RealismThresholds) -> bool
pub fn is_realistic(&self, t: &RealismThresholds) -> bool
Every gated stylized fact holds.
Sourcepub fn failures(&self, t: &RealismThresholds) -> Vec<RealismFailure>
pub fn failures(&self, t: &RealismThresholds) -> Vec<RealismFailure>
The specific stylized facts the series fails to exhibit (empty ⇒ realistic).
Trait Implementations§
Source§impl Clone for StylizedFactsReport
impl Clone for StylizedFactsReport
Source§fn clone(&self) -> StylizedFactsReport
fn clone(&self) -> StylizedFactsReport
1.0.0 (const: unstable) · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source. Read more