@@ -13,7 +13,8 @@ cdef class FuncWrapper:
13
13
return out
14
14
15
15
16
- TRADE_COLUMNS = [' Symbol' , ' Price' , ' ExchangeCode' , ' Size' , ' Tick' , ' Change' , ' DayVolume' , ' Time' , ' IsETH' ]
16
+ TRADE_COLUMNS = [' Symbol' , ' Sequence' , ' Price' , ' ExchangeCode' , ' Size' , ' Tick' , ' Change' , ' DayVolume' ,
17
+ ' DayTurnover' , ' Direction' , ' Time' , ' TimeNanos' , ' RawFlags' , ' IsETH' , ' Scope' ]
17
18
cdef void trade_default_listener(int event_type,
18
19
dxf_const_string_t symbol_name,
19
20
const dxf_event_data_t* data,
@@ -25,17 +26,23 @@ cdef void trade_default_listener(int event_type,
25
26
for i in range (data_count):
26
27
27
28
py_data.cython_internal_update_method([unicode_from_dxf_const_string_t(symbol_name),
29
+ trades[i].sequence,
28
30
trades[i].price,
29
31
unicode_from_dxf_const_string_t(& trades[i].exchange_code),
30
32
trades[i].size,
31
33
trades[i].tick,
32
34
trades[i].change,
33
35
trades[i].day_volume,
36
+ trades[i].day_turnover,
37
+ trades[i].direction,
34
38
trades[i].time,
35
- trades[i].is_eth])
39
+ trades[i].time_nanos,
40
+ trades[i].raw_flags,
41
+ trades[i].is_eth,
42
+ trades[i].scope])
36
43
37
- QUOTE_COLUMNS = [' Symbol' , ' BidTime ' , ' BidExchangeCode ' , ' BidPrice ' , ' BidSize ' , ' AskTime ' , ' AskExchangeCode ' ,
38
- ' AskPrice' , ' AskSize' , ' Scope' ]
44
+ QUOTE_COLUMNS = [' Symbol' , ' Sequence ' , ' Time ' , ' TimeNanos ' , ' BidTime ' , ' BidExchangeCode ' , ' BidPrice ' , ' BidSize ' ,
45
+ ' AskTime ' , ' AskExchangeCode ' , ' AskPrice' , ' AskSize' , ' Scope' ]
39
46
cdef void quote_default_listener(int event_type,
40
47
dxf_const_string_t symbol_name,
41
48
const dxf_event_data_t* data,
@@ -47,6 +54,9 @@ cdef void quote_default_listener(int event_type,
47
54
48
55
for i in range (data_count):
49
56
py_data.cython_internal_update_method([unicode_from_dxf_const_string_t(symbol_name),
57
+ quotes[i].sequence,
58
+ quotes[i].time,
59
+ quotes[i].time_nanos,
50
60
quotes[i].bid_time,
51
61
unicode_from_dxf_const_string_t(& quotes[i].bid_exchange_code),
52
62
quotes[i].bid_price,
@@ -57,8 +67,9 @@ cdef void quote_default_listener(int event_type,
57
67
quotes[i].ask_size,
58
68
< int > quotes[i].scope])
59
69
60
- SUMMARY_COLUMNS = [' Symbol' , ' DayId' , ' DayHighPrice' , ' DayLowPrice' , ' DayClosePrice' , ' PrevDayId' , ' PrevDayClosePrice' ,
61
- ' PrevDayVolume' , ' OpenInterest' , ' ExchangeCode' ]
70
+ SUMMARY_COLUMNS = [' Symbol' , ' DayId' , ' DayOpenPrice' , ' DayHighPrice' , ' DayLowPrice' , ' DayClosePrice' , ' PrevDayId' ,
71
+ ' PrevDayClosePrice' , ' PrevDayVolume' , ' OpenInterest' , ' RawFlags' , ' ExchangeCode' ,
72
+ ' DayClosePriceType' , ' PrevDayClosePriceType' , ' Scope' ]
62
73
cdef void summary_default_listener(int event_type, dxf_const_string_t symbol_name,
63
74
const dxf_event_data_t* data, int data_count, void * user_data) nogil:
64
75
cdef dxf_summary_t* summary = < dxf_summary_t* > data
@@ -68,17 +79,23 @@ cdef void summary_default_listener(int event_type, dxf_const_string_t symbol_nam
68
79
for i in range (data_count):
69
80
py_data.cython_internal_update_method([unicode_from_dxf_const_string_t(symbol_name),
70
81
summary[i].day_id,
82
+ summary[i].day_open_price,
71
83
summary[i].day_high_price,
72
84
summary[i].day_low_price,
73
85
summary[i].day_close_price,
74
86
summary[i].prev_day_id,
75
87
summary[i].prev_day_close_price,
76
88
summary[i].prev_day_volume,
77
89
summary[i].open_interest,
78
- unicode_from_dxf_const_string_t(& summary[i].exchange_code)])
90
+ summary[i].raw_flags,
91
+ unicode_from_dxf_const_string_t(& summary[i].exchange_code),
92
+ summary[i].day_close_price_type,
93
+ summary[i].prev_day_close_price_type,
94
+ summary[i].scope])
79
95
80
96
PROFILE_COLUMNS = [' Symbol' , ' Beta' , ' EPS' , ' DivFreq' , ' ExdDivAmount' , ' ExdDivDate' , ' 52HighPrice' , ' 52LowPrice' ,
81
- ' Shares' , ' Description' , ' RawFlags' , ' StatusReason' ]
97
+ ' Shares' , ' FreeFloat' , ' HighLimitPrice' , ' LowLimitPrice' , ' HaltStartTime' , ' HaltEndTime' ,
98
+ ' Description' , ' RawFlags' , ' StatusReason' , ' TradingStatus' , ' ShortSaleRestriction' ]
82
99
cdef void profile_default_listener(int event_type,
83
100
dxf_const_string_t symbol_name,
84
101
const dxf_event_data_t* data,
@@ -97,13 +114,20 @@ cdef void profile_default_listener(int event_type,
97
114
p[i]._52_high_price,
98
115
p[i]._52_low_price,
99
116
p[i].shares,
117
+ p[i].free_float,
118
+ p[i].high_limit_price,
119
+ p[i].low_limit_price,
120
+ p[i].halt_start_time,
121
+ p[i].halt_end_time,
100
122
unicode_from_dxf_const_string_t(p[i].description),
101
123
p[i].raw_flags,
102
- unicode_from_dxf_const_string_t(p[i].status_reason)])
124
+ unicode_from_dxf_const_string_t(p[i].status_reason),
125
+ p[i].trading_status,
126
+ p[i].ssr])
103
127
104
128
TIME_AND_SALE_COLUMNS = [' Symbol' , ' EventFlags' , ' Index' , ' Time' , ' ExchangeCode' , ' Price' , ' Size' , ' BidPrice' ,
105
129
' AskPrice' , ' ExchangeSaleConditions' , ' RawFlags' , ' Buyer' , ' Seller' , ' Side' , ' Type' ,
106
- ' IsValidTick' , ' IsEthTrade' , ' TradeThroughExempt' , ' IsSpreadLeg' ]
130
+ ' IsValidTick' , ' IsEthTrade' , ' TradeThroughExempt' , ' IsSpreadLeg' , ' Scope ' ]
107
131
cdef void time_and_sale_default_listener(int event_type,
108
132
dxf_const_string_t symbol_name,
109
133
const dxf_event_data_t* data,
@@ -131,10 +155,11 @@ cdef void time_and_sale_default_listener(int event_type,
131
155
tns[i].is_valid_tick,
132
156
tns[i].is_eth_trade,
133
157
tns[i].trade_through_exempt,
134
- tns[i].is_spread_leg])
158
+ tns[i].is_spread_leg,
159
+ tns[i].scope])
135
160
136
- CANDLE_COLUMNS = [' Symbol' , ' Index' , ' Time' , ' Sequence' , ' Count' , ' Open' , ' High' , ' Low' , ' Close' , ' Volume ' , ' VWap ' ,
137
- ' BidVolume' , ' AskVolume' , ' OpenInterest' , ' ImpVolatility' ]
161
+ CANDLE_COLUMNS = [' Symbol' , ' EventFlags ' , ' Index' , ' Time' , ' Sequence' , ' Count' , ' Open' , ' High' , ' Low' , ' Close' ,
162
+ ' Volume ' , ' VWap ' , ' BidVolume' , ' AskVolume' , ' OpenInterest' , ' ImpVolatility' ]
138
163
cdef void candle_default_listener(int event_type,
139
164
dxf_const_string_t symbol_name,
140
165
const dxf_event_data_t* data,
@@ -145,6 +170,7 @@ cdef void candle_default_listener(int event_type,
145
170
py_data = < EventHandler> user_data
146
171
for i in range (data_count):
147
172
py_data.cython_internal_update_method([unicode_from_dxf_const_string_t(symbol_name),
173
+ candle[i].event_flags,
148
174
candle[i].index,
149
175
candle[i].time,
150
176
candle[i].sequence,
@@ -160,8 +186,8 @@ cdef void candle_default_listener(int event_type,
160
186
candle[i].open_interest,
161
187
candle[i].imp_volatility])
162
188
163
- ORDER_COLUMNS = [' Symbol' , ' EventFlags' , ' Index' , ' Time' , ' Nanos ' , ' Sequence' , ' Price' , ' Size' , ' Count' , ' Scope' ,
164
- ' Side' , ' ExchangeCode' , ' MarketMaker' , ' SpreadSymbol' ]
189
+ ORDER_COLUMNS = [' Symbol' , ' EventFlags' , ' Index' , ' Time' , ' TimeNanos ' , ' Sequence' , ' Price' , ' Size' , ' Count' , ' Scope' ,
190
+ ' Side' , ' ExchangeCode' , ' Source ' , ' MarketMaker' , ' SpreadSymbol' ]
165
191
cdef void order_default_listener(int event_type,
166
192
dxf_const_string_t symbol_name,
167
193
const dxf_event_data_t* data,
@@ -183,6 +209,8 @@ cdef void order_default_listener(int event_type,
183
209
order[i].scope,
184
210
order[i].side,
185
211
unicode_from_dxf_const_string_t(& order[i].exchange_code),
212
+ unicode_from_dxf_const_string_t(
213
+ & order[i].source[DXF_RECORD_SUFFIX_SIZE]),
186
214
unicode_from_dxf_const_string_t(order[i].market_maker),
187
215
unicode_from_dxf_const_string_t(order[i].spread_symbol)])
188
216
@@ -244,7 +272,7 @@ cdef void underlying_default_listener(int event_type,
244
272
underlying[i].back_volatility,
245
273
underlying[i].put_call_ratio])
246
274
247
- SERIES_COLUMNS = [' Symbol' , ' EventFlags' , ' Index' , ' Time' , ' Sequence' , ' Sequence ' , ' Expiration' , ' Volatility' ,
275
+ SERIES_COLUMNS = [' Symbol' , ' EventFlags' , ' Index' , ' Time' , ' Sequence' , ' Expiration' , ' Volatility' ,
248
276
' PutCallRatio' , ' ForwardPrice' , ' Dividend' , ' Interest' ]
249
277
cdef void series_default_listener(int event_type,
250
278
dxf_const_string_t symbol_name,
@@ -260,7 +288,6 @@ cdef void series_default_listener(int event_type,
260
288
series[i].index,
261
289
series[i].time,
262
290
series[i].sequence,
263
- series[i].sequence,
264
291
series[i].expiration,
265
292
series[i].volatility,
266
293
series[i].put_call_ratio,
@@ -280,4 +307,4 @@ cdef void configuration_default_listener(int event_type,
280
307
for i in range (data_count):
281
308
py_data.cython_internal_update_method([unicode_from_dxf_const_string_t(symbol_name),
282
309
config[i].version,
283
- unicode_from_dxf_const_string_t(config[i].object)])
310
+ unicode_from_dxf_const_string_t(config[i].object)])
0 commit comments