/*
 * Client Portal Web API
 *
 * Client Portal Web API
 *
 * The version of the OpenAPI document: 1.0.0
 * 
 * Generated by: https://openapi-generator.tech
 */




#[derive(Clone, Debug, PartialEq, Serialize, Deserialize)]
pub struct ContractRules {
    #[serde(rename = "orderTypes", skip_serializing_if = "Option::is_none")]
    pub order_types: Option<Vec<String>>,
    #[serde(rename = "orderTypesOutside", skip_serializing_if = "Option::is_none")]
    pub order_types_outside: Option<Vec<String>>,
    /// default quantity you can use to place an order
    #[serde(rename = "defaultSize", skip_serializing_if = "Option::is_none")]
    pub default_size: Option<f32>,
    #[serde(rename = "sizeIncrement", skip_serializing_if = "Option::is_none")]
    pub size_increment: Option<f32>,
    #[serde(rename = "tifTypes", skip_serializing_if = "Option::is_none")]
    pub tif_types: Option<Vec<String>>,
    /// default limit price you can use to prefill your order
    #[serde(rename = "limitPrice", skip_serializing_if = "Option::is_none")]
    pub limit_price: Option<f32>,
    /// default stop price you can use to prefill your order
    #[serde(rename = "stopprice", skip_serializing_if = "Option::is_none")]
    pub stopprice: Option<f32>,
    /// if you can preview the order or not with the whatif endpoint
    #[serde(rename = "preview", skip_serializing_if = "Option::is_none")]
    pub preview: Option<bool>,
    #[serde(rename = "displaySize", skip_serializing_if = "Option::is_none")]
    pub display_size: Option<String>,
    #[serde(rename = "increment", skip_serializing_if = "Option::is_none")]
    pub increment: Option<String>,
}

impl ContractRules {
    pub fn new() -> ContractRules {
        ContractRules {
            order_types: None,
            order_types_outside: None,
            default_size: None,
            size_increment: None,
            tif_types: None,
            limit_price: None,
            stopprice: None,
            preview: None,
            display_size: None,
            increment: None,
        }
    }
}


