Skip to main content

openlimits_binance/model/
order_request.rs

1use serde::Deserialize;
2use serde::Serialize;
3use rust_decimal::prelude::Decimal;
4use super::TimeInForce;
5use super::shared::string_to_decimal;
6use super::shared::string_to_opt_decimal;
7
8/// This struct represents an order request
9#[derive(Debug, Serialize, Deserialize, Clone)]
10#[serde(rename_all = "camelCase")]
11pub struct OrderRequest {
12    pub symbol: String,
13    #[serde(with = "string_to_decimal")]
14    pub quantity: Decimal,
15    #[serde(skip_serializing_if = "Option::is_none")]
16    #[serde(with = "string_to_opt_decimal")]
17    pub price: Option<Decimal>,
18    #[serde(rename = "side")]
19    pub order_side: String,
20    #[serde(rename = "type")]
21    pub order_type: String,
22    #[serde(skip_serializing_if = "Option::is_none")]
23    pub time_in_force: Option<TimeInForce>,
24}