Struct JumpDiffusionPriorConfig
#[non_exhaustive]pub struct JumpDiffusionPriorConfig {
pub detection: JumpEventConfig,
pub min_jump_count: usize,
pub min_input_observations: usize,
pub diffusion_correction: bool,
pub noise_scale: JumpPriorNoiseScale,
pub max_jump_fraction: f64,
pub truncation_correction: bool,
pub min_detection_probability: f64,
}Expand description
Configuration for jump_diffusion_prior_signal.
Fields (Non-exhaustive)§
This struct is marked as non-exhaustive
Struct { .. } syntax; cannot be matched against without a wildcard ..; and struct update syntax will not work.detection: JumpEventConfigDetection settings shared with jump_event_signal. Detection depth
defaults to scale level 1 — and, unlike jump_event_signal, a None
levels does not inherit the profile’s multi-scale max_levels:
a Merton jump is a one-period impulse, the level-1 MODWT statistic is
the one with an exactly calibrated null, and deeper scales would
misattribute multi-day volatility bursts to the jump intensity, so
depth beyond 1 is strictly opt-in. near_threshold settings are
ignored here (sub-threshold scores never enter the triple).
min_jump_count: usizeMinimum consolidated jumps required for an identifiable triple. Below
this the signal is Unavailable — never a fabricated estimate. Must be
at least 2 (a jump-size std needs two observations).
min_input_observations: usizeMinimum finite price-return observations required. The effective floor
is the max of this and detection.min_input_observations.
diffusion_correction: boolSubtract the per-period bipower diffusive variance from the raw
jump-size variance before taking σ_J. A detected jump return is
jump + diffusion, so raw moments overstate σ_J by the diffusive
floor; the correction also aligns prior_jump_variance with the
realized QV − BV leg, which subtracts the same floor.
noise_scale: JumpPriorNoiseScaleNoise scale for the detection test statistic. See
JumpPriorNoiseScale; defaults to JumpPriorNoiseScale::Mad.
max_jump_fraction: f64Maximum fraction of the window’s returns that may carry a consolidated
detection before the estimate is refused (implausible_jump_fraction).
Merton jumps are rare by model assumption: when the detector flags this
much of the window, the Gaussian-null noise scale itself is not
credible (e.g. a near-degenerate coefficient distribution collapsing
the MAD to rounding residue) and any triple would be fabricated.
Default 0.2 — beyond ~50 jumps/year at daily resolution the
jump/diffusion separation is meaningless anyway. Must be in (0, 1].
The cap applies to detected jumps; a truncation-corrected λ may imply
a total fraction above it (reported via diagnostic, not re-gated).
truncation_correction: boolCorrect the detection-conditional λ for threshold truncation (#86):
fit the jump-size distribution as an outer-truncated normal (EM),
compute the detection probability p̂_det implied by the fitted
distribution and the level-1 cutoff, and inflate λ̂ by 1/p̂_det
(widening its SE through the correction). Applies only on the default
detector shape — MODWT, level-1, MAD noise scale; anywhere else, or on
any numerical failure, the uncorrected detection-conditional triple is
published with a truncation_correction_skipped diagnostic. Default
true.
min_detection_probability: f64Floor on the fitted detection probability below which the truncation
correction is not applied (the window cannot identify total intensity;
inflating by 1/p̂ would be fabrication). Default 0.2; must be
finite and in (0, 1).
Implementations§
§impl JumpDiffusionPriorConfig
impl JumpDiffusionPriorConfig
pub fn for_daily_eod() -> Self
pub fn for_daily_eod() -> Self
Default prior-estimation settings for daily EOD analytics.
Trait Implementations§
§impl Clone for JumpDiffusionPriorConfig
impl Clone for JumpDiffusionPriorConfig
§fn clone(&self) -> JumpDiffusionPriorConfig
fn clone(&self) -> JumpDiffusionPriorConfig
1.0.0§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source. Read more§impl Debug for JumpDiffusionPriorConfig
impl Debug for JumpDiffusionPriorConfig
§impl Default for JumpDiffusionPriorConfig
impl Default for JumpDiffusionPriorConfig
§impl PartialEq for JumpDiffusionPriorConfig
impl PartialEq for JumpDiffusionPriorConfig
impl StructuralPartialEq for JumpDiffusionPriorConfig
Auto Trait Implementations§
impl Freeze for JumpDiffusionPriorConfig
impl RefUnwindSafe for JumpDiffusionPriorConfig
impl Send for JumpDiffusionPriorConfig
impl Sync for JumpDiffusionPriorConfig
impl Unpin for JumpDiffusionPriorConfig
impl UnwindSafe for JumpDiffusionPriorConfig
Blanket Implementations§
§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
§unsafe fn clone_to_uninit(&self, dest: *mut u8)
unsafe fn clone_to_uninit(&self, dest: *mut u8)
clone_to_uninit)§impl<T> IntoEither for T
impl<T> IntoEither for T
§fn into_either(self, into_left: bool) -> Either<Self, Self>
fn into_either(self, into_left: bool) -> Either<Self, Self>
self into a Left variant of Either<Self, Self>
if into_left is true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read more§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
self into a Left variant of Either<Self, Self>
if into_left(&self) returns true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read more§impl<T> Pointable for T
impl<T> Pointable for T
§impl<SS, SP> SupersetOf<SS> for SPwhere
SS: SubsetOf<SP>,
impl<SS, SP> SupersetOf<SS> for SPwhere
SS: SubsetOf<SP>,
§fn to_subset(&self) -> Option<SS>
fn to_subset(&self) -> Option<SS>
self from the equivalent element of its
superset. Read more§fn is_in_subset(&self) -> bool
fn is_in_subset(&self) -> bool
self is actually part of its subset T (and can be converted to it).§fn to_subset_unchecked(&self) -> SS
fn to_subset_unchecked(&self) -> SS
self.to_subset but without any property checks. Always succeeds.§fn from_subset(element: &SS) -> SP
fn from_subset(element: &SS) -> SP
self to the equivalent element of its superset.