1pub const INIT_CONNECT: u32 = 1001;
11pub const GET_GLOBAL_STATE: u32 = 1002;
12pub const NOTIFY: u32 = 1003;
13pub const KEEP_ALIVE: u32 = 1004;
14
15pub const GET_USED_QUOTA: u32 = 1010;
17
18pub const QOT_SUB: u32 = 3001;
20pub const QOT_REG_QOT_PUSH: u32 = 3002;
21pub const QOT_GET_SUB_INFO: u32 = 3003;
22pub const QOT_GET_BASIC_QOT: u32 = 3004;
23pub const QOT_UPDATE_BASIC_QOT: u32 = 3005;
24pub const QOT_GET_KL: u32 = 3006;
25pub const QOT_UPDATE_KL: u32 = 3007;
26pub const QOT_GET_RT: u32 = 3008;
27pub const QOT_UPDATE_RT: u32 = 3009;
28pub const QOT_GET_TICKER: u32 = 3010;
29pub const QOT_UPDATE_TICKER: u32 = 3011;
30pub const QOT_GET_ORDER_BOOK: u32 = 3012;
31pub const QOT_UPDATE_ORDER_BOOK: u32 = 3013;
32pub const QOT_GET_BROKER: u32 = 3014;
33pub const QOT_UPDATE_BROKER: u32 = 3015;
34pub const QOT_GET_ORDER_DETAIL: u32 = 3016;
35pub const QOT_UPDATE_ORDER_DETAIL: u32 = 3017;
36
37pub const QOT_GET_HISTORY_KL: u32 = 3100;
38pub const QOT_GET_HISTORY_KL_POINTS: u32 = 3101;
39pub const QOT_REQUEST_HISTORY_KL: u32 = 3103;
40
41pub const QOT_GET_TRADE_DATE: u32 = 3200;
42pub const QOT_GET_SUSPEND: u32 = 3201;
43pub const QOT_GET_STATIC_INFO: u32 = 3202;
44pub const QOT_GET_SECURITY_SNAPSHOT: u32 = 3203;
45pub const QOT_GET_PLATE_SET: u32 = 3204;
46pub const QOT_GET_PLATE_SECURITY: u32 = 3205;
47pub const QOT_GET_REFERENCE: u32 = 3206;
48pub const QOT_GET_OWNER_PLATE: u32 = 3207;
49pub const QOT_GET_HOLDING_CHANGE_LIST: u32 = 3208;
50pub const QOT_GET_OPTION_CHAIN: u32 = 3209;
51pub const QOT_GET_REHAB: u32 = 3702;
52
53pub const QOT_GET_WARRANT: u32 = 3210;
55pub const QOT_GET_CAPITAL_FLOW: u32 = 3211;
56pub const QOT_GET_CAPITAL_DISTRIBUTION: u32 = 3212;
57pub const QOT_GET_USER_SECURITY: u32 = 3213;
58pub const QOT_MODIFY_USER_SECURITY: u32 = 3214;
59pub const QOT_STOCK_FILTER: u32 = 3215;
60pub const QOT_GET_CODE_CHANGE: u32 = 3216;
61pub const QOT_GET_IPO_LIST: u32 = 3217;
62pub const QOT_GET_FUTURE_INFO: u32 = 3218;
63pub const QOT_REQUEST_TRADE_DATE: u32 = 3219;
64pub const QOT_SET_PRICE_REMINDER: u32 = 3220;
65pub const QOT_GET_PRICE_REMINDER: u32 = 3221;
66pub const QOT_GET_USER_SECURITY_GROUP: u32 = 3222;
67pub const QOT_GET_MARKET_STATE: u32 = 3223;
68pub const QOT_GET_OPTION_EXPIRATION_DATE: u32 = 3224;
69pub const QOT_GET_FINANCIALS_EARNINGS_PRICE_MOVE: u32 = 3225;
71pub const QOT_GET_FINANCIALS_EARNINGS_PRICE_HISTORY: u32 = 3226;
72pub const QOT_GET_FINANCIALS_STATEMENTS: u32 = 3227;
73pub const QOT_GET_FINANCIALS_REVENUE_BREAKDOWN: u32 = 3228;
74pub const QOT_GET_RESEARCH_ANALYST_CONSENSUS: u32 = 3229;
75pub const QOT_GET_RESEARCH_RATING_SUMMARY: u32 = 3230;
76pub const QOT_GET_RESEARCH_MORNINGSTAR_REPORT: u32 = 3231;
77pub const QOT_GET_VALUATION_DETAIL: u32 = 3232;
78pub const QOT_GET_VALUATION_PLATE_STOCK_LIST: u32 = 3233;
79pub const QOT_GET_CORPORATE_ACTIONS_DIVIDENDS: u32 = 3234;
80pub const QOT_GET_CORPORATE_ACTIONS_BUYBACKS: u32 = 3235;
81pub const QOT_GET_CORPORATE_ACTIONS_STOCK_SPLITS: u32 = 3236;
82pub const QOT_GET_SHAREHOLDERS_OVERVIEW: u32 = 3237;
83pub const QOT_GET_SHAREHOLDERS_HOLDING_CHANGES: u32 = 3238;
84pub const QOT_GET_SHAREHOLDERS_HOLDER_DETAIL: u32 = 3239;
85pub const QOT_GET_SHAREHOLDERS_INSTITUTIONAL: u32 = 3240;
86pub const QOT_GET_INSIDER_HOLDER_LIST: u32 = 3241;
87pub const QOT_GET_INSIDER_TRADE_LIST: u32 = 3242;
88pub const QOT_GET_COMPANY_PROFILE: u32 = 3243;
89pub const QOT_GET_COMPANY_EXECUTIVES: u32 = 3244;
90pub const QOT_GET_COMPANY_EXECUTIVE_BACKGROUND: u32 = 3245;
91pub const QOT_GET_COMPANY_OPERATIONAL_EFFICIENCY: u32 = 3246;
92pub const QOT_GET_TOP_TEN_BUY_SELL_BROKERS: u32 = 3247;
93pub const QOT_GET_DAILY_SHORT_VOLUME: u32 = 3248;
94pub const QOT_GET_SHORT_INTEREST: u32 = 3249;
95pub const QOT_GET_OPTION_VOLATILITY: u32 = 3250;
96pub const QOT_GET_OPTION_EXERCISE_PROBABILITY: u32 = 3251;
97pub const QOT_STOCK_SCREEN: u32 = 3252;
98pub const QOT_OPTION_SCREEN: u32 = 3253;
99pub const QOT_WARRANT_SCREEN: u32 = 3254;
100pub const QOT_GET_OPTION_QUOTE: u32 = 3255;
101pub const QOT_GET_OPTION_STRATEGY: u32 = 3256;
102pub const QOT_GET_OPTION_STRATEGY_ANALYSIS: u32 = 3257;
103pub const QOT_GET_OPTION_STRATEGY_SPREAD: u32 = 3258;
104pub const QOT_GET_EARNINGS_CALENDAR: u32 = 3401;
109pub const QOT_GET_MACRO_INDICATOR_LIST: u32 = 3402;
110pub const QOT_GET_MACRO_INDICATOR_HISTORY: u32 = 3403;
111pub const QOT_GET_FED_WATCH_TARGET_RATE: u32 = 3404;
112pub const QOT_GET_FED_WATCH_DOT_PLOT: u32 = 3405;
113pub const QOT_GET_EARNINGS_BEAT_RANK: u32 = 3406;
114pub const QOT_GET_DIVIDEND_RANK: u32 = 3407;
115pub const QOT_GET_DIVIDEND_CALENDAR: u32 = 3408;
116pub const QOT_GET_ECONOMIC_CALENDAR: u32 = 3409;
117pub const QOT_GET_US_PRE_MARKET_RANK: u32 = 3410;
118pub const QOT_GET_US_AFTER_HOURS_RANK: u32 = 3411;
119pub const QOT_GET_US_OVERNIGHT_RANK: u32 = 3412;
120pub const QOT_GET_TOP_MOVERS_RANK: u32 = 3413;
121pub const QOT_GET_HOT_LIST: u32 = 3414;
122pub const QOT_GET_SHORT_SELLING_RANK: u32 = 3415;
123pub const QOT_GET_PERIOD_CHANGE_RANK: u32 = 3416;
124pub const QOT_GET_HIGH_DIVIDEND_SOE_RANK: u32 = 3417;
125pub const QOT_GET_INSTITUTION_LIST: u32 = 3418;
126pub const QOT_GET_INSTITUTION_PROFILE: u32 = 3419;
127pub const QOT_GET_INSTITUTION_DISTRIBUTION: u32 = 3420;
128pub const QOT_GET_INSTITUTION_HOLDING_CHANGE: u32 = 3421;
129pub const QOT_GET_INSTITUTION_HOLDING_LIST: u32 = 3422;
130pub const QOT_GET_ARK_FUND_HOLDING: u32 = 3423;
131pub const QOT_GET_ARK_STOCK_DYNAMIC: u32 = 3424;
132pub const QOT_GET_ARK_ACTIVE_TRANSACTION: u32 = 3425;
133pub const QOT_GET_RATING_CHANGE: u32 = 3426;
134pub const QOT_GET_INDUSTRIAL_CHAIN_LIST: u32 = 3427;
135pub const QOT_GET_INDUSTRIAL_CHAIN_DETAIL: u32 = 3428;
136pub const QOT_GET_INDUSTRIAL_CHAIN_BY_PLATE: u32 = 3429;
137pub const QOT_GET_INDUSTRIAL_PLATE_INFO: u32 = 3430;
138pub const QOT_GET_INDUSTRIAL_PLATE_STOCK: u32 = 3431;
139pub const QOT_GET_HEAT_MAP_DATA: u32 = 3432;
140pub const QOT_GET_RISE_FALL_DISTRIBUTION: u32 = 3433;
141pub const QOT_GET_TECHNICAL_UNUSUAL: u32 = 3801;
142pub const QOT_GET_FINANCIAL_UNUSUAL: u32 = 3802;
143pub const QOT_GET_DERIVATIVE_UNUSUAL: u32 = 3803;
144pub const QOT_UPDATE_PRICE_REMINDER: u32 = 3019;
145pub const QOT_REQUEST_HISTORY_KL_QUOTA: u32 = 3104;
146pub const QOT_REQUEST_REHAB: u32 = 3105;
147
148pub const VERIFICATION: u32 = 1006;
150pub const GET_USER_INFO: u32 = 1005;
151pub const GET_DELAY_STATISTICS: u32 = 1007;
152pub const TEST_CMD: u32 = 1008;
153pub const REMOTE_CMD: u32 = 1009;
154
155pub const GET_TOKEN_STATE: u32 = 1326;
157
158pub const QOT_GET_RISK_FREE_RATE: u32 = 20231;
160
161pub const QOT_GET_FINANCIAL_CALENDAR_VIEW_INTERNAL: u32 = 20025;
165pub const QOT_SEARCH_TARGET_FINANCIAL_CALENDAR: u32 = 20426;
168
169pub const QOT_GET_SPREAD_TABLE: u32 = 6503;
171
172pub const QOT_GET_TICKER_STATISTIC: u32 = 6365;
174pub const QOT_GET_TICKER_STATISTIC_DETAIL: u32 = 6366;
176
177pub const TRD_GET_ACC_LIST: u32 = 2001;
179pub const TRD_UNLOCK_TRADE: u32 = 2005;
180pub const TRD_SUB_ACC_PUSH: u32 = 2008;
181
182pub const TRD_UNSUB_ACC_PUSH_LOCAL: u32 = 0x7FFF_0000 | TRD_SUB_ACC_PUSH;
189
190pub const TRD_UNSUB_ACC_PUSH_INTERNAL: u32 = 0x8000_0000 | 2008;
200
201pub const TRD_GET_MARGIN_RATIO: u32 = 2223;
203pub const TRD_GET_ORDER_FEE: u32 = 2225;
204pub const TRD_FLOW_SUMMARY: u32 = 2226;
205
206pub const TRD_GET_CASH_LOG: u32 = 22701; pub const TRD_GET_CASH_DETAIL: u32 = 22702; pub const TRD_GET_BIZ_GROUP: u32 = 22703; pub const NN_CMD_GET_CASH_LOG: u16 = 3000;
213pub const NN_CMD_GET_CASH_DETAIL: u16 = 3001;
214pub const NN_CMD_GET_BIZ_GROUP: u16 = 3002;
215
216pub const TRD_GET_MARGIN_INFO: u32 = 22704;
218pub const NN_CMD_HK_MARGIN_INFO: u16 = 3101;
220pub const NN_CMD_US_MARGIN_INFO: u16 = 3102;
221pub const NN_CMD_CN_AH_MARGIN_INFO: u16 = 3107;
222
223pub const TRD_GET_ACCOUNT_FLAG: u32 = 22705; pub const NN_CMD_PULL_ACCOUNT_FLAG: u16 = 5281; pub const TRD_GET_BOND_TOTAL_ASSET: u32 = 22706; pub const TRD_GET_BOND_SINGLE_ASSET: u32 = 22707; pub const TRD_GET_BOND_POSITION_LIST: u32 = 22708; pub const TRD_GET_BOND_ANSWER_STATE: u32 = 22709; pub const TRD_GET_BOND_TRADE_REMINDER: u32 = 22710; pub const NN_CMD_BOND_TOTAL_ASSET: u16 = 9373; pub const NN_CMD_BOND_SINGLE_ASSET: u16 = 9374; pub const NN_CMD_BOND_POSITION_LIST: u16 = 9375; pub const NN_CMD_BOND_ANSWER_STATE: u16 = 10043; pub const NN_CMD_BOND_TRADE_REMINDER: u16 = 10057; pub const TRD_GET_FUNDS: u32 = 2101;
242pub const TRD_GET_POSITION_LIST: u32 = 2102;
243pub const TRD_GET_MAX_TRD_QTYS: u32 = 2111;
244pub const TRD_GET_COMBO_MAX_TRD_QTYS: u32 = 2112;
245pub const TRD_GET_ORDER_LIST: u32 = 2201;
246pub const TRD_PLACE_ORDER: u32 = 2202;
247pub const TRD_MODIFY_ORDER: u32 = 2205;
248pub const TRD_UPDATE_ORDER: u32 = 2208;
249pub const TRD_GET_ORDER_FILL_LIST: u32 = 2211;
250pub const TRD_UPDATE_ORDER_FILL: u32 = 2218;
251pub const TRD_GET_HISTORY_ORDER_LIST: u32 = 2221;
252pub const TRD_GET_HISTORY_ORDER_FILL_LIST: u32 = 2222;
253pub const TRD_PLACE_COMBO_ORDER: u32 = 2227;
254pub const TRD_RECONFIRM_ORDER: u32 = 2237;
255pub const TRD_NOTIFY: u32 = 2240;
256
257#[must_use]
261pub fn is_push_proto(proto_id: u32) -> bool {
262 matches!(
263 proto_id,
264 NOTIFY
265 | QOT_UPDATE_BASIC_QOT
266 | QOT_UPDATE_KL
267 | QOT_UPDATE_RT
268 | QOT_UPDATE_TICKER
269 | QOT_UPDATE_ORDER_BOOK
270 | QOT_UPDATE_BROKER
271 | QOT_UPDATE_ORDER_DETAIL
272 | QOT_UPDATE_PRICE_REMINDER
273 | TRD_UPDATE_ORDER
274 | TRD_UPDATE_ORDER_FILL
275 | TRD_NOTIFY
276 )
277}
278
279#[cfg(test)]
280mod tests;