gitee.com/haifengat/gotap_dipper@v0.0.4-0.20231212021028-041a6fa876e5/c/trade.cpp (about) 1 #include "trade.h" 2 #include <iostream> 3 4 using namespace std; 5 using namespace ITapTrade; 6 Trade::Trade(void) { 7 _OnConnect = NULL; 8 _OnRspLogin = NULL; 9 _OnRtnContactInfo = NULL; 10 _OnRspRequestVertificateCode = NULL; 11 _OnExpriationDate = NULL; 12 _OnAPIReady = NULL; 13 _OnDisconnect = NULL; 14 _OnRspChangePassword = NULL; 15 _OnRspAuthPassword = NULL; 16 _OnRspQryTradingDate = NULL; 17 _OnRspSetReservedInfo = NULL; 18 _OnRspQryAccount = NULL; 19 _OnRspQryFund = NULL; 20 _OnRtnFund = NULL; 21 _OnRspQryExchange = NULL; 22 _OnRspQryCommodity = NULL; 23 _OnRspQryContract = NULL; 24 _OnRtnContract = NULL; 25 _OnRspOrderAction = NULL; 26 _OnRtnOrder = NULL; 27 _OnRspQryOrder = NULL; 28 _OnRspQryOrderProcess = NULL; 29 _OnRspQryFill = NULL; 30 _OnRtnFill = NULL; 31 _OnRspQryPosition = NULL; 32 _OnRtnPosition = NULL; 33 _OnRspQryPositionSummary = NULL; 34 _OnRtnPositionSummary = NULL; 35 _OnRtnPositionProfit = NULL; 36 _OnRspQryCurrency = NULL; 37 _OnRspQryTradeMessage = NULL; 38 _OnRtnTradeMessage = NULL; 39 _OnRspQryHisOrder = NULL; 40 _OnRspQryHisOrderProcess = NULL; 41 _OnRspQryHisMatch = NULL; 42 _OnRspQryHisPosition = NULL; 43 _OnRspQryHisDelivery = NULL; 44 _OnRspQryAccountCashAdjust = NULL; 45 _OnRspQryBill = NULL; 46 _OnRspQryAccountFeeRent = NULL; 47 _OnRspQryAccountMarginRent = NULL; 48 _OnRspHKMarketOrderInsert = NULL; 49 _OnRspHKMarketOrderDelete = NULL; 50 _OnHKMarketQuoteNotice = NULL; 51 _OnRspOrderLocalRemove = NULL; 52 _OnRspOrderLocalInput = NULL; 53 _OnRspOrderLocalModify = NULL; 54 _OnRspOrderLocalTransfer = NULL; 55 _OnRspFillLocalInput = NULL; 56 _OnRspFillLocalRemove = NULL; 57 _OnRspQrySpotLock = NULL; 58 _OnRtnSpotLock = NULL; 59 _OnRspSubmitUserLoginInfo = NULL; 60 _OnRspSpecialOrderAction = NULL; 61 _OnRtnSpecialOrder = NULL; 62 _OnRspQrySpecialOrder = NULL; 63 _OnRspQryCombinePosition = NULL; 64 _OnRtnCombinePosition = NULL; 65 } 66 67 DLL_EXPORT_C_DECL void WINAPI SetOnConnect(Trade* spi, void* func) { 68 spi->_OnConnect = func; 69 } 70 71 DLL_EXPORT_C_DECL void WINAPI SetOnRspLogin(Trade* spi, void* func) { 72 spi->_OnRspLogin = func; 73 } 74 75 DLL_EXPORT_C_DECL void WINAPI SetOnRtnContactInfo(Trade* spi, void* func) { 76 spi->_OnRtnContactInfo = func; 77 } 78 79 DLL_EXPORT_C_DECL void WINAPI SetOnRspRequestVertificateCode(Trade* spi, void* func) { 80 spi->_OnRspRequestVertificateCode = func; 81 } 82 83 DLL_EXPORT_C_DECL void WINAPI SetOnExpriationDate(Trade* spi, void* func) { 84 spi->_OnExpriationDate = func; 85 } 86 87 DLL_EXPORT_C_DECL void WINAPI SetOnAPIReady(Trade* spi, void* func) { 88 spi->_OnAPIReady = func; 89 } 90 91 DLL_EXPORT_C_DECL void WINAPI SetOnDisconnect(Trade* spi, void* func) { 92 spi->_OnDisconnect = func; 93 } 94 95 DLL_EXPORT_C_DECL void WINAPI SetOnRspChangePassword(Trade* spi, void* func) { 96 spi->_OnRspChangePassword = func; 97 } 98 99 DLL_EXPORT_C_DECL void WINAPI SetOnRspAuthPassword(Trade* spi, void* func) { 100 spi->_OnRspAuthPassword = func; 101 } 102 103 DLL_EXPORT_C_DECL void WINAPI SetOnRspQryTradingDate(Trade* spi, void* func) { 104 spi->_OnRspQryTradingDate = func; 105 } 106 107 DLL_EXPORT_C_DECL void WINAPI SetOnRspSetReservedInfo(Trade* spi, void* func) { 108 spi->_OnRspSetReservedInfo = func; 109 } 110 111 DLL_EXPORT_C_DECL void WINAPI SetOnRspQryAccount(Trade* spi, void* func) { 112 spi->_OnRspQryAccount = func; 113 } 114 115 DLL_EXPORT_C_DECL void WINAPI SetOnRspQryFund(Trade* spi, void* func) { 116 spi->_OnRspQryFund = func; 117 } 118 119 DLL_EXPORT_C_DECL void WINAPI SetOnRtnFund(Trade* spi, void* func) { 120 spi->_OnRtnFund = func; 121 } 122 123 DLL_EXPORT_C_DECL void WINAPI SetOnRspQryExchange(Trade* spi, void* func) { 124 spi->_OnRspQryExchange = func; 125 } 126 127 DLL_EXPORT_C_DECL void WINAPI SetOnRspQryCommodity(Trade* spi, void* func) { 128 spi->_OnRspQryCommodity = func; 129 } 130 131 DLL_EXPORT_C_DECL void WINAPI SetOnRspQryContract(Trade* spi, void* func) { 132 spi->_OnRspQryContract = func; 133 } 134 135 DLL_EXPORT_C_DECL void WINAPI SetOnRtnContract(Trade* spi, void* func) { 136 spi->_OnRtnContract = func; 137 } 138 139 DLL_EXPORT_C_DECL void WINAPI SetOnRspOrderAction(Trade* spi, void* func) { 140 spi->_OnRspOrderAction = func; 141 } 142 143 DLL_EXPORT_C_DECL void WINAPI SetOnRtnOrder(Trade* spi, void* func) { 144 spi->_OnRtnOrder = func; 145 } 146 147 DLL_EXPORT_C_DECL void WINAPI SetOnRspQryOrder(Trade* spi, void* func) { 148 spi->_OnRspQryOrder = func; 149 } 150 151 DLL_EXPORT_C_DECL void WINAPI SetOnRspQryOrderProcess(Trade* spi, void* func) { 152 spi->_OnRspQryOrderProcess = func; 153 } 154 155 DLL_EXPORT_C_DECL void WINAPI SetOnRspQryFill(Trade* spi, void* func) { 156 spi->_OnRspQryFill = func; 157 } 158 159 DLL_EXPORT_C_DECL void WINAPI SetOnRtnFill(Trade* spi, void* func) { 160 spi->_OnRtnFill = func; 161 } 162 163 DLL_EXPORT_C_DECL void WINAPI SetOnRspQryPosition(Trade* spi, void* func) { 164 spi->_OnRspQryPosition = func; 165 } 166 167 DLL_EXPORT_C_DECL void WINAPI SetOnRtnPosition(Trade* spi, void* func) { 168 spi->_OnRtnPosition = func; 169 } 170 171 DLL_EXPORT_C_DECL void WINAPI SetOnRspQryPositionSummary(Trade* spi, void* func) { 172 spi->_OnRspQryPositionSummary = func; 173 } 174 175 DLL_EXPORT_C_DECL void WINAPI SetOnRtnPositionSummary(Trade* spi, void* func) { 176 spi->_OnRtnPositionSummary = func; 177 } 178 179 DLL_EXPORT_C_DECL void WINAPI SetOnRtnPositionProfit(Trade* spi, void* func) { 180 spi->_OnRtnPositionProfit = func; 181 } 182 183 DLL_EXPORT_C_DECL void WINAPI SetOnRspQryCurrency(Trade* spi, void* func) { 184 spi->_OnRspQryCurrency = func; 185 } 186 187 DLL_EXPORT_C_DECL void WINAPI SetOnRspQryTradeMessage(Trade* spi, void* func) { 188 spi->_OnRspQryTradeMessage = func; 189 } 190 191 DLL_EXPORT_C_DECL void WINAPI SetOnRtnTradeMessage(Trade* spi, void* func) { 192 spi->_OnRtnTradeMessage = func; 193 } 194 195 DLL_EXPORT_C_DECL void WINAPI SetOnRspQryHisOrder(Trade* spi, void* func) { 196 spi->_OnRspQryHisOrder = func; 197 } 198 199 DLL_EXPORT_C_DECL void WINAPI SetOnRspQryHisOrderProcess(Trade* spi, void* func) { 200 spi->_OnRspQryHisOrderProcess = func; 201 } 202 203 DLL_EXPORT_C_DECL void WINAPI SetOnRspQryHisMatch(Trade* spi, void* func) { 204 spi->_OnRspQryHisMatch = func; 205 } 206 207 DLL_EXPORT_C_DECL void WINAPI SetOnRspQryHisPosition(Trade* spi, void* func) { 208 spi->_OnRspQryHisPosition = func; 209 } 210 211 DLL_EXPORT_C_DECL void WINAPI SetOnRspQryHisDelivery(Trade* spi, void* func) { 212 spi->_OnRspQryHisDelivery = func; 213 } 214 215 DLL_EXPORT_C_DECL void WINAPI SetOnRspQryAccountCashAdjust(Trade* spi, void* func) { 216 spi->_OnRspQryAccountCashAdjust = func; 217 } 218 219 DLL_EXPORT_C_DECL void WINAPI SetOnRspQryBill(Trade* spi, void* func) { 220 spi->_OnRspQryBill = func; 221 } 222 223 DLL_EXPORT_C_DECL void WINAPI SetOnRspQryAccountFeeRent(Trade* spi, void* func) { 224 spi->_OnRspQryAccountFeeRent = func; 225 } 226 227 DLL_EXPORT_C_DECL void WINAPI SetOnRspQryAccountMarginRent(Trade* spi, void* func) { 228 spi->_OnRspQryAccountMarginRent = func; 229 } 230 231 DLL_EXPORT_C_DECL void WINAPI SetOnRspHKMarketOrderInsert(Trade* spi, void* func) { 232 spi->_OnRspHKMarketOrderInsert = func; 233 } 234 235 DLL_EXPORT_C_DECL void WINAPI SetOnRspHKMarketOrderDelete(Trade* spi, void* func) { 236 spi->_OnRspHKMarketOrderDelete = func; 237 } 238 239 DLL_EXPORT_C_DECL void WINAPI SetOnHKMarketQuoteNotice(Trade* spi, void* func) { 240 spi->_OnHKMarketQuoteNotice = func; 241 } 242 243 DLL_EXPORT_C_DECL void WINAPI SetOnRspOrderLocalRemove(Trade* spi, void* func) { 244 spi->_OnRspOrderLocalRemove = func; 245 } 246 247 DLL_EXPORT_C_DECL void WINAPI SetOnRspOrderLocalInput(Trade* spi, void* func) { 248 spi->_OnRspOrderLocalInput = func; 249 } 250 251 DLL_EXPORT_C_DECL void WINAPI SetOnRspOrderLocalModify(Trade* spi, void* func) { 252 spi->_OnRspOrderLocalModify = func; 253 } 254 255 DLL_EXPORT_C_DECL void WINAPI SetOnRspOrderLocalTransfer(Trade* spi, void* func) { 256 spi->_OnRspOrderLocalTransfer = func; 257 } 258 259 DLL_EXPORT_C_DECL void WINAPI SetOnRspFillLocalInput(Trade* spi, void* func) { 260 spi->_OnRspFillLocalInput = func; 261 } 262 263 DLL_EXPORT_C_DECL void WINAPI SetOnRspFillLocalRemove(Trade* spi, void* func) { 264 spi->_OnRspFillLocalRemove = func; 265 } 266 267 DLL_EXPORT_C_DECL void WINAPI SetOnRspQrySpotLock(Trade* spi, void* func) { 268 spi->_OnRspQrySpotLock = func; 269 } 270 271 DLL_EXPORT_C_DECL void WINAPI SetOnRtnSpotLock(Trade* spi, void* func) { 272 spi->_OnRtnSpotLock = func; 273 } 274 275 DLL_EXPORT_C_DECL void WINAPI SetOnRspSubmitUserLoginInfo(Trade* spi, void* func) { 276 spi->_OnRspSubmitUserLoginInfo = func; 277 } 278 279 DLL_EXPORT_C_DECL void WINAPI SetOnRspSpecialOrderAction(Trade* spi, void* func) { 280 spi->_OnRspSpecialOrderAction = func; 281 } 282 283 DLL_EXPORT_C_DECL void WINAPI SetOnRtnSpecialOrder(Trade* spi, void* func) { 284 spi->_OnRtnSpecialOrder = func; 285 } 286 287 DLL_EXPORT_C_DECL void WINAPI SetOnRspQrySpecialOrder(Trade* spi, void* func) { 288 spi->_OnRspQrySpecialOrder = func; 289 } 290 291 DLL_EXPORT_C_DECL void WINAPI SetOnRspQryCombinePosition(Trade* spi, void* func) { 292 spi->_OnRspQryCombinePosition = func; 293 } 294 295 DLL_EXPORT_C_DECL void WINAPI SetOnRtnCombinePosition(Trade* spi, void* func) { 296 spi->_OnRtnCombinePosition = func; 297 } 298 299 // 导出的请求函数 300 /* DLL_EXPORT_C_DECL ITapTrade::ITapTradeAPI *TAP_CDECL CreateITapTradeAPI(const ITapTrade::TapAPIApplicationInfo *appInfo, ITapTrade::TAPIINT32 &iResult); 301 DLL_EXPORT_C_DECL void TAP_CDECL FreeITapTradeAPI(ITapTrade::ITapTradeAPI *apiObj); 302 DLL_EXPORT_C_DECL const ITapTrade::TAPICHAR *TAP_CDECL GetITapTradeAPIVersion(); 303 DLL_EXPORT_C_DECL const char * TAP_CDECL GetITapErrorDescribe(ITapTrade::TAPIINT32 errorCode); */ 304 305 DLL_EXPORT_C_DECL void* WINAPI CreateITapTradeAPINotify() { 306 // 要确保编译通过 307 return new Trade(); 308 } 309 DLL_EXPORT_C_DECL ITapTrade::ITapTradeAPI* WINAPI CreateTradeAPI(const ITapTrade::TapAPIApplicationInfo* appInfo, TAPIINT32* res) { 310 TAPIINT32 iResult = 0; 311 ITapTrade::ITapTradeAPI* api = CreateITapTradeAPI(appInfo, iResult); 312 *res = iResult; 313 return api; 314 } 315 DLL_EXPORT_C_DECL void WINAPI FreeITapTradeAPI(ITapTrade::ITapTradeAPI* apiObj) { 316 return FreeITapTradeAPI(apiObj); 317 } 318 DLL_EXPORT_C_DECL void* WINAPI GetAPIVersion() { 319 cout << "C++编译版本: " << __cplusplus << endl; 320 return (void*)GetITapTradeAPIVersion(); 321 } 322 DLL_EXPORT_C_DECL void* WINAPI GetErrorDescribe(ITapTrade::TAPIINT32 errorCode) { 323 return (void*)GetITapErrorDescribe(errorCode); 324 } 325 326 DLL_EXPORT_C_DECL int WINAPI SetAPINotify(ITapTrade::ITapTradeAPI* api, ITapTradeAPINotify* pSpi) { 327 return api->SetAPINotify(pSpi); 328 } 329 330 DLL_EXPORT_C_DECL int WINAPI SetHostAddress(ITapTrade::ITapTradeAPI* api, const TAPICHAR* IP, TAPIUINT16 port) { 331 return api->SetHostAddress(IP, port); 332 } 333 334 DLL_EXPORT_C_DECL int WINAPI Login(ITapTrade::ITapTradeAPI* api, const TapAPITradeLoginAuth* loginAuth) { 335 return api->Login(loginAuth); 336 } 337 338 DLL_EXPORT_C_DECL int WINAPI RequestVertificateCode(ITapTrade::ITapTradeAPI* api, TAPIUINT32* sessionID, TAPISTR_40 ContactInfo) { 339 return api->RequestVertificateCode(sessionID, ContactInfo); 340 } 341 342 DLL_EXPORT_C_DECL int WINAPI SetVertificateCode(ITapTrade::ITapTradeAPI* api, TAPIUINT32* sessionID, TapAPISecondCertificationReq* req) { 343 return api->SetVertificateCode(sessionID, req); 344 } 345 346 DLL_EXPORT_C_DECL int WINAPI Disconnect(ITapTrade::ITapTradeAPI* api) { 347 return api->Disconnect(); 348 } 349 350 DLL_EXPORT_C_DECL int WINAPI ChangePassword(ITapTrade::ITapTradeAPI* api, TAPIUINT32* sessionID, const TapAPIChangePasswordReq* req) { 351 return api->ChangePassword(sessionID, req); 352 } 353 354 DLL_EXPORT_C_DECL int WINAPI AuthPassword(ITapTrade::ITapTradeAPI* api, TAPIUINT32* sessionID, const TapAPIAuthPasswordReq* req) { 355 return api->AuthPassword(sessionID, req); 356 } 357 358 DLL_EXPORT_C_DECL int WINAPI HaveCertainRight(ITapTrade::ITapTradeAPI* api, TAPIRightIDType rightID) { 359 return api->HaveCertainRight(rightID); 360 } 361 362 DLL_EXPORT_C_DECL int WINAPI QryTradingDate(ITapTrade::ITapTradeAPI* api, TAPIUINT32* sessionID) { 363 return api->QryTradingDate(sessionID); 364 } 365 366 DLL_EXPORT_C_DECL int WINAPI SetReservedInfo(ITapTrade::ITapTradeAPI* api, TAPIUINT32* sessionID, const TAPISTR_50 info) { 367 return api->SetReservedInfo(sessionID, info); 368 } 369 370 DLL_EXPORT_C_DECL int WINAPI QryAccount(ITapTrade::ITapTradeAPI* api, TAPIUINT32* sessionID, const TapAPIAccQryReq* qryReq) { 371 return api->QryAccount(sessionID, qryReq); 372 } 373 374 DLL_EXPORT_C_DECL int WINAPI QryFund(ITapTrade::ITapTradeAPI* api, TAPIUINT32* sessionID, const TapAPIFundReq* qryReq) { 375 return api->QryFund(sessionID, qryReq); 376 } 377 378 DLL_EXPORT_C_DECL int WINAPI QryExchange(ITapTrade::ITapTradeAPI* api, TAPIUINT32* sessionID) { 379 return api->QryExchange(sessionID); 380 } 381 382 DLL_EXPORT_C_DECL int WINAPI QryCommodity(ITapTrade::ITapTradeAPI* api, TAPIUINT32* sessionID) { 383 return api->QryCommodity(sessionID); 384 } 385 386 DLL_EXPORT_C_DECL int WINAPI QryContract(ITapTrade::ITapTradeAPI* api, TAPIUINT32* sessionID, const TapAPICommodity* qryReq) { 387 return api->QryContract(sessionID, qryReq); 388 } 389 390 DLL_EXPORT_C_DECL int WINAPI InsertOrder(ITapTrade::ITapTradeAPI* api, TAPIUINT32* sessionID, TAPISTR_50* ClientOrderNo, const TapAPINewOrder* order) { 391 return api->InsertOrder(sessionID, ClientOrderNo, order); 392 } 393 394 DLL_EXPORT_C_DECL int WINAPI CancelOrder(ITapTrade::ITapTradeAPI* api, TAPIUINT32* sessionID, const TapAPIOrderCancelReq* order) { 395 return api->CancelOrder(sessionID, order); 396 } 397 398 DLL_EXPORT_C_DECL int WINAPI AmendOrder(ITapTrade::ITapTradeAPI* api, TAPIUINT32* sessionID, const TapAPIAmendOrder* order) { 399 return api->AmendOrder(sessionID, order); 400 } 401 402 DLL_EXPORT_C_DECL int WINAPI ActivateOrder(ITapTrade::ITapTradeAPI* api, TAPIUINT32* sessionID, const TapAPIOrderActivateReq* order) { 403 return api->ActivateOrder(sessionID, order); 404 } 405 406 DLL_EXPORT_C_DECL int WINAPI QryOrder(ITapTrade::ITapTradeAPI* api, TAPIUINT32* sessionID, const TapAPIOrderQryReq* qryReq) { 407 return api->QryOrder(sessionID, qryReq); 408 } 409 410 DLL_EXPORT_C_DECL int WINAPI QryOrderProcess(ITapTrade::ITapTradeAPI* api, TAPIUINT32* sessionID, const TapAPIOrderProcessQryReq* qryReq) { 411 return api->QryOrderProcess(sessionID, qryReq); 412 } 413 414 DLL_EXPORT_C_DECL int WINAPI QryFill(ITapTrade::ITapTradeAPI* api, TAPIUINT32* sessionID, const TapAPIFillQryReq* qryReq) { 415 return api->QryFill(sessionID, qryReq); 416 } 417 418 DLL_EXPORT_C_DECL int WINAPI QryPosition(ITapTrade::ITapTradeAPI* api, TAPIUINT32* sessionID, const TapAPIPositionQryReq* qryReq) { 419 return api->QryPosition(sessionID, qryReq); 420 } 421 422 DLL_EXPORT_C_DECL int WINAPI QryPositionSummary(ITapTrade::ITapTradeAPI* api, TAPIUINT32* sessionID, const TapAPIPositionQryReq* qryReq) { 423 return api->QryPositionSummary(sessionID, qryReq); 424 } 425 426 DLL_EXPORT_C_DECL int WINAPI QryCurrency(ITapTrade::ITapTradeAPI* api, TAPIUINT32* sessionID) { 427 return api->QryCurrency(sessionID); 428 } 429 430 DLL_EXPORT_C_DECL int WINAPI QryAccountCashAdjust(ITapTrade::ITapTradeAPI* api, TAPIUINT32* sessionID, const TapAPIAccountCashAdjustQryReq* qryReq) { 431 return api->QryAccountCashAdjust(sessionID, qryReq); 432 } 433 434 DLL_EXPORT_C_DECL int WINAPI QryTradeMessage(ITapTrade::ITapTradeAPI* api, TAPIUINT32* sessionID, const TapAPITradeMessageReq* qryReq) { 435 return api->QryTradeMessage(sessionID, qryReq); 436 } 437 438 DLL_EXPORT_C_DECL int WINAPI QryBill(ITapTrade::ITapTradeAPI* api, TAPIUINT32* sessionID, const TapAPIBillQryReq* qryReq) { 439 return api->QryBill(sessionID, qryReq); 440 } 441 442 DLL_EXPORT_C_DECL int WINAPI QryHisOrder(ITapTrade::ITapTradeAPI* api, TAPIUINT32* sessionID, const TapAPIHisOrderQryReq* qryReq) { 443 return api->QryHisOrder(sessionID, qryReq); 444 } 445 446 DLL_EXPORT_C_DECL int WINAPI QryHisOrderProcess(ITapTrade::ITapTradeAPI* api, TAPIUINT32* sessionID, const TapAPIHisOrderProcessQryReq* qryReq) { 447 return api->QryHisOrderProcess(sessionID, qryReq); 448 } 449 450 DLL_EXPORT_C_DECL int WINAPI QryHisMatch(ITapTrade::ITapTradeAPI* api, TAPIUINT32* sessionID, const TapAPIHisMatchQryReq* qryReq) { 451 return api->QryHisMatch(sessionID, qryReq); 452 } 453 454 DLL_EXPORT_C_DECL int WINAPI QryHisPosition(ITapTrade::ITapTradeAPI* api, TAPIUINT32* sessionID, const TapAPIHisPositionQryReq* qryReq) { 455 return api->QryHisPosition(sessionID, qryReq); 456 } 457 458 DLL_EXPORT_C_DECL int WINAPI QryHisDelivery(ITapTrade::ITapTradeAPI* api, TAPIUINT32* sessionID, const TapAPIHisDeliveryQryReq* qryReq) { 459 return api->QryHisDelivery(sessionID, qryReq); 460 } 461 462 DLL_EXPORT_C_DECL int WINAPI QryAccountFeeRent(ITapTrade::ITapTradeAPI* api, TAPIUINT32* sessionID, const TapAPIAccountFeeRentQryReq* qryReq) { 463 return api->QryAccountFeeRent(sessionID, qryReq); 464 } 465 466 DLL_EXPORT_C_DECL int WINAPI QryAccountMarginRent(ITapTrade::ITapTradeAPI* api, TAPIUINT32* sessionID, const TapAPIAccountMarginRentQryReq* qryReq) { 467 return api->QryAccountMarginRent(sessionID, qryReq); 468 } 469 470 DLL_EXPORT_C_DECL int WINAPI InsertHKMarketOrder(ITapTrade::ITapTradeAPI* api, TAPIUINT32* sessionID, TAPISTR_50* ClientBuyOrderNo, TAPISTR_50* ClientSellOrderNo, const TapAPIOrderMarketInsertReq* order) { 471 return api->InsertHKMarketOrder(sessionID, ClientBuyOrderNo, ClientSellOrderNo, order); 472 } 473 474 DLL_EXPORT_C_DECL int WINAPI CancelHKMarketOrder(ITapTrade::ITapTradeAPI* api, TAPIUINT32* sessionID, const TapAPIOrderMarketDeleteReq* order) { 475 return api->CancelHKMarketOrder(sessionID, order); 476 } 477 478 DLL_EXPORT_C_DECL int WINAPI OrderLocalRemove(ITapTrade::ITapTradeAPI* api, TAPIUINT32* sessionID, const TapAPIOrderLocalRemoveReq* order) { 479 return api->OrderLocalRemove(sessionID, order); 480 } 481 482 DLL_EXPORT_C_DECL int WINAPI OrderLocalInput(ITapTrade::ITapTradeAPI* api, TAPIUINT32* sessionID, const TapAPIOrderLocalInputReq* order) { 483 return api->OrderLocalInput(sessionID, order); 484 } 485 486 DLL_EXPORT_C_DECL int WINAPI OrderLocalModify(ITapTrade::ITapTradeAPI* api, TAPIUINT32* sessionID, const TapAPIOrderLocalModifyReq* order) { 487 return api->OrderLocalModify(sessionID, order); 488 } 489 490 DLL_EXPORT_C_DECL int WINAPI OrderLocalTransfer(ITapTrade::ITapTradeAPI* api, TAPIUINT32* sessionID, const TapAPIOrderLocalTransferReq* order) { 491 return api->OrderLocalTransfer(sessionID, order); 492 } 493 494 DLL_EXPORT_C_DECL int WINAPI FillLocalInput(ITapTrade::ITapTradeAPI* api, TAPIUINT32* sessionID, const TapAPIFillLocalInputReq* fill) { 495 return api->FillLocalInput(sessionID, fill); 496 } 497 498 DLL_EXPORT_C_DECL int WINAPI FillLocalRemove(ITapTrade::ITapTradeAPI* api, TAPIUINT32* sessionID, const TapAPIFillLocalRemoveReq* fill) { 499 return api->FillLocalRemove(sessionID, fill); 500 } 501 502 DLL_EXPORT_C_DECL int WINAPI QrySpotLock(ITapTrade::ITapTradeAPI* api, TAPIUINT32* sessionID, const TapAPISpotLockQryReq* qryReq) { 503 return api->QrySpotLock(sessionID, qryReq); 504 } 505 506 DLL_EXPORT_C_DECL int WINAPI SubmitUserLoginInfo(ITapTrade::ITapTradeAPI* api, TAPIUINT32* sessionID, const TapAPISubmitUserLoginInfo* qryReq) { 507 return api->SubmitUserLoginInfo(sessionID, qryReq); 508 } 509 510 DLL_EXPORT_C_DECL int WINAPI InsertSpecialOrder(ITapTrade::ITapTradeAPI* api, TAPIUINT32* sessionID, TAPISTR_50* clientorderno, const TapAPISpecialOrderInsertReq* order) { 511 return api->InsertSpecialOrder(sessionID, clientorderno, order); 512 } 513 514 DLL_EXPORT_C_DECL int WINAPI QrySpecialOrder(ITapTrade::ITapTradeAPI* api, TAPIUINT32* sessionID, const TapAPISpecialOrderQryReq* qryReq) { 515 return api->QrySpecialOrder(sessionID, qryReq); 516 } 517 518 DLL_EXPORT_C_DECL int WINAPI QryCombinePosition(ITapTrade::ITapTradeAPI* api, TAPIUINT32* sessionID, const TapAPICombinePositionQryReq* qryReq) { 519 return api->QryCombinePosition(sessionID, qryReq); 520 } 521 522 DLL_EXPORT_C_DECL int WINAPI QryUserTrustDevice(ITapTrade::ITapTradeAPI* api, TAPIUINT32* sessionID, const TapAPIUserTrustDeviceQryReq* qryReq) { 523 return api->QryUserTrustDevice(sessionID, qryReq); 524 } 525 526 DLL_EXPORT_C_DECL int WINAPI AddUserTrustDevice(ITapTrade::ITapTradeAPI* api, TAPIUINT32* sessionID, const TapAPIUserTrustDeviceAddReq* qryReq) { 527 return api->AddUserTrustDevice(sessionID, qryReq); 528 } 529 530 DLL_EXPORT_C_DECL int WINAPI DelUserTrustDevice(ITapTrade::ITapTradeAPI* api, TAPIUINT32* sessionID, const TapAPIUserTrustDeviceDelReq* qryReq) { 531 return api->DelUserTrustDevice(sessionID, qryReq); 532 } 533 534 DLL_EXPORT_C_DECL int WINAPI QryIPOInfo(ITapTrade::ITapTradeAPI* api, TAPIUINT32* sessionID, const TapAPIIPOInfoQryReq* qryReq) { 535 return api->QryIPOInfo(sessionID, qryReq); 536 } 537 538 DLL_EXPORT_C_DECL int WINAPI QryIPOStockQty(ITapTrade::ITapTradeAPI* api, TAPIUINT32* sessionID, const TapAPIAvailableApplyQryReq* qryReq) { 539 return api->QryIPOStockQty(sessionID, qryReq); 540 } 541 542 DLL_EXPORT_C_DECL int WINAPI QryAccountIPO(ITapTrade::ITapTradeAPI* api, TAPIUINT32* sessionID, const TapAPIAccountIPOQryReq* qryReq) { 543 return api->QryAccountIPO(sessionID, qryReq); 544 } 545 546 DLL_EXPORT_C_DECL int WINAPI AddAccountIPO(ITapTrade::ITapTradeAPI* api, TAPIUINT32* sessionID, const TapAPIAccountIPOAddReq* qryReq) { 547 return api->AddAccountIPO(sessionID, qryReq); 548 } 549 550 DLL_EXPORT_C_DECL int WINAPI CancelAccountIPO(ITapTrade::ITapTradeAPI* api, TAPIUINT32* sessionID, const TapAPIAccountIPOCancelReq* qryReq) { 551 return api->CancelAccountIPO(sessionID, qryReq); 552 } 553 554 DLL_EXPORT_C_DECL int WINAPI UnFreeze(ITapTrade::ITapTradeAPI* api, const TapAPITradeLoginAuth* loginAuth) { 555 return api->UnFreeze(loginAuth); 556 } 557 558 DLL_EXPORT_C_DECL int WINAPI VerificateUnFreezeInfo(ITapTrade::ITapTradeAPI* api, TAPIUINT32* sessionID, const TapAPIVerifyIdentityReq* qryReq) { 559 return api->VerificateUnFreezeInfo(sessionID, qryReq); 560 }