...while IB on their site claims that they provide only 6 months of data for stocks and even less data for futures.
No, IB change it one time (I dont know when, but I download maybe since septemeber?) they provide
12 months of data for some futures, but you need to take one that was tradeable the last year for example
ZG gold or
I Euribor etc. and the contract should not expired, try it!
And they have a new parameter (i dont know its only in a beta version?) supporting Expired Contracts:
http://www.interactivebrokers.com/en/so ... s/api9.php
API Reporting on Expired Contracts
For all API technologies, including DDE and all socket-based API technologies, including the socket client library, ActiveX, and Java, TWS 863 (server version 31) and API version 9.0 (socket client version 30) extend contract details requests and historical data queries by supporting a new final parameter, “Include Expired.” If it is true, those operations can be performed pertaining to expired contracts. Historical data queries on expired contracts are limited to the last year of the contracts life, and are initially only supported for expired futures contracts, with that restriction being imposed by IB’s servers. At some point in the future, should historical data queries for expired contracts on other asset classes become available, TWS 863 (server version 31) and API version 9.0 (both DDE and socket client version 30) will support those queries.
Is'nt nice news!?