#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct OrderLog {
#[prost(int64, tag="1")]
pub id: i64,
#[prost(uint64, tag="2")]
pub order_id: u64,
#[prost(uint64, optional, tag="3")]
pub original_order_id: ::core::option::Option<u64>,
#[prost(string, tag="4")]
pub fund_code: ::prost::alloc::string::String,
#[prost(string, tag="5")]
pub symbol: ::prost::alloc::string::String,
#[prost(enumeration="OrderLogType", tag="6")]
pub log_type: i32,
#[prost(enumeration="super::common::OrderSide", tag="7")]
pub side: i32,
#[prost(enumeration="OrderType", tag="8")]
pub order_type: i32,
#[prost(string, tag="9")]
pub price: ::prost::alloc::string::String,
#[prost(string, tag="10")]
pub quantity: ::prost::alloc::string::String,
#[prost(string, optional, tag="11")]
pub filled_price: ::core::option::Option<::prost::alloc::string::String>,
#[prost(string, optional, tag="12")]
pub filled_quantity: ::core::option::Option<::prost::alloc::string::String>,
#[prost(string, optional, tag="13")]
pub filled_amount: ::core::option::Option<::prost::alloc::string::String>,
#[prost(string, optional, tag="14")]
pub rejection_code: ::core::option::Option<::prost::alloc::string::String>,
#[prost(string, optional, tag="15")]
pub error_message: ::core::option::Option<::prost::alloc::string::String>,
#[prost(uint64, tag="16")]
pub exchange_time: u64,
#[prost(uint64, tag="17")]
pub receive_time: u64,
#[prost(message, optional, tag="18")]
pub created_at: ::core::option::Option<super::super::super::google::protobuf::Timestamp>,
#[prost(enumeration="super::common::MarketType", tag="19")]
pub market_type: i32,
#[prost(uint32, tag="20")]
pub date: u32,
#[prost(string, optional, tag="21")]
pub user_area: ::core::option::Option<::prost::alloc::string::String>,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, Copy, PartialEq, ::prost::Message)]
pub struct OrderLogFillStatistics {
#[prost(int64, tag="1")]
pub total_fills: i64,
#[prost(int64, tag="2")]
pub total_quantity: i64,
#[prost(int64, tag="3")]
pub total_amount: i64,
#[prost(int64, tag="4")]
pub buy_count: i64,
#[prost(int64, tag="5")]
pub sell_count: i64,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct ListOrderLogsRequest {
#[prost(uint32, optional, tag="1")]
pub page_size: ::core::option::Option<u32>,
#[prost(string, optional, tag="2")]
pub page_token: ::core::option::Option<::prost::alloc::string::String>,
#[prost(string, tag="3")]
pub filter: ::prost::alloc::string::String,
#[prost(string, tag="4")]
pub order_by: ::prost::alloc::string::String,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct ListOrderLogsResponse {
#[prost(message, repeated, tag="1")]
pub order_logs: ::prost::alloc::vec::Vec<OrderLog>,
#[prost(string, tag="2")]
pub next_page_token: ::prost::alloc::string::String,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct GetOrderLogStatisticsRequest {
#[prost(string, tag="1")]
pub filter: ::prost::alloc::string::String,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, Copy, PartialEq, ::prost::Message)]
pub struct GetOrderChainRequest {
#[prost(uint64, tag="1")]
pub order_id: u64,
#[prost(uint32, optional, tag="2")]
pub date: ::core::option::Option<u32>,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct GetOrderChainResponse {
#[prost(message, repeated, tag="1")]
pub order_logs: ::prost::alloc::vec::Vec<OrderLog>,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, Copy, PartialEq, ::prost::Message)]
pub struct GetHedgePairDetailRequest {
#[prost(uint64, tag="1")]
pub order_id: u64,
#[prost(uint32, optional, tag="2")]
pub date: ::core::option::Option<u32>,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct StreamHedgePairDetailRequest {
#[prost(string, tag="1")]
pub symbol: ::prost::alloc::string::String,
#[prost(string, optional, tag="2")]
pub fund_code: ::core::option::Option<::prost::alloc::string::String>,
#[prost(string, optional, tag="3")]
pub hedge_symbol: ::core::option::Option<::prost::alloc::string::String>,
#[prost(enumeration="super::common::OrderSide", optional, tag="4")]
pub quote_side: ::core::option::Option<i32>,
#[prost(uint64, optional, tag="5")]
pub since_hedge_exchange_time_us: ::core::option::Option<u64>,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct HedgePairDetail {
#[prost(uint64, tag="1")]
pub quote_order_id: u64,
#[prost(string, tag="2")]
pub quote_symbol: ::prost::alloc::string::String,
#[prost(enumeration="super::common::OrderSide", tag="3")]
pub quote_side: i32,
#[prost(int64, tag="4")]
pub quote_filled_quantity: i64,
#[prost(double, tag="5")]
pub quote_avg_price: f64,
#[prost(string, tag="6")]
pub hedge_symbol: ::prost::alloc::string::String,
#[prost(int64, tag="7")]
pub hedge_filled_quantity: i64,
#[prost(double, tag="8")]
pub hedge_avg_price: f64,
#[prost(double, tag="9")]
pub spread: f64,
#[prost(string, tag="10")]
pub fund_code: ::prost::alloc::string::String,
#[prost(uint32, tag="11")]
pub date: u32,
#[prost(uint64, tag="12")]
pub hedge_exchange_time: u64,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, Copy, PartialEq, ::prost::Message)]
pub struct SideFillSummary {
#[prost(uint64, tag="1")]
pub fill_count: u64,
#[prost(int64, tag="2")]
pub filled_quantity: i64,
#[prost(double, tag="3")]
pub avg_price: f64,
#[prost(double, tag="4")]
pub amount: f64,
#[prost(uint64, tag="5")]
pub last_exchange_time: u64,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct LegFillSummary {
#[prost(string, tag="1")]
pub fund_code: ::prost::alloc::string::String,
#[prost(string, tag="2")]
pub symbol: ::prost::alloc::string::String,
#[prost(message, optional, tag="3")]
pub bid: ::core::option::Option<SideFillSummary>,
#[prost(message, optional, tag="4")]
pub ask: ::core::option::Option<SideFillSummary>,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct PairFillSummary {
#[prost(message, optional, tag="1")]
pub quote: ::core::option::Option<LegFillSummary>,
#[prost(message, optional, tag="2")]
pub hedge: ::core::option::Option<LegFillSummary>,
#[prost(uint32, tag="3")]
pub date: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct StreamPairFillSummaryRequest {
#[prost(string, tag="1")]
pub quote_fund_code: ::prost::alloc::string::String,
#[prost(string, tag="2")]
pub quote_symbol: ::prost::alloc::string::String,
#[prost(string, tag="3")]
pub hedge_fund_code: ::prost::alloc::string::String,
#[prost(string, tag="4")]
pub hedge_symbol: ::prost::alloc::string::String,
#[prost(uint32, optional, tag="5")]
pub date: ::core::option::Option<u32>,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct ListHedgePairDetailsRequest {
#[prost(string, tag="1")]
pub symbol: ::prost::alloc::string::String,
#[prost(string, optional, tag="2")]
pub fund_code: ::core::option::Option<::prost::alloc::string::String>,
#[prost(string, optional, tag="3")]
pub hedge_symbol: ::core::option::Option<::prost::alloc::string::String>,
#[prost(enumeration="super::common::OrderSide", optional, tag="4")]
pub quote_side: ::core::option::Option<i32>,
#[prost(uint32, optional, tag="5")]
pub date: ::core::option::Option<u32>,
#[prost(uint64, optional, tag="6")]
pub since_hedge_exchange_time_us: ::core::option::Option<u64>,
#[prost(int32, tag="7")]
pub page_size: i32,
#[prost(string, tag="8")]
pub page_token: ::prost::alloc::string::String,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct ListHedgePairDetailsResponse {
#[prost(message, repeated, tag="1")]
pub details: ::prost::alloc::vec::Vec<HedgePairDetail>,
#[prost(string, tag="2")]
pub next_page_token: ::prost::alloc::string::String,
}
#[derive(Clone, Copy, Debug, PartialEq, Eq, Hash, PartialOrd, Ord, ::prost::Enumeration)]
#[repr(i32)]
pub enum OrderLogType {
Unspecified = 0,
Received = 1,
Rejected = 2,
MeritzRejected = 3,
Filled = 4,
AutoCancelled = 5,
}
impl OrderLogType {
pub fn as_str_name(&self) -> &'static str {
match self {
OrderLogType::Unspecified => "ORDER_LOG_TYPE_UNSPECIFIED",
OrderLogType::Received => "RECEIVED",
OrderLogType::Rejected => "REJECTED",
OrderLogType::MeritzRejected => "MERITZ_REJECTED",
OrderLogType::Filled => "FILLED",
OrderLogType::AutoCancelled => "AUTO_CANCELLED",
}
}
pub fn from_str_name(value: &str) -> ::core::option::Option<Self> {
match value {
"ORDER_LOG_TYPE_UNSPECIFIED" => Some(Self::Unspecified),
"RECEIVED" => Some(Self::Received),
"REJECTED" => Some(Self::Rejected),
"MERITZ_REJECTED" => Some(Self::MeritzRejected),
"FILLED" => Some(Self::Filled),
"AUTO_CANCELLED" => Some(Self::AutoCancelled),
_ => None,
}
}
}
#[derive(Clone, Copy, Debug, PartialEq, Eq, Hash, PartialOrd, Ord, ::prost::Enumeration)]
#[repr(i32)]
pub enum OrderType {
Unspecified = 0,
New = 1,
Amend = 2,
Cancel = 3,
}
impl OrderType {
pub fn as_str_name(&self) -> &'static str {
match self {
OrderType::Unspecified => "ORDER_TYPE_UNSPECIFIED",
OrderType::New => "NEW",
OrderType::Amend => "AMEND",
OrderType::Cancel => "CANCEL",
}
}
pub fn from_str_name(value: &str) -> ::core::option::Option<Self> {
match value {
"ORDER_TYPE_UNSPECIFIED" => Some(Self::Unspecified),
"NEW" => Some(Self::New),
"AMEND" => Some(Self::Amend),
"CANCEL" => Some(Self::Cancel),
_ => None,
}
}
}
include!("kdo.v1.order_log.tonic.rs");
include!("kdo.v1.order_log.serde.rs");