use crate::models;
use serde::{Deserialize, Serialize};
#[derive(Clone, Copy, Debug, Eq, PartialEq, Ord, PartialOrd, Hash, Serialize, Deserialize)]
pub enum MarketOrderPositionFill {
#[serde(rename = "OPEN_ONLY")]
OpenOnly,
#[serde(rename = "REDUCE_FIRST")]
ReduceFirst,
#[serde(rename = "REDUCE_ONLY")]
ReduceOnly,
#[serde(rename = "DEFAULT")]
Default,
}
impl std::fmt::Display for MarketOrderPositionFill {
fn fmt(&self, f: &mut std::fmt::Formatter) -> std::fmt::Result {
match self {
Self::OpenOnly => write!(f, "OPEN_ONLY"),
Self::ReduceFirst => write!(f, "REDUCE_FIRST"),
Self::ReduceOnly => write!(f, "REDUCE_ONLY"),
Self::Default => write!(f, "DEFAULT"),
}
}
}
impl Default for MarketOrderPositionFill {
fn default() -> MarketOrderPositionFill {
Self::OpenOnly
}
}