bybit_rust_api/ws/public/
liquidation.rs1use serde::Deserialize;
7
8#[derive(Debug, Clone, Deserialize)]
9pub struct LiquidationData {
10 #[serde(rename = "symbol")]
11 #[serde(default)]
12 pub symbol: Option<String>,
13 #[serde(rename = "side")]
14 #[serde(default)]
15 pub side: Option<String>,
16 #[serde(rename = "price")]
17 #[serde(default)]
18 pub price: Option<String>,
19 #[serde(rename = "size")]
20 #[serde(default)]
21 pub size: Option<String>,
22 #[serde(rename = "updatedTime")]
23 #[serde(default)]
24 pub updated_time: Option<i64>,
25}
26
27pub struct LiquidationStream;
28
29impl LiquidationStream {
30 pub fn parse(data: &serde_json::Value) -> serde_json::Result<LiquidationData> {
31 serde_json::from_value(data.clone())
32 }
33 pub fn matches_topic(topic: &str) -> bool {
34 topic.starts_with("liquidation.")
35 }
36}