Skip to main content

Finding

Enum Finding 

Source
pub enum Finding {
    RepeatedSize {
        size: f64,
        count: usize,
        of: usize,
    },
    FewSizes {
        sizes: Vec<f64>,
        count: usize,
        of: usize,
    },
    Metronome {
        mean_gap_ms: f64,
        cv: f64,
        gaps: usize,
        dominant_size: Option<f64>,
    },
    Cadence {
        gap_ms: f64,
        share: f64,
        gaps: usize,
    },
    Timer {
        low_ms: f64,
        median_ms: f64,
        high_ms: f64,
        cv: f64,
        gaps: usize,
        share: f64,
        pauses: usize,
    },
    PingPong {
        pairs: usize,
        share: f64,
    },
    Ladder {
        side: BookSide,
        levels: usize,
        shape: LadderShape,
        size: f64,
        last_size: f64,
        step_pct: f64,
    },
    RoundNotional {
        side: BookSide,
        levels: usize,
        of: usize,
        examples: Vec<f64>,
    },
    DepthCycle {
        side: BookSide,
        period_ms: f64,
        cycles: usize,
        cv: f64,
        runs: usize,
    },
}
Expand description

One signal that was found, with its evidence.

Variants§

§

RepeatedSize

count of of trades have the exact size size (base units).

Fields

§size: f64
§count: usize
§

FewSizes

count of of trades have one of the exact sizes sizes, most common first.

Fields

§sizes: Vec<f64>
§count: usize
§

Metronome

Gaps between trade events average mean_gap_ms, with a coefficient of variation cv, over gaps gaps. dominant_size is set when the cadence is that of the repeated-size trades only.

Fields

§mean_gap_ms: f64
§cv: f64
§gaps: usize
§dominant_size: Option<f64>
§

Cadence

share of gaps gaps between trade events are gap_ms apart (within CADENCE_TOLERANCE).

Fields

§gap_ms: f64
§share: f64
§gaps: usize
§

Timer

share of gaps gaps between trade events run from low_ms to high_ms around median_ms (a timer with jitter); pauses gaps are far longer (the bot resting between bursts). cv is the spread of all the gaps.

Fields

§low_ms: f64
§median_ms: f64
§high_ms: f64
§cv: f64
§gaps: usize
§share: f64
§pauses: usize
§

PingPong

pairs buy/sell pairs of the same size, close in time and price, cover share of the trades.

Fields

§pairs: usize
§share: f64
§

Ladder

levels consecutive side levels at steps of about step_pct percent, from size at the first to last_size (base units), shaped as shape.

Fields

§levels: usize
§size: f64
§last_size: f64
§step_pct: f64
§

RoundNotional

levels of the top of side levels are whole quote amounts (the first few in examples) though their sizes are not whole.

Fields

§levels: usize
§examples: Vec<f64>
§

DepthCycle

Across the runs of a repeat: the side depth refilled every period_ms (a coefficient of variation cv) and drained between, cycles times over runs runs. A saw-tooth no single book shows.

Fields

§period_ms: f64
§cycles: usize
§cv: f64
§runs: usize

Implementations§

Source§

impl Finding

Source

pub fn label(&self) -> String

The short name of the signal: Jittered timer, Bid ladder.

Source

pub fn in_book(&self) -> bool

True for a signal read in one book, false for one in the trades or across runs.

Source

pub fn across_runs(&self) -> bool

True for a signal read across the runs of a repeat.

Source

pub fn detail(&self) -> String

The evidence, without the label.

Source

pub fn describe(&self) -> String

The label and the evidence: Bid ladder: 9 levels falling ….

Trait Implementations§

Source§

impl Clone for Finding

Source§

fn clone(&self) -> Self

Returns a duplicate of the value. Read more
1.0.0 (const: unstable) · Source§

fn clone_from(&mut self, source: &Self)

Performs copy-assignment from source. Read more
Source§

impl Debug for Finding

Source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more
Source§

impl PartialEq for Finding

Source§

fn eq(&self, other: &Self) -> bool

Equality operator ==. Read more
1.0.0 (const: unstable) · Source§

fn ne(&self, other: &Rhs) -> bool

Inequality operator !=. Read more
Source§

impl Serialize for Finding

Source§

fn serialize<__S>(&self, __serializer: __S) -> Result<__S::Ok, __S::Error>
where __S: Serializer,

Serialize this value into the given Serde serializer. Read more
Source§

impl StructuralPartialEq for Finding

Auto Trait Implementations§

Blanket Implementations§

Source§

impl<T> Any for T
where T: 'static + ?Sized,

Source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
Source§

impl<T> Borrow<T> for T
where T: ?Sized,

Source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
Source§

impl<T> BorrowMut<T> for T
where T: ?Sized,

Source§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
Source§

impl<T> CloneToUninit for T
where T: Clone,

Source§

unsafe fn clone_to_uninit(&self, dest: *mut u8)

🔬This is a nightly-only experimental API. (clone_to_uninit)
Performs copy-assignment from self to dest. Read more
Source§

impl<T> From<T> for T

Source§

fn from(t: T) -> T

Returns the argument unchanged.

Source§

impl<T> Instrument for T

Source§

fn instrument(self, span: Span) -> Instrumented<Self> ⓘ

Instruments this type with the provided Span, returning an Instrumented wrapper. Read more
Source§

fn in_current_span(self) -> Instrumented<Self> ⓘ

Instruments this type with the current Span, returning an Instrumented wrapper. Read more
Source§

impl<T, U> Into<U> for T
where U: From<T>,

Source§

fn into(self) -> U

Calls U::from(self).

That is, this conversion is whatever the implementation of From<T> for U chooses to do.

Source§

impl<T> PolicyExt for T
where T: ?Sized,

Source§

fn and<P, B, E>(self, other: P) -> And<T, P>
where T: Sized + Policy<B, E>, P: Policy<B, E>,

Create a new Policy that returns Action::Follow only if self and other return Action::Follow. Read more
Source§

fn or<P, B, E>(self, other: P) -> Or<T, P>
where T: Sized + Policy<B, E>, P: Policy<B, E>,

Create a new Policy that returns Action::Follow if either self or other returns Action::Follow. Read more
Source§

impl<T> Same for T

Source§

type Output = T

Should always be Self
Source§

impl<T> ToOwned for T
where T: Clone,

Source§

type Owned = T

The resulting type after obtaining ownership.
Source§

fn to_owned(&self) -> T

Creates owned data from borrowed data, usually by cloning. Read more
Source§

fn clone_into(&self, target: &mut T)

Uses borrowed data to replace owned data, usually by cloning. Read more
Source§

impl<T, U> TryFrom<U> for T
where U: Into<T>,

Source§

type Error = !

The type returned in the event of a conversion error.
Source§

fn try_from(value: U) -> Result<T, !>

Performs the conversion.
Source§

impl<T, U> TryInto<U> for T
where U: TryFrom<T>,

Source§

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.
Source§

fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>

Performs the conversion.
Source§

impl<T> WithSubscriber for T

Source§

fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self> ⓘ
where S: Into<Dispatch>,

Attaches the provided Subscriber to this type, returning a WithDispatch wrapper. Read more
Source§

fn with_current_subscriber(self) -> WithDispatch<Self> ⓘ

Attaches the current default Subscriber to this type, returning a WithDispatch wrapper. Read more