Posted By: Zheka
IB_contractPrice() and contractRecord() speed improvement - 12/12/18 16:33
JCL,
Zorro requests price snapshots sequentially, i.e. the next request is triggered not earlier than the "tickSnapshotEnd' is received.
With 1 request-response taking 1.5-5sec per opt.contract,a chain update takes forever.
The way to make it work fast is to fire *many* requests at once.
IB API allows for 100 snapshot requests/sec (or rather 500 requests/5sec).
So, a working chain of 200-300 contracts can be updated with data within 5sec.
I just tried it the API sample client app - and it works internally exactly in this way!
Zorro/IB plugin just need to take care of pacing of requests, which in the recent IB API version is taken care of automatically via (+PACE) option.
https://groups.io/g/twsapi/topic/paceapi_works_fine/28215139?p=,,,20,0,0,0::recentpostdate%2Fsticky,,,20,2,40,28215139
I also read an opinion that NOT using snapshots works faster, but this needs to be tested..
Can this change be implemented?
Pleease...
Zorro requests price snapshots sequentially, i.e. the next request is triggered not earlier than the "tickSnapshotEnd' is received.
With 1 request-response taking 1.5-5sec per opt.contract,a chain update takes forever.
The way to make it work fast is to fire *many* requests at once.
IB API allows for 100 snapshot requests/sec (or rather 500 requests/5sec).
So, a working chain of 200-300 contracts can be updated with data within 5sec.
I just tried it the API sample client app - and it works internally exactly in this way!
Zorro/IB plugin just need to take care of pacing of requests, which in the recent IB API version is taken care of automatically via (+PACE) option.
https://groups.io/g/twsapi/topic/paceapi_works_fine/28215139?p=,,,20,0,0,0::recentpostdate%2Fsticky,,,20,2,40,28215139
I also read an opinion that NOT using snapshots works faster, but this needs to be tested..
Can this change be implemented?
Pleease...