Join the 80,000 other DTN customers who enjoy the fastest, most reliable data available. There is no better value than DTN!

(Move your cursor to this area to pause scrolling)

"You have an excellent product !!!!!!" - Comment from Arely
"I would just like to say that IQFeed version 4 is running very well and I am very happy with its performance. I would also like to extend a big thanks for the fast and efficient help that I always receive. My questions and concerns are always addressed promptly. Way to go!" - Comment from Josh in CO.
"I'm very glad I switched to IQFeed. It's working perfectly with no lag, even during fast market conditions." - Comment from Andy via Email
"I just wanted to say how happy I am with your service. I was able to download the API docs last week and I was able to replicate Interactive Brokers historical bar queries and realtime bar queries over the weekend. That was about one of the fastest integrations that I've ever done and it works perfectly!!!!" - Comment from Jason via Email
"Thank God for your Data Feed as the only Zippers I see are on my pants (LOL), and no more 200 pip spikes to mess up charts." - Comment from Spiro via Email
"I am enjoying the feed very much - so superior to the broker provided feed I was previously using." - Comment from George
"And by the way, have to say this. I love the IQFeed software. It's rock solid and it has a really nice API." - Comment from Thomas via RT Chat
"Boy, probably spent a thousand hours trying to get ******* API to work right. And now two hours to have something running with IQFeed. Hmmm, guess I was pretty stupid to fight rather than switch all this time. And have gotten more customer service from you guys already than total from them… in five years." - Comment from Jim
"I was with ******* for 4 years at $230 a month, this is a huge savings for me, GOD BLESS YOU PEOPLE," - Comment from T.S. via Email
"I had always used ******* but for the past 2 weeks have been trying DTN IQFeed. Customer support has been extraordinary. They call just to make sure your problem hasn't recurred." - Comment from Public Forum
Home  Search  Register  Login  Recent Posts

Information on DTN's Industries:
DTN Oil & Gas | DTN Trading | DTN Agriculture | DTN Weather
Follow DTNMarkets on Twitter
DTN.IQ/IQFeed on Twitter
DTN News and Analysis on Twitter
Viewing User Profile for: bbmat
About Contact
Joined: Mar 31, 2014 03:14 AM
Last Post: Jun 27, 2014 08:19 AM
Last Visit: Jun 27, 2014 08:19 AM
Yahoo IM:
Post Statistics
bbmat has contributed to 24 posts out of 19217 total posts (0.12%) in 1,972 days (0.01 posts per day).

20 Most recent posts:
IQFeed Developer Support » Subscribe to new BARS not TICKs? Jun 27, 2014 08:19 AM (Total replies: 6)

I figured out the issue, the problem was the <space> in front of the symbol.

Thanks a lot.

IQFeed Developer Support » Subscribe to new BARS not TICKs? Jun 27, 2014 06:01 AM (Total replies: 6)

When I submit the command "BW,USDCAD.COMP,3600,,1", all that is returned is:


but nothing else!

When I submit the following command :

"BW, USDJPY.FXCM, 1,,,,,,67c38784-4083-4117-ac92-8b6e82c27bb6,,,\r\n" (includes requestId)

then the following is returned:


Neither seems to work.

Could you please advise what is potentially going wrong here? I set the protocol to Version 5.1 upon connecting the derivative tcp socket.

IQFeed Developer Support » Subscribe to new BARS not TICKs? Jun 26, 2014 04:15 AM (Total replies: 6)

Could you please check whether the streaming bar request "BW, ...." allows for currency symbol requests? Each time submit a request it returns "n,[Symbol]".

IQFeed Developer Support » Subscribe to new BARS not TICKs? Apr 23, 2014 06:35 AM (Total replies: 6)

I am aware how to retrieve historical bar series, however, I am wondering is it possible to receive new bars that complete? For example, I can retrieve all historical 1-minute bars up until now but I also like to be notified and receive when each new 1-minute bar completes going forward without having to specifically request it each single time. If that is not possible could you please give me some suggestion what Best Practices are? I see the problem that because of slight timer differences relying on the local timer to each time request a new bar is most likely a very bad solution.


Great, will do.

While you offered to clarify, is there a chance to get a list of the currently supported fx providers? I am aware of FXCM and COMP (composite feed) but I wonder which other currently supported providers are there. I am especially interested in ECN type of feeds such as FXAll, HotspotFX, Currenex, EBS, Reuters. I checked on your website and found one list but most of the listed providers listed under Tenfore are not working. I am interested in intraday 1-minute and tick based data.

Thanks a lot

I get similar messages than you get above. I guess I got confused because some of my requests include a custom requestId, others do not. You made it clear that even when an error message is returned the request Id is prepended as long as the request is made with the id. Sorry my bad. Happy Easter.

P.S. Is there a way to delete this thread as it was my mistake and the datafeed behaves actually as documented and expected.

The documentation states the following:

Result Format for Errors:

If IQConnect.exe recognizes the command is formatted incorrectly, you will receive a syntax error in the following format:

Or, if the servers return an error, you will receive an error in the following format:
E,[Error Text],<CR><LF>!ENDMSG!,<CR><LF>

If you specified a REQUESTID, it will be prepended to one of the above messages. For example:
REQUESTID,E,[Error Text],<CR><LF>


Can you please shed light into the current standard way to receive error messages because the above does not match with what I get back. I am receiving error messages that differ significantly: Sometimes the error message is prepended with "1000", at other times only a "!NOData!" is returned. It makes it incredibly difficult to write code that does not break.

I like to request the addition of millisecond time stamps for currency tick based data. I understand that your data providers do not time stamp down to the millisecond but can you at least consider timestamping to the millisecond on your end? It makes very little sense to receive several ticks within the same second that are all identically timestamped. I currently time stamp on my end but I am not sure I understand why you provide millisecond precision for equity data but not for currency data. Most every data provider nowadays provides precise time stamps down to the millisecond so I am actually pretty sure that your data providers (Tenfore or FXCM,...) also provide millisecond precision.


Thanks for checking.

Not wanting to open another topic, could you please let me know what the cutoff time is for fx data when requesting historical DAILY data? What is the time at which the Daily Close of a compressed data point is taken? Is it midnight EST?

My apologies,

problem solved! I wrote an AsyncSocket class some time ago and completely forgot that I internally already manage potentially split messages. Sorry to occupy your time with this issue. I verified and the Gateway indeed sends messages containing multiple data points, constrained by the "dataPointsPerSend" parameter.

will need to double check and get back to you on this, but good idea to isolate whether the gateway is involved or not.

Tim Walter, thanks for your effort but I guess you misunderstand; My issue is that my socket only receives incoming data packets with the EXACT size and content of 1(!!!) single data point, one line (ending with "\r"). That is all each packet contains. I expect to receive hundreds of data points in one packet. It still looks to me that the gateway sends out line by line rather than all 500 requested data points at once.

So, currently I do not need to store anything in temp variables because I receive exactly one data point and it is easy to parse that into a POCO. My problem, however, is that I want to get many datapoints (optimally) the whole request in one or few large packets. I double checked and my socket logic does not impose any limits on incoming data sizes.

My socket logic seems perfectly fine. I receive exactly what I request, not one single data point is dropped. But my socket receives each single data point in an individual packet rather than having many data points lumped together in one packet. And right now I still have to suspect that it is the Gateway IQConnect which is the speed throttle here -> Sending each data point individually slows down things to a large degree.

Edited by bbmat on Mar 31, 2014 at 05:33 AM
Edited by bbmat on Mar 31, 2014 at 05:36 AM

got it, thanks.

no I would not because the EST time 00:00:00 would show on my machine as 12:00:00 noon (12 hours ahead) and no date switch would be made. My problem is that I want to convert all time stamps to UTC datetime and right now the date portion is missing on streaming data.

Here is what I am seeing:

FROM CLIENT LookupRequest 9296 2014-03-31 17:51:46 HIX,EURUSD.COMP,3600,500,0,159c0467-29b0-4402-a945-f9ea09132d7f,5000,s

I attached the logFile could you please take a look, it still looks like as if the gateway sends each message (each data point) individually, or is this to be understood as one single response message?

I just wonder, if this was a socket issue then why do I get each message containing exactly one full datapoint with ending CF flag? If the buffer was set too low in my socket then I would understand but then each message should be truncated which it is not.

Edited by bbmat on Mar 31, 2014 at 04:56 AM
Edited by bbmat on Mar 31, 2014 at 04:57 AM
Edited by bbmat on Mar 31, 2014 at 04:58 AM

so how would you deal with the fact that the stream continues throughout a date switch? Anyone who does not deal with EST as local time needs to convert to UTC or local time which makes it very error prone if no date can be retrieved.

OK, could you please help me locate where to turn on loggin in the gateway?

got it, regarding my last line in the previous post,

"By the way could you please let me know the field descriptor to specify in "Select Update Fields" in order to have a full time stamp (with date) returned. I do not see dates returned right now for Level1 quote subscriptions. I currently use "Bid TimeMS", "Ask TimeMS", and Last TimeMS", so how can I get the full date & time returned?"

Could you please point me to the right field?

I see the same lacking on Level1 quote subscriptions for fx. Can you confirm that milliseconds are also not reported on Level1 quotes? I do not understand why your servers would not time stamp everything that comes in, regardless of asset class? (unless of course it is already exchange time stamped)

By the way could you please let me know the field descriptor to specify in "Select Update Fields" in order to have a full time stamp (with date) returned. I do not see dates returned right now for Level1 quote subscriptions. I currently use "Bid TimeMS", "Ask TimeMS", and Last TimeMS", so how can I get the full date & time returned? Thanks

Edited by bbmat on Mar 31, 2014 at 04:19 AM
Edited by bbmat on Mar 31, 2014 at 04:21 AM

Time: Fri August 23, 2019 10:05 PM CFBB v1.2.0 0 ms.
© AderSoftware 2002-2003