tinkoff_api/models/
orderbook.rs

1/*
2 * OpenAPI
3 *
4 * tinkoff.ru/invest OpenAPI.
5 *
6 * The version of the OpenAPI document: 1.0.0
7 * Contact: al.a.volkov@tinkoff.ru
8 * Generated by: https://openapi-generator.tech
9 */
10
11
12
13
14#[derive(Clone, Debug, PartialEq, Serialize, Deserialize)]
15pub struct Orderbook {
16    #[serde(rename = "figi")]
17    pub figi: String,
18    #[serde(rename = "depth")]
19    pub depth: i32,
20    #[serde(rename = "bids")]
21    pub bids: Vec<crate::models::OrderResponse>,
22    #[serde(rename = "asks")]
23    pub asks: Vec<crate::models::OrderResponse>,
24    #[serde(rename = "tradeStatus")]
25    pub trade_status: crate::models::TradeStatus,
26    /// Шаг цены
27    #[serde(rename = "minPriceIncrement")]
28    pub min_price_increment: f64,
29    /// Номинал для облигаций
30    #[serde(rename = "faceValue", skip_serializing_if = "Option::is_none")]
31    pub face_value: Option<f64>,
32    #[serde(rename = "lastPrice", skip_serializing_if = "Option::is_none")]
33    pub last_price: Option<f64>,
34    #[serde(rename = "closePrice", skip_serializing_if = "Option::is_none")]
35    pub close_price: Option<f64>,
36    /// Верхняя граница цены
37    #[serde(rename = "limitUp", skip_serializing_if = "Option::is_none")]
38    pub limit_up: Option<f64>,
39    /// Нижняя граница цены
40    #[serde(rename = "limitDown", skip_serializing_if = "Option::is_none")]
41    pub limit_down: Option<f64>,
42}
43
44impl Orderbook {
45    pub fn new(figi: String, depth: i32, bids: Vec<crate::models::OrderResponse>, asks: Vec<crate::models::OrderResponse>, trade_status: crate::models::TradeStatus, min_price_increment: f64) -> Orderbook {
46        Orderbook {
47            figi,
48            depth,
49            bids,
50            asks,
51            trade_status,
52            min_price_increment,
53            face_value: None,
54            last_price: None,
55            close_price: None,
56            limit_up: None,
57            limit_down: None,
58        }
59    }
60}
61
62