From 745e716728dfa649693005dde6875e9e03ad82f8 Mon Sep 17 00:00:00 2001 From: chenxy123 Date: Sat, 12 Nov 2016 00:42:37 +0800 Subject: [PATCH] =?UTF-8?q?=E4=BF=AE=E6=94=B9vn.ib=E4=B8=8B=E7=9A=84IB=20A?= =?UTF-8?q?PI=E5=88=B0=E6=9C=80=E6=96=B0=E7=9A=849.72=E7=89=88=E6=9C=AC?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- vn.ib/CMakeLists.txt | 85 + vn.ib/README.md | 7 +- vn.ib/build.sh | 13 + vn.ib/ibapi/client/EClient.h | 224 -- vn.ib/ibapi/lib/TwsSocketClient.lib | Bin 157302 -> 0 bytes .../{ => linux}/client/CommissionReport.h | 0 vn.ib/ibapi/{ => linux}/client/CommonDefs.h | 0 vn.ib/ibapi/{ => linux}/client/Contract.h | 0 .../{ => linux}/client/ContractCondition.cpp | 0 .../{ => linux}/client/ContractCondition.h | 0 .../{ => linux}/client/DefaultEWrapper.cpp | 1 + .../{ => linux}/client/DefaultEWrapper.h | 1 + vn.ib/ibapi/{ => linux}/client/EClient.cpp | 185 +- vn.ib/ibapi/linux/client/EClient.h | 384 +++ .../ibapi/{ => linux}/client/EClientMsgSink.h | 0 .../{ => linux}/client/EClientSocket.cpp | 0 .../ibapi/{ => linux}/client/EClientSocket.h | 0 vn.ib/ibapi/{ => linux}/client/EDecoder.cpp | 47 +- vn.ib/ibapi/{ => linux}/client/EDecoder.h | 9 +- vn.ib/ibapi/{ => linux}/client/EMessage.cpp | 0 vn.ib/ibapi/{ => linux}/client/EMessage.h | 0 vn.ib/ibapi/{ => linux}/client/EMutex.cpp | 0 vn.ib/ibapi/{ => linux}/client/EMutex.h | 0 .../client/EPosixClientSocketPlatform.h | 0 vn.ib/ibapi/{ => linux}/client/EReader.cpp | 19 +- vn.ib/ibapi/{ => linux}/client/EReader.h | 0 .../{ => linux}/client/EReaderOSSignal.cpp | 0 .../{ => linux}/client/EReaderOSSignal.h | 1 + .../ibapi/{ => linux}/client/EReaderSignal.h | 0 .../{ => linux}/client/EReaderWMSignal.cpp | 0 .../{ => linux}/client/EReaderWMSignal.h | 0 vn.ib/ibapi/{ => linux}/client/ESocket.cpp | 0 vn.ib/ibapi/{ => linux}/client/ESocket.h | 0 vn.ib/ibapi/{ => linux}/client/ETransport.h | 0 vn.ib/ibapi/{ => linux}/client/EWrapper.h | 5 + vn.ib/ibapi/{ => linux}/client/Execution.h | 0 .../{ => linux}/client/IExternalizable.h | 0 .../{ => linux}/client/MarginCondition.cpp | 0 .../{ => linux}/client/MarginCondition.h | 0 .../{ => linux}/client/OperatorCondition.cpp | 0 .../{ => linux}/client/OperatorCondition.h | 0 vn.ib/ibapi/{ => linux}/client/Order.h | 6 +- .../{ => linux}/client/OrderCondition.cpp | 0 .../ibapi/{ => linux}/client/OrderCondition.h | 0 vn.ib/ibapi/{ => linux}/client/OrderState.h | 0 .../client/PercentChangeCondition.cpp | 0 .../client/PercentChangeCondition.h | 0 .../{ => linux}/client/PriceCondition.cpp | 0 .../ibapi/{ => linux}/client/PriceCondition.h | 0 vn.ib/ibapi/{ => linux}/client/Resource.h | 0 .../{ => linux}/client/ScannerSubscription.h | 0 vn.ib/ibapi/linux/client/SoftDollarTier.cpp | 22 + vn.ib/ibapi/linux/client/SoftDollarTier.h | 14 + vn.ib/ibapi/{ => linux}/client/StdAfx.cpp | 0 vn.ib/ibapi/{ => linux}/client/StdAfx.h | 0 vn.ib/ibapi/{ => linux}/client/TagValue.h | 0 .../{ => linux}/client/TimeCondition.cpp | 0 .../ibapi/{ => linux}/client/TimeCondition.h | 0 .../client/TwsSocketClientErrors.h | 0 .../{ => linux}/client/VolumeCondition.cpp | 0 .../{ => linux}/client/VolumeCondition.h | 0 .../{ => linux}/client/executioncondition.cpp | 0 .../{ => linux}/client/executioncondition.h | 0 vn.ib/ibapi/linux/client/shared_ptr.h | 106 + .../{ => linux}/ssl/EClientSocketSSL.cpp | 0 .../ibapi/{ => linux}/ssl/EClientSocketSSL.h | 0 vn.ib/ibapi/{ => linux}/ssl/EReaderSSL.cpp | 0 vn.ib/ibapi/{ => linux}/ssl/EReaderSSL.h | 0 vn.ib/ibapi/{ => linux}/ssl/ESocketSSL.cpp | 0 vn.ib/ibapi/{ => linux}/ssl/ESocketSSL.h | 0 vn.ib/ibapi/{ => linux}/ssl/StdAfx.cpp | 0 vn.ib/ibapi/{ => linux}/ssl/StdAfx.h | 0 vn.ib/ibapi/{ => windows}/client/.gitignore | 0 vn.ib/ibapi/windows/client/CommissionReport.h | 27 + vn.ib/ibapi/windows/client/CommonDefs.h | 33 + vn.ib/ibapi/windows/client/Contract.h | 187 ++ .../windows/client/ContractCondition.cpp | 43 + .../ibapi/windows/client/ContractCondition.h | 17 + .../ibapi/windows/client/DefaultEWrapper.cpp | 77 + vn.ib/ibapi/windows/client/DefaultEWrapper.h | 81 + vn.ib/ibapi/windows/client/EClient.cpp | 2840 +++++++++++++++++ vn.ib/ibapi/windows/client/EClient.h | 384 +++ vn.ib/ibapi/windows/client/EClientMsgSink.h | 10 + vn.ib/ibapi/windows/client/EClientSocket.cpp | 332 ++ vn.ib/ibapi/windows/client/EClientSocket.h | 70 + vn.ib/ibapi/windows/client/EDecoder.cpp | 2076 ++++++++++++ vn.ib/ibapi/windows/client/EDecoder.h | 244 ++ vn.ib/ibapi/windows/client/EMessage.cpp | 20 + vn.ib/ibapi/windows/client/EMessage.h | 13 + vn.ib/ibapi/windows/client/EMutex.cpp | 59 + vn.ib/ibapi/windows/client/EMutex.h | 25 + .../client/EPosixClientSocketPlatform.h | 65 + vn.ib/ibapi/windows/client/EReader.cpp | 290 ++ vn.ib/ibapi/windows/client/EReader.h | 58 + .../ibapi/windows/client/EReaderOSSignal.cpp | 73 + vn.ib/ibapi/windows/client/EReaderOSSignal.h | 33 + vn.ib/ibapi/windows/client/EReaderSignal.h | 10 + .../ibapi/windows/client/EReaderWMSignal.cpp | 25 + vn.ib/ibapi/windows/client/EReaderWMSignal.h | 19 + vn.ib/ibapi/windows/client/ESocket.cpp | 102 + vn.ib/ibapi/windows/client/ESocket.h | 23 + vn.ib/ibapi/windows/client/ETransport.h | 11 + vn.ib/ibapi/windows/client/EWrapper.h | 176 + vn.ib/ibapi/windows/client/Execution.h | 59 + vn.ib/ibapi/windows/client/IExternalizable.h | 9 + .../ibapi/windows/client/MarginCondition.cpp | 30 + vn.ib/ibapi/windows/client/MarginCondition.h | 23 + .../windows/client/OperatorCondition.cpp | 38 + .../ibapi/windows/client/OperatorCondition.h | 18 + vn.ib/ibapi/windows/client/Order.h | 339 ++ vn.ib/ibapi/windows/client/OrderCondition.cpp | 73 + vn.ib/ibapi/windows/client/OrderCondition.h | 30 + vn.ib/ibapi/windows/client/OrderState.h | 33 + .../windows/client/PercentChangeCondition.cpp | 26 + .../windows/client/PercentChangeCondition.h | 23 + vn.ib/ibapi/windows/client/PriceCondition.cpp | 61 + vn.ib/ibapi/windows/client/PriceCondition.h | 38 + vn.ib/ibapi/windows/client/Resource.h | 19 + .../windows/client/ScannerSubscription.h | 51 + vn.ib/ibapi/windows/client/SoftDollarTier.cpp | 22 + vn.ib/ibapi/windows/client/SoftDollarTier.h | 25 + vn.ib/ibapi/windows/client/StdAfx.cpp | 4 + vn.ib/ibapi/windows/client/StdAfx.h | 39 + vn.ib/ibapi/windows/client/TagValue.h | 29 + vn.ib/ibapi/windows/client/TimeCondition.cpp | 22 + vn.ib/ibapi/windows/client/TimeCondition.h | 22 + .../{ => windows}/client/TwsSocketClient.def | 0 .../{ => windows}/client/TwsSocketClient.rc | 8 +- .../{ => windows}/client/TwsSocketClient.sln | 0 .../client/TwsSocketClient.vcxproj | 2 + .../client/TwsSocketClient.vcxproj.filters | 6 + .../client/TwsSocketClient.vcxproj.user | 0 .../windows/client/TwsSocketClientErrors.h | 40 + .../ibapi/windows/client/VolumeCondition.cpp | 26 + vn.ib/ibapi/windows/client/VolumeCondition.h | 20 + .../windows/client/executioncondition.cpp | 51 + .../ibapi/windows/client/executioncondition.h | 29 + .../client/res/TwsSocketClient.rc2 | 0 vn.ib/ibapi/{ => windows}/client/shared_ptr.h | 4 +- vn.ib/ibapi/windows/lib/TwsSocketClient.lib | Bin 0 -> 162212 bytes vn.ib/ibapi/windows/ssl/EClientSocketSSL.cpp | 470 +++ vn.ib/ibapi/windows/ssl/EClientSocketSSL.h | 81 + vn.ib/ibapi/windows/ssl/EReaderSSL.cpp | 278 ++ vn.ib/ibapi/windows/ssl/EReaderSSL.h | 60 + vn.ib/ibapi/windows/ssl/ESocketSSL.cpp | 98 + vn.ib/ibapi/windows/ssl/ESocketSSL.h | 23 + vn.ib/ibapi/windows/ssl/StdAfx.cpp | 4 + vn.ib/ibapi/windows/ssl/StdAfx.h | 44 + .../{ => windows}/ssl/TwsSocketClientSSL.def | 0 .../{ => windows}/ssl/TwsSocketClientSSL.rc | 8 +- .../{ => windows}/ssl/TwsSocketClientSSL.sln | 0 .../ssl/TwsSocketClientSSL.vcxproj | 0 .../ssl/TwsSocketClientSSL.vcxproj.filters | 0 .../ssl/TwsSocketClientSSL.vcxproj.user | 0 .../ssl/res/TwsSocketClientSSL.rc2 | 0 vn.ib/test/test.py | 5 + vn.ib/test/vnib.pyd | Bin 1015808 -> 1061376 bytes .../settings/Windows Azure Subscriptions.xml | 2 +- vn.ib/vnib/vnib/vnib.cpp | 32 + vn.ib/vnib/vnib/vnib.h | 10 +- vn.ib/vnib/vnib/vnib.vcxproj | 122 +- vn.ib/vnib/vnib/vnib.vcxproj.filters | 120 +- vn.trader/ibGateway/ibGateway.py | 5 + vn.trader/ibGateway/vnib.pyd | Bin 1015296 -> 1061376 bytes 164 files changed, 10613 insertions(+), 520 deletions(-) create mode 100644 vn.ib/CMakeLists.txt create mode 100644 vn.ib/build.sh delete mode 100644 vn.ib/ibapi/client/EClient.h delete mode 100644 vn.ib/ibapi/lib/TwsSocketClient.lib rename vn.ib/ibapi/{ => linux}/client/CommissionReport.h (100%) rename vn.ib/ibapi/{ => linux}/client/CommonDefs.h (100%) rename vn.ib/ibapi/{ => linux}/client/Contract.h (100%) rename vn.ib/ibapi/{ => linux}/client/ContractCondition.cpp (100%) rename vn.ib/ibapi/{ => linux}/client/ContractCondition.h (100%) rename vn.ib/ibapi/{ => linux}/client/DefaultEWrapper.cpp (98%) rename vn.ib/ibapi/{ => linux}/client/DefaultEWrapper.h (98%) rename vn.ib/ibapi/{ => linux}/client/EClient.cpp (89%) create mode 100644 vn.ib/ibapi/linux/client/EClient.h rename vn.ib/ibapi/{ => linux}/client/EClientMsgSink.h (100%) rename vn.ib/ibapi/{ => linux}/client/EClientSocket.cpp (100%) rename vn.ib/ibapi/{ => linux}/client/EClientSocket.h (100%) rename vn.ib/ibapi/{ => linux}/client/EDecoder.cpp (98%) rename vn.ib/ibapi/{ => linux}/client/EDecoder.h (96%) rename vn.ib/ibapi/{ => linux}/client/EMessage.cpp (100%) rename vn.ib/ibapi/{ => linux}/client/EMessage.h (100%) rename vn.ib/ibapi/{ => linux}/client/EMutex.cpp (100%) rename vn.ib/ibapi/{ => linux}/client/EMutex.h (100%) rename vn.ib/ibapi/{ => linux}/client/EPosixClientSocketPlatform.h (100%) rename vn.ib/ibapi/{ => linux}/client/EReader.cpp (93%) rename vn.ib/ibapi/{ => linux}/client/EReader.h (100%) rename vn.ib/ibapi/{ => linux}/client/EReaderOSSignal.cpp (100%) rename vn.ib/ibapi/{ => linux}/client/EReaderOSSignal.h (97%) rename vn.ib/ibapi/{ => linux}/client/EReaderSignal.h (100%) rename vn.ib/ibapi/{ => linux}/client/EReaderWMSignal.cpp (100%) rename vn.ib/ibapi/{ => linux}/client/EReaderWMSignal.h (100%) rename vn.ib/ibapi/{ => linux}/client/ESocket.cpp (100%) rename vn.ib/ibapi/{ => linux}/client/ESocket.h (100%) rename vn.ib/ibapi/{ => linux}/client/ETransport.h (100%) rename vn.ib/ibapi/{ => linux}/client/EWrapper.h (97%) rename vn.ib/ibapi/{ => linux}/client/Execution.h (100%) rename vn.ib/ibapi/{ => linux}/client/IExternalizable.h (100%) rename vn.ib/ibapi/{ => linux}/client/MarginCondition.cpp (100%) rename vn.ib/ibapi/{ => linux}/client/MarginCondition.h (100%) rename vn.ib/ibapi/{ => linux}/client/OperatorCondition.cpp (100%) rename vn.ib/ibapi/{ => linux}/client/OperatorCondition.h (100%) rename vn.ib/ibapi/{ => linux}/client/Order.h (98%) rename vn.ib/ibapi/{ => linux}/client/OrderCondition.cpp (100%) rename vn.ib/ibapi/{ => linux}/client/OrderCondition.h (100%) rename vn.ib/ibapi/{ => linux}/client/OrderState.h (100%) rename vn.ib/ibapi/{ => linux}/client/PercentChangeCondition.cpp (100%) rename vn.ib/ibapi/{ => linux}/client/PercentChangeCondition.h (100%) rename vn.ib/ibapi/{ => linux}/client/PriceCondition.cpp (100%) rename vn.ib/ibapi/{ => linux}/client/PriceCondition.h (100%) rename vn.ib/ibapi/{ => linux}/client/Resource.h (100%) rename vn.ib/ibapi/{ => linux}/client/ScannerSubscription.h (100%) create mode 100644 vn.ib/ibapi/linux/client/SoftDollarTier.cpp create mode 100644 vn.ib/ibapi/linux/client/SoftDollarTier.h rename vn.ib/ibapi/{ => linux}/client/StdAfx.cpp (100%) rename vn.ib/ibapi/{ => linux}/client/StdAfx.h (100%) rename vn.ib/ibapi/{ => linux}/client/TagValue.h (100%) rename vn.ib/ibapi/{ => linux}/client/TimeCondition.cpp (100%) rename vn.ib/ibapi/{ => linux}/client/TimeCondition.h (100%) rename vn.ib/ibapi/{ => linux}/client/TwsSocketClientErrors.h (100%) rename vn.ib/ibapi/{ => linux}/client/VolumeCondition.cpp (100%) rename vn.ib/ibapi/{ => linux}/client/VolumeCondition.h (100%) rename vn.ib/ibapi/{ => linux}/client/executioncondition.cpp (100%) rename vn.ib/ibapi/{ => linux}/client/executioncondition.h (100%) create mode 100644 vn.ib/ibapi/linux/client/shared_ptr.h rename vn.ib/ibapi/{ => linux}/ssl/EClientSocketSSL.cpp (100%) rename vn.ib/ibapi/{ => linux}/ssl/EClientSocketSSL.h (100%) rename vn.ib/ibapi/{ => linux}/ssl/EReaderSSL.cpp (100%) rename vn.ib/ibapi/{ => linux}/ssl/EReaderSSL.h (100%) rename vn.ib/ibapi/{ => linux}/ssl/ESocketSSL.cpp (100%) rename vn.ib/ibapi/{ => linux}/ssl/ESocketSSL.h (100%) rename vn.ib/ibapi/{ => linux}/ssl/StdAfx.cpp (100%) rename vn.ib/ibapi/{ => linux}/ssl/StdAfx.h (100%) rename vn.ib/ibapi/{ => windows}/client/.gitignore (100%) create mode 100644 vn.ib/ibapi/windows/client/CommissionReport.h create mode 100644 vn.ib/ibapi/windows/client/CommonDefs.h create mode 100644 vn.ib/ibapi/windows/client/Contract.h create mode 100644 vn.ib/ibapi/windows/client/ContractCondition.cpp create mode 100644 vn.ib/ibapi/windows/client/ContractCondition.h create mode 100644 vn.ib/ibapi/windows/client/DefaultEWrapper.cpp create mode 100644 vn.ib/ibapi/windows/client/DefaultEWrapper.h create mode 100644 vn.ib/ibapi/windows/client/EClient.cpp create mode 100644 vn.ib/ibapi/windows/client/EClient.h create mode 100644 vn.ib/ibapi/windows/client/EClientMsgSink.h create mode 100644 vn.ib/ibapi/windows/client/EClientSocket.cpp create mode 100644 vn.ib/ibapi/windows/client/EClientSocket.h create mode 100644 vn.ib/ibapi/windows/client/EDecoder.cpp create mode 100644 vn.ib/ibapi/windows/client/EDecoder.h create mode 100644 vn.ib/ibapi/windows/client/EMessage.cpp create mode 100644 vn.ib/ibapi/windows/client/EMessage.h create mode 100644 vn.ib/ibapi/windows/client/EMutex.cpp create mode 100644 vn.ib/ibapi/windows/client/EMutex.h create mode 100644 vn.ib/ibapi/windows/client/EPosixClientSocketPlatform.h create mode 100644 vn.ib/ibapi/windows/client/EReader.cpp create mode 100644 vn.ib/ibapi/windows/client/EReader.h create mode 100644 vn.ib/ibapi/windows/client/EReaderOSSignal.cpp create mode 100644 vn.ib/ibapi/windows/client/EReaderOSSignal.h create mode 100644 vn.ib/ibapi/windows/client/EReaderSignal.h create mode 100644 vn.ib/ibapi/windows/client/EReaderWMSignal.cpp create mode 100644 vn.ib/ibapi/windows/client/EReaderWMSignal.h create mode 100644 vn.ib/ibapi/windows/client/ESocket.cpp create mode 100644 vn.ib/ibapi/windows/client/ESocket.h create mode 100644 vn.ib/ibapi/windows/client/ETransport.h create mode 100644 vn.ib/ibapi/windows/client/EWrapper.h create mode 100644 vn.ib/ibapi/windows/client/Execution.h create mode 100644 vn.ib/ibapi/windows/client/IExternalizable.h create mode 100644 vn.ib/ibapi/windows/client/MarginCondition.cpp create mode 100644 vn.ib/ibapi/windows/client/MarginCondition.h create mode 100644 vn.ib/ibapi/windows/client/OperatorCondition.cpp create mode 100644 vn.ib/ibapi/windows/client/OperatorCondition.h create mode 100644 vn.ib/ibapi/windows/client/Order.h create mode 100644 vn.ib/ibapi/windows/client/OrderCondition.cpp create mode 100644 vn.ib/ibapi/windows/client/OrderCondition.h create mode 100644 vn.ib/ibapi/windows/client/OrderState.h create mode 100644 vn.ib/ibapi/windows/client/PercentChangeCondition.cpp create mode 100644 vn.ib/ibapi/windows/client/PercentChangeCondition.h create mode 100644 vn.ib/ibapi/windows/client/PriceCondition.cpp create mode 100644 vn.ib/ibapi/windows/client/PriceCondition.h create mode 100644 vn.ib/ibapi/windows/client/Resource.h create mode 100644 vn.ib/ibapi/windows/client/ScannerSubscription.h create mode 100644 vn.ib/ibapi/windows/client/SoftDollarTier.cpp create mode 100644 vn.ib/ibapi/windows/client/SoftDollarTier.h create mode 100644 vn.ib/ibapi/windows/client/StdAfx.cpp create mode 100644 vn.ib/ibapi/windows/client/StdAfx.h create mode 100644 vn.ib/ibapi/windows/client/TagValue.h create mode 100644 vn.ib/ibapi/windows/client/TimeCondition.cpp create mode 100644 vn.ib/ibapi/windows/client/TimeCondition.h rename vn.ib/ibapi/{ => windows}/client/TwsSocketClient.def (100%) rename vn.ib/ibapi/{ => windows}/client/TwsSocketClient.rc (95%) rename vn.ib/ibapi/{ => windows}/client/TwsSocketClient.sln (100%) rename vn.ib/ibapi/{ => windows}/client/TwsSocketClient.vcxproj (99%) rename vn.ib/ibapi/{ => windows}/client/TwsSocketClient.vcxproj.filters (97%) rename vn.ib/ibapi/{ => windows}/client/TwsSocketClient.vcxproj.user (100%) create mode 100644 vn.ib/ibapi/windows/client/TwsSocketClientErrors.h create mode 100644 vn.ib/ibapi/windows/client/VolumeCondition.cpp create mode 100644 vn.ib/ibapi/windows/client/VolumeCondition.h create mode 100644 vn.ib/ibapi/windows/client/executioncondition.cpp create mode 100644 vn.ib/ibapi/windows/client/executioncondition.h rename vn.ib/ibapi/{ => windows}/client/res/TwsSocketClient.rc2 (100%) rename vn.ib/ibapi/{ => windows}/client/shared_ptr.h (96%) create mode 100644 vn.ib/ibapi/windows/lib/TwsSocketClient.lib create mode 100644 vn.ib/ibapi/windows/ssl/EClientSocketSSL.cpp create mode 100644 vn.ib/ibapi/windows/ssl/EClientSocketSSL.h create mode 100644 vn.ib/ibapi/windows/ssl/EReaderSSL.cpp create mode 100644 vn.ib/ibapi/windows/ssl/EReaderSSL.h create mode 100644 vn.ib/ibapi/windows/ssl/ESocketSSL.cpp create mode 100644 vn.ib/ibapi/windows/ssl/ESocketSSL.h create mode 100644 vn.ib/ibapi/windows/ssl/StdAfx.cpp create mode 100644 vn.ib/ibapi/windows/ssl/StdAfx.h rename vn.ib/ibapi/{ => windows}/ssl/TwsSocketClientSSL.def (100%) rename vn.ib/ibapi/{ => windows}/ssl/TwsSocketClientSSL.rc (95%) rename vn.ib/ibapi/{ => windows}/ssl/TwsSocketClientSSL.sln (100%) rename vn.ib/ibapi/{ => windows}/ssl/TwsSocketClientSSL.vcxproj (100%) rename vn.ib/ibapi/{ => windows}/ssl/TwsSocketClientSSL.vcxproj.filters (100%) rename vn.ib/ibapi/{ => windows}/ssl/TwsSocketClientSSL.vcxproj.user (100%) rename vn.ib/ibapi/{ => windows}/ssl/res/TwsSocketClientSSL.rc2 (100%) diff --git a/vn.ib/CMakeLists.txt b/vn.ib/CMakeLists.txt new file mode 100644 index 00000000..e24b0646 --- /dev/null +++ b/vn.ib/CMakeLists.txt @@ -0,0 +1,85 @@ +cmake_minimum_required(VERSION 2.8) +project(vn_ib_api) + +# 设置使用的编译器 +set(CMAKE_BUILD_TYPE "Release") +if (CMAKE_COMPILER_IS_GNUC OR CMAKE_COMPILER_IS_GNUCXX) + set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -fPIC -std=c++11") +endif () + +# 设置输出目录 +set(EXECUTABLE_OUTPUT_PATH ${CMAKE_BINARY_DIR}/bin) +set(LIBRARY_OUTPUT_PATH ${CMAKE_BINARY_DIR}/lib) + +# 使用64位编译 +option(USE_64BITS "comiple 64bits" ON) +if (USE_64BITS) + add_definitions(-DUSE_64BITS) + #set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -m32") + #set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -m32") +endif() + +# 设置C++ API源文件的所在目录 +if (WIN32) + set(IBAPI_PATH ibapi) +elseif (UNIX) + message("Under unix: " ${CMAKE_SIZEOF_VOID_P}) + if (CMAKE_SIZEOF_VOID_P MATCHES "8") + set(IBAPI_PATH ibapi) + endif() +endif() +include_directories(${IBAPI_PATH}) +#set(IBAPI_LIBRARY ) +#find_library(IBAPI_LIBRARY +# NAMES thostmduserapi +# PATHS ${IBAPI_PATH}) +#find_library(IBAPI_TD_LIBRARY +# NAMES thosttraderapi +# PATHS ${IBAPI_PATH}) + + +# 设置编译源文件 +set (vnib ) + +option(BUILD_IB "build ib" ON) +if (BUILD_IB) + add_definitions(-DBUILD_IB) + set(IB_PATH vnib/vnib) + include_directories(IB_PATH) + set(VN_IB_SOURCE ${CMAKE_CURRENT_SOURCE_DIR}/vnib/vnib/vnib.cpp) + add_library(vnib SHARED ${VN_IB_SOURCE}) +endif() + +# 设置Python所在的目录 +set(PYTHON_LIBRARY ) +if (WIN32) +set(PYTHON_INCLUDE_PATH C:/Python27/include) +find_library(PYTHON_LIBRARY + NAMES python27 + PATHS C:/Python27/libs) +include_directories(${PYTHON_INCLUDE_PATH}) +else() +set(PYTHON_INCLUDE_PATH /usr/include/python2.7/) +find_library(PYTHON_LIBRARY + NAMES python2.7 + PATHS /usr/lib/x86_64-linux-gnu) +include_directories(${PYTHON_INCLUDE_PATH}) +endif() + +# 链接boost库,anaconda +if (WIN32) + set(Boost_USE_STATIC_LIBS ON) #链接boost静态库 +endif() +set(Boost_USE_MULTITHREADED ON) +find_package(Boost 1.55.0 COMPONENTS python thread date_time system chrono REQUIRED) # 如果boost库没有完全编译,需要将编译的库明确地指出,否者message(${Boost_LIBRARIES})会出错 +if(Boost_FOUND) + include_directories(${Boost_INCLUDE_DIRS}) +endif() + +# 去掉生成的so文件名中前缀的lib +set_target_properties(vnib PROPERTIES PREFIX "") + +# 链接生成.so文件 +target_link_libraries(vnib ${Boost_LIBRARIES} ${PYTHON_LIBRARY} ${IBAPI_LIBRARY}) + + diff --git a/vn.ib/README.md b/vn.ib/README.md index e097b969..34a396fa 100644 --- a/vn.ib/README.md +++ b/vn.ib/README.md @@ -14,8 +14,13 @@ 4. vn.ib基于较新的IB官方API(9.72 beta)开发,IbPy则是采用了较老的API(9.70 stable) +### 对原生接口的修改部分 +shared_ptr.h和SoftDollerTier.h中加入了对象比较函数的代码,用于实现其对应vector的自动Python封装。 + ### API版本 -版本:IB API for Windows beta 9.72 +版本:IB API for Windows beta 9.72.18 + +日期:2016-09-14 链接:[http://interactivebrokers.github.io/](http://interactivebrokers.github.io/) diff --git a/vn.ib/build.sh b/vn.ib/build.sh new file mode 100644 index 00000000..948b6119 --- /dev/null +++ b/vn.ib/build.sh @@ -0,0 +1,13 @@ +#!/bin/bash +# Written by Suzhengchun on 20160213 + +set -e +BUILDDIR=build +rm -rf $BUILDDIR +if [ ! -f $BUILDDIR ]; then + mkdir -p $BUILDDIR +fi +pushd $BUILDDIR +cmake .. +make VERBOSE=1 -j 1 +popd diff --git a/vn.ib/ibapi/client/EClient.h b/vn.ib/ibapi/client/EClient.h deleted file mode 100644 index 2aa9d607..00000000 --- a/vn.ib/ibapi/client/EClient.h +++ /dev/null @@ -1,224 +0,0 @@ -/* Copyright (C) 2013 Interactive Brokers LLC. All rights reserved. This code is subject to the terms - * and conditions of the IB API Non-Commercial License or the IB API Commercial License, as applicable. */ - -#pragma once -#ifndef eclient_h__INCLUDED -#define eclient_h__INCLUDED - - -#include -#include -#include -#include -#include "CommonDefs.h" -#include "TagValue.h" - -struct Contract; -struct Order; -struct ExecutionFilter; -struct ScannerSubscription; -struct ETransport; - -class EWrapper; -typedef std::vector BytesVec; - - -class TWSAPIDLLEXP EClient -{ -public: - - explicit EClient(EWrapper *ptr, ETransport *pTransport); - ~EClient(); - - virtual void eDisconnect() = 0; - - int clientId() const { return m_clientId; } - - const std::string& optionalCapabilities() const; - void setOptionalCapabilities(const std::string& optCapts); - - void setConnectOptions(const std::string& connectOptions); - void disableUseV100Plus(); - bool usingV100Plus(); - -protected: - - void eConnectBase(); - void eDisconnectBase(); - -public: - - enum ConnState { - CS_DISCONNECTED, - CS_CONNECTING, - CS_CONNECTED, - CS_REDIRECT - }; - - // connection state - ConnState connState() const; - bool isConnected() const; - - const std::string& host() const { return m_host; } - unsigned port() const { return m_port; } - -public: - - // access to protected variables - EWrapper * getWrapper() const; -protected: - void setClientId( int clientId); - void setExtraAuth( bool extraAuth); - void setHost( const std::string& host); - void setPort( unsigned port); - -public: - - bool isInBufferEmpty() const; - - // override virtual funcs from EClient - int serverVersion(); - std::string TwsConnectionTime(); - void reqMktData(TickerId id, const Contract& contract, - const std::string& genericTicks, bool snapshot, const TagValueListSPtr& mktDataOptions); - void cancelMktData(TickerId id); - void placeOrder(OrderId id, const Contract& contract, const Order& order); - void cancelOrder(OrderId id) ; - void reqOpenOrders(); - void reqAccountUpdates(bool subscribe, const std::string& acctCode); - void reqExecutions(int reqId, const ExecutionFilter& filter); - void reqIds(int numIds); - void reqContractDetails(int reqId, const Contract& contract); - void reqMktDepth(TickerId tickerId, const Contract& contract, int numRows, const TagValueListSPtr& mktDepthOptions); - void cancelMktDepth(TickerId tickerId); - void reqNewsBulletins(bool allMsgs); - void cancelNewsBulletins(); - void setServerLogLevel(int level); - void reqAutoOpenOrders(bool bAutoBind); - void reqAllOpenOrders(); - void reqManagedAccts(); - void requestFA(faDataType pFaDataType); - void replaceFA(faDataType pFaDataType, const std::string& cxml); - void reqHistoricalData( TickerId id, const Contract& contract, - const std::string& endDateTime, const std::string& durationStr, - const std::string& barSizeSetting, const std::string& whatToShow, - int useRTH, int formatDate, const TagValueListSPtr& chartOptions); - void exerciseOptions(TickerId tickerId, const Contract& contract, - int exerciseAction, int exerciseQuantity, - const std::string& account, int override); - void cancelHistoricalData(TickerId tickerId ); - void reqRealTimeBars(TickerId id, const Contract& contract, int barSize, - const std::string& whatToShow, bool useRTH, const TagValueListSPtr& realTimeBarsOptions); - void cancelRealTimeBars(TickerId tickerId ); - void cancelScannerSubscription(int tickerId); - void reqScannerParameters(); - void reqScannerSubscription(int tickerId, const ScannerSubscription& subscription, const TagValueListSPtr& scannerSubscriptionOptions); - void reqCurrentTime(); - void reqFundamentalData(TickerId reqId, const Contract&, const std::string& reportType); - void cancelFundamentalData(TickerId reqId); - void calculateImpliedVolatility(TickerId reqId, const Contract& contract, double optionPrice, double underPrice); - void calculateOptionPrice(TickerId reqId, const Contract& contract, double volatility, double underPrice); - void cancelCalculateImpliedVolatility(TickerId reqId); - void cancelCalculateOptionPrice(TickerId reqId); - void reqGlobalCancel(); - void reqMarketDataType(int marketDataType); - void reqPositions(); - void cancelPositions(); - void reqAccountSummary( int reqId, const std::string& groupName, const std::string& tags); - void cancelAccountSummary( int reqId); - void verifyRequest( const std::string& apiName, const std::string& apiVersion); - void verifyMessage( const std::string& apiData); - void verifyAndAuthRequest( const std::string& apiName, const std::string& apiVersion, const std::string& opaqueIsvKey); - void verifyAndAuthMessage( const std::string& apiData, const std::string& xyzResponse); - void queryDisplayGroups( int reqId); - void subscribeToGroupEvents( int reqId, int groupId); - void updateDisplayGroup( int reqId, const std::string& contractInfo); - void unsubscribeFromGroupEvents( int reqId); - void reqPositionsMulti( int reqId, const std::string& account, const std::string& modelCode); - void cancelPositionsMulti( int reqId); - void reqAccountUpdatessMulti( int reqId, const std::string& account, const std::string& modelCode, bool ledgerAndNLV); - void cancelAccountUpdatesMulti( int reqId); - void reqSecDefOptParams(int reqId, const std::string& underlyingSymbol, const std::string& futFopExchange, const std::string& underlyingSecType, int underlyingConId); - -private: - - virtual int receive(char* buf, size_t sz) = 0; - -protected: - - virtual void prepareBufferImpl(std::ostream&) const = 0; - virtual void prepareBuffer(std::ostream&) const = 0; - virtual bool closeAndSend(std::string msg, unsigned offset = 0) = 0; - virtual int bufferedSend(const std::string& msg); - -protected: - int bufferedRead(); - - // try to process connection request ack -private: - // try to process single msg - int processMsgImpl(const char*& ptr, const char* endPtr); - int processMsg(const char*& ptr, const char* endPtr); - - typedef int (EClient::*messageHandler)(const char*& ptr, const char* endPtr); - int processOnePrefixedMsg(const char*& ptr, const char* endPtr, messageHandler); - -public: - void startApi(); - - - // encoders - template static void EncodeField(std::ostream&, T); - - // "max" encoders - static void EncodeFieldMax(std::ostream& os, int); - static void EncodeFieldMax(std::ostream& os, double); - - // socket state -private: - virtual bool isSocketOK() const = 0; - -protected: - - bool isConnecting() const; - int sendConnectRequest(); - bool extraAuth(); - -protected: - - EWrapper *m_pEWrapper; - std::auto_ptr m_transport; - -private: - BytesVec m_inBuffer; - - std::string m_host; - int m_port; - - int m_clientId; - - ConnState m_connState; - bool m_extraAuth; - -protected: - int m_serverVersion; - std::string m_TwsTime; - -private: - std::string m_optionalCapabilities; - - std::string m_connectOptions; - -protected: - bool m_useV100Plus; - -}; - -template<> void EClient::EncodeField(std::ostream& os, bool); -template<> void EClient::EncodeField(std::ostream& os, double); - -#define ENCODE_FIELD(x) EClient::EncodeField(msg, x); -#define ENCODE_FIELD_MAX(x) EClient::EncodeFieldMax(msg, x); - - -#endif diff --git a/vn.ib/ibapi/lib/TwsSocketClient.lib b/vn.ib/ibapi/lib/TwsSocketClient.lib deleted file mode 100644 index 61cc526f7224a2e8af5c5eb380e2667cbe236c24..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 157302 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 b8tP*QNZaxw-Cgcx$}dV%o;a$_kMjQy2Z!Y1 diff --git a/vn.ib/ibapi/client/CommissionReport.h b/vn.ib/ibapi/linux/client/CommissionReport.h similarity index 100% rename from vn.ib/ibapi/client/CommissionReport.h rename to vn.ib/ibapi/linux/client/CommissionReport.h diff --git a/vn.ib/ibapi/client/CommonDefs.h b/vn.ib/ibapi/linux/client/CommonDefs.h similarity index 100% rename from vn.ib/ibapi/client/CommonDefs.h rename to vn.ib/ibapi/linux/client/CommonDefs.h diff --git a/vn.ib/ibapi/client/Contract.h b/vn.ib/ibapi/linux/client/Contract.h similarity index 100% rename from vn.ib/ibapi/client/Contract.h rename to vn.ib/ibapi/linux/client/Contract.h diff --git a/vn.ib/ibapi/client/ContractCondition.cpp b/vn.ib/ibapi/linux/client/ContractCondition.cpp similarity index 100% rename from vn.ib/ibapi/client/ContractCondition.cpp rename to vn.ib/ibapi/linux/client/ContractCondition.cpp diff --git a/vn.ib/ibapi/client/ContractCondition.h b/vn.ib/ibapi/linux/client/ContractCondition.h similarity index 100% rename from vn.ib/ibapi/client/ContractCondition.h rename to vn.ib/ibapi/linux/client/ContractCondition.h diff --git a/vn.ib/ibapi/client/DefaultEWrapper.cpp b/vn.ib/ibapi/linux/client/DefaultEWrapper.cpp similarity index 98% rename from vn.ib/ibapi/client/DefaultEWrapper.cpp rename to vn.ib/ibapi/linux/client/DefaultEWrapper.cpp index d72d96fd..6e49ad33 100644 --- a/vn.ib/ibapi/client/DefaultEWrapper.cpp +++ b/vn.ib/ibapi/linux/client/DefaultEWrapper.cpp @@ -72,5 +72,6 @@ void DefaultEWrapper::accountUpdateMulti( int reqId, const std::string& account, void DefaultEWrapper::accountUpdateMultiEnd( int reqId) { } void DefaultEWrapper::securityDefinitionOptionalParameter(int reqId, const std::string& exchange, int underlyingConId, const std::string& tradingClass, const std::string& multiplier, std::set expirations, std::set strikes) { } void DefaultEWrapper::securityDefinitionOptionalParameterEnd(int reqId) { } +void DefaultEWrapper::softDollarTiers(int reqId, const std::vector &tiers) { } diff --git a/vn.ib/ibapi/client/DefaultEWrapper.h b/vn.ib/ibapi/linux/client/DefaultEWrapper.h similarity index 98% rename from vn.ib/ibapi/client/DefaultEWrapper.h rename to vn.ib/ibapi/linux/client/DefaultEWrapper.h index be542dc3..bf88d4d7 100644 --- a/vn.ib/ibapi/client/DefaultEWrapper.h +++ b/vn.ib/ibapi/linux/client/DefaultEWrapper.h @@ -76,5 +76,6 @@ public: virtual void accountUpdateMultiEnd( int reqId); virtual void securityDefinitionOptionalParameter(int reqId, const std::string& exchange, int underlyingConId, const std::string& tradingClass, const std::string& multiplier, std::set expirations, std::set strikes); virtual void securityDefinitionOptionalParameterEnd(int reqId); + virtual void softDollarTiers(int reqId, const std::vector &tiers); }; diff --git a/vn.ib/ibapi/client/EClient.cpp b/vn.ib/ibapi/linux/client/EClient.cpp similarity index 89% rename from vn.ib/ibapi/client/EClient.cpp rename to vn.ib/ibapi/linux/client/EClient.cpp index e88a9301..c295cf54 100644 --- a/vn.ib/ibapi/client/EClient.cpp +++ b/vn.ib/ibapi/linux/client/EClient.cpp @@ -27,157 +27,7 @@ #include #include -///////////////////////////////////////////////////////////////////////////////// -// SOCKET CLIENT VERSION CHANGE LOG : Incremented when the format of incomming -// server responses change -///////////////////////////////////////////////////////////////////////////////// -// constants -// 6 = Added parentId to orderStatus -// 7 = The new execDetails event returned for an order filled status and reqExecDetails -// Also added market depth support. -// 8 = Added 'lastFillPrice' to orderStatus and 'permId' to execDetails -// 9 = Added 'avgCost', 'unrealizedPNL', and 'unrealizedPNL' to updatePortfolio event -// 10 = Added 'serverId' to the 'open order' & 'order status' events. -// We send back all the API open orders upon connection. -// Added new methods reqAllOpenOrders, reqAutoOpenOrders() -// Added FA support - reqExecution has filter. -// - reqAccountUpdates takes acct code. -// 11 = Added permId to openOrder event. -// 12 = Added IgnoreRth, hidden, and discretionaryAmt -// 13 = Added GoodAfterTime -// 14 = always send size on bid/ask/last tick -// 15 = send allocation string with open order -// 16 = can receive account name in account and portfolio updates, and fa params in openOrder -// 17 = can receive liquidation field in exec reports, and notAutoAvailable field in mkt data -// 18 = can receive good till date field in open order messages, and send backfill requests -// 19 = can receive new extended order attributes in OPEN_ORDER -// 20 = expects TWS time string on connection after server version >= 20, and parentId in open order -// 21 = can receive bond contract details. -// 22 = can receive price magnifier in contract details -// 23 = support for scanner -// 24 = can receive volatility order parameters in open order messages -// 25 = can receive HMDS query start and end times -// 26 = can receive option vols in option market data messages -// 27 = can receive delta neutral order type and delta neutral aux price -// 28 = can receive option model computation ticks -// 29 = can receive trail stop limit price in open order and can place them: API 8.91 -// 30 = can receive extended bond contract def, new ticks, and trade count in bars -// 31 = can receive EFP extensions to scanner and market data, and combo legs on open orders -// ; can receive RT bars -// 32 = can receive TickType.LAST_TIMESTAMP -// 33 = can receive ScaleNumComponents and ScaleComponentSize is open order messages -// 34 = can receive whatIf orders / order state -// 35 = can receive contId field for Contract objects -// 36 = can receive outsideRth field for Order objects -// 37 = can receive clearingAccount and clearingIntent for Order objects -// 38 = can receive multipier and primaryExchange in portfolio updates -// ; can receive cumQty and avgPrice in execution -// ; can receive fundamental data -// ; can receive underComp for Contract objects -// ; can receive reqId and end marker in contractDetails/bondContractDetails -// ; can receive ScaleInitComponentSize and ScaleSubsComponentSize for Order objects -// 39 = can receive underConId in contractDetails -// 40 = can receive algoStrategy/algoParams in openOrder -// 41 = can receive end marker for openOrder -// ; can receive end marker for account download -// ; can receive end marker for executions download -// 42 = can receive deltaNeutralValidation -// 43 = can receive longName(companyName) -// ; can receive listingExchange -// ; can receive RTVolume tick -// 44 = can receive end market for ticker snapshot -// 45 = can receive notHeld field in openOrder -// 46 = can receive contractMonth, industry, category, subcategory fields in contractDetails -// ; can receive timeZoneId, tradingHours, liquidHours fields in contractDetails -// 47 = can receive gamma, vega, theta, undPrice fields in TICK_OPTION_COMPUTATION -// 48 = can receive exemptCode in openOrder -// 49 = can receive hedgeType and hedgeParam in openOrder -// 50 = can receive optOutSmartRouting field in openOrder -// 51 = can receive smartComboRoutingParams in openOrder -// 52 = can receive deltaNeutralConId, deltaNeutralSettlingFirm, deltaNeutralClearingAccount and deltaNeutralClearingIntent in openOrder -// 53 = can receive orderRef in execution -// 54 = can receive scale order fields (PriceAdjustValue, PriceAdjustInterval, ProfitOffset, AutoReset, -// InitPosition, InitFillQty and RandomPercent) in openOrder -// 55 = can receive orderComboLegs (price) in openOrder -// 56 = can receive trailingPercent in openOrder -// 57 = can receive commissionReport message -// 58 = can receive CUSIP/ISIN/etc. in contractDescription/bondContractDescription -// 59 = can receive evRule, evMultiplier in contractDescription/bondContractDescription/executionDetails -// can receive multiplier in executionDetails -// 60 = can receive deltaNeutralOpenClose, deltaNeutralShortSale, deltaNeutralShortSaleSlot -// and deltaNeutralDesignatedLocation in openOrder -// can receive position, positionEnd, accountSummary and accountSummaryEnd -// 61 = can receive multiplier in openOrder -// can receive tradingClass in openOrder, updatePortfolio, execDetails and position -// 62 = can receive avgCost in position message -// 63 = can receive verifyMessageAPI, verifyCompleted, displayGroupList and displayGroupUpdated messages -// 64 = can receive solicited attrib in openOrder message -// 65 = can receive verifyAndAuthMessageAPI and verifyAndAuthCompleted messages -// 66 = can receive randomize size and randomize price order fields - -const int CLIENT_VERSION = 66; - - -// outgoing msg id's -const int REQ_MKT_DATA = 1; -const int CANCEL_MKT_DATA = 2; -const int PLACE_ORDER = 3; -const int CANCEL_ORDER = 4; -const int REQ_OPEN_ORDERS = 5; -const int REQ_ACCT_DATA = 6; -const int REQ_EXECUTIONS = 7; -const int REQ_IDS = 8; -const int REQ_CONTRACT_DATA = 9; -const int REQ_MKT_DEPTH = 10; -const int CANCEL_MKT_DEPTH = 11; -const int REQ_NEWS_BULLETINS = 12; -const int CANCEL_NEWS_BULLETINS = 13; -const int SET_SERVER_LOGLEVEL = 14; -const int REQ_AUTO_OPEN_ORDERS = 15; -const int REQ_ALL_OPEN_ORDERS = 16; -const int REQ_MANAGED_ACCTS = 17; -const int REQ_FA = 18; -const int REPLACE_FA = 19; -const int REQ_HISTORICAL_DATA = 20; -const int EXERCISE_OPTIONS = 21; -const int REQ_SCANNER_SUBSCRIPTION = 22; -const int CANCEL_SCANNER_SUBSCRIPTION = 23; -const int REQ_SCANNER_PARAMETERS = 24; -const int CANCEL_HISTORICAL_DATA = 25; -const int REQ_CURRENT_TIME = 49; -const int REQ_REAL_TIME_BARS = 50; -const int CANCEL_REAL_TIME_BARS = 51; -const int REQ_FUNDAMENTAL_DATA = 52; -const int CANCEL_FUNDAMENTAL_DATA = 53; -const int REQ_CALC_IMPLIED_VOLAT = 54; -const int REQ_CALC_OPTION_PRICE = 55; -const int CANCEL_CALC_IMPLIED_VOLAT = 56; -const int CANCEL_CALC_OPTION_PRICE = 57; -const int REQ_GLOBAL_CANCEL = 58; -const int REQ_MARKET_DATA_TYPE = 59; -const int REQ_POSITIONS = 61; -const int REQ_ACCOUNT_SUMMARY = 62; -const int CANCEL_ACCOUNT_SUMMARY = 63; -const int CANCEL_POSITIONS = 64; -const int VERIFY_REQUEST = 65; -const int VERIFY_MESSAGE = 66; -const int QUERY_DISPLAY_GROUPS = 67; -const int SUBSCRIBE_TO_GROUP_EVENTS = 68; -const int UPDATE_DISPLAY_GROUP = 69; -const int UNSUBSCRIBE_FROM_GROUP_EVENTS = 70; -const int START_API = 71; -const int VERIFY_AND_AUTH_REQUEST = 72; -const int VERIFY_AND_AUTH_MESSAGE = 73; -const int REQ_POSITIONS_MULTI = 74; -const int CANCEL_POSITIONS_MULTI = 75; -const int REQ_ACCOUNT_UPDATES_MULTI = 76; -const int CANCEL_ACCOUNT_UPDATES_MULTI = 77; -const int REQ_SEC_DEF_OPT_PARAMS = 78; - -// TWS New Bulletins constants -const int NEWS_MSG = 1; // standard IB news bulleting message -const int EXCHANGE_AVAIL_MSG = 2; // control message specifing that an exchange is available for trading -const int EXCHANGE_UNAVAIL_MSG = 3; // control message specifing that an exchange is unavailable for trading +using namespace ibapi::client_constants; /////////////////////////////////////////////////////////// // encoders @@ -1507,6 +1357,17 @@ void EClient::placeOrder( OrderId id, const Contract& contract, const Order& ord } } + if (m_serverVersion < MIN_SERVER_VER_SOFT_DOLLAR_TIER) + { + if (!order.softDollarTier.name().empty() || !order.softDollarTier.val().empty()) + { + m_pEWrapper->error( id, UPDATE_TWS.code(), UPDATE_TWS.msg() + + " It does not support soft dollar tier"); + return; + } + } + + std::stringstream msg; prepareBuffer( msg); @@ -1896,6 +1757,11 @@ void EClient::placeOrder( OrderId id, const Contract& contract, const Order& ord ENCODE_FIELD( order.extOperator); } + if (m_serverVersion >= MIN_SERVER_VER_SOFT_DOLLAR_TIER) { + ENCODE_FIELD(order.softDollarTier.name()); + ENCODE_FIELD(order.softDollarTier.val()); + } + closeAndSend( msg.str()); } @@ -2820,6 +2686,23 @@ void EClient::reqSecDefOptParams(int reqId, const std::string& underlyingSymbol, closeAndSend(msg.str()); } +void EClient::reqSoftDollarTiers(int reqId) +{ + if( !isConnected()) { + m_pEWrapper->error( NO_VALID_ID, NOT_CONNECTED.code(), NOT_CONNECTED.msg()); + return; + } + + std::stringstream msg; + prepareBuffer(msg); + + + ENCODE_FIELD(REQ_SOFT_DOLLAR_TIERS); + ENCODE_FIELD(reqId); + + closeAndSend(msg.str()); +} + int EClient::processMsgImpl(const char*& beginPtr, const char* endPtr) { EDecoder decoder(serverVersion(), m_pEWrapper); diff --git a/vn.ib/ibapi/linux/client/EClient.h b/vn.ib/ibapi/linux/client/EClient.h new file mode 100644 index 00000000..15c96d15 --- /dev/null +++ b/vn.ib/ibapi/linux/client/EClient.h @@ -0,0 +1,384 @@ +/* Copyright (C) 2013 Interactive Brokers LLC. All rights reserved. This code is subject to the terms + * and conditions of the IB API Non-Commercial License or the IB API Commercial License, as applicable. */ + +#pragma once +#ifndef eclient_h__INCLUDED +#define eclient_h__INCLUDED + + +#include +#include +#include +#include +#include "CommonDefs.h" +#include "TagValue.h" + +namespace ibapi { +namespace client_constants { + +///////////////////////////////////////////////////////////////////////////////// +// SOCKET CLIENT VERSION CHANGE LOG : Incremented when the format of incomming +// server responses change +///////////////////////////////////////////////////////////////////////////////// +// constants +// 6 = Added parentId to orderStatus +// 7 = The new execDetails event returned for an order filled status and reqExecDetails +// Also added market depth support. +// 8 = Added 'lastFillPrice' to orderStatus and 'permId' to execDetails +// 9 = Added 'avgCost', 'unrealizedPNL', and 'unrealizedPNL' to updatePortfolio event +// 10 = Added 'serverId' to the 'open order' & 'order status' events. +// We send back all the API open orders upon connection. +// Added new methods reqAllOpenOrders, reqAutoOpenOrders() +// Added FA support - reqExecution has filter. +// - reqAccountUpdates takes acct code. +// 11 = Added permId to openOrder event. +// 12 = Added IgnoreRth, hidden, and discretionaryAmt +// 13 = Added GoodAfterTime +// 14 = always send size on bid/ask/last tick +// 15 = send allocation string with open order +// 16 = can receive account name in account and portfolio updates, and fa params in openOrder +// 17 = can receive liquidation field in exec reports, and notAutoAvailable field in mkt data +// 18 = can receive good till date field in open order messages, and send backfill requests +// 19 = can receive new extended order attributes in OPEN_ORDER +// 20 = expects TWS time string on connection after server version >= 20, and parentId in open order +// 21 = can receive bond contract details. +// 22 = can receive price magnifier in contract details +// 23 = support for scanner +// 24 = can receive volatility order parameters in open order messages +// 25 = can receive HMDS query start and end times +// 26 = can receive option vols in option market data messages +// 27 = can receive delta neutral order type and delta neutral aux price +// 28 = can receive option model computation ticks +// 29 = can receive trail stop limit price in open order and can place them: API 8.91 +// 30 = can receive extended bond contract def, new ticks, and trade count in bars +// 31 = can receive EFP extensions to scanner and market data, and combo legs on open orders +// ; can receive RT bars +// 32 = can receive TickType.LAST_TIMESTAMP +// 33 = can receive ScaleNumComponents and ScaleComponentSize is open order messages +// 34 = can receive whatIf orders / order state +// 35 = can receive contId field for Contract objects +// 36 = can receive outsideRth field for Order objects +// 37 = can receive clearingAccount and clearingIntent for Order objects +// 38 = can receive multipier and primaryExchange in portfolio updates +// ; can receive cumQty and avgPrice in execution +// ; can receive fundamental data +// ; can receive underComp for Contract objects +// ; can receive reqId and end marker in contractDetails/bondContractDetails +// ; can receive ScaleInitComponentSize and ScaleSubsComponentSize for Order objects +// 39 = can receive underConId in contractDetails +// 40 = can receive algoStrategy/algoParams in openOrder +// 41 = can receive end marker for openOrder +// ; can receive end marker for account download +// ; can receive end marker for executions download +// 42 = can receive deltaNeutralValidation +// 43 = can receive longName(companyName) +// ; can receive listingExchange +// ; can receive RTVolume tick +// 44 = can receive end market for ticker snapshot +// 45 = can receive notHeld field in openOrder +// 46 = can receive contractMonth, industry, category, subcategory fields in contractDetails +// ; can receive timeZoneId, tradingHours, liquidHours fields in contractDetails +// 47 = can receive gamma, vega, theta, undPrice fields in TICK_OPTION_COMPUTATION +// 48 = can receive exemptCode in openOrder +// 49 = can receive hedgeType and hedgeParam in openOrder +// 50 = can receive optOutSmartRouting field in openOrder +// 51 = can receive smartComboRoutingParams in openOrder +// 52 = can receive deltaNeutralConId, deltaNeutralSettlingFirm, deltaNeutralClearingAccount and deltaNeutralClearingIntent in openOrder +// 53 = can receive orderRef in execution +// 54 = can receive scale order fields (PriceAdjustValue, PriceAdjustInterval, ProfitOffset, AutoReset, +// InitPosition, InitFillQty and RandomPercent) in openOrder +// 55 = can receive orderComboLegs (price) in openOrder +// 56 = can receive trailingPercent in openOrder +// 57 = can receive commissionReport message +// 58 = can receive CUSIP/ISIN/etc. in contractDescription/bondContractDescription +// 59 = can receive evRule, evMultiplier in contractDescription/bondContractDescription/executionDetails +// can receive multiplier in executionDetails +// 60 = can receive deltaNeutralOpenClose, deltaNeutralShortSale, deltaNeutralShortSaleSlot +// and deltaNeutralDesignatedLocation in openOrder +// can receive position, positionEnd, accountSummary and accountSummaryEnd +// 61 = can receive multiplier in openOrder +// can receive tradingClass in openOrder, updatePortfolio, execDetails and position +// 62 = can receive avgCost in position message +// 63 = can receive verifyMessageAPI, verifyCompleted, displayGroupList and displayGroupUpdated messages +// 64 = can receive solicited attrib in openOrder message +// 65 = can receive verifyAndAuthMessageAPI and verifyAndAuthCompleted messages +// 66 = can receive randomize size and randomize price order fields + +const int CLIENT_VERSION = 66; + + +// outgoing msg id's +const int REQ_MKT_DATA = 1; +const int CANCEL_MKT_DATA = 2; +const int PLACE_ORDER = 3; +const int CANCEL_ORDER = 4; +const int REQ_OPEN_ORDERS = 5; +const int REQ_ACCT_DATA = 6; +const int REQ_EXECUTIONS = 7; +const int REQ_IDS = 8; +const int REQ_CONTRACT_DATA = 9; +const int REQ_MKT_DEPTH = 10; +const int CANCEL_MKT_DEPTH = 11; +const int REQ_NEWS_BULLETINS = 12; +const int CANCEL_NEWS_BULLETINS = 13; +const int SET_SERVER_LOGLEVEL = 14; +const int REQ_AUTO_OPEN_ORDERS = 15; +const int REQ_ALL_OPEN_ORDERS = 16; +const int REQ_MANAGED_ACCTS = 17; +const int REQ_FA = 18; +const int REPLACE_FA = 19; +const int REQ_HISTORICAL_DATA = 20; +const int EXERCISE_OPTIONS = 21; +const int REQ_SCANNER_SUBSCRIPTION = 22; +const int CANCEL_SCANNER_SUBSCRIPTION = 23; +const int REQ_SCANNER_PARAMETERS = 24; +const int CANCEL_HISTORICAL_DATA = 25; +const int REQ_CURRENT_TIME = 49; +const int REQ_REAL_TIME_BARS = 50; +const int CANCEL_REAL_TIME_BARS = 51; +const int REQ_FUNDAMENTAL_DATA = 52; +const int CANCEL_FUNDAMENTAL_DATA = 53; +const int REQ_CALC_IMPLIED_VOLAT = 54; +const int REQ_CALC_OPTION_PRICE = 55; +const int CANCEL_CALC_IMPLIED_VOLAT = 56; +const int CANCEL_CALC_OPTION_PRICE = 57; +const int REQ_GLOBAL_CANCEL = 58; +const int REQ_MARKET_DATA_TYPE = 59; +const int REQ_POSITIONS = 61; +const int REQ_ACCOUNT_SUMMARY = 62; +const int CANCEL_ACCOUNT_SUMMARY = 63; +const int CANCEL_POSITIONS = 64; +const int VERIFY_REQUEST = 65; +const int VERIFY_MESSAGE = 66; +const int QUERY_DISPLAY_GROUPS = 67; +const int SUBSCRIBE_TO_GROUP_EVENTS = 68; +const int UPDATE_DISPLAY_GROUP = 69; +const int UNSUBSCRIBE_FROM_GROUP_EVENTS = 70; +const int START_API = 71; +const int VERIFY_AND_AUTH_REQUEST = 72; +const int VERIFY_AND_AUTH_MESSAGE = 73; +const int REQ_POSITIONS_MULTI = 74; +const int CANCEL_POSITIONS_MULTI = 75; +const int REQ_ACCOUNT_UPDATES_MULTI = 76; +const int CANCEL_ACCOUNT_UPDATES_MULTI = 77; +const int REQ_SEC_DEF_OPT_PARAMS = 78; +const int REQ_SOFT_DOLLAR_TIERS = 79; + +// TWS New Bulletins constants +const int NEWS_MSG = 1; // standard IB news bulleting message +const int EXCHANGE_AVAIL_MSG = 2; // control message specifing that an exchange is available for trading +const int EXCHANGE_UNAVAIL_MSG = 3; // control message specifing that an exchange is unavailable for trading + +} // namespace client_constants +} // namespace ibapi + +struct Contract; +struct Order; +struct ExecutionFilter; +struct ScannerSubscription; +struct ETransport; + +class EWrapper; +typedef std::vector BytesVec; + + +class TWSAPIDLLEXP EClient +{ +public: + + explicit EClient(EWrapper *ptr, ETransport *pTransport); + ~EClient(); + + virtual void eDisconnect() = 0; + + int clientId() const { return m_clientId; } + + const std::string& optionalCapabilities() const; + void setOptionalCapabilities(const std::string& optCapts); + + void setConnectOptions(const std::string& connectOptions); + void disableUseV100Plus(); + bool usingV100Plus(); + +protected: + + void eConnectBase(); + void eDisconnectBase(); + +public: + + enum ConnState { + CS_DISCONNECTED, + CS_CONNECTING, + CS_CONNECTED, + CS_REDIRECT + }; + + // connection state + ConnState connState() const; + bool isConnected() const; + + const std::string& host() const { return m_host; } + unsigned port() const { return m_port; } + +public: + + // access to protected variables + EWrapper * getWrapper() const; +protected: + void setClientId( int clientId); + void setExtraAuth( bool extraAuth); + void setHost( const std::string& host); + void setPort( unsigned port); + +public: + + bool isInBufferEmpty() const; + + // override virtual funcs from EClient + int serverVersion(); + std::string TwsConnectionTime(); + void reqMktData(TickerId id, const Contract& contract, + const std::string& genericTicks, bool snapshot, const TagValueListSPtr& mktDataOptions); + void cancelMktData(TickerId id); + void placeOrder(OrderId id, const Contract& contract, const Order& order); + void cancelOrder(OrderId id) ; + void reqOpenOrders(); + void reqAccountUpdates(bool subscribe, const std::string& acctCode); + void reqExecutions(int reqId, const ExecutionFilter& filter); + void reqIds(int numIds); + void reqContractDetails(int reqId, const Contract& contract); + void reqMktDepth(TickerId tickerId, const Contract& contract, int numRows, const TagValueListSPtr& mktDepthOptions); + void cancelMktDepth(TickerId tickerId); + void reqNewsBulletins(bool allMsgs); + void cancelNewsBulletins(); + void setServerLogLevel(int level); + void reqAutoOpenOrders(bool bAutoBind); + void reqAllOpenOrders(); + void reqManagedAccts(); + void requestFA(faDataType pFaDataType); + void replaceFA(faDataType pFaDataType, const std::string& cxml); + void reqHistoricalData( TickerId id, const Contract& contract, + const std::string& endDateTime, const std::string& durationStr, + const std::string& barSizeSetting, const std::string& whatToShow, + int useRTH, int formatDate, const TagValueListSPtr& chartOptions); + void exerciseOptions(TickerId tickerId, const Contract& contract, + int exerciseAction, int exerciseQuantity, + const std::string& account, int override); + void cancelHistoricalData(TickerId tickerId ); + void reqRealTimeBars(TickerId id, const Contract& contract, int barSize, + const std::string& whatToShow, bool useRTH, const TagValueListSPtr& realTimeBarsOptions); + void cancelRealTimeBars(TickerId tickerId ); + void cancelScannerSubscription(int tickerId); + void reqScannerParameters(); + void reqScannerSubscription(int tickerId, const ScannerSubscription& subscription, const TagValueListSPtr& scannerSubscriptionOptions); + void reqCurrentTime(); + void reqFundamentalData(TickerId reqId, const Contract&, const std::string& reportType); + void cancelFundamentalData(TickerId reqId); + void calculateImpliedVolatility(TickerId reqId, const Contract& contract, double optionPrice, double underPrice); + void calculateOptionPrice(TickerId reqId, const Contract& contract, double volatility, double underPrice); + void cancelCalculateImpliedVolatility(TickerId reqId); + void cancelCalculateOptionPrice(TickerId reqId); + void reqGlobalCancel(); + void reqMarketDataType(int marketDataType); + void reqPositions(); + void cancelPositions(); + void reqAccountSummary( int reqId, const std::string& groupName, const std::string& tags); + void cancelAccountSummary( int reqId); + void verifyRequest( const std::string& apiName, const std::string& apiVersion); + void verifyMessage( const std::string& apiData); + void verifyAndAuthRequest( const std::string& apiName, const std::string& apiVersion, const std::string& opaqueIsvKey); + void verifyAndAuthMessage( const std::string& apiData, const std::string& xyzResponse); + void queryDisplayGroups( int reqId); + void subscribeToGroupEvents( int reqId, int groupId); + void updateDisplayGroup( int reqId, const std::string& contractInfo); + void unsubscribeFromGroupEvents( int reqId); + void reqPositionsMulti( int reqId, const std::string& account, const std::string& modelCode); + void cancelPositionsMulti( int reqId); + void reqAccountUpdatessMulti( int reqId, const std::string& account, const std::string& modelCode, bool ledgerAndNLV); + void cancelAccountUpdatesMulti( int reqId); + void reqSecDefOptParams(int reqId, const std::string& underlyingSymbol, const std::string& futFopExchange, const std::string& underlyingSecType, int underlyingConId); + void reqSoftDollarTiers(int reqId); + +private: + + virtual int receive(char* buf, size_t sz) = 0; + +protected: + + virtual void prepareBufferImpl(std::ostream&) const = 0; + virtual void prepareBuffer(std::ostream&) const = 0; + virtual bool closeAndSend(std::string msg, unsigned offset = 0) = 0; + virtual int bufferedSend(const std::string& msg); + +protected: + int bufferedRead(); + + // try to process connection request ack +private: + // try to process single msg + int processMsgImpl(const char*& ptr, const char* endPtr); + int processMsg(const char*& ptr, const char* endPtr); + + typedef int (EClient::*messageHandler)(const char*& ptr, const char* endPtr); + int processOnePrefixedMsg(const char*& ptr, const char* endPtr, messageHandler); + +public: + void startApi(); + + + // encoders + template static void EncodeField(std::ostream&, T); + + // "max" encoders + static void EncodeFieldMax(std::ostream& os, int); + static void EncodeFieldMax(std::ostream& os, double); + + // socket state +private: + virtual bool isSocketOK() const = 0; + +protected: + + bool isConnecting() const; + int sendConnectRequest(); + bool extraAuth(); + +protected: + + EWrapper *m_pEWrapper; + std::auto_ptr m_transport; + +private: + BytesVec m_inBuffer; + + std::string m_host; + int m_port; + + int m_clientId; + + ConnState m_connState; + bool m_extraAuth; + +protected: + int m_serverVersion; + std::string m_TwsTime; + +private: + std::string m_optionalCapabilities; + + std::string m_connectOptions; + +protected: + bool m_useV100Plus; + +}; + +template<> void EClient::EncodeField(std::ostream& os, bool); +template<> void EClient::EncodeField(std::ostream& os, double); + +#define ENCODE_FIELD(x) EClient::EncodeField(msg, x); +#define ENCODE_FIELD_MAX(x) EClient::EncodeFieldMax(msg, x); + + +#endif diff --git a/vn.ib/ibapi/client/EClientMsgSink.h b/vn.ib/ibapi/linux/client/EClientMsgSink.h similarity index 100% rename from vn.ib/ibapi/client/EClientMsgSink.h rename to vn.ib/ibapi/linux/client/EClientMsgSink.h diff --git a/vn.ib/ibapi/client/EClientSocket.cpp b/vn.ib/ibapi/linux/client/EClientSocket.cpp similarity index 100% rename from vn.ib/ibapi/client/EClientSocket.cpp rename to vn.ib/ibapi/linux/client/EClientSocket.cpp diff --git a/vn.ib/ibapi/client/EClientSocket.h b/vn.ib/ibapi/linux/client/EClientSocket.h similarity index 100% rename from vn.ib/ibapi/client/EClientSocket.h rename to vn.ib/ibapi/linux/client/EClientSocket.h diff --git a/vn.ib/ibapi/client/EDecoder.cpp b/vn.ib/ibapi/linux/client/EDecoder.cpp similarity index 98% rename from vn.ib/ibapi/client/EDecoder.cpp rename to vn.ib/ibapi/linux/client/EDecoder.cpp index 59f686a5..63964c13 100644 --- a/vn.ib/ibapi/client/EDecoder.cpp +++ b/vn.ib/ibapi/linux/client/EDecoder.cpp @@ -642,6 +642,16 @@ const char* EDecoder::processOpenOrderMsg(const char* ptr, const char* endPtr) { DECODE_FIELD(order.adjustableTrailingUnit); } + if (m_serverVersion >= MIN_SERVER_VER_SOFT_DOLLAR_TIER) { + std::string name, value, displayName; + + DECODE_FIELD(name); + DECODE_FIELD(value); + DECODE_FIELD(displayName); + + order.softDollarTier = SoftDollarTier(name, value, displayName); + } + m_pEWrapper->openOrder( (OrderId)order.orderId, contract, order, orderState); return ptr; @@ -1585,7 +1595,7 @@ const char* EDecoder::processAccountUpdateMultiEndMsg(const char* ptr, const cha return ptr; } -const char* EDecoder::processSecurityDefinitionOptionalParameter(const char* ptr, const char* endPtr) { +const char* EDecoder::processSecurityDefinitionOptionalParameterMsg(const char* ptr, const char* endPtr) { int reqId; std::string exchange; int underlyingConId; @@ -1625,7 +1635,7 @@ const char* EDecoder::processSecurityDefinitionOptionalParameter(const char* ptr return ptr; } -const char* EDecoder::processSecurityDefinitionOptionalParameterEnd(const char* ptr, const char* endPtr) { +const char* EDecoder::processSecurityDefinitionOptionalParameterEndMsg(const char* ptr, const char* endPtr) { int reqId; DECODE_FIELD(reqId); @@ -1635,6 +1645,31 @@ const char* EDecoder::processSecurityDefinitionOptionalParameterEnd(const char* return ptr; } +const char* EDecoder::processSoftDollarTiersMsg(const char* ptr, const char* endPtr) +{ + int reqId; + int nTiers; + + DECODE_FIELD(reqId); + DECODE_FIELD(nTiers); + + std::vector tiers(nTiers); + + for (int i = 0; i < nTiers; i++) { + std::string name, value, dislplayName; + + DECODE_FIELD(name); + DECODE_FIELD(value); + DECODE_FIELD(dislplayName); + + tiers[i] = SoftDollarTier(name, value, value); + } + + m_pEWrapper->softDollarTiers(reqId, tiers); + + return ptr; +} + int EDecoder::processConnectAck(const char*& beginPtr, const char* endPtr) { @@ -1910,11 +1945,15 @@ int EDecoder::parseAndProcessMsg(const char*& beginPtr, const char* endPtr) { break; case SECURITY_DEFINITION_OPTION_PARAMETER: - ptr = processSecurityDefinitionOptionalParameter(ptr, endPtr); + ptr = processSecurityDefinitionOptionalParameterMsg(ptr, endPtr); break; case SECURITY_DEFINITION_OPTION_PARAMETER_END: - ptr = processSecurityDefinitionOptionalParameterEnd(ptr, endPtr); + ptr = processSecurityDefinitionOptionalParameterEndMsg(ptr, endPtr); + break; + + case SOFT_DOLLAR_TIERS: + ptr = processSoftDollarTiersMsg(ptr, endPtr); break; default: diff --git a/vn.ib/ibapi/client/EDecoder.h b/vn.ib/ibapi/linux/client/EDecoder.h similarity index 96% rename from vn.ib/ibapi/client/EDecoder.h rename to vn.ib/ibapi/linux/client/EDecoder.h index a19ed514..eb4e586f 100644 --- a/vn.ib/ibapi/client/EDecoder.h +++ b/vn.ib/ibapi/linux/client/EDecoder.h @@ -55,12 +55,13 @@ const int MIN_SERVER_VER_PEGGED_TO_BENCHMARK = 102; const int MIN_SERVER_VER_MODELS_SUPPORT = 103; const int MIN_SERVER_VER_SEC_DEF_OPT_PARAMS_REQ = 104; const int MIN_SERVER_VER_EXT_OPERATOR = 105; +const int MIN_SERVER_VER_SOFT_DOLLAR_TIER = 106; /* 100+ messaging */ // 100 = enhanced handshake, msg length prefixes const int MIN_CLIENT_VER = 100; -const int MAX_CLIENT_VER = MIN_SERVER_VER_EXT_OPERATOR; +const int MAX_CLIENT_VER = MIN_SERVER_VER_SOFT_DOLLAR_TIER; // incoming msg id's @@ -115,6 +116,7 @@ const int ACCOUNT_UPDATE_MULTI = 73; const int ACCOUNT_UPDATE_MULTI_END = 74; const int SECURITY_DEFINITION_OPTION_PARAMETER = 75; const int SECURITY_DEFINITION_OPTION_PARAMETER_END = 76; +const int SOFT_DOLLAR_TIERS = 77; const int HEADER_LEN = 4; // 4 bytes for msg length const int MAX_MSG_LEN = 0xFFFFFF; // 16Mb - 1byte @@ -213,8 +215,9 @@ class TWSAPIDLLEXP EDecoder const char* processPositionMultiEndMsg(const char* ptr, const char* endPtr); const char* processAccountUpdateMultiMsg(const char* ptr, const char* endPtr); const char* processAccountUpdateMultiEndMsg(const char* ptr, const char* endPtr); - const char* processSecurityDefinitionOptionalParameter(const char* ptr, const char* endPtr); - const char* processSecurityDefinitionOptionalParameterEnd(const char* ptr, const char* endPtr); + const char* processSecurityDefinitionOptionalParameterMsg(const char* ptr, const char* endPtr); + const char* processSecurityDefinitionOptionalParameterEndMsg(const char* ptr, const char* endPtr); + const char* processSoftDollarTiersMsg(const char* ptr, const char* endPtr); int processConnectAck(const char*& beginPtr, const char* endPtr); diff --git a/vn.ib/ibapi/client/EMessage.cpp b/vn.ib/ibapi/linux/client/EMessage.cpp similarity index 100% rename from vn.ib/ibapi/client/EMessage.cpp rename to vn.ib/ibapi/linux/client/EMessage.cpp diff --git a/vn.ib/ibapi/client/EMessage.h b/vn.ib/ibapi/linux/client/EMessage.h similarity index 100% rename from vn.ib/ibapi/client/EMessage.h rename to vn.ib/ibapi/linux/client/EMessage.h diff --git a/vn.ib/ibapi/client/EMutex.cpp b/vn.ib/ibapi/linux/client/EMutex.cpp similarity index 100% rename from vn.ib/ibapi/client/EMutex.cpp rename to vn.ib/ibapi/linux/client/EMutex.cpp diff --git a/vn.ib/ibapi/client/EMutex.h b/vn.ib/ibapi/linux/client/EMutex.h similarity index 100% rename from vn.ib/ibapi/client/EMutex.h rename to vn.ib/ibapi/linux/client/EMutex.h diff --git a/vn.ib/ibapi/client/EPosixClientSocketPlatform.h b/vn.ib/ibapi/linux/client/EPosixClientSocketPlatform.h similarity index 100% rename from vn.ib/ibapi/client/EPosixClientSocketPlatform.h rename to vn.ib/ibapi/linux/client/EPosixClientSocketPlatform.h diff --git a/vn.ib/ibapi/client/EReader.cpp b/vn.ib/ibapi/linux/client/EReader.cpp similarity index 93% rename from vn.ib/ibapi/client/EReader.cpp rename to vn.ib/ibapi/linux/client/EReader.cpp index 27956350..5bc00630 100644 --- a/vn.ib/ibapi/client/EReader.cpp +++ b/vn.ib/ibapi/linux/client/EReader.cpp @@ -178,13 +178,20 @@ void EReader::onReceive() { } bool EReader::bufferedRead(char *buf, int size) { - while (m_buf.size() < size) - if (!processNonBlockingSelect() && !m_pClientSocket->isSocketOK()) - return false; + while (size > 0) { + while (m_buf.size() < size && m_buf.size() < m_nMaxBufSize) + if (!processNonBlockingSelect() && !m_pClientSocket->isSocketOK()) + return false; - std::copy(m_buf.begin(), m_buf.begin() + size, buf); - std::copy(m_buf.begin() + size, m_buf.end(), m_buf.begin()); - m_buf.resize(m_buf.size() - size); + int nBytes = min(m_nMaxBufSize, size); + + std::copy(m_buf.begin(), m_buf.begin() + nBytes, buf); + std::copy(m_buf.begin() + nBytes, m_buf.end(), m_buf.begin()); + m_buf.resize(m_buf.size() - nBytes); + + size -= nBytes; + buf += nBytes; + } return true; } diff --git a/vn.ib/ibapi/client/EReader.h b/vn.ib/ibapi/linux/client/EReader.h similarity index 100% rename from vn.ib/ibapi/client/EReader.h rename to vn.ib/ibapi/linux/client/EReader.h diff --git a/vn.ib/ibapi/client/EReaderOSSignal.cpp b/vn.ib/ibapi/linux/client/EReaderOSSignal.cpp similarity index 100% rename from vn.ib/ibapi/client/EReaderOSSignal.cpp rename to vn.ib/ibapi/linux/client/EReaderOSSignal.cpp diff --git a/vn.ib/ibapi/client/EReaderOSSignal.h b/vn.ib/ibapi/linux/client/EReaderOSSignal.h similarity index 97% rename from vn.ib/ibapi/client/EReaderOSSignal.h rename to vn.ib/ibapi/linux/client/EReaderOSSignal.h index c3d4acd4..a87d4659 100644 --- a/vn.ib/ibapi/client/EReaderOSSignal.h +++ b/vn.ib/ibapi/linux/client/EReaderOSSignal.h @@ -4,6 +4,7 @@ #pragma once #include "EReaderSignal.h" #include "StdAfx.h" +#include #if !defined(INFINITE) #define INFINITE ((unsigned long)-1) diff --git a/vn.ib/ibapi/client/EReaderSignal.h b/vn.ib/ibapi/linux/client/EReaderSignal.h similarity index 100% rename from vn.ib/ibapi/client/EReaderSignal.h rename to vn.ib/ibapi/linux/client/EReaderSignal.h diff --git a/vn.ib/ibapi/client/EReaderWMSignal.cpp b/vn.ib/ibapi/linux/client/EReaderWMSignal.cpp similarity index 100% rename from vn.ib/ibapi/client/EReaderWMSignal.cpp rename to vn.ib/ibapi/linux/client/EReaderWMSignal.cpp diff --git a/vn.ib/ibapi/client/EReaderWMSignal.h b/vn.ib/ibapi/linux/client/EReaderWMSignal.h similarity index 100% rename from vn.ib/ibapi/client/EReaderWMSignal.h rename to vn.ib/ibapi/linux/client/EReaderWMSignal.h diff --git a/vn.ib/ibapi/client/ESocket.cpp b/vn.ib/ibapi/linux/client/ESocket.cpp similarity index 100% rename from vn.ib/ibapi/client/ESocket.cpp rename to vn.ib/ibapi/linux/client/ESocket.cpp diff --git a/vn.ib/ibapi/client/ESocket.h b/vn.ib/ibapi/linux/client/ESocket.h similarity index 100% rename from vn.ib/ibapi/client/ESocket.h rename to vn.ib/ibapi/linux/client/ESocket.h diff --git a/vn.ib/ibapi/client/ETransport.h b/vn.ib/ibapi/linux/client/ETransport.h similarity index 100% rename from vn.ib/ibapi/client/ETransport.h rename to vn.ib/ibapi/linux/client/ETransport.h diff --git a/vn.ib/ibapi/client/EWrapper.h b/vn.ib/ibapi/linux/client/EWrapper.h similarity index 97% rename from vn.ib/ibapi/client/EWrapper.h rename to vn.ib/ibapi/linux/client/EWrapper.h index 77a663a1..ce6b70dd 100644 --- a/vn.ib/ibapi/client/EWrapper.h +++ b/vn.ib/ibapi/linux/client/EWrapper.h @@ -6,6 +6,7 @@ #define ewrapper_def #include "CommonDefs.h" +#include "SoftDollarTier.h" #include #include @@ -78,6 +79,9 @@ enum TickType { BID_SIZE, BID, ASK, ASK_SIZE, LAST, LAST_SIZE, DELAYED_VOLUME, DELAYED_CLOSE, DELAYED_OPEN, + RT_TRD_VOLUME, + CREDITMAN_MARK_PRICE, + CREDITMAN_SLOW_MARK_PRICE, NOT_SET }; inline bool isPrice( TickType tickType) { @@ -165,6 +169,7 @@ public: virtual void accountUpdateMultiEnd( int reqId) = 0; virtual void securityDefinitionOptionalParameter(int reqId, const std::string& exchange, int underlyingConId, const std::string& tradingClass, const std::string& multiplier, std::set expirations, std::set strikes) = 0; virtual void securityDefinitionOptionalParameterEnd(int reqId) = 0; + virtual void softDollarTiers(int reqId, const std::vector &tiers) = 0; }; diff --git a/vn.ib/ibapi/client/Execution.h b/vn.ib/ibapi/linux/client/Execution.h similarity index 100% rename from vn.ib/ibapi/client/Execution.h rename to vn.ib/ibapi/linux/client/Execution.h diff --git a/vn.ib/ibapi/client/IExternalizable.h b/vn.ib/ibapi/linux/client/IExternalizable.h similarity index 100% rename from vn.ib/ibapi/client/IExternalizable.h rename to vn.ib/ibapi/linux/client/IExternalizable.h diff --git a/vn.ib/ibapi/client/MarginCondition.cpp b/vn.ib/ibapi/linux/client/MarginCondition.cpp similarity index 100% rename from vn.ib/ibapi/client/MarginCondition.cpp rename to vn.ib/ibapi/linux/client/MarginCondition.cpp diff --git a/vn.ib/ibapi/client/MarginCondition.h b/vn.ib/ibapi/linux/client/MarginCondition.h similarity index 100% rename from vn.ib/ibapi/client/MarginCondition.h rename to vn.ib/ibapi/linux/client/MarginCondition.h diff --git a/vn.ib/ibapi/client/OperatorCondition.cpp b/vn.ib/ibapi/linux/client/OperatorCondition.cpp similarity index 100% rename from vn.ib/ibapi/client/OperatorCondition.cpp rename to vn.ib/ibapi/linux/client/OperatorCondition.cpp diff --git a/vn.ib/ibapi/client/OperatorCondition.h b/vn.ib/ibapi/linux/client/OperatorCondition.h similarity index 100% rename from vn.ib/ibapi/client/OperatorCondition.h rename to vn.ib/ibapi/linux/client/OperatorCondition.h diff --git a/vn.ib/ibapi/client/Order.h b/vn.ib/ibapi/linux/client/Order.h similarity index 98% rename from vn.ib/ibapi/client/Order.h rename to vn.ib/ibapi/linux/client/Order.h index e4b277ad..d92cec8d 100644 --- a/vn.ib/ibapi/client/Order.h +++ b/vn.ib/ibapi/linux/client/Order.h @@ -7,6 +7,7 @@ #include "TagValue.h" #include "OrderCondition.h" +#include "SoftDollarTier.h" #include #include @@ -42,7 +43,8 @@ typedef ibapi::shared_ptr OrderComboLegSPtr; struct Order { - Order() + Order() : + softDollarTier("", "", "") { // order identifier orderId = 0; @@ -307,6 +309,8 @@ struct Order // ext operator std::string extOperator; + SoftDollarTier softDollarTier; + public: // Helpers diff --git a/vn.ib/ibapi/client/OrderCondition.cpp b/vn.ib/ibapi/linux/client/OrderCondition.cpp similarity index 100% rename from vn.ib/ibapi/client/OrderCondition.cpp rename to vn.ib/ibapi/linux/client/OrderCondition.cpp diff --git a/vn.ib/ibapi/client/OrderCondition.h b/vn.ib/ibapi/linux/client/OrderCondition.h similarity index 100% rename from vn.ib/ibapi/client/OrderCondition.h rename to vn.ib/ibapi/linux/client/OrderCondition.h diff --git a/vn.ib/ibapi/client/OrderState.h b/vn.ib/ibapi/linux/client/OrderState.h similarity index 100% rename from vn.ib/ibapi/client/OrderState.h rename to vn.ib/ibapi/linux/client/OrderState.h diff --git a/vn.ib/ibapi/client/PercentChangeCondition.cpp b/vn.ib/ibapi/linux/client/PercentChangeCondition.cpp similarity index 100% rename from vn.ib/ibapi/client/PercentChangeCondition.cpp rename to vn.ib/ibapi/linux/client/PercentChangeCondition.cpp diff --git a/vn.ib/ibapi/client/PercentChangeCondition.h b/vn.ib/ibapi/linux/client/PercentChangeCondition.h similarity index 100% rename from vn.ib/ibapi/client/PercentChangeCondition.h rename to vn.ib/ibapi/linux/client/PercentChangeCondition.h diff --git a/vn.ib/ibapi/client/PriceCondition.cpp b/vn.ib/ibapi/linux/client/PriceCondition.cpp similarity index 100% rename from vn.ib/ibapi/client/PriceCondition.cpp rename to vn.ib/ibapi/linux/client/PriceCondition.cpp diff --git a/vn.ib/ibapi/client/PriceCondition.h b/vn.ib/ibapi/linux/client/PriceCondition.h similarity index 100% rename from vn.ib/ibapi/client/PriceCondition.h rename to vn.ib/ibapi/linux/client/PriceCondition.h diff --git a/vn.ib/ibapi/client/Resource.h b/vn.ib/ibapi/linux/client/Resource.h similarity index 100% rename from vn.ib/ibapi/client/Resource.h rename to vn.ib/ibapi/linux/client/Resource.h diff --git a/vn.ib/ibapi/client/ScannerSubscription.h b/vn.ib/ibapi/linux/client/ScannerSubscription.h similarity index 100% rename from vn.ib/ibapi/client/ScannerSubscription.h rename to vn.ib/ibapi/linux/client/ScannerSubscription.h diff --git a/vn.ib/ibapi/linux/client/SoftDollarTier.cpp b/vn.ib/ibapi/linux/client/SoftDollarTier.cpp new file mode 100644 index 00000000..daf20233 --- /dev/null +++ b/vn.ib/ibapi/linux/client/SoftDollarTier.cpp @@ -0,0 +1,22 @@ +#include "StdAfx.h" +#include "SoftDollarTier.h" + +SoftDollarTier::SoftDollarTier(const std::string& name, const std::string& val, const std::string& displayName) : + m_name(name), m_val(val), m_displayName(displayName) +{ +} + +std::string SoftDollarTier::name() const +{ + return m_name; +} + +std::string SoftDollarTier::val() const +{ + return m_val; +} + +std::string SoftDollarTier::displayName() const +{ + return m_displayName; +} \ No newline at end of file diff --git a/vn.ib/ibapi/linux/client/SoftDollarTier.h b/vn.ib/ibapi/linux/client/SoftDollarTier.h new file mode 100644 index 00000000..c53fca5e --- /dev/null +++ b/vn.ib/ibapi/linux/client/SoftDollarTier.h @@ -0,0 +1,14 @@ +#pragma once + +class TWSAPIDLLEXP SoftDollarTier +{ + std::string m_name, m_val, m_displayName; + +public: + SoftDollarTier(const std::string& name = "", const std::string& val = "", const std::string& displayName = ""); + + std::string name() const; + std::string val() const; + std::string displayName() const; +}; + diff --git a/vn.ib/ibapi/client/StdAfx.cpp b/vn.ib/ibapi/linux/client/StdAfx.cpp similarity index 100% rename from vn.ib/ibapi/client/StdAfx.cpp rename to vn.ib/ibapi/linux/client/StdAfx.cpp diff --git a/vn.ib/ibapi/client/StdAfx.h b/vn.ib/ibapi/linux/client/StdAfx.h similarity index 100% rename from vn.ib/ibapi/client/StdAfx.h rename to vn.ib/ibapi/linux/client/StdAfx.h diff --git a/vn.ib/ibapi/client/TagValue.h b/vn.ib/ibapi/linux/client/TagValue.h similarity index 100% rename from vn.ib/ibapi/client/TagValue.h rename to vn.ib/ibapi/linux/client/TagValue.h diff --git a/vn.ib/ibapi/client/TimeCondition.cpp b/vn.ib/ibapi/linux/client/TimeCondition.cpp similarity index 100% rename from vn.ib/ibapi/client/TimeCondition.cpp rename to vn.ib/ibapi/linux/client/TimeCondition.cpp diff --git a/vn.ib/ibapi/client/TimeCondition.h b/vn.ib/ibapi/linux/client/TimeCondition.h similarity index 100% rename from vn.ib/ibapi/client/TimeCondition.h rename to vn.ib/ibapi/linux/client/TimeCondition.h diff --git a/vn.ib/ibapi/client/TwsSocketClientErrors.h b/vn.ib/ibapi/linux/client/TwsSocketClientErrors.h similarity index 100% rename from vn.ib/ibapi/client/TwsSocketClientErrors.h rename to vn.ib/ibapi/linux/client/TwsSocketClientErrors.h diff --git a/vn.ib/ibapi/client/VolumeCondition.cpp b/vn.ib/ibapi/linux/client/VolumeCondition.cpp similarity index 100% rename from vn.ib/ibapi/client/VolumeCondition.cpp rename to vn.ib/ibapi/linux/client/VolumeCondition.cpp diff --git a/vn.ib/ibapi/client/VolumeCondition.h b/vn.ib/ibapi/linux/client/VolumeCondition.h similarity index 100% rename from vn.ib/ibapi/client/VolumeCondition.h rename to vn.ib/ibapi/linux/client/VolumeCondition.h diff --git a/vn.ib/ibapi/client/executioncondition.cpp b/vn.ib/ibapi/linux/client/executioncondition.cpp similarity index 100% rename from vn.ib/ibapi/client/executioncondition.cpp rename to vn.ib/ibapi/linux/client/executioncondition.cpp diff --git a/vn.ib/ibapi/client/executioncondition.h b/vn.ib/ibapi/linux/client/executioncondition.h similarity index 100% rename from vn.ib/ibapi/client/executioncondition.h rename to vn.ib/ibapi/linux/client/executioncondition.h diff --git a/vn.ib/ibapi/linux/client/shared_ptr.h b/vn.ib/ibapi/linux/client/shared_ptr.h new file mode 100644 index 00000000..c1bea151 --- /dev/null +++ b/vn.ib/ibapi/linux/client/shared_ptr.h @@ -0,0 +1,106 @@ +/* Copyright (C) 2013 Interactive Brokers LLC. All rights reserved. This code is subject to the terms + * and conditions of the IB API Non-Commercial License or the IB API Commercial License, as applicable. */ + +#pragma once +#ifndef shared_ptr_h_INCLUDED +#define shared_ptr_h_INCLUDED + +// +// Implements a subset of shared_prt found at www.boost.org. +// Uses a singly linked circular list instead of a reference counter. +// Avoids extra heap allocation needed to get a shared reference counter, +// but sizeof(shared_ptr) == sizeof(void*) * 3 compared to sizeof(void*) * 2 +// +// See "Handles and Exception Safety, Part 4: Tracking References without Counters" +// by Andrew Koenig and Barbara E. Moo, Feb. 2003 C++ Users Journal +// + +namespace ibapi { + +namespace shared_ptr_defs { + +class Use { +public: + + Use() { forward_ = this; back_ = this; } + ~Use() { remove(); } + + Use(const Use& u) { insert(u); } + Use& operator=(const Use& u) + { + if (this != &u) { + remove(); + insert(u); + } + return *this; + } + bool only() const { return this == this->forward_; } +private: + mutable const Use *forward_; + mutable const Use *back_; + + void insert(const Use& u) const { + this->back_ = &u; + this->forward_ = u.forward_; + u.forward_->back_ = this; + u.forward_ = this; + } + + void remove() const { + this->forward_->back_ = this->back_; + this->back_->forward_ = this->forward_; + } +}; + +} // end of namespace shared_ptr_defs + +template class shared_ptr { +public: + + typedef shared_ptr_defs::Use Use; + + template friend class shared_ptr; + + explicit shared_ptr(X* ptr = 0) : ptr_(ptr) {} + + ~shared_ptr() { if (use_.only()) delete ptr_; } + + template + shared_ptr(const shared_ptr& other) + : ptr_(other.ptr_), + use_(other.use_) + {} + + shared_ptr& operator=(const shared_ptr& other) { + if ( &use_ == &other.use_ ) { return *this; } + if ( use_.only() ) { delete ptr_; } + use_ = other.use_; + ptr_ = other.ptr_; + return *this; + } + + X& operator*() const { return *ptr_; } + X* operator->() const { return ptr_; } + X* get() const { return ptr_; } + bool only() const { return use_.only(); } + + void reset(X* ptr = 0) { + if ( use_.only() ) { delete ptr_; } + ptr_ = ptr; + use_ = Use(); + } + +private: + + X *ptr_; + Use use_; +}; + + +} //end of namespace ibapi + + +#else +//#include +//using std::shared_ptr; +#endif /* shared_ptr_h_INCLUDED */ \ No newline at end of file diff --git a/vn.ib/ibapi/ssl/EClientSocketSSL.cpp b/vn.ib/ibapi/linux/ssl/EClientSocketSSL.cpp similarity index 100% rename from vn.ib/ibapi/ssl/EClientSocketSSL.cpp rename to vn.ib/ibapi/linux/ssl/EClientSocketSSL.cpp diff --git a/vn.ib/ibapi/ssl/EClientSocketSSL.h b/vn.ib/ibapi/linux/ssl/EClientSocketSSL.h similarity index 100% rename from vn.ib/ibapi/ssl/EClientSocketSSL.h rename to vn.ib/ibapi/linux/ssl/EClientSocketSSL.h diff --git a/vn.ib/ibapi/ssl/EReaderSSL.cpp b/vn.ib/ibapi/linux/ssl/EReaderSSL.cpp similarity index 100% rename from vn.ib/ibapi/ssl/EReaderSSL.cpp rename to vn.ib/ibapi/linux/ssl/EReaderSSL.cpp diff --git a/vn.ib/ibapi/ssl/EReaderSSL.h b/vn.ib/ibapi/linux/ssl/EReaderSSL.h similarity index 100% rename from vn.ib/ibapi/ssl/EReaderSSL.h rename to vn.ib/ibapi/linux/ssl/EReaderSSL.h diff --git a/vn.ib/ibapi/ssl/ESocketSSL.cpp b/vn.ib/ibapi/linux/ssl/ESocketSSL.cpp similarity index 100% rename from vn.ib/ibapi/ssl/ESocketSSL.cpp rename to vn.ib/ibapi/linux/ssl/ESocketSSL.cpp diff --git a/vn.ib/ibapi/ssl/ESocketSSL.h b/vn.ib/ibapi/linux/ssl/ESocketSSL.h similarity index 100% rename from vn.ib/ibapi/ssl/ESocketSSL.h rename to vn.ib/ibapi/linux/ssl/ESocketSSL.h diff --git a/vn.ib/ibapi/ssl/StdAfx.cpp b/vn.ib/ibapi/linux/ssl/StdAfx.cpp similarity index 100% rename from vn.ib/ibapi/ssl/StdAfx.cpp rename to vn.ib/ibapi/linux/ssl/StdAfx.cpp diff --git a/vn.ib/ibapi/ssl/StdAfx.h b/vn.ib/ibapi/linux/ssl/StdAfx.h similarity index 100% rename from vn.ib/ibapi/ssl/StdAfx.h rename to vn.ib/ibapi/linux/ssl/StdAfx.h diff --git a/vn.ib/ibapi/client/.gitignore b/vn.ib/ibapi/windows/client/.gitignore similarity index 100% rename from vn.ib/ibapi/client/.gitignore rename to vn.ib/ibapi/windows/client/.gitignore diff --git a/vn.ib/ibapi/windows/client/CommissionReport.h b/vn.ib/ibapi/windows/client/CommissionReport.h new file mode 100644 index 00000000..9997b2be --- /dev/null +++ b/vn.ib/ibapi/windows/client/CommissionReport.h @@ -0,0 +1,27 @@ +/* Copyright (C) 2013 Interactive Brokers LLC. All rights reserved. This code is subject to the terms + * and conditions of the IB API Non-Commercial License or the IB API Commercial License, as applicable. */ + +#pragma once +#ifndef commissionreport_def +#define commissionreport_def + +struct CommissionReport +{ + CommissionReport() + { + commission = 0; + realizedPNL = 0; + yield = 0; + yieldRedemptionDate = 0; + } + + // commission report fields + std::string execId; + double commission; + std::string currency; + double realizedPNL; + double yield; + int yieldRedemptionDate; // YYYYMMDD format +}; + +#endif // commissionreport_def diff --git a/vn.ib/ibapi/windows/client/CommonDefs.h b/vn.ib/ibapi/windows/client/CommonDefs.h new file mode 100644 index 00000000..fd1ccead --- /dev/null +++ b/vn.ib/ibapi/windows/client/CommonDefs.h @@ -0,0 +1,33 @@ +/* Copyright (C) 2013 Interactive Brokers LLC. All rights reserved. This code is subject to the terms + * and conditions of the IB API Non-Commercial License or the IB API Commercial License, as applicable. */ + +#pragma once +#ifndef common_defs_h_INCLUDED +#define common_defs_h_INCLUDED + +typedef long TickerId; +typedef long OrderId; + +enum faDataType { GROUPS=1, PROFILES, ALIASES } ; + +inline const char* faDataTypeStr ( faDataType pFaDataType ) +{ + switch (pFaDataType) { + case GROUPS: + return "GROUPS"; + case PROFILES: + return "PROFILES"; + case ALIASES: + return "ALIASES"; + } + return 0 ; +} + +enum MarketDataType { + REALTIME = 1, + FROZEN = 2, + DELAYED = 3, + DELAYED_FROZEN = 4 +}; + +#endif /* common_defs_h_INCLUDED */ diff --git a/vn.ib/ibapi/windows/client/Contract.h b/vn.ib/ibapi/windows/client/Contract.h new file mode 100644 index 00000000..524fe039 --- /dev/null +++ b/vn.ib/ibapi/windows/client/Contract.h @@ -0,0 +1,187 @@ +/* Copyright (C) 2013 Interactive Brokers LLC. All rights reserved. This code is subject to the terms + * and conditions of the IB API Non-Commercial License or the IB API Commercial License, as applicable. */ + +#pragma once +#ifndef contract_def +#define contract_def + +#include "TagValue.h" + +/* + SAME_POS = open/close leg value is same as combo + OPEN_POS = open + CLOSE_POS = close + UNKNOWN_POS = unknown +*/ +enum LegOpenClose { SAME_POS, OPEN_POS, CLOSE_POS, UNKNOWN_POS }; + +struct ComboLeg +{ + ComboLeg() + : conId(0) + , ratio(0) + , openClose(0) + , shortSaleSlot(0) + , exemptCode(-1) + { + } + + long conId; + long ratio; + std::string action; //BUY/SELL/SSHORT + + std::string exchange; + long openClose; // LegOpenClose enum values + + // for stock legs when doing short sale + long shortSaleSlot; // 1 = clearing broker, 2 = third party + std::string designatedLocation; + int exemptCode; + + bool operator==( const ComboLeg& other) const + { + return (conId == other.conId && + ratio == other.ratio && + openClose == other.openClose && + shortSaleSlot == other.shortSaleSlot && + exemptCode == other.exemptCode && + action == other.action && + exchange == other.exchange && + designatedLocation == other.designatedLocation); + } +}; + +struct UnderComp +{ + UnderComp() + : conId(0) + , delta(0) + , price(0) + {} + + long conId; + double delta; + double price; +}; + +typedef ibapi::shared_ptr ComboLegSPtr; + +struct Contract +{ + Contract() + : conId(0) + , strike(0) + , includeExpired(false) + , comboLegs(NULL) + , underComp(NULL) + { + } + + long conId; + std::string symbol; + std::string secType; + std::string lastTradeDateOrContractMonth; + double strike; + std::string right; + std::string multiplier; + std::string exchange; + std::string primaryExchange; // pick an actual (ie non-aggregate) exchange that the contract trades on. DO NOT SET TO SMART. + std::string currency; + std::string localSymbol; + std::string tradingClass; + bool includeExpired; + std::string secIdType; // CUSIP;SEDOL;ISIN;RIC + std::string secId; + + // COMBOS + std::string comboLegsDescrip; // received in open order 14 and up for all combos + + // combo legs + typedef std::vector ComboLegList; + typedef ibapi::shared_ptr ComboLegListSPtr; + + ComboLegListSPtr comboLegs; + + // delta neutral + UnderComp* underComp; + +public: + + // Helpers + static void CloneComboLegs(ComboLegListSPtr& dst, const ComboLegListSPtr& src); +}; + +struct ContractDetails +{ + ContractDetails() + : minTick(0) + , priceMagnifier(0) + , underConId(0) + , evMultiplier(0) + , callable(false) + , putable(false) + , coupon(0) + , convertible(false) + , nextOptionPartial(false) + { + } + + Contract summary; + std::string marketName; + double minTick; + std::string orderTypes; + std::string validExchanges; + long priceMagnifier; + int underConId; + std::string longName; + std::string contractMonth; + std::string industry; + std::string category; + std::string subcategory; + std::string timeZoneId; + std::string tradingHours; + std::string liquidHours; + std::string evRule; + double evMultiplier; + + TagValueListSPtr secIdList; + + // BOND values + std::string cusip; + std::string ratings; + std::string descAppend; + std::string bondType; + std::string couponType; + bool callable; + bool putable; + double coupon; + bool convertible; + std::string maturity; + std::string issueDate; + std::string nextOptionDate; + std::string nextOptionType; + bool nextOptionPartial; + std::string notes; +}; + +inline void +Contract::CloneComboLegs(ComboLegListSPtr& dst, const ComboLegListSPtr& src) +{ + if (!src.get()) + return; + + dst->reserve(src->size()); + + ComboLegList::const_iterator iter = src->begin(); + const ComboLegList::const_iterator iterEnd = src->end(); + + for (; iter != iterEnd; ++iter) { + const ComboLeg* leg = iter->get(); + if (!leg) + continue; + dst->push_back(ComboLegSPtr(new ComboLeg(*leg))); + } +} + + +#endif diff --git a/vn.ib/ibapi/windows/client/ContractCondition.cpp b/vn.ib/ibapi/windows/client/ContractCondition.cpp new file mode 100644 index 00000000..cf460aaa --- /dev/null +++ b/vn.ib/ibapi/windows/client/ContractCondition.cpp @@ -0,0 +1,43 @@ +#include "StdAfx.h" +#include "ContractCondition.h" +#include "EDecoder.h" +#include "EClient.h" + +std::string ContractCondition::toString() { + std::string strContract = conId() + ""; + + return type() + " of " + strContract + OperatorCondition::toString(); +} + +const char* ContractCondition::readExternal(const char* ptr, const char* endPtr) { + if (!(ptr = OperatorCondition::readExternal(ptr, endPtr))) + return 0; + + DECODE_FIELD(m_conId); + DECODE_FIELD(m_exchange); + + return ptr; +} + +void ContractCondition::writeExternal(std::ostream & msg) const { + OperatorCondition::writeExternal(msg); + + ENCODE_FIELD(m_conId); + ENCODE_FIELD(m_exchange); +} + +int ContractCondition::conId() { + return m_conId; +} + +void ContractCondition::conId(int conId) { + m_conId = conId; +} + +std::string ContractCondition::exchange() { + return m_exchange; +} + +void ContractCondition::exchange(const std::string & exchange) { + m_exchange = exchange; +} diff --git a/vn.ib/ibapi/windows/client/ContractCondition.h b/vn.ib/ibapi/windows/client/ContractCondition.h new file mode 100644 index 00000000..65da71d0 --- /dev/null +++ b/vn.ib/ibapi/windows/client/ContractCondition.h @@ -0,0 +1,17 @@ +#pragma once +#include "OperatorCondition.h" + +class TWSAPIDLLEXP ContractCondition : public OperatorCondition { + int m_conId; + std::string m_exchange; + +public: + virtual std::string toString(); + virtual const char* readExternal(const char* ptr, const char* endPtr); + virtual void writeExternal(std::ostream &out) const; + + int conId(); + void conId(int conId); + std::string exchange(); + void exchange(const std::string &exchange); +}; diff --git a/vn.ib/ibapi/windows/client/DefaultEWrapper.cpp b/vn.ib/ibapi/windows/client/DefaultEWrapper.cpp new file mode 100644 index 00000000..6e49ad33 --- /dev/null +++ b/vn.ib/ibapi/windows/client/DefaultEWrapper.cpp @@ -0,0 +1,77 @@ +/* Copyright (C) 2013 Interactive Brokers LLC. All rights reserved. This code is subject to the terms + * and conditions of the IB API Non-Commercial License or the IB API Commercial License, as applicable. */ + +#include "StdAfx.h" +#include "DefaultEWrapper.h" + +void DefaultEWrapper::tickPrice( TickerId tickerId, TickType field, double price, int canAutoExecute) { } +void DefaultEWrapper::tickSize( TickerId tickerId, TickType field, int size) { } +void DefaultEWrapper::tickOptionComputation( TickerId tickerId, TickType tickType, double impliedVol, double delta, + double optPrice, double pvDividend, double gamma, double vega, double theta, double undPrice) { } +void DefaultEWrapper::tickGeneric(TickerId tickerId, TickType tickType, double value) { } +void DefaultEWrapper::tickString(TickerId tickerId, TickType tickType, const std::string& value) { } +void DefaultEWrapper::tickEFP(TickerId tickerId, TickType tickType, double basisPoints, const std::string& formattedBasisPoints, + double totalDividends, int holdDays, const std::string& futureLastTradeDate, double dividendImpact, double dividendsToLastTradeDate) { } +void DefaultEWrapper::orderStatus( OrderId orderId, const std::string& status, double filled, + double remaining, double avgFillPrice, int permId, int parentId, + double lastFillPrice, int clientId, const std::string& whyHeld) { } +void DefaultEWrapper::openOrder( OrderId orderId, const Contract&, const Order&, const OrderState&) { } +void DefaultEWrapper::openOrderEnd() { } +void DefaultEWrapper::winError( const std::string& str, int lastError) { } +void DefaultEWrapper::connectionClosed() { } +void DefaultEWrapper::updateAccountValue(const std::string& key, const std::string& val, + const std::string& currency, const std::string& accountName) { } +void DefaultEWrapper::updatePortfolio( const Contract& contract, double position, + double marketPrice, double marketValue, double averageCost, + double unrealizedPNL, double realizedPNL, const std::string& accountName) { } +void DefaultEWrapper::updateAccountTime(const std::string& timeStamp) { } +void DefaultEWrapper::accountDownloadEnd(const std::string& accountName) { } +void DefaultEWrapper::nextValidId( OrderId orderId) { } +void DefaultEWrapper::contractDetails( int reqId, const ContractDetails& contractDetails) { } +void DefaultEWrapper::bondContractDetails( int reqId, const ContractDetails& contractDetails) { } +void DefaultEWrapper::contractDetailsEnd( int reqId) { } +void DefaultEWrapper::execDetails( int reqId, const Contract& contract, const Execution& execution) { } +void DefaultEWrapper::execDetailsEnd( int reqId) { } +void DefaultEWrapper::error(const int id, const int errorCode, const std::string errorString) { } +void DefaultEWrapper::updateMktDepth(TickerId id, int position, int operation, int side, + double price, int size) { } +void DefaultEWrapper::updateMktDepthL2(TickerId id, int position, std::string marketMaker, int operation, + int side, double price, int size) { } +void DefaultEWrapper::updateNewsBulletin(int msgId, int msgType, const std::string& newsMessage, const std::string& originExch) { } +void DefaultEWrapper::managedAccounts( const std::string& accountsList) { } +void DefaultEWrapper::receiveFA(faDataType pFaDataType, const std::string& cxml) { } +void DefaultEWrapper::historicalData(TickerId reqId, const std::string& date, double open, double high, + double low, double close, int volume, int barCount, double WAP, int hasGaps) { } +void DefaultEWrapper::scannerParameters(const std::string& xml) { } +void DefaultEWrapper::scannerData(int reqId, int rank, const ContractDetails& contractDetails, + const std::string& distance, const std::string& benchmark, const std::string& projection, + const std::string& legsStr) { } +void DefaultEWrapper::scannerDataEnd(int reqId) { } +void DefaultEWrapper::realtimeBar(TickerId reqId, long time, double open, double high, double low, double close, + long volume, double wap, int count) { } +void DefaultEWrapper::currentTime(long time) { } +void DefaultEWrapper::fundamentalData(TickerId reqId, const std::string& data) { } +void DefaultEWrapper::deltaNeutralValidation(int reqId, const UnderComp& underComp) { } +void DefaultEWrapper::tickSnapshotEnd( int reqId) { } +void DefaultEWrapper::marketDataType( TickerId reqId, int marketDataType) { } +void DefaultEWrapper::commissionReport( const CommissionReport& commissionReport) { } +void DefaultEWrapper::position( const std::string& account, const Contract& contract, double position, double avgCost) { } +void DefaultEWrapper::positionEnd() { } +void DefaultEWrapper::accountSummary( int reqId, const std::string& account, const std::string& tag, const std::string& value, const std::string& curency) { } +void DefaultEWrapper::accountSummaryEnd( int reqId) { } +void DefaultEWrapper::verifyMessageAPI( const std::string& apiData) { } +void DefaultEWrapper::verifyCompleted( bool isSuccessful, const std::string& errorText) { } +void DefaultEWrapper::displayGroupList( int reqId, const std::string& groups) { } +void DefaultEWrapper::displayGroupUpdated( int reqId, const std::string& contractInfo) { } +void DefaultEWrapper::verifyAndAuthMessageAPI( const std::string& apiData, const std::string& xyzChallange) { } +void DefaultEWrapper::verifyAndAuthCompleted( bool isSuccessful, const std::string& errorText) { } +void DefaultEWrapper::connectAck() { } +void DefaultEWrapper::positionMulti( int reqId, const std::string& account,const std::string& modelCode, const Contract& contract, double pos, double avgCost) { } +void DefaultEWrapper::positionMultiEnd( int reqId) { } +void DefaultEWrapper::accountUpdateMulti( int reqId, const std::string& account, const std::string& modelCode, const std::string& key, const std::string& value, const std::string& currency) { } +void DefaultEWrapper::accountUpdateMultiEnd( int reqId) { } +void DefaultEWrapper::securityDefinitionOptionalParameter(int reqId, const std::string& exchange, int underlyingConId, const std::string& tradingClass, const std::string& multiplier, std::set expirations, std::set strikes) { } +void DefaultEWrapper::securityDefinitionOptionalParameterEnd(int reqId) { } +void DefaultEWrapper::softDollarTiers(int reqId, const std::vector &tiers) { } + + diff --git a/vn.ib/ibapi/windows/client/DefaultEWrapper.h b/vn.ib/ibapi/windows/client/DefaultEWrapper.h new file mode 100644 index 00000000..bf88d4d7 --- /dev/null +++ b/vn.ib/ibapi/windows/client/DefaultEWrapper.h @@ -0,0 +1,81 @@ +/* Copyright (C) 2013 Interactive Brokers LLC. All rights reserved. This code is subject to the terms + * and conditions of the IB API Non-Commercial License or the IB API Commercial License, as applicable. */ + +#pragma once +#include "EWrapper.h" + +class TWSAPIDLLEXP DefaultEWrapper : + public EWrapper +{ +public: + virtual void tickPrice( TickerId tickerId, TickType field, double price, int canAutoExecute); + virtual void tickSize( TickerId tickerId, TickType field, int size); + virtual void tickOptionComputation( TickerId tickerId, TickType tickType, double impliedVol, double delta, + double optPrice, double pvDividend, double gamma, double vega, double theta, double undPrice); + virtual void tickGeneric(TickerId tickerId, TickType tickType, double value); + virtual void tickString(TickerId tickerId, TickType tickType, const std::string& value); + virtual void tickEFP(TickerId tickerId, TickType tickType, double basisPoints, const std::string& formattedBasisPoints, + double totalDividends, int holdDays, const std::string& futureLastTradeDate, double dividendImpact, double dividendsToLastTradeDate); + virtual void orderStatus( OrderId orderId, const std::string& status, double filled, + double remaining, double avgFillPrice, int permId, int parentId, + double lastFillPrice, int clientId, const std::string& whyHeld); + virtual void openOrder( OrderId orderId, const Contract&, const Order&, const OrderState&); + virtual void openOrderEnd(); + virtual void winError( const std::string& str, int lastError); + virtual void connectionClosed(); + virtual void updateAccountValue(const std::string& key, const std::string& val, + const std::string& currency, const std::string& accountName); + virtual void updatePortfolio( const Contract& contract, double position, + double marketPrice, double marketValue, double averageCost, + double unrealizedPNL, double realizedPNL, const std::string& accountName); + virtual void updateAccountTime(const std::string& timeStamp); + virtual void accountDownloadEnd(const std::string& accountName); + virtual void nextValidId( OrderId orderId); + virtual void contractDetails( int reqId, const ContractDetails& contractDetails); + virtual void bondContractDetails( int reqId, const ContractDetails& contractDetails); + virtual void contractDetailsEnd( int reqId); + virtual void execDetails( int reqId, const Contract& contract, const Execution& execution); + virtual void execDetailsEnd( int reqId); + virtual void error(const int id, const int errorCode, const std::string errorString); + virtual void updateMktDepth(TickerId id, int position, int operation, int side, + double price, int size); + virtual void updateMktDepthL2(TickerId id, int position, std::string marketMaker, int operation, + int side, double price, int size); + virtual void updateNewsBulletin(int msgId, int msgType, const std::string& newsMessage, const std::string& originExch); + virtual void managedAccounts( const std::string& accountsList); + virtual void receiveFA(faDataType pFaDataType, const std::string& cxml); + virtual void historicalData(TickerId reqId, const std::string& date, double open, double high, + double low, double close, int volume, int barCount, double WAP, int hasGaps); + virtual void scannerParameters(const std::string& xml); + virtual void scannerData(int reqId, int rank, const ContractDetails& contractDetails, + const std::string& distance, const std::string& benchmark, const std::string& projection, + const std::string& legsStr); + virtual void scannerDataEnd(int reqId); + virtual void realtimeBar(TickerId reqId, long time, double open, double high, double low, double close, + long volume, double wap, int count); + virtual void currentTime(long time); + virtual void fundamentalData(TickerId reqId, const std::string& data); + virtual void deltaNeutralValidation(int reqId, const UnderComp& underComp); + virtual void tickSnapshotEnd( int reqId); + virtual void marketDataType( TickerId reqId, int marketDataType); + virtual void commissionReport( const CommissionReport& commissionReport); + virtual void position( const std::string& account, const Contract& contract, double position, double avgCost); + virtual void positionEnd(); + virtual void accountSummary( int reqId, const std::string& account, const std::string& tag, const std::string& value, const std::string& curency); + virtual void accountSummaryEnd( int reqId); + virtual void verifyMessageAPI( const std::string& apiData); + virtual void verifyCompleted( bool isSuccessful, const std::string& errorText); + virtual void displayGroupList( int reqId, const std::string& groups); + virtual void displayGroupUpdated( int reqId, const std::string& contractInfo); + virtual void verifyAndAuthMessageAPI( const std::string& apiData, const std::string& xyzChallange); + virtual void verifyAndAuthCompleted( bool isSuccessful, const std::string& errorText); + virtual void connectAck(); + virtual void positionMulti( int reqId, const std::string& account,const std::string& modelCode, const Contract& contract, double pos, double avgCost); + virtual void positionMultiEnd( int reqId); + virtual void accountUpdateMulti( int reqId, const std::string& account, const std::string& modelCode, const std::string& key, const std::string& value, const std::string& currency); + virtual void accountUpdateMultiEnd( int reqId); + virtual void securityDefinitionOptionalParameter(int reqId, const std::string& exchange, int underlyingConId, const std::string& tradingClass, const std::string& multiplier, std::set expirations, std::set strikes); + virtual void securityDefinitionOptionalParameterEnd(int reqId); + virtual void softDollarTiers(int reqId, const std::vector &tiers); +}; + diff --git a/vn.ib/ibapi/windows/client/EClient.cpp b/vn.ib/ibapi/windows/client/EClient.cpp new file mode 100644 index 00000000..c295cf54 --- /dev/null +++ b/vn.ib/ibapi/windows/client/EClient.cpp @@ -0,0 +1,2840 @@ +/* Copyright (C) 2013 Interactive Brokers LLC. All rights reserved. This code is subject to the terms +* and conditions of the IB API Non-Commercial License or the IB API Commercial License, as applicable. */ + +#include "StdAfx.h" + +#include "EPosixClientSocketPlatform.h" + +#include "EClient.h" + +#include "EWrapper.h" +#include "TwsSocketClientErrors.h" +#include "Contract.h" +#include "Order.h" +#include "OrderState.h" +#include "Execution.h" +#include "ScannerSubscription.h" +#include "CommissionReport.h" +#include "EDecoder.h" +#include "EMessage.h" +#include "ETransport.h" + +#include +#include +#include + +#include +#include +#include + +using namespace ibapi::client_constants; + +/////////////////////////////////////////////////////////// +// encoders +template +void EClient::EncodeField(std::ostream& os, T value) +{ + os << value << '\0'; +} + +template<> +void EClient::EncodeField(std::ostream& os, bool boolValue) +{ + EncodeField(os, boolValue ? 1 : 0); +} + +template<> +void EClient::EncodeField(std::ostream& os, double doubleValue) +{ + char str[128]; + + snprintf(str, sizeof(str), "%.10g", doubleValue); + + EncodeField(os, str); +} + +/////////////////////////////////////////////////////////// +// "max" encoders +void EClient::EncodeFieldMax(std::ostream& os, int intValue) +{ + if( intValue == INT_MAX) { + EncodeField(os, ""); + return; + } + EncodeField(os, intValue); +} + +void EClient::EncodeFieldMax(std::ostream& os, double doubleValue) +{ + if( doubleValue == DBL_MAX) { + EncodeField(os, ""); + return; + } + EncodeField(os, doubleValue); +} + + +/////////////////////////////////////////////////////////// +// member funcs +EClient::EClient( EWrapper *ptr, ETransport *pTransport) + : m_pEWrapper(ptr) + , m_clientId(-1) + , m_connState(CS_DISCONNECTED) + , m_extraAuth(false) + , m_serverVersion(0) + , m_useV100Plus(true) + , m_transport(pTransport) +{ +} + +EClient::~EClient() +{ +} + +EClient::ConnState EClient::connState() const +{ + return m_connState; +} + +bool EClient::isConnected() const +{ + return m_connState == CS_CONNECTED; +} + +bool EClient::isConnecting() const +{ + return m_connState == CS_CONNECTING; +} + +void EClient::eConnectBase() +{ +} + +void EClient::eDisconnectBase() +{ + m_TwsTime.clear(); + m_serverVersion = 0; + m_connState = CS_DISCONNECTED; + m_extraAuth = false; + m_clientId = -1; + m_inBuffer.clear(); +} + +int EClient::serverVersion() +{ + return m_serverVersion; +} + +std::string EClient::TwsConnectionTime() +{ + return m_TwsTime; +} + +const std::string& EClient::optionalCapabilities() const +{ + return m_optionalCapabilities; +} + +void EClient::setOptionalCapabilities(const std::string& optCapts) +{ + m_optionalCapabilities = optCapts; +} + +void EClient::setConnectOptions(const std::string& connectOptions) +{ + if( isSocketOK()) { + m_pEWrapper->error( NO_VALID_ID, ALREADY_CONNECTED.code(), ALREADY_CONNECTED.msg()); + return; + } + + m_connectOptions = connectOptions; +} + +void EClient::disableUseV100Plus() +{ + if( isSocketOK()) { + m_pEWrapper->error( NO_VALID_ID, ALREADY_CONNECTED.code(), ALREADY_CONNECTED.msg()); + return; + } + + m_useV100Plus = false; + m_connectOptions = ""; +} + +bool EClient::usingV100Plus() { + return m_useV100Plus; +} + +int EClient::bufferedSend(const std::string& msg) { + EMessage emsg(std::vector(msg.begin(), msg.end())); + + return m_transport->send(&emsg); +} + +void EClient::reqMktData(TickerId tickerId, const Contract& contract, + const std::string& genericTicks, bool snapshot, const TagValueListSPtr& mktDataOptions) +{ + // not connected? + if( !isConnected()) { + m_pEWrapper->error( tickerId, NOT_CONNECTED.code(), NOT_CONNECTED.msg()); + return; + } + + // not needed anymore validation + //if( m_serverVersion < MIN_SERVER_VER_SNAPSHOT_MKT_DATA && snapshot) { + // m_pEWrapper->error( tickerId, UPDATE_TWS.code(), UPDATE_TWS.msg() + + // " It does not support snapshot market data requests."); + // return; + //} + + if( m_serverVersion < MIN_SERVER_VER_UNDER_COMP) { + if( contract.underComp) { + m_pEWrapper->error( tickerId, UPDATE_TWS.code(), UPDATE_TWS.msg() + + " It does not support delta-neutral orders."); + return; + } + } + + if (m_serverVersion < MIN_SERVER_VER_REQ_MKT_DATA_CONID) { + if( contract.conId > 0) { + m_pEWrapper->error( tickerId, UPDATE_TWS.code(), UPDATE_TWS.msg() + + " It does not support conId parameter."); + return; + } + } + + if (m_serverVersion < MIN_SERVER_VER_TRADING_CLASS) { + if( !contract.tradingClass.empty() ) { + m_pEWrapper->error( tickerId, UPDATE_TWS.code(), UPDATE_TWS.msg() + + " It does not support tradingClass parameter in reqMktData."); + return; + } + } + + std::stringstream msg; + prepareBuffer( msg); + + const int VERSION = 11; + + // send req mkt data msg + ENCODE_FIELD( REQ_MKT_DATA); + ENCODE_FIELD( VERSION); + ENCODE_FIELD( tickerId); + + // send contract fields + if( m_serverVersion >= MIN_SERVER_VER_REQ_MKT_DATA_CONID) { + ENCODE_FIELD( contract.conId); + } + ENCODE_FIELD( contract.symbol); + ENCODE_FIELD( contract.secType); + ENCODE_FIELD( contract.lastTradeDateOrContractMonth); + ENCODE_FIELD( contract.strike); + ENCODE_FIELD( contract.right); + ENCODE_FIELD( contract.multiplier); // srv v15 and above + + ENCODE_FIELD( contract.exchange); + ENCODE_FIELD( contract.primaryExchange); // srv v14 and above + ENCODE_FIELD( contract.currency); + + ENCODE_FIELD( contract.localSymbol); // srv v2 and above + + if( m_serverVersion >= MIN_SERVER_VER_TRADING_CLASS) { + ENCODE_FIELD( contract.tradingClass); + } + + // Send combo legs for BAG requests (srv v8 and above) + if( contract.secType == "BAG") + { + const Contract::ComboLegList* const comboLegs = contract.comboLegs.get(); + const int comboLegsCount = comboLegs ? comboLegs->size() : 0; + ENCODE_FIELD( comboLegsCount); + if( comboLegsCount > 0) { + for( int i = 0; i < comboLegsCount; ++i) { + const ComboLeg* comboLeg = ((*comboLegs)[i]).get(); + assert( comboLeg); + ENCODE_FIELD( comboLeg->conId); + ENCODE_FIELD( comboLeg->ratio); + ENCODE_FIELD( comboLeg->action); + ENCODE_FIELD( comboLeg->exchange); + } + } + } + + if( m_serverVersion >= MIN_SERVER_VER_UNDER_COMP) { + if( contract.underComp) { + const UnderComp& underComp = *contract.underComp; + ENCODE_FIELD( true); + ENCODE_FIELD( underComp.conId); + ENCODE_FIELD( underComp.delta); + ENCODE_FIELD( underComp.price); + } + else { + ENCODE_FIELD( false); + } + } + + ENCODE_FIELD( genericTicks); // srv v31 and above + ENCODE_FIELD( snapshot); // srv v35 and above + + // send mktDataOptions parameter + if( m_serverVersion >= MIN_SERVER_VER_LINKING) { + std::string mktDataOptionsStr(""); + const int mktDataOptionsCount = mktDataOptions.get() ? mktDataOptions->size() : 0; + if( mktDataOptionsCount > 0) { + for( int i = 0; i < mktDataOptionsCount; ++i) { + const TagValue* tagValue = ((*mktDataOptions)[i]).get(); + mktDataOptionsStr += tagValue->tag; + mktDataOptionsStr += "="; + mktDataOptionsStr += tagValue->value; + mktDataOptionsStr += ";"; + } + } + ENCODE_FIELD( mktDataOptionsStr); + } + + closeAndSend( msg.str()); +} + +void EClient::cancelMktData(TickerId tickerId) +{ + // not connected? + if( !isConnected()) { + m_pEWrapper->error( tickerId, NOT_CONNECTED.code(), NOT_CONNECTED.msg()); + return; + } + + std::stringstream msg; + prepareBuffer( msg); + + const int VERSION = 2; + + // send cancel mkt data msg + ENCODE_FIELD( CANCEL_MKT_DATA); + ENCODE_FIELD( VERSION); + ENCODE_FIELD( tickerId); + + closeAndSend( msg.str()); +} + +void EClient::reqMktDepth( TickerId tickerId, const Contract& contract, int numRows, const TagValueListSPtr& mktDepthOptions) +{ + // not connected? + if( !isConnected()) { + m_pEWrapper->error( tickerId, NOT_CONNECTED.code(), NOT_CONNECTED.msg()); + return; + } + + // Not needed anymore validation + // This feature is only available for versions of TWS >=6 + //if( m_serverVersion < 6) { + // m_pEWrapper->error( NO_VALID_ID, UPDATE_TWS.code(), UPDATE_TWS.msg()); + // return; + //} + + if (m_serverVersion < MIN_SERVER_VER_TRADING_CLASS) { + if( !contract.tradingClass.empty() || (contract.conId > 0)) { + m_pEWrapper->error( tickerId, UPDATE_TWS.code(), UPDATE_TWS.msg() + + " It does not support conId and tradingClass parameters in reqMktDepth."); + return; + } + } + + std::stringstream msg; + prepareBuffer( msg); + + const int VERSION = 5; + + // send req mkt data msg + ENCODE_FIELD( REQ_MKT_DEPTH); + ENCODE_FIELD( VERSION); + ENCODE_FIELD( tickerId); + + // send contract fields + if( m_serverVersion >= MIN_SERVER_VER_TRADING_CLASS) { + ENCODE_FIELD( contract.conId); + } + ENCODE_FIELD( contract.symbol); + ENCODE_FIELD( contract.secType); + ENCODE_FIELD( contract.lastTradeDateOrContractMonth); + ENCODE_FIELD( contract.strike); + ENCODE_FIELD( contract.right); + ENCODE_FIELD( contract.multiplier); // srv v15 and above + ENCODE_FIELD( contract.exchange); + ENCODE_FIELD( contract.currency); + ENCODE_FIELD( contract.localSymbol); + if( m_serverVersion >= MIN_SERVER_VER_TRADING_CLASS) { + ENCODE_FIELD( contract.tradingClass); + } + + ENCODE_FIELD( numRows); // srv v19 and above + + // send mktDepthOptions parameter + if( m_serverVersion >= MIN_SERVER_VER_LINKING) { + std::string mktDepthOptionsStr(""); + const int mktDepthOptionsCount = mktDepthOptions.get() ? mktDepthOptions->size() : 0; + if( mktDepthOptionsCount > 0) { + for( int i = 0; i < mktDepthOptionsCount; ++i) { + const TagValue* tagValue = ((*mktDepthOptions)[i]).get(); + mktDepthOptionsStr += tagValue->tag; + mktDepthOptionsStr += "="; + mktDepthOptionsStr += tagValue->value; + mktDepthOptionsStr += ";"; + } + } + ENCODE_FIELD( mktDepthOptionsStr); + } + + closeAndSend( msg.str()); +} + + +void EClient::cancelMktDepth( TickerId tickerId) +{ + // not connected? + if( !isConnected()) { + m_pEWrapper->error( tickerId, NOT_CONNECTED.code(), NOT_CONNECTED.msg()); + return; + } + + // Not needed anymore validation + // This feature is only available for versions of TWS >=6 + //if( m_serverVersion < 6) { + // m_pEWrapper->error( NO_VALID_ID, UPDATE_TWS.code(), UPDATE_TWS.msg()); + // return; + //} + + std::stringstream msg; + prepareBuffer( msg); + + const int VERSION = 1; + + // send cancel mkt data msg + ENCODE_FIELD( CANCEL_MKT_DEPTH); + ENCODE_FIELD( VERSION); + ENCODE_FIELD( tickerId); + + closeAndSend( msg.str()); +} + +void EClient::reqHistoricalData( TickerId tickerId, const Contract& contract, + const std::string& endDateTime, const std::string& durationStr, + const std::string& barSizeSetting, const std::string& whatToShow, + int useRTH, int formatDate, const TagValueListSPtr& chartOptions) +{ + // not connected? + if( !isConnected()) { + m_pEWrapper->error( tickerId, NOT_CONNECTED.code(), NOT_CONNECTED.msg()); + return; + } + + // Not needed anymore validation + //if( m_serverVersion < 16) { + // m_pEWrapper->error(NO_VALID_ID, UPDATE_TWS.code(), UPDATE_TWS.msg()); + // return; + //} + + if (m_serverVersion < MIN_SERVER_VER_TRADING_CLASS) { + if( !contract.tradingClass.empty() || (contract.conId > 0)) { + m_pEWrapper->error( tickerId, UPDATE_TWS.code(), UPDATE_TWS.msg() + + " It does not support conId and tradingClass parameters in reqHistoricalData."); + return; + } + } + + std::stringstream msg; + prepareBuffer( msg); + + const int VERSION = 6; + + ENCODE_FIELD( REQ_HISTORICAL_DATA); + ENCODE_FIELD( VERSION); + ENCODE_FIELD( tickerId); + + // send contract fields + if( m_serverVersion >= MIN_SERVER_VER_TRADING_CLASS) { + ENCODE_FIELD( contract.conId); + } + ENCODE_FIELD( contract.symbol); + ENCODE_FIELD( contract.secType); + ENCODE_FIELD( contract.lastTradeDateOrContractMonth); + ENCODE_FIELD( contract.strike); + ENCODE_FIELD( contract.right); + ENCODE_FIELD( contract.multiplier); + ENCODE_FIELD( contract.exchange); + ENCODE_FIELD( contract.primaryExchange); + ENCODE_FIELD( contract.currency); + ENCODE_FIELD( contract.localSymbol); + if( m_serverVersion >= MIN_SERVER_VER_TRADING_CLASS) { + ENCODE_FIELD( contract.tradingClass); + } + ENCODE_FIELD( contract.includeExpired); // srv v31 and above + + ENCODE_FIELD( endDateTime); // srv v20 and above + ENCODE_FIELD( barSizeSetting); // srv v20 and above + + ENCODE_FIELD( durationStr); + ENCODE_FIELD( useRTH); + ENCODE_FIELD( whatToShow); + ENCODE_FIELD( formatDate); // srv v16 and above + + // Send combo legs for BAG requests + if( contract.secType == "BAG") + { + const Contract::ComboLegList* const comboLegs = contract.comboLegs.get(); + const int comboLegsCount = comboLegs ? comboLegs->size() : 0; + ENCODE_FIELD( comboLegsCount); + if( comboLegsCount > 0) { + for( int i = 0; i < comboLegsCount; ++i) { + const ComboLeg* comboLeg = ((*comboLegs)[i]).get(); + assert( comboLeg); + ENCODE_FIELD( comboLeg->conId); + ENCODE_FIELD( comboLeg->ratio); + ENCODE_FIELD( comboLeg->action); + ENCODE_FIELD( comboLeg->exchange); + } + } + } + + // send chartOptions parameter + if( m_serverVersion >= MIN_SERVER_VER_LINKING) { + std::string chartOptionsStr(""); + const int chartOptionsCount = chartOptions.get() ? chartOptions->size() : 0; + if( chartOptionsCount > 0) { + for( int i = 0; i < chartOptionsCount; ++i) { + const TagValue* tagValue = ((*chartOptions)[i]).get(); + chartOptionsStr += tagValue->tag; + chartOptionsStr += "="; + chartOptionsStr += tagValue->value; + chartOptionsStr += ";"; + } + } + ENCODE_FIELD( chartOptionsStr); + } + + closeAndSend( msg.str()); +} + +void EClient::cancelHistoricalData(TickerId tickerId) +{ + // not connected? + if( !isConnected()) { + m_pEWrapper->error( tickerId, NOT_CONNECTED.code(), NOT_CONNECTED.msg()); + return; + } + + // Not needed anymore validation + //if( m_serverVersion < 24) { + // m_pEWrapper->error( NO_VALID_ID, UPDATE_TWS.code(), UPDATE_TWS.msg() + + // " It does not support historical data query cancellation."); + // return; + //} + + std::stringstream msg; + prepareBuffer( msg); + + const int VERSION = 1; + + ENCODE_FIELD( CANCEL_HISTORICAL_DATA); + ENCODE_FIELD( VERSION); + ENCODE_FIELD( tickerId); + + closeAndSend( msg.str()); +} + +void EClient::reqRealTimeBars(TickerId tickerId, const Contract& contract, + int barSize, const std::string& whatToShow, bool useRTH, + const TagValueListSPtr& realTimeBarsOptions) +{ + // not connected? + if( !isConnected()) { + m_pEWrapper->error( tickerId, NOT_CONNECTED.code(), NOT_CONNECTED.msg()); + return; + } + + // Not needed anymore validation + //if( m_serverVersion < MIN_SERVER_VER_REAL_TIME_BARS) { + // m_pEWrapper->error( NO_VALID_ID, UPDATE_TWS.code(), UPDATE_TWS.msg() + + // " It does not support real time bars."); + // return; + //} + + if (m_serverVersion < MIN_SERVER_VER_TRADING_CLASS) { + if( !contract.tradingClass.empty() || (contract.conId > 0)) { + m_pEWrapper->error( tickerId, UPDATE_TWS.code(), UPDATE_TWS.msg() + + " It does not support conId and tradingClass parameters in reqRealTimeBars."); + return; + } + } + + std::stringstream msg; + prepareBuffer( msg); + + const int VERSION = 3; + + ENCODE_FIELD( REQ_REAL_TIME_BARS); + ENCODE_FIELD( VERSION); + ENCODE_FIELD( tickerId); + + // send contract fields + if( m_serverVersion >= MIN_SERVER_VER_TRADING_CLASS) { + ENCODE_FIELD( contract.conId); + } + ENCODE_FIELD( contract.symbol); + ENCODE_FIELD( contract.secType); + ENCODE_FIELD( contract.lastTradeDateOrContractMonth); + ENCODE_FIELD( contract.strike); + ENCODE_FIELD( contract.right); + ENCODE_FIELD( contract.multiplier); + ENCODE_FIELD( contract.exchange); + ENCODE_FIELD( contract.primaryExchange); + ENCODE_FIELD( contract.currency); + ENCODE_FIELD( contract.localSymbol); + if( m_serverVersion >= MIN_SERVER_VER_TRADING_CLASS) { + ENCODE_FIELD( contract.tradingClass); + } + ENCODE_FIELD( barSize); + ENCODE_FIELD( whatToShow); + ENCODE_FIELD( useRTH); + + // send realTimeBarsOptions parameter + if( m_serverVersion >= MIN_SERVER_VER_LINKING) { + std::string realTimeBarsOptionsStr(""); + const int realTimeBarsOptionsCount = realTimeBarsOptions.get() ? realTimeBarsOptions->size() : 0; + if( realTimeBarsOptionsCount > 0) { + for( int i = 0; i < realTimeBarsOptionsCount; ++i) { + const TagValue* tagValue = ((*realTimeBarsOptions)[i]).get(); + realTimeBarsOptionsStr += tagValue->tag; + realTimeBarsOptionsStr += "="; + realTimeBarsOptionsStr += tagValue->value; + realTimeBarsOptionsStr += ";"; + } + } + ENCODE_FIELD( realTimeBarsOptionsStr); + } + + closeAndSend( msg.str()); +} + + +void EClient::cancelRealTimeBars(TickerId tickerId) +{ + // not connected? + if( !isConnected()) { + m_pEWrapper->error( tickerId, NOT_CONNECTED.code(), NOT_CONNECTED.msg()); + return; + } + + // Not needed anymore validation + //if( m_serverVersion < MIN_SERVER_VER_REAL_TIME_BARS) { + // m_pEWrapper->error( NO_VALID_ID, UPDATE_TWS.code(), UPDATE_TWS.msg() + + // " It does not support realtime bar data query cancellation."); + // return; + //} + + std::stringstream msg; + prepareBuffer( msg); + + const int VERSION = 1; + + ENCODE_FIELD( CANCEL_REAL_TIME_BARS); + ENCODE_FIELD( VERSION); + ENCODE_FIELD( tickerId); + + closeAndSend( msg.str()); +} + + +void EClient::reqScannerParameters() +{ + // not connected? + if( !isConnected()) { + m_pEWrapper->error( NO_VALID_ID, NOT_CONNECTED.code(), NOT_CONNECTED.msg()); + return; + } + + // Not needed anymore validation + //if( m_serverVersion < 24) { + // m_pEWrapper->error( NO_VALID_ID, UPDATE_TWS.code(), UPDATE_TWS.msg() + + // " It does not support API scanner subscription."); + // return; + //} + + std::stringstream msg; + prepareBuffer( msg); + + const int VERSION = 1; + + ENCODE_FIELD( REQ_SCANNER_PARAMETERS); + ENCODE_FIELD( VERSION); + + closeAndSend( msg.str()); +} + + +void EClient::reqScannerSubscription(int tickerId, + const ScannerSubscription& subscription, const TagValueListSPtr& scannerSubscriptionOptions) +{ + // not connected? + if( !isConnected()) { + m_pEWrapper->error( tickerId, NOT_CONNECTED.code(), NOT_CONNECTED.msg()); + return; + } + + // Not needed anymore validation + //if( m_serverVersion < 24) { + // m_pEWrapper->error(NO_VALID_ID, UPDATE_TWS.code(), UPDATE_TWS.msg() + + // " It does not support API scanner subscription."); + // return; + //} + + std::stringstream msg; + prepareBuffer( msg); + + const int VERSION = 4; + + ENCODE_FIELD( REQ_SCANNER_SUBSCRIPTION); + ENCODE_FIELD( VERSION); + ENCODE_FIELD( tickerId); + ENCODE_FIELD_MAX( subscription.numberOfRows); + ENCODE_FIELD( subscription.instrument); + ENCODE_FIELD( subscription.locationCode); + ENCODE_FIELD( subscription.scanCode); + ENCODE_FIELD_MAX( subscription.abovePrice); + ENCODE_FIELD_MAX( subscription.belowPrice); + ENCODE_FIELD_MAX( subscription.aboveVolume); + ENCODE_FIELD_MAX( subscription.marketCapAbove); + ENCODE_FIELD_MAX( subscription.marketCapBelow); + ENCODE_FIELD( subscription.moodyRatingAbove); + ENCODE_FIELD( subscription.moodyRatingBelow); + ENCODE_FIELD( subscription.spRatingAbove); + ENCODE_FIELD( subscription.spRatingBelow); + ENCODE_FIELD( subscription.maturityDateAbove); + ENCODE_FIELD( subscription.maturityDateBelow); + ENCODE_FIELD_MAX( subscription.couponRateAbove); + ENCODE_FIELD_MAX( subscription.couponRateBelow); + ENCODE_FIELD_MAX( subscription.excludeConvertible); + ENCODE_FIELD_MAX( subscription.averageOptionVolumeAbove); // srv v25 and above + ENCODE_FIELD( subscription.scannerSettingPairs); // srv v25 and above + ENCODE_FIELD( subscription.stockTypeFilter); // srv v27 and above + + // send scannerSubscriptionOptions parameter + if( m_serverVersion >= MIN_SERVER_VER_LINKING) { + std::string scannerSubscriptionOptionsStr(""); + const int scannerSubscriptionOptionsCount = scannerSubscriptionOptions.get() ? scannerSubscriptionOptions->size() : 0; + if( scannerSubscriptionOptionsCount > 0) { + for( int i = 0; i < scannerSubscriptionOptionsCount; ++i) { + const TagValue* tagValue = ((*scannerSubscriptionOptions)[i]).get(); + scannerSubscriptionOptionsStr += tagValue->tag; + scannerSubscriptionOptionsStr += "="; + scannerSubscriptionOptionsStr += tagValue->value; + scannerSubscriptionOptionsStr += ";"; + } + } + ENCODE_FIELD( scannerSubscriptionOptionsStr); + } + + closeAndSend( msg.str()); +} + +void EClient::cancelScannerSubscription(int tickerId) +{ + // not connected? + if( !isConnected()) { + m_pEWrapper->error( tickerId, NOT_CONNECTED.code(), NOT_CONNECTED.msg()); + return; + } + + // Not needed anymore validation + //if( m_serverVersion < 24) { + // m_pEWrapper->error(NO_VALID_ID, UPDATE_TWS.code(), UPDATE_TWS.msg() + + // " It does not support API scanner subscription."); + // return; + //} + + std::stringstream msg; + prepareBuffer( msg); + + const int VERSION = 1; + + ENCODE_FIELD( CANCEL_SCANNER_SUBSCRIPTION); + ENCODE_FIELD( VERSION); + ENCODE_FIELD( tickerId); + + closeAndSend( msg.str()); +} + +void EClient::reqFundamentalData(TickerId reqId, const Contract& contract, + const std::string& reportType) +{ + // not connected? + if( !isConnected()) { + m_pEWrapper->error( reqId, NOT_CONNECTED.code(), NOT_CONNECTED.msg()); + return; + } + + if( m_serverVersion < MIN_SERVER_VER_FUNDAMENTAL_DATA) { + m_pEWrapper->error(NO_VALID_ID, UPDATE_TWS.code(), UPDATE_TWS.msg() + + " It does not support fundamental data requests."); + return; + } + + if (m_serverVersion < MIN_SERVER_VER_TRADING_CLASS) { + if( contract.conId > 0) { + m_pEWrapper->error( reqId, UPDATE_TWS.code(), UPDATE_TWS.msg() + + " It does not support conId parameter in reqFundamentalData."); + return; + } + } + + std::stringstream msg; + prepareBuffer( msg); + + const int VERSION = 2; + + ENCODE_FIELD( REQ_FUNDAMENTAL_DATA); + ENCODE_FIELD( VERSION); + ENCODE_FIELD( reqId); + + // send contract fields + if( m_serverVersion >= MIN_SERVER_VER_TRADING_CLASS) { + ENCODE_FIELD( contract.conId); + } + ENCODE_FIELD( contract.symbol); + ENCODE_FIELD( contract.secType); + ENCODE_FIELD( contract.exchange); + ENCODE_FIELD( contract.primaryExchange); + ENCODE_FIELD( contract.currency); + ENCODE_FIELD( contract.localSymbol); + + ENCODE_FIELD( reportType); + + closeAndSend( msg.str()); +} + +void EClient::cancelFundamentalData( TickerId reqId) +{ + // not connected? + if( !isConnected()) { + m_pEWrapper->error( reqId, NOT_CONNECTED.code(), NOT_CONNECTED.msg()); + return; + } + + if( m_serverVersion < MIN_SERVER_VER_FUNDAMENTAL_DATA) { + m_pEWrapper->error(NO_VALID_ID, UPDATE_TWS.code(), UPDATE_TWS.msg() + + " It does not support fundamental data requests."); + return; + } + + std::stringstream msg; + prepareBuffer( msg); + + const int VERSION = 1; + + ENCODE_FIELD( CANCEL_FUNDAMENTAL_DATA); + ENCODE_FIELD( VERSION); + ENCODE_FIELD( reqId); + + closeAndSend( msg.str()); +} + +void EClient::calculateImpliedVolatility(TickerId reqId, const Contract& contract, double optionPrice, double underPrice) { + + // not connected? + if( !isConnected()) { + m_pEWrapper->error( NO_VALID_ID, NOT_CONNECTED.code(), NOT_CONNECTED.msg()); + return; + } + + if (m_serverVersion < MIN_SERVER_VER_REQ_CALC_IMPLIED_VOLAT) { + m_pEWrapper->error( reqId, UPDATE_TWS.code(), UPDATE_TWS.msg() + + " It does not support calculate implied volatility requests."); + return; + } + + if (m_serverVersion < MIN_SERVER_VER_TRADING_CLASS) { + if( !contract.tradingClass.empty()) { + m_pEWrapper->error( reqId, UPDATE_TWS.code(), UPDATE_TWS.msg() + + " It does not support tradingClass parameter in calculateImpliedVolatility."); + return; + } + } + + std::stringstream msg; + prepareBuffer( msg); + + const int VERSION = 2; + + ENCODE_FIELD( REQ_CALC_IMPLIED_VOLAT); + ENCODE_FIELD( VERSION); + ENCODE_FIELD( reqId); + + // send contract fields + ENCODE_FIELD( contract.conId); + ENCODE_FIELD( contract.symbol); + ENCODE_FIELD( contract.secType); + ENCODE_FIELD( contract.lastTradeDateOrContractMonth); + ENCODE_FIELD( contract.strike); + ENCODE_FIELD( contract.right); + ENCODE_FIELD( contract.multiplier); + ENCODE_FIELD( contract.exchange); + ENCODE_FIELD( contract.primaryExchange); + ENCODE_FIELD( contract.currency); + ENCODE_FIELD( contract.localSymbol); + if( m_serverVersion >= MIN_SERVER_VER_TRADING_CLASS) { + ENCODE_FIELD( contract.tradingClass); + } + + ENCODE_FIELD( optionPrice); + ENCODE_FIELD( underPrice); + + closeAndSend( msg.str()); +} + +void EClient::cancelCalculateImpliedVolatility(TickerId reqId) { + + // not connected? + if( !isConnected()) { + m_pEWrapper->error( NO_VALID_ID, NOT_CONNECTED.code(), NOT_CONNECTED.msg()); + return; + } + + if (m_serverVersion < MIN_SERVER_VER_CANCEL_CALC_IMPLIED_VOLAT) { + m_pEWrapper->error( reqId, UPDATE_TWS.code(), UPDATE_TWS.msg() + + " It does not support calculate implied volatility cancellation."); + return; + } + + std::stringstream msg; + prepareBuffer( msg); + + const int VERSION = 1; + + ENCODE_FIELD( CANCEL_CALC_IMPLIED_VOLAT); + ENCODE_FIELD( VERSION); + ENCODE_FIELD( reqId); + + closeAndSend( msg.str()); +} + +void EClient::calculateOptionPrice(TickerId reqId, const Contract& contract, double volatility, double underPrice) { + + // not connected? + if( !isConnected()) { + m_pEWrapper->error( NO_VALID_ID, NOT_CONNECTED.code(), NOT_CONNECTED.msg()); + return; + } + + if (m_serverVersion < MIN_SERVER_VER_REQ_CALC_OPTION_PRICE) { + m_pEWrapper->error( reqId, UPDATE_TWS.code(), UPDATE_TWS.msg() + + " It does not support calculate option price requests."); + return; + } + + if (m_serverVersion < MIN_SERVER_VER_TRADING_CLASS) { + if( !contract.tradingClass.empty()) { + m_pEWrapper->error( reqId, UPDATE_TWS.code(), UPDATE_TWS.msg() + + " It does not support tradingClass parameter in calculateOptionPrice."); + return; + } + } + + std::stringstream msg; + prepareBuffer( msg); + + const int VERSION = 2; + + ENCODE_FIELD( REQ_CALC_OPTION_PRICE); + ENCODE_FIELD( VERSION); + ENCODE_FIELD( reqId); + + // send contract fields + ENCODE_FIELD( contract.conId); + ENCODE_FIELD( contract.symbol); + ENCODE_FIELD( contract.secType); + ENCODE_FIELD( contract.lastTradeDateOrContractMonth); + ENCODE_FIELD( contract.strike); + ENCODE_FIELD( contract.right); + ENCODE_FIELD( contract.multiplier); + ENCODE_FIELD( contract.exchange); + ENCODE_FIELD( contract.primaryExchange); + ENCODE_FIELD( contract.currency); + ENCODE_FIELD( contract.localSymbol); + if( m_serverVersion >= MIN_SERVER_VER_TRADING_CLASS) { + ENCODE_FIELD( contract.tradingClass); + } + + ENCODE_FIELD( volatility); + ENCODE_FIELD( underPrice); + + closeAndSend( msg.str()); +} + +void EClient::cancelCalculateOptionPrice(TickerId reqId) { + + // not connected? + if( !isConnected()) { + m_pEWrapper->error( NO_VALID_ID, NOT_CONNECTED.code(), NOT_CONNECTED.msg()); + return; + } + + if (m_serverVersion < MIN_SERVER_VER_CANCEL_CALC_OPTION_PRICE) { + m_pEWrapper->error( reqId, UPDATE_TWS.code(), UPDATE_TWS.msg() + + " It does not support calculate option price cancellation."); + return; + } + + std::stringstream msg; + prepareBuffer( msg); + + const int VERSION = 1; + + ENCODE_FIELD( CANCEL_CALC_OPTION_PRICE); + ENCODE_FIELD( VERSION); + ENCODE_FIELD( reqId); + + closeAndSend( msg.str()); +} + +void EClient::reqContractDetails( int reqId, const Contract& contract) +{ + // not connected? + if( !isConnected()) { + m_pEWrapper->error( NO_VALID_ID, NOT_CONNECTED.code(), NOT_CONNECTED.msg()); + return; + } + + // Not needed anymore validation + // This feature is only available for versions of TWS >=4 + //if( m_serverVersion < 4) { + // m_pEWrapper->error( NO_VALID_ID, UPDATE_TWS.code(), UPDATE_TWS.msg()); + // return; + //} + if (m_serverVersion < MIN_SERVER_VER_SEC_ID_TYPE) { + if( !contract.secIdType.empty() || !contract.secId.empty()) { + m_pEWrapper->error( reqId, UPDATE_TWS.code(), UPDATE_TWS.msg() + + " It does not support secIdType and secId parameters."); + return; + } + } + if (m_serverVersion < MIN_SERVER_VER_TRADING_CLASS) { + if( !contract.tradingClass.empty()) { + m_pEWrapper->error( reqId, UPDATE_TWS.code(), UPDATE_TWS.msg() + + " It does not support tradingClass parameter in reqContractDetails."); + return; + } + } + if (m_serverVersion < MIN_SERVER_VER_LINKING) { + if (!contract.primaryExchange.empty()) { + m_pEWrapper->error( reqId, UPDATE_TWS.code(), UPDATE_TWS.msg() + + " It does not support primaryExchange parameter in reqContractDetails."); + return; + } + } + + std::stringstream msg; + prepareBuffer( msg); + + const int VERSION = 8; + + // send req mkt data msg + ENCODE_FIELD( REQ_CONTRACT_DATA); + ENCODE_FIELD( VERSION); + + if( m_serverVersion >= MIN_SERVER_VER_CONTRACT_DATA_CHAIN) { + ENCODE_FIELD( reqId); + } + + // send contract fields + ENCODE_FIELD( contract.conId); // srv v37 and above + ENCODE_FIELD( contract.symbol); + ENCODE_FIELD( contract.secType); + ENCODE_FIELD( contract.lastTradeDateOrContractMonth); + ENCODE_FIELD( contract.strike); + ENCODE_FIELD( contract.right); + ENCODE_FIELD( contract.multiplier); // srv v15 and above + + if (m_serverVersion >= MIN_SERVER_VER_PRIMARYEXCH) + { + ENCODE_FIELD(contract.exchange); + ENCODE_FIELD(contract.primaryExchange); + } + else if (m_serverVersion >= MIN_SERVER_VER_LINKING) + { + if (!contract.primaryExchange.empty() && (contract.exchange == "BEST" || contract.exchange == "SMART")) + { + ENCODE_FIELD( contract.exchange + ":" + contract.primaryExchange); + } + else + { + ENCODE_FIELD(contract.exchange); + } + } + + ENCODE_FIELD( contract.currency); + ENCODE_FIELD( contract.localSymbol); + if( m_serverVersion >= MIN_SERVER_VER_TRADING_CLASS) { + ENCODE_FIELD( contract.tradingClass); + } + ENCODE_FIELD( contract.includeExpired); // srv v31 and above + + if( m_serverVersion >= MIN_SERVER_VER_SEC_ID_TYPE){ + ENCODE_FIELD( contract.secIdType); + ENCODE_FIELD( contract.secId); + } + + closeAndSend( msg.str()); +} + +void EClient::reqCurrentTime() +{ + // not connected? + if( !isConnected()) { + m_pEWrapper->error( NO_VALID_ID, NOT_CONNECTED.code(), NOT_CONNECTED.msg()); + return; + } + + // Not needed anymore validation + // This feature is only available for versions of TWS >= 33 + //if( m_serverVersion < 33) { + // m_pEWrapper->error(NO_VALID_ID, UPDATE_TWS.code(), UPDATE_TWS.msg() + + // " It does not support current time requests."); + // return; + //} + + std::stringstream msg; + prepareBuffer( msg); + + const int VERSION = 1; + + // send current time req + ENCODE_FIELD( REQ_CURRENT_TIME); + ENCODE_FIELD( VERSION); + + closeAndSend( msg.str()); +} + +void EClient::placeOrder( OrderId id, const Contract& contract, const Order& order) +{ + // not connected? + if( !isConnected()) { + m_pEWrapper->error( id, NOT_CONNECTED.code(), NOT_CONNECTED.msg()); + return; + } + + // Not needed anymore validation + //if( m_serverVersion < MIN_SERVER_VER_SCALE_ORDERS) { + // if( order.scaleNumComponents != UNSET_INTEGER || + // order.scaleComponentSize != UNSET_INTEGER || + // order.scalePriceIncrement != UNSET_DOUBLE) { + // m_pEWrapper->error( id, UPDATE_TWS.code(), UPDATE_TWS.msg() + + // " It does not support Scale orders."); + // return; + // } + //} + // + //if( m_serverVersion < MIN_SERVER_VER_SSHORT_COMBO_LEGS) { + // if( contract.comboLegs && !contract.comboLegs->empty()) { + // typedef Contract::ComboLegList ComboLegList; + // const ComboLegList& comboLegs = *contract.comboLegs; + // ComboLegList::const_iterator iter = comboLegs.begin(); + // const ComboLegList::const_iterator iterEnd = comboLegs.end(); + // for( ; iter != iterEnd; ++iter) { + // const ComboLeg* comboLeg = *iter; + // assert( comboLeg); + // if( comboLeg->shortSaleSlot != 0 || + // !comboLeg->designatedLocation.IsEmpty()) { + // m_pEWrapper->error( id, UPDATE_TWS.code(), UPDATE_TWS.msg() + + // " It does not support SSHORT flag for combo legs."); + // return; + // } + // } + // } + //} + // + //if( m_serverVersion < MIN_SERVER_VER_WHAT_IF_ORDERS) { + // if( order.whatIf) { + // m_pEWrapper->error( id, UPDATE_TWS.code(), UPDATE_TWS.msg() + + // " It does not support what-if orders."); + // return; + // } + //} + + if( m_serverVersion < MIN_SERVER_VER_UNDER_COMP) { + if( contract.underComp) { + m_pEWrapper->error( id, UPDATE_TWS.code(), UPDATE_TWS.msg() + + " It does not support delta-neutral orders."); + return; + } + } + + if( m_serverVersion < MIN_SERVER_VER_SCALE_ORDERS2) { + if( order.scaleSubsLevelSize != UNSET_INTEGER) { + m_pEWrapper->error( id, UPDATE_TWS.code(), UPDATE_TWS.msg() + + " It does not support Subsequent Level Size for Scale orders."); + return; + } + } + + if( m_serverVersion < MIN_SERVER_VER_ALGO_ORDERS) { + + if( !order.algoStrategy.empty()) { + m_pEWrapper->error( id, UPDATE_TWS.code(), UPDATE_TWS.msg() + + " It does not support algo orders."); + return; + } + } + + if( m_serverVersion < MIN_SERVER_VER_NOT_HELD) { + if (order.notHeld) { + m_pEWrapper->error( id, UPDATE_TWS.code(), UPDATE_TWS.msg() + + " It does not support notHeld parameter."); + return; + } + } + + if (m_serverVersion < MIN_SERVER_VER_SEC_ID_TYPE) { + if( !contract.secIdType.empty() || !contract.secId.empty()) { + m_pEWrapper->error( id, UPDATE_TWS.code(), UPDATE_TWS.msg() + + " It does not support secIdType and secId parameters."); + return; + } + } + + if (m_serverVersion < MIN_SERVER_VER_PLACE_ORDER_CONID) { + if( contract.conId > 0) { + m_pEWrapper->error( id, UPDATE_TWS.code(), UPDATE_TWS.msg() + + " It does not support conId parameter."); + return; + } + } + + if (m_serverVersion < MIN_SERVER_VER_SSHORTX) { + if( order.exemptCode != -1) { + m_pEWrapper->error( id, UPDATE_TWS.code(), UPDATE_TWS.msg() + + " It does not support exemptCode parameter."); + return; + } + } + + if (m_serverVersion < MIN_SERVER_VER_SSHORTX) { + const Contract::ComboLegList* const comboLegs = contract.comboLegs.get(); + const int comboLegsCount = comboLegs ? comboLegs->size() : 0; + for( int i = 0; i < comboLegsCount; ++i) { + const ComboLeg* comboLeg = ((*comboLegs)[i]).get(); + assert( comboLeg); + if( comboLeg->exemptCode != -1 ){ + m_pEWrapper->error( id, UPDATE_TWS.code(), UPDATE_TWS.msg() + + " It does not support exemptCode parameter."); + return; + } + } + } + + if( m_serverVersion < MIN_SERVER_VER_HEDGE_ORDERS) { + if( !order.hedgeType.empty()) { + m_pEWrapper->error( id, UPDATE_TWS.code(), UPDATE_TWS.msg() + + " It does not support hedge orders."); + return; + } + } + + if( m_serverVersion < MIN_SERVER_VER_OPT_OUT_SMART_ROUTING) { + if (order.optOutSmartRouting) { + m_pEWrapper->error( id, UPDATE_TWS.code(), UPDATE_TWS.msg() + + " It does not support optOutSmartRouting parameter."); + return; + } + } + + if (m_serverVersion < MIN_SERVER_VER_DELTA_NEUTRAL_CONID) { + if (order.deltaNeutralConId > 0 + || !order.deltaNeutralSettlingFirm.empty() + || !order.deltaNeutralClearingAccount.empty() + || !order.deltaNeutralClearingIntent.empty() + ) { + m_pEWrapper->error( id, UPDATE_TWS.code(), UPDATE_TWS.msg() + + " It does not support deltaNeutral parameters: ConId, SettlingFirm, ClearingAccount, ClearingIntent."); + return; + } + } + + if (m_serverVersion < MIN_SERVER_VER_DELTA_NEUTRAL_OPEN_CLOSE) { + if (!order.deltaNeutralOpenClose.empty() + || order.deltaNeutralShortSale + || order.deltaNeutralShortSaleSlot > 0 + || !order.deltaNeutralDesignatedLocation.empty() + ) { + m_pEWrapper->error( id, UPDATE_TWS.code(), UPDATE_TWS.msg() + + " It does not support deltaNeutral parameters: OpenClose, ShortSale, ShortSaleSlot, DesignatedLocation."); + return; + } + } + + if (m_serverVersion < MIN_SERVER_VER_SCALE_ORDERS3) { + if (order.scalePriceIncrement > 0 && order.scalePriceIncrement != UNSET_DOUBLE) { + if (order.scalePriceAdjustValue != UNSET_DOUBLE + || order.scalePriceAdjustInterval != UNSET_INTEGER + || order.scaleProfitOffset != UNSET_DOUBLE + || order.scaleAutoReset + || order.scaleInitPosition != UNSET_INTEGER + || order.scaleInitFillQty != UNSET_INTEGER + || order.scaleRandomPercent) { + m_pEWrapper->error( id, UPDATE_TWS.code(), UPDATE_TWS.msg() + + " It does not support Scale order parameters: PriceAdjustValue, PriceAdjustInterval, " + + "ProfitOffset, AutoReset, InitPosition, InitFillQty and RandomPercent"); + return; + } + } + } + + if (m_serverVersion < MIN_SERVER_VER_ORDER_COMBO_LEGS_PRICE && contract.secType == "BAG") { + const Order::OrderComboLegList* const orderComboLegs = order.orderComboLegs.get(); + const int orderComboLegsCount = orderComboLegs ? orderComboLegs->size() : 0; + for( int i = 0; i < orderComboLegsCount; ++i) { + const OrderComboLeg* orderComboLeg = ((*orderComboLegs)[i]).get(); + assert( orderComboLeg); + if( orderComboLeg->price != UNSET_DOUBLE) { + m_pEWrapper->error( id, UPDATE_TWS.code(), UPDATE_TWS.msg() + + " It does not support per-leg prices for order combo legs."); + return; + } + } + } + + if (m_serverVersion < MIN_SERVER_VER_TRAILING_PERCENT) { + if (order.trailingPercent != UNSET_DOUBLE) { + m_pEWrapper->error( id, UPDATE_TWS.code(), UPDATE_TWS.msg() + + " It does not support trailing percent parameter"); + return; + } + } + + if (m_serverVersion < MIN_SERVER_VER_TRADING_CLASS) { + if( !contract.tradingClass.empty()) { + m_pEWrapper->error( id, UPDATE_TWS.code(), UPDATE_TWS.msg() + + " It does not support tradingClass parameter in placeOrder."); + return; + } + } + + if (m_serverVersion < MIN_SERVER_VER_SCALE_TABLE) { + if( !order.scaleTable.empty() || !order.activeStartTime.empty() || !order.activeStopTime.empty()) { + m_pEWrapper->error( id, UPDATE_TWS.code(), UPDATE_TWS.msg() + + " It does not support scaleTable, activeStartTime and activeStopTime parameters"); + return; + } + } + + if (m_serverVersion < MIN_SERVER_VER_ALGO_ID) { + if( !order.algoId.empty()) { + m_pEWrapper->error( id, UPDATE_TWS.code(), UPDATE_TWS.msg() + + " It does not support algoId parameter"); + return; + } + } + + if (m_serverVersion < MIN_SERVER_VER_ORDER_SOLICITED) { + if (order.solicited) { + m_pEWrapper->error(id, UPDATE_TWS.code(), UPDATE_TWS.msg() + + " It does not support order solicited parameter."); + return; + } + } + + if (m_serverVersion < MIN_SERVER_VER_MODELS_SUPPORT) { + if( !order.modelCode.empty()) { + m_pEWrapper->error( id, UPDATE_TWS.code(), UPDATE_TWS.msg() + + " It does not support model code parameter."); + return; + } + } + + if (m_serverVersion < MIN_SERVER_VER_EXT_OPERATOR) { + if( !order.extOperator.empty()) { + m_pEWrapper->error( id, UPDATE_TWS.code(), UPDATE_TWS.msg() + + " It does not support ext operator parameter"); + return; + } + } + + if (m_serverVersion < MIN_SERVER_VER_SOFT_DOLLAR_TIER) + { + if (!order.softDollarTier.name().empty() || !order.softDollarTier.val().empty()) + { + m_pEWrapper->error( id, UPDATE_TWS.code(), UPDATE_TWS.msg() + + " It does not support soft dollar tier"); + return; + } + } + + + std::stringstream msg; + prepareBuffer( msg); + + int VERSION = (m_serverVersion < MIN_SERVER_VER_NOT_HELD) ? 27 : 45; + + // send place order msg + ENCODE_FIELD( PLACE_ORDER); + ENCODE_FIELD( VERSION); + ENCODE_FIELD( id); + + // send contract fields + if( m_serverVersion >= MIN_SERVER_VER_PLACE_ORDER_CONID) { + ENCODE_FIELD( contract.conId); + } + ENCODE_FIELD( contract.symbol); + ENCODE_FIELD( contract.secType); + ENCODE_FIELD( contract.lastTradeDateOrContractMonth); + ENCODE_FIELD( contract.strike); + ENCODE_FIELD( contract.right); + ENCODE_FIELD( contract.multiplier); // srv v15 and above + ENCODE_FIELD( contract.exchange); + ENCODE_FIELD( contract.primaryExchange); // srv v14 and above + ENCODE_FIELD( contract.currency); + ENCODE_FIELD( contract.localSymbol); // srv v2 and above + if( m_serverVersion >= MIN_SERVER_VER_TRADING_CLASS) { + ENCODE_FIELD( contract.tradingClass); + } + + if( m_serverVersion >= MIN_SERVER_VER_SEC_ID_TYPE){ + ENCODE_FIELD( contract.secIdType); + ENCODE_FIELD( contract.secId); + } + + // send main order fields + ENCODE_FIELD( order.action); + + if (m_serverVersion >= MIN_SERVER_VER_FRACTIONAL_POSITIONS) + ENCODE_FIELD(order.totalQuantity) + else + ENCODE_FIELD((long)order.totalQuantity) + + ENCODE_FIELD( order.orderType); + if( m_serverVersion < MIN_SERVER_VER_ORDER_COMBO_LEGS_PRICE) { + ENCODE_FIELD( order.lmtPrice == UNSET_DOUBLE ? 0 : order.lmtPrice); + } + else { + ENCODE_FIELD_MAX( order.lmtPrice); + } + if( m_serverVersion < MIN_SERVER_VER_TRAILING_PERCENT) { + ENCODE_FIELD( order.auxPrice == UNSET_DOUBLE ? 0 : order.auxPrice); + } + else { + ENCODE_FIELD_MAX( order.auxPrice); + } + + // send extended order fields + ENCODE_FIELD( order.tif); + ENCODE_FIELD( order.ocaGroup); + ENCODE_FIELD( order.account); + ENCODE_FIELD( order.openClose); + ENCODE_FIELD( order.origin); + ENCODE_FIELD( order.orderRef); + ENCODE_FIELD( order.transmit); + ENCODE_FIELD( order.parentId); // srv v4 and above + + ENCODE_FIELD( order.blockOrder); // srv v5 and above + ENCODE_FIELD( order.sweepToFill); // srv v5 and above + ENCODE_FIELD( order.displaySize); // srv v5 and above + ENCODE_FIELD( order.triggerMethod); // srv v5 and above + + //if( m_serverVersion < 38) { + // will never happen + // ENCODE_FIELD(/* order.ignoreRth */ false); + //} + //else { + ENCODE_FIELD( order.outsideRth); // srv v5 and above + //} + + ENCODE_FIELD( order.hidden); // srv v7 and above + + // Send combo legs for BAG requests (srv v8 and above) + if( contract.secType == "BAG") + { + const Contract::ComboLegList* const comboLegs = contract.comboLegs.get(); + const int comboLegsCount = comboLegs ? comboLegs->size() : 0; + ENCODE_FIELD( comboLegsCount); + if( comboLegsCount > 0) { + for( int i = 0; i < comboLegsCount; ++i) { + const ComboLeg* comboLeg = ((*comboLegs)[i]).get(); + assert( comboLeg); + ENCODE_FIELD( comboLeg->conId); + ENCODE_FIELD( comboLeg->ratio); + ENCODE_FIELD( comboLeg->action); + ENCODE_FIELD( comboLeg->exchange); + ENCODE_FIELD( comboLeg->openClose); + + ENCODE_FIELD( comboLeg->shortSaleSlot); // srv v35 and above + ENCODE_FIELD( comboLeg->designatedLocation); // srv v35 and above + if (m_serverVersion >= MIN_SERVER_VER_SSHORTX_OLD) { + ENCODE_FIELD( comboLeg->exemptCode); + } + } + } + } + + // Send order combo legs for BAG requests + if( m_serverVersion >= MIN_SERVER_VER_ORDER_COMBO_LEGS_PRICE && contract.secType == "BAG") + { + const Order::OrderComboLegList* const orderComboLegs = order.orderComboLegs.get(); + const int orderComboLegsCount = orderComboLegs ? orderComboLegs->size() : 0; + ENCODE_FIELD( orderComboLegsCount); + if( orderComboLegsCount > 0) { + for( int i = 0; i < orderComboLegsCount; ++i) { + const OrderComboLeg* orderComboLeg = ((*orderComboLegs)[i]).get(); + assert( orderComboLeg); + ENCODE_FIELD_MAX( orderComboLeg->price); + } + } + } + + if( m_serverVersion >= MIN_SERVER_VER_SMART_COMBO_ROUTING_PARAMS && contract.secType == "BAG") { + const TagValueList* const smartComboRoutingParams = order.smartComboRoutingParams.get(); + const int smartComboRoutingParamsCount = smartComboRoutingParams ? smartComboRoutingParams->size() : 0; + ENCODE_FIELD( smartComboRoutingParamsCount); + if( smartComboRoutingParamsCount > 0) { + for( int i = 0; i < smartComboRoutingParamsCount; ++i) { + const TagValue* tagValue = ((*smartComboRoutingParams)[i]).get(); + ENCODE_FIELD( tagValue->tag); + ENCODE_FIELD( tagValue->value); + } + } + } + + ///////////////////////////////////////////////////////////////////////////// + // Send the shares allocation. + // + // This specifies the number of order shares allocated to each Financial + // Advisor managed account. The format of the allocation string is as + // follows: + // /,/,...N + // E.g. + // To allocate 20 shares of a 100 share order to account 'U101' and the + // residual 80 to account 'U203' enter the following share allocation string: + // U101/20,U203/80 + ///////////////////////////////////////////////////////////////////////////// + { + // send deprecated sharesAllocation field + ENCODE_FIELD( ""); // srv v9 and above + } + + ENCODE_FIELD( order.discretionaryAmt); // srv v10 and above + ENCODE_FIELD( order.goodAfterTime); // srv v11 and above + ENCODE_FIELD( order.goodTillDate); // srv v12 and above + + ENCODE_FIELD( order.faGroup); // srv v13 and above + ENCODE_FIELD( order.faMethod); // srv v13 and above + ENCODE_FIELD( order.faPercentage); // srv v13 and above + ENCODE_FIELD( order.faProfile); // srv v13 and above + + if (m_serverVersion >= MIN_SERVER_VER_MODELS_SUPPORT) { + ENCODE_FIELD( order.modelCode); + } + + // institutional short saleslot data (srv v18 and above) + ENCODE_FIELD( order.shortSaleSlot); // 0 for retail, 1 or 2 for institutions + ENCODE_FIELD( order.designatedLocation); // populate only when shortSaleSlot = 2. + if (m_serverVersion >= MIN_SERVER_VER_SSHORTX_OLD) { + ENCODE_FIELD( order.exemptCode); + } + + // not needed anymore + //bool isVolOrder = (order.orderType.CompareNoCase("VOL") == 0); + + // srv v19 and above fields + ENCODE_FIELD( order.ocaType); + //if( m_serverVersion < 38) { + // will never happen + // send( /* order.rthOnly */ false); + //} + ENCODE_FIELD( order.rule80A); + ENCODE_FIELD( order.settlingFirm); + ENCODE_FIELD( order.allOrNone); + ENCODE_FIELD_MAX( order.minQty); + ENCODE_FIELD_MAX( order.percentOffset); + ENCODE_FIELD( order.eTradeOnly); + ENCODE_FIELD( order.firmQuoteOnly); + ENCODE_FIELD_MAX( order.nbboPriceCap); + ENCODE_FIELD( order.auctionStrategy); // AUCTION_MATCH, AUCTION_IMPROVEMENT, AUCTION_TRANSPARENT + ENCODE_FIELD_MAX( order.startingPrice); + ENCODE_FIELD_MAX( order.stockRefPrice); + ENCODE_FIELD_MAX( order.delta); + // Volatility orders had specific watermark price attribs in server version 26 + //double lower = (m_serverVersion == 26 && isVolOrder) ? DBL_MAX : order.stockRangeLower; + //double upper = (m_serverVersion == 26 && isVolOrder) ? DBL_MAX : order.stockRangeUpper; + ENCODE_FIELD_MAX( order.stockRangeLower); + ENCODE_FIELD_MAX( order.stockRangeUpper); + + ENCODE_FIELD( order.overridePercentageConstraints); // srv v22 and above + + // Volatility orders (srv v26 and above) + ENCODE_FIELD_MAX( order.volatility); + ENCODE_FIELD_MAX( order.volatilityType); + // will never happen + //if( m_serverVersion < 28) { + // send( order.deltaNeutralOrderType.CompareNoCase("MKT") == 0); + //} + //else { + ENCODE_FIELD( order.deltaNeutralOrderType); // srv v28 and above + ENCODE_FIELD_MAX( order.deltaNeutralAuxPrice); // srv v28 and above + + if (m_serverVersion >= MIN_SERVER_VER_DELTA_NEUTRAL_CONID && !order.deltaNeutralOrderType.empty()){ + ENCODE_FIELD( order.deltaNeutralConId); + ENCODE_FIELD( order.deltaNeutralSettlingFirm); + ENCODE_FIELD( order.deltaNeutralClearingAccount); + ENCODE_FIELD( order.deltaNeutralClearingIntent); + } + + if (m_serverVersion >= MIN_SERVER_VER_DELTA_NEUTRAL_OPEN_CLOSE && !order.deltaNeutralOrderType.empty()){ + ENCODE_FIELD( order.deltaNeutralOpenClose); + ENCODE_FIELD( order.deltaNeutralShortSale); + ENCODE_FIELD( order.deltaNeutralShortSaleSlot); + ENCODE_FIELD( order.deltaNeutralDesignatedLocation); + } + + //} + ENCODE_FIELD( order.continuousUpdate); + //if( m_serverVersion == 26) { + // // Volatility orders had specific watermark price attribs in server version 26 + // double lower = (isVolOrder ? order.stockRangeLower : DBL_MAX); + // double upper = (isVolOrder ? order.stockRangeUpper : DBL_MAX); + // ENCODE_FIELD_MAX( lower); + // ENCODE_FIELD_MAX( upper); + //} + ENCODE_FIELD_MAX( order.referencePriceType); + + ENCODE_FIELD_MAX( order.trailStopPrice); // srv v30 and above + + if( m_serverVersion >= MIN_SERVER_VER_TRAILING_PERCENT) { + ENCODE_FIELD_MAX( order.trailingPercent); + } + + // SCALE orders + if( m_serverVersion >= MIN_SERVER_VER_SCALE_ORDERS2) { + ENCODE_FIELD_MAX( order.scaleInitLevelSize); + ENCODE_FIELD_MAX( order.scaleSubsLevelSize); + } + else { + // srv v35 and above) + ENCODE_FIELD( ""); // for not supported scaleNumComponents + ENCODE_FIELD_MAX( order.scaleInitLevelSize); // for scaleComponentSize + } + + ENCODE_FIELD_MAX( order.scalePriceIncrement); + + if( m_serverVersion >= MIN_SERVER_VER_SCALE_ORDERS3 + && order.scalePriceIncrement > 0.0 && order.scalePriceIncrement != UNSET_DOUBLE) { + ENCODE_FIELD_MAX( order.scalePriceAdjustValue); + ENCODE_FIELD_MAX( order.scalePriceAdjustInterval); + ENCODE_FIELD_MAX( order.scaleProfitOffset); + ENCODE_FIELD( order.scaleAutoReset); + ENCODE_FIELD_MAX( order.scaleInitPosition); + ENCODE_FIELD_MAX( order.scaleInitFillQty); + ENCODE_FIELD( order.scaleRandomPercent); + } + + if( m_serverVersion >= MIN_SERVER_VER_SCALE_TABLE) { + ENCODE_FIELD( order.scaleTable); + ENCODE_FIELD( order.activeStartTime); + ENCODE_FIELD( order.activeStopTime); + } + + // HEDGE orders + if( m_serverVersion >= MIN_SERVER_VER_HEDGE_ORDERS) { + ENCODE_FIELD( order.hedgeType); + if ( !order.hedgeType.empty()) { + ENCODE_FIELD( order.hedgeParam); + } + } + + if( m_serverVersion >= MIN_SERVER_VER_OPT_OUT_SMART_ROUTING){ + ENCODE_FIELD( order.optOutSmartRouting); + } + + if( m_serverVersion >= MIN_SERVER_VER_PTA_ORDERS) { + ENCODE_FIELD( order.clearingAccount); + ENCODE_FIELD( order.clearingIntent); + } + + if( m_serverVersion >= MIN_SERVER_VER_NOT_HELD){ + ENCODE_FIELD( order.notHeld); + } + + if( m_serverVersion >= MIN_SERVER_VER_UNDER_COMP) { + if( contract.underComp) { + const UnderComp& underComp = *contract.underComp; + ENCODE_FIELD( true); + ENCODE_FIELD( underComp.conId); + ENCODE_FIELD( underComp.delta); + ENCODE_FIELD( underComp.price); + } + else { + ENCODE_FIELD( false); + } + } + + if( m_serverVersion >= MIN_SERVER_VER_ALGO_ORDERS) { + ENCODE_FIELD( order.algoStrategy); + + if( !order.algoStrategy.empty()) { + const TagValueList* const algoParams = order.algoParams.get(); + const int algoParamsCount = algoParams ? algoParams->size() : 0; + ENCODE_FIELD( algoParamsCount); + if( algoParamsCount > 0) { + for( int i = 0; i < algoParamsCount; ++i) { + const TagValue* tagValue = ((*algoParams)[i]).get(); + ENCODE_FIELD( tagValue->tag); + ENCODE_FIELD( tagValue->value); + } + } + } + + } + + if( m_serverVersion >= MIN_SERVER_VER_ALGO_ID) { + ENCODE_FIELD( order.algoId); + } + + ENCODE_FIELD( order.whatIf); // srv v36 and above + + // send miscOptions parameter + if( m_serverVersion >= MIN_SERVER_VER_LINKING) { + std::string miscOptionsStr(""); + const TagValueList* const orderMiscOptions = order.orderMiscOptions.get(); + const int orderMiscOptionsCount = orderMiscOptions ? orderMiscOptions->size() : 0; + if( orderMiscOptionsCount > 0) { + for( int i = 0; i < orderMiscOptionsCount; ++i) { + const TagValue* tagValue = ((*orderMiscOptions)[i]).get(); + miscOptionsStr += tagValue->tag; + miscOptionsStr += "="; + miscOptionsStr += tagValue->value; + miscOptionsStr += ";"; + } + } + ENCODE_FIELD( miscOptionsStr); + } + + if (m_serverVersion >= MIN_SERVER_VER_ORDER_SOLICITED) { + ENCODE_FIELD(order.solicited); + } + + if (m_serverVersion >= MIN_SERVER_VER_RANDOMIZE_SIZE_AND_PRICE) { + ENCODE_FIELD(order.randomizeSize); + ENCODE_FIELD(order.randomizePrice); + } + + if (m_serverVersion >= MIN_SERVER_VER_PEGGED_TO_BENCHMARK) { + if (order.orderType == "PEG BENCH") { + ENCODE_FIELD(order.referenceContractId); + ENCODE_FIELD(order.isPeggedChangeAmountDecrease); + ENCODE_FIELD(order.peggedChangeAmount); + ENCODE_FIELD(order.referenceChangeAmount); + ENCODE_FIELD(order.referenceExchangeId); + } + + ENCODE_FIELD(order.conditions.size()); + + if (order.conditions.size() > 0) { + for (ibapi::shared_ptr item : order.conditions) { + ENCODE_FIELD(item->type()); + item->writeExternal(msg); + } + + ENCODE_FIELD(order.conditionsIgnoreRth); + ENCODE_FIELD(order.conditionsCancelOrder); + } + + ENCODE_FIELD(order.adjustedOrderType); + ENCODE_FIELD(order.triggerPrice); + ENCODE_FIELD(order.lmtPriceOffset); + ENCODE_FIELD(order.adjustedStopPrice); + ENCODE_FIELD(order.adjustedStopLimitPrice); + ENCODE_FIELD(order.adjustedTrailingAmount); + ENCODE_FIELD(order.adjustableTrailingUnit); + } + + if( m_serverVersion >= MIN_SERVER_VER_EXT_OPERATOR) { + ENCODE_FIELD( order.extOperator); + } + + if (m_serverVersion >= MIN_SERVER_VER_SOFT_DOLLAR_TIER) { + ENCODE_FIELD(order.softDollarTier.name()); + ENCODE_FIELD(order.softDollarTier.val()); + } + + closeAndSend( msg.str()); +} + +void EClient::cancelOrder( OrderId id) +{ + // not connected? + if( !isConnected()) { + m_pEWrapper->error( id, NOT_CONNECTED.code(), NOT_CONNECTED.msg()); + return; + } + + const int VERSION = 1; + + // send cancel order msg + std::stringstream msg; + prepareBuffer( msg); + + ENCODE_FIELD( CANCEL_ORDER); + ENCODE_FIELD( VERSION); + ENCODE_FIELD( id); + + closeAndSend( msg.str()); +} + +void EClient::reqAccountUpdates(bool subscribe, const std::string& acctCode) +{ + // not connected? + if( !isConnected()) { + m_pEWrapper->error( NO_VALID_ID, NOT_CONNECTED.code(), NOT_CONNECTED.msg()); + return; + } + + std::stringstream msg; + prepareBuffer( msg); + + const int VERSION = 2; + + // send req acct msg + ENCODE_FIELD( REQ_ACCT_DATA); + ENCODE_FIELD( VERSION); + ENCODE_FIELD( subscribe); // TRUE = subscribe, FALSE = unsubscribe. + + // Send the account code. This will only be used for FA clients + ENCODE_FIELD( acctCode); // srv v9 and above + + closeAndSend( msg.str()); +} + +void EClient::reqOpenOrders() +{ + // not connected? + if( !isConnected()) { + m_pEWrapper->error( NO_VALID_ID, NOT_CONNECTED.code(), NOT_CONNECTED.msg()); + return; + } + + std::stringstream msg; + prepareBuffer( msg); + + const int VERSION = 1; + + // send req open orders msg + ENCODE_FIELD( REQ_OPEN_ORDERS); + ENCODE_FIELD( VERSION); + + closeAndSend( msg.str()); +} + +void EClient::reqAutoOpenOrders(bool bAutoBind) +{ + // not connected? + if( !isConnected()) { + m_pEWrapper->error( NO_VALID_ID, NOT_CONNECTED.code(), NOT_CONNECTED.msg()); + return; + } + + std::stringstream msg; + prepareBuffer( msg); + + const int VERSION = 1; + + // send req open orders msg + ENCODE_FIELD( REQ_AUTO_OPEN_ORDERS); + ENCODE_FIELD( VERSION); + ENCODE_FIELD( bAutoBind); + + closeAndSend( msg.str()); +} + +void EClient::reqAllOpenOrders() +{ + // not connected? + if( !isConnected()) { + m_pEWrapper->error( NO_VALID_ID, NOT_CONNECTED.code(), NOT_CONNECTED.msg()); + return; + } + + std::stringstream msg; + prepareBuffer( msg); + + const int VERSION = 1; + + // send req open orders msg + ENCODE_FIELD( REQ_ALL_OPEN_ORDERS); + ENCODE_FIELD( VERSION); + + closeAndSend( msg.str()); +} + +void EClient::reqExecutions(int reqId, const ExecutionFilter& filter) +{ + //NOTE: Time format must be 'yyyymmdd-hh:mm:ss' E.g. '20030702-14:55' + + // not connected? + if( !isConnected()) { + m_pEWrapper->error( NO_VALID_ID, NOT_CONNECTED.code(), NOT_CONNECTED.msg()); + return; + } + + std::stringstream msg; + prepareBuffer( msg); + + const int VERSION = 3; + + // send req open orders msg + ENCODE_FIELD( REQ_EXECUTIONS); + ENCODE_FIELD( VERSION); + + if( m_serverVersion >= MIN_SERVER_VER_EXECUTION_DATA_CHAIN) { + ENCODE_FIELD( reqId); + } + + // Send the execution rpt filter data (srv v9 and above) + ENCODE_FIELD( filter.m_clientId); + ENCODE_FIELD( filter.m_acctCode); + ENCODE_FIELD( filter.m_time); + ENCODE_FIELD( filter.m_symbol); + ENCODE_FIELD( filter.m_secType); + ENCODE_FIELD( filter.m_exchange); + ENCODE_FIELD( filter.m_side); + + closeAndSend( msg.str()); +} + +void EClient::reqIds( int numIds) +{ + // not connected? + if( !isConnected()) { + m_pEWrapper->error( numIds, NOT_CONNECTED.code(), NOT_CONNECTED.msg()); + return; + } + + std::stringstream msg; + prepareBuffer( msg); + + const int VERSION = 1; + + // send req open orders msg + ENCODE_FIELD( REQ_IDS); + ENCODE_FIELD( VERSION); + ENCODE_FIELD( numIds); + + closeAndSend( msg.str()); +} + +void EClient::reqNewsBulletins(bool allMsgs) +{ + // not connected? + if( !isConnected()) { + m_pEWrapper->error( NO_VALID_ID, NOT_CONNECTED.code(), NOT_CONNECTED.msg()); + return; + } + + std::stringstream msg; + prepareBuffer( msg); + + const int VERSION = 1; + + // send req news bulletins msg + ENCODE_FIELD( REQ_NEWS_BULLETINS); + ENCODE_FIELD( VERSION); + ENCODE_FIELD( allMsgs); + + closeAndSend( msg.str()); +} + +void EClient::cancelNewsBulletins() +{ + // not connected? + if( !isConnected()) { + m_pEWrapper->error( NO_VALID_ID, NOT_CONNECTED.code(), NOT_CONNECTED.msg()); + return; + } + + std::stringstream msg; + prepareBuffer( msg); + + const int VERSION = 1; + + // send req news bulletins msg + ENCODE_FIELD( CANCEL_NEWS_BULLETINS); + ENCODE_FIELD( VERSION); + + closeAndSend( msg.str()); +} + +void EClient::setServerLogLevel(int logLevel) +{ + // not connected? + if( !isConnected()) { + m_pEWrapper->error( NO_VALID_ID, NOT_CONNECTED.code(), NOT_CONNECTED.msg()); + return; + } + + std::stringstream msg; + prepareBuffer( msg); + + const int VERSION = 1; + + // send the set server logging level message + ENCODE_FIELD( SET_SERVER_LOGLEVEL); + ENCODE_FIELD( VERSION); + ENCODE_FIELD( logLevel); + + closeAndSend( msg.str()); +} + +void EClient::reqManagedAccts() +{ + // not connected? + if( !isConnected()) { + m_pEWrapper->error( NO_VALID_ID, NOT_CONNECTED.code(), NOT_CONNECTED.msg()); + return; + } + + std::stringstream msg; + prepareBuffer( msg); + + const int VERSION = 1; + + // send req FA managed accounts msg + ENCODE_FIELD( REQ_MANAGED_ACCTS); + ENCODE_FIELD( VERSION); + + closeAndSend( msg.str()); +} + + +void EClient::requestFA(faDataType pFaDataType) +{ + // not connected? + if( !isConnected()) { + m_pEWrapper->error( NO_VALID_ID, NOT_CONNECTED.code(), NOT_CONNECTED.msg()); + return; + } + + // Not needed anymore validation + //if( m_serverVersion < 13) { + // m_pEWrapper->error( NO_VALID_ID, UPDATE_TWS.code(), UPDATE_TWS.msg()); + // return; + //} + + std::stringstream msg; + prepareBuffer( msg); + + const int VERSION = 1; + + ENCODE_FIELD( REQ_FA); + ENCODE_FIELD( VERSION); + ENCODE_FIELD( (int)pFaDataType); + + closeAndSend( msg.str()); +} + +void EClient::replaceFA(faDataType pFaDataType, const std::string& cxml) +{ + // not connected? + if( !isConnected()) { + m_pEWrapper->error( NO_VALID_ID, NOT_CONNECTED.code(), NOT_CONNECTED.msg()); + return; + } + + // Not needed anymore validation + //if( m_serverVersion < 13) { + // m_pEWrapper->error( NO_VALID_ID, UPDATE_TWS.code(), UPDATE_TWS.msg()); + // return; + //} + + std::stringstream msg; + prepareBuffer( msg); + + const int VERSION = 1; + + ENCODE_FIELD( REPLACE_FA); + ENCODE_FIELD( VERSION); + ENCODE_FIELD( (int)pFaDataType); + ENCODE_FIELD( cxml); + + closeAndSend( msg.str()); +} + + + +void EClient::exerciseOptions( TickerId tickerId, const Contract& contract, + int exerciseAction, int exerciseQuantity, + const std::string& account, int override) +{ + // not connected? + if( !isConnected()) { + m_pEWrapper->error( NO_VALID_ID, NOT_CONNECTED.code(), NOT_CONNECTED.msg()); + return; + } + + // Not needed anymore validation + //if( m_serverVersion < 21) { + // m_pEWrapper->error( NO_VALID_ID, UPDATE_TWS.code(), UPDATE_TWS.msg()); + // return; + //} + + if (m_serverVersion < MIN_SERVER_VER_TRADING_CLASS) { + if( !contract.tradingClass.empty() || (contract.conId > 0)) { + m_pEWrapper->error( tickerId, UPDATE_TWS.code(), UPDATE_TWS.msg() + + " It does not support conId, multiplier and tradingClass parameters in exerciseOptions."); + return; + } + } + + std::stringstream msg; + prepareBuffer( msg); + + const int VERSION = 2; + + ENCODE_FIELD( EXERCISE_OPTIONS); + ENCODE_FIELD( VERSION); + ENCODE_FIELD( tickerId); + + // send contract fields + if( m_serverVersion >= MIN_SERVER_VER_TRADING_CLASS) { + ENCODE_FIELD( contract.conId); + } + ENCODE_FIELD( contract.symbol); + ENCODE_FIELD( contract.secType); + ENCODE_FIELD( contract.lastTradeDateOrContractMonth); + ENCODE_FIELD( contract.strike); + ENCODE_FIELD( contract.right); + ENCODE_FIELD( contract.multiplier); + ENCODE_FIELD( contract.exchange); + ENCODE_FIELD( contract.currency); + ENCODE_FIELD( contract.localSymbol); + if( m_serverVersion >= MIN_SERVER_VER_TRADING_CLASS) { + ENCODE_FIELD( contract.tradingClass); + } + ENCODE_FIELD( exerciseAction); + ENCODE_FIELD( exerciseQuantity); + ENCODE_FIELD( account); + ENCODE_FIELD( override); + + closeAndSend( msg.str()); +} + +void EClient::reqGlobalCancel() +{ + // not connected? + if( !isConnected()) { + m_pEWrapper->error( NO_VALID_ID, NOT_CONNECTED.code(), NOT_CONNECTED.msg()); + return; + } + + if (m_serverVersion < MIN_SERVER_VER_REQ_GLOBAL_CANCEL) { + m_pEWrapper->error( NO_VALID_ID, UPDATE_TWS.code(), UPDATE_TWS.msg() + + " It does not support globalCancel requests."); + return; + } + + std::stringstream msg; + prepareBuffer( msg); + + const int VERSION = 1; + + // send current time req + ENCODE_FIELD( REQ_GLOBAL_CANCEL); + ENCODE_FIELD( VERSION); + + closeAndSend( msg.str()); +} + +void EClient::reqMarketDataType( int marketDataType) +{ + // not connected? + if( !isConnected()) { + m_pEWrapper->error( NO_VALID_ID, NOT_CONNECTED.code(), NOT_CONNECTED.msg()); + return; + } + + if( m_serverVersion < MIN_SERVER_VER_REQ_MARKET_DATA_TYPE) { + m_pEWrapper->error(NO_VALID_ID, UPDATE_TWS.code(), UPDATE_TWS.msg() + + " It does not support market data type requests."); + return; + } + + std::stringstream msg; + prepareBuffer( msg); + + const int VERSION = 1; + + ENCODE_FIELD( REQ_MARKET_DATA_TYPE); + ENCODE_FIELD( VERSION); + ENCODE_FIELD( marketDataType); + + closeAndSend( msg.str()); +} + +int EClient::bufferedRead() +{ + char buf[8192]; + int nResult = receive( buf, sizeof(buf)); + + if( nResult > 0) { + m_inBuffer.insert( m_inBuffer.end(), &buf[0], &buf[0] + nResult); + } + + return nResult; +} + +void EClient::reqPositions() +{ + // not connected? + if( !isConnected()) { + m_pEWrapper->error( NO_VALID_ID, NOT_CONNECTED.code(), NOT_CONNECTED.msg()); + return; + } + + if( m_serverVersion < MIN_SERVER_VER_POSITIONS) { + m_pEWrapper->error(NO_VALID_ID, UPDATE_TWS.code(), UPDATE_TWS.msg() + + " It does not support positions request."); + return; + } + + std::stringstream msg; + prepareBuffer( msg); + + const int VERSION = 1; + + ENCODE_FIELD( REQ_POSITIONS); + ENCODE_FIELD( VERSION); + + closeAndSend( msg.str()); +} + +void EClient::cancelPositions() +{ + // not connected? + if( !isConnected()) { + m_pEWrapper->error( NO_VALID_ID, NOT_CONNECTED.code(), NOT_CONNECTED.msg()); + return; + } + + if( m_serverVersion < MIN_SERVER_VER_POSITIONS) { + m_pEWrapper->error(NO_VALID_ID, UPDATE_TWS.code(), UPDATE_TWS.msg() + + " It does not support positions cancellation."); + return; + } + + std::stringstream msg; + prepareBuffer( msg); + + const int VERSION = 1; + + ENCODE_FIELD( CANCEL_POSITIONS); + ENCODE_FIELD( VERSION); + + closeAndSend( msg.str()); +} + +void EClient::reqAccountSummary( int reqId, const std::string& groupName, const std::string& tags) +{ + // not connected? + if( !isConnected()) { + m_pEWrapper->error( NO_VALID_ID, NOT_CONNECTED.code(), NOT_CONNECTED.msg()); + return; + } + + if( m_serverVersion < MIN_SERVER_VER_ACCOUNT_SUMMARY) { + m_pEWrapper->error(NO_VALID_ID, UPDATE_TWS.code(), UPDATE_TWS.msg() + + " It does not support account summary request."); + return; + } + + std::stringstream msg; + prepareBuffer( msg); + + const int VERSION = 1; + + ENCODE_FIELD( REQ_ACCOUNT_SUMMARY); + ENCODE_FIELD( VERSION); + ENCODE_FIELD( reqId); + ENCODE_FIELD( groupName); + ENCODE_FIELD( tags); + + closeAndSend( msg.str()); +} + +void EClient::cancelAccountSummary( int reqId) +{ + // not connected? + if( !isConnected()) { + m_pEWrapper->error( NO_VALID_ID, NOT_CONNECTED.code(), NOT_CONNECTED.msg()); + return; + } + + if( m_serverVersion < MIN_SERVER_VER_ACCOUNT_SUMMARY) { + m_pEWrapper->error(NO_VALID_ID, UPDATE_TWS.code(), UPDATE_TWS.msg() + + " It does not support account summary cancellation."); + return; + } + + std::stringstream msg; + prepareBuffer( msg); + + const int VERSION = 1; + + ENCODE_FIELD( CANCEL_ACCOUNT_SUMMARY); + ENCODE_FIELD( VERSION); + ENCODE_FIELD( reqId); + + closeAndSend( msg.str()); +} + +void EClient::verifyRequest(const std::string& apiName, const std::string& apiVersion) +{ + // not connected? + if( !isConnected()) { + m_pEWrapper->error( NO_VALID_ID, NOT_CONNECTED.code(), NOT_CONNECTED.msg()); + return; + } + + if( m_serverVersion < MIN_SERVER_VER_LINKING) { + m_pEWrapper->error(NO_VALID_ID, UPDATE_TWS.code(), UPDATE_TWS.msg() + + " It does not support verification request."); + return; + } + + if( !m_extraAuth) { + m_pEWrapper->error(NO_VALID_ID, UPDATE_TWS.code(), UPDATE_TWS.msg() + + " Intent to authenticate needs to be expressed during initial connect request."); + return; + } + + std::stringstream msg; + prepareBuffer( msg); + + const int VERSION = 1; + + ENCODE_FIELD( VERIFY_REQUEST); + ENCODE_FIELD( VERSION); + ENCODE_FIELD( apiName); + ENCODE_FIELD( apiVersion); + + closeAndSend( msg.str()); +} + +void EClient::verifyMessage(const std::string& apiData) +{ + // not connected? + if( !isConnected()) { + m_pEWrapper->error( NO_VALID_ID, NOT_CONNECTED.code(), NOT_CONNECTED.msg()); + return; + } + + if( m_serverVersion < MIN_SERVER_VER_LINKING) { + m_pEWrapper->error(NO_VALID_ID, UPDATE_TWS.code(), UPDATE_TWS.msg() + + " It does not support verification message sending."); + return; + } + + std::stringstream msg; + prepareBuffer( msg); + + const int VERSION = 1; + + ENCODE_FIELD( VERIFY_MESSAGE); + ENCODE_FIELD( VERSION); + ENCODE_FIELD( apiData); + + closeAndSend( msg.str()); +} + +void EClient::verifyAndAuthRequest(const std::string& apiName, const std::string& apiVersion, const std::string& opaqueIsvKey) +{ + // not connected? + if( !isConnected()) { + m_pEWrapper->error( NO_VALID_ID, NOT_CONNECTED.code(), NOT_CONNECTED.msg()); + return; + } + + if( m_serverVersion < MIN_SERVER_VER_LINKING_AUTH) { + m_pEWrapper->error(NO_VALID_ID, UPDATE_TWS.code(), UPDATE_TWS.msg() + + " It does not support verification request."); + return; + } + + if( !m_extraAuth) { + m_pEWrapper->error(NO_VALID_ID, UPDATE_TWS.code(), UPDATE_TWS.msg() + + " Intent to authenticate needs to be expressed during initial connect request."); + return; + } + + std::stringstream msg; + prepareBuffer( msg); + + const int VERSION = 1; + + ENCODE_FIELD( VERIFY_AND_AUTH_REQUEST); + ENCODE_FIELD( VERSION); + ENCODE_FIELD( apiName); + ENCODE_FIELD( apiVersion); + ENCODE_FIELD( opaqueIsvKey); + + closeAndSend( msg.str()); +} + +void EClient::verifyAndAuthMessage(const std::string& apiData, const std::string& xyzResponse) +{ + // not connected? + if( !isConnected()) { + m_pEWrapper->error( NO_VALID_ID, NOT_CONNECTED.code(), NOT_CONNECTED.msg()); + return; + } + + if( m_serverVersion < MIN_SERVER_VER_LINKING_AUTH) { + m_pEWrapper->error(NO_VALID_ID, UPDATE_TWS.code(), UPDATE_TWS.msg() + + " It does not support verification message sending."); + return; + } + + std::stringstream msg; + prepareBuffer( msg); + + const int VERSION = 1; + + ENCODE_FIELD( VERIFY_AND_AUTH_MESSAGE); + ENCODE_FIELD( VERSION); + ENCODE_FIELD( apiData); + ENCODE_FIELD( xyzResponse); + + closeAndSend( msg.str()); +} + +void EClient::queryDisplayGroups( int reqId) +{ + // not connected? + if( !isConnected()) { + m_pEWrapper->error( NO_VALID_ID, NOT_CONNECTED.code(), NOT_CONNECTED.msg()); + return; + } + + if( m_serverVersion < MIN_SERVER_VER_LINKING) { + m_pEWrapper->error(NO_VALID_ID, UPDATE_TWS.code(), UPDATE_TWS.msg() + + " It does not support queryDisplayGroups request."); + return; + } + + std::stringstream msg; + prepareBuffer( msg); + + const int VERSION = 1; + + ENCODE_FIELD( QUERY_DISPLAY_GROUPS); + ENCODE_FIELD( VERSION); + ENCODE_FIELD( reqId); + + closeAndSend( msg.str()); +} + +void EClient::subscribeToGroupEvents( int reqId, int groupId) +{ + // not connected? + if( !isConnected()) { + m_pEWrapper->error( NO_VALID_ID, NOT_CONNECTED.code(), NOT_CONNECTED.msg()); + return; + } + + if( m_serverVersion < MIN_SERVER_VER_LINKING) { + m_pEWrapper->error(NO_VALID_ID, UPDATE_TWS.code(), UPDATE_TWS.msg() + + " It does not support subscribeToGroupEvents request."); + return; + } + + std::stringstream msg; + prepareBuffer( msg); + + const int VERSION = 1; + + ENCODE_FIELD( SUBSCRIBE_TO_GROUP_EVENTS); + ENCODE_FIELD( VERSION); + ENCODE_FIELD( reqId); + ENCODE_FIELD( groupId); + + closeAndSend( msg.str()); +} + +void EClient::updateDisplayGroup( int reqId, const std::string& contractInfo) +{ + // not connected? + if( !isConnected()) { + m_pEWrapper->error( NO_VALID_ID, NOT_CONNECTED.code(), NOT_CONNECTED.msg()); + return; + } + + if( m_serverVersion < MIN_SERVER_VER_LINKING) { + m_pEWrapper->error(NO_VALID_ID, UPDATE_TWS.code(), UPDATE_TWS.msg() + + " It does not support updateDisplayGroup request."); + return; + } + + std::stringstream msg; + prepareBuffer( msg); + + const int VERSION = 1; + + ENCODE_FIELD( UPDATE_DISPLAY_GROUP); + ENCODE_FIELD( VERSION); + ENCODE_FIELD( reqId); + ENCODE_FIELD( contractInfo); + + closeAndSend( msg.str()); +} + +void EClient::startApi() +{ + // not connected? + if( !isConnected()) { + m_pEWrapper->error( NO_VALID_ID, NOT_CONNECTED.code(), NOT_CONNECTED.msg()); + return; + } + + if( m_serverVersion >= 3) { + if( m_serverVersion < MIN_SERVER_VER_LINKING) { + std::stringstream msg; + ENCODE_FIELD( m_clientId); + bufferedSend( msg.str()); + } + else + { + std::stringstream msg; + prepareBuffer( msg); + + const int VERSION = 2; + + ENCODE_FIELD( START_API); + ENCODE_FIELD( VERSION); + ENCODE_FIELD( m_clientId); + + if (m_serverVersion >= MIN_SERVER_VER_OPTIONAL_CAPABILITIES) + ENCODE_FIELD(m_optionalCapabilities); + + closeAndSend( msg.str()); + } + } +} + +void EClient::unsubscribeFromGroupEvents( int reqId) +{ + // not connected? + if( !isConnected()) { + m_pEWrapper->error( NO_VALID_ID, NOT_CONNECTED.code(), NOT_CONNECTED.msg()); + return; + } + + if( m_serverVersion < MIN_SERVER_VER_LINKING) { + m_pEWrapper->error(NO_VALID_ID, UPDATE_TWS.code(), UPDATE_TWS.msg() + + " It does not support unsubscribeFromGroupEvents request."); + return; + } + + std::stringstream msg; + prepareBuffer( msg); + + const int VERSION = 1; + + ENCODE_FIELD( UNSUBSCRIBE_FROM_GROUP_EVENTS); + ENCODE_FIELD( VERSION); + ENCODE_FIELD( reqId); + + closeAndSend( msg.str()); +} + +void EClient::reqPositionsMulti( int reqId, const std::string& account, const std::string& modelCode) +{ + // not connected? + if( !isConnected()) { + m_pEWrapper->error( NO_VALID_ID, NOT_CONNECTED.code(), NOT_CONNECTED.msg()); + return; + } + + if( m_serverVersion < MIN_SERVER_VER_MODELS_SUPPORT) { + m_pEWrapper->error(NO_VALID_ID, UPDATE_TWS.code(), UPDATE_TWS.msg() + + " It does not support positions multi request."); + return; + } + + std::stringstream msg; + prepareBuffer( msg); + + const int VERSION = 1; + + ENCODE_FIELD( REQ_POSITIONS_MULTI); + ENCODE_FIELD( VERSION); + ENCODE_FIELD( reqId); + ENCODE_FIELD( account); + ENCODE_FIELD( modelCode); + + closeAndSend( msg.str()); +} + +void EClient::cancelPositionsMulti( int reqId) +{ + // not connected? + if( !isConnected()) { + m_pEWrapper->error( NO_VALID_ID, NOT_CONNECTED.code(), NOT_CONNECTED.msg()); + return; + } + + if( m_serverVersion < MIN_SERVER_VER_MODELS_SUPPORT) { + m_pEWrapper->error(NO_VALID_ID, UPDATE_TWS.code(), UPDATE_TWS.msg() + + " It does not support positions multi cancellation."); + return; + } + + std::stringstream msg; + prepareBuffer( msg); + + const int VERSION = 1; + + ENCODE_FIELD( CANCEL_POSITIONS_MULTI); + ENCODE_FIELD( VERSION); + ENCODE_FIELD( reqId); + + closeAndSend( msg.str()); +} + +void EClient::reqAccountUpdatessMulti( int reqId, const std::string& account, const std::string& modelCode, bool ledgerAndNLV) +{ + // not connected? + if( !isConnected()) { + m_pEWrapper->error( NO_VALID_ID, NOT_CONNECTED.code(), NOT_CONNECTED.msg()); + return; + } + + if( m_serverVersion < MIN_SERVER_VER_MODELS_SUPPORT) { + m_pEWrapper->error(NO_VALID_ID, UPDATE_TWS.code(), UPDATE_TWS.msg() + + " It does not support account updates multi request."); + return; + } + + std::stringstream msg; + prepareBuffer( msg); + + const int VERSION = 1; + + ENCODE_FIELD( REQ_ACCOUNT_UPDATES_MULTI); + ENCODE_FIELD( VERSION); + ENCODE_FIELD( reqId); + ENCODE_FIELD( account); + ENCODE_FIELD( modelCode); + ENCODE_FIELD( ledgerAndNLV); + + closeAndSend( msg.str()); +} + +void EClient::cancelAccountUpdatesMulti( int reqId) +{ + // not connected? + if( !isConnected()) { + m_pEWrapper->error( NO_VALID_ID, NOT_CONNECTED.code(), NOT_CONNECTED.msg()); + return; + } + + if( m_serverVersion < MIN_SERVER_VER_MODELS_SUPPORT) { + m_pEWrapper->error(NO_VALID_ID, UPDATE_TWS.code(), UPDATE_TWS.msg() + + " It does not support account updates multi cancellation."); + return; + } + + std::stringstream msg; + prepareBuffer( msg); + + const int VERSION = 1; + + ENCODE_FIELD( CANCEL_ACCOUNT_UPDATES_MULTI); + ENCODE_FIELD( VERSION); + ENCODE_FIELD( reqId); + + closeAndSend( msg.str()); +} + +void EClient::reqSecDefOptParams(int reqId, const std::string& underlyingSymbol, const std::string& futFopExchange, const std::string& underlyingSecType, int underlyingConId) +{ + // not connected? + if( !isConnected()) { + m_pEWrapper->error( NO_VALID_ID, NOT_CONNECTED.code(), NOT_CONNECTED.msg()); + return; + } + + if( m_serverVersion < MIN_SERVER_VER_SEC_DEF_OPT_PARAMS_REQ) { + m_pEWrapper->error(NO_VALID_ID, UPDATE_TWS.code(), UPDATE_TWS.msg() + + " It does not support security definiton option requests."); + return; + } + + std::stringstream msg; + prepareBuffer(msg); + + + ENCODE_FIELD(REQ_SEC_DEF_OPT_PARAMS); + ENCODE_FIELD(reqId); + ENCODE_FIELD(underlyingSymbol); + ENCODE_FIELD(futFopExchange); + ENCODE_FIELD(underlyingSecType); + ENCODE_FIELD(underlyingConId); + + closeAndSend(msg.str()); +} + +void EClient::reqSoftDollarTiers(int reqId) +{ + if( !isConnected()) { + m_pEWrapper->error( NO_VALID_ID, NOT_CONNECTED.code(), NOT_CONNECTED.msg()); + return; + } + + std::stringstream msg; + prepareBuffer(msg); + + + ENCODE_FIELD(REQ_SOFT_DOLLAR_TIERS); + ENCODE_FIELD(reqId); + + closeAndSend(msg.str()); +} + +int EClient::processMsgImpl(const char*& beginPtr, const char* endPtr) +{ + EDecoder decoder(serverVersion(), m_pEWrapper); + + return decoder.parseAndProcessMsg(beginPtr, endPtr); +} + +int EClient::processOnePrefixedMsg(const char*& beginPtr, const char* endPtr, messageHandler handler) +{ + if( beginPtr + HEADER_LEN >= endPtr) + return 0; + + assert( sizeof(unsigned) == HEADER_LEN); + + unsigned netLen = 0; + memcpy( &netLen, beginPtr, HEADER_LEN); + + const unsigned msgLen = ntohl(netLen); + + // shold never happen, but still.... + if( !msgLen) { + beginPtr += HEADER_LEN; + return HEADER_LEN; + } + + // enforce max msg len limit + if( msgLen > MAX_MSG_LEN) { + m_pEWrapper->error( NO_VALID_ID, BAD_LENGTH.code(), BAD_LENGTH.msg()); + eDisconnect(); + m_pEWrapper->connectionClosed(); + return 0; + } + + const char* msgStart = beginPtr + HEADER_LEN; + const char* msgEnd = msgStart + msgLen; + + // handle incomplete messages + if( msgEnd > endPtr) { + return 0; + } + + int decoded = (this->*handler)( msgStart, msgEnd); + if( decoded <= 0) { + // this would mean something went real wrong + // and message was incomplete from decoder POV + m_pEWrapper->error( NO_VALID_ID, BAD_MESSAGE.code(), BAD_MESSAGE.msg()); + eDisconnect(); + m_pEWrapper->connectionClosed(); + return 0; + } + + int consumed = msgEnd - beginPtr; + beginPtr = msgEnd; + return consumed; +} + +bool EClient::extraAuth() { + return m_extraAuth; +} + +int EClient::processMsg(const char*& beginPtr, const char* endPtr) +{ + if( !m_useV100Plus) { + return processMsgImpl( beginPtr, endPtr); + } + return processOnePrefixedMsg( beginPtr, endPtr, &EClient::processMsgImpl); +} + +EWrapper * EClient::getWrapper() const +{ + return m_pEWrapper; +} + +void EClient::setClientId( int clientId) +{ + m_clientId = clientId; +} + +void EClient::setExtraAuth( bool extraAuth) +{ + m_extraAuth = extraAuth; +} + +void EClient::setHost( const std::string& host) +{ + m_host = host; +} + +void EClient::setPort( unsigned port) +{ + m_port = port; +} + + +/////////////////////////////////////////////////////////// +// callbacks from socket +int EClient::sendConnectRequest() +{ + m_connState = CS_CONNECTING; + + int rval; + + // send client version + std::stringstream msg; + if( m_useV100Plus) { + msg.write( API_SIGN, sizeof(API_SIGN)); + prepareBufferImpl( msg); + if( MIN_CLIENT_VER < MAX_CLIENT_VER) { + msg << 'v' << MIN_CLIENT_VER << ".." << MAX_CLIENT_VER; + } + else { + msg << 'v' << MIN_CLIENT_VER; + } + if( !m_connectOptions.empty()) { + msg << ' ' << m_connectOptions; + } + + rval = closeAndSend( msg.str(), sizeof(API_SIGN)); + } + else { + ENCODE_FIELD( CLIENT_VERSION); + + rval = bufferedSend( msg.str()); + } + + m_connState = rval > 0 ? CS_CONNECTED : CS_DISCONNECTED; + + return rval; +} + +bool EClient::isInBufferEmpty() const +{ + return m_inBuffer.empty(); +} + diff --git a/vn.ib/ibapi/windows/client/EClient.h b/vn.ib/ibapi/windows/client/EClient.h new file mode 100644 index 00000000..15c96d15 --- /dev/null +++ b/vn.ib/ibapi/windows/client/EClient.h @@ -0,0 +1,384 @@ +/* Copyright (C) 2013 Interactive Brokers LLC. All rights reserved. This code is subject to the terms + * and conditions of the IB API Non-Commercial License or the IB API Commercial License, as applicable. */ + +#pragma once +#ifndef eclient_h__INCLUDED +#define eclient_h__INCLUDED + + +#include +#include +#include +#include +#include "CommonDefs.h" +#include "TagValue.h" + +namespace ibapi { +namespace client_constants { + +///////////////////////////////////////////////////////////////////////////////// +// SOCKET CLIENT VERSION CHANGE LOG : Incremented when the format of incomming +// server responses change +///////////////////////////////////////////////////////////////////////////////// +// constants +// 6 = Added parentId to orderStatus +// 7 = The new execDetails event returned for an order filled status and reqExecDetails +// Also added market depth support. +// 8 = Added 'lastFillPrice' to orderStatus and 'permId' to execDetails +// 9 = Added 'avgCost', 'unrealizedPNL', and 'unrealizedPNL' to updatePortfolio event +// 10 = Added 'serverId' to the 'open order' & 'order status' events. +// We send back all the API open orders upon connection. +// Added new methods reqAllOpenOrders, reqAutoOpenOrders() +// Added FA support - reqExecution has filter. +// - reqAccountUpdates takes acct code. +// 11 = Added permId to openOrder event. +// 12 = Added IgnoreRth, hidden, and discretionaryAmt +// 13 = Added GoodAfterTime +// 14 = always send size on bid/ask/last tick +// 15 = send allocation string with open order +// 16 = can receive account name in account and portfolio updates, and fa params in openOrder +// 17 = can receive liquidation field in exec reports, and notAutoAvailable field in mkt data +// 18 = can receive good till date field in open order messages, and send backfill requests +// 19 = can receive new extended order attributes in OPEN_ORDER +// 20 = expects TWS time string on connection after server version >= 20, and parentId in open order +// 21 = can receive bond contract details. +// 22 = can receive price magnifier in contract details +// 23 = support for scanner +// 24 = can receive volatility order parameters in open order messages +// 25 = can receive HMDS query start and end times +// 26 = can receive option vols in option market data messages +// 27 = can receive delta neutral order type and delta neutral aux price +// 28 = can receive option model computation ticks +// 29 = can receive trail stop limit price in open order and can place them: API 8.91 +// 30 = can receive extended bond contract def, new ticks, and trade count in bars +// 31 = can receive EFP extensions to scanner and market data, and combo legs on open orders +// ; can receive RT bars +// 32 = can receive TickType.LAST_TIMESTAMP +// 33 = can receive ScaleNumComponents and ScaleComponentSize is open order messages +// 34 = can receive whatIf orders / order state +// 35 = can receive contId field for Contract objects +// 36 = can receive outsideRth field for Order objects +// 37 = can receive clearingAccount and clearingIntent for Order objects +// 38 = can receive multipier and primaryExchange in portfolio updates +// ; can receive cumQty and avgPrice in execution +// ; can receive fundamental data +// ; can receive underComp for Contract objects +// ; can receive reqId and end marker in contractDetails/bondContractDetails +// ; can receive ScaleInitComponentSize and ScaleSubsComponentSize for Order objects +// 39 = can receive underConId in contractDetails +// 40 = can receive algoStrategy/algoParams in openOrder +// 41 = can receive end marker for openOrder +// ; can receive end marker for account download +// ; can receive end marker for executions download +// 42 = can receive deltaNeutralValidation +// 43 = can receive longName(companyName) +// ; can receive listingExchange +// ; can receive RTVolume tick +// 44 = can receive end market for ticker snapshot +// 45 = can receive notHeld field in openOrder +// 46 = can receive contractMonth, industry, category, subcategory fields in contractDetails +// ; can receive timeZoneId, tradingHours, liquidHours fields in contractDetails +// 47 = can receive gamma, vega, theta, undPrice fields in TICK_OPTION_COMPUTATION +// 48 = can receive exemptCode in openOrder +// 49 = can receive hedgeType and hedgeParam in openOrder +// 50 = can receive optOutSmartRouting field in openOrder +// 51 = can receive smartComboRoutingParams in openOrder +// 52 = can receive deltaNeutralConId, deltaNeutralSettlingFirm, deltaNeutralClearingAccount and deltaNeutralClearingIntent in openOrder +// 53 = can receive orderRef in execution +// 54 = can receive scale order fields (PriceAdjustValue, PriceAdjustInterval, ProfitOffset, AutoReset, +// InitPosition, InitFillQty and RandomPercent) in openOrder +// 55 = can receive orderComboLegs (price) in openOrder +// 56 = can receive trailingPercent in openOrder +// 57 = can receive commissionReport message +// 58 = can receive CUSIP/ISIN/etc. in contractDescription/bondContractDescription +// 59 = can receive evRule, evMultiplier in contractDescription/bondContractDescription/executionDetails +// can receive multiplier in executionDetails +// 60 = can receive deltaNeutralOpenClose, deltaNeutralShortSale, deltaNeutralShortSaleSlot +// and deltaNeutralDesignatedLocation in openOrder +// can receive position, positionEnd, accountSummary and accountSummaryEnd +// 61 = can receive multiplier in openOrder +// can receive tradingClass in openOrder, updatePortfolio, execDetails and position +// 62 = can receive avgCost in position message +// 63 = can receive verifyMessageAPI, verifyCompleted, displayGroupList and displayGroupUpdated messages +// 64 = can receive solicited attrib in openOrder message +// 65 = can receive verifyAndAuthMessageAPI and verifyAndAuthCompleted messages +// 66 = can receive randomize size and randomize price order fields + +const int CLIENT_VERSION = 66; + + +// outgoing msg id's +const int REQ_MKT_DATA = 1; +const int CANCEL_MKT_DATA = 2; +const int PLACE_ORDER = 3; +const int CANCEL_ORDER = 4; +const int REQ_OPEN_ORDERS = 5; +const int REQ_ACCT_DATA = 6; +const int REQ_EXECUTIONS = 7; +const int REQ_IDS = 8; +const int REQ_CONTRACT_DATA = 9; +const int REQ_MKT_DEPTH = 10; +const int CANCEL_MKT_DEPTH = 11; +const int REQ_NEWS_BULLETINS = 12; +const int CANCEL_NEWS_BULLETINS = 13; +const int SET_SERVER_LOGLEVEL = 14; +const int REQ_AUTO_OPEN_ORDERS = 15; +const int REQ_ALL_OPEN_ORDERS = 16; +const int REQ_MANAGED_ACCTS = 17; +const int REQ_FA = 18; +const int REPLACE_FA = 19; +const int REQ_HISTORICAL_DATA = 20; +const int EXERCISE_OPTIONS = 21; +const int REQ_SCANNER_SUBSCRIPTION = 22; +const int CANCEL_SCANNER_SUBSCRIPTION = 23; +const int REQ_SCANNER_PARAMETERS = 24; +const int CANCEL_HISTORICAL_DATA = 25; +const int REQ_CURRENT_TIME = 49; +const int REQ_REAL_TIME_BARS = 50; +const int CANCEL_REAL_TIME_BARS = 51; +const int REQ_FUNDAMENTAL_DATA = 52; +const int CANCEL_FUNDAMENTAL_DATA = 53; +const int REQ_CALC_IMPLIED_VOLAT = 54; +const int REQ_CALC_OPTION_PRICE = 55; +const int CANCEL_CALC_IMPLIED_VOLAT = 56; +const int CANCEL_CALC_OPTION_PRICE = 57; +const int REQ_GLOBAL_CANCEL = 58; +const int REQ_MARKET_DATA_TYPE = 59; +const int REQ_POSITIONS = 61; +const int REQ_ACCOUNT_SUMMARY = 62; +const int CANCEL_ACCOUNT_SUMMARY = 63; +const int CANCEL_POSITIONS = 64; +const int VERIFY_REQUEST = 65; +const int VERIFY_MESSAGE = 66; +const int QUERY_DISPLAY_GROUPS = 67; +const int SUBSCRIBE_TO_GROUP_EVENTS = 68; +const int UPDATE_DISPLAY_GROUP = 69; +const int UNSUBSCRIBE_FROM_GROUP_EVENTS = 70; +const int START_API = 71; +const int VERIFY_AND_AUTH_REQUEST = 72; +const int VERIFY_AND_AUTH_MESSAGE = 73; +const int REQ_POSITIONS_MULTI = 74; +const int CANCEL_POSITIONS_MULTI = 75; +const int REQ_ACCOUNT_UPDATES_MULTI = 76; +const int CANCEL_ACCOUNT_UPDATES_MULTI = 77; +const int REQ_SEC_DEF_OPT_PARAMS = 78; +const int REQ_SOFT_DOLLAR_TIERS = 79; + +// TWS New Bulletins constants +const int NEWS_MSG = 1; // standard IB news bulleting message +const int EXCHANGE_AVAIL_MSG = 2; // control message specifing that an exchange is available for trading +const int EXCHANGE_UNAVAIL_MSG = 3; // control message specifing that an exchange is unavailable for trading + +} // namespace client_constants +} // namespace ibapi + +struct Contract; +struct Order; +struct ExecutionFilter; +struct ScannerSubscription; +struct ETransport; + +class EWrapper; +typedef std::vector BytesVec; + + +class TWSAPIDLLEXP EClient +{ +public: + + explicit EClient(EWrapper *ptr, ETransport *pTransport); + ~EClient(); + + virtual void eDisconnect() = 0; + + int clientId() const { return m_clientId; } + + const std::string& optionalCapabilities() const; + void setOptionalCapabilities(const std::string& optCapts); + + void setConnectOptions(const std::string& connectOptions); + void disableUseV100Plus(); + bool usingV100Plus(); + +protected: + + void eConnectBase(); + void eDisconnectBase(); + +public: + + enum ConnState { + CS_DISCONNECTED, + CS_CONNECTING, + CS_CONNECTED, + CS_REDIRECT + }; + + // connection state + ConnState connState() const; + bool isConnected() const; + + const std::string& host() const { return m_host; } + unsigned port() const { return m_port; } + +public: + + // access to protected variables + EWrapper * getWrapper() const; +protected: + void setClientId( int clientId); + void setExtraAuth( bool extraAuth); + void setHost( const std::string& host); + void setPort( unsigned port); + +public: + + bool isInBufferEmpty() const; + + // override virtual funcs from EClient + int serverVersion(); + std::string TwsConnectionTime(); + void reqMktData(TickerId id, const Contract& contract, + const std::string& genericTicks, bool snapshot, const TagValueListSPtr& mktDataOptions); + void cancelMktData(TickerId id); + void placeOrder(OrderId id, const Contract& contract, const Order& order); + void cancelOrder(OrderId id) ; + void reqOpenOrders(); + void reqAccountUpdates(bool subscribe, const std::string& acctCode); + void reqExecutions(int reqId, const ExecutionFilter& filter); + void reqIds(int numIds); + void reqContractDetails(int reqId, const Contract& contract); + void reqMktDepth(TickerId tickerId, const Contract& contract, int numRows, const TagValueListSPtr& mktDepthOptions); + void cancelMktDepth(TickerId tickerId); + void reqNewsBulletins(bool allMsgs); + void cancelNewsBulletins(); + void setServerLogLevel(int level); + void reqAutoOpenOrders(bool bAutoBind); + void reqAllOpenOrders(); + void reqManagedAccts(); + void requestFA(faDataType pFaDataType); + void replaceFA(faDataType pFaDataType, const std::string& cxml); + void reqHistoricalData( TickerId id, const Contract& contract, + const std::string& endDateTime, const std::string& durationStr, + const std::string& barSizeSetting, const std::string& whatToShow, + int useRTH, int formatDate, const TagValueListSPtr& chartOptions); + void exerciseOptions(TickerId tickerId, const Contract& contract, + int exerciseAction, int exerciseQuantity, + const std::string& account, int override); + void cancelHistoricalData(TickerId tickerId ); + void reqRealTimeBars(TickerId id, const Contract& contract, int barSize, + const std::string& whatToShow, bool useRTH, const TagValueListSPtr& realTimeBarsOptions); + void cancelRealTimeBars(TickerId tickerId ); + void cancelScannerSubscription(int tickerId); + void reqScannerParameters(); + void reqScannerSubscription(int tickerId, const ScannerSubscription& subscription, const TagValueListSPtr& scannerSubscriptionOptions); + void reqCurrentTime(); + void reqFundamentalData(TickerId reqId, const Contract&, const std::string& reportType); + void cancelFundamentalData(TickerId reqId); + void calculateImpliedVolatility(TickerId reqId, const Contract& contract, double optionPrice, double underPrice); + void calculateOptionPrice(TickerId reqId, const Contract& contract, double volatility, double underPrice); + void cancelCalculateImpliedVolatility(TickerId reqId); + void cancelCalculateOptionPrice(TickerId reqId); + void reqGlobalCancel(); + void reqMarketDataType(int marketDataType); + void reqPositions(); + void cancelPositions(); + void reqAccountSummary( int reqId, const std::string& groupName, const std::string& tags); + void cancelAccountSummary( int reqId); + void verifyRequest( const std::string& apiName, const std::string& apiVersion); + void verifyMessage( const std::string& apiData); + void verifyAndAuthRequest( const std::string& apiName, const std::string& apiVersion, const std::string& opaqueIsvKey); + void verifyAndAuthMessage( const std::string& apiData, const std::string& xyzResponse); + void queryDisplayGroups( int reqId); + void subscribeToGroupEvents( int reqId, int groupId); + void updateDisplayGroup( int reqId, const std::string& contractInfo); + void unsubscribeFromGroupEvents( int reqId); + void reqPositionsMulti( int reqId, const std::string& account, const std::string& modelCode); + void cancelPositionsMulti( int reqId); + void reqAccountUpdatessMulti( int reqId, const std::string& account, const std::string& modelCode, bool ledgerAndNLV); + void cancelAccountUpdatesMulti( int reqId); + void reqSecDefOptParams(int reqId, const std::string& underlyingSymbol, const std::string& futFopExchange, const std::string& underlyingSecType, int underlyingConId); + void reqSoftDollarTiers(int reqId); + +private: + + virtual int receive(char* buf, size_t sz) = 0; + +protected: + + virtual void prepareBufferImpl(std::ostream&) const = 0; + virtual void prepareBuffer(std::ostream&) const = 0; + virtual bool closeAndSend(std::string msg, unsigned offset = 0) = 0; + virtual int bufferedSend(const std::string& msg); + +protected: + int bufferedRead(); + + // try to process connection request ack +private: + // try to process single msg + int processMsgImpl(const char*& ptr, const char* endPtr); + int processMsg(const char*& ptr, const char* endPtr); + + typedef int (EClient::*messageHandler)(const char*& ptr, const char* endPtr); + int processOnePrefixedMsg(const char*& ptr, const char* endPtr, messageHandler); + +public: + void startApi(); + + + // encoders + template static void EncodeField(std::ostream&, T); + + // "max" encoders + static void EncodeFieldMax(std::ostream& os, int); + static void EncodeFieldMax(std::ostream& os, double); + + // socket state +private: + virtual bool isSocketOK() const = 0; + +protected: + + bool isConnecting() const; + int sendConnectRequest(); + bool extraAuth(); + +protected: + + EWrapper *m_pEWrapper; + std::auto_ptr m_transport; + +private: + BytesVec m_inBuffer; + + std::string m_host; + int m_port; + + int m_clientId; + + ConnState m_connState; + bool m_extraAuth; + +protected: + int m_serverVersion; + std::string m_TwsTime; + +private: + std::string m_optionalCapabilities; + + std::string m_connectOptions; + +protected: + bool m_useV100Plus; + +}; + +template<> void EClient::EncodeField(std::ostream& os, bool); +template<> void EClient::EncodeField(std::ostream& os, double); + +#define ENCODE_FIELD(x) EClient::EncodeField(msg, x); +#define ENCODE_FIELD_MAX(x) EClient::EncodeFieldMax(msg, x); + + +#endif diff --git a/vn.ib/ibapi/windows/client/EClientMsgSink.h b/vn.ib/ibapi/windows/client/EClientMsgSink.h new file mode 100644 index 00000000..2bdc6d4e --- /dev/null +++ b/vn.ib/ibapi/windows/client/EClientMsgSink.h @@ -0,0 +1,10 @@ +/* Copyright (C) 2013 Interactive Brokers LLC. All rights reserved. This code is subject to the terms +* and conditions of the IB API Non-Commercial License or the IB API Commercial License, as applicable. */ + +#pragma once +struct EClientMsgSink +{ + virtual void serverVersion(int version, const char *time) = 0; + virtual void redirect(const char *host, int port) = 0; +}; + diff --git a/vn.ib/ibapi/windows/client/EClientSocket.cpp b/vn.ib/ibapi/windows/client/EClientSocket.cpp new file mode 100644 index 00000000..8fbe26bd --- /dev/null +++ b/vn.ib/ibapi/windows/client/EClientSocket.cpp @@ -0,0 +1,332 @@ +/* Copyright (C) 2013 Interactive Brokers LLC. All rights reserved. This code is subject to the terms +* and conditions of the IB API Non-Commercial License or the IB API Commercial License, as applicable. */ + +#include "StdAfx.h" + + +#include "EPosixClientSocketPlatform.h" +#include "EClientSocket.h" + +#include "TwsSocketClientErrors.h" +#include "EWrapper.h" +#include "EDecoder.h" +#include "EReaderSignal.h" +#include "EReader.h" +#include "EMessage.h" + +#include +#include +#include + +const int MIN_SERVER_VER_SUPPORTED = 38; //all supported server versions are defined in EDecoder.h + +/////////////////////////////////////////////////////////// +// member funcs +EClientSocket::EClientSocket(EWrapper *ptr, EReaderSignal *pSignal) : EClient( ptr, new ESocket()) +{ + m_fd = SocketsInit() ? -1 : -2; + m_allowRedirect = false; + m_asyncEConnect = false; + m_pSignal = pSignal; +} + +EClientSocket::~EClientSocket() +{ + if( m_fd != -2) + SocketsDestroy(); +} + +bool EClientSocket::asyncEConnect() const { + return m_asyncEConnect; +} + +void EClientSocket::asyncEConnect(bool val) { + m_asyncEConnect = val; +} + +bool EClientSocket::eConnect( const char *host, unsigned int port, int clientId, bool extraAuth) +{ + if( m_fd == -2) { + getWrapper()->error( NO_VALID_ID, FAIL_CREATE_SOCK.code(), FAIL_CREATE_SOCK.msg()); + return false; + } + + // reset errno + errno = 0; + + // already connected? + if( m_fd >= 0) { + errno = EISCONN; + getWrapper()->error( NO_VALID_ID, ALREADY_CONNECTED.code(), ALREADY_CONNECTED.msg()); + return false; + } + + // normalize host + m_hostNorm = (host && *host) ? host : "127.0.0.1"; + + // initialize host and port + setHost( m_hostNorm); + setPort( port); + + // try to connect to specified host and port + ConnState resState = CS_DISCONNECTED; + + return eConnectImpl( clientId, extraAuth, &resState); +} + +ESocket *EClientSocket::getTransport() { + assert(dynamic_cast(m_transport.get()) != 0); + + return static_cast(m_transport.get()); +} + +bool EClientSocket::eConnectImpl(int clientId, bool extraAuth, ConnState* stateOutPt) +{ + // resolve host + struct hostent* hostEnt = gethostbyname( host().c_str()); + if ( !hostEnt) { + getWrapper()->error( NO_VALID_ID, CONNECT_FAIL.code(), CONNECT_FAIL.msg()); + return false; + } + + // create socket + m_fd = socket(AF_INET, SOCK_STREAM, 0); + + // cannot create socket + if( m_fd < 0) { + getWrapper()->error( NO_VALID_ID, FAIL_CREATE_SOCK.code(), FAIL_CREATE_SOCK.msg()); + return false; + } + + // starting to connect to server + struct sockaddr_in sa; + memset( &sa, 0, sizeof(sa)); + sa.sin_family = AF_INET; + sa.sin_port = htons( port()); + sa.sin_addr.s_addr = ((in_addr*)hostEnt->h_addr)->s_addr; + + // try to connect + if( (connect( m_fd, (struct sockaddr *) &sa, sizeof( sa))) < 0) { + // error connecting + SocketClose( m_fd); + m_fd = -1; + getWrapper()->error( NO_VALID_ID, CONNECT_FAIL.code(), CONNECT_FAIL.msg()); + return false; + } + + getTransport()->fd(m_fd); + + // set client id + setClientId( clientId); + setExtraAuth( extraAuth); + + int res = sendConnectRequest(); + + if (res < 0 && !handleSocketError()) + return false; + + if( !isConnected()) { + if( connState() != CS_DISCONNECTED) { + assert( connState() == CS_REDIRECT); + if( stateOutPt) { + *stateOutPt = connState(); + } + eDisconnect(); + } + return false; + } + + // set socket to non-blocking state + if ( !SetSocketNonBlocking(m_fd)) { + // error setting socket to non-blocking + eDisconnect(); + getWrapper()->error( NO_VALID_ID, CONNECT_FAIL.code(), CONNECT_FAIL.msg()); + return false; + } + + assert( connState() == CS_CONNECTED); + if( stateOutPt) { + *stateOutPt = connState(); + } + + if (!m_asyncEConnect) { + EReader reader(this, m_pSignal); + + reader.putMessageToQueue(); + + while (m_pSignal && !m_serverVersion && isSocketOK()) { + reader.checkClient(); + m_pSignal->waitForSignal(); + reader.processMsgs(); + } + } + + // successfully connected + return isSocketOK(); +} + +void EClientSocket::encodeMsgLen(std::string& msg, unsigned offset) const +{ + assert( !msg.empty()); + assert( m_useV100Plus); + + assert( sizeof(unsigned) == HEADER_LEN); + assert( msg.size() > offset + HEADER_LEN); + unsigned len = msg.size() - HEADER_LEN - offset; + if( len > MAX_MSG_LEN) { + m_pEWrapper->error( NO_VALID_ID, BAD_LENGTH.code(), BAD_LENGTH.msg()); + return; + } + + unsigned netlen = htonl( len); + memcpy( &msg[offset], &netlen, HEADER_LEN); +} + +bool EClientSocket::closeAndSend(std::string msg, unsigned offset) +{ + assert( !msg.empty()); + if( m_useV100Plus) { + encodeMsgLen( msg, offset); + } + + if (bufferedSend(msg) == -1) + return handleSocketError(); + + return true; +} + +void EClientSocket::prepareBufferImpl(std::ostream& buf) const +{ + assert( m_useV100Plus); + assert( sizeof(unsigned) == HEADER_LEN); + + char header[HEADER_LEN] = { 0 }; + buf.write( header, sizeof(header)); +} + +void EClientSocket::prepareBuffer(std::ostream& buf) const +{ + if( !m_useV100Plus) + return; + + prepareBufferImpl( buf); +} + +void EClientSocket::eDisconnect() +{ + if ( m_fd >= 0 ) + // close socket + SocketClose( m_fd); + m_fd = -1; + + eDisconnectBase(); +} + +bool EClientSocket::isSocketOK() const +{ + return ( m_fd >= 0); +} + +int EClientSocket::fd() const +{ + return m_fd; +} + +int EClientSocket::receive(char* buf, size_t sz) +{ + if( sz <= 0) + return 0; + + int nResult = ::recv( m_fd, buf, sz, 0); + + if( nResult == -1 && !handleSocketError()) { + return -1; + } + if( nResult == 0) { + onClose(); + } + if( nResult <= 0) { + return 0; + } + return nResult; +} + +void EClientSocket::serverVersion(int version, const char *time) { + m_serverVersion = version; + m_TwsTime = time; + + if( usingV100Plus() ? (m_serverVersion < MIN_CLIENT_VER || m_serverVersion > MAX_CLIENT_VER) : m_serverVersion < MIN_SERVER_VER_SUPPORTED ) { + getWrapper()->error( NO_VALID_ID, UNSUPPORTED_VERSION.code(), UNSUPPORTED_VERSION.msg()); + eDisconnect(); + } + + if (!m_asyncEConnect) + startApi(); +} + +void EClientSocket::redirect(const char *host, int port) { + // handle redirect + if( (m_hostNorm != this->host() || port != this->port())) { + if (!m_allowRedirect) { + getWrapper()->error(NO_VALID_ID, CONNECT_FAIL.code(), CONNECT_FAIL.msg()); + + return; + } + + eDisconnect(); + eConnectImpl( clientId(), extraAuth(), 0); + } +} + +bool EClientSocket::handleSocketError() +{ + // no error + if( errno == 0) + return true; + + // Socket is already connected + if( errno == EISCONN) { + return true; + } + + if( errno == EWOULDBLOCK) + return false; + + if( errno == ECONNREFUSED) { + getWrapper()->error( NO_VALID_ID, CONNECT_FAIL.code(), CONNECT_FAIL.msg()); + } + else { + getWrapper()->error( NO_VALID_ID, SOCKET_EXCEPTION.code(), + SOCKET_EXCEPTION.msg() + strerror(errno)); + } + // reset errno + errno = 0; + eDisconnect(); + return false; +} + + +/////////////////////////////////////////////////////////// +// callbacks from socket + +void EClientSocket::onSend() +{ + if( !handleSocketError()) + return; + + getTransport()->sendBufferedData(); +} + +void EClientSocket::onClose() +{ + if( !handleSocketError()) + return; + + eDisconnect(); + getWrapper()->connectionClosed(); +} + +void EClientSocket::onError() +{ + handleSocketError(); +} \ No newline at end of file diff --git a/vn.ib/ibapi/windows/client/EClientSocket.h b/vn.ib/ibapi/windows/client/EClientSocket.h new file mode 100644 index 00000000..7a31dfe4 --- /dev/null +++ b/vn.ib/ibapi/windows/client/EClientSocket.h @@ -0,0 +1,70 @@ +/* Copyright (C) 2013 Interactive Brokers LLC. All rights reserved. This code is subject to the terms +* and conditions of the IB API Non-Commercial License or the IB API Commercial License, as applicable. */ + +#pragma once +#ifndef eposixclientsocket_def +#define eposixclientsocket_def + +#include "EClient.h" +#include "EClientMsgSink.h" +#include "ESocket.h" + +class EWrapper; +class EReaderSignal; + +class TWSAPIDLLEXP EClientSocket : public EClient, public EClientMsgSink +{ +protected: + virtual void prepareBufferImpl(std::ostream&) const; + virtual void prepareBuffer(std::ostream&) const; + virtual bool closeAndSend(std::string msg, unsigned offset = 0); + +public: + + explicit EClientSocket(EWrapper *ptr, EReaderSignal *pSignal = 0); + ~EClientSocket(); + + bool eConnect( const char *host, unsigned int port, int clientId = 0, bool extraAuth = false); + // override virtual funcs from EClient + void eDisconnect(); + + bool isSocketOK() const; + int fd() const; + bool asyncEConnect() const; + void asyncEConnect(bool val); + ESocket *getTransport(); + +private: + + bool eConnectImpl(int clientId, bool extraAuth, ConnState* stateOutPt); + +private: + void encodeMsgLen(std::string& msg, unsigned offset) const; +public: + bool handleSocketError(); + int receive( char* buf, size_t sz); + +public: + // callback from socket + void onSend(); + void onError(); + +private: + + void onClose(); + +private: + + int m_fd; + bool m_allowRedirect; + const char* m_hostNorm; + bool m_asyncEConnect; + EReaderSignal *m_pSignal; + +//EClientMsgSink implementation +public: + void serverVersion(int version, const char *time); + void redirect(const char *host, int port); +}; + +#endif diff --git a/vn.ib/ibapi/windows/client/EDecoder.cpp b/vn.ib/ibapi/windows/client/EDecoder.cpp new file mode 100644 index 00000000..63964c13 --- /dev/null +++ b/vn.ib/ibapi/windows/client/EDecoder.cpp @@ -0,0 +1,2076 @@ +/* Copyright (C) 2013 Interactive Brokers LLC. All rights reserved. This code is subject to the terms + * and conditions of the IB API Non-Commercial License or the IB API Commercial License, as applicable. */ + +#include "StdAfx.h" +#include +#include +#include "EWrapper.h" +#include "Order.h" +#include "Contract.h" +#include "OrderState.h" +#include "Execution.h" +#include "CommissionReport.h" +#include "TwsSocketClientErrors.h" +#include "EDecoder.h" +#include "EClientMsgSink.h" +#include + +EDecoder::EDecoder(int serverVersion, EWrapper *callback, EClientMsgSink *clientMsgSink) { + m_pEWrapper = callback; + m_serverVersion = serverVersion; + m_pClientMsgSink = clientMsgSink; +} + +const char* EDecoder::processTickPriceMsg(const char* ptr, const char* endPtr) { + int version; + int tickerId; + int tickTypeInt; + double price; + + int size; + int canAutoExecute; + + DECODE_FIELD( version); + DECODE_FIELD( tickerId); + DECODE_FIELD( tickTypeInt); + DECODE_FIELD( price); + + DECODE_FIELD( size); // ver 2 field + DECODE_FIELD( canAutoExecute); // ver 3 field + + m_pEWrapper->tickPrice( tickerId, (TickType)tickTypeInt, price, canAutoExecute); + + // process ver 2 fields + { + TickType sizeTickType = NOT_SET; + switch( (TickType)tickTypeInt) { + case BID: + sizeTickType = BID_SIZE; + break; + case ASK: + sizeTickType = ASK_SIZE; + break; + case LAST: + sizeTickType = LAST_SIZE; + break; + default: + break; + } + if( sizeTickType != NOT_SET) + m_pEWrapper->tickSize( tickerId, sizeTickType, size); + } + + return ptr; +} + +const char* EDecoder::processTickSizeMsg(const char* ptr, const char* endPtr) { + int version; + int tickerId; + int tickTypeInt; + int size; + + DECODE_FIELD( version); + DECODE_FIELD( tickerId); + DECODE_FIELD( tickTypeInt); + DECODE_FIELD( size); + + m_pEWrapper->tickSize( tickerId, (TickType)tickTypeInt, size); + + return ptr; +} + +const char* EDecoder::processTickOptionComputationMsg(const char* ptr, const char* endPtr) { + int version; + int tickerId; + int tickTypeInt; + double impliedVol; + double delta; + + double optPrice = DBL_MAX; + double pvDividend = DBL_MAX; + + double gamma = DBL_MAX; + double vega = DBL_MAX; + double theta = DBL_MAX; + double undPrice = DBL_MAX; + + DECODE_FIELD( version); + DECODE_FIELD( tickerId); + DECODE_FIELD( tickTypeInt); + + DECODE_FIELD( impliedVol); + DECODE_FIELD( delta); + + if( impliedVol < 0) { // -1 is the "not computed" indicator + impliedVol = DBL_MAX; + } + if( delta > 1 || delta < -1) { // -2 is the "not computed" indicator + delta = DBL_MAX; + } + + if( version >= 6 || tickTypeInt == MODEL_OPTION) { // introduced in version == 5 + + DECODE_FIELD( optPrice); + DECODE_FIELD( pvDividend); + + if( optPrice < 0) { // -1 is the "not computed" indicator + optPrice = DBL_MAX; + } + if( pvDividend < 0) { // -1 is the "not computed" indicator + pvDividend = DBL_MAX; + } + } + if( version >= 6) { + + DECODE_FIELD( gamma); + DECODE_FIELD( vega); + DECODE_FIELD( theta); + DECODE_FIELD( undPrice); + + if( gamma > 1 || gamma < -1) { // -2 is the "not yet computed" indicator + gamma = DBL_MAX; + } + if( vega > 1 || vega < -1) { // -2 is the "not yet computed" indicator + vega = DBL_MAX; + } + if( theta > 1 || theta < -1) { // -2 is the "not yet computed" indicator + theta = DBL_MAX; + } + if( undPrice < 0) { // -1 is the "not computed" indicator + undPrice = DBL_MAX; + } + } + m_pEWrapper->tickOptionComputation( tickerId, (TickType)tickTypeInt, + impliedVol, delta, optPrice, pvDividend, gamma, vega, theta, undPrice); + + return ptr; +} + +const char* EDecoder::processTickGenericMsg(const char* ptr, const char* endPtr) { + int version; + int tickerId; + int tickTypeInt; + double value; + + DECODE_FIELD( version); + DECODE_FIELD( tickerId); + DECODE_FIELD( tickTypeInt); + DECODE_FIELD( value); + + m_pEWrapper->tickGeneric( tickerId, (TickType)tickTypeInt, value); + + return ptr; +} + +const char* EDecoder::processTickStringMsg(const char* ptr, const char* endPtr) { + int version; + int tickerId; + int tickTypeInt; + std::string value; + + DECODE_FIELD( version); + DECODE_FIELD( tickerId); + DECODE_FIELD( tickTypeInt); + DECODE_FIELD( value); + + m_pEWrapper->tickString( tickerId, (TickType)tickTypeInt, value); + + return ptr; +} + +const char* EDecoder::processTickEfpMsg(const char* ptr, const char* endPtr) { + int version; + int tickerId; + int tickTypeInt; + double basisPoints; + std::string formattedBasisPoints; + double impliedFuturesPrice; + int holdDays; + std::string futureLastTradeDate; + double dividendImpact; + double dividendsToLastTradeDate; + + DECODE_FIELD( version); + DECODE_FIELD( tickerId); + DECODE_FIELD( tickTypeInt); + DECODE_FIELD( basisPoints); + DECODE_FIELD( formattedBasisPoints); + DECODE_FIELD( impliedFuturesPrice); + DECODE_FIELD( holdDays); + DECODE_FIELD( futureLastTradeDate); + DECODE_FIELD( dividendImpact); + DECODE_FIELD( dividendsToLastTradeDate); + + m_pEWrapper->tickEFP( tickerId, (TickType)tickTypeInt, basisPoints, formattedBasisPoints, + impliedFuturesPrice, holdDays, futureLastTradeDate, dividendImpact, dividendsToLastTradeDate); + + return ptr; +} + +const char* EDecoder::processOrderStatusMsg(const char* ptr, const char* endPtr) { + int version; + int orderId; + std::string status; + double filled; + double remaining; + double avgFillPrice; + int permId; + int parentId; + double lastFillPrice; + int clientId; + std::string whyHeld; + + DECODE_FIELD( version); + DECODE_FIELD( orderId); + DECODE_FIELD( status); + + if (m_serverVersion >= MIN_SERVER_VER_FRACTIONAL_POSITIONS) + { + DECODE_FIELD( filled); + } + else + { + int iFilled; + + DECODE_FIELD(iFilled); + + filled = iFilled; + } + + if (m_serverVersion >= MIN_SERVER_VER_FRACTIONAL_POSITIONS) + { + DECODE_FIELD( remaining); + } + else + { + int iRemaining; + + DECODE_FIELD(iRemaining); + + remaining = iRemaining; + } + + DECODE_FIELD( avgFillPrice); + + DECODE_FIELD( permId); // ver 2 field + DECODE_FIELD( parentId); // ver 3 field + DECODE_FIELD( lastFillPrice); // ver 4 field + DECODE_FIELD( clientId); // ver 5 field + DECODE_FIELD( whyHeld); // ver 6 field + + m_pEWrapper->orderStatus( orderId, status, filled, remaining, + avgFillPrice, permId, parentId, lastFillPrice, clientId, whyHeld); + + + return ptr; +} + +const char* EDecoder::processErrMsgMsg(const char* ptr, const char* endPtr) { + int version; + int id; // ver 2 field + int errorCode; // ver 2 field + std::string errorMsg; + + DECODE_FIELD( version); + DECODE_FIELD( id); + DECODE_FIELD( errorCode); + DECODE_FIELD( errorMsg); + + m_pEWrapper->error( id, errorCode, errorMsg); + + return ptr; +} + +const char* EDecoder::processOpenOrderMsg(const char* ptr, const char* endPtr) { + // read version + int version; + DECODE_FIELD( version); + + // read order id + Order order; + DECODE_FIELD( order.orderId); + + // read contract fields + Contract contract; + DECODE_FIELD( contract.conId); // ver 17 field + DECODE_FIELD( contract.symbol); + DECODE_FIELD( contract.secType); + DECODE_FIELD( contract.lastTradeDateOrContractMonth); + DECODE_FIELD( contract.strike); + DECODE_FIELD( contract.right); + if (version >= 32) { + DECODE_FIELD( contract.multiplier); + } + DECODE_FIELD( contract.exchange); + DECODE_FIELD( contract.currency); + DECODE_FIELD( contract.localSymbol); // ver 2 field + if (version >= 32) { + DECODE_FIELD( contract.tradingClass); + } + + // read order fields + DECODE_FIELD( order.action); + + if (m_serverVersion >= MIN_SERVER_VER_FRACTIONAL_POSITIONS) + { + DECODE_FIELD( order.totalQuantity); + } + else + { + long lTotalQuantity; + + DECODE_FIELD(lTotalQuantity); + + order.totalQuantity = lTotalQuantity; + } + + DECODE_FIELD( order.orderType); + if (version < 29) { + DECODE_FIELD( order.lmtPrice); + } + else { + DECODE_FIELD_MAX( order.lmtPrice); + } + if (version < 30) { + DECODE_FIELD( order.auxPrice); + } + else { + DECODE_FIELD_MAX( order.auxPrice); + } + DECODE_FIELD( order.tif); + DECODE_FIELD( order.ocaGroup); + DECODE_FIELD( order.account); + DECODE_FIELD( order.openClose); + + int orderOriginInt; + DECODE_FIELD( orderOriginInt); + order.origin = (Origin)orderOriginInt; + + DECODE_FIELD( order.orderRef); + DECODE_FIELD( order.clientId); // ver 3 field + DECODE_FIELD( order.permId); // ver 4 field + + //if( version < 18) { + // // will never happen + // /* order.ignoreRth = */ readBoolFromInt(); + //} + + DECODE_FIELD( order.outsideRth); // ver 18 field + DECODE_FIELD( order.hidden); // ver 4 field + DECODE_FIELD( order.discretionaryAmt); // ver 4 field + DECODE_FIELD( order.goodAfterTime); // ver 5 field + + { + std::string sharesAllocation; + DECODE_FIELD( sharesAllocation); // deprecated ver 6 field + } + + DECODE_FIELD( order.faGroup); // ver 7 field + DECODE_FIELD( order.faMethod); // ver 7 field + DECODE_FIELD( order.faPercentage); // ver 7 field + DECODE_FIELD( order.faProfile); // ver 7 field + + if( m_serverVersion >= MIN_SERVER_VER_MODELS_SUPPORT ) { + DECODE_FIELD( order.modelCode); + } + + DECODE_FIELD( order.goodTillDate); // ver 8 field + + DECODE_FIELD( order.rule80A); // ver 9 field + DECODE_FIELD_MAX( order.percentOffset); // ver 9 field + DECODE_FIELD( order.settlingFirm); // ver 9 field + DECODE_FIELD( order.shortSaleSlot); // ver 9 field + DECODE_FIELD( order.designatedLocation); // ver 9 field + if( m_serverVersion == MIN_SERVER_VER_SSHORTX_OLD){ + int exemptCode; + DECODE_FIELD( exemptCode); + } + else if( version >= 23){ + DECODE_FIELD( order.exemptCode); + } + DECODE_FIELD( order.auctionStrategy); // ver 9 field + DECODE_FIELD_MAX( order.startingPrice); // ver 9 field + DECODE_FIELD_MAX( order.stockRefPrice); // ver 9 field + DECODE_FIELD_MAX( order.delta); // ver 9 field + DECODE_FIELD_MAX( order.stockRangeLower); // ver 9 field + DECODE_FIELD_MAX( order.stockRangeUpper); // ver 9 field + DECODE_FIELD( order.displaySize); // ver 9 field + + //if( version < 18) { + // // will never happen + // /* order.rthOnly = */ readBoolFromInt(); + //} + + DECODE_FIELD( order.blockOrder); // ver 9 field + DECODE_FIELD( order.sweepToFill); // ver 9 field + DECODE_FIELD( order.allOrNone); // ver 9 field + DECODE_FIELD_MAX( order.minQty); // ver 9 field + DECODE_FIELD( order.ocaType); // ver 9 field + DECODE_FIELD( order.eTradeOnly); // ver 9 field + DECODE_FIELD( order.firmQuoteOnly); // ver 9 field + DECODE_FIELD_MAX( order.nbboPriceCap); // ver 9 field + + DECODE_FIELD( order.parentId); // ver 10 field + DECODE_FIELD( order.triggerMethod); // ver 10 field + + DECODE_FIELD_MAX( order.volatility); // ver 11 field + DECODE_FIELD( order.volatilityType); // ver 11 field + DECODE_FIELD( order.deltaNeutralOrderType); // ver 11 field (had a hack for ver 11) + DECODE_FIELD_MAX( order.deltaNeutralAuxPrice); // ver 12 field + + if (version >= 27 && !order.deltaNeutralOrderType.empty()) { + DECODE_FIELD( order.deltaNeutralConId); + DECODE_FIELD( order.deltaNeutralSettlingFirm); + DECODE_FIELD( order.deltaNeutralClearingAccount); + DECODE_FIELD( order.deltaNeutralClearingIntent); + } + + if (version >= 31 && !order.deltaNeutralOrderType.empty()) { + DECODE_FIELD( order.deltaNeutralOpenClose); + DECODE_FIELD( order.deltaNeutralShortSale); + DECODE_FIELD( order.deltaNeutralShortSaleSlot); + DECODE_FIELD( order.deltaNeutralDesignatedLocation); + } + + DECODE_FIELD( order.continuousUpdate); // ver 11 field + + // will never happen + //if( m_serverVersion == 26) { + // order.stockRangeLower = readDouble(); + // order.stockRangeUpper = readDouble(); + //} + + DECODE_FIELD( order.referencePriceType); // ver 11 field + + DECODE_FIELD_MAX( order.trailStopPrice); // ver 13 field + + if (version >= 30) { + DECODE_FIELD_MAX( order.trailingPercent); + } + + DECODE_FIELD_MAX( order.basisPoints); // ver 14 field + DECODE_FIELD_MAX( order.basisPointsType); // ver 14 field + DECODE_FIELD( contract.comboLegsDescrip); // ver 14 field + + if (version >= 29) { + int comboLegsCount = 0; + DECODE_FIELD( comboLegsCount); + + if (comboLegsCount > 0) { + Contract::ComboLegListSPtr comboLegs( new Contract::ComboLegList); + comboLegs->reserve( comboLegsCount); + for (int i = 0; i < comboLegsCount; ++i) { + ComboLegSPtr comboLeg( new ComboLeg()); + DECODE_FIELD( comboLeg->conId); + DECODE_FIELD( comboLeg->ratio); + DECODE_FIELD( comboLeg->action); + DECODE_FIELD( comboLeg->exchange); + DECODE_FIELD( comboLeg->openClose); + DECODE_FIELD( comboLeg->shortSaleSlot); + DECODE_FIELD( comboLeg->designatedLocation); + DECODE_FIELD( comboLeg->exemptCode); + + comboLegs->push_back( comboLeg); + } + contract.comboLegs = comboLegs; + } + + int orderComboLegsCount = 0; + DECODE_FIELD( orderComboLegsCount); + if (orderComboLegsCount > 0) { + Order::OrderComboLegListSPtr orderComboLegs( new Order::OrderComboLegList); + orderComboLegs->reserve( orderComboLegsCount); + for (int i = 0; i < orderComboLegsCount; ++i) { + OrderComboLegSPtr orderComboLeg( new OrderComboLeg()); + DECODE_FIELD_MAX( orderComboLeg->price); + + orderComboLegs->push_back( orderComboLeg); + } + order.orderComboLegs = orderComboLegs; + } + } + + if (version >= 26) { + int smartComboRoutingParamsCount = 0; + DECODE_FIELD( smartComboRoutingParamsCount); + if( smartComboRoutingParamsCount > 0) { + TagValueListSPtr smartComboRoutingParams( new TagValueList); + smartComboRoutingParams->reserve( smartComboRoutingParamsCount); + for( int i = 0; i < smartComboRoutingParamsCount; ++i) { + TagValueSPtr tagValue( new TagValue()); + DECODE_FIELD( tagValue->tag); + DECODE_FIELD( tagValue->value); + smartComboRoutingParams->push_back( tagValue); + } + order.smartComboRoutingParams = smartComboRoutingParams; + } + } + + if( version >= 20) { + DECODE_FIELD_MAX( order.scaleInitLevelSize); + DECODE_FIELD_MAX( order.scaleSubsLevelSize); + } + else { + // ver 15 fields + int notSuppScaleNumComponents = 0; + DECODE_FIELD_MAX( notSuppScaleNumComponents); + DECODE_FIELD_MAX( order.scaleInitLevelSize); // scaleComponectSize + } + DECODE_FIELD_MAX( order.scalePriceIncrement); // ver 15 field + + if (version >= 28 && order.scalePriceIncrement > 0.0 && order.scalePriceIncrement != UNSET_DOUBLE) { + DECODE_FIELD_MAX( order.scalePriceAdjustValue); + DECODE_FIELD_MAX( order.scalePriceAdjustInterval); + DECODE_FIELD_MAX( order.scaleProfitOffset); + DECODE_FIELD( order.scaleAutoReset); + DECODE_FIELD_MAX( order.scaleInitPosition); + DECODE_FIELD_MAX( order.scaleInitFillQty); + DECODE_FIELD( order.scaleRandomPercent); + } + + if( version >= 24) { + DECODE_FIELD( order.hedgeType); + if( !order.hedgeType.empty()) { + DECODE_FIELD( order.hedgeParam); + } + } + + if( version >= 25) { + DECODE_FIELD( order.optOutSmartRouting); + } + + DECODE_FIELD( order.clearingAccount); // ver 19 field + DECODE_FIELD( order.clearingIntent); // ver 19 field + + if( version >= 22) { + DECODE_FIELD( order.notHeld); + } + + UnderComp underComp; + if( version >= 20) { + bool underCompPresent = false; + DECODE_FIELD(underCompPresent); + if( underCompPresent){ + DECODE_FIELD(underComp.conId); + DECODE_FIELD(underComp.delta); + DECODE_FIELD(underComp.price); + contract.underComp = &underComp; + } + } + + + if( version >= 21) { + DECODE_FIELD( order.algoStrategy); + if( !order.algoStrategy.empty()) { + int algoParamsCount = 0; + DECODE_FIELD( algoParamsCount); + if( algoParamsCount > 0) { + TagValueListSPtr algoParams( new TagValueList); + algoParams->reserve( algoParamsCount); + for( int i = 0; i < algoParamsCount; ++i) { + TagValueSPtr tagValue( new TagValue()); + DECODE_FIELD( tagValue->tag); + DECODE_FIELD( tagValue->value); + algoParams->push_back( tagValue); + } + order.algoParams = algoParams; + } + } + } + + if (version >= 33) { + DECODE_FIELD(order.solicited); + } + + OrderState orderState; + + DECODE_FIELD( order.whatIf); // ver 16 field + + DECODE_FIELD( orderState.status); // ver 16 field + DECODE_FIELD( orderState.initMargin); // ver 16 field + DECODE_FIELD( orderState.maintMargin); // ver 16 field + DECODE_FIELD( orderState.equityWithLoan); // ver 16 field + DECODE_FIELD_MAX( orderState.commission); // ver 16 field + DECODE_FIELD_MAX( orderState.minCommission); // ver 16 field + DECODE_FIELD_MAX( orderState.maxCommission); // ver 16 field + DECODE_FIELD( orderState.commissionCurrency); // ver 16 field + DECODE_FIELD( orderState.warningText); // ver 16 field + + if (version >= 34) { + DECODE_FIELD(order.randomizeSize); + DECODE_FIELD(order.randomizePrice); + } + + if (m_serverVersion >= MIN_SERVER_VER_PEGGED_TO_BENCHMARK) { + if (order.orderType == "PEG BENCH") { + DECODE_FIELD(order.referenceContractId); + DECODE_FIELD(order.isPeggedChangeAmountDecrease); + DECODE_FIELD(order.peggedChangeAmount); + DECODE_FIELD(order.referenceChangeAmount); + DECODE_FIELD(order.referenceExchangeId); + } + + int conditionsSize; + + DECODE_FIELD(conditionsSize); + + if (conditionsSize > 0) { + for (; conditionsSize; conditionsSize--) { + int conditionType; + + DECODE_FIELD(conditionType); + + ibapi::shared_ptr item = ibapi::shared_ptr(OrderCondition::create((OrderCondition::OrderConditionType)conditionType)); + + if (!(ptr = item->readExternal(ptr, endPtr))) + return 0; + + order.conditions.push_back(item); + } + + DECODE_FIELD(order.conditionsIgnoreRth); + DECODE_FIELD(order.conditionsCancelOrder); + } + + DECODE_FIELD(order.adjustedOrderType); + DECODE_FIELD(order.triggerPrice); + DECODE_FIELD(order.trailStopPrice); + DECODE_FIELD(order.lmtPriceOffset); + DECODE_FIELD(order.adjustedStopPrice); + DECODE_FIELD(order.adjustedStopLimitPrice); + DECODE_FIELD(order.adjustedTrailingAmount); + DECODE_FIELD(order.adjustableTrailingUnit); + } + + if (m_serverVersion >= MIN_SERVER_VER_SOFT_DOLLAR_TIER) { + std::string name, value, displayName; + + DECODE_FIELD(name); + DECODE_FIELD(value); + DECODE_FIELD(displayName); + + order.softDollarTier = SoftDollarTier(name, value, displayName); + } + + m_pEWrapper->openOrder( (OrderId)order.orderId, contract, order, orderState); + + return ptr; +} + +const char* EDecoder::processAcctValueMsg(const char* ptr, const char* endPtr) { + int version; + std::string key; + std::string val; + std::string cur; + std::string accountName; + + DECODE_FIELD( version); + DECODE_FIELD( key); + DECODE_FIELD( val); + DECODE_FIELD( cur); + DECODE_FIELD( accountName); // ver 2 field + + m_pEWrapper->updateAccountValue( key, val, cur, accountName); + return ptr; +} + +const char* EDecoder::processPortfolioValueMsg(const char* ptr, const char* endPtr) { + // decode version + int version; + DECODE_FIELD( version); + + // read contract fields + Contract contract; + DECODE_FIELD( contract.conId); // ver 6 field + DECODE_FIELD( contract.symbol); + DECODE_FIELD( contract.secType); + DECODE_FIELD( contract.lastTradeDateOrContractMonth); + DECODE_FIELD( contract.strike); + DECODE_FIELD( contract.right); + + if( version >= 7) { + DECODE_FIELD( contract.multiplier); + DECODE_FIELD( contract.primaryExchange); + } + + DECODE_FIELD( contract.currency); + DECODE_FIELD( contract.localSymbol); // ver 2 field + if (version >= 8) { + DECODE_FIELD( contract.tradingClass); + } + + double position; + double marketPrice; + double marketValue; + double averageCost; + double unrealizedPNL; + double realizedPNL; + + if (m_serverVersion >= MIN_SERVER_VER_FRACTIONAL_POSITIONS) + { + DECODE_FIELD( position); + } + else + { + int iPosition; + + DECODE_FIELD(iPosition); + + position = iPosition; + } + + DECODE_FIELD( marketPrice); + DECODE_FIELD( marketValue); + DECODE_FIELD( averageCost); // ver 3 field + DECODE_FIELD( unrealizedPNL); // ver 3 field + DECODE_FIELD( realizedPNL); // ver 3 field + + std::string accountName; + DECODE_FIELD( accountName); // ver 4 field + + if( version == 6 && m_serverVersion == 39) { + DECODE_FIELD( contract.primaryExchange); + } + + m_pEWrapper->updatePortfolio( contract, + position, marketPrice, marketValue, averageCost, + unrealizedPNL, realizedPNL, accountName); + + return ptr; +} + +const char* EDecoder::processAcctUpdateTimeMsg(const char* ptr, const char* endPtr) { + int version; + std::string accountTime; + + DECODE_FIELD( version); + DECODE_FIELD( accountTime); + + m_pEWrapper->updateAccountTime( accountTime); + + return ptr; +} + +const char* EDecoder::processNextValidIdMsg(const char* ptr, const char* endPtr) { + int version; + int orderId; + + DECODE_FIELD( version); + DECODE_FIELD( orderId); + + m_pEWrapper->nextValidId(orderId); + + return ptr; +} + +const char* EDecoder::processContractDataMsg(const char* ptr, const char* endPtr) { + int version; + DECODE_FIELD( version); + + int reqId = -1; + if( version >= 3) { + DECODE_FIELD( reqId); + } + + ContractDetails contract; + DECODE_FIELD( contract.summary.symbol); + DECODE_FIELD( contract.summary.secType); + DECODE_FIELD( contract.summary.lastTradeDateOrContractMonth); + DECODE_FIELD( contract.summary.strike); + DECODE_FIELD( contract.summary.right); + DECODE_FIELD( contract.summary.exchange); + DECODE_FIELD( contract.summary.currency); + DECODE_FIELD( contract.summary.localSymbol); + DECODE_FIELD( contract.marketName); + DECODE_FIELD( contract.summary.tradingClass); + DECODE_FIELD( contract.summary.conId); + DECODE_FIELD( contract.minTick); + DECODE_FIELD( contract.summary.multiplier); + DECODE_FIELD( contract.orderTypes); + DECODE_FIELD( contract.validExchanges); + DECODE_FIELD( contract.priceMagnifier); // ver 2 field + if( version >= 4) { + DECODE_FIELD( contract.underConId); + } + if( version >= 5) { + DECODE_FIELD( contract.longName); + DECODE_FIELD( contract.summary.primaryExchange); + } + if( version >= 6) { + DECODE_FIELD( contract.contractMonth); + DECODE_FIELD( contract.industry); + DECODE_FIELD( contract.category); + DECODE_FIELD( contract.subcategory); + DECODE_FIELD( contract.timeZoneId); + DECODE_FIELD( contract.tradingHours); + DECODE_FIELD( contract.liquidHours); + } + if( version >= 8) { + DECODE_FIELD( contract.evRule); + DECODE_FIELD( contract.evMultiplier); + } + if( version >= 7) { + int secIdListCount = 0; + DECODE_FIELD( secIdListCount); + if( secIdListCount > 0) { + TagValueListSPtr secIdList( new TagValueList); + secIdList->reserve( secIdListCount); + for( int i = 0; i < secIdListCount; ++i) { + TagValueSPtr tagValue( new TagValue()); + DECODE_FIELD( tagValue->tag); + DECODE_FIELD( tagValue->value); + secIdList->push_back( tagValue); + } + contract.secIdList = secIdList; + } + } + + m_pEWrapper->contractDetails( reqId, contract); + + return ptr; +} + +const char* EDecoder::processBondContractDataMsg(const char* ptr, const char* endPtr) { + int version; + DECODE_FIELD( version); + + int reqId = -1; + if( version >= 3) { + DECODE_FIELD( reqId); + } + + ContractDetails contract; + DECODE_FIELD( contract.summary.symbol); + DECODE_FIELD( contract.summary.secType); + DECODE_FIELD( contract.cusip); + DECODE_FIELD( contract.coupon); + DECODE_FIELD( contract.maturity); + DECODE_FIELD( contract.issueDate); + DECODE_FIELD( contract.ratings); + DECODE_FIELD( contract.bondType); + DECODE_FIELD( contract.couponType); + DECODE_FIELD( contract.convertible); + DECODE_FIELD( contract.callable); + DECODE_FIELD( contract.putable); + DECODE_FIELD( contract.descAppend); + DECODE_FIELD( contract.summary.exchange); + DECODE_FIELD( contract.summary.currency); + DECODE_FIELD( contract.marketName); + DECODE_FIELD( contract.summary.tradingClass); + DECODE_FIELD( contract.summary.conId); + DECODE_FIELD( contract.minTick); + DECODE_FIELD( contract.orderTypes); + DECODE_FIELD( contract.validExchanges); + DECODE_FIELD( contract.nextOptionDate); // ver 2 field + DECODE_FIELD( contract.nextOptionType); // ver 2 field + DECODE_FIELD( contract.nextOptionPartial); // ver 2 field + DECODE_FIELD( contract.notes); // ver 2 field + if( version >= 4) { + DECODE_FIELD( contract.longName); + } + if( version >= 6) { + DECODE_FIELD( contract.evRule); + DECODE_FIELD( contract.evMultiplier); + } + if( version >= 5) { + int secIdListCount = 0; + DECODE_FIELD( secIdListCount); + if( secIdListCount > 0) { + TagValueListSPtr secIdList( new TagValueList); + secIdList->reserve( secIdListCount); + for( int i = 0; i < secIdListCount; ++i) { + TagValueSPtr tagValue( new TagValue()); + DECODE_FIELD( tagValue->tag); + DECODE_FIELD( tagValue->value); + secIdList->push_back( tagValue); + } + contract.secIdList = secIdList; + } + } + + m_pEWrapper->bondContractDetails( reqId, contract); + + return ptr; +} + +const char* EDecoder::processExecutionDataMsg(const char* ptr, const char* endPtr) { + int version; + DECODE_FIELD( version); + + int reqId = -1; + if( version >= 7) { + DECODE_FIELD(reqId); + } + + int orderId; + DECODE_FIELD( orderId); + + // decode contract fields + Contract contract; + DECODE_FIELD( contract.conId); // ver 5 field + DECODE_FIELD( contract.symbol); + DECODE_FIELD( contract.secType); + DECODE_FIELD( contract.lastTradeDateOrContractMonth); + DECODE_FIELD( contract.strike); + DECODE_FIELD( contract.right); + if( version >= 9) { + DECODE_FIELD( contract.multiplier); + } + DECODE_FIELD( contract.exchange); + DECODE_FIELD( contract.currency); + DECODE_FIELD( contract.localSymbol); + if (version >= 10) { + DECODE_FIELD( contract.tradingClass); + } + + // decode execution fields + Execution exec; + exec.orderId = orderId; + DECODE_FIELD( exec.execId); + DECODE_FIELD( exec.time); + DECODE_FIELD( exec.acctNumber); + DECODE_FIELD( exec.exchange); + DECODE_FIELD( exec.side); + + if (m_serverVersion >= MIN_SERVER_VER_FRACTIONAL_POSITIONS) { + DECODE_FIELD( exec.shares) + } + else { + int iShares; + + DECODE_FIELD(iShares); + + exec.shares = iShares; + } + + DECODE_FIELD( exec.price); + DECODE_FIELD( exec.permId); // ver 2 field + DECODE_FIELD( exec.clientId); // ver 3 field + DECODE_FIELD( exec.liquidation); // ver 4 field + + if( version >= 6) { + DECODE_FIELD( exec.cumQty); + DECODE_FIELD( exec.avgPrice); + } + + if( version >= 8) { + DECODE_FIELD( exec.orderRef); + } + + if( version >= 9) { + DECODE_FIELD( exec.evRule); + DECODE_FIELD( exec.evMultiplier); + } + if( m_serverVersion >= MIN_SERVER_VER_MODELS_SUPPORT) { + DECODE_FIELD( exec.modelCode); + } + + m_pEWrapper->execDetails( reqId, contract, exec); + + return ptr; +} + +const char* EDecoder::processMarketDepthMsg(const char* ptr, const char* endPtr) { + int version; + int id; + int position; + int operation; + int side; + double price; + int size; + + DECODE_FIELD( version); + DECODE_FIELD( id); + DECODE_FIELD( position); + DECODE_FIELD( operation); + DECODE_FIELD( side); + DECODE_FIELD( price); + DECODE_FIELD( size); + + m_pEWrapper->updateMktDepth( id, position, operation, side, price, size); + + return ptr; +} + +const char* EDecoder::processMarketDepthL2Msg(const char* ptr, const char* endPtr) { + int version; + int id; + int position; + std::string marketMaker; + int operation; + int side; + double price; + int size; + + DECODE_FIELD( version); + DECODE_FIELD( id); + DECODE_FIELD( position); + DECODE_FIELD( marketMaker); + DECODE_FIELD( operation); + DECODE_FIELD( side); + DECODE_FIELD( price); + DECODE_FIELD( size); + + m_pEWrapper->updateMktDepthL2( id, position, marketMaker, operation, side, + price, size); + + return ptr; +} + +const char* EDecoder::processNewsBulletinsMsg(const char* ptr, const char* endPtr) { + int version; + int msgId; + int msgType; + std::string newsMessage; + std::string originatingExch; + + DECODE_FIELD( version); + DECODE_FIELD( msgId); + DECODE_FIELD( msgType); + DECODE_FIELD( newsMessage); + DECODE_FIELD( originatingExch); + + m_pEWrapper->updateNewsBulletin( msgId, msgType, newsMessage, originatingExch); + + return ptr; +} + +const char* EDecoder::processManagedAcctsMsg(const char* ptr, const char* endPtr) { + int version; + std::string accountsList; + + DECODE_FIELD( version); + DECODE_FIELD( accountsList); + + m_pEWrapper->managedAccounts( accountsList); + + return ptr; +} + +const char* EDecoder::processReceiveFaMsg(const char* ptr, const char* endPtr) { + int version; + int faDataTypeInt; + std::string cxml; + + DECODE_FIELD( version); + DECODE_FIELD( faDataTypeInt); + DECODE_FIELD( cxml); + + m_pEWrapper->receiveFA( (faDataType)faDataTypeInt, cxml); + + return ptr; +} + +const char* EDecoder::processHistoricalDataMsg(const char* ptr, const char* endPtr) { + int version; + int reqId; + std::string startDateStr; + std::string endDateStr; + + DECODE_FIELD( version); + DECODE_FIELD( reqId); + DECODE_FIELD( startDateStr); // ver 2 field + DECODE_FIELD( endDateStr); // ver 2 field + + int itemCount; + DECODE_FIELD( itemCount); + + typedef std::vector BarDataList; + BarDataList bars; + + bars.reserve( itemCount); + + for( int ctr = 0; ctr < itemCount; ++ctr) { + + BarData bar; + DECODE_FIELD( bar.date); + DECODE_FIELD( bar.open); + DECODE_FIELD( bar.high); + DECODE_FIELD( bar.low); + DECODE_FIELD( bar.close); + DECODE_FIELD( bar.volume); + DECODE_FIELD( bar.average); + DECODE_FIELD( bar.hasGaps); + DECODE_FIELD( bar.barCount); // ver 3 field + + bars.push_back(bar); + } + + assert( (int)bars.size() == itemCount); + + for( int ctr = 0; ctr < itemCount; ++ctr) { + + const BarData& bar = bars[ctr]; + m_pEWrapper->historicalData( reqId, bar.date, bar.open, bar.high, bar.low, + bar.close, bar.volume, bar.barCount, bar.average, + bar.hasGaps == "true"); + } + + // send end of dataset marker + std::string finishedStr = std::string("finished-") + startDateStr + "-" + endDateStr; + m_pEWrapper->historicalData( reqId, finishedStr, -1, -1, -1, -1, -1, -1, -1, 0); + + return ptr; +} + +const char* EDecoder::processScannerDataMsg(const char* ptr, const char* endPtr) { + int version; + int tickerId; + + DECODE_FIELD( version); + DECODE_FIELD( tickerId); + + int numberOfElements; + DECODE_FIELD( numberOfElements); + + typedef std::vector ScanDataList; + ScanDataList scannerDataList; + + scannerDataList.reserve( numberOfElements); + + for( int ctr=0; ctr < numberOfElements; ++ctr) { + + ScanData data; + + DECODE_FIELD( data.rank); + DECODE_FIELD( data.contract.summary.conId); // ver 3 field + DECODE_FIELD( data.contract.summary.symbol); + DECODE_FIELD( data.contract.summary.secType); + DECODE_FIELD( data.contract.summary.lastTradeDateOrContractMonth); + DECODE_FIELD( data.contract.summary.strike); + DECODE_FIELD( data.contract.summary.right); + DECODE_FIELD( data.contract.summary.exchange); + DECODE_FIELD( data.contract.summary.currency); + DECODE_FIELD( data.contract.summary.localSymbol); + DECODE_FIELD( data.contract.marketName); + DECODE_FIELD( data.contract.summary.tradingClass); + DECODE_FIELD( data.distance); + DECODE_FIELD( data.benchmark); + DECODE_FIELD( data.projection); + DECODE_FIELD( data.legsStr); + + scannerDataList.push_back( data); + } + + assert( (int)scannerDataList.size() == numberOfElements); + + for( int ctr=0; ctr < numberOfElements; ++ctr) { + + const ScanData& data = scannerDataList[ctr]; + m_pEWrapper->scannerData( tickerId, data.rank, data.contract, + data.distance, data.benchmark, data.projection, data.legsStr); + } + + m_pEWrapper->scannerDataEnd( tickerId); + + return ptr; +} + +const char* EDecoder::processScannerParametersMsg(const char* ptr, const char* endPtr) { + int version; + std::string xml; + + DECODE_FIELD( version); + DECODE_FIELD( xml); + + m_pEWrapper->scannerParameters( xml); + + return ptr; +} + +const char* EDecoder::processCurrentTimeMsg(const char* ptr, const char* endPtr) { + int version; + int time; + + DECODE_FIELD(version); + DECODE_FIELD(time); + + m_pEWrapper->currentTime( time); + + return ptr; +} + +const char* EDecoder::processRealTimeBarsMsg(const char* ptr, const char* endPtr) { + int version; + int reqId; + int time; + double open; + double high; + double low; + double close; + int volume; + double average; + int count; + + DECODE_FIELD( version); + DECODE_FIELD( reqId); + DECODE_FIELD( time); + DECODE_FIELD( open); + DECODE_FIELD( high); + DECODE_FIELD( low); + DECODE_FIELD( close); + DECODE_FIELD( volume); + DECODE_FIELD( average); + DECODE_FIELD( count); + + m_pEWrapper->realtimeBar( reqId, time, open, high, low, close, + volume, average, count); + + return ptr; +} + +const char* EDecoder::processFundamentalDataMsg(const char* ptr, const char* endPtr) { + int version; + int reqId; + std::string data; + + DECODE_FIELD( version); + DECODE_FIELD( reqId); + DECODE_FIELD( data); + + m_pEWrapper->fundamentalData( reqId, data); + + return ptr; +} + +const char* EDecoder::processContractDataEndMsg(const char* ptr, const char* endPtr) { + int version; + int reqId; + + DECODE_FIELD( version); + DECODE_FIELD( reqId); + + m_pEWrapper->contractDetailsEnd( reqId); + + return ptr; +} + +const char* EDecoder::processOpenOrderEndMsg(const char* ptr, const char* endPtr) { + int version; + + DECODE_FIELD( version); + + m_pEWrapper->openOrderEnd(); + + return ptr; +} + +const char* EDecoder::processAcctDownloadEndMsg(const char* ptr, const char* endPtr) { + int version; + std::string account; + + DECODE_FIELD( version); + DECODE_FIELD( account); + + m_pEWrapper->accountDownloadEnd( account); + + return ptr; +} + +const char* EDecoder::processExecutionDataEndMsg(const char* ptr, const char* endPtr) { + int version; + int reqId; + + DECODE_FIELD( version); + DECODE_FIELD( reqId); + + m_pEWrapper->execDetailsEnd( reqId); + + return ptr; +} + +const char* EDecoder::processDeltaNeutralValidationMsg(const char* ptr, const char* endPtr) { + int version; + int reqId; + + DECODE_FIELD( version); + DECODE_FIELD( reqId); + + UnderComp underComp; + + DECODE_FIELD( underComp.conId); + DECODE_FIELD( underComp.delta); + DECODE_FIELD( underComp.price); + + m_pEWrapper->deltaNeutralValidation( reqId, underComp); + + return ptr; +} + +const char* EDecoder::processTickSnapshotEndMsg(const char* ptr, const char* endPtr) { + int version; + int reqId; + + DECODE_FIELD( version); + DECODE_FIELD( reqId); + + m_pEWrapper->tickSnapshotEnd( reqId); + + return ptr; +} + +const char* EDecoder::processMarketDataTypeMsg(const char* ptr, const char* endPtr) { + int version; + int reqId; + int marketDataType; + + DECODE_FIELD( version); + DECODE_FIELD( reqId); + DECODE_FIELD( marketDataType); + + m_pEWrapper->marketDataType( reqId, marketDataType); + + return ptr; +} + +const char* EDecoder::processCommissionReportMsg(const char* ptr, const char* endPtr) { + int version; + DECODE_FIELD( version); + + CommissionReport commissionReport; + DECODE_FIELD( commissionReport.execId); + DECODE_FIELD( commissionReport.commission); + DECODE_FIELD( commissionReport.currency); + DECODE_FIELD( commissionReport.realizedPNL); + DECODE_FIELD( commissionReport.yield); + DECODE_FIELD( commissionReport.yieldRedemptionDate); + + m_pEWrapper->commissionReport( commissionReport); + + return ptr; +} + +const char* EDecoder::processPositionDataMsg(const char* ptr, const char* endPtr) { + int version; + std::string account; + double position; + double avgCost = 0; + + DECODE_FIELD( version); + DECODE_FIELD( account); + + // decode contract fields + Contract contract; + DECODE_FIELD( contract.conId); + DECODE_FIELD( contract.symbol); + DECODE_FIELD( contract.secType); + DECODE_FIELD( contract.lastTradeDateOrContractMonth); + DECODE_FIELD( contract.strike); + DECODE_FIELD( contract.right); + DECODE_FIELD( contract.multiplier); + DECODE_FIELD( contract.exchange); + DECODE_FIELD( contract.currency); + DECODE_FIELD( contract.localSymbol); + if (version >= 2) { + DECODE_FIELD( contract.tradingClass); + } + + if (m_serverVersion >= MIN_SERVER_VER_FRACTIONAL_POSITIONS) + { + DECODE_FIELD( position); + } + else + { + int iPosition; + + DECODE_FIELD(iPosition); + + position = iPosition; + } + + if (version >= 3) { + DECODE_FIELD( avgCost); + } + + m_pEWrapper->position( account, contract, position, avgCost); + + return ptr; +} + +const char* EDecoder::processPositionEndMsg(const char* ptr, const char* endPtr) { + int version; + + DECODE_FIELD( version); + + m_pEWrapper->positionEnd(); + + return ptr; +} + +const char* EDecoder::processAccountSummaryMsg(const char* ptr, const char* endPtr) { + int version; + int reqId; + std::string account; + std::string tag; + std::string value; + std::string curency; + + DECODE_FIELD( version); + DECODE_FIELD( reqId); + DECODE_FIELD( account); + DECODE_FIELD( tag); + DECODE_FIELD( value); + DECODE_FIELD( curency); + + m_pEWrapper->accountSummary( reqId, account, tag, value, curency); + + return ptr; +} + +const char* EDecoder::processAccountSummaryEndMsg(const char* ptr, const char* endPtr) { + int version; + int reqId; + + DECODE_FIELD( version); + DECODE_FIELD( reqId); + + m_pEWrapper->accountSummaryEnd( reqId); + + return ptr; +} + +const char* EDecoder::processVerifyMessageApiMsg(const char* ptr, const char* endPtr) { + int version; + std::string apiData; + + DECODE_FIELD( version); + DECODE_FIELD( apiData); + + m_pEWrapper->verifyMessageAPI( apiData); + + return ptr; +} + +const char* EDecoder::processVerifyCompletedMsg(const char* ptr, const char* endPtr) { + int version; + std::string isSuccessful; + std::string errorText; + + DECODE_FIELD( version); + DECODE_FIELD( isSuccessful); + DECODE_FIELD( errorText); + + bool bRes = isSuccessful == "true"; + + m_pEWrapper->verifyCompleted( bRes, errorText); + + return ptr; +} + +const char* EDecoder::processDisplayGroupListMsg(const char* ptr, const char* endPtr) { + int version; + int reqId; + std::string groups; + + DECODE_FIELD( version); + DECODE_FIELD( reqId); + DECODE_FIELD( groups); + + m_pEWrapper->displayGroupList( reqId, groups); + + return ptr; +} + +const char* EDecoder::processDisplayGroupUpdatedMsg(const char* ptr, const char* endPtr) { + int version; + int reqId; + std::string contractInfo; + + DECODE_FIELD( version); + DECODE_FIELD( reqId); + DECODE_FIELD( contractInfo); + + m_pEWrapper->displayGroupUpdated( reqId, contractInfo); + + return ptr; +} + +const char* EDecoder::processVerifyAndAuthMessageApiMsg(const char* ptr, const char* endPtr) { + int version; + std::string apiData; + std::string xyzChallenge; + + DECODE_FIELD( version); + DECODE_FIELD( apiData); + DECODE_FIELD( xyzChallenge); + + m_pEWrapper->verifyAndAuthMessageAPI( apiData, xyzChallenge); + + return ptr; +} + +const char* EDecoder::processVerifyAndAuthCompletedMsg(const char* ptr, const char* endPtr) { + int version; + std::string isSuccessful; + std::string errorText; + + DECODE_FIELD( version); + DECODE_FIELD( isSuccessful); + DECODE_FIELD( errorText); + + bool bRes = isSuccessful == "true"; + + m_pEWrapper->verifyAndAuthCompleted( bRes, errorText); + + return ptr; +} + +const char* EDecoder::processPositionMultiMsg(const char* ptr, const char* endPtr) { + int version; + int reqId; + std::string account; + std::string modelCode; + double position; + double avgCost = 0; + + DECODE_FIELD( version); + DECODE_FIELD( reqId); + DECODE_FIELD( account); + + // decode contract fields + Contract contract; + DECODE_FIELD( contract.conId); + DECODE_FIELD( contract.symbol); + DECODE_FIELD( contract.secType); + DECODE_FIELD( contract.lastTradeDateOrContractMonth); + DECODE_FIELD( contract.strike); + DECODE_FIELD( contract.right); + DECODE_FIELD( contract.multiplier); + DECODE_FIELD( contract.exchange); + DECODE_FIELD( contract.currency); + DECODE_FIELD( contract.localSymbol); + DECODE_FIELD( contract.tradingClass); + DECODE_FIELD( position); + DECODE_FIELD( avgCost); + DECODE_FIELD( modelCode); + + m_pEWrapper->positionMulti( reqId, account, modelCode, contract, position, avgCost); + + return ptr; +} + +const char* EDecoder::processPositionMultiEndMsg(const char* ptr, const char* endPtr) { + int version; + int reqId; + + DECODE_FIELD( version); + DECODE_FIELD( reqId); + + m_pEWrapper->positionMultiEnd( reqId); + + return ptr; +} + +const char* EDecoder::processAccountUpdateMultiMsg(const char* ptr, const char* endPtr) { + int version; + int reqId; + std::string account; + std::string modelCode; + std::string key; + std::string value; + std::string currency; + + DECODE_FIELD( version); + DECODE_FIELD( reqId); + DECODE_FIELD( account); + DECODE_FIELD( modelCode); + DECODE_FIELD( key); + DECODE_FIELD( value); + DECODE_FIELD( currency); + + m_pEWrapper->accountUpdateMulti( reqId, account, modelCode, key, value, currency); + + return ptr; +} + +const char* EDecoder::processAccountUpdateMultiEndMsg(const char* ptr, const char* endPtr) { + int version; + int reqId; + + DECODE_FIELD( version); + DECODE_FIELD( reqId); + + m_pEWrapper->accountUpdateMultiEnd( reqId); + + return ptr; +} + +const char* EDecoder::processSecurityDefinitionOptionalParameterMsg(const char* ptr, const char* endPtr) { + int reqId; + std::string exchange; + int underlyingConId; + std::string tradingClass; + std::string multiplier; + int expirationsSize, strikesSize; + std::set expirations; + std::set strikes; + + DECODE_FIELD(reqId); + DECODE_FIELD(exchange); + DECODE_FIELD(underlyingConId); + DECODE_FIELD(tradingClass); + DECODE_FIELD(multiplier); + DECODE_FIELD(expirationsSize); + + for (int i = 0; i < expirationsSize; i++) { + std::string expiration; + + DECODE_FIELD(expiration); + + expirations.insert(expiration); + } + + DECODE_FIELD(strikesSize); + + for (int i = 0; i < strikesSize; i++) { + double strike; + + DECODE_FIELD(strike); + + strikes.insert(strike); + } + + m_pEWrapper->securityDefinitionOptionalParameter(reqId, exchange, underlyingConId, tradingClass, multiplier, expirations, strikes); + + return ptr; +} + +const char* EDecoder::processSecurityDefinitionOptionalParameterEndMsg(const char* ptr, const char* endPtr) { + int reqId; + + DECODE_FIELD(reqId); + + m_pEWrapper->securityDefinitionOptionalParameterEnd(reqId); + + return ptr; +} + +const char* EDecoder::processSoftDollarTiersMsg(const char* ptr, const char* endPtr) +{ + int reqId; + int nTiers; + + DECODE_FIELD(reqId); + DECODE_FIELD(nTiers); + + std::vector tiers(nTiers); + + for (int i = 0; i < nTiers; i++) { + std::string name, value, dislplayName; + + DECODE_FIELD(name); + DECODE_FIELD(value); + DECODE_FIELD(dislplayName); + + tiers[i] = SoftDollarTier(name, value, value); + } + + m_pEWrapper->softDollarTiers(reqId, tiers); + + return ptr; +} + + +int EDecoder::processConnectAck(const char*& beginPtr, const char* endPtr) +{ + // process a connect Ack message from the buffer; + // return number of bytes consumed + assert( beginPtr && beginPtr < endPtr); + + try { + + const char* ptr = beginPtr; + + // check server version + DECODE_FIELD( m_serverVersion); + + // handle redirects + if( m_serverVersion < 0) { + m_serverVersion = 0; + + std::string hostport, host; + int port = -1; + + DECODE_FIELD( hostport); + + std::string::size_type sep = hostport.find( ':'); + if( sep != std::string::npos) { + host = hostport.substr(0, sep); + port = atoi( hostport.c_str() + ++sep); + } + else { + host = hostport; + } + + if (m_pClientMsgSink) + m_pClientMsgSink->redirect(host.c_str(), port); + } else { + std::string twsTime; + + if( m_serverVersion >= 20) { + + DECODE_FIELD(twsTime); + } + + if (m_pClientMsgSink) + m_pClientMsgSink->serverVersion(m_serverVersion, twsTime.c_str()); + + m_pEWrapper->connectAck(); + } + + int processed = ptr - beginPtr; + beginPtr = ptr; + return processed; + } + catch( std::exception e) { + m_pEWrapper->error( NO_VALID_ID, SOCKET_EXCEPTION.code(), + SOCKET_EXCEPTION.msg() + errMsg( e) ); + } + + return 0; +} + + +int EDecoder::parseAndProcessMsg(const char*& beginPtr, const char* endPtr) { + // process a single message from the buffer; + // return number of bytes consumed + + assert( beginPtr && beginPtr < endPtr); + + if (m_serverVersion == 0) + return processConnectAck(beginPtr, endPtr); + + try { + + const char* ptr = beginPtr; + + int msgId; + DECODE_FIELD( msgId); + + switch( msgId) { + case TICK_PRICE: + ptr = processTickPriceMsg(ptr, endPtr); + break; + + case TICK_SIZE: + ptr = processTickSizeMsg(ptr, endPtr); + break; + + case TICK_OPTION_COMPUTATION: + ptr = processTickOptionComputationMsg(ptr, endPtr); + break; + + case TICK_GENERIC: + ptr = processTickGenericMsg(ptr, endPtr); + break; + + case TICK_STRING: + ptr = processTickStringMsg(ptr, endPtr); + break; + + case TICK_EFP: + ptr = processTickEfpMsg(ptr, endPtr); + break; + + case ORDER_STATUS: + ptr = processOrderStatusMsg(ptr, endPtr); + break; + + case ERR_MSG: + ptr = processErrMsgMsg(ptr, endPtr); + break; + + case OPEN_ORDER: + ptr = processOpenOrderMsg(ptr, endPtr); + break; + + case ACCT_VALUE: + ptr = processAcctValueMsg(ptr, endPtr); + break; + + case PORTFOLIO_VALUE: + ptr = processPortfolioValueMsg(ptr, endPtr); + break; + + case ACCT_UPDATE_TIME: + ptr = processAcctUpdateTimeMsg(ptr, endPtr); + break; + + case NEXT_VALID_ID: + ptr = processNextValidIdMsg(ptr, endPtr); + break; + + case CONTRACT_DATA: + ptr = processContractDataMsg(ptr, endPtr); + break; + + case BOND_CONTRACT_DATA: + ptr = processBondContractDataMsg(ptr, endPtr); + break; + + case EXECUTION_DATA: + ptr = processExecutionDataMsg(ptr, endPtr); + break; + + case MARKET_DEPTH: + ptr = processMarketDepthMsg(ptr, endPtr); + break; + + case MARKET_DEPTH_L2: + ptr = processMarketDepthL2Msg(ptr, endPtr); + break; + + case NEWS_BULLETINS: + ptr = processNewsBulletinsMsg(ptr, endPtr); + break; + + case MANAGED_ACCTS: + ptr = processManagedAcctsMsg(ptr, endPtr); + break; + + case RECEIVE_FA: + ptr = processReceiveFaMsg(ptr, endPtr); + break; + + case HISTORICAL_DATA: + ptr = processHistoricalDataMsg(ptr, endPtr); + break; + + case SCANNER_DATA: + ptr = processScannerDataMsg(ptr, endPtr); + break; + + case SCANNER_PARAMETERS: + ptr = processScannerParametersMsg(ptr, endPtr); + break; + + case CURRENT_TIME: + ptr = processCurrentTimeMsg(ptr, endPtr); + break; + + case REAL_TIME_BARS: + ptr = processRealTimeBarsMsg(ptr, endPtr); + break; + + case FUNDAMENTAL_DATA: + ptr = processFundamentalDataMsg(ptr, endPtr); + break; + + case CONTRACT_DATA_END: + ptr = processContractDataEndMsg(ptr, endPtr); + break; + + case OPEN_ORDER_END: + ptr = processOpenOrderEndMsg(ptr, endPtr); + break; + + case ACCT_DOWNLOAD_END: + ptr = processAcctDownloadEndMsg(ptr, endPtr); + break; + + case EXECUTION_DATA_END: + ptr = processExecutionDataEndMsg(ptr, endPtr); + break; + + case DELTA_NEUTRAL_VALIDATION: + ptr = processDeltaNeutralValidationMsg(ptr, endPtr); + break; + + case TICK_SNAPSHOT_END: + ptr = processTickSnapshotEndMsg(ptr, endPtr); + break; + + case MARKET_DATA_TYPE: + ptr = processMarketDataTypeMsg(ptr, endPtr); + break; + + case COMMISSION_REPORT: + ptr = processCommissionReportMsg(ptr, endPtr); + break; + + case POSITION_DATA: + ptr = processPositionDataMsg(ptr, endPtr); + break; + + case POSITION_END: + ptr = processPositionEndMsg(ptr, endPtr); + break; + + case ACCOUNT_SUMMARY: + ptr = processAccountSummaryMsg(ptr, endPtr); + break; + + case ACCOUNT_SUMMARY_END: + ptr = processAccountSummaryEndMsg(ptr, endPtr); + break; + + case VERIFY_MESSAGE_API: + ptr = processVerifyMessageApiMsg(ptr, endPtr); + break; + + case VERIFY_COMPLETED: + ptr = processVerifyCompletedMsg(ptr, endPtr); + break; + + case DISPLAY_GROUP_LIST: + ptr = processDisplayGroupListMsg(ptr, endPtr); + break; + + case DISPLAY_GROUP_UPDATED: + ptr = processDisplayGroupUpdatedMsg(ptr, endPtr); + break; + + case VERIFY_AND_AUTH_MESSAGE_API: + ptr = processVerifyAndAuthMessageApiMsg(ptr, endPtr); + break; + + case VERIFY_AND_AUTH_COMPLETED: + ptr = processVerifyAndAuthCompletedMsg(ptr, endPtr); + break; + + case POSITION_MULTI: + ptr = processPositionMultiMsg(ptr, endPtr); + break; + + case POSITION_MULTI_END: + ptr = processPositionMultiEndMsg(ptr, endPtr); + break; + + case ACCOUNT_UPDATE_MULTI: + ptr = processAccountUpdateMultiMsg(ptr, endPtr); + break; + + case ACCOUNT_UPDATE_MULTI_END: + ptr = processAccountUpdateMultiEndMsg(ptr, endPtr); + break; + + case SECURITY_DEFINITION_OPTION_PARAMETER: + ptr = processSecurityDefinitionOptionalParameterMsg(ptr, endPtr); + break; + + case SECURITY_DEFINITION_OPTION_PARAMETER_END: + ptr = processSecurityDefinitionOptionalParameterEndMsg(ptr, endPtr); + break; + + case SOFT_DOLLAR_TIERS: + ptr = processSoftDollarTiersMsg(ptr, endPtr); + break; + + default: + { + m_pEWrapper->error( msgId, UNKNOWN_ID.code(), UNKNOWN_ID.msg()); + m_pEWrapper->connectionClosed(); + break; + } + } + + if (!ptr) + return 0; + + int processed = ptr - beginPtr; + beginPtr = ptr; + return processed; + } + catch( std::exception e) { + m_pEWrapper->error( NO_VALID_ID, SOCKET_EXCEPTION.code(), + SOCKET_EXCEPTION.msg() + errMsg(e)); + } + return 0; +} + + +bool EDecoder::CheckOffset(const char* ptr, const char* endPtr) +{ + assert (ptr && ptr <= endPtr); + return (ptr && ptr < endPtr); +} + +const char* EDecoder::FindFieldEnd(const char* ptr, const char* endPtr) +{ + return (const char*)memchr(ptr, 0, endPtr - ptr); +} + +bool EDecoder::DecodeField(bool& boolValue, const char*& ptr, const char* endPtr) +{ + int intValue; + if( !DecodeField(intValue, ptr, endPtr)) + return false; + boolValue = (intValue > 0); + return true; +} + +bool EDecoder::DecodeField(int& intValue, const char*& ptr, const char* endPtr) +{ + if( !CheckOffset(ptr, endPtr)) + return false; + const char* fieldBeg = ptr; + const char* fieldEnd = FindFieldEnd(fieldBeg, endPtr); + if( !fieldEnd) + return false; + intValue = atoi(fieldBeg); + ptr = ++fieldEnd; + return true; +} + +bool EDecoder::DecodeField(long& longValue, const char*& ptr, const char* endPtr) +{ + int intValue; + if( !DecodeField(intValue, ptr, endPtr)) + return false; + longValue = intValue; + return true; +} + +bool EDecoder::DecodeField(double& doubleValue, const char*& ptr, const char* endPtr) +{ + if( !CheckOffset(ptr, endPtr)) + return false; + const char* fieldBeg = ptr; + const char* fieldEnd = FindFieldEnd(fieldBeg, endPtr); + if( !fieldEnd) + return false; + doubleValue = atof(fieldBeg); + ptr = ++fieldEnd; + return true; +} + +bool EDecoder::DecodeField(std::string& stringValue, + const char*& ptr, const char* endPtr) +{ + if( !CheckOffset(ptr, endPtr)) + return false; + const char* fieldBeg = ptr; + const char* fieldEnd = FindFieldEnd(ptr, endPtr); + if( !fieldEnd) + return false; + stringValue = fieldBeg; // better way? + ptr = ++fieldEnd; + return true; +} + +bool EDecoder::DecodeFieldMax(int& intValue, const char*& ptr, const char* endPtr) +{ + std::string stringValue; + if( !DecodeField(stringValue, ptr, endPtr)) + return false; + intValue = stringValue.empty() ? UNSET_INTEGER : atoi(stringValue.c_str()); + return true; +} + +bool EDecoder::DecodeFieldMax(long& longValue, const char*& ptr, const char* endPtr) +{ + int intValue; + if( !DecodeFieldMax(intValue, ptr, endPtr)) + return false; + longValue = intValue; + return true; +} + +bool EDecoder::DecodeFieldMax(double& doubleValue, const char*& ptr, const char* endPtr) +{ + std::string stringValue; + if( !DecodeField(stringValue, ptr, endPtr)) + return false; + doubleValue = stringValue.empty() ? UNSET_DOUBLE : atof(stringValue.c_str()); + return true; +} diff --git a/vn.ib/ibapi/windows/client/EDecoder.h b/vn.ib/ibapi/windows/client/EDecoder.h new file mode 100644 index 00000000..eb4e586f --- /dev/null +++ b/vn.ib/ibapi/windows/client/EDecoder.h @@ -0,0 +1,244 @@ +/* Copyright (C) 2013 Interactive Brokers LLC. All rights reserved. This code is subject to the terms + * and conditions of the IB API Non-Commercial License or the IB API Commercial License, as applicable. */ + +#pragma once + +#include "Contract.h" + + +//const int MIN_SERVER_VER_REAL_TIME_BARS = 34; +//const int MIN_SERVER_VER_SCALE_ORDERS = 35; +//const int MIN_SERVER_VER_SNAPSHOT_MKT_DATA = 35; +//const int MIN_SERVER_VER_SSHORT_COMBO_LEGS = 35; +//const int MIN_SERVER_VER_WHAT_IF_ORDERS = 36; +//const int MIN_SERVER_VER_CONTRACT_CONID = 37; +const int MIN_SERVER_VER_PTA_ORDERS = 39; +const int MIN_SERVER_VER_FUNDAMENTAL_DATA = 40; +const int MIN_SERVER_VER_UNDER_COMP = 40; +const int MIN_SERVER_VER_CONTRACT_DATA_CHAIN = 40; +const int MIN_SERVER_VER_SCALE_ORDERS2 = 40; +const int MIN_SERVER_VER_ALGO_ORDERS = 41; +const int MIN_SERVER_VER_EXECUTION_DATA_CHAIN = 42; +const int MIN_SERVER_VER_NOT_HELD = 44; +const int MIN_SERVER_VER_SEC_ID_TYPE = 45; +const int MIN_SERVER_VER_PLACE_ORDER_CONID = 46; +const int MIN_SERVER_VER_REQ_MKT_DATA_CONID = 47; +const int MIN_SERVER_VER_REQ_CALC_IMPLIED_VOLAT = 49; +const int MIN_SERVER_VER_REQ_CALC_OPTION_PRICE = 50; +const int MIN_SERVER_VER_CANCEL_CALC_IMPLIED_VOLAT = 50; +const int MIN_SERVER_VER_CANCEL_CALC_OPTION_PRICE = 50; +const int MIN_SERVER_VER_SSHORTX_OLD = 51; +const int MIN_SERVER_VER_SSHORTX = 52; +const int MIN_SERVER_VER_REQ_GLOBAL_CANCEL = 53; +const int MIN_SERVER_VER_HEDGE_ORDERS = 54; +const int MIN_SERVER_VER_REQ_MARKET_DATA_TYPE = 55; +const int MIN_SERVER_VER_OPT_OUT_SMART_ROUTING = 56; +const int MIN_SERVER_VER_SMART_COMBO_ROUTING_PARAMS = 57; +const int MIN_SERVER_VER_DELTA_NEUTRAL_CONID = 58; +const int MIN_SERVER_VER_SCALE_ORDERS3 = 60; +const int MIN_SERVER_VER_ORDER_COMBO_LEGS_PRICE = 61; +const int MIN_SERVER_VER_TRAILING_PERCENT = 62; +const int MIN_SERVER_VER_DELTA_NEUTRAL_OPEN_CLOSE = 66; +const int MIN_SERVER_VER_POSITIONS = 67; +const int MIN_SERVER_VER_ACCOUNT_SUMMARY = 67; +const int MIN_SERVER_VER_TRADING_CLASS = 68; +const int MIN_SERVER_VER_SCALE_TABLE = 69; +const int MIN_SERVER_VER_LINKING = 70; +const int MIN_SERVER_VER_ALGO_ID = 71; +const int MIN_SERVER_VER_OPTIONAL_CAPABILITIES = 72; +const int MIN_SERVER_VER_ORDER_SOLICITED = 73; +const int MIN_SERVER_VER_LINKING_AUTH = 74; +const int MIN_SERVER_VER_PRIMARYEXCH = 75; +const int MIN_SERVER_VER_RANDOMIZE_SIZE_AND_PRICE = 76; +const int MIN_SERVER_VER_FRACTIONAL_POSITIONS = 101; +const int MIN_SERVER_VER_PEGGED_TO_BENCHMARK = 102; +const int MIN_SERVER_VER_MODELS_SUPPORT = 103; +const int MIN_SERVER_VER_SEC_DEF_OPT_PARAMS_REQ = 104; +const int MIN_SERVER_VER_EXT_OPERATOR = 105; +const int MIN_SERVER_VER_SOFT_DOLLAR_TIER = 106; + +/* 100+ messaging */ +// 100 = enhanced handshake, msg length prefixes + +const int MIN_CLIENT_VER = 100; +const int MAX_CLIENT_VER = MIN_SERVER_VER_SOFT_DOLLAR_TIER; + + +// incoming msg id's +const int TICK_PRICE = 1; +const int TICK_SIZE = 2; +const int ORDER_STATUS = 3; +const int ERR_MSG = 4; +const int OPEN_ORDER = 5; +const int ACCT_VALUE = 6; +const int PORTFOLIO_VALUE = 7; +const int ACCT_UPDATE_TIME = 8; +const int NEXT_VALID_ID = 9; +const int CONTRACT_DATA = 10; +const int EXECUTION_DATA = 11; +const int MARKET_DEPTH = 12; +const int MARKET_DEPTH_L2 = 13; +const int NEWS_BULLETINS = 14; +const int MANAGED_ACCTS = 15; +const int RECEIVE_FA = 16; +const int HISTORICAL_DATA = 17; +const int BOND_CONTRACT_DATA = 18; +const int SCANNER_PARAMETERS = 19; +const int SCANNER_DATA = 20; +const int TICK_OPTION_COMPUTATION = 21; +const int TICK_GENERIC = 45; +const int TICK_STRING = 46; +const int TICK_EFP = 47; +const int CURRENT_TIME = 49; +const int REAL_TIME_BARS = 50; +const int FUNDAMENTAL_DATA = 51; +const int CONTRACT_DATA_END = 52; +const int OPEN_ORDER_END = 53; +const int ACCT_DOWNLOAD_END = 54; +const int EXECUTION_DATA_END = 55; +const int DELTA_NEUTRAL_VALIDATION = 56; +const int TICK_SNAPSHOT_END = 57; +const int MARKET_DATA_TYPE = 58; +const int COMMISSION_REPORT = 59; +const int POSITION_DATA = 61; +const int POSITION_END = 62; +const int ACCOUNT_SUMMARY = 63; +const int ACCOUNT_SUMMARY_END = 64; +const int VERIFY_MESSAGE_API = 65; +const int VERIFY_COMPLETED = 66; +const int DISPLAY_GROUP_LIST = 67; +const int DISPLAY_GROUP_UPDATED = 68; +const int VERIFY_AND_AUTH_MESSAGE_API = 69; +const int VERIFY_AND_AUTH_COMPLETED = 70; +const int POSITION_MULTI = 71; +const int POSITION_MULTI_END = 72; +const int ACCOUNT_UPDATE_MULTI = 73; +const int ACCOUNT_UPDATE_MULTI_END = 74; +const int SECURITY_DEFINITION_OPTION_PARAMETER = 75; +const int SECURITY_DEFINITION_OPTION_PARAMETER_END = 76; +const int SOFT_DOLLAR_TIERS = 77; + +const int HEADER_LEN = 4; // 4 bytes for msg length +const int MAX_MSG_LEN = 0xFFFFFF; // 16Mb - 1byte +const char API_SIGN[4] = { 'A', 'P', 'I', '\0' }; // "API" + + +// helper structures +namespace { + +struct BarData { + std::string date; + double open; + double high; + double low; + double close; + int volume; + double average; + std::string hasGaps; + int barCount; +}; + +struct ScanData { + ContractDetails contract; + int rank; + std::string distance; + std::string benchmark; + std::string projection; + std::string legsStr; +}; + +} // end of anonymous namespace + +/////////////////////////////////////////////////////////// +// utility funcs +static std::string errMsg(std::exception e) { + // return the error associated with this exception + return std::string(e.what()); +} + +class EWrapper; +class EClient; +struct EClientMsgSink; + +class TWSAPIDLLEXP EDecoder +{ + EWrapper *m_pEWrapper; + int m_serverVersion; + EClientMsgSink *m_pClientMsgSink; + + const char* processTickPriceMsg(const char* ptr, const char* endPtr); + const char* processTickSizeMsg(const char* ptr, const char* endPtr); + const char* processTickOptionComputationMsg(const char* ptr, const char* endPtr); + const char* processTickGenericMsg(const char* ptr, const char* endPtr); + const char* processTickStringMsg(const char* ptr, const char* endPtr); + const char* processTickEfpMsg(const char* ptr, const char* endPtr); + const char* processOrderStatusMsg(const char* ptr, const char* endPtr); + const char* processErrMsgMsg(const char* ptr, const char* endPtr); + const char* processOpenOrderMsg(const char* ptr, const char* endPtr); + const char* processAcctValueMsg(const char* ptr, const char* endPtr); + const char* processPortfolioValueMsg(const char* ptr, const char* endPtr); + const char* processAcctUpdateTimeMsg(const char* ptr, const char* endPtr); + const char* processNextValidIdMsg(const char* ptr, const char* endPtr); + const char* processContractDataMsg(const char* ptr, const char* endPtr); + const char* processBondContractDataMsg(const char* ptr, const char* endPtr); + const char* processExecutionDataMsg(const char* ptr, const char* endPtr); + const char* processMarketDepthMsg(const char* ptr, const char* endPtr); + const char* processMarketDepthL2Msg(const char* ptr, const char* endPtr); + const char* processNewsBulletinsMsg(const char* ptr, const char* endPtr); + const char* processManagedAcctsMsg(const char* ptr, const char* endPtr); + const char* processReceiveFaMsg(const char* ptr, const char* endPtr); + const char* processHistoricalDataMsg(const char* ptr, const char* endPtr); + const char* processScannerDataMsg(const char* ptr, const char* endPtr); + const char* processScannerParametersMsg(const char* ptr, const char* endPtr); + const char* processCurrentTimeMsg(const char* ptr, const char* endPtr); + const char* processRealTimeBarsMsg(const char* ptr, const char* endPtr); + const char* processFundamentalDataMsg(const char* ptr, const char* endPtr); + const char* processContractDataEndMsg(const char* ptr, const char* endPtr); + const char* processOpenOrderEndMsg(const char* ptr, const char* endPtr); + const char* processAcctDownloadEndMsg(const char* ptr, const char* endPtr); + const char* processExecutionDataEndMsg(const char* ptr, const char* endPtr); + const char* processDeltaNeutralValidationMsg(const char* ptr, const char* endPtr); + const char* processTickSnapshotEndMsg(const char* ptr, const char* endPtr); + const char* processMarketDataTypeMsg(const char* ptr, const char* endPtr); + const char* processCommissionReportMsg(const char* ptr, const char* endPtr); + const char* processPositionDataMsg(const char* ptr, const char* endPtr); + const char* processPositionEndMsg(const char* ptr, const char* endPtr); + const char* processAccountSummaryMsg(const char* ptr, const char* endPtr); + const char* processAccountSummaryEndMsg(const char* ptr, const char* endPtr); + const char* processVerifyMessageApiMsg(const char* ptr, const char* endPtr); + const char* processVerifyCompletedMsg(const char* ptr, const char* endPtr); + const char* processDisplayGroupListMsg(const char* ptr, const char* endPtr); + const char* processDisplayGroupUpdatedMsg(const char* ptr, const char* endPtr); + const char* processVerifyAndAuthMessageApiMsg(const char* ptr, const char* endPtr); + const char* processVerifyAndAuthCompletedMsg(const char* ptr, const char* endPtr); + const char* processPositionMultiMsg(const char* ptr, const char* endPtr); + const char* processPositionMultiEndMsg(const char* ptr, const char* endPtr); + const char* processAccountUpdateMultiMsg(const char* ptr, const char* endPtr); + const char* processAccountUpdateMultiEndMsg(const char* ptr, const char* endPtr); + const char* processSecurityDefinitionOptionalParameterMsg(const char* ptr, const char* endPtr); + const char* processSecurityDefinitionOptionalParameterEndMsg(const char* ptr, const char* endPtr); + const char* processSoftDollarTiersMsg(const char* ptr, const char* endPtr); + + int processConnectAck(const char*& beginPtr, const char* endPtr); + +public: + static bool CheckOffset(const char* ptr, const char* endPtr); + static const char* FindFieldEnd(const char* ptr, const char* endPtr); + // decoders + static bool DecodeField(bool&, const char*& ptr, const char* endPtr); + static bool DecodeField(int&, const char*& ptr, const char* endPtr); + static bool DecodeField(long&, const char*& ptr, const char* endPtr); + static bool DecodeField(double&, const char*& ptr, const char* endPtr); + static bool DecodeField(std::string&, const char*& ptr, const char* endPtr); + + static bool DecodeFieldMax(int&, const char*& ptr, const char* endPtr); + static bool DecodeFieldMax(long&, const char*& ptr, const char* endPtr); + static bool DecodeFieldMax(double&, const char*& ptr, const char* endPtr); + + EDecoder(int serverVersion, EWrapper *callback, EClientMsgSink *clientMsgSink = 0); + + int parseAndProcessMsg(const char*& beginPtr, const char* endPtr); +}; + +#define DECODE_FIELD(x) if (!EDecoder::DecodeField(x, ptr, endPtr)) return 0; +#define DECODE_FIELD_MAX(x) if (!EDecoder::DecodeFieldMax(x, ptr, endPtr)) return 0; diff --git a/vn.ib/ibapi/windows/client/EMessage.cpp b/vn.ib/ibapi/windows/client/EMessage.cpp new file mode 100644 index 00000000..ee1055d4 --- /dev/null +++ b/vn.ib/ibapi/windows/client/EMessage.cpp @@ -0,0 +1,20 @@ +/* Copyright (C) 2013 Interactive Brokers LLC. All rights reserved. This code is subject to the terms + * and conditions of the IB API Non-Commercial License or the IB API Commercial License, as applicable. */ + +#include "StdAfx.h" +#include "EMessage.h" + + +EMessage::EMessage(const std::vector &data) { + this->data = data; +} + +const char* EMessage::begin(void) const +{ + return data.data(); +} + +const char* EMessage::end(void) const +{ + return data.data() + data.size(); +} diff --git a/vn.ib/ibapi/windows/client/EMessage.h b/vn.ib/ibapi/windows/client/EMessage.h new file mode 100644 index 00000000..80b8c82d --- /dev/null +++ b/vn.ib/ibapi/windows/client/EMessage.h @@ -0,0 +1,13 @@ +/* Copyright (C) 2013 Interactive Brokers LLC. All rights reserved. This code is subject to the terms + * and conditions of the IB API Non-Commercial License or the IB API Commercial License, as applicable. */ + +#pragma once +class TWSAPIDLLEXP EMessage +{ + std::vector data; +public: + EMessage(const std::vector &data); + const char* begin(void) const; + const char* end(void) const; +}; + diff --git a/vn.ib/ibapi/windows/client/EMutex.cpp b/vn.ib/ibapi/windows/client/EMutex.cpp new file mode 100644 index 00000000..b16e63f5 --- /dev/null +++ b/vn.ib/ibapi/windows/client/EMutex.cpp @@ -0,0 +1,59 @@ +/* Copyright (C) 2013 Interactive Brokers LLC. All rights reserved. This code is subject to the terms + * and conditions of the IB API Non-Commercial License or the IB API Commercial License, as applicable. */ + +#include "StdAfx.h" +#include "EMutex.h" + +EMutex::EMutex() +{ +#if defined(IB_POSIX) + pthread_mutex_init(&cs, NULL); +#elif defined(IB_WIN32) + InitializeCriticalSection(&cs); +#else +# error "Not implemented on this platform" +#endif +} + +EMutex::~EMutex(void) +{ + Leave(); +#if defined(IB_POSIX) + pthread_mutex_destroy(&cs); +#elif defined(IB_WIN32) + DeleteCriticalSection(&cs); +#else +# error "Not implemented on this platform" +#endif +} + +bool EMutex::TryEnter() +{ +#if defined(IB_POSIX) + return pthread_mutex_trylock(&cs) == 0; +#elif defined(IB_WIN32) + return TryEnterCriticalSection(&cs); +#else +# error "Not implemented on this platform" +#endif +} + +void EMutex::Enter() { +#if defined(IB_POSIX) + pthread_mutex_lock(&cs); +#elif defined(IB_WIN32) + EnterCriticalSection(&cs); +#else +# error "Not implemented on this platform" +#endif +} + +void EMutex::Leave() { +#if defined(IB_POSIX) + pthread_mutex_unlock(&cs); +#elif defined(IB_WIN32) + LeaveCriticalSection(&cs); +#else +# error "Not implemented on this platform" +#endif +} diff --git a/vn.ib/ibapi/windows/client/EMutex.h b/vn.ib/ibapi/windows/client/EMutex.h new file mode 100644 index 00000000..4f762dbd --- /dev/null +++ b/vn.ib/ibapi/windows/client/EMutex.h @@ -0,0 +1,25 @@ +/* Copyright (C) 2013 Interactive Brokers LLC. All rights reserved. This code is subject to the terms + * and conditions of the IB API Non-Commercial License or the IB API Commercial License, as applicable. */ + +#pragma once + +#include "StdAfx.h" + +class TWSAPIDLLEXP EMutex +{ +#if defined(IB_POSIX) + pthread_mutex_t cs; +#elif defined(IB_WIN32) + CRITICAL_SECTION cs; +#else +# error "Not implemented on this platform" +#endif + +public: + EMutex(); + ~EMutex(); + bool TryEnter(); + void Enter(); + void Leave(); +}; + diff --git a/vn.ib/ibapi/windows/client/EPosixClientSocketPlatform.h b/vn.ib/ibapi/windows/client/EPosixClientSocketPlatform.h new file mode 100644 index 00000000..d47d7ee5 --- /dev/null +++ b/vn.ib/ibapi/windows/client/EPosixClientSocketPlatform.h @@ -0,0 +1,65 @@ +/* Copyright (C) 2013 Interactive Brokers LLC. All rights reserved. This code is subject to the terms + * and conditions of the IB API Non-Commercial License or the IB API Commercial License, as applicable. */ + +#pragma once +#ifndef eposixclientsocketcommon_def +#define eposixclientsocketcommon_def + +#ifdef _WIN32 + + // Windows + // includes + #include + #include + + // defines + #if _MSC_VER < 1700 + #define EISCONN WSAEISCONN + #define EWOULDBLOCK WSAEWOULDBLOCK + #define ECONNREFUSED WSAECONNREFUSED + #else + #pragma comment(lib, "ws2_32.lib") + #endif + + // helpers + inline bool SocketsInit( void) { + WSADATA data; + return ( !WSAStartup( MAKEWORD(2, 2), &data)); + }; + inline bool SocketsDestroy() { return ( !WSACleanup()); }; + inline int SocketClose(int sockfd) { return closesocket( sockfd); }; + + inline bool SetSocketNonBlocking(int sockfd) { + unsigned long mode = 1; + return ( ioctlsocket( sockfd, FIONBIO, &mode) == 0); + }; + +#else + // LINUX + // includes + + #include + #include + #include + #include + #include + #include + + // helpers + inline bool SocketsInit() { return true; }; + inline bool SocketsDestroy() { return true; }; + inline int SocketClose(int sockfd) { return close( sockfd); }; + + inline bool SetSocketNonBlocking(int sockfd) { + // get socket flags + int flags = fcntl(sockfd, F_GETFL); + if (flags == -1) + return false; + + // set non-blocking mode + return ( fcntl(sockfd, F_SETFL, flags | O_NONBLOCK) == 0); + }; + +#endif + +#endif diff --git a/vn.ib/ibapi/windows/client/EReader.cpp b/vn.ib/ibapi/windows/client/EReader.cpp new file mode 100644 index 00000000..5bc00630 --- /dev/null +++ b/vn.ib/ibapi/windows/client/EReader.cpp @@ -0,0 +1,290 @@ +/* Copyright (C) 2013 Interactive Brokers LLC. All rights reserved. This code is subject to the terms + * and conditions of the IB API Non-Commercial License or the IB API Commercial License, as applicable. */ + +#include "StdAfx.h" +#include "shared_ptr.h" +#include "Contract.h" +#include "EDecoder.h" +#include "EMutex.h" +#include "EReader.h" +#include "EClientSocket.h" +#include "EPosixClientSocketPlatform.h" +#include "EReaderSignal.h" +#include "EMessage.h" +#include "DefaultEWrapper.h" + +#define IN_BUF_SIZE_DEFAULT 8192 + +static DefaultEWrapper defaultWrapper; + +EReader::EReader(EClientSocket *clientSocket, EReaderSignal *signal) + : processMsgsDecoder_(clientSocket->EClient::serverVersion(), clientSocket->getWrapper(), clientSocket) { + m_isAlive = true; + m_pClientSocket = clientSocket; + m_pEReaderSignal = signal; + m_needsWriteSelect = false; + m_nMaxBufSize = IN_BUF_SIZE_DEFAULT; + m_buf.reserve(IN_BUF_SIZE_DEFAULT); +} + +EReader::~EReader(void) { + m_isAlive = false; + +#if defined(IB_WIN32) + WaitForSingleObject(m_hReadThread, INFINITE); +#endif +} + +void EReader::checkClient() { + m_needsWriteSelect = !m_pClientSocket->getTransport()->isOutBufferEmpty(); +} + +void EReader::start() { +#if defined(IB_POSIX) + pthread_t thread; + pthread_attr_t attr; + pthread_attr_init(&attr); + pthread_attr_setdetachstate(&attr, PTHREAD_CREATE_DETACHED); + pthread_create( &thread, &attr, readToQueueThread, this ); + pthread_attr_destroy(&attr); +#elif defined(IB_WIN32) + m_hReadThread = CreateThread(0, 0, readToQueueThread, this, 0, 0); +#else +# error "Not implemented on this platform" +#endif +} + +#if defined(IB_POSIX) +void * EReader::readToQueueThread(void * lpParam) +#elif defined(IB_WIN32) +DWORD WINAPI EReader::readToQueueThread(LPVOID lpParam) +#else +# error "Not implemented on this platform" +#endif +{ + EReader *pThis = reinterpret_cast(lpParam); + + pThis->readToQueue(); + return 0; +} + +void EReader::readToQueue() { + EMessage *msg = 0; + + while (m_isAlive) { + if (m_buf.size() == 0 && !processNonBlockingSelect() && m_pClientSocket->isSocketOK()) + continue; + + if (!putMessageToQueue()) + break; + } + + m_pClientSocket->handleSocketError(); + m_pEReaderSignal->issueSignal(); //letting client know that socket was closed +} + +bool EReader::putMessageToQueue() { + EMessage *msg = 0; + + if (m_pClientSocket->isSocketOK()) + msg = readSingleMsg(); + + if (msg == 0) + return false; + + m_csMsgQueue.Enter(); + m_msgQueue.push_back(ibapi::shared_ptr(msg)); + m_csMsgQueue.Leave(); + m_pEReaderSignal->issueSignal(); + + return true; +} + +bool EReader::processNonBlockingSelect() { + fd_set readSet, writeSet, errorSet; + struct timeval tval; + + tval.tv_usec = 100 * 1000; //100 ms + tval.tv_sec = 0; + + if( m_pClientSocket->fd() >= 0 ) { + + FD_ZERO( &readSet); + errorSet = writeSet = readSet; + + FD_SET( m_pClientSocket->fd(), &readSet); + + if (m_needsWriteSelect) + FD_SET( m_pClientSocket->fd(), &writeSet); + + FD_SET( m_pClientSocket->fd(), &errorSet); + + int ret = select( m_pClientSocket->fd() + 1, &readSet, &writeSet, &errorSet, &tval); + + if( ret == 0) { // timeout + return false; + } + + if( ret < 0) { // error + m_pClientSocket->eDisconnect(); + return false; + } + + if( m_pClientSocket->fd() < 0) + return false; + + if( FD_ISSET( m_pClientSocket->fd(), &errorSet)) { + // error on socket + m_pClientSocket->onError(); + } + + if( m_pClientSocket->fd() < 0) + return false; + + if( FD_ISSET( m_pClientSocket->fd(), &writeSet)) { + // socket is ready for writing + onSend(); + } + + if( m_pClientSocket->fd() < 0) + return false; + + if( FD_ISSET( m_pClientSocket->fd(), &readSet)) { + // socket is ready for reading + onReceive(); + } + + return true; + } + + return false; +} + +void EReader::onSend() { + m_pEReaderSignal->issueSignal(); +} + +void EReader::onReceive() { + int nOffset = m_buf.size(); + + m_buf.resize(m_nMaxBufSize); + + int nRes = m_pClientSocket->receive(m_buf.data() + nOffset, m_buf.size() - nOffset); + + if (nRes <= 0) + return; + + m_buf.resize(nRes + nOffset); +} + +bool EReader::bufferedRead(char *buf, int size) { + while (size > 0) { + while (m_buf.size() < size && m_buf.size() < m_nMaxBufSize) + if (!processNonBlockingSelect() && !m_pClientSocket->isSocketOK()) + return false; + + int nBytes = min(m_nMaxBufSize, size); + + std::copy(m_buf.begin(), m_buf.begin() + nBytes, buf); + std::copy(m_buf.begin() + nBytes, m_buf.end(), m_buf.begin()); + m_buf.resize(m_buf.size() - nBytes); + + size -= nBytes; + buf += nBytes; + } + + return true; +} + +EMessage * EReader::readSingleMsg() { + if (m_pClientSocket->usingV100Plus()) { + int msgSize; + + if (!bufferedRead((char *)&msgSize, sizeof(msgSize))) + return 0; + + msgSize = htonl(msgSize); + + if (msgSize <= 0 || msgSize > MAX_MSG_LEN) + return 0; + + std::vector buf = std::vector(msgSize); + + if (!bufferedRead(buf.data(), buf.size())) + return 0; + + return new EMessage(buf); + } + else { + const char *pBegin = 0; + const char *pEnd = 0; + int msgSize = 0; + + while (msgSize == 0) + { + if (m_buf.size() >= m_nMaxBufSize * 3/4) + m_nMaxBufSize *= 2; + + if (!processNonBlockingSelect() && !m_pClientSocket->isSocketOK()) + return 0; + + pBegin = m_buf.data(); + pEnd = pBegin + m_buf.size(); + msgSize = EDecoder(m_pClientSocket->EClient::serverVersion(), &defaultWrapper).parseAndProcessMsg(pBegin, pEnd); + } + + std::vector msgData(msgSize); + + if (!bufferedRead(msgData.data(), msgSize)) + return 0; + + if (m_buf.size() < IN_BUF_SIZE_DEFAULT && m_buf.capacity() > IN_BUF_SIZE_DEFAULT) + { + m_buf.resize(m_nMaxBufSize = IN_BUF_SIZE_DEFAULT); + m_buf.shrink_to_fit(); + } + + EMessage * msg = new EMessage(msgData); + + return msg; + } +} + +ibapi::shared_ptr EReader::getMsg(void) { + m_csMsgQueue.Enter(); + + if (m_msgQueue.size() == 0) { + m_csMsgQueue.Leave(); + + return ibapi::shared_ptr(); + } + + ibapi::shared_ptr msg = m_msgQueue.front(); + + m_msgQueue.pop_front(); + m_csMsgQueue.Leave(); + + return msg; +} + + +void EReader::processMsgs(void) { + m_pClientSocket->onSend(); + checkClient(); + + ibapi::shared_ptr msg = getMsg(); + + if (!msg.get()) + return; + + const char *pBegin = msg->begin(); + + while (processMsgsDecoder_.parseAndProcessMsg(pBegin, msg->end()) > 0) { + msg = getMsg(); + + if (!msg.get()) + break; + + pBegin = msg->begin(); + } +} diff --git a/vn.ib/ibapi/windows/client/EReader.h b/vn.ib/ibapi/windows/client/EReader.h new file mode 100644 index 00000000..f373d221 --- /dev/null +++ b/vn.ib/ibapi/windows/client/EReader.h @@ -0,0 +1,58 @@ +/* Copyright (C) 2013 Interactive Brokers LLC. All rights reserved. This code is subject to the terms + * and conditions of the IB API Non-Commercial License or the IB API Commercial License, as applicable. */ + +#pragma once + +#include "StdAfx.h" +#include "EDecoder.h" +#include "EMutex.h" +#include "EReaderOSSignal.h" + +class EClientSocket; +class EReaderSignal; +class EMessage; + +class TWSAPIDLLEXP EReader +{ + EClientSocket *m_pClientSocket; + EReaderSignal *m_pEReaderSignal; + EDecoder processMsgsDecoder_; + std::deque> m_msgQueue; + EMutex m_csMsgQueue; + std::vector m_buf; + bool m_needsWriteSelect; + bool m_isAlive; +#if defined(IB_WIN32) + HANDLE m_hReadThread; +#endif + int m_nMaxBufSize; + + void onReceive(); + void onSend(); + bool bufferedRead(char *buf, int size); + +public: + EReader(EClientSocket *clientSocket, EReaderSignal *signal); + ~EReader(void); + +protected: + bool processNonBlockingSelect(); + ibapi::shared_ptr getMsg(void); + void readToQueue(); +#if defined(IB_POSIX) + static void * readToQueueThread(void * lpParam); +#elif defined(IB_WIN32) + static DWORD WINAPI readToQueueThread(LPVOID lpParam); +#else +# error "Not implemented on this platform" +#endif + + EMessage * readSingleMsg(); + +public: + void processMsgs(void); + void checkClient(); + bool putMessageToQueue(); + void start(); +}; + diff --git a/vn.ib/ibapi/windows/client/EReaderOSSignal.cpp b/vn.ib/ibapi/windows/client/EReaderOSSignal.cpp new file mode 100644 index 00000000..d4b2d70d --- /dev/null +++ b/vn.ib/ibapi/windows/client/EReaderOSSignal.cpp @@ -0,0 +1,73 @@ +/* Copyright (C) 2013 Interactive Brokers LLC. All rights reserved. This code is subject to the terms + * and conditions of the IB API Non-Commercial License or the IB API Commercial License, as applicable. */ + +#include "StdAfx.h" +#include "EReaderOSSignal.h" + + +#define MS_IN_SEC 1000 + + +EReaderOSSignal::EReaderOSSignal(unsigned long waitTimeout) throw (std::runtime_error) +{ + bool ok = false; + m_waitTimeout = waitTimeout; +#if defined(IB_POSIX) + int rc1 = pthread_mutex_init(&m_mutex, NULL); + int rc2 = pthread_cond_init(&m_evMsgs, NULL); + ok = rc1 == 0 && rc2 == 0; +#elif defined(IB_WIN32) + m_evMsgs = CreateEvent(0, false, false, 0); + ok = (NULL != m_evMsgs); +#else +# error "Not implemented on this platform" +#endif + if (!ok) + throw std::runtime_error("Failed to create event"); +} + + +EReaderOSSignal::~EReaderOSSignal(void) +{ +#if defined(IB_POSIX) + pthread_cond_destroy(&m_evMsgs); + pthread_mutex_destroy(&m_mutex); +#elif defined(IB_WIN32) + CloseHandle(m_evMsgs); +#else +# error "Not implemented on this platform" +#endif +} + + +void EReaderOSSignal::issueSignal() { +#if defined(IB_POSIX) + pthread_mutex_lock(&m_mutex); + pthread_cond_signal(&m_evMsgs); + pthread_mutex_unlock(&m_mutex); +#elif defined(IB_WIN32) + SetEvent(m_evMsgs); +#else +# error "Not implemented on this platform" +#endif +} + +void EReaderOSSignal::waitForSignal() { +#if defined(IB_POSIX) + pthread_mutex_lock(&m_mutex); + if ( m_waitTimeout == INFINITE ) { + pthread_cond_wait(&m_evMsgs, &m_mutex); + } + else { + struct timespec ts; + ts.tv_sec = m_waitTimeout/MS_IN_SEC; + ts.tv_nsec = (m_waitTimeout%MS_IN_SEC)*1000/*us/ms*/*1000/*ns/us*/; + pthread_cond_timedwait(&m_evMsgs, &m_mutex, &ts); + } + pthread_mutex_unlock(&m_mutex); +#elif defined(IB_WIN32) + WaitForSingleObject(m_evMsgs, m_waitTimeout); +#else +# error "Not implemented on this platform" +#endif +} diff --git a/vn.ib/ibapi/windows/client/EReaderOSSignal.h b/vn.ib/ibapi/windows/client/EReaderOSSignal.h new file mode 100644 index 00000000..a87d4659 --- /dev/null +++ b/vn.ib/ibapi/windows/client/EReaderOSSignal.h @@ -0,0 +1,33 @@ +/* Copyright (C) 2013 Interactive Brokers LLC. All rights reserved. This code is subject to the terms + * and conditions of the IB API Non-Commercial License or the IB API Commercial License, as applicable. */ + +#pragma once +#include "EReaderSignal.h" +#include "StdAfx.h" +#include + +#if !defined(INFINITE) +#define INFINITE ((unsigned long)-1) +#endif + +class TWSAPIDLLEXP EReaderOSSignal : + public EReaderSignal +{ +#if defined(IB_POSIX) + pthread_cond_t m_evMsgs; + pthread_mutex_t m_mutex; +#elif defined(IB_WIN32) + HANDLE m_evMsgs; +#else +# error "Not implemented on this platform" +#endif + unsigned long m_waitTimeout; // in milliseconds + +public: + EReaderOSSignal(unsigned long waitTimeout = INFINITE) throw (std::runtime_error); + ~EReaderOSSignal(void); + + virtual void issueSignal(); + virtual void waitForSignal(); +}; + diff --git a/vn.ib/ibapi/windows/client/EReaderSignal.h b/vn.ib/ibapi/windows/client/EReaderSignal.h new file mode 100644 index 00000000..74ad520f --- /dev/null +++ b/vn.ib/ibapi/windows/client/EReaderSignal.h @@ -0,0 +1,10 @@ +/* Copyright (C) 2013 Interactive Brokers LLC. All rights reserved. This code is subject to the terms + * and conditions of the IB API Non-Commercial License or the IB API Commercial License, as applicable. */ + +#pragma once +struct EReaderSignal +{ + virtual void issueSignal() = 0; + virtual void waitForSignal() = 0; +}; + diff --git a/vn.ib/ibapi/windows/client/EReaderWMSignal.cpp b/vn.ib/ibapi/windows/client/EReaderWMSignal.cpp new file mode 100644 index 00000000..8488c8d8 --- /dev/null +++ b/vn.ib/ibapi/windows/client/EReaderWMSignal.cpp @@ -0,0 +1,25 @@ +/* Copyright (C) 2013 Interactive Brokers LLC. All rights reserved. This code is subject to the terms + * and conditions of the IB API Non-Commercial License or the IB API Commercial License, as applicable. */ + +#include "StdAfx.h" +#if defined(IB_WIN32) +#include "EReaderWMSignal.h" + + +EReaderWMSignal::EReaderWMSignal(HWND hWnd, int wmUserOffset) { + m_hWnd = hWnd; + m_msg = WM_USER + wmUserOffset; +} + +void EReaderWMSignal::issueSignal() { + if (IsWindow(m_hWnd)) + PostMessage(m_hWnd, m_msg, 0, 0); +} + +void EReaderWMSignal::waitForSignal() { + MSG msg; + + if (GetMessage(&msg, 0, m_msg, m_msg)) + DispatchMessage(&msg); +} +#endif diff --git a/vn.ib/ibapi/windows/client/EReaderWMSignal.h b/vn.ib/ibapi/windows/client/EReaderWMSignal.h new file mode 100644 index 00000000..943a6ff6 --- /dev/null +++ b/vn.ib/ibapi/windows/client/EReaderWMSignal.h @@ -0,0 +1,19 @@ +/* Copyright (C) 2013 Interactive Brokers LLC. All rights reserved. This code is subject to the terms + * and conditions of the IB API Non-Commercial License or the IB API Commercial License, as applicable. */ + +#pragma once +#include "ereadersignal.h" + +class EReaderWMSignal : + public EReaderSignal +{ + HWND m_hWnd; + int m_msg; + +public: + EReaderWMSignal(HWND hWnd, int msg); + + virtual void issueSignal(); + virtual void waitForSignal(); +}; + diff --git a/vn.ib/ibapi/windows/client/ESocket.cpp b/vn.ib/ibapi/windows/client/ESocket.cpp new file mode 100644 index 00000000..18fadc68 --- /dev/null +++ b/vn.ib/ibapi/windows/client/ESocket.cpp @@ -0,0 +1,102 @@ +#include "StdAfx.h" +#include "EMessage.h" +#include "ESocket.h" + +#include + +#if defined(IB_POSIX) +#include +#endif + +ESocket::ESocket() { +} + +void ESocket::fd(int fd) { + m_fd = fd; +} + +ESocket::~ESocket(void) { +} + +int ESocket::send(EMessage *pMsg) { + return bufferedSend(pMsg->begin(), pMsg->end() - pMsg->begin()); +} + +int ESocket::bufferedSend(const char* buf, size_t sz) +{ + if( sz <= 0) + return 0; + + if( !m_outBuffer.empty()) { + m_outBuffer.insert( m_outBuffer.end(), buf, buf + sz); + return sendBufferedData(); + } + + int nResult = send(buf, sz); + + if( nResult < (int)sz) { + int sent = (std::max)( nResult, 0); + m_outBuffer.insert( m_outBuffer.end(), buf + sent, buf + sz); + } + + return nResult; +} + +int ESocket::sendBufferedData() +{ + if( m_outBuffer.empty()) + return 0; + + int nResult = send( &m_outBuffer[0], m_outBuffer.size()); + if( nResult <= 0) { + return nResult; + } + CleanupBuffer( m_outBuffer, nResult); + return nResult; +} + +int ESocket::send(const char* buf, size_t sz) +{ + if( sz <= 0) + return 0; + + int nResult = ::send( m_fd, buf, sz, 0); + + if( nResult == -1) { + return -1; + } + if( nResult <= 0) { + return 0; + } + return nResult; +} + +static const size_t BufferSizeHighMark = 1 * 1024 * 1024; // 1Mb + +void ESocket::CleanupBuffer(std::vector& buffer, int processed) +{ + assert( buffer.empty() || processed <= (int)buffer.size()); + + if( buffer.empty()) + return; + + if( processed <= 0) + return; + + if( (size_t)processed == buffer.size()) { + if( buffer.capacity() >= BufferSizeHighMark) { + std::vector().swap(buffer); + } + else { + buffer.clear(); + } + } + else { + buffer.erase( buffer.begin(), buffer.begin() + processed); + } +} + +bool ESocket::isOutBufferEmpty() const +{ + return m_outBuffer.empty(); +} diff --git a/vn.ib/ibapi/windows/client/ESocket.h b/vn.ib/ibapi/windows/client/ESocket.h new file mode 100644 index 00000000..c391cefc --- /dev/null +++ b/vn.ib/ibapi/windows/client/ESocket.h @@ -0,0 +1,23 @@ +#pragma once +#include "ETransport.h" + +class ESocket : + public ETransport +{ + int m_fd; + std::vector m_outBuffer; + + int bufferedSend(const char* buf, size_t sz); + int send(const char* buf, size_t sz); + void CleanupBuffer(std::vector& buffer, int processed); + +public: + ESocket(); + ~ESocket(void); + + int send(EMessage *pMsg); + bool isOutBufferEmpty() const; + int sendBufferedData(); + void fd(int fd); +}; + diff --git a/vn.ib/ibapi/windows/client/ETransport.h b/vn.ib/ibapi/windows/client/ETransport.h new file mode 100644 index 00000000..572a8215 --- /dev/null +++ b/vn.ib/ibapi/windows/client/ETransport.h @@ -0,0 +1,11 @@ +#pragma once + +class EMessage; + +struct ETransport +{ + virtual int send(EMessage *pMsg) = 0; + //virtual int sendBufferedData() = 0; + //virtual bool isOutBufferEmpty() const = 0; +}; + diff --git a/vn.ib/ibapi/windows/client/EWrapper.h b/vn.ib/ibapi/windows/client/EWrapper.h new file mode 100644 index 00000000..ce6b70dd --- /dev/null +++ b/vn.ib/ibapi/windows/client/EWrapper.h @@ -0,0 +1,176 @@ +/* Copyright (C) 2013 Interactive Brokers LLC. All rights reserved. This code is subject to the terms + * and conditions of the IB API Non-Commercial License or the IB API Commercial License, as applicable. */ + +#pragma once +#ifndef ewrapper_def +#define ewrapper_def + +#include "CommonDefs.h" +#include "SoftDollarTier.h" +#include +#include + +enum TickType { BID_SIZE, BID, ASK, ASK_SIZE, LAST, LAST_SIZE, + HIGH, LOW, VOLUME, CLOSE, + BID_OPTION_COMPUTATION, + ASK_OPTION_COMPUTATION, + LAST_OPTION_COMPUTATION, + MODEL_OPTION, + OPEN, + LOW_13_WEEK, + HIGH_13_WEEK, + LOW_26_WEEK, + HIGH_26_WEEK, + LOW_52_WEEK, + HIGH_52_WEEK, + AVG_VOLUME, + OPEN_INTEREST, + OPTION_HISTORICAL_VOL, + OPTION_IMPLIED_VOL, + OPTION_BID_EXCH, + OPTION_ASK_EXCH, + OPTION_CALL_OPEN_INTEREST, + OPTION_PUT_OPEN_INTEREST, + OPTION_CALL_VOLUME, + OPTION_PUT_VOLUME, + INDEX_FUTURE_PREMIUM, + BID_EXCH, + ASK_EXCH, + AUCTION_VOLUME, + AUCTION_PRICE, + AUCTION_IMBALANCE, + MARK_PRICE, + BID_EFP_COMPUTATION, + ASK_EFP_COMPUTATION, + LAST_EFP_COMPUTATION, + OPEN_EFP_COMPUTATION, + HIGH_EFP_COMPUTATION, + LOW_EFP_COMPUTATION, + CLOSE_EFP_COMPUTATION, + LAST_TIMESTAMP, + SHORTABLE, + FUNDAMENTAL_RATIOS, + RT_VOLUME, + HALTED, + BID_YIELD, + ASK_YIELD, + LAST_YIELD, + CUST_OPTION_COMPUTATION, + TRADE_COUNT, + TRADE_RATE, + VOLUME_RATE, + LAST_RTH_TRADE, + RT_HISTORICAL_VOL, + IB_DIVIDENDS, + BOND_FACTOR_MULTIPLIER, + REGULATORY_IMBALANCE, + NEWS_TICK, + SHORT_TERM_VOLUME_3_MIN, + SHORT_TERM_VOLUME_5_MIN, + SHORT_TERM_VOLUME_10_MIN, + DELAYED_BID, + DELAYED_ASK, + DELAYED_LAST, + DELAYED_BID_SIZE, + DELAYED_ASK_SIZE, + DELAYED_LAST_SIZE, + DELAYED_HIGH, + DELAYED_LOW, + DELAYED_VOLUME, + DELAYED_CLOSE, + DELAYED_OPEN, + RT_TRD_VOLUME, + CREDITMAN_MARK_PRICE, + CREDITMAN_SLOW_MARK_PRICE, + NOT_SET }; + +inline bool isPrice( TickType tickType) { + return tickType == BID || tickType == ASK || tickType == LAST; +} + +struct Contract; +struct ContractDetails; +struct Order; +struct OrderState; +struct Execution; +struct UnderComp; +struct CommissionReport; + +class EWrapper +{ +public: + virtual ~EWrapper() {}; + + virtual void tickPrice( TickerId tickerId, TickType field, double price, int canAutoExecute) = 0; + virtual void tickSize( TickerId tickerId, TickType field, int size) = 0; + virtual void tickOptionComputation( TickerId tickerId, TickType tickType, double impliedVol, double delta, + double optPrice, double pvDividend, double gamma, double vega, double theta, double undPrice) = 0; + virtual void tickGeneric(TickerId tickerId, TickType tickType, double value) = 0; + virtual void tickString(TickerId tickerId, TickType tickType, const std::string& value) = 0; + virtual void tickEFP(TickerId tickerId, TickType tickType, double basisPoints, const std::string& formattedBasisPoints, + double totalDividends, int holdDays, const std::string& futureLastTradeDate, double dividendImpact, double dividendsToLastTradeDate) = 0; + virtual void orderStatus( OrderId orderId, const std::string& status, double filled, + double remaining, double avgFillPrice, int permId, int parentId, + double lastFillPrice, int clientId, const std::string& whyHeld) = 0; + virtual void openOrder( OrderId orderId, const Contract&, const Order&, const OrderState&) = 0; + virtual void openOrderEnd() = 0; + virtual void winError( const std::string& str, int lastError) = 0; + virtual void connectionClosed() = 0; + virtual void updateAccountValue(const std::string& key, const std::string& val, + const std::string& currency, const std::string& accountName) = 0; + virtual void updatePortfolio( const Contract& contract, double position, + double marketPrice, double marketValue, double averageCost, + double unrealizedPNL, double realizedPNL, const std::string& accountName) = 0; + virtual void updateAccountTime(const std::string& timeStamp) = 0; + virtual void accountDownloadEnd(const std::string& accountName) = 0; + virtual void nextValidId( OrderId orderId) = 0; + virtual void contractDetails( int reqId, const ContractDetails& contractDetails) = 0; + virtual void bondContractDetails( int reqId, const ContractDetails& contractDetails) = 0; + virtual void contractDetailsEnd( int reqId) = 0; + virtual void execDetails( int reqId, const Contract& contract, const Execution& execution) =0; + virtual void execDetailsEnd( int reqId) =0; + virtual void error(const int id, const int errorCode, const std::string errorString) = 0; + virtual void updateMktDepth(TickerId id, int position, int operation, int side, + double price, int size) = 0; + virtual void updateMktDepthL2(TickerId id, int position, std::string marketMaker, int operation, + int side, double price, int size) = 0; + virtual void updateNewsBulletin(int msgId, int msgType, const std::string& newsMessage, const std::string& originExch) = 0; + virtual void managedAccounts( const std::string& accountsList) = 0; + virtual void receiveFA(faDataType pFaDataType, const std::string& cxml) = 0; + virtual void historicalData(TickerId reqId, const std::string& date, double open, double high, + double low, double close, int volume, int barCount, double WAP, int hasGaps) = 0; + virtual void scannerParameters(const std::string& xml) = 0; + virtual void scannerData(int reqId, int rank, const ContractDetails& contractDetails, + const std::string& distance, const std::string& benchmark, const std::string& projection, + const std::string& legsStr) = 0; + virtual void scannerDataEnd(int reqId) = 0; + virtual void realtimeBar(TickerId reqId, long time, double open, double high, double low, double close, + long volume, double wap, int count) = 0; + virtual void currentTime(long time) = 0; + virtual void fundamentalData(TickerId reqId, const std::string& data) = 0; + virtual void deltaNeutralValidation(int reqId, const UnderComp& underComp) = 0; + virtual void tickSnapshotEnd( int reqId) = 0; + virtual void marketDataType( TickerId reqId, int marketDataType) = 0; + virtual void commissionReport( const CommissionReport& commissionReport) = 0; + virtual void position( const std::string& account, const Contract& contract, double position, double avgCost) = 0; + virtual void positionEnd() = 0; + virtual void accountSummary( int reqId, const std::string& account, const std::string& tag, const std::string& value, const std::string& curency) = 0; + virtual void accountSummaryEnd( int reqId) = 0; + virtual void verifyMessageAPI( const std::string& apiData) = 0; + virtual void verifyCompleted( bool isSuccessful, const std::string& errorText) = 0; + virtual void displayGroupList( int reqId, const std::string& groups) = 0; + virtual void displayGroupUpdated( int reqId, const std::string& contractInfo) = 0; + virtual void verifyAndAuthMessageAPI( const std::string& apiData, const std::string& xyzChallange) = 0; + virtual void verifyAndAuthCompleted( bool isSuccessful, const std::string& errorText) = 0; + virtual void connectAck() = 0; + virtual void positionMulti( int reqId, const std::string& account,const std::string& modelCode, const Contract& contract, double pos, double avgCost) = 0; + virtual void positionMultiEnd( int reqId) = 0; + virtual void accountUpdateMulti( int reqId, const std::string& account, const std::string& modelCode, const std::string& key, const std::string& value, const std::string& currency) = 0; + virtual void accountUpdateMultiEnd( int reqId) = 0; + virtual void securityDefinitionOptionalParameter(int reqId, const std::string& exchange, int underlyingConId, const std::string& tradingClass, const std::string& multiplier, std::set expirations, std::set strikes) = 0; + virtual void securityDefinitionOptionalParameterEnd(int reqId) = 0; + virtual void softDollarTiers(int reqId, const std::vector &tiers) = 0; +}; + + +#endif diff --git a/vn.ib/ibapi/windows/client/Execution.h b/vn.ib/ibapi/windows/client/Execution.h new file mode 100644 index 00000000..372f378f --- /dev/null +++ b/vn.ib/ibapi/windows/client/Execution.h @@ -0,0 +1,59 @@ +/* Copyright (C) 2013 Interactive Brokers LLC. All rights reserved. This code is subject to the terms + * and conditions of the IB API Non-Commercial License or the IB API Commercial License, as applicable. */ + +#pragma once +#ifndef execution_def +#define execution_def + + +struct Execution +{ + Execution() + { + shares = 0; + price = 0; + permId = 0; + clientId = 0; + orderId = 0; + cumQty = 0; + avgPrice = 0; + evMultiplier = 0; + } + + std::string execId; + std::string time; + std::string acctNumber; + std::string exchange; + std::string side; + double shares; + double price; + int permId; + long clientId; + long orderId; + int liquidation; + int cumQty; + double avgPrice; + std::string orderRef; + std::string evRule; + double evMultiplier; + std::string modelCode; +}; + +struct ExecutionFilter +{ + ExecutionFilter() + : m_clientId(0) + { + } + + // Filter fields + long m_clientId; + std::string m_acctCode; + std::string m_time; + std::string m_symbol; + std::string m_secType; + std::string m_exchange; + std::string m_side; +}; + +#endif // execution_def diff --git a/vn.ib/ibapi/windows/client/IExternalizable.h b/vn.ib/ibapi/windows/client/IExternalizable.h new file mode 100644 index 00000000..361847e3 --- /dev/null +++ b/vn.ib/ibapi/windows/client/IExternalizable.h @@ -0,0 +1,9 @@ +#pragma once +#include + +struct IExternalizable +{ + virtual const char* readExternal(const char* ptr, const char* endPtr) = 0; + virtual void writeExternal(std::ostream &out) const = 0; +}; + diff --git a/vn.ib/ibapi/windows/client/MarginCondition.cpp b/vn.ib/ibapi/windows/client/MarginCondition.cpp new file mode 100644 index 00000000..3bbb66c5 --- /dev/null +++ b/vn.ib/ibapi/windows/client/MarginCondition.cpp @@ -0,0 +1,30 @@ +#include "StdAfx.h" +#include "MarginCondition.h" +#include + +std::string MarginCondition::valueToString() const { + std::stringstream tmp; + + tmp << m_percent; + + return tmp.str(); +} + +void MarginCondition::valueFromString(const std::string & v) { + std::stringstream tmp; + + tmp << v; + tmp >> m_percent; +} + +std::string MarginCondition::toString() { + return "the margin cushion percent" + OperatorCondition::toString(); +} + +int MarginCondition::percent() { + return m_percent; +} + +void MarginCondition::percent(int percent) { + m_percent = percent; +} diff --git a/vn.ib/ibapi/windows/client/MarginCondition.h b/vn.ib/ibapi/windows/client/MarginCondition.h new file mode 100644 index 00000000..505b920d --- /dev/null +++ b/vn.ib/ibapi/windows/client/MarginCondition.h @@ -0,0 +1,23 @@ +#pragma once +#include "OperatorCondition.h" + +class TWSAPIDLLEXP MarginCondition : public OperatorCondition { + friend OrderCondition; + + int m_percent; + +public: + static const OrderConditionType conditionType = OrderConditionType::Margin; + +protected: + MarginCondition() { } + + virtual std::string valueToString() const; + virtual void valueFromString(const std::string &v); + +public: + virtual std::string toString(); + + int percent(); + void percent(int percent); +}; \ No newline at end of file diff --git a/vn.ib/ibapi/windows/client/OperatorCondition.cpp b/vn.ib/ibapi/windows/client/OperatorCondition.cpp new file mode 100644 index 00000000..b24306bf --- /dev/null +++ b/vn.ib/ibapi/windows/client/OperatorCondition.cpp @@ -0,0 +1,38 @@ +#include "StdAfx.h" +#include "OperatorCondition.h" +#include "EDecoder.h" +#include "EClient.h" + +const char* OperatorCondition::readExternal(const char* ptr, const char* endPtr) { + if (!(ptr = OrderCondition::readExternal(ptr, endPtr))) + return 0; + + DECODE_FIELD(m_isMore); + + std::string str; + + DECODE_FIELD(str); + + valueFromString(str); + + return ptr; +} + +std::string OperatorCondition::toString() { + return " is " + std::string(isMore() ? ">= " : "<= ") + valueToString(); +} + +void OperatorCondition::writeExternal(std::ostream & msg) const { + OrderCondition::writeExternal(msg); + + ENCODE_FIELD(m_isMore); + ENCODE_FIELD(valueToString()); +} + +bool OperatorCondition::isMore() { + return m_isMore; +} + +void OperatorCondition::isMore(bool isMore) { + m_isMore = isMore; +} diff --git a/vn.ib/ibapi/windows/client/OperatorCondition.h b/vn.ib/ibapi/windows/client/OperatorCondition.h new file mode 100644 index 00000000..36a9062c --- /dev/null +++ b/vn.ib/ibapi/windows/client/OperatorCondition.h @@ -0,0 +1,18 @@ +#pragma once +#include "OrderCondition.h" + +class TWSAPIDLLEXP OperatorCondition : public OrderCondition { + bool m_isMore; + +protected: + virtual std::string valueToString() const = 0; + virtual void valueFromString(const std::string &v) = 0; + +public: + virtual const char* readExternal(const char* ptr, const char* endPtr); + virtual std::string toString(); + virtual void writeExternal(std::ostream &out) const; + + bool isMore(); + void isMore(bool isMore); +}; \ No newline at end of file diff --git a/vn.ib/ibapi/windows/client/Order.h b/vn.ib/ibapi/windows/client/Order.h new file mode 100644 index 00000000..d92cec8d --- /dev/null +++ b/vn.ib/ibapi/windows/client/Order.h @@ -0,0 +1,339 @@ +/* Copyright (C) 2013 Interactive Brokers LLC. All rights reserved. This code is subject to the terms + * and conditions of the IB API Non-Commercial License or the IB API Commercial License, as applicable. */ + +#pragma once +#ifndef order_def +#define order_def + +#include "TagValue.h" +#include "OrderCondition.h" +#include "SoftDollarTier.h" + +#include +#include + +#define UNSET_DOUBLE DBL_MAX +#define UNSET_INTEGER INT_MAX + +enum Origin { CUSTOMER, + FIRM, + UNKNOWN }; + +enum AuctionStrategy { AUCTION_UNSET = 0, + AUCTION_MATCH = 1, + AUCTION_IMPROVEMENT = 2, + AUCTION_TRANSPARENT = 3 }; + +struct OrderComboLeg +{ + OrderComboLeg() + { + price = UNSET_DOUBLE; + } + + double price; + + bool operator==( const OrderComboLeg& other) const + { + return (price == other.price); + } +}; + +typedef ibapi::shared_ptr OrderComboLegSPtr; + +struct Order +{ + Order() : + softDollarTier("", "", "") + { + // order identifier + orderId = 0; + clientId = 0; + permId = 0; + + // main order fields + totalQuantity = 0; + lmtPrice = UNSET_DOUBLE; + auxPrice = UNSET_DOUBLE; + + // extended order fields + activeStartTime = ""; + activeStopTime = ""; + ocaType = 0; + transmit = true; + parentId = 0; + blockOrder = false; + sweepToFill = false; + displaySize = 0; + triggerMethod = 0; + outsideRth = false; + hidden = false; + allOrNone = false; + minQty = UNSET_INTEGER; + percentOffset = UNSET_DOUBLE; + overridePercentageConstraints = false; + trailStopPrice = UNSET_DOUBLE; + trailingPercent = UNSET_DOUBLE; + + // institutional (ie non-cleared) only + openClose = "O"; + origin = CUSTOMER; + shortSaleSlot = 0; + exemptCode = -1; + + // SMART routing only + discretionaryAmt = 0; + eTradeOnly = true; + firmQuoteOnly = true; + nbboPriceCap = UNSET_DOUBLE; + optOutSmartRouting = false; + + // BOX exchange orders only + auctionStrategy = AUCTION_UNSET; + startingPrice = UNSET_DOUBLE; + stockRefPrice = UNSET_DOUBLE; + delta = UNSET_DOUBLE; + + // pegged to stock and VOL orders only + stockRangeLower = UNSET_DOUBLE; + stockRangeUpper = UNSET_DOUBLE; + + randomizePrice = false; + randomizeSize = false; + + // VOLATILITY ORDERS ONLY + volatility = UNSET_DOUBLE; + volatilityType = UNSET_INTEGER; // 1=daily, 2=annual + deltaNeutralOrderType = ""; + deltaNeutralAuxPrice = UNSET_DOUBLE; + deltaNeutralConId = 0; + deltaNeutralSettlingFirm = ""; + deltaNeutralClearingAccount = ""; + deltaNeutralClearingIntent = ""; + deltaNeutralOpenClose = ""; + deltaNeutralShortSale = false; + deltaNeutralShortSaleSlot = 0; + deltaNeutralDesignatedLocation = ""; + continuousUpdate = false; + referencePriceType = UNSET_INTEGER; // 1=Average, 2 = BidOrAsk + + // COMBO ORDERS ONLY + basisPoints = UNSET_DOUBLE; // EFP orders only + basisPointsType = UNSET_INTEGER; // EFP orders only + + // SCALE ORDERS ONLY + scaleInitLevelSize = UNSET_INTEGER; + scaleSubsLevelSize = UNSET_INTEGER; + scalePriceIncrement = UNSET_DOUBLE; + scalePriceAdjustValue = UNSET_DOUBLE; + scalePriceAdjustInterval = UNSET_INTEGER; + scaleProfitOffset = UNSET_DOUBLE; + scaleAutoReset = false; + scaleInitPosition = UNSET_INTEGER; + scaleInitFillQty = UNSET_INTEGER; + scaleRandomPercent = false; + scaleTable = ""; + + // What-if + whatIf = false; + + // Not Held + notHeld = false; + solicited = false; + + triggerPrice = UNSET_DOUBLE; + adjustedStopPrice = UNSET_DOUBLE; + adjustedStopLimitPrice = UNSET_DOUBLE; + adjustedTrailingAmount = UNSET_DOUBLE; + lmtPriceOffset = UNSET_DOUBLE; + extOperator = ""; + } + + // order identifier + long orderId; + long clientId; + long permId; + + // main order fields + std::string action; + double totalQuantity; + std::string orderType; + double lmtPrice; + double auxPrice; + + // extended order fields + std::string tif; // "Time in Force" - DAY, GTC, etc. + std::string activeStartTime; // for GTC orders + std::string activeStopTime; // for GTC orders + std::string ocaGroup; // one cancels all group name + int ocaType; // 1 = CANCEL_WITH_BLOCK, 2 = REDUCE_WITH_BLOCK, 3 = REDUCE_NON_BLOCK + std::string orderRef; // order reference + bool transmit; // if false, order will be created but not transmited + long parentId; // Parent order Id, to associate Auto STP or TRAIL orders with the original order. + bool blockOrder; + bool sweepToFill; + int displaySize; + int triggerMethod; // 0=Default, 1=Double_Bid_Ask, 2=Last, 3=Double_Last, 4=Bid_Ask, 7=Last_or_Bid_Ask, 8=Mid-point + bool outsideRth; + bool hidden; + std::string goodAfterTime; // Format: 20060505 08:00:00 {time zone} + std::string goodTillDate; // Format: 20060505 08:00:00 {time zone} + std::string rule80A; // Individual = 'I', Agency = 'A', AgentOtherMember = 'W', IndividualPTIA = 'J', AgencyPTIA = 'U', AgentOtherMemberPTIA = 'M', IndividualPT = 'K', AgencyPT = 'Y', AgentOtherMemberPT = 'N' + bool allOrNone; + int minQty; + double percentOffset; // REL orders only + bool overridePercentageConstraints; + double trailStopPrice; // TRAILLIMIT orders only + double trailingPercent; + + // financial advisors only + std::string faGroup; + std::string faProfile; + std::string faMethod; + std::string faPercentage; + + // institutional (ie non-cleared) only + std::string openClose; // O=Open, C=Close + Origin origin; // 0=Customer, 1=Firm + int shortSaleSlot; // 1 if you hold the shares, 2 if they will be delivered from elsewhere. Only for Action="SSHORT + std::string designatedLocation; // set when slot=2 only. + int exemptCode; + + // SMART routing only + double discretionaryAmt; + bool eTradeOnly; + bool firmQuoteOnly; + double nbboPriceCap; + bool optOutSmartRouting; + + // BOX exchange orders only + int auctionStrategy; // AUCTION_MATCH, AUCTION_IMPROVEMENT, AUCTION_TRANSPARENT + double startingPrice; + double stockRefPrice; + double delta; + + // pegged to stock and VOL orders only + double stockRangeLower; + double stockRangeUpper; + + bool randomizeSize; + bool randomizePrice; + + // VOLATILITY ORDERS ONLY + double volatility; + int volatilityType; // 1=daily, 2=annual + std::string deltaNeutralOrderType; + double deltaNeutralAuxPrice; + long deltaNeutralConId; + std::string deltaNeutralSettlingFirm; + std::string deltaNeutralClearingAccount; + std::string deltaNeutralClearingIntent; + std::string deltaNeutralOpenClose; + bool deltaNeutralShortSale; + int deltaNeutralShortSaleSlot; + std::string deltaNeutralDesignatedLocation; + bool continuousUpdate; + int referencePriceType; // 1=Average, 2 = BidOrAsk + + // COMBO ORDERS ONLY + double basisPoints; // EFP orders only + int basisPointsType; // EFP orders only + + // SCALE ORDERS ONLY + int scaleInitLevelSize; + int scaleSubsLevelSize; + double scalePriceIncrement; + double scalePriceAdjustValue; + int scalePriceAdjustInterval; + double scaleProfitOffset; + bool scaleAutoReset; + int scaleInitPosition; + int scaleInitFillQty; + bool scaleRandomPercent; + std::string scaleTable; + + // HEDGE ORDERS + std::string hedgeType; // 'D' - delta, 'B' - beta, 'F' - FX, 'P' - pair + std::string hedgeParam; // 'beta=X' value for beta hedge, 'ratio=Y' for pair hedge + + // Clearing info + std::string account; // IB account + std::string settlingFirm; + std::string clearingAccount; // True beneficiary of the order + std::string clearingIntent; // "" (Default), "IB", "Away", "PTA" (PostTrade) + + // ALGO ORDERS ONLY + std::string algoStrategy; + + TagValueListSPtr algoParams; + TagValueListSPtr smartComboRoutingParams; + + std::string algoId; + + // What-if + bool whatIf; + + // Not Held + bool notHeld; + bool solicited; + + // models + std::string modelCode; + + // order combo legs + typedef std::vector OrderComboLegList; + typedef ibapi::shared_ptr OrderComboLegListSPtr; + + OrderComboLegListSPtr orderComboLegs; + + TagValueListSPtr orderMiscOptions; + + //VER PEG2BENCH fields: + int referenceContractId; + double peggedChangeAmount; + bool isPeggedChangeAmountDecrease; + double referenceChangeAmount; + std::string referenceExchangeId; + std::string adjustedOrderType; + double triggerPrice; + double adjustedStopPrice; + double adjustedStopLimitPrice; + double adjustedTrailingAmount; + int adjustableTrailingUnit; + double lmtPriceOffset; + + std::vector> conditions; + bool conditionsCancelOrder; + bool conditionsIgnoreRth; + + // ext operator + std::string extOperator; + + SoftDollarTier softDollarTier; + +public: + + // Helpers + static void CloneOrderComboLegs(OrderComboLegListSPtr& dst, const OrderComboLegListSPtr& src); +}; + +inline void +Order::CloneOrderComboLegs(OrderComboLegListSPtr& dst, const OrderComboLegListSPtr& src) +{ + if (!src.get()) + return; + + dst->reserve(src->size()); + + OrderComboLegList::const_iterator iter = src->begin(); + const OrderComboLegList::const_iterator iterEnd = src->end(); + + for (; iter != iterEnd; ++iter) { + const OrderComboLeg* leg = iter->get(); + if (!leg) + continue; + dst->push_back(OrderComboLegSPtr(new OrderComboLeg(*leg))); + } +} + +#endif diff --git a/vn.ib/ibapi/windows/client/OrderCondition.cpp b/vn.ib/ibapi/windows/client/OrderCondition.cpp new file mode 100644 index 00000000..02c0497c --- /dev/null +++ b/vn.ib/ibapi/windows/client/OrderCondition.cpp @@ -0,0 +1,73 @@ +#include "StdAfx.h" +#include "OrderCondition.h" +#include "executioncondition.h" +#include "MarginCondition.h" +#include "TimeCondition.h" +#include "PercentChangeCondition.h" +#include "PriceCondition.h" +#include "VolumeCondition.h" +#include "EDecoder.h" +#include "EClient.h" + +const char* OrderCondition::readExternal(const char* ptr, const char* endPtr) { + std::string connector; + + DECODE_FIELD(connector) + + conjunctionConnection(connector == "a"); + + return ptr; +} + +void OrderCondition::writeExternal(std::ostream & msg) const { + ENCODE_FIELD(conjunctionConnection() ? "a" : "o") +} + +std::string OrderCondition::toString() { + return conjunctionConnection() ? "" : ""; +} + +bool OrderCondition::conjunctionConnection() const { + return m_isConjunctionConnection; +} + +void OrderCondition::conjunctionConnection(bool isConjunctionConnection) { + m_isConjunctionConnection = isConjunctionConnection; +} + +OrderCondition::OrderConditionType OrderCondition::type() { return m_type; } + +OrderCondition *OrderCondition::create(OrderConditionType type) { + OrderCondition *rval = 0; + + switch (type) { + case Execution: + rval = new ExecutionCondition(); + break; + + case Margin: + rval = new MarginCondition(); + break; + + case PercentChange: + rval = new PercentChangeCondition(); + break; + + case Price: + rval = new PriceCondition(); + break; + + case Time: + rval = new TimeCondition(); + break; + + case Volume: + rval = new VolumeCondition(); + break; + } + + if (rval != 0) + rval->m_type = type; + + return rval; +} diff --git a/vn.ib/ibapi/windows/client/OrderCondition.h b/vn.ib/ibapi/windows/client/OrderCondition.h new file mode 100644 index 00000000..55b0090e --- /dev/null +++ b/vn.ib/ibapi/windows/client/OrderCondition.h @@ -0,0 +1,30 @@ +#pragma once +#include "IExternalizable.h" +#include "shared_ptr.h" + +class TWSAPIDLLEXP OrderCondition : public IExternalizable { +public: + enum OrderConditionType { + Price = 1, + Time = 3, + Margin = 4, + Execution = 5, + Volume = 6, + PercentChange = 7 + }; + +private: + OrderConditionType m_type; + bool m_isConjunctionConnection; + +public: + virtual const char* readExternal(const char* ptr, const char* endPtr); + virtual void writeExternal(std::ostream &out) const; + + std::string toString(); + bool conjunctionConnection() const; + void conjunctionConnection(bool isConjunctionConnection); + OrderConditionType type(); + + static OrderCondition *create(OrderConditionType type); +}; \ No newline at end of file diff --git a/vn.ib/ibapi/windows/client/OrderState.h b/vn.ib/ibapi/windows/client/OrderState.h new file mode 100644 index 00000000..ba12851c --- /dev/null +++ b/vn.ib/ibapi/windows/client/OrderState.h @@ -0,0 +1,33 @@ +/* Copyright (C) 2013 Interactive Brokers LLC. All rights reserved. This code is subject to the terms + * and conditions of the IB API Non-Commercial License or the IB API Commercial License, as applicable. */ + +#pragma once +#ifndef ORDER_STATE_H__INCLUDED +#define ORDER_STATE_H__INCLUDED + +#include "Order.h" + +struct OrderState { + + explicit OrderState() + : + commission(UNSET_DOUBLE), + minCommission(UNSET_DOUBLE), + maxCommission(UNSET_DOUBLE) + {} + + std::string status; + + std::string initMargin; + std::string maintMargin; + std::string equityWithLoan; + + double commission; + double minCommission; + double maxCommission; + std::string commissionCurrency; + + std::string warningText; +}; + +#endif diff --git a/vn.ib/ibapi/windows/client/PercentChangeCondition.cpp b/vn.ib/ibapi/windows/client/PercentChangeCondition.cpp new file mode 100644 index 00000000..a05d9800 --- /dev/null +++ b/vn.ib/ibapi/windows/client/PercentChangeCondition.cpp @@ -0,0 +1,26 @@ +#include "StdAfx.h" +#include "PercentChangeCondition.h" +#include + +std::string PercentChangeCondition::valueToString() const { + std::stringstream tmp; + + tmp << m_changePercent; + + return tmp.str(); +} + +void PercentChangeCondition::valueFromString(const std::string & v) { + std::stringstream tmp; + + tmp << v; + tmp >> m_changePercent; +} + +double PercentChangeCondition::changePercent() { + return m_changePercent; +} + +void PercentChangeCondition::changePercent(double changePercent) { + m_changePercent = changePercent; +} diff --git a/vn.ib/ibapi/windows/client/PercentChangeCondition.h b/vn.ib/ibapi/windows/client/PercentChangeCondition.h new file mode 100644 index 00000000..6ed18f89 --- /dev/null +++ b/vn.ib/ibapi/windows/client/PercentChangeCondition.h @@ -0,0 +1,23 @@ +#pragma once +#include "ContractCondition.h" +#include "Order.h" + +class TWSAPIDLLEXP PercentChangeCondition : public ContractCondition { + friend OrderCondition; + + double m_changePercent; + +protected: + PercentChangeCondition() + : m_changePercent(UNSET_DOUBLE) + { } + + virtual std::string valueToString() const; + virtual void valueFromString(const std::string &v); + +public: + static const OrderConditionType conditionType = OrderConditionType::PercentChange; + + double changePercent(); + void changePercent(double changePercent); +}; \ No newline at end of file diff --git a/vn.ib/ibapi/windows/client/PriceCondition.cpp b/vn.ib/ibapi/windows/client/PriceCondition.cpp new file mode 100644 index 00000000..d5cea7ab --- /dev/null +++ b/vn.ib/ibapi/windows/client/PriceCondition.cpp @@ -0,0 +1,61 @@ +#include "StdAfx.h" +#include "PriceCondition.h" +#include +#include "EDecoder.h" +#include "EClient.h" + +std::string PriceCondition::valueToString() const { + std::stringstream tmp; + + tmp << m_price; + + return tmp.str(); +} + +void PriceCondition::valueFromString(const std::string & v) { + std::stringstream tmp; + + tmp << v; + tmp >> m_price; +} + +double PriceCondition::price() { + return m_price; +} + +void PriceCondition::price(double price) { + m_price = price; +} + +std::string PriceCondition::toString() { + return strTriggerMethod() + " " + ContractCondition::toString(); +} + +PriceCondition::Method PriceCondition::triggerMethod() { + return (Method)m_triggerMethod; +} + +std::string PriceCondition::strTriggerMethod() { + static std::string mthdNames[] = { "default", "double bid/ask", "last", "double last", "bid/ask", "", "", "last of bid/ask", "mid-point" }; + + return mthdNames[triggerMethod()]; +} + +void PriceCondition::triggerMethod(Method triggerMethod) { + m_triggerMethod = triggerMethod; +} + +const char* PriceCondition::readExternal(const char* ptr, const char* endPtr) { + if (!(ptr = ContractCondition::readExternal(ptr, endPtr))) + return 0; + + DECODE_FIELD(m_triggerMethod) + + return ptr; +} + +void PriceCondition::writeExternal(std::ostream & msg) const { + ContractCondition::writeExternal(msg); + + ENCODE_FIELD(m_triggerMethod); +} diff --git a/vn.ib/ibapi/windows/client/PriceCondition.h b/vn.ib/ibapi/windows/client/PriceCondition.h new file mode 100644 index 00000000..4635b095 --- /dev/null +++ b/vn.ib/ibapi/windows/client/PriceCondition.h @@ -0,0 +1,38 @@ +#pragma once +#include "ContractCondition.h" + +class TWSAPIDLLEXP PriceCondition : public ContractCondition { + friend OrderCondition; + + double m_price; + int m_triggerMethod; + + virtual std::string valueToString() const; + virtual void valueFromString(const std::string &v); + +protected: + PriceCondition() { }; + +public: + static const OrderConditionType conditionType = OrderConditionType::Price; + enum Method { + Default = 0, + DoubleBidAsk = 1, + Last = 2, + DoubleLast = 3, + BidAsk = 4, + LastBidAsk = 7, + MidPoint = 8 + }; + + double price(); + void price(double price); + + virtual std::string toString(); + virtual const char* readExternal(const char* ptr, const char* endPtr); + virtual void writeExternal(std::ostream & out) const; + + Method triggerMethod(); + std::string strTriggerMethod(); + void triggerMethod(Method triggerMethod); +}; \ No newline at end of file diff --git a/vn.ib/ibapi/windows/client/Resource.h b/vn.ib/ibapi/windows/client/Resource.h new file mode 100644 index 00000000..d1af86eb --- /dev/null +++ b/vn.ib/ibapi/windows/client/Resource.h @@ -0,0 +1,19 @@ +/* Copyright (C) 2013 Interactive Brokers LLC. All rights reserved. This code is subject to the terms + * and conditions of the IB API Non-Commercial License or the IB API Commercial License, as applicable. */ + +//{{NO_DEPENDENCIES}} +// Microsoft Visual C++ generated include file. +// Used by TWSSOCKETCLIENT.RC +// + +// Next default values for new objects +// +#ifdef APSTUDIO_INVOKED +#ifndef APSTUDIO_READONLY_SYMBOLS + +#define _APS_NEXT_RESOURCE_VALUE 129 +#define _APS_NEXT_COMMAND_VALUE 32771 +#define _APS_NEXT_CONTROL_VALUE 1000 +#define _APS_NEXT_SYMED_VALUE 101 +#endif +#endif diff --git a/vn.ib/ibapi/windows/client/ScannerSubscription.h b/vn.ib/ibapi/windows/client/ScannerSubscription.h new file mode 100644 index 00000000..007a5722 --- /dev/null +++ b/vn.ib/ibapi/windows/client/ScannerSubscription.h @@ -0,0 +1,51 @@ +/* Copyright (C) 2013 Interactive Brokers LLC. All rights reserved. This code is subject to the terms + * and conditions of the IB API Non-Commercial License or the IB API Commercial License, as applicable. */ + +#pragma once +#ifndef scanner_def +#define scanner_def + +#include +#include + +#define UNSET_DOUBLE DBL_MAX +#define UNSET_INTEGER INT_MAX +#define NO_ROW_NUMBER_SPECIFIED -1; + +struct ScannerSubscription { + ScannerSubscription() { + numberOfRows = NO_ROW_NUMBER_SPECIFIED; + abovePrice = DBL_MAX; + belowPrice = DBL_MAX; + aboveVolume = INT_MAX; + marketCapAbove = DBL_MAX; + marketCapBelow = DBL_MAX; + couponRateAbove = DBL_MAX; + couponRateBelow = DBL_MAX; + excludeConvertible = 0; + averageOptionVolumeAbove = 0; + } + int numberOfRows; + std::string instrument; + std::string locationCode; + std::string scanCode; + double abovePrice; + double belowPrice; + int aboveVolume; + double marketCapAbove; + double marketCapBelow; + std::string moodyRatingAbove; + std::string moodyRatingBelow; + std::string spRatingAbove; + std::string spRatingBelow; + std::string maturityDateAbove; + std::string maturityDateBelow; + double couponRateAbove; + double couponRateBelow; + int excludeConvertible; + int averageOptionVolumeAbove; + std::string scannerSettingPairs; + std::string stockTypeFilter; +}; + +#endif diff --git a/vn.ib/ibapi/windows/client/SoftDollarTier.cpp b/vn.ib/ibapi/windows/client/SoftDollarTier.cpp new file mode 100644 index 00000000..daf20233 --- /dev/null +++ b/vn.ib/ibapi/windows/client/SoftDollarTier.cpp @@ -0,0 +1,22 @@ +#include "StdAfx.h" +#include "SoftDollarTier.h" + +SoftDollarTier::SoftDollarTier(const std::string& name, const std::string& val, const std::string& displayName) : + m_name(name), m_val(val), m_displayName(displayName) +{ +} + +std::string SoftDollarTier::name() const +{ + return m_name; +} + +std::string SoftDollarTier::val() const +{ + return m_val; +} + +std::string SoftDollarTier::displayName() const +{ + return m_displayName; +} \ No newline at end of file diff --git a/vn.ib/ibapi/windows/client/SoftDollarTier.h b/vn.ib/ibapi/windows/client/SoftDollarTier.h new file mode 100644 index 00000000..86761b9b --- /dev/null +++ b/vn.ib/ibapi/windows/client/SoftDollarTier.h @@ -0,0 +1,25 @@ +#pragma once + +class TWSAPIDLLEXP SoftDollarTier +{ + std::string m_name, m_val, m_displayName; + +public: + SoftDollarTier(const std::string& name = "", const std::string& val = "", const std::string& displayName = ""); + + std::string name() const; + std::string val() const; + std::string displayName() const; + + //װ + bool operator==(const SoftDollarTier & a) + { + return a.name() == this->name(); + } + + bool operator!=(const SoftDollarTier & a) + { + return a.name() != this->name(); + } +}; + diff --git a/vn.ib/ibapi/windows/client/StdAfx.cpp b/vn.ib/ibapi/windows/client/StdAfx.cpp new file mode 100644 index 00000000..35d31dac --- /dev/null +++ b/vn.ib/ibapi/windows/client/StdAfx.cpp @@ -0,0 +1,4 @@ +/* Copyright (C) 2013 Interactive Brokers LLC. All rights reserved. This code is subject to the terms + * and conditions of the IB API Non-Commercial License or the IB API Commercial License, as applicable. */ + +#include "StdAfx.h" diff --git a/vn.ib/ibapi/windows/client/StdAfx.h b/vn.ib/ibapi/windows/client/StdAfx.h new file mode 100644 index 00000000..1174bc50 --- /dev/null +++ b/vn.ib/ibapi/windows/client/StdAfx.h @@ -0,0 +1,39 @@ +/* Copyright (C) 2013 Interactive Brokers LLC. All rights reserved. This code is subject to the terms + * and conditions of the IB API Non-Commercial License or the IB API Commercial License, as applicable. */ + +#ifdef _MSC_VER + +#ifdef TWSAPIDLL +#ifndef TWSAPIDLLEXP +#define TWSAPIDLLEXP __declspec(dllexport) +#endif +#endif + +#define assert ASSERT +#define snprintf _snprintf +#include +#include +#define IB_WIN32 + +#else + +#include // defines _POSIX_THREADS, @see http://bit.ly/1pWJ8KQ#tag_13_80_03_02 + +#if defined(_POSIX_THREADS) && (_POSIX_THREADS > 0) + #include + #define IB_POSIX +#else + #error "Not supported on this platform" +#endif + +#endif // #ifdef _MSC_VER + +#include +#include +#include +#include + +#ifndef TWSAPIDLLEXP +#define TWSAPIDLLEXP +#endif + diff --git a/vn.ib/ibapi/windows/client/TagValue.h b/vn.ib/ibapi/windows/client/TagValue.h new file mode 100644 index 00000000..2daf2db8 --- /dev/null +++ b/vn.ib/ibapi/windows/client/TagValue.h @@ -0,0 +1,29 @@ +/* Copyright (C) 2013 Interactive Brokers LLC. All rights reserved. This code is subject to the terms + * and conditions of the IB API Non-Commercial License or the IB API Commercial License, as applicable. */ + +#pragma once +#ifndef tagvalue_def +#define tagvalue_def + +#include "shared_ptr.h" + +#include +#include + +struct TagValue +{ + TagValue() {} + TagValue(const std::string& p_tag, const std::string& p_value) + : tag(p_tag), value(p_value) + {} + + std::string tag; + std::string value; +}; + +typedef ibapi::shared_ptr TagValueSPtr; +typedef std::vector TagValueList; +typedef ibapi::shared_ptr TagValueListSPtr; + +#endif + diff --git a/vn.ib/ibapi/windows/client/TimeCondition.cpp b/vn.ib/ibapi/windows/client/TimeCondition.cpp new file mode 100644 index 00000000..a7cf06f3 --- /dev/null +++ b/vn.ib/ibapi/windows/client/TimeCondition.cpp @@ -0,0 +1,22 @@ +#include "StdAfx.h" +#include "TimeCondition.h" + +std::string TimeCondition::valueToString() const { + return m_time; +} + +void TimeCondition::valueFromString(const std::string & v) { + m_time = v; +} + +std::string TimeCondition::toString() { + return "time" + OperatorCondition::toString(); +} + +std::string TimeCondition::time() { + return m_time; +} + +void TimeCondition::time(const std::string & time) { + m_time = time; +} diff --git a/vn.ib/ibapi/windows/client/TimeCondition.h b/vn.ib/ibapi/windows/client/TimeCondition.h new file mode 100644 index 00000000..c7b3bce9 --- /dev/null +++ b/vn.ib/ibapi/windows/client/TimeCondition.h @@ -0,0 +1,22 @@ +#pragma once +#include "OperatorCondition.h" + +class TWSAPIDLLEXP TimeCondition : public OperatorCondition { + friend OrderCondition; + + std::string m_time; + +protected: + TimeCondition() { } + + virtual std::string valueToString() const; + virtual void valueFromString(const std::string &v); + +public: + static const OrderConditionType conditionType = OrderConditionType::Time; + + virtual std::string toString(); + + std::string time(); + void time(const std::string &time); +}; \ No newline at end of file diff --git a/vn.ib/ibapi/client/TwsSocketClient.def b/vn.ib/ibapi/windows/client/TwsSocketClient.def similarity index 100% rename from vn.ib/ibapi/client/TwsSocketClient.def rename to vn.ib/ibapi/windows/client/TwsSocketClient.def diff --git a/vn.ib/ibapi/client/TwsSocketClient.rc b/vn.ib/ibapi/windows/client/TwsSocketClient.rc similarity index 95% rename from vn.ib/ibapi/client/TwsSocketClient.rc rename to vn.ib/ibapi/windows/client/TwsSocketClient.rc index 9e22a3ca..f496d853 100644 --- a/vn.ib/ibapi/client/TwsSocketClient.rc +++ b/vn.ib/ibapi/windows/client/TwsSocketClient.rc @@ -67,8 +67,8 @@ END // VS_VERSION_INFO VERSIONINFO - FILEVERSION 9,72,16,0 - PRODUCTVERSION 9,72,16,0 + FILEVERSION 9,72,18,0 + PRODUCTVERSION 9,72,18,0 FILEFLAGSMASK 0x3fL #ifdef _DEBUG FILEFLAGS 0x1L @@ -85,12 +85,12 @@ BEGIN BEGIN VALUE "CompanyName", "Interactive Brokers" VALUE "FileDescription", "TwsSocketClient DLL" - VALUE "FileVersion", "9.72.16" + VALUE "FileVersion", "9.72.18" VALUE "InternalName", "TwsSocketClient" VALUE "LegalCopyright", "Copyright (C) 2006" VALUE "OriginalFilename", "TwsSocketClient.DLL" VALUE "ProductName", "TwsSocketClient Dynamic Link Library" - VALUE "ProductVersion", "9.72.16" + VALUE "ProductVersion", "9.72.18" END END BLOCK "VarFileInfo" diff --git a/vn.ib/ibapi/client/TwsSocketClient.sln b/vn.ib/ibapi/windows/client/TwsSocketClient.sln similarity index 100% rename from vn.ib/ibapi/client/TwsSocketClient.sln rename to vn.ib/ibapi/windows/client/TwsSocketClient.sln diff --git a/vn.ib/ibapi/client/TwsSocketClient.vcxproj b/vn.ib/ibapi/windows/client/TwsSocketClient.vcxproj similarity index 99% rename from vn.ib/ibapi/client/TwsSocketClient.vcxproj rename to vn.ib/ibapi/windows/client/TwsSocketClient.vcxproj index 59e2851a..4f32b1e5 100644 --- a/vn.ib/ibapi/client/TwsSocketClient.vcxproj +++ b/vn.ib/ibapi/windows/client/TwsSocketClient.vcxproj @@ -177,6 +177,7 @@ + @@ -211,6 +212,7 @@ + diff --git a/vn.ib/ibapi/client/TwsSocketClient.vcxproj.filters b/vn.ib/ibapi/windows/client/TwsSocketClient.vcxproj.filters similarity index 97% rename from vn.ib/ibapi/client/TwsSocketClient.vcxproj.filters rename to vn.ib/ibapi/windows/client/TwsSocketClient.vcxproj.filters index b2de3f61..d9f5141d 100644 --- a/vn.ib/ibapi/client/TwsSocketClient.vcxproj.filters +++ b/vn.ib/ibapi/windows/client/TwsSocketClient.vcxproj.filters @@ -75,6 +75,9 @@ Source Files + + Source Files + @@ -201,5 +204,8 @@ Header Files + + Header Files + \ No newline at end of file diff --git a/vn.ib/ibapi/client/TwsSocketClient.vcxproj.user b/vn.ib/ibapi/windows/client/TwsSocketClient.vcxproj.user similarity index 100% rename from vn.ib/ibapi/client/TwsSocketClient.vcxproj.user rename to vn.ib/ibapi/windows/client/TwsSocketClient.vcxproj.user diff --git a/vn.ib/ibapi/windows/client/TwsSocketClientErrors.h b/vn.ib/ibapi/windows/client/TwsSocketClientErrors.h new file mode 100644 index 00000000..b14cdf66 --- /dev/null +++ b/vn.ib/ibapi/windows/client/TwsSocketClientErrors.h @@ -0,0 +1,40 @@ +/* Copyright (C) 2013 Interactive Brokers LLC. All rights reserved. This code is subject to the terms + * and conditions of the IB API Non-Commercial License or the IB API Commercial License, as applicable. */ + +#pragma once +#ifndef tswsocketclienterrors_def +#define tswsocketclienterrors_def + +static const int NO_VALID_ID = -1; +static const int NO_VALID_ERROR_CODE = 0; +static const int SYSTEM_ERROR = 600; + +class CodeMsgPair { +public: + CodeMsgPair(int code, std::string msg) : m_errorCode(code), m_errorMsg(msg) { + } +private: + int m_errorCode; + std::string m_errorMsg; +public: + int code() const { return m_errorCode; } + const std::string& msg() const { return m_errorMsg; } +}; + +static const CodeMsgPair ALREADY_CONNECTED(501, "Already connected."); +static const CodeMsgPair CONNECT_FAIL(502, "Couldn't connect to TWS. Confirm that \"Enable ActiveX and Socket Clients\" " + "is enabled and connection port is the same as \"Socket Port\" on the " + "TWS \"Edit->Global Configuration...->API->Settings\" menu. Live Trading ports: " + "TWS: 7496; IB Gateway: 4001. Simulated Trading ports for new installations " + "of version 954.1 or newer: TWS: 7497; IB Gateway: 4002"); +static const CodeMsgPair UPDATE_TWS(503, "The TWS is out of date and must be upgraded."); +static const CodeMsgPair NOT_CONNECTED(504, "Not connected"); +static const CodeMsgPair UNKNOWN_ID(505, "Fatal Error: Unknown message id."); +static const CodeMsgPair UNSUPPORTED_VERSION(506, "Unsupported version"); +static const CodeMsgPair BAD_LENGTH(507, "Bad message length"); +static const CodeMsgPair BAD_MESSAGE(508, "Bad message"); +static const CodeMsgPair SOCKET_EXCEPTION(509, "Exception caught while reading socket - "); +static const CodeMsgPair FAIL_CREATE_SOCK(520, "Failed to create socket"); +static const CodeMsgPair SSL_FAIL(530, "SSL specific error: "); + +#endif diff --git a/vn.ib/ibapi/windows/client/VolumeCondition.cpp b/vn.ib/ibapi/windows/client/VolumeCondition.cpp new file mode 100644 index 00000000..60879b8f --- /dev/null +++ b/vn.ib/ibapi/windows/client/VolumeCondition.cpp @@ -0,0 +1,26 @@ +#include "StdAfx.h" +#include "VolumeCondition.h" +#include + +std::string VolumeCondition::valueToString() const { + std::stringstream tmp; + + tmp << m_volume; + + return tmp.str(); +} + +void VolumeCondition::valueFromString(const std::string & v) { + std::stringstream tmp; + + tmp << v; + tmp >> m_volume; +} + +int VolumeCondition::volume() { + return m_volume; +} + +void VolumeCondition::volume(int volume) { + m_volume = volume; +} diff --git a/vn.ib/ibapi/windows/client/VolumeCondition.h b/vn.ib/ibapi/windows/client/VolumeCondition.h new file mode 100644 index 00000000..345e45e2 --- /dev/null +++ b/vn.ib/ibapi/windows/client/VolumeCondition.h @@ -0,0 +1,20 @@ +#pragma once +#include "ContractCondition.h" + +class TWSAPIDLLEXP VolumeCondition : public ContractCondition { + friend OrderCondition; + + int m_volume; + +protected: + VolumeCondition() { } + + virtual std::string valueToString() const; + virtual void valueFromString(const std::string &v); + +public: + static const OrderConditionType conditionType = OrderConditionType::Volume; + + int volume(); + void volume(int volume); +}; \ No newline at end of file diff --git a/vn.ib/ibapi/windows/client/executioncondition.cpp b/vn.ib/ibapi/windows/client/executioncondition.cpp new file mode 100644 index 00000000..6ef18d75 --- /dev/null +++ b/vn.ib/ibapi/windows/client/executioncondition.cpp @@ -0,0 +1,51 @@ +#include "StdAfx.h" +#include "executioncondition.h" +#include "EDecoder.h" +#include "EClient.h" + +const char* ExecutionCondition::readExternal(const char* ptr, const char* endPtr) { + if (!(ptr = OrderCondition::readExternal(ptr, endPtr))) + return 0; + + DECODE_FIELD(m_secType) + DECODE_FIELD(m_exchange); + DECODE_FIELD(m_symbol); + + return ptr; +} + +std::string ExecutionCondition::toString() { + return "trade occurs for " + m_symbol + " symbol on " + m_exchange + " exchange for " + m_secType + " security type"; +} + +void ExecutionCondition::writeExternal(std::ostream & msg) const { + OrderCondition::writeExternal(msg); + + ENCODE_FIELD(m_secType); + ENCODE_FIELD(m_exchange); + ENCODE_FIELD(m_symbol); +} + +std::string ExecutionCondition::exchange() { + return m_exchange; +} + +void ExecutionCondition::exchange(const std::string &exchange) { + m_exchange = exchange; +} + +std::string ExecutionCondition::secType() { + return m_secType; +} + +void ExecutionCondition::secType(const std::string &secType) { + m_secType = secType; +} + +std::string ExecutionCondition::symbol() { + return m_symbol; +} + +void ExecutionCondition::symbol(const std::string &symbol) { + m_symbol = symbol; +} diff --git a/vn.ib/ibapi/windows/client/executioncondition.h b/vn.ib/ibapi/windows/client/executioncondition.h new file mode 100644 index 00000000..bc8f427a --- /dev/null +++ b/vn.ib/ibapi/windows/client/executioncondition.h @@ -0,0 +1,29 @@ +#pragma once +#include +#include "OrderCondition.h" + +class TWSAPIDLLEXP ExecutionCondition : public OrderCondition { + friend OrderCondition; + + std::string m_exchange; + std::string m_secType; + std::string m_symbol; + +public: + static const OrderConditionType conditionType = OrderConditionType::Execution; + +protected: + ExecutionCondition() { } + +public: + virtual const char* readExternal(const char* ptr, const char* endPtr); + virtual std::string toString(); + virtual void writeExternal(std::ostream &out) const; + + std::string exchange(); + void exchange(const std::string &exchange); + std::string secType(); + void secType(const std::string &secType); + std::string symbol(); + void symbol(const std::string &symbol); +}; \ No newline at end of file diff --git a/vn.ib/ibapi/client/res/TwsSocketClient.rc2 b/vn.ib/ibapi/windows/client/res/TwsSocketClient.rc2 similarity index 100% rename from vn.ib/ibapi/client/res/TwsSocketClient.rc2 rename to vn.ib/ibapi/windows/client/res/TwsSocketClient.rc2 diff --git a/vn.ib/ibapi/client/shared_ptr.h b/vn.ib/ibapi/windows/client/shared_ptr.h similarity index 96% rename from vn.ib/ibapi/client/shared_ptr.h rename to vn.ib/ibapi/windows/client/shared_ptr.h index 5cbe7d31..5b64e474 100644 --- a/vn.ib/ibapi/client/shared_ptr.h +++ b/vn.ib/ibapi/windows/client/shared_ptr.h @@ -91,12 +91,12 @@ public: } //封装添加 - bool operator==(const shared_ptr const & a) + bool operator==(const shared_ptr & a) { return a.get() == this->get(); } - bool operator!=(const shared_ptr const & a) + bool operator!=(const shared_ptr & a) { return a.get() != this->get(); } diff --git a/vn.ib/ibapi/windows/lib/TwsSocketClient.lib b/vn.ib/ibapi/windows/lib/TwsSocketClient.lib new file mode 100644 index 0000000000000000000000000000000000000000..32c1442d30be76460940e2f497b7ea679ccab1bb GIT binary patch literal 162212 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 literal 0 HcmV?d00001 diff --git a/vn.ib/ibapi/windows/ssl/EClientSocketSSL.cpp b/vn.ib/ibapi/windows/ssl/EClientSocketSSL.cpp new file mode 100644 index 00000000..cc0ff8e6 --- /dev/null +++ b/vn.ib/ibapi/windows/ssl/EClientSocketSSL.cpp @@ -0,0 +1,470 @@ +/* Copyright (C) 2013 Interactive Brokers LLC. All rights reserved. This code is subject to the terms +* and conditions of the IB API Non-Commercial License or the IB API Commercial License, as applicable. */ + +#include "StdAfx.h" + + +#include "../client/EPosixClientSocketPlatform.h" +#include "EClientSocketSSL.h" + +#include "../client/TwsSocketClientErrors.h" +#include "../client/EWrapper.h" +#include "../client/EDecoder.h" +#include "../client/EReaderSignal.h" +#include "EReaderSSL.h" +#include "../client/EMessage.h" + +#include +#include +#include + +const int MIN_SERVER_VER_SUPPORTED = 38; //all supported server versions are defined in EDecoder.h + +std::vector EClientSocketSSL::sslLocks(CRYPTO_num_locks()); + +void EClientSocketSSL::lockingFunc(int mode, int type, const char *file, int line) { + if (mode & CRYPTO_LOCK) + sslLocks[type].Enter(); + else + sslLocks[type].Leave(); +} + +unsigned long EClientSocketSSL::thIdFunc() { +#if defined(IB_POSIX) + return syscall(SYS_gettid); +#elif defined(IB_WIN32) + return GetCurrentThreadId(); +#else +# error "Not implemented on this platform" +#endif + +} + +/////////////////////////////////////////////////////////// +// member funcs +EClientSocketSSL::EClientSocketSSL(EWrapper *ptr, EReaderSignal *pSignal) : EClient( ptr, new ESocketSSL()) +{ + m_fd = SocketsInit() ? -1 : -2; + m_allowRedirect = false; + m_asyncEConnect = false; + m_pSignal = pSignal; + + SSL_load_error_strings(); + ERR_load_BIO_strings(); + SSL_library_init(); + CRYPTO_set_locking_callback(lockingFunc); + CRYPTO_w_lock(CRYPTO_LOCK_DYNLOCK); + CRYPTO_set_id_callback(thIdFunc); + CRYPTO_w_unlock(CRYPTO_LOCK_DYNLOCK); +} + +EClientSocketSSL::~EClientSocketSSL() +{ + if( m_fd != -2) + SocketsDestroy(); +} + +bool EClientSocketSSL::asyncEConnect() const { + return m_asyncEConnect; +} + +void EClientSocketSSL::asyncEConnect(bool val) { + m_asyncEConnect = val; +} + +bool EClientSocketSSL::eConnect( const char *host, unsigned int port, int clientId, bool extraAuth) +{ + if( m_fd == -2) { + getWrapper()->error( NO_VALID_ID, FAIL_CREATE_SOCK.code(), FAIL_CREATE_SOCK.msg()); + return false; + } + + // reset errno + errno = 0; + + // already connected? + if( m_fd >= 0) { + errno = EISCONN; + getWrapper()->error( NO_VALID_ID, ALREADY_CONNECTED.code(), ALREADY_CONNECTED.msg()); + return false; + } + + // normalize host + m_hostNorm = (host && *host) ? host : "127.0.0.1"; + + // initialize host and port + setHost( m_hostNorm); + setPort( port); + + // try to connect to specified host and port + ConnState resState = CS_DISCONNECTED; + + return eConnectImpl( clientId, extraAuth, &resState); +} + +ESocketSSL *EClientSocketSSL::getTransport() { + assert(dynamic_cast(m_transport.get()) != 0); + + return static_cast(m_transport.get()); +} + +void EClientSocketSSL::ImportRootCertificatesFromWindowsCertStore() { +#if defined(IB_WIN32) + auto store = CertOpenSystemStore(0, "ROOT"); + auto osslStore = SSL_CTX_get_cert_store(m_pCTX); + + for (auto certCtx = CertEnumCertificatesInStore(store, 0); certCtx; certCtx = CertEnumCertificatesInStore(store, certCtx)) { + if (!(certCtx->dwCertEncodingType & X509_ASN_ENCODING)) + continue; + + auto pBuf = certCtx->pbCertEncoded; + auto cert = d2i_X509(0, (const unsigned char **)&pBuf, certCtx->cbCertEncoded); + + X509_STORE_add_cert(osslStore, cert); + } + + + CertCloseStore(store, 0); +#endif +} + + +bool EClientSocketSSL::eConnectImpl(int clientId, bool extraAuth, ConnState* stateOutPt) +{ + // resolve host + struct hostent* hostEnt = gethostbyname( host().c_str()); + if ( !hostEnt) { + getWrapper()->error( NO_VALID_ID, CONNECT_FAIL.code(), CONNECT_FAIL.msg()); + return false; + } + + // create socket + m_fd = socket(AF_INET, SOCK_STREAM, 0); + + // cannot create socket + if( m_fd < 0) { + getWrapper()->error( NO_VALID_ID, FAIL_CREATE_SOCK.code(), FAIL_CREATE_SOCK.msg()); + return false; + } + + // starting to connect to server + struct sockaddr_in sa; + memset( &sa, 0, sizeof(sa)); + sa.sin_family = AF_INET; + sa.sin_port = htons( port()); + sa.sin_addr.s_addr = ((in_addr*)hostEnt->h_addr)->s_addr; + + // try to connect + if( (connect( m_fd, (struct sockaddr *) &sa, sizeof( sa))) < 0) { + // error connecting + SocketClose( m_fd); + m_fd = -1; + getWrapper()->error( NO_VALID_ID, CONNECT_FAIL.code(), CONNECT_FAIL.msg()); + return false; + } + + m_pCTX = SSL_CTX_new(SSLv23_client_method()); + + if (!m_pCTX && !handleSocketError()) + return false; + + ImportRootCertificatesFromWindowsCertStore(); + + m_pSSL = SSL_new(m_pCTX); + + if (!m_pSSL && !handleSocketError()) + return false; + + if (!SSL_set_fd(m_pSSL, m_fd) && !handleSocketError()) + return false; + + if (!SSL_connect(m_pSSL) && !handleSocketError()) + return false; + + if(SSL_get_verify_result(m_pSSL) != X509_V_OK) + { + getWrapper()->error(NO_VALID_ID, SSL_FAIL.code(), SSL_FAIL.msg() + "certificate verification failure"); + + //return false; + } + + getTransport()->fd(m_pSSL); + + // set client id + setClientId( clientId); + setExtraAuth( extraAuth); + + int res = sendConnectRequest(); + + if (res == 0 || res < 0 && !handleSocketError(res)) + return false; + + if( !isConnected()) { + if( connState() != CS_DISCONNECTED) { + assert( connState() == CS_REDIRECT); + if( stateOutPt) { + *stateOutPt = connState(); + } + eDisconnect(); + } + return false; + } + + // set socket to non-blocking state + if ( !SetSocketNonBlocking(m_fd)) { + // error setting socket to non-blocking + eDisconnect(); + getWrapper()->error( NO_VALID_ID, CONNECT_FAIL.code(), CONNECT_FAIL.msg()); + return false; + } + + assert( connState() == CS_CONNECTED); + if( stateOutPt) { + *stateOutPt = connState(); + } + + if (!m_asyncEConnect) { + EReaderSSL reader(this, m_pSignal); + + while (m_pSignal && !m_serverVersion && isSocketOK()) { + reader.checkClient(); + m_pSignal->waitForSignal(); + reader.processMsgs(); + } + } + + // successfully connected + return isSocketOK(); +} + +void EClientSocketSSL::encodeMsgLen(std::string& msg, unsigned offset) const +{ + assert( !msg.empty()); + assert( m_useV100Plus); + + assert( sizeof(unsigned) == HEADER_LEN); + assert( msg.size() > offset + HEADER_LEN); + unsigned len = msg.size() - HEADER_LEN - offset; + if( len > MAX_MSG_LEN) { + m_pEWrapper->error( NO_VALID_ID, BAD_LENGTH.code(), BAD_LENGTH.msg()); + return; + } + + unsigned netlen = htonl( len); + memcpy( &msg[offset], &netlen, HEADER_LEN); +} + +bool EClientSocketSSL::closeAndSend(std::string msg, unsigned offset) +{ + assert( !msg.empty()); + if( m_useV100Plus) { + encodeMsgLen( msg, offset); + } + + int res = bufferedSend(msg); + + if (res < 0) + return handleSocketError(res); + + return true; +} + +void EClientSocketSSL::prepareBufferImpl(std::ostream& buf) const +{ + assert( m_useV100Plus); + assert( sizeof(unsigned) == HEADER_LEN); + + char header[HEADER_LEN] = { 0 }; + buf.write( header, sizeof(header)); +} + +void EClientSocketSSL::prepareBuffer(std::ostream& buf) const +{ + if( !m_useV100Plus) + return; + + prepareBufferImpl( buf); +} + +void EClientSocketSSL::eDisconnect() +{ + if (m_pSSL) + SSL_shutdown(m_pSSL); + + if (m_pCTX) + SSL_CTX_free(m_pCTX); + + if ( m_fd >= 0 ) + // close socket + SocketClose( m_fd); + m_fd = -1; + + eDisconnectBase(); +} + +bool EClientSocketSSL::isSocketOK() const +{ + return ( m_fd >= 0); +} + +int EClientSocketSSL::fd() const +{ + return m_fd; +} + +int EClientSocketSSL::receive(char* buf, size_t sz) +{ + if( sz <= 0) + return 0; + + int nResult = SSL_read(m_pSSL, buf, sz); + + if( nResult == -1 && !handleSocketError(nResult)) { + return -1; + } + if( nResult == 0) { + onClose(); + } + if( nResult <= 0) { + return 0; + } + return nResult; +} + +void EClientSocketSSL::serverVersion(int version, const char *time) { + m_serverVersion = version; + m_TwsTime = time; + + if( usingV100Plus() ? (m_serverVersion < MIN_CLIENT_VER || m_serverVersion > MAX_CLIENT_VER) : m_serverVersion < MIN_SERVER_VER_SUPPORTED ) { + getWrapper()->error( NO_VALID_ID, UNSUPPORTED_VERSION.code(), UNSUPPORTED_VERSION.msg()); + eDisconnect(); + } + + if (!m_asyncEConnect) + startApi(); +} + +void EClientSocketSSL::redirect(const char *host, int port) { + // handle redirect + if( (m_hostNorm != this->host() || port != this->port())) { + if (!m_allowRedirect) { + getWrapper()->error(NO_VALID_ID, CONNECT_FAIL.code(), CONNECT_FAIL.msg()); + + return; + } + + eDisconnect(); + eConnectImpl( clientId(), extraAuth(), 0); + } +} + +bool EClientSocketSSL::handleSSLError(int &ret_code) { + ret_code = SSL_get_error(m_pSSL, ret_code); + + switch (ret_code) { + case SSL_ERROR_NONE: + case SSL_ERROR_WANT_READ: + case SSL_ERROR_WANT_WRITE: + ret_code = 0; + return true; + + case SSL_ERROR_SYSCALL: +#if defined(IB_POSIX) + ret_code = errno; +#elif defined(IB_WIN32) + ret_code = GetLastError(); +#else +# error "Not implemented on this platform" +#endif + return true; + } + + return false; +} + +bool EClientSocketSSL::handleSocketErrorInternal(int hr) { +#if defined(IB_WIN32) + if (hr != 0) { + LPTSTR buf; + + FormatMessage(FORMAT_MESSAGE_ALLOCATE_BUFFER | FORMAT_MESSAGE_FROM_SYSTEM, 0, hr, 0, (LPTSTR)&buf, 0, 0); + getWrapper()->error( NO_VALID_ID, SOCKET_EXCEPTION.code(), + SOCKET_EXCEPTION.msg() + buf); + LocalFree(buf); + + return false; + } +#endif + + // no error + if( errno == 0) + return true; + + // Socket is already connected + if( errno == EISCONN) { + return true; + } + + if( errno == EWOULDBLOCK) + return false; + + if( errno == ECONNREFUSED) { + getWrapper()->error( NO_VALID_ID, CONNECT_FAIL.code(), CONNECT_FAIL.msg()); + } + else { + getWrapper()->error( NO_VALID_ID, SOCKET_EXCEPTION.code(), + SOCKET_EXCEPTION.msg() + strerror(errno)); + } + // reset errno + errno = 0; + eDisconnect(); + return false; +} + +bool EClientSocketSSL::handleSocketError(int res) +{ + if (!handleSSLError(res)) { + getWrapper()->error(NO_VALID_ID, SSL_FAIL.code(), SSL_FAIL.msg() + ERR_error_string(res, 0)); + + return false; + } + + return handleSocketErrorInternal(res); +} + +bool EClientSocketSSL::handleSocketError() { + int res = ERR_get_error(); + + if (res) { + getWrapper()->error(NO_VALID_ID, SSL_FAIL.code(), SSL_FAIL.msg() + ERR_error_string(res, 0)); + + return false; + } + + return handleSocketErrorInternal(); +} + +/////////////////////////////////////////////////////////// +// callbacks from socket + +void EClientSocketSSL::onSend() +{ + if( !handleSocketError()) + return; + + getTransport()->sendBufferedData(); +} + +void EClientSocketSSL::onClose() +{ + if( !handleSocketError()) + return; + + eDisconnect(); + getWrapper()->connectionClosed(); +} + +void EClientSocketSSL::onError() +{ + handleSocketError(); +} diff --git a/vn.ib/ibapi/windows/ssl/EClientSocketSSL.h b/vn.ib/ibapi/windows/ssl/EClientSocketSSL.h new file mode 100644 index 00000000..fbe87cec --- /dev/null +++ b/vn.ib/ibapi/windows/ssl/EClientSocketSSL.h @@ -0,0 +1,81 @@ +/* Copyright (C) 2013 Interactive Brokers LLC. All rights reserved. This code is subject to the terms +* and conditions of the IB API Non-Commercial License or the IB API Commercial License, as applicable. */ + +#pragma once +#ifndef eposixclientsocket_def +#define eposixclientsocket_def + +#include "../client/EClient.h" +#include "../client/EClientMsgSink.h" +#include "ESocketSSL.h" +#include "../client/EMutex.h" + +class EWrapper; +class EReaderSignal; + +class TWSAPISSLDLLEXP EClientSocketSSL : public EClient, public EClientMsgSink +{ +protected: + virtual void prepareBufferImpl(std::ostream&) const; + virtual void prepareBuffer(std::ostream&) const; + virtual bool closeAndSend(std::string msg, unsigned offset = 0); + +public: + + explicit EClientSocketSSL(EWrapper *ptr, EReaderSignal *pSignal = 0); + ~EClientSocketSSL(); + + bool eConnect( const char *host, unsigned int port, int clientId = 0, bool extraAuth = false); + // override virtual funcs from EClient + void eDisconnect(); + + bool isSocketOK() const; + int fd() const; + bool asyncEConnect() const; + void asyncEConnect(bool val); + ESocketSSL *getTransport(); + +private: + + bool eConnectImpl(int clientId, bool extraAuth, ConnState* stateOutPt); + +private: + void encodeMsgLen(std::string& msg, unsigned offset) const; + bool handleSSLError(int &ret_code); + bool handleSocketErrorInternal(int hr = 0); + +public: + bool handleSocketError(); + bool handleSocketError(int res); + int receive( char* buf, size_t sz); + +public: + // callback from socket + void onSend(); + void onError(); + +private: + + void onClose(); + void ImportRootCertificatesFromWindowsCertStore(); + + static void lockingFunc(int mode, int type, const char *file, int line); + static unsigned long thIdFunc(); + + static std::vector sslLocks; + + SSL *m_pSSL; + SSL_CTX *m_pCTX; + int m_fd; + bool m_allowRedirect; + const char* m_hostNorm; + bool m_asyncEConnect; + EReaderSignal *m_pSignal; + +//EClientMsgSink implementation +public: + void serverVersion(int version, const char *time); + void redirect(const char *host, int port); +}; + +#endif diff --git a/vn.ib/ibapi/windows/ssl/EReaderSSL.cpp b/vn.ib/ibapi/windows/ssl/EReaderSSL.cpp new file mode 100644 index 00000000..065be2cb --- /dev/null +++ b/vn.ib/ibapi/windows/ssl/EReaderSSL.cpp @@ -0,0 +1,278 @@ +/* Copyright (C) 2013 Interactive Brokers LLC. All rights reserved. This code is subject to the terms + * and conditions of the IB API Non-Commercial License or the IB API Commercial License, as applicable. */ + +#include "StdAfx.h" +#include "../client/shared_ptr.h" +#include "../client/Contract.h" +#include "../client/EDecoder.h" +#include "../client/EMutex.h" +#include "EReaderSSL.h" +#include "EClientSocketSSL.h" +#include "../client/EPosixClientSocketPlatform.h" +#include "../client/EReaderSignal.h" +#include "../client/EMessage.h" +#include "../client/DefaultEWrapper.h" + +#define IN_BUF_SIZE_DEFAULT 8192 + +static DefaultEWrapper defaultWrapper; + +EReaderSSL::EReaderSSL(EClientSocketSSL *clientSocket, EReaderSignal *signal) + : processMsgsDecoder_(clientSocket->EClient::serverVersion(), clientSocket->getWrapper(), clientSocket) + , threadReadDecoder_(clientSocket->EClient::serverVersion(), &defaultWrapper) { + m_isAlive = true; + m_pClientSocket = clientSocket; + m_pEReaderSignal = signal; + m_needsWriteSelect = false; + m_nMaxBufSize = IN_BUF_SIZE_DEFAULT; + m_buf.reserve(IN_BUF_SIZE_DEFAULT); + start(); +} + +EReaderSSL::~EReaderSSL(void) { + m_isAlive = false; + +#if defined(IB_WIN32) + WaitForSingleObject(m_hReadThread, INFINITE); +#endif +} + +void EReaderSSL::checkClient() { + m_needsWriteSelect = !m_pClientSocket->getTransport()->isOutBufferEmpty(); +} + +void EReaderSSL::start() { +#if defined(IB_POSIX) + pthread_t thread; + pthread_attr_t attr; + pthread_attr_init(&attr); + pthread_attr_setdetachstate(&attr, PTHREAD_CREATE_DETACHED); + pthread_create( &thread, &attr, readToQueueThread, this ); + pthread_attr_destroy(&attr); +#elif defined(IB_WIN32) + m_hReadThread = CreateThread(0, 0, readToQueueThread, this, 0, 0); +#else +# error "Not implemented on this platform" +#endif +} + +#if defined(IB_POSIX) +void * EReaderSSL::readToQueueThread(void * lpParam) +#elif defined(IB_WIN32) +DWORD WINAPI EReaderSSL::readToQueueThread(LPVOID lpParam) +#else +# error "Not implemented on this platform" +#endif +{ + EReaderSSL *pThis = reinterpret_cast(lpParam); + + pThis->readToQueue(); + return 0; +} + +void EReaderSSL::readToQueue() { + EMessage *msg = 0; + + while (m_isAlive) { + if (m_buf.size() == 0 && !processNonBlockingSelect() && m_pClientSocket->isSocketOK()) + continue; + + if (m_pClientSocket->isSocketOK()) + msg = readSingleMsg(); + + if (msg == 0) + break; + + m_csMsgQueue.Enter(); + m_msgQueue.push_back(ibapi::shared_ptr(msg)); + m_csMsgQueue.Leave(); + m_pEReaderSignal->issueSignal(); + + msg = 0; + } + + m_pClientSocket->handleSocketError(); + m_pEReaderSignal->issueSignal(); //letting client know that socket was closed +} + +bool EReaderSSL::processNonBlockingSelect() { + fd_set readSet, writeSet, errorSet; + struct timeval tval; + + tval.tv_usec = 100 * 1000; //100 ms + tval.tv_sec = 0; + + if( m_pClientSocket->fd() >= 0 ) { + + FD_ZERO( &readSet); + errorSet = writeSet = readSet; + + FD_SET( m_pClientSocket->fd(), &readSet); + + if (m_needsWriteSelect) + FD_SET( m_pClientSocket->fd(), &writeSet); + + FD_SET( m_pClientSocket->fd(), &errorSet); + + int ret = select( m_pClientSocket->fd() + 1, &readSet, &writeSet, &errorSet, &tval); + + if( ret == 0) { // timeout + return false; + } + + if( ret < 0) { // error + m_pClientSocket->eDisconnect(); + return false; + } + + if( m_pClientSocket->fd() < 0) + return false; + + if( FD_ISSET( m_pClientSocket->fd(), &errorSet)) { + // error on socket + m_pClientSocket->onError(); + } + + if( m_pClientSocket->fd() < 0) + return false; + + if( FD_ISSET( m_pClientSocket->fd(), &writeSet)) { + // socket is ready for writing + onSend(); + } + + if( m_pClientSocket->fd() < 0) + return false; + + if( FD_ISSET( m_pClientSocket->fd(), &readSet)) { + // socket is ready for reading + onReceive(); + } + + return true; + } + + return false; +} + +void EReaderSSL::onSend() { + m_pEReaderSignal->issueSignal(); +} + +void EReaderSSL::onReceive() { + int nOffset = m_buf.size(); + + m_buf.resize(m_nMaxBufSize); + + int nRes = m_pClientSocket->receive(m_buf.data() + nOffset, m_buf.size() - nOffset); + + if (nRes <= 0) + return; + + m_buf.resize(nRes + nOffset); +} + +bool EReaderSSL::bufferedRead(char *buf, int size) { + while (m_buf.size() < size) + if (!processNonBlockingSelect() && !m_pClientSocket->isSocketOK()) + return false; + + std::copy(m_buf.begin(), m_buf.begin() + size, buf); + std::copy(m_buf.begin() + size, m_buf.end(), m_buf.begin()); + m_buf.resize(m_buf.size() - size); + + return true; +} + +EMessage * EReaderSSL::readSingleMsg() { + if (m_pClientSocket->usingV100Plus()) { + int msgSize; + + if (!bufferedRead((char *)&msgSize, sizeof(msgSize))) + return 0; + + msgSize = htonl(msgSize); + + if (msgSize <= 0 || msgSize > MAX_MSG_LEN) + return 0; + + std::vector buf = std::vector(msgSize); + + if (!bufferedRead(buf.data(), buf.size())) + return 0; + + return new EMessage(buf); + } + else { + const char *pBegin = 0; + const char *pEnd = 0; + int msgSize = 0; + + while (msgSize == 0) + { + if (m_buf.size() >= m_nMaxBufSize * 3/4) + m_nMaxBufSize *= 2; + + if (!processNonBlockingSelect() && !m_pClientSocket->isSocketOK()) + return 0; + + pBegin = m_buf.data(); + pEnd = pBegin + m_buf.size(); + msgSize = EDecoder(m_pClientSocket->EClient::serverVersion(), &defaultWrapper).parseAndProcessMsg(pBegin, pEnd); + } + + std::vector msgData(msgSize); + + if (!bufferedRead(msgData.data(), msgSize)) + return 0; + + if (m_buf.size() < IN_BUF_SIZE_DEFAULT && m_buf.capacity() > IN_BUF_SIZE_DEFAULT) + { + m_buf.resize(m_nMaxBufSize = IN_BUF_SIZE_DEFAULT); + m_buf.shrink_to_fit(); + } + + EMessage * msg = new EMessage(msgData); + + return msg; + } +} + +ibapi::shared_ptr EReaderSSL::getMsg(void) { + m_csMsgQueue.Enter(); + + if (m_msgQueue.size() == 0) { + m_csMsgQueue.Leave(); + + return ibapi::shared_ptr(); + } + + ibapi::shared_ptr msg = m_msgQueue.front(); + + m_msgQueue.pop_front(); + m_csMsgQueue.Leave(); + + return msg; +} + + +void EReaderSSL::processMsgs(void) { + m_pClientSocket->onSend(); + checkClient(); + + ibapi::shared_ptr msg = getMsg(); + + if (!msg.get()) + return; + + const char *pBegin = msg->begin(); + + while (processMsgsDecoder_.parseAndProcessMsg(pBegin, msg->end()) > 0) { + msg = getMsg(); + + if (!msg.get()) + break; + + pBegin = msg->begin(); + } +} diff --git a/vn.ib/ibapi/windows/ssl/EReaderSSL.h b/vn.ib/ibapi/windows/ssl/EReaderSSL.h new file mode 100644 index 00000000..3530527d --- /dev/null +++ b/vn.ib/ibapi/windows/ssl/EReaderSSL.h @@ -0,0 +1,60 @@ +/* Copyright (C) 2013 Interactive Brokers LLC. All rights reserved. This code is subject to the terms + * and conditions of the IB API Non-Commercial License or the IB API Commercial License, as applicable. */ + +#pragma once + +#include "StdAfx.h" +#include "../client/EDecoder.h" +#include "../client/EMutex.h" +#include "../client/EReaderOSSignal.h" + +class EClientSocketSSL; +class EReaderSignal; +class EMessage; + +class TWSAPISSLDLLEXP EReaderSSL +{ + EClientSocketSSL *m_pClientSocket; + EReaderSignal *m_pEReaderSignal; + EDecoder processMsgsDecoder_; + std::deque> m_msgQueue; + EMutex m_csMsgQueue; + std::vector m_buf; + EDecoder threadReadDecoder_; + bool m_needsWriteSelect; + bool m_isAlive; +#if defined(IB_WIN32) + HANDLE m_hReadThread; +#endif + int m_nMaxBufSize; + + void onReceive(); + void onSend(); + bool bufferedRead(char *buf, int size); + +public: + EReaderSSL(EClientSocketSSL *clientSocket, EReaderSignal *signal); + ~EReaderSSL(void); + +protected: + bool processNonBlockingSelect(); + ibapi::shared_ptr getMsg(void); + void readToQueue(); +#if defined(IB_POSIX) + static void * readToQueueThread(void * lpParam); +#elif defined(IB_WIN32) + static DWORD WINAPI readToQueueThread(LPVOID lpParam); +#else +# error "Not implemented on this platform" +#endif + + EMessage * readSingleMsg(); + +public: + void processMsgs(void); + void checkClient(); + +private: + void start(); +}; + diff --git a/vn.ib/ibapi/windows/ssl/ESocketSSL.cpp b/vn.ib/ibapi/windows/ssl/ESocketSSL.cpp new file mode 100644 index 00000000..535c3577 --- /dev/null +++ b/vn.ib/ibapi/windows/ssl/ESocketSSL.cpp @@ -0,0 +1,98 @@ +#include "StdAfx.h" +#include "../client/EMessage.h" +#include "ESocketSSL.h" + +#include + +ESocketSSL::ESocketSSL() { +} + +void ESocketSSL::fd(SSL *fd) { + m_fd = fd; +} + +ESocketSSL::~ESocketSSL(void) { +} + +int ESocketSSL::send(EMessage *pMsg) { + return bufferedSend(pMsg->begin(), pMsg->end() - pMsg->begin()); +} + +int ESocketSSL::bufferedSend(const char* buf, size_t sz) +{ + if( sz <= 0) + return 0; + + if( !m_outBuffer.empty()) { + m_outBuffer.insert( m_outBuffer.end(), buf, buf + sz); + return sendBufferedData(); + } + + int nResult = send(buf, sz); + + if( nResult < (int)sz) { + int sent = (std::max)( nResult, 0); + m_outBuffer.insert( m_outBuffer.end(), buf + sent, buf + sz); + } + + return nResult; +} + +int ESocketSSL::sendBufferedData() +{ + if( m_outBuffer.empty()) + return 0; + + int nResult = send( &m_outBuffer[0], m_outBuffer.size()); + if( nResult <= 0) { + return nResult; + } + CleanupBuffer( m_outBuffer, nResult); + return nResult; +} + +int ESocketSSL::send(const char* buf, size_t sz) +{ + if( sz <= 0) + return 0; + + int nResult = ::SSL_write( m_fd, buf, sz); + + if( nResult == -1) { + return -1; + } + if( nResult <= 0) { + return 0; + } + return nResult; +} + +static const size_t BufferSizeHighMark = 1 * 1024 * 1024; // 1Mb + +void ESocketSSL::CleanupBuffer(std::vector& buffer, int processed) +{ + assert( buffer.empty() || processed <= (int)buffer.size()); + + if( buffer.empty()) + return; + + if( processed <= 0) + return; + + if( (size_t)processed == buffer.size()) { + if( buffer.capacity() >= BufferSizeHighMark) { + std::vector().swap(buffer); + } + else { + buffer.clear(); + } + } + else { + buffer.erase( buffer.begin(), buffer.begin() + processed); + } +} + +bool ESocketSSL::isOutBufferEmpty() const +{ + return m_outBuffer.empty(); +} diff --git a/vn.ib/ibapi/windows/ssl/ESocketSSL.h b/vn.ib/ibapi/windows/ssl/ESocketSSL.h new file mode 100644 index 00000000..06d1de7a --- /dev/null +++ b/vn.ib/ibapi/windows/ssl/ESocketSSL.h @@ -0,0 +1,23 @@ +#pragma once +#include "../client/ETransport.h" + +class ESocketSSL : + public ETransport +{ + SSL *m_fd; + std::vector m_outBuffer; + + int bufferedSend(const char* buf, size_t sz); + int send(const char* buf, size_t sz); + void CleanupBuffer(std::vector& buffer, int processed); + +public: + ESocketSSL(); + ~ESocketSSL(void); + + int send(EMessage *pMsg); + bool isOutBufferEmpty() const; + int sendBufferedData(); + void fd(SSL *fd); +}; + diff --git a/vn.ib/ibapi/windows/ssl/StdAfx.cpp b/vn.ib/ibapi/windows/ssl/StdAfx.cpp new file mode 100644 index 00000000..35d31dac --- /dev/null +++ b/vn.ib/ibapi/windows/ssl/StdAfx.cpp @@ -0,0 +1,4 @@ +/* Copyright (C) 2013 Interactive Brokers LLC. All rights reserved. This code is subject to the terms + * and conditions of the IB API Non-Commercial License or the IB API Commercial License, as applicable. */ + +#include "StdAfx.h" diff --git a/vn.ib/ibapi/windows/ssl/StdAfx.h b/vn.ib/ibapi/windows/ssl/StdAfx.h new file mode 100644 index 00000000..a89d4077 --- /dev/null +++ b/vn.ib/ibapi/windows/ssl/StdAfx.h @@ -0,0 +1,44 @@ +/* Copyright (C) 2013 Interactive Brokers LLC. All rights reserved. This code is subject to the terms + * and conditions of the IB API Non-Commercial License or the IB API Commercial License, as applicable. */ + +#ifdef _MSC_VER + +#ifdef TWSAPISSLDLL +# define TWSAPISSLDLLEXP __declspec(dllexport) +#endif + +#define assert ASSERT +#define snprintf _snprintf +#include +#include +#define IB_WIN32 + +#else + +#include // defines _POSIX_THREADS, @see http://bit.ly/1pWJ8KQ#tag_13_80_03_02 +#include +#include + +#if defined(_POSIX_THREADS) && (_POSIX_THREADS > 0) + #include + #define IB_POSIX +#else + #error "Not supported on this platform" +#endif + +#endif // #ifdef _MSC_VER + +#include +#include +#include +#include +#include +#include +#include + +#ifndef TWSAPISSLDLLEXP +#define TWSAPISSLDLLEXP +#endif +#ifndef TWSAPIDLLEXP +#define TWSAPIDLLEXP +#endif diff --git a/vn.ib/ibapi/ssl/TwsSocketClientSSL.def b/vn.ib/ibapi/windows/ssl/TwsSocketClientSSL.def similarity index 100% rename from vn.ib/ibapi/ssl/TwsSocketClientSSL.def rename to vn.ib/ibapi/windows/ssl/TwsSocketClientSSL.def diff --git a/vn.ib/ibapi/ssl/TwsSocketClientSSL.rc b/vn.ib/ibapi/windows/ssl/TwsSocketClientSSL.rc similarity index 95% rename from vn.ib/ibapi/ssl/TwsSocketClientSSL.rc rename to vn.ib/ibapi/windows/ssl/TwsSocketClientSSL.rc index 5688c427..44988450 100644 --- a/vn.ib/ibapi/ssl/TwsSocketClientSSL.rc +++ b/vn.ib/ibapi/windows/ssl/TwsSocketClientSSL.rc @@ -67,8 +67,8 @@ END // VS_VERSION_INFO VERSIONINFO - FILEVERSION 9,72,16,0 - PRODUCTVERSION 9,72,16,0 + FILEVERSION 9,72,18,0 + PRODUCTVERSION 9,72,18,0 FILEFLAGSMASK 0x3fL #ifdef _DEBUG FILEFLAGS 0x1L @@ -85,12 +85,12 @@ BEGIN BEGIN VALUE "CompanyName", "Interactive Brokers" VALUE "FileDescription", "TwsSocketClientSSL DLL" - VALUE "FileVersion", "9.72.16" + VALUE "FileVersion", "9.72.18" VALUE "InternalName", "TwsSocketClientSSL" VALUE "LegalCopyright", "Copyright (C) 2006" VALUE "OriginalFilename", "TwsSocketClientSSL.DLL" VALUE "ProductName", "TwsSocketClientSSL Dynamic Link Library" - VALUE "ProductVersion", "9.72.16" + VALUE "ProductVersion", "9.72.18" END END BLOCK "VarFileInfo" diff --git a/vn.ib/ibapi/ssl/TwsSocketClientSSL.sln b/vn.ib/ibapi/windows/ssl/TwsSocketClientSSL.sln similarity index 100% rename from vn.ib/ibapi/ssl/TwsSocketClientSSL.sln rename to vn.ib/ibapi/windows/ssl/TwsSocketClientSSL.sln diff --git a/vn.ib/ibapi/ssl/TwsSocketClientSSL.vcxproj b/vn.ib/ibapi/windows/ssl/TwsSocketClientSSL.vcxproj similarity index 100% rename from vn.ib/ibapi/ssl/TwsSocketClientSSL.vcxproj rename to vn.ib/ibapi/windows/ssl/TwsSocketClientSSL.vcxproj diff --git a/vn.ib/ibapi/ssl/TwsSocketClientSSL.vcxproj.filters b/vn.ib/ibapi/windows/ssl/TwsSocketClientSSL.vcxproj.filters similarity index 100% rename from vn.ib/ibapi/ssl/TwsSocketClientSSL.vcxproj.filters rename to vn.ib/ibapi/windows/ssl/TwsSocketClientSSL.vcxproj.filters diff --git a/vn.ib/ibapi/ssl/TwsSocketClientSSL.vcxproj.user b/vn.ib/ibapi/windows/ssl/TwsSocketClientSSL.vcxproj.user similarity index 100% rename from vn.ib/ibapi/ssl/TwsSocketClientSSL.vcxproj.user rename to vn.ib/ibapi/windows/ssl/TwsSocketClientSSL.vcxproj.user diff --git a/vn.ib/ibapi/ssl/res/TwsSocketClientSSL.rc2 b/vn.ib/ibapi/windows/ssl/res/TwsSocketClientSSL.rc2 similarity index 100% rename from vn.ib/ibapi/ssl/res/TwsSocketClientSSL.rc2 rename to vn.ib/ibapi/windows/ssl/res/TwsSocketClientSSL.rc2 diff --git a/vn.ib/test/test.py b/vn.ib/test/test.py index 883a7c02..6f4ab062 100644 --- a/vn.ib/test/test.py +++ b/vn.ib/test/test.py @@ -291,6 +291,11 @@ class TestApi(IbApi): print sys._getframe().f_code.co_name print locals() + #---------------------------------------------------------------------- + def softDollarTiers(self, reqId, tiers): + print sys._getframe().f_code.co_name + print locals() + if __name__ == '__main__': diff --git a/vn.ib/test/vnib.pyd b/vn.ib/test/vnib.pyd index 83df9317adb79d4f6c2a56f677bcecb3d758b726..e3ff25d8f8b624cf2fb3487b2d7b3bce242f6ca5 100644 GIT binary patch literal 1061376 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

^-rS52ld;XBR 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 f=_cbHkMt);{J2~oIbPT$fu!JN6~;{DHYF9 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ßi3ncaUZI!QB~iEAkBXNQfO) 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%0AEV)is`y<7`a=kxIT!T3se*sI zL4T*ReX~HzmV|U z|5mDav%!9*6Ta*>s6ST4+l~Aap8MyaD*iP?|Az4T5r&at~L;c4I&*Q@q6@S1`e<9&{e5h3M&l~DbCp?c2V^w^; z0Y8TD!vCxI76bhugctt*O2L1o!9Gs)1zz|+72j#7f0*#X|EYMzpr1DhFZ`d1Hyi3d zPI%$}RD7I4{tF4u<4>iEUuWQNI^lWz8LQ&w80e27eCAk;-=Qi#%Rqk!;R|+>{;v@H zCmZmm`T)OnG>v~1zueINVZvuUg!)@le4?TLn}k1lHR?aD;&&MO_c-B)A4L5nDt^5| z{tG$&-@sR@_*n-0bi(idC-7rc{Bi?+4B@$b4OQ_Q4gDWNcy2%5%LV^O4E;aV8+bl` zKUMK-4E;Y$c+lH(BuCWWb-YpuWieRD8T4J{%@I_g`C7{1Jov z-z5BkzNCK@ztVtzobV$5Q}Hzh{6fO>{G?LF*Bbgao$%bhjg{>i@M8$i?R%)KZ_v*W z!e>1U`|*wt{I562?^G|~`S|=)#m_eKPk25)wy1csq5p3Zo{x{GRs2i?{&B+d@v%h3 zuQBv*A>sM>sFd{${hQA5G(N_v`29xy3D3vJP!+$!fFDA5t{?AZg8$iu_D{tC&*RId zD*kyR|AgoA+oIx!8|?c{!gKjNE$bWbkMsKEKbENYH3s=CBs`Z-rHbESz)vSUm(N%g zzuLgx7>+0T3{~;#4fr91=koDhD)>L@!;AUe%>VHD-YctM#O-&>xggE=)cK&mcMyKB z5x*YuMO$eL%d$TgAK4ER_yqh*6If4lqIQ*}T@BZ+lC`T8?J7;XO4qJ3wW}=cDo4A@ z*RBe*D~EPfjH{WwdZSlm8mt^wZPAhF-%JfQOS`Jlu4ZdjbF`}(?P`H~^>5pf=vrLk z7=VUbsa-vyU9Hxx)@WC2wX5f~t99DdE4Z3z>20SL*5ld}-J;=kXji+`D>a8%Sc1Fmc~ z)ED@yliZ&23BM)?ex|@X2wxinUoY@wgf9<*Un}r6gwG6uZxQ%f!Y3H;RY!qREE-Jo zx8)n&-xez0ey3g@0&nW%c*~=}?=|47%KJi4FAnQ%V*L(5^f-ax&bRs`F6t+W`f*gh z$ymRZ>fgreJ3`ja67>_Qeu1%mSs&CN#_O+)3f2BhQ9qgLTaESCQ2U=>O#Od8Wc_+k zKb`Ymt(OlD)BJEuJ52KoKS;B~(VUZH7AI+*c?5OVMK~{U?TUDguB+C9mM14k^${xp zYKiM>SDYXV;bEi#LQqx!8tO?F*A6LCwD(Zh_L@*twnx`h>kaKK2j~d37cJYH1qeYy zws&^;d-M*Kzbdr#6YzJjY;R^*{(P27-hrPFIhkvTC}Af&F{WO9?KORT>x!(kV#YSJ zNfcE7#q(2^Yhlx@Zo50*JY$>1h^F%ouKby}u)9afZO`R0s?W@jujWkfnH z>mzVZ2^B}Sh~FUeGxE*Oekh%5b;hiZ5QRls8_hVRq+?1j^*I@#Z4@rZun3M_bB^m{OIn{Xj2>Wc!o{F~ek|#A!T> zt2QaeKDW2GCMm^x5CXw{GC8~)wM$vl1Zt+3c%gV%sGJHVtA&QEh2lk_d|rro;G?Rf zPpquC3Ac{ay-MCJi;2vYh9=3g-690G)1BJ|Wt5b%Ix9O->QL_45n*!Yb~d&+<0?~I zDp+Ax>Yo*hTH9hOZJun$P*uw2N0`v@hL)Pc0L2l=c^|}4*a>Lr2MsN@oIPwSYFDQI zxkA}>i)dYpe6$Z`F4rqFUMf&`z>=MSzDku?NZC8z&h~i+t%UiE{DAFJ-ugg&I+7RX z$?YI{VAI?YoWtZI$vt9HmLoxFo(51Cfgt~n4w_87?qbw+)pgkCTD{IA+WAP`k;qCu zu5~_)+wTc_8Uyzf;1`th(UigMiSn#4ux$MplXF1o2UCjRLt@NYHTHgK^ZgMkBFAwL z@=+znf9_9K8x)+r(^AS#c_s)aH9alk?ft!#olW9z)WRWmW@yn_yrYnx#ov6W4>XKZ&DT5RJExpsL+ zY|YqyU*9SRFLMNC8b7JIx!F8~y;p5=C=9BAB|BV8z-1&G%eghP*tSUa9tsYEbB^*% zbwF@YTOGFo7g?^*nrIPN+_PI6|Q`u^Uk+)XdG-I0;zjRkAZ#C8N3zCoMKBQ2} zCdau>+2=wUXs$J*b8fD>R`_7Q@~f(OFueeDj0XTge?KL0eVm zXBrgzgYT(qhIPbNh#`>uVvYSKSQ^+L@5eSw#6C4@D}2J+e+bI)O_F7D--6?th-DFV zeLR!C*bMS9Twjaq8K(^T8gXh&o!vIB&Ytma=j3LyZA_lsfagNav(FvE&MB%kvG-cd zktU^Aq{$~=cF>3TSA-7X^8PSiuXb2{hG$+9`IGlbm0M_t61zi=P}!$t5_FcFZpr3mO6wfdG$btsSiE)4&|L^S?&Ng((~2pW^^r}c#xTG?>ZtUoE7 zZKdGF-uGSW}k{*oyZTJ0*s|90~Yg3F>VYrnQG+61n@q?ON&b~St zM|?ZAIl)2%YHW^X^FYT`&7-PHzKO_5EempVXBYf~)KDQ5xXf@l>oY~ZB z?$3WUPQ(SutNtOl!UjWOrOJzN<*6+hp33uDzB$ClTz#F@R8!>g+UFHaWfk^}?`-2f zCG))yjyBf{+lrlvT(RS2%;R#c@L&$jo2Rz8E9|P{&G59EQ%yIW*HWpH#X#t%T0tZm z4Oee$b?;ub)#v+(1Gd#T0{}mW_v`iX-l}D6x`6M#wS%2-I~AHNbh`H0h|0V#J2EaxBaFPF^Q!FY$Kt93PMFf^-AJeRH5X~KqdlbC z3OiN;qoB9@hK z*Q@4cxI6j{&4dDkW-w6jTg1l2jTmRADXf|y7Lo&+e=*CB8A(#r zPkl#nwlzFP1oGm@L6{NmkZg!co`!%PhEHtKlqe63M@=FTo>N(_9cC37<QI%&f zB4P5@j4F-V=D?_vrX|eAw!5!4Gn>0N{=eSBY@P|o%8|-du-@*z-0@jW8QW@ZX5RV* z{Y-3^b3Aic>hJGoa-PQ`3FN%8`FZU11Fii6P;;^^fjP{)%)pFs7Az)h!w6tgIH=~I z?rGK{h?DJeD2J(9t~Ddq?tG@w9mTc_S1SyQ_z%~AE3JL}-}Zkua<_2(cePvLdASR5 z7j`ulT1(xzUn|d%;0Ka?YNFX9OWV0@yoDr*soA$}{g4^E3p?3DOUAp-#q~=d^Lb`x zl>0t2o7Tl5$CR0!(e4H2w!UL7aGKrMwMDrXTL6xCUPNU<;=Q(WSTDAZtELaz#UeQA zlPuDWa#&&*Q)aO>E`{KE`94@WV6Ewo~ahlnQ zwsU!J?iIapUx!|!6#bj8?_0hZ!DqY~Jux+06)XKvT>d@MD3Bys=`I~5!G#`VBzN@?{D(Nf& z;|v7JK1T!Bc0V`F0s4j(Q=M4ej%Jk?s14HC0Ruj(%!XCAjS6ax?x>I~0_Z*AwM)E?x7(bY6mavg5 z&*F~6KSAlo68#d3z5xe9BvJK2(Vp){wxJF<=KvXRcgZ36A3hc2`2t_y+Dh{LhD6~U zu9N3{DNi=KRFfBk&VH!*TM&7%_tgMDj^zsjP9Tc`QCnLS^y7;y?mleWc9v!4$N{WR z28L~4h(JJU{)NkJ+qrxSk>ApC|BUTiR8FhwxOwj2<|jyx2m&!qyK9@-)oKQK-j}XZ zT{WXtL|zkvN0g_&ueof+xQJ`=BAn;CPW@1G{)%yt*W^Vy`(dhCV_z{Y>YBW$8q0Yt zc$Qf)V>?#RXKXJ@ZE5(x_Gk+-X>A3&a}!>^r_M^q-yLgN+P)cWKO>%wx*L)<;;sbi z^myu!b(?MYR(9emTYqy>)iJzurm7xDkb4CN>e><4T%44S)cLiy)g|sHK%6xt5xokm z{ZA~w+KcWrf4sfUrAV~BOPqt>q9-HD0$I0`>Z0%zU1uk$Fx3D;_m}#4o9&9|#5?-Z z-0JC*J96&t#T#fFrn1r<6JMg&e4YN_TLvZ?CuvNeeIzpo;|L6%h(|8&i*+IlUJrZ= z{yf=yG2D|ap7Ugj$0ga~X-RfG@M&P&>&eD@Vh~}oGXcq>OHXzgk6+ovbk~}l1IQc! znJpmYCePC4xa7d44FtqrYj%yPb!ii>_*2Kdd-*Jl2S-l~_0IJURia2azeYsLWg3-b z8kM{ntlrPzrOHLAJkffdXg#kS_%e>qQSqX`d7{60Ilw1#e7uSmtmg^V^Wrhxv(lP? zLq!X5i3gmR%@Z%)`4*0>)Gg=Jc)@%DPbIhJ@R_eV^Vc3rs#9oM?CAf6oFwZe!KhCU z@AU7}OcZv$)1BKfwZ!*MO+2!jX2DLO+iVAOkExGy*xWeR4>U*ZgE{IRHV!KXbRWqE zc%29M+cytU&mB`dc zJG-J-?jZ=M4@MTbet2;<$i77T#4e*3Chvmk*%ah7*SzL3Ct396WB~@aO2m|Lsri$LKh^KAJBn4WWZ1#>? z4gj8cfqh5W@xNn_B+JWkbq=o^?b=j^=1eu0b5d39@JVkaps-?p9ff$#=N%Of0IE7I zR2y@AldJQ}y8f;V(_*Wr79WrG0gtOQr*4pIQzyxwM#W?i=66-=0Rn530n>Au@sH6$ zfw{RU=@CGbSuaDi4N2ntx+vI`v<6@ngQsiQLr@(7z*+!wj_iRqK&WpZyc%%yQ$r~7 zL1PgRuEkkb*2a5N1F@+@4q|K`Z$>|;mn2OG3fALS1>wrn+K^OFzsiZvv1nPGR09BY zo4QDSR>r{Daj$n2@>7u}*XAVh6Ee}J$Hl^bRC}ApCxATp9BL7=3DahsvCT-?=FT_O zHfINElRtNstr3T5J><}4Y%NN*Rw`Tj;k7^xb*+76vyUfp&V+p-WP}bEkMJUr{6?sP z3-D=>7dk2HVUK70-JlaPFRqgp5P><#g77^Stgq_THcPa0g?^9K7F8|)<;oF*IWdbI}}LL5EiaLwNgBBf!>6?jbA z1nWtI`+MHt2xEi2WrOo%gXe~C5FRC`b`*SIvx_29FkkE-KfL{~V5}(#=4Vn~f-iLK zh_8;Ss)cX#&P#5dlz@$xYk!A_b}hEX-($Ei7p?rk#pff~48{hk5f*xEa@jY>-~X0< zwe?>^qrPg3Og&iwl50Uy=NGI02r4IS56vPfxtsvbd^ zs(SRHs)af-XdTVI5LWP11FMsgwB|u=APscBDkJY4vv-h&{0dBQWI<958Mdp%qPJ@G z8h!P7&_8@;P<9`cuJR3}#7FB>py}^Hb^gWJTw-_4Wf_~J*uiaUxoqyrZkmG}U0bar z&dIjMSMit%@-1ULK4%TDy@x$PfmEf6heU_yOT`a7wOlLg}W(xjIm|aL< zzPUMjwY$Mep#hbj#}9N$Klv!7c<{_X1$zgzAiu%QD?oY&Ef+Um^PAQ5V6;gjlj_D= zdhFPgLhK;e8YOrg!Q}=pfGXO8q-0gG7#H3_ zs#dv>v={$3@g)Z6^s-Fjj76J&Bt`1xAM0QMKKakVopJuL5fHiY5>t(M*CLvK#9`wn zLPuQp`Z)Lr^fAeQ($S6w0j@<^IdvJXcRESv&S=+lro}Yx;1dppuQ_1&DyzZ2SOfH% zcf1S&QlSn~=npHTLW`A)p5_W|LD%UI0xV}yMeJRgKJ>xeOr1jWV7t}Pe!!~$6beOA zO`+!jN}aA9p)SCqWMO~r$K0c&!AVfxXnSe7G6-IT zyOYho;a->b8g3y5~*-xk*7%mU6Brpe81n${yTPlRP2Z~JnI?7{fvMsx2A;ITF-MGV3O?mR-NL58TRV&%8LhPRC( zKS`;7fe29rYKSV(LR3B)n}zPo;vp*cSw3QCX(4L1mU|$XHfd3c2NFZ>LBR%b>VZ)r zPWf%;p!G>{KH$HaFN`J~1T2aLcY!Ekmg~@$_V@bz`%TA zGZp1IBF`7jfBX#cg^g>^JYV=WHAKE}Rg^AYIF0qn!^jtMM81G?IFv6GAalS^F)dr- zga&rM;3uEu4#$t9`&?qhhrx1*-}Dh-IZQ4wd~z4E>Q&n{%ewdc)+kGx&K#O z<^F4uGO36|)(z?~cI`>fzn+0MX;sD#eh~1WYm#pR!ChiJvI|*FOE8`$a%zInvo*;X zA8-#5uqOEed;@n91t1BhzZVXD0W>J_CE&n&e2?;NhpbXKxt|82$PU21C6Mge#IzJ^d;R zjSXsRl3S&Us(R8OPoR3np~cvswov1c4Sw@v4>;s0RnHoH>^*}>wKd64F?hKSmxXVT zdz5>*l`i8+R?nJEG&ZX($5qK@ZQ+|;v5Ypdr0&L!)JL}#Y3@w(j{C9NMxDaCNwH7A z;TEkP`m;e0+KS!5wW=WMK(d>mgVtvDthGdAYuXZ7m2Az{qt?oM*4nFk4ZQV3Es!@U z-(q}nB|q~-Sl+zOL{vf7^a1ED)KNt&SH`+o7aU>ihPL1}Pj=(n?z)i_*p1JTQ_9ut z`N_?bX?1%WqA9Iz)0#7Timz^CbsEd0gAt#_ieTUFSGSu$nO3(aa!bQfYyooDgowsZ zobgplA`#O4Rb!_BpG(Ad& zT&uMSQmw96xNL$5=nu1zTI>&amrrCIDsTPSIauDU4Yj;miRIl{NmvX+S}a$0X>IpA zkAD7CtGv8RH-8dRS3VMDw6)y_Q3g{ehhcpeX(v})`1Re)-CSF8eRqJ=Rs(d#6UwAV{FuKE%4pJ5^9Ki}%-Kc~4~8fRE9#o-8=@x*sO)p@!VY6)02 z-5JyERA&KAb#8_jf=+cBK)|qU>TycF7AtLTuGgT;rX!)(nY!tX?NKO;mH_p@ZxO%) zmraiW%F~d*Wz*e2@sS#K*>u%TK2VLzrvHn<$wz4;Xu$9MsAbcuj4g;|(^}cW&-`0B zt!2}{>@f6RESn}u+8$`i(0d(iIX~%w^XTca>4VS<7t7rsEJPb_*)-kQIk9Z&!Wkk? z1m@)6J^vOe1-*VEVGOjVWQs^O4%KRoU;h z8hD^5E9FX_Y~-ISL-P>0D!T=xN$p6{<3WcWoD|d2Cus;j>H`$Fu|=`!c>u$c>wHm| z7V*p)y-UxH_j_PH0d+*WV@A5;TMf3o!}E%Gb!_5*K30S83$+@2BUXb0*MmoF(dRRn z$|rQs*KpMJ;69>&wjTTz?vc#I`>hAZ@k-&>gYRkKx{&L^{kSgP!uaKqx%pvmdHUu0_mJa?#w!+yu-exmi@VWflZ^Pz|DmT@yq+3-N+d~CJcn(D`~wotCoMh&@W<^B-zgPPtZZ1q6%aIUJO@J2 zr-&cHAgd|O&;z#tsO62?8qq6&@;PGpwO%^XU=>FiUVygRdSTDCR?tN>xnDJh3Fw8J z4ADwFd|&;L>LJI1h9M6V$Ar{uj1C2f7Q#JzZ+pwog2*CA%NG6z7Gh{2fOfct?++Vk zi!AbEcnI#_mxiIuvq*V*gI!B!O9BpXG$c{<3)qy4<9~6@kMPI#&{(;0876+bz5ZyA z=$1*kXG-x9#Lg*hSq^3A&7@`w+Wr#?7`6QbZZKep|1+4gvq;+!8#v5%y9;z4PV z3&L3Bri})B5y^K9%$rN(cc2m0UX~$s375f^8_A3O`z5Ku$=#A)7oPn0e=_u5pl7OFv5AtNM7XM$EAQ*c1!+Hc=BV7=075`V(~}qmX%=*JYa*#w_Cp)8ue|XcX4^@CsY{Xm0L`(0XC{cIryq^Qn74< z-=yMoQ9zqi+=>FtH(76Rt`{MVy2k|^enN43B?_n{*jF8ClnMQLyB8Xt+2u5 z`UMoy#irLDZ!kHA^a5fy^9jX;14Sb1_db!IW_^|P)r0xO*q_UMDo(j&KF_E2!^O}a zc=zo`9gI7DLi^xS3>W|XC36AP<`Y_)R8B>GY3|!-#ixrN?nfY$`PQsYddYJLf1*N%Fbf zl3xq1!}R{^-y3>QXSkm5G8%8p!pK=r{gXUr|;e|8U zl!*Fi%B|Rf!J3k|A24huBwvB;gsJ_4dVBG{C;qL#XfA(&!mY@qE>WKj@8ovj}>ib*N^EgykN@IcfnvFPy}1~qpc6G218knc{{pEyYJJ8=-I zg_FNAv>+BevSkYjBy4Db`))mLTJ#7-``1R=V$tL8a2ve$O<`!$0>SB?I4HPZC7cSv zLbUYgEL7*dUuR%k%--{5=f1qJJI3kJSt#1i7-@^CdpkxaXM9z6wB@6-P~^uM$&0Cb zvm~F^E%~*uuQ0v;+e-$?h^hM(lKfwgcZM|yd7vRw?;DKd#ngSDRNnk<$?p%}`-_d_ z#ngR{BtJL|dH(2ZBpveOTkS%h|9uhi!PXb$x5)T#_!q{CS2;9`^D%4`fBQ?2Bk~9R zR^!${Puw0{PCmoWwW}n8JuCLFTq!H(p|bS(n4!H?4VNg60HBKn$~V|=Lp~nPL;8Gi za8TX6zcX5ReQe%8EAy#to&2&Fbn#U>`BtbD;dLZ;@$vxKE;wtYl(GjycvW3|Kzx0> zSUU1J<+G~L@s;O0y7(FmB?ipEI_617j!>*Q@{a+Pvc`$Pj62XbF&l=gtqP+(A0gxG zP4sSK^;Q4;KqZ&=PZ?kPJ|8Z=3gP46p7lH#Uq7Y<;&kF`KC1e~*I`qoT8fp4w}+0e zS3`vQPPAk4%W27zOYonx{9ESFp#MgF6ly~|=m__&T^~q-p zq80H~!C>Pw9tMrDQ6w*1e9bn}7V))7(oXG;c6aghuWJom7xDFSN&dh+-E@6fH}TbF zBroFYd+;q>GR|(vZwwy*lZ@m=e7#4KKc`#r`@@sp`LsbeBEH%s`9C3r4yD(g#@Ab@ z1&Xf|@A@(EH4|pQCHgb;2?l>!@zo14@yeg057Or&zD~Hs7+)W22_Ii?{h=54`afBG z9rjdDNdN6bS`tMU0c@cF%H7~#xToW zJ4q_9SlLk-IttTh)<mGQhR(6zbUpuS6OWf^zIDn8;U4h!F}5IL@if^&7c^jKA%Hf` zbwl<3_rEsuUc};4a2~w(Ys1inYnpJnbKRMDs)Q$iun=vyZKC~+ofEORTy`!hOy>mc zaN9&*f84;hh{YyJ`z2)Jp@hnpbtcu8(v0gtJedpq#-$=^gCasYGDx8;fmBRn6)x1HkNT8le@P)4H#eD7d- z)jEPbMupLGy7JzwAk_3?Wd1MWup?FG4L)vdK+EKr-W2FO)2^n z`~$bww)1t|I+XNBRmLhsEiUc{)c_yL)W)wiNL=I(4@rv{g}#K6xFD|v_)z4JJ!T*; z@`o!W`Ge?aDDu7l|DZzB3Gy;S{sOHBs0C8z9VFBp@hcuQL8jViGo!b;l_aw$>+;$P zE;-uh5|Z$xlCT|w$xi5@bqG889y;NjI5vxSLIxfL`Jdl}+PX>ftJsOb!c3y;Pm0iE zk)g*ozx%K6w;N5SCHFhZ`E(1UFa1AXd|sO?{ePUYV|wV|eHA3458eu76A-*VB%m)$ zr`-r?X%B^a_#krM&1e1~vj2a$xP$JuBY7vs=+>({Ac|+S=aFQV#^;e_dGdLryEZ9_ zKa<2KFJ{>Bw$4PHfFIudbIDg9fer$mOAbE=auLrZr@G!LLpxg7_q~|&KFGoNfKpxG z_+k*O67TekU%Dv~PaSCoom|C!h2ndQtMgKNKd0SHbk+BBwiD(>S7&nFp!!YM>oNB8 zfoXDeUS4;h>m8Ykyd!cE8wM8U{gjIwzYPt!I}fLtc~RRIdPi<9DUknB9agJj#bDnp~T;dNs1c<)_H>PeiaiEC_G zd;@>IT>^^~ueHMmO`J(p707=44+7%g+i)BP#P$k15pgXj^V%BcqWL^=6fPkHTO?}# zgpCr3?1n7YsnK=uu1)n2qDgkRiaNXqr{!Fy((B^uH^oQlkWGZF;K*z0Qc;tTOU`p` zdW0^V16-S4;TOGKn|A2ywNSlbyxusfcZ8QZuYS`pSx=#hC8*b>uQ&Vx)ce=>{7rHF z=oQVj(hppxGHuO&MrkAmuHoqVZMG}7*_Ler1RIOC(sn%?`<;qU;dlYPKY!__bk$y* znN&MVkG-sZQ$FrZ&I^}rDv-qnE#2gh*S+gE6;pwlsa1#2FTNHBpOB)wR{^c=LIlL& z!9=oU{IMNXD^UpFPnt7RHDjysNerqcD^njvL_T*Q%;wa!w&qq;#4*yh=zWRGF65&0 z)f+M@wrUnE7B&+X&Sv7sX22Jh6f6dNY;bfm0roQ|6(6x+<`{s;c9N@J&}=7VsC*@& ztV#Am`!a+L#R04d_I`V|tCe02n2=GB6kq#t+h8$13P9v|UYAc#+_7?(ypdTzHRs z2de>0Oe_G^<`5Ntg5DK0s?`^G>Cs~ejXV;s>EG*6K4Uz#&sHom(4)Krz+e?=%5Dko zC?|Ltm3>{pjsON#PNsML%vOG&C8oSGDzQqIc#GGXL$D_aLDwBpQ?O0c88}yYedHitf z-qsYelX^fzQi#aylE_0U`6XG`)?Ew&o#pzl_Qd+Tc3irG(TyLMaRS86*FU>Bgj2#l(hQtM63_9xh?Hxr~I2-kq#-|afHXITVy$RQX$cj}* z1fp1(fpRNW{g1qz%&Q&Ms%h&hxv1vda4Zm!%;{0a!)4Qt(>pG2e|XC4uND-ks`(G#PAl#(24#Z&`9cT_P^vqxrfEp$B4$0IM+WmCNP}S zxqe!`*UMrKDB&Aae$X2MB{An&NMT(Ms_Ok2658gxM1m<2W&=!WYks=UT+iW@GyN!= zB;_ok@~ot?yNpwTEv90zV}6;arHOtI8lfnnrX7=Pjj_-z&g2hAjcehl;%!Y7*|?lB zP5c<-NX(A{##}tw^+?P*5tpLL#*>Suu-YU$&zIt`w}!t4m||W+6@3s}<`-ei@`gz$@bFg*RV4-d6}xusimY(ARJ1(gpCD^^hq0GTS>yyWqzQ9v*dvO z_(IFoXb6lldMgsgjKsB*a^UjRr#{7pJVxm+Hgqx3&68g zW%9NJw_FG1fRN^#E>#C>ibd}hh@xCFRaAOO)-|B@@}A6il2>qMr6tG+EpU;lE_OSf(BQtGQ&(zt5|sfMA#~eyd5UxDFr+Y z0Epze+WsWwG6}v;fQJ)}+JS6U0thI_IW3z1wha-d$8LuS@PR%VT@s~ut6NZ#=+Rt> z1O5d7n#r^^H9_n^@oAK;bT?*FTjwv*=M;>P=v8iQJ{M;h;ABHrEmiebHU$O8^9=KR z3CkfE-y=&!VY^fk80$Si5#s$aB|Ip-0<4lX(mJ66-P|zAr8TAD#U8W-=|H@(6t{bSz)po}z4CZaBG;u6&1vst$>_wx=jh0*#y^ zjj%-oEOHrfDyuFow)qwIB|dvJ_sRW0@ZHnYv-P<0bL7H zUMp*B=pxJ9KxEh^qMPxJt>Ia~@Hi?BKUhvNV>*S`$)?~7O*u))_mC1L3~~hm8AfalCjmKQw@+9w3xP3nuvR7qy6@_$25zw#EuC6yu7O2C)D z05=;HajR#d6%E2B?@-671>BH9R4!6Gw5)&|gj_G5S*)1HqlmU4K1V5Di-FRVWWx9~ zZqcKu8#ZQN^uOZig5U9{v$J2X+mB8igk@{b7qBcN4)h;H*W`*2f50&Ia=9Xe^H15K zA286APXB=6L5L^d0mEDX#R?FLYB^Fl73IF1zhC!lv~t>y9m=lfW^qQx{C|B!=s|8U z(DqBt*FSHd`TH~4^M(VsD=Ag)=^-!aRR2K))|2f8Q)+cOkk5EBBYY}Ip+&jPBcuw_ zl%r$03Odjl{XyuN+9wfcJ5!b}t2R%9TsP5;3y`P0v+Py z$XYUgtmMLhP#?&r<9*r~&fMeu5(HF?ICC_&AG}JO_IWp{<@{phBQWCAatyYf)|58pz#ZoBS6a`Vz*)}GUTIyRz0&#-^hSH7HCKjq28A^xk-9MA)_*KC{eSU1 z@3#Ac=(+{{G7Pu8rIo;lnn?}p6K^0xWOdmSt>K;EkWaW{Jsl6Y1NZ}5-}e_ z_djWM5oU7I==tH+J1>?(&r}{B!-d|7*60tc=V+f~p$#bdbF3R+fBfBodf-z4VjIV0 za?_X|_W*Ew)0qBn>s>@e+ccJ9L#wpNPXQ-|y3mSQq)EBjsRbJ98wHvi<$-)P&|C@{ z2sFIcVGg(QO=F>2_)CqU1qzfoN}_DR13NIZz&DNQ4$e-XO=F>GFErAoygWzQ0T;l- zhwK5sZH{rfn^dDJ4 z9OwrCYWcaATWqGHKDT=Q=reGu8m=J=o5bq z=Iq!+u^%==e_+@5dI+nZ_^V)&0r|sJ07K;uS5pO_5>}(F(~fPaNIK3`3C?|*63&YK zcbmVBz9)$MTOd~%%EbP+3w-k5F*3CL>Aj13^H*Sx0rLNlfIbeIqIXyvrE zFdZ@ZOttXD?ojsr-(UZ_BZv-02dsa^OC4bSE1BznGBx@G&%X7qfw;@kt%;b^RUPPo zU&3C64)oB&fOfO;^r>SPSa!@L-E)01-l*CKz`N^U% zJPb27B915DD;tRq(@5Y;?Y}@y>2=2Wxq$X&`oHu`tJzKHDmsy59@gf13H( zuWk+!yI+Br@V<{xb(iANu6*A|6?yU7DXlS_M@IhTC~K=TOy}OWOAj8W{3nTfaI!u6 zgXnzI>1%M8sPo`MQXok3rFx*5fWE})){C{ci-K0=b!>HFA>ZoJ*rMg8KaD)|W(JYx zPB0F6UTt_i*=myKVC=dNBG2QiP{Sb7#WtTvpZ!^Ak!JWwuN4Xl5a}NQ49sAkprSrO zccB$E!Qp}~z|N-7f=<}tmwx_4^R0u}#-Kg_mg_sJ{f;--?_QGkOCy5H+s}Uc$NGdl z>Y~uXzSd9J)1l1(VdoIgC)O80PcPR0U~5EZvF?0ZvtKcb4gK#=W8b&U=&8IrN#0i@ ze+y#Ye)4|C>XY}*#L)82@{{**Xfr_G2MFks_oxev@@~YorqJ@9wpo+6CeH|qF26p6 zf%%NKe}KH2F~3#-@!LRvvx?p4*0JS5&cu=_>pM)CHZ}43Q zd3~j5)0FC=T(lkNBK<*_zFF6GxXaSH;)kF(E?PZsA%KCiu3M;R`27YcH}Pm|+;6Z5 z{)R`}i$DO;miJ3M2D+B^FR71e@Rof3ae%3$d<5|zFT#BPMgw`ul{1wDNq+mKe&qFp zRYSp61}miF8<@#TIqm9b5<5Z+PZLP#c$#q8Tf*bXeLtGL{8!iaKA#@MPSp5fw39Nj zlRr@|5*V)o(YDtxVjt-xHIb&!$vixZ2s&c3p$YxqJOWh*j93o=!;j5JN)3ZYtcZMyA<4() zG7$JtV{?>|ycnDHlKdt9TN~l)Rv!Nj1HtkD~PRp3_oMAjQgW~mhse((3UaI&oZ_l1rM-{-w`mpW!yh4 zh-K`=DCU+i8w3oN5qhockLavkeG#; w^?91xy$|7-qZow6QHf8{?a9_QLw9SwQf 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�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 - AQAAANCMnd8BFdERjHoAwE/Cl+sBAAAAhuIZgFnYcU6wvp5DI4FozAAAAAACAAAAAAAQZgAAAAEAACAAAADnrYSEO5qfCQPpiUFTIS3ZRFiTItrg4/VIVOH2J3epYgAAAAAOgAAAAAIAACAAAACso6CSyxkad28kFe3eIz1YgltVz/YV200C+PLOhtmmPhAAAABBWAXXnj8W8KUy+QlVKF7JQAAAAFuRLjt27YOpR9+kkpnrDzww07fBW08hBX6gGDrJVJp/hGhDL4nX/wEgsPuN/EJB4f48rrPnGlHmfb6B9a0Il60= + AQAAANCMnd8BFdERjHoAwE/Cl+sBAAAAhuIZgFnYcU6wvp5DI4FozAAAAAACAAAAAAAQZgAAAAEAACAAAABSecZ3XkHz1XFYc0nCk5Yiz9Qe6FbTHXXa1BTG6vCZOwAAAAAOgAAAAAIAACAAAAAAtzvgNjp1LEEdupcL4nO9bua8wJolOEbWc5wAG28QMhAAAABhsBhGxU9U551VeMJ5xwKVQAAAAIZXA4STAiZ4xXT9jqMpGhDeYI6VmzvdRa64Ot83fkOMW1JHpm9h2dFZCuwr5wnnETH4pdxZhrEmKeEzXstiRjE= \ No newline at end of file diff --git a/vn.ib/vnib/vnib/vnib.cpp b/vn.ib/vnib/vnib/vnib.cpp index 05a0feaa..261aeba0 100644 --- a/vn.ib/vnib/vnib/vnib.cpp +++ b/vn.ib/vnib/vnib/vnib.cpp @@ -352,6 +352,11 @@ void IbWrapper::securityDefinitionOptionalParameterEnd(int reqId) this->api->securityDefinitionOptionalParameterEnd(reqId); }; +void IbWrapper::softDollarTiers(int reqId, const std::vector &tiers) +{ + PyLock lock; + this->api->softDollarTiers(reqId, tiers); +}; ///------------------------------------------------------------------------------------- ///processMsgs̹߳ @@ -665,6 +670,10 @@ void VnIbApi::reqSecDefOptParams(int reqId, const std::string& underlyingSymbol, this->client->reqSecDefOptParams(reqId, underlyingSymbol, futFopExchange, underlyingSecType, underlyingConId); }; +void VnIbApi::reqSoftDollarTiers(int reqId) +{ + this->client->reqSoftDollarTiers(reqId); +}; ///------------------------------------------------------------------------------------- ///Boost.Pythonװ @@ -1334,6 +1343,18 @@ struct IbApiWrap : VnIbApi, wrapper < VnIbApi > } }; + + virtual void softDollarTiers(int reqId, const std::vector &tiers) + { + try + { + this->get_override("softDollarTiers")(reqId, tiers); + } + catch (error_already_set const &) + { + PyErr_Print(); + } + }; }; @@ -1419,6 +1440,7 @@ BOOST_PYTHON_MODULE(vnib) .def("reqAccountUpdatessMulti", &IbApiWrap::reqAccountUpdatessMulti) .def("cancelAccountUpdatesMulti", &IbApiWrap::cancelAccountUpdatesMulti) .def("reqSecDefOptParams", &IbApiWrap::reqSecDefOptParams) + .def("reqSoftDollarTiers", &IbApiWrap::reqSoftDollarTiers) .def("tickPrice", pure_virtual(&IbApiWrap::tickPrice)) .def("tickSize", pure_virtual(&IbApiWrap::tickSize)) @@ -1475,6 +1497,7 @@ BOOST_PYTHON_MODULE(vnib) .def("accountUpdateMultiEnd", pure_virtual(&IbApiWrap::accountUpdateMultiEnd)) .def("securityDefinitionOptionalParameter", pure_virtual(&IbApiWrap::securityDefinitionOptionalParameter)) .def("securityDefinitionOptionalParameterEnd", pure_virtual(&IbApiWrap::securityDefinitionOptionalParameterEnd)) + .def("softDollarTiers", pure_virtual(&IbApiWrap::softDollarTiers)) ; //ṹصķװ @@ -1756,6 +1779,12 @@ BOOST_PYTHON_MODULE(vnib) .def_readwrite("extOperator", &Order::extOperator) ; + class_("SoftDollarTier") + .def("name", &SoftDollarTier::name) + .def("val", &SoftDollarTier::val) + .def("displayName", &SoftDollarTier::displayName) + ; + //vectorصķװ class_("TagValueList") .def(vector_indexing_suite()); //truedzҪ @@ -1778,6 +1807,9 @@ BOOST_PYTHON_MODULE(vnib) class_>("DoubleList") .def(vector_indexing_suite, true>()); + class_>("SoftDollarTierList") + .def(vector_indexing_suite, true>()); + //enumصķװ enum_("OrderConditionType") .value("Price", OrderCondition::Price) diff --git a/vn.ib/vnib/vnib/vnib.h b/vn.ib/vnib/vnib/vnib.h index e79b482d..d3ea9f9f 100644 --- a/vn.ib/vnib/vnib/vnib.h +++ b/vn.ib/vnib/vnib/vnib.h @@ -219,6 +219,8 @@ public: const std::string& multiplier, std::set expirations, std::set strikes); void securityDefinitionOptionalParameterEnd(int reqId); + + void softDollarTiers(int reqId, const std::vector &tiers); }; @@ -317,9 +319,9 @@ public: virtual void contractDetailsEnd(int reqId){}; - virtual void execDetails(int reqId, const Contract& contract, const Execution& execution) = 0{}; + virtual void execDetails(int reqId, const Contract& contract, const Execution& execution){}; - virtual void execDetailsEnd(int reqId) = 0{}; + virtual void execDetailsEnd(int reqId){}; virtual void updateMktDepth(TickerId id, int position, int operation, int side, double price, int size){}; @@ -391,6 +393,8 @@ public: virtual void securityDefinitionOptionalParameterEnd(int reqId){}; + virtual void softDollarTiers(int reqId, const std::vector &tiers){}; + //------------------------------------------------------------------------------------- //主动函数 //------------------------------------------------------------------------------------- @@ -514,4 +518,6 @@ public: void reqSecDefOptParams(int reqId, const std::string& underlyingSymbol, const std::string& futFopExchange, const std::string& underlyingSecType, int underlyingConId); + + void reqSoftDollarTiers(int reqId); }; diff --git a/vn.ib/vnib/vnib/vnib.vcxproj b/vn.ib/vnib/vnib/vnib.vcxproj index 02819820..25aef65b 100644 --- a/vn.ib/vnib/vnib/vnib.vcxproj +++ b/vn.ib/vnib/vnib/vnib.vcxproj @@ -41,8 +41,8 @@ .pyd - D:\boost_1_57_0;D:\Anaconda2\include;X:\GithubProject\vnpy\vn.ib\ibapi\client;$(IncludePath) - X:\GithubProject\vnpy\vn.ib\ibapi;D:\Anaconda2\libs;D:\boost_1_57_0\libs;$(ReferencePath) + D:\boost_1_57_0;D:\Anaconda2\include;X:\GithubProject\vnpy\vn.ib\ibapi\windows\client;$(IncludePath) + X:\GithubProject\vnpy\vn.ib\ibapi\windows;D:\Anaconda2\libs;D:\boost_1_57_0\libs;$(ReferencePath) @@ -69,70 +69,72 @@ true true true - X:\GithubProject\vnpy\vn.ib\ibapi\lib;D:\boost_1_57_0\stage\lib;D:\Anaconda2\libs;%(AdditionalLibraryDirectories) + X:\GithubProject\vnpy\vn.ib\ibapi\windows\lib;D:\boost_1_57_0\stage\lib;D:\Anaconda2\libs;%(AdditionalLibraryDirectories) - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/vn.ib/vnib/vnib/vnib.vcxproj.filters b/vn.ib/vnib/vnib/vnib.vcxproj.filters index 5262e581..cde717c6 100644 --- a/vn.ib/vnib/vnib/vnib.vcxproj.filters +++ b/vn.ib/vnib/vnib/vnib.vcxproj.filters @@ -24,64 +24,67 @@ Source Files - + Source Files\ib - + Source Files\ib - + Source Files\ib - + Source Files\ib - + Source Files\ib - + Source Files\ib - + Source Files\ib - + Source Files\ib - + Source Files\ib - + Source Files\ib - + Source Files\ib - + Source Files\ib - + Source Files\ib - + Source Files\ib - + Source Files\ib - + Source Files\ib - + Source Files\ib - + Source Files\ib - + Source Files\ib - + + Source Files\ib + + Source Files\ib @@ -89,115 +92,118 @@ Header Files - + Header Files\ib - + Header Files\ib - + Header Files\ib - + Header Files\ib - + Header Files\ib - + Header Files\ib - + Header Files\ib - + Header Files\ib - + Header Files\ib - + Header Files\ib - + Header Files\ib - + Header Files\ib - + Header Files\ib - + Header Files\ib - + Header Files\ib - + Header Files\ib - + Header Files\ib - + Header Files\ib - + Header Files\ib - + Header Files\ib - + Header Files\ib - + Header Files\ib - + Header Files\ib - + Header Files\ib - + Header Files\ib - + Header Files\ib - + Header Files\ib - + Header Files\ib - + Header Files\ib - + Header Files\ib - + Header Files\ib - + Header Files\ib - + Header Files\ib - + Header Files\ib - + Header Files\ib - + Header Files\ib - + + Header Files\ib + + Header Files\ib diff --git a/vn.trader/ibGateway/ibGateway.py b/vn.trader/ibGateway/ibGateway.py index 0cb6aba4..b51292c9 100644 --- a/vn.trader/ibGateway/ibGateway.py +++ b/vn.trader/ibGateway/ibGateway.py @@ -717,4 +717,9 @@ class IbWrapper(IbApi): def securityDefinitionOptionalParameterEnd(self, reqId): """""" pass + + #---------------------------------------------------------------------- + def softDollarTiers(self, reqId, tiers): + """""" + pass \ No newline at end of file diff --git a/vn.trader/ibGateway/vnib.pyd b/vn.trader/ibGateway/vnib.pyd index 934fef611f992c5b777a2ccdae3722bca38a8de8..e3ff25d8f8b624cf2fb3487b2d7b3bce242f6ca5 100644 GIT binary patch literal 1061376 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

^-rS52ld;XBR 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 f=_cbHkMt);{J2~oIbPT$fu!JN6~;{DHYF9 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ßi3ncaUZI!QB~iEAkBXNQfO) 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

b03uN+9|V<1=B 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

AsR}muSb?e(N+l>2 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 R4Qh-bzp;P)-}n3t{4Yf#MN0qx