[ts-gen] Support added for fundamentals data req and msg types
Bill Pippin
pippin at owlriver.net
Fri Nov 20 17:07:57 EST 2009
The shim now provides limited support access to the IB tws api
fundamentals data feature. From the NEWS file:
* Add support, given an account subscription for Reuters
fundamentals data, for the related command, request and
message events. There is an example of the command syntax
in the script exs/data.
The ApiLevel configuration variable must be set to 41 or
higher, and most other api features, including market data,
history, and orders, become inaccessible; you'll need to
run another session with the ApiLevel still at 23 in order
to use these other api features.
The addition of this feature does not signal a shift from work on
memory management to the addition of new api version features.
In fact, support for the fundamentals data cmd-req-msg events was
added in order to better stress test memory allocation, since each
report token is a large xml document, often of several meg or more.
Although the command interface to this api feature has been in place
for quite a while, today marks the first publicly available release
to include a refactoring of the buffer component used for input
and formatting so that the processing of the fundamentals data reports
is both robust and efficient. Also from the NEWS:
Refactor Buffer ... [class] ...
so that the large buffers needed for fundamentals data will
be allocated only when needed, with a consequent reduction in
memory footprint ...
This provides the block-doubling features of vectors for
buffers as well; e.g., during input, the InpBuf class starts
with a small buffer size and yet dynamically discovers the
buffer size used by read(2) ...
Please note the warning near the start of this post that many other
api features are not useable in the same session as fundamentals data.
Increasing the api level for those other request types, such as market
data, history, and orders, will wait until the work on memory is
finished, and I turn to the overall major milestone task of versioning.
For now, just run multiple sessions of the shim as needed.
Thanks,
Bill
More information about the ts-general
mailing list