API Release Notes Build 9.40

API Beta Notes

The enhancements and modifications below are in build 9.40 of the TWS API. This API release requires TWS server version 38 (TWS release 878). Please note that API 9.4 will disconnect immediately if a TWS version older than 878 is detected. Noted features below require TWS version 879.

For clarification on any of the items listed, refer to the appropriate section in the Users Guide, or send us an email at Beta Support.

Enhancements

View "What-If" Margin & Commissions before Transmitting an Order

Supported in: Socket and ActiveX APIs

You can now request margin and commission "what if" data on an order before you transmit. In support of this feature, a new attribute, bool whatIf(), was added to the Order class. When this value is set to true, margin and commission data is received back via a new OrderState() object for the openOrder() callback.

Commissions Relayed to API for Each Trade

Supported in: Socket and ActiveX APIs

The openOrder() callback with the new OrderState() object will now be invoked each time TWS receives
commission information for a trade.

Contract and ContractDetails Classes/Structs Reorganized to be More Intuitive

Supported in: Socket APIs

The BOND-specific fields have been moved from Contract to ContractDetails

The Multiplier field has been removed from ContractDetails. It already exists in
Contract and has been left there.

The ConId field has been moved from ContractDetails to Contract. This enables support for security definition by conId requests.

Deprecated Advisor-Related Property Removed

Supported in: Socket and ActiveX APIs

The previously deprecated Order::sharesAllocation property has been removed. You must now use the faGroup, faProfile, faMethod and faPercentage fields to support advisor functionality.

ActiveX Redesigned to Mimic Socket Interfaces

Supported in: ActiveX API

We have significantly refactored the ActiveX control to mimic the Socket interfaces. For each
class
(struct) we now have a COM interface (object)
with the same set of properties, which is being passed to a
corresponding request (callback).
This replaces a callback method that takes 70+ parameters with a
callback method that takes a couple of objects, and allows us to support all of the available API features for VB6 clients.

A new, single order atttibute, bool OutsideRTH(), replaces two flags: ignoreRTH and rthOnly in the Order class/struct. If set to true, this new extended order attribute allows orders to trigger or fill outside of regular trading hours.