Skip to main content

binance_sdk/spot/websocket_api/models/
order_status_response_result.rs

1/*
2 * Spot WebSocket API
3 *
4 * Access market data, manage accounts, and trade on Binance Spot.
5 *
6 * The version of the OpenAPI document: 1.0.0
7 *
8 *
9 * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
10 * https://openapi-generator.tech
11 * Do not edit the class manually.
12 */
13
14#![allow(unused_imports)]
15use crate::spot::websocket_api::models;
16use serde::{Deserialize, Deserializer, Serialize, de::Error};
17use serde_json::Value;
18
19#[derive(Clone, Default, Debug, PartialEq, Serialize, Deserialize)]
20pub struct OrderStatusResponseResult {
21    #[serde(rename = "symbol", skip_serializing_if = "Option::is_none")]
22    pub symbol: Option<String>,
23    #[serde(rename = "orderId", skip_serializing_if = "Option::is_none")]
24    pub order_id: Option<i64>,
25    /// Present only for orders that belong to an order list.
26    #[serde(rename = "orderListId", skip_serializing_if = "Option::is_none")]
27    pub order_list_id: Option<i64>,
28    #[serde(rename = "clientOrderId", skip_serializing_if = "Option::is_none")]
29    pub client_order_id: Option<String>,
30    #[serde(rename = "price", skip_serializing_if = "Option::is_none")]
31    pub price: Option<String>,
32    #[serde(rename = "origQty", skip_serializing_if = "Option::is_none")]
33    pub orig_qty: Option<String>,
34    #[serde(rename = "executedQty", skip_serializing_if = "Option::is_none")]
35    pub executed_qty: Option<String>,
36    /// Always present. Zero if the order type does not use `quoteOrderQty`.
37    #[serde(rename = "origQuoteOrderQty", skip_serializing_if = "Option::is_none")]
38    pub orig_quote_order_qty: Option<String>,
39    #[serde(
40        rename = "cummulativeQuoteQty",
41        skip_serializing_if = "Option::is_none"
42    )]
43    pub cummulative_quote_qty: Option<String>,
44    #[serde(rename = "status", skip_serializing_if = "Option::is_none")]
45    pub status: Option<String>,
46    #[serde(rename = "timeInForce", skip_serializing_if = "Option::is_none")]
47    pub time_in_force: Option<String>,
48    #[serde(rename = "type", skip_serializing_if = "Option::is_none")]
49    pub r#type: Option<String>,
50    #[serde(rename = "side", skip_serializing_if = "Option::is_none")]
51    pub side: Option<String>,
52    /// Always present. Zero if the order type does not use `stopPrice`.
53    #[serde(rename = "stopPrice", skip_serializing_if = "Option::is_none")]
54    pub stop_price: Option<String>,
55    /// Present only if `trailingDelta` was set on the order.
56    #[serde(rename = "trailingDelta", skip_serializing_if = "Option::is_none")]
57    pub trailing_delta: Option<i64>,
58    /// Present only if `trailingDelta` was set on the order.
59    #[serde(rename = "trailingTime", skip_serializing_if = "Option::is_none")]
60    pub trailing_time: Option<i64>,
61    /// Always present. Zero for non-iceberg orders.
62    #[serde(rename = "icebergQty", skip_serializing_if = "Option::is_none")]
63    pub iceberg_qty: Option<String>,
64    /// Order placement time.
65    #[serde(rename = "time", skip_serializing_if = "Option::is_none")]
66    pub time: Option<i64>,
67    /// Time of the last update to the order.
68    #[serde(rename = "updateTime", skip_serializing_if = "Option::is_none")]
69    pub update_time: Option<i64>,
70    #[serde(rename = "isWorking", skip_serializing_if = "Option::is_none")]
71    pub is_working: Option<bool>,
72    #[serde(rename = "workingTime", skip_serializing_if = "Option::is_none")]
73    pub working_time: Option<i64>,
74    /// Present only if `strategyId` was set on the order.
75    #[serde(rename = "strategyId", skip_serializing_if = "Option::is_none")]
76    pub strategy_id: Option<i64>,
77    /// Present only if `strategyType` was set on the order.
78    #[serde(rename = "strategyType", skip_serializing_if = "Option::is_none")]
79    pub strategy_type: Option<i64>,
80    #[serde(
81        rename = "selfTradePreventionMode",
82        skip_serializing_if = "Option::is_none"
83    )]
84    pub self_trade_prevention_mode: Option<String>,
85    /// Present only if the order expired due to STP.
86    #[serde(rename = "preventedMatchId", skip_serializing_if = "Option::is_none")]
87    pub prevented_match_id: Option<i64>,
88    /// Present only if the order expired due to STP.
89    #[serde(rename = "preventedQuantity", skip_serializing_if = "Option::is_none")]
90    pub prevented_quantity: Option<String>,
91    /// Field that determines whether order used SOR.
92    #[serde(rename = "usedSor", skip_serializing_if = "Option::is_none")]
93    pub used_sor: Option<bool>,
94    /// Determines whether the order is being filled by the SOR or by the order book.
95    #[serde(rename = "workingFloor", skip_serializing_if = "Option::is_none")]
96    pub working_floor: Option<String>,
97    /// Price peg type. Only for pegged orders.
98    #[serde(rename = "pegPriceType", skip_serializing_if = "Option::is_none")]
99    pub peg_price_type: Option<String>,
100    /// Price peg offset type. Only for pegged orders, if requested.
101    #[serde(rename = "pegOffsetType", skip_serializing_if = "Option::is_none")]
102    pub peg_offset_type: Option<String>,
103    /// Price peg offset value. Only for pegged orders, if requested.
104    #[serde(rename = "pegOffsetValue", skip_serializing_if = "Option::is_none")]
105    pub peg_offset_value: Option<i64>,
106    /// Current price order is pegged at. Only for pegged orders, once determined.
107    #[serde(rename = "peggedPrice", skip_serializing_if = "Option::is_none")]
108    pub pegged_price: Option<String>,
109    /// Cause of the order's expiration. Appears when an order has expired.
110    #[serde(rename = "expiryReason", skip_serializing_if = "Option::is_none")]
111    pub expiry_reason: Option<String>,
112}
113
114impl OrderStatusResponseResult {
115    #[must_use]
116    pub fn new() -> OrderStatusResponseResult {
117        OrderStatusResponseResult {
118            symbol: None,
119            order_id: None,
120            order_list_id: None,
121            client_order_id: None,
122            price: None,
123            orig_qty: None,
124            executed_qty: None,
125            orig_quote_order_qty: None,
126            cummulative_quote_qty: None,
127            status: None,
128            time_in_force: None,
129            r#type: None,
130            side: None,
131            stop_price: None,
132            trailing_delta: None,
133            trailing_time: None,
134            iceberg_qty: None,
135            time: None,
136            update_time: None,
137            is_working: None,
138            working_time: None,
139            strategy_id: None,
140            strategy_type: None,
141            self_trade_prevention_mode: None,
142            prevented_match_id: None,
143            prevented_quantity: None,
144            used_sor: None,
145            working_floor: None,
146            peg_price_type: None,
147            peg_offset_type: None,
148            peg_offset_value: None,
149            pegged_price: None,
150            expiry_reason: None,
151        }
152    }
153}