#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct AddBasketPresetRequest {
#[prost(string, tag="1")]
pub prefix: ::prost::alloc::string::String,
#[prost(string, tag="2")]
pub start_at: ::prost::alloc::string::String,
#[prost(string, tag="3")]
pub stop_at: ::prost::alloc::string::String,
#[prost(string, tag="4")]
pub index_code: ::prost::alloc::string::String,
#[prost(string, tag="5")]
pub stock_fundcode: ::prost::alloc::string::String,
#[prost(string, tag="6")]
pub deriv_fundcode: ::prost::alloc::string::String,
#[prost(string, tag="7")]
pub basis_type: ::prost::alloc::string::String,
#[prost(string, tag="8")]
pub stock_program_type: ::prost::alloc::string::String,
#[prost(string, tag="9")]
pub deriv_program_type: ::prost::alloc::string::String,
#[prost(string, tag="10")]
pub etf_program_type: ::prost::alloc::string::String,
#[prost(string, tag="11")]
pub stock_price_type: ::prost::alloc::string::String,
#[prost(string, tag="12")]
pub deriv_price_type: ::prost::alloc::string::String,
#[prost(string, tag="13")]
pub etf_price_type: ::prost::alloc::string::String,
#[prost(double, tag="14")]
pub stock_dominance_threshold: f64,
#[prost(double, tag="15")]
pub deriv_dominance_threshold: f64,
#[prost(double, tag="16")]
pub etf_dominance_threshold: f64,
#[prost(double, tag="17")]
pub cu: f64,
#[prost(int64, tag="18")]
pub total_rounds: i64,
#[prost(int64, tag="19")]
pub remaining_turns: i64,
#[prost(double, tag="20")]
pub trigger_basis: f64,
#[prost(bool, tag="21")]
pub is_long: bool,
#[prost(double, tag="22")]
pub minimum_filled_ratio: f64,
#[prost(double, tag="23")]
pub minimum_interval: f64,
#[prost(bool, tag="24")]
pub check_all_sellable: bool,
#[prost(bool, tag="25")]
pub short_sellable: bool,
#[prost(bool, tag="26")]
pub apply_slippage: bool,
#[prost(double, tag="27")]
pub etf_unfilled_limit: f64,
#[prost(int64, tag="28")]
pub stock_future: i64,
#[prost(string, tag="29")]
pub stock_code: ::prost::alloc::string::String,
#[prost(int64, tag="30")]
pub stock_total_quantity: i64,
#[prost(bool, tag="31")]
pub stock_auto: bool,
#[prost(int64, tag="32")]
pub future_total_quantity: i64,
#[prost(bool, tag="33")]
pub future_auto: bool,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct BasketPresetDetail {
#[prost(string, tag="22")]
pub code: ::prost::alloc::string::String,
#[prost(string, tag="1")]
pub prefix: ::prost::alloc::string::String,
#[prost(string, tag="2")]
pub start_at: ::prost::alloc::string::String,
#[prost(string, tag="3")]
pub stop_at: ::prost::alloc::string::String,
#[prost(string, tag="4")]
pub index_code: ::prost::alloc::string::String,
#[prost(string, tag="5")]
pub stock_fundcode: ::prost::alloc::string::String,
#[prost(string, tag="6")]
pub deriv_fundcode: ::prost::alloc::string::String,
#[prost(string, tag="7")]
pub basis_type: ::prost::alloc::string::String,
#[prost(string, tag="8")]
pub stock_program_type: ::prost::alloc::string::String,
#[prost(string, tag="9")]
pub deriv_program_type: ::prost::alloc::string::String,
#[prost(string, tag="10")]
pub etf_program_type: ::prost::alloc::string::String,
#[prost(string, tag="11")]
pub stock_price_type: ::prost::alloc::string::String,
#[prost(string, tag="12")]
pub deriv_price_type: ::prost::alloc::string::String,
#[prost(string, tag="13")]
pub etf_price_type: ::prost::alloc::string::String,
#[prost(double, tag="14")]
pub stock_dominance_threshold: f64,
#[prost(double, tag="15")]
pub deriv_dominance_threshold: f64,
#[prost(double, tag="16")]
pub etf_dominance_threshold: f64,
#[prost(double, tag="17")]
pub cu: f64,
#[prost(int64, tag="18")]
pub total_rounds: i64,
#[prost(int64, tag="19")]
pub remaining_turns: i64,
#[prost(double, tag="20")]
pub trigger_basis: f64,
#[prost(bool, tag="21")]
pub is_long: bool,
#[prost(string, tag="23")]
pub user_code: ::prost::alloc::string::String,
#[prost(bool, tag="24")]
pub check_all_sellable: bool,
#[prost(bool, tag="25")]
pub short_sellable: bool,
#[prost(bool, tag="26")]
pub apply_slippage: bool,
#[prost(double, tag="27")]
pub minimum_filled_ratio: f64,
#[prost(double, tag="28")]
pub minimum_interval: f64,
#[prost(double, tag="29")]
pub etf_unfilled_limit: f64,
#[prost(int64, tag="30")]
pub stock_future: i64,
#[prost(string, tag="31")]
pub stock_code: ::prost::alloc::string::String,
#[prost(int64, tag="32")]
pub stock_total_quantity: i64,
#[prost(bool, tag="33")]
pub stock_auto: bool,
#[prost(int64, tag="34")]
pub future_total_quantity: i64,
#[prost(bool, tag="35")]
pub future_auto: bool,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct ControlManagerRequest {
#[prost(string, tag="1")]
pub code: ::prost::alloc::string::String,
#[prost(string, tag="2")]
pub action: ::prost::alloc::string::String,
#[prost(string, tag="3")]
pub value: ::prost::alloc::string::String,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct BasketManagerDetail {
#[prost(string, tag="1")]
pub code: ::prost::alloc::string::String,
#[prost(string, tag="2")]
pub name: ::prost::alloc::string::String,
#[prost(string, tag="3")]
pub start_at: ::prost::alloc::string::String,
#[prost(string, tag="4")]
pub stop_at: ::prost::alloc::string::String,
#[prost(bool, tag="5")]
pub is_long: bool,
#[prost(bool, tag="6")]
pub active: bool,
#[prost(int64, tag="7")]
pub current_round: i64,
#[prost(int64, tag="8")]
pub total_rounds: i64,
#[prost(int64, tag="9")]
pub done_rounds: i64,
#[prost(double, tag="10")]
pub minimum_filled_ratio: f64,
#[prost(double, tag="11")]
pub minimum_interval: f64,
#[prost(double, tag="12")]
pub trigger_basis: f64,
#[prost(string, tag="13")]
pub index_code: ::prost::alloc::string::String,
#[prost(string, tag="14")]
pub index_name: ::prost::alloc::string::String,
#[prost(string, tag="15")]
pub basis_condition: ::prost::alloc::string::String,
#[prost(string, tag="16")]
pub basis_type: ::prost::alloc::string::String,
#[prost(string, tag="17")]
pub basis_price_type: ::prost::alloc::string::String,
#[prost(message, repeated, tag="18")]
pub items: ::prost::alloc::vec::Vec<BasketManagerDetailItem>,
#[prost(string, tag="19")]
pub user_code: ::prost::alloc::string::String,
#[prost(bool, tag="20")]
pub public: bool,
#[prost(int64, tag="21")]
pub remaining_turns: i64,
#[prost(string, tag="22")]
pub ui_group: ::prost::alloc::string::String,
#[prost(bool, tag="23")]
pub check_all_sellable: bool,
#[prost(string, tag="24")]
pub long_product_type: ::prost::alloc::string::String,
#[prost(string, tag="25")]
pub short_product_type: ::prost::alloc::string::String,
#[prost(int64, tag="26")]
pub short_quantity: i64,
#[prost(int64, tag="27")]
pub long_quantity: i64,
#[prost(int64, tag="28")]
pub short_products: i64,
#[prost(int64, tag="29")]
pub long_products: i64,
#[prost(bool, tag="30")]
pub short_sellable: bool,
#[prost(bool, tag="31")]
pub apply_slippage: bool,
#[prost(int64, tag="32")]
pub pause_round: i64,
#[prost(string, tag="33")]
pub created_at: ::prost::alloc::string::String,
#[prost(string, tag="34")]
pub fundcode: ::prost::alloc::string::String,
#[prost(double, tag="35")]
pub etf_unfilled_limit: f64,
#[prost(double, tag="36")]
pub grace_the_money: f64,
#[prost(bool, tag="37")]
pub regard_smp_as_traded: bool,
#[prost(double, tag="38")]
pub execution_threshold: f64,
#[prost(int64, tag="39")]
pub starter_limit_rounds: i64,
#[prost(string, tag="40")]
pub id_number: ::prost::alloc::string::String,
#[prost(bool, tag="41")]
pub check_all_connected: bool,
#[prost(string, tag="42")]
pub future_maturity_no: ::prost::alloc::string::String,
#[prost(bool, tag="43")]
pub auto_launch: bool,
#[prost(string, tag="44")]
pub launch_at: ::prost::alloc::string::String,
#[prost(string, tag="45")]
pub start_amend_at: ::prost::alloc::string::String,
#[prost(double, tag="46")]
pub launch_price_percent: f64,
#[prost(double, tag="47")]
pub participation_limit_percent: f64,
#[prost(bool, tag="48")]
pub launched: bool,
#[prost(string, tag="49")]
pub custom_product_code: ::prost::alloc::string::String,
#[prost(double, tag="50")]
pub custom_product_ratio: f64,
#[prost(string, tag="51")]
pub exchange: ::prost::alloc::string::String,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct BasketManagerDetailItem {
#[prost(int64, tag="10")]
pub no: i64,
#[prost(string, tag="14")]
pub id: ::prost::alloc::string::String,
#[prost(string, tag="1")]
pub code: ::prost::alloc::string::String,
#[prost(string, tag="2")]
pub name: ::prost::alloc::string::String,
#[prost(string, tag="3")]
pub fundcode: ::prost::alloc::string::String,
#[prost(string, tag="4")]
pub side: ::prost::alloc::string::String,
#[prost(double, tag="5")]
pub dominance_threshold: f64,
#[prost(string, tag="6")]
pub program_type: ::prost::alloc::string::String,
#[prost(string, tag="7")]
pub price_type: ::prost::alloc::string::String,
#[prost(int64, tag="8")]
pub total_quantity: i64,
#[prost(bool, tag="9")]
pub starter: bool,
#[prost(bool, tag="11")]
pub pending: bool,
#[prost(bool, tag="12")]
pub auto: bool,
#[prost(bool, tag="13")]
pub lp: bool,
#[prost(double, tag="15")]
pub order_price: f64,
#[prost(double, tag="16")]
pub percent: f64,
#[prost(int64, tag="17")]
pub ticks: i64,
#[prost(string, tag="18")]
pub position_type: ::prost::alloc::string::String,
#[prost(string, tag="19")]
pub exchange: ::prost::alloc::string::String,
}
include!("mmm.v1.basket.tonic.rs");
include!("mmm.v1.basket.serde.rs");