openlimits-exchange 0.3.0

The exchange traits of OpenLimits.
Documentation
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
use async_trait::async_trait;
use crate::{
    model::{
        Candle, GetHistoricRatesRequest,
        GetHistoricTradesRequest, GetPriceTickerRequest,
        OrderBookRequest, OrderBookResponse,
        Ticker, Trade,
    },
};
use super::shared::Result;

#[async_trait]
pub trait ExchangeMarketData {
    async fn order_book(&self, req: &OrderBookRequest) -> Result<OrderBookResponse>;
    async fn get_price_ticker(&self, req: &GetPriceTickerRequest) -> Result<Ticker>;
    async fn get_historic_rates(&self, req: &GetHistoricRatesRequest) -> Result<Vec<Candle>>;
    async fn get_historic_trades(&self, req: &GetHistoricTradesRequest) -> Result<Vec<Trade>>;
}