There are really no settings you can change. You would have to use a TWS API Version of at least "163" for any of the fractional size rules to work. rossh_yh mentioned that "163" is available in TWS API V10.10 and later. And it sounds like IBKR now requires fractional size support for AUD.USD real-time data.
The way this works internally is that IBKR introduces new features and increments the internal API version number. When your client connects to TWS/IGW, the two determine the highest common API version. That way, a client with a very old API version can work just fine with brand new TWS/IBGW as long as the client only utilizes features from it's version level and below. Feature 163 is called MIN_SERVER_VER_FRACTIONAL_SIZE_SUPPORT. You can find the list of the features in the API source code
- for C++ in "CppClient/client/EDecoder.h"
- for C# in "CSharpClient/client/MinServerVer.cs"
- for Java in "JavaClient/com/ib/client/EClient.java"
- for Python in "pythonclient/ibapi/server_versions.py"
Your client can also be aware of the maximum API version it understands and, after connection with TWS/IBGW, the highest common version. This is somewhat language dependent again, but in python, for example, these two lines below should be able to print the API version for you and it should print a number of 163 or higher for fractional siye support.
from ibapi.server_versions import *
print( MAX_CLIENT_VER )
´³¨¹°ù²µ±ð²Ô
PS. Excuse my PSL level python skills (Python-as-a-Second-Languge) but we speak Java at home
toggle quoted message
Show quoted text
On Tue, Jan 3, 2023 at 03:31 PM, Mark Murari wrote:
Thanks Jurgen for the very comprehensive answer which is much appreciated. I need to dig around and figure out why this change is preventing specifically the download of Audusd Forex contract. It seems not to affect any other currency pair except Aud. I am using the python api so not clear what setting needs to be changed to allow the download to work.