Portfolio update

Restarting IB Controller refreshes the Portfolio tab. Is there a refresh schedule that applies otherwise? I'm asking as my system automation uses GetPositionInfo() and it's not updating in a timely manner.

Portfolio tab in IBController is updated by TWS at times when TWS decides to do so. TWS is "lazy" with account updates. The same can be seen in TWS itself "Account" window. Typically it is updated 1-2 second after the fact. Client applications have no control over it. You can call SetInfoAccount but it will still be updated when TWS decides (i.e. with delay).

Due to the TWS delay, you would have to calculate the shares owned based on order status, which is updated faster than the position info.