Блог им. 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 (это законно?). НО тогда будут проблемы с одновременным их использованием. И возникает вопрос: кто-нибудь использует эти данные одновременно? (слышал что кто-то входит по trades, а логика на барах). Из-за схожести bar и trade в некоторых фреймворках используют только их, и тут возникает еще один вопрос, о надобности quote.
Помагите пж, а то голова пухнет(
6 комментариев
Для ознакомления, самый грамотный (по моему) апи по предоставлению рыночных данных
delta и trades больше ничего не нужно
avatar
TRADING WARRIOR, delta это по цене от предыдущего trade?
Емельянов Иван, delta это разница между покупками и продажами, для определения перевеса одной стороны над другой, trades это кол-во сделок для выявления лимиток, в том числе айсбергов, соедини в свече delta+trades получишь грааль
avatar
Делайте структуру данных под конкретную задачу, не стоит на данном этапе заморачиваться проектированием убер-универсальной структуры. Вы же не торговый терминал или универсальный бэктестер собираетесь разрабатывать в одно лицо.
Дед Нечипор, не, ну ачо)

теги блога Емельянов Иван

....все тэги



UPDONW
Новый дизайн