Skip to main content

oanda_v20_openapi/models/
close_position_response.rs

1/*
2 * OANDA v20 API
3 *
4 * The full OANDA v20 API Specification. This specification defines how to interact with v20 Accounts, Trades, Orders, Pricing and more.
5 *
6 * The version of the OpenAPI document: 0.2.1
7 * Contact: jmicoud02@gmail.com
8 * Generated by: https://openapi-generator.tech
9 */
10
11use crate::models;
12use serde::{Deserialize, Serialize};
13
14#[derive(Clone, Default, Debug, PartialEq, Serialize, Deserialize)]
15pub struct ClosePositionResponse {
16    /// The ID of the most recent Transaction created for the Account
17    #[serde(rename = "lastTransactionID", skip_serializing_if = "Option::is_none")]
18    pub last_transaction_id: Option<String>,
19    /// The IDs of all Transactions that were created while satisfying the request.
20    #[serde(rename = "relatedTransactionIDs", skip_serializing_if = "Option::is_none")]
21    pub related_transaction_ids: Option<Vec<i32>>,
22    #[serde(rename = "longOrderCreateTransaction", skip_serializing_if = "Option::is_none")]
23    pub long_order_create_transaction: Option<Box<models::MarketOrderTransaction>>,
24    #[serde(rename = "longOrderFillTransaction", skip_serializing_if = "Option::is_none")]
25    pub long_order_fill_transaction: Option<Box<models::OrderFillTransaction>>,
26    #[serde(rename = "longOrderCancelTransaction", skip_serializing_if = "Option::is_none")]
27    pub long_order_cancel_transaction: Option<Box<models::OrderCancelTransaction>>,
28    #[serde(rename = "shortOrderCreateTransaction", skip_serializing_if = "Option::is_none")]
29    pub short_order_create_transaction: Option<Box<models::MarketOrderTransaction>>,
30    #[serde(rename = "shortOrderFillTransaction", skip_serializing_if = "Option::is_none")]
31    pub short_order_fill_transaction: Option<Box<models::OrderFillTransaction>>,
32    #[serde(rename = "shortOrderCancelTransaction", skip_serializing_if = "Option::is_none")]
33    pub short_order_cancel_transaction: Option<Box<models::OrderCancelTransaction>>,
34}
35
36impl ClosePositionResponse {
37    pub fn new() -> ClosePositionResponse {
38        ClosePositionResponse {
39            last_transaction_id: None,
40            related_transaction_ids: None,
41            long_order_create_transaction: None,
42            long_order_fill_transaction: None,
43            long_order_cancel_transaction: None,
44            short_order_create_transaction: None,
45            short_order_fill_transaction: None,
46            short_order_cancel_transaction: None,
47        }
48    }
49}
50