Блог им. JohnMitrich |Вопрос: какие рыночные данные бывают?

Вот, допустим, bars он же OHLC(V), его более-менее частный вариант trade (price, size) — конкретная сделка, еще есть quotes (ask, ask size, bid, bid size). Очень часто trade и quote объединяют в некий «tick» (иногда также называемый quote ;)), но английская вики говорит что этот самый «tick» всего-лишь шаг возможной цены, то есть употребление этого термина некорректно.

В связи с этим всем возникает ряд вопросов (PS: в смартлабовский «Задать вопрос» не уложился):
  1. Какие данные используете для торговли?
  2. Какие данные используете для бэктеста?
  3. Как это все систематизировать? Вот мое предложение:
    struct Bar {
        open: f64,
        high: f64,
        low: f64,
        close: f64,
        volume: Option<u32>,
    }
    
    struct Trade {
        price: f64,
        size: u32,
    }
    
    struct Quote {
        ask: f64,
        ask_size: u32,
        bid: f64,
        bid_size: u32,
    }
    
    enum Price {
        Bar(Bar),
        Trade(Trade),
        Quote(Quote),
    }
    
    trait MarketData {
        fn prices(&self) -> &HashMap<&'static str, Price>;
        fn timestamp(&self) -> &OffsetDateTime;
    }

    То-есть создать объединение из bar, trade, quote и назвать его price (это законно?).


( Читать дальше )

....все тэги
UPDONW
Новый дизайн