1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
use hashbrown::HashMap;
use cxmr_balances::Balance;
use cxmr_currency::{Currency, CurrencyPair};
use super::{Exchange, MarketFilter, MarketStatus, OrderType, RateLimit};
#[derive(Serialize, Deserialize, Clone, Debug)]
pub struct AccountInfo {
pub account: String,
pub can_trade: bool,
pub balances: HashMap<Currency, Balance>,
pub maker_fee_rate: u64,
pub taker_fee_rate: u64,
pub updated_at: u64,
}
#[derive(Debug, Serialize)]
pub struct ExchangeInfo {
pub exchange: Exchange,
pub limits: Vec<RateLimit>,
pub markets: Vec<MarketInfo>,
}
#[derive(Debug, Serialize)]
pub struct MarketInfo {
pub pair: CurrencyPair,
pub status: MarketStatus,
pub filters: Vec<MarketFilter>,
pub order_types: Vec<OrderType>,
}