jmv
-Interested User-
Posts: 19
Joined: May 31, 2011
|
Posted: May 31, 2011 04:37 AM
Msg. 1 of 3
Hello all,
I'm working with IQFeed's API and everything works great. However, there seems to be some special occurrences where L2 data is just not available. I mean, everything goes ok, the API gets connected, and then I receive the normal startup messages:
-------------------------------- [DTN] IQConnectStatus [0,0]
[DTN L1] S,KEY,9796 [DTN L1] S,SERVER CONNECTED [DTN L1] S,IP,66.112.148.180 60004,66.112.148.211 60002,66.112.148.212 60009,66.112.148.213 60001,66.112.148.211 60005,66.112.148.211 60012,66.112.148.200 60003,66.112.148.214 60015,66.112.148.212 60050,66.112.148.213 60014,66.112.148.212 60016,66.112.148.212 60018 [DTN L1] S,CUST,real_time,66.112.148.112,60003,xxxxxxxxxxxxx,4.7.0.9,0, L2_SERV EUREX L2 ,,500,QT_API,,
---------------------------------
Now I send "wXGM11\r\n" to port 5200, and the contract's L1 data starts flowing. No problem here. But then, when I send "wXGM11\r\n" to 9200 (L2 port), "usually" it will work ok. I say "usually" because at least twice (being today the second one, by the way) IQFeed server will refuse to send the L2 data.
No matter if I disconnect/recconect IQLink, or whether I try restarting a number of times my software's connection. L2 data just won't arrive.
Admittedly, this has only happned twice... but it is nonetheless a worrying situation, because you can have a whole day without L2 data before IQ servers "decide" to send you the L2 data again (last time, I had no L2 data until the following day. Today , I do not know how much it will last)
has someone experienced this problem?
thanks for your time,
|
jmv
-Interested User-
Posts: 19
Joined: May 31, 2011
|
Posted: Jun 1, 2011 01:08 AM
Msg. 3 of 3
After several attempts, I finally got a "cannot connect" java IO exception regarding the L2 port (9200). Which led me to think that perhaps I was not closing the client sockets in a clean way and, somehow, after a few reconnections port 9200 got "stucked" (i.e., permanently bound to an old process, thus unable to get bound by new software instances).
I found a couple of cases where the port closure wasn't clean: I've fixed it, thus let's see whether it will work. For now, today I've got my L2 data back.
thanks
|