Jonathan Strong bfb2d904a5 | 4 years ago | |
---|---|---|
src | 4 years ago | |
.gitignore | 4 years ago | |
Cargo.toml | 4 years ago | |
LICENSE | 4 years ago | |
README.md | 4 years ago |
Market-specific primitives in Rust. WIP.
use markets::crypto::{Exchange, Currency, Ticker, Side};
#[derive(Serialize, Deserialize)]
pub struct Trade {
pub exch: Exchange, // 4-character symbol (bmex, btfx, etc.)
pub ticker: Ticker, // i.e. btc/usd
pub side: Side, // Bid/Ask
pub price: f64,
pub size: f64,
pub time: u64, // unix nanos
}
let json = r#"
{
"exch": "bmex",
"ticker": "btc_usd",
"side": "bid",
"price": 7890.12345,
"size": 12.345,
"time": 1584600884388889367
}
"#;
let trade: Trade = serde_json::from_str(&json).unwrap();
assert_eq!(trade.ticker.base, Currency::btc);