31 #include "../utils.hpp"
32 #include "rapidjson/include/rapidjson/document.h"
33 #include "rapidjson/include/rapidjson/rapidjson.h"
35 namespace kiteconnect {
38 namespace kc = kiteconnect;
39 namespace rj = rapidjson;
40 namespace utils = kc::internal::utils;
45 int32_t quantity = -1;
51 int32_t instrumentToken = -1;
52 int32_t timestamp = -1;
53 int32_t lastTradeTime = -1;
54 int32_t lastTradedQuantity = -1;
55 int32_t totalBuyQuantity = -1;
56 int32_t totalSellQuantity = -1;
57 int32_t volumeTraded = -1;
59 int32_t oiDayHigh = -1;
60 int32_t oiDayLow = -1;
62 double lastPrice = -1;
63 double averageTradePrice = -1;
64 double netChange = -1;
73 std::vector<depthWS> buy;
74 std::vector<depthWS> sell;
81 explicit postback(
const rj::Value::Object& val) { parse(val); };
83 void parse(
const rj::Value::Object& val) {
84 orderId = utils::json::get<string>(val,
"order_id");
85 exchangeOrderId = utils::json::get<string>(val,
"exchange_order_id");
86 placedBy = utils::json::get<string>(val,
"placed_by");
87 status = utils::json::get<string>(val,
"status");
88 statusMessage = utils::json::get<string>(val,
"status_message");
89 tradingSymbol = utils::json::get<string>(val,
"tradingsymbol");
90 exchange = utils::json::get<string>(val,
"exchange");
91 orderType = utils::json::get<string>(val,
"order_type");
92 transactionType = utils::json::get<string>(val,
"transaction_type");
93 validity = utils::json::get<string>(val,
"validity");
94 product = utils::json::get<string>(val,
"product");
95 averagePrice = utils::json::get<double>(val,
"average_price");
96 price = utils::json::get<double>(val,
"price");
97 quantity = utils::json::get<int>(val,
"quantity");
98 filledQuantity = utils::json::get<int>(val,
"filled_quantity");
99 unfilledQuantity = utils::json::get<int>(val,
"unfilled_quantity");
100 triggerPrice = utils::json::get<double>(val,
"trigger_price");
101 userId = utils::json::get<string>(val,
"user_id");
102 orderTimestamp = utils::json::get<string>(val,
"order_timestamp");
103 exchangeTimestamp = utils::json::get<string>(val,
"exchange_timestamp");
104 checksum = utils::json::get<string>(val,
"checksum");
108 int filledQuantity = -1;
109 int unfilledQuantity = -1;
110 double averagePrice = -1;
112 double triggerPrice = -1;
114 string exchangeOrderId;
117 string statusMessage;
118 string tradingSymbol;
121 string transactionType;
125 string orderTimestamp;
126 string exchangeTimestamp;