Interactive Broker connection break mid-way, cause data request stuck in a while loop

조회 수: 1 (최근 30일)
I noticed a new problem with IB connection, sometimes when i request data (using either getdata history or timeseries ), the code stuck in the while loop:
while c.DataRequest
drawnow
end
i suspect it happend due to using " ib = ibtws('',7496)" , i may have connect + disconnect from TWS too often ?? Or did i request data too often from TWS ? the only solution to make data request work again, is to quit Matlab, and re-launch Matlab, or re-launch TWS
Anybody experienced the same problem before ?
once " ib = ibtws('',7496)" is established, how long does this connection stay?? how to make sure i keep the connection stay there in practice ?
How to reconnect with IB, without stuck in the data request while loop ?? Please help
Best regards
Terry
  댓글 수: 2
Guillaume
Guillaume 2020년 1월 23일
Peer Boerretzen's non-answer moved here:
Hi I am experiencing exact same problem.
For me it happens when IBTWS automatically restarts every night and matlab get stuck in the while loop you mention when trying to request 'timeseries' data. Have tried with both off-line and on-line version of ibtws and with gateway but same problem.
Would also really apprechiate a solution to this problem
Annie Leonhart
Annie Leonhart 2020년 2월 8일
Download iB Gateway and run it with the log on. Should clearly tell you what’s happening.

댓글을 달려면 로그인하십시오.

답변 (1개)

Annie Leonhart
Annie Leonhart 2020년 3월 1일
At the end of your code close the connection. It only needs to be open when requesting. If you leave it open it'll timeout and you'll try to request more data with the same client ID and it will not run.
simply add to the end of your code and it'll work smoothly every time.
close(ib)

카테고리

Help CenterFile Exchange에서 Get Started with MATLAB에 대해 자세히 알아보기

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by