00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018 #pragma once
00019 #include <string>
00020 #include <queue>
00021 #include <exch_lib/OrderEntry.h>
00022
00023 namespace RT
00024 {
00025
00026
00027 class RTExecutionReport
00028 {
00029 public:
00030 RTExecutionReport();
00031
00032 std::string sec_id;
00033 std::string account;
00034 std::string real_cl_id;
00035 std::string cl_id;
00036 std::string orig_id;
00037 std::string exec_id;
00038 std::string exchange_id;
00039 int argo_ord_id;
00040 std::string trade_id;
00041
00042 std::string exec_broker;
00043 std::string Ref_exch_id;
00044 std::string this_execution_text;
00045 std::string last_mkt;
00046 liquidity_indicator_enum liquidity_indicator;
00047
00048 OrdStatus ord_status;
00049
00050 std::string symbol;
00051 std::string currency;
00052 std::string fut_sett_data;
00053 std::string trade_data;
00054
00055 double settl_curr_amount;
00056 std::string settl_currency;
00057 double order_qty2;
00058
00059 OrderSide side;
00060 bool is_short_sell_;
00061 std::string securityType;
00062 TimeInForce timeInForce;
00063 OrderType ord_type;
00064
00065 ExecType exec_type;
00066 ExecTransType trans_type;
00067
00068 time_t init_time;
00069 time_t effective_time_;
00070
00071 int limit_price;
00072 int last_shares;
00073 int last_px;
00074 int cum_qty;
00075 int leaves_qty;
00076 int avg_px;
00077
00078 int stop_px;
00079 int orig_order_qty;
00080
00081 static const char* exec_type_txt(ExecType );
00082 static const char* exec_trans_type_txt(ExecTransType);
00083 static const char* order_status_txt(OrdStatus);
00084
00085 std::string exchange_name;
00086 int denominator;
00087 int transaction_id;
00088
00089 bool parked_;
00090 int historical_;
00091 bool need_send_rmcast_;
00092 bool need_store_to_DB_;
00093
00094 int flags_;
00095 std::string parent_trade_id_;
00096 int leg_side_;
00097 int is_pos_detailes_;
00098 int unconfirmed_;
00099 std::string root_exchange_id_;
00100
00101 std::string order_history_;
00102 std::string request_id_;
00103 bool is_last_;
00104
00105 int max_show_;
00106 bool is_automated_trading_system_;
00107 std::string trader_location_;
00108 };
00109
00110
00111 struct RTOrderCancelReject
00112 {
00113 std::string exchange_id;
00114 std::string cl_ord_id;
00115 std::string orig_cl_ord_id;
00116 OrdStatus ord_status;
00117 OrdRejectResponseTo rej_response;
00118 time_t init_time;
00119 std::string text;
00120 };
00121
00122
00123 struct RTBusinessMessageReject
00124 {
00125 std::string cl_ord_id;
00126 business_reject_reason rej_reason;
00127 std::string text;
00128 int ref_seq_num;
00129 std::string ref_msg_type;
00130 };
00131
00132
00133 }