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)




"I ran your IQFeed DDE vs. my broker vs. a level II window for some slow-moving options. I would see the level II quote change, then your feed update instantaneously. My broker's DDE, however, would take as much as 30 seconds to update. I am not chasing milliseconds, but half a minute is unacceptable." - Comment from Rob
"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
"With HUGE volume on AAPL and RIMM for 2 days, everyone in a trading room was whining about freezes, crashes and lag with *******, RealTick, TS and Cyber. InvestorRT with IQFeed was rock solid. I mean SOLID!" - Comment from Public IRC Chat
"Version 4.0.0.2 has been working well for me and I appreciate that it is now a much tighter client to work with. I feel I can go to press with my own application and rely on a stable platform" - Comment from David in IA.
"It’s so nice to be working with real professionals!" - Comment from Len
"IQFeed version 4 is a real screamer compared to anything else I have seen." - Comment from Tom
"I just wanted to let u know that your data feed/service is by far the best!!! Your unfiltered tick data is excellent for reading order flow and none of your competitors delivers this quality of data!" - Comment from Peter via Email
"Thanks for the great product and support. During this week of high volume trading, my QuoteTracker + IQ Feed setup never missed a beat. Also, thanks for your swiftness in responding to data issues. I was on ******* for a few years before I made the switch over early this year, and wish I had done it a long time ago." - Comment from Ken
"As a past ******* customer(and not a happy one), IQ Feed by DTN is a much better and cheaper product with great customer support. I have had no problems at all since switching over." - Comment from Public Forum
"Very impressed with the quality of your feed - ******* is a real donkey in comparison." - Comment from A.C. via Email
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: DTN_Gary_Stephen
About Contact
Joined: Jul 3, 2019 11:09 AM
Last Post: May 19, 2022 05:44 PM
Last Visit: Yesterday @ 09:58 AM
Website:  
Location:
Occupation:
Interests:
Avatar:
Email: gary.stephen@dtn.com
AIM:
ICQ:
MSN IM:
Yahoo IM:
Post Statistics
DTN_Gary_Stephen has contributed to 251 posts out of 20596 total posts (1.22%) in 1,054 days (0.24 posts per day).

20 Most recent posts:
IQFeed Developer Support » Bad Ticks In GME Tick History. May 19, 2022 05:44 PM (Total replies: 3)

I have some further information: GME experienced very volatile trading on May 12. The stock was halted 4 times during that day due to limit up/limit down restrictions. The trade you're asking about was the last trade before the first halt occurred. The bid/ask at the time of the trade, are not truly reflective of this trade. Trading resumed again 5 minutes later.

So this trade isn't exactly what I speculated, it was a unique situation. But the situation I described is common, especially in bid/ask offers that aren't also trades.

Sincerely,
Gary Stephen
DTN IQFeed Implementation Support Specialist


IQFeed Developer Support » Bad Ticks In GME Tick History. May 19, 2022 02:20 PM (Total replies: 3)

When a tick error occurs, the exchanges will send a Trade Correction, and the history available via historical API lookup will be updated to reflect the correction. As of today, that tick is still in the history, so it's probably not an error.

What is it, then? The Ask Price of 500,000 is probably something I call a "token bid." Sometimes the market makers want to have an active Bid or Ask for a symbol, but don't actually want to buy or sell any of that symbol. So they set a ridiculously high ask, or a ridiculously low bid, that no one will ever try to execute. So this is probably a legit transaction. I'm not sure how this bid/ask could have resulted in a sale, but it is normal for outlandish bid/ask prices to show up on the Level 1 feed as just bid/ask offers.

Sincerely,
Gary Stephen
DTN IQFeed Implementation Support Specialist


IQFeed Developer Support » How to find Future Contract May 12, 2022 01:08 PM (Total replies: 6)

NFX effectively eased operations as a futures exchange on June 2, 2020: seehttps://www.nasdaq.com/solutions/nasdaq-futures-nfx

So there are no more active symbols for that exchange. It should not have been a choice in the account management portal; we are working to remove it as a choice now.

Sincerely,
Gary Stephen
DTN IQFeed Implementation Support Specialist



Thank you, I'm glad to help! And if I may make one last suggestion: don't assume rules are the same for all underlying symbols. We've noticed a little inconsistency in how legacy symbols are handled and so forth.

Sincerely,
Gary Stephen
DTN IQFeed Implementation Support Specialist


IQFeed Developer Support » How to find Future Contract May 11, 2022 04:05 PM (Total replies: 6)

That message can also mean "you don't have the necessary data subscription." QNPZ22 is a NYMEX symbol, and you'd need that data subscription to watch any symbols from it.

By the way: that you're getting a Q,QNPZ22,,Not Found,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,, suggest you're not using the latest protocol 6.2. This would give you a message n,QNPZ22 instead. If you're not sending a SET PROTOCOL command when you connect, this could cause other unexpected results.

The IQFeed API has a versioned protocol, that operates separately from the version number of the IQFeed client software. By sending the command S, SET PROTOCOL, (protocol number) each time you connect to the API, you are telling the API which iteration of the protocol you wish to use. This allows you to integrate new IQFeed features into your custom app, at your own pace, or remain on a past protocol for as long as you wish.

The most recent protocol is 6.2. Protocol 6.1, 5.2, 5.1, 5.1 and 4.9 are still supported, and each has its own set of documentation found here. It is advisable to use the most recent protocol, unless you have backwards compatibility-related or other reasons for using an older one.

If you're not specifying a protocol, it will default to the oldest, 4.9.

Sincerely,
Gary Stephen
DTN IQFeed Implementation Support Specialist


IQFeed Developer Support » How to find Future Contract May 11, 2022 09:16 AM (Total replies: 6)

You added the @ symbol to your watch command. This was not in the SBF command's response. Omit it and you will get correct results:

w@QNPZ22
n,@QNPZ22
wQNPZ22
F,QNPZ22,24,,,,,,,,,,,,,,,,HENRY HUB NATURAL GAS PENULTIMATE DECEMBER 2022,,,,,,,,,,,,14,4,,60.03,8,112,,,,,,,,11/25/2022,,,NPG,,,18:00:00,17:00:00,USD,2500,FGHJKMNQUVXZ,0.0010,,,,
P,QNPZ22,,,,,0,,,,,,,,7.2630,scv,01

The n,SYMBOL response to a watch command means "symbol not recognized", which is a correct response in this case.

Note that the SBF command will always return DTN's own symbology for a symbol, which sometimes differs from the exchange's own symbology.

Sincerely,
Gary Stephen
DTN IQFeed Implementation Support Specialist



Quote: Hi DTN Gary Stephen,

Thanks for explaining that your DTN code mirrors the option names as
determined by the CME.

I apologize for assuming that the DTN code had logic that duplicated the CME
naming rules.

Like you, I was unable to find the CME futures options naming rules for
the “week of month” number on any web page or document, CME or otherwise.

As you mention:
Perhaps the CME handles week counting differently for "day-of-the-week" future
options than it does for "end of week" future options.


I believe this is the case. Please see my example from my first post in this topic above,
dated May 6 and repeated here…. (The option names are valid IQfeed names.)

Data from April 2022:


Wednesday expiration, April 2022, Put, strike 4,200.00:

@E1CJ22P420000 (week=1, data through 4/06/2022)
@E2CJ22P420000 (week=2, data through 4/13/2022)
@E3CJ22P420000 (week=3, data through 4/20/2022)
@E4CJ22P420000 (week=4, data through 4/27/2022)

April 2022, end of week options:

@EW1J22P420000 (week=1, data through 3/31/2022)
@EW2J22P420000 (week=2, data through 4/08/2022)
@EW3J22P420000 (week=3, data through 4/14/2022)
@EW4J22P420000 (week=4, data through 4/22/2022)
@EW5J22P420000 (week=5, no data)
@EWJ22P420000 (EOM, data through 4/29/2022)
(EOM coincides with end of last week for April 2022)


Notice that the 1C,2C,3C,4C (Wednesday expiry) options for the same
“week of month” number expire in the calendar week following the
W1,W2,W3,W4 (Friday) options.

So it must be the case that the "week of month" for A,B,C,D (Mon,Tue,Wed,Thu) options
is not always the same as the "week of month" for the W1,W2,W3,W4 (Friday)
options - and therefore they use different naming rules.

I gave an illustration of this in my last post:


Example: no A,B,C,D expiration in the first calendar week . . . .

F S S M T W T F S S M (Fri, Sat, etc.)
W1 1A 1B 1C 1D W2
DayOfMonth= 1 2 3 4 5 6 7 8 9 10 11
^--NOT nW=1
^--start of nW=1
^--start of nW=2
Note: in the above case, the “week of month” number for the second
Friday (W2) is different than “week of month” number
for A,B,C,D (1A,1B,1C,1D) in that same calendar week.
This is why some months only have four (4) A,B,C,D “week of month”
numbers, but have five (5) calendar weeks, and possibly five (5) W*
numbers (Fridays).


Thanks for the CME Product Codes link. As far as the CME naming, I believe
they limit the “week of month” for Friday to EW1-EW4 because
the 5th Friday always coincides with the trading end-of-month (EOM) day,
which supersedes (replaces) the EW naming for that Friday. (Either that,
or it could be a holiday.)

Some example months showing a 5th Friday that is the trading EOM are:
2021: April, July, October, December (for January, the 1st Friday is a holiday)
2022: April, July, September, December
(note: The months not listed have 4 Fridays.)

Thanks for your thoughtful replies and information.

I will attempt to reverse engineer and code the rules, and see how they match
to the A,C or A,B,C,D options for the past several months.

Thanks again.

Edited by step999 on May 11, 2022 at 05:03 AM
--- Original message by step999 on May 11, 2022 03:53 AM
If I discover anything that will help you I'll post it here. But so far we don't have a clear-cut set of rules for how these new weekday future option symbols are made. There is also room for inconsistency in different underlying commodities, and different ways they handle the legacy symbols.

If you're going to try and reverse-engineer the rules, I suggest using the FDS Market Summary report. This report contains fields for the symbol, full name, and expiration date, like this:

LM,Symbol,Description,PeRatio,AvgVolume,DivYield,DivAmount,DivRate,PayDate,ExDivDate,CurrentEps,EstEps,SIC,Precision,Display,GrowthPercent,FiscalYearEnd,Volatility,ListedMarket,MaturityDate,OptionRoots,CouponRate,InstitutionalPercent,YearEndClose,Beta,LEAPs,WRAPs,Assets,Liabilities,BalanceSheetDate,LongTermDebt,CommonSharesOutstanding,MarketCap,52WeekHigh,52WeekHighDate,52WeekLow,52WeekLowDate,CalHigh,CalHighDate,CalLow,CalLowDate,Expiration,LastSplit,LastSplitDate,PrevSplit,PrevSplitDate,NAICS,ShortInterest
LM,@E1AK22C210000,"E-MINI S&P 500 MONDAY WEEK 1 MAY 2022 CALL 210000",,,,,,,,,,,2,12,,,4.07,43,,,,,,,,,,,,,,,,,,,,,,,20220502,,,,,,

This makes to easy to collect all symbols at once. The command would be FDS,9,34,date in YYYYMMDD format.

Sincerely,
Gary Stephen
DTN IQFeed Implementation Support Specialist



DTN doesn't make the symbols - the exchange does. DTN endeavors to use the same symbol as the exchange whenever possible. When conflicts with another exchange's symbols occur, there aren't any strict rules, or algorithm for how to change it, except that we try to match the exchange's symbol as much as possible. Typically, we just precede it with @ or Q.

I wasn't able to find any official rules for how CME numbers the weeks for weekly options. I inferred that Week 1 starts on the 1st day of the month, with no regard to what day of the week it is. But I only looked at one particular month to determine that. This page https://www.cmegroup.com/trading/options/weekly-options-on-futures.html is the CME's list of Product Codes for future options. Interestingly, there's no code for "5th week end of the month" for E-mini S&P 500 - only through Thursday.

Quote:
Monday E1A-E5A IWWA Index
Tuesday E1B-E5B IMBA Index
Wednesday E1C-E5C IEWA Index
Thursday E1D-E5D IMDA Index
Friday EW1-EW4 1EA Index - 4EA Index


A 5th Friday of the month can exist, so I'm not sure what this implies. Perhaps the CME handles week counting differently for "day-of-the-week" future options than it does for "end of week" future options. (Bearing in mind what I said earlier about Friday not getting its own code because "end of week" covered it.) I'll see if I can learn anything from the CME; I didn't find their naming rules online, like it's easy to find the OSI standard for equity options online.

Sincerely,
Gary Stephen
DTN IQFeed Implementation Support Specialist


IQFeed Developer Support » Connection Refused error May 10, 2022 08:22 AM (Total replies: 6)

I'm glad you were able to work around the problem! Thanks for letting me know.

Sincerely,
Gary Stephen
DTN IQFeed Implementation Support Specialist


Data and Content Support » Missing symbol guides? May 10, 2022 07:16 AM (Total replies: 3)

The "symbol guide" and "symbol lookup" links at http://iqfeed.net/ will now direct you to updated versions of these tools: https://ws1.dtn.com/IQ/Guide/ and https://ws1.dtn.com/IQ/Search/.

Sincerely,
Gary Stephen
DTN IQFeed Implementation Support Specialist



Generally, the new weekly futures options for futures will follow this pattern:

A = Monday expiration
B = Tuesday expiration
C = Wednesday expiration
D = Thursday expiration

Friday may or may not be E. Before expirations on different days of the week were introduced, the default was that equity options expired on Friday, so it didn't need anything to indicate the weekday. Some of these symbols have been grandfathered in.

Furthermore, the ABCD letter indicating the weekday of the expiring option might not appear in the same place for different future options.

It is coincidental that EW options expire at the end of the week. They were the first weekly options introduced on the E-mini S&P 500. The symbol logic at the time was most likely E = E-mini, W = weekly.

I infer from the names of past future options that the week number is limited to the month it actually belongs to:

LM,@Q5CH22P995000,"E-MINI NASDAQ 100 WEDNESDAY WEEK 5 MARCH 2022 PUT 995000",,,,,,,,,,,2,12,,,2.24,43,,"@NQM22",,,,,,,,,,,,,,,,,,,,,20220330,,,,,,

LM,@QN1J22C1000000,"E-MINI NASDAQ 100 WEEK 1 APRIL 2022 CALL 1000000",,,,,,,,,,,2,12,,,2.33,43,,"@NQM22",,,,,,,,,,,,,,,,,,,,,20220401,,,,,,

Future Options expiring on Wednesday March 30 were "WEDNESDAY WEEK 5 MARCH" but ending on Thursday, April 1 were "WEEK 1 APRIL".

This may be applied inconsistently, though.

Sincerely,
Gary Stephen
DTN IQFeed Implementation Support Specialist



I'll confirm this new nomenclature, but I'm pretty sure you've got it right.

Sincerely,
Gary Stephen
DTN IQFeed Implementation Support Specialist


IQFeed Developer Support » Connection Refused error May 4, 2022 11:30 AM (Total replies: 6)

Can you provide a iqconnect.txt log file, with all logging turned on? You can send it to me at the developer support address. A "Test" on the IQConnect tab of the Diagnostics app would be helpful also.

Sincerely,
Gary Stephen
DTN IQFeed Implementation Support Specialist


IQFeed Developer Support » Connection Refused error Apr 29, 2022 10:46 AM (Total replies: 6)

Nothing has changed on our end. IQFeed wouldn't block you from connecting to the Admin socket. I suspect something external is using port 9300, or otherwise interfering with traffic to it. You can find this in Command Prompt. Send this command:

netstat -ano | findStr “9300”


This will turn up one or more lines like this:


C:\Users\Gary.Stephen>netstat -ano | findStr "9300"
TCP 127.0.0.1:9300 0.0.0.0:0 LISTENING 17736
TCP 127.0.0.1:9300 127.0.0.1:59229 ESTABLISHED 17736
TCP 127.0.0.1:59229 127.0.0.1:9300 ESTABLISHED 21048


The number on the far right is the process ID. To find what each one represents, enter this on the command line. (The actual numbers will vary. Change the number, and repeat the command once for each number, as appropriate.)

tasklist /fi "pid eq 17736"


And this will tell you exactly what’s using the port:

Image Name PID Session Name Session# Mem Usage

========================= ======== ================ =========== ============
iqconnect.exe 17736 Console 1 17,112 K


iqconnect.exe is what you want to be using to be port 9300, but see if this discovers that some rogue app is using it. You can then decide what to do: reconfigure it or IQFeed to use something else (see below), or just disable the conflicting app.

Other comments:

  • A Logitech app called lghubupdater commonly interferes with port 9100 in this way. Most people just disable that app to resolve the conflict.

  • It is possible to customize what port numbers IQFeed uses, by making registry changes in Computer\HKEY_CURRENT_USER\Software\DTN\IQFeed\Startup. I recommend caution when doing this, though, because third-party software (and third-party code bases) don't always implement this.

  • Make sure you have whitelisted the entire IP range IQFeed uses, which is: 12.36.218.128 – 12.36.218.254 (CIDR: 12.36.218.128/25), Ports: 60000-60060. I don't think that's the issue here, but it's always good to make sure of this.


I hope this helps! Beyond that, I'd need to get more information from you. You can send me a support email or chat, and I will investigate further.

Sincerely,
Gary Stephen
DTN IQFeed Implementation Support Specialist



DTN will be doing network and security maintenance this Saturday morning. This will require us to do server reboots. Users should be rerouted to live servers. The maintenance window is from 7:00 a.m. to Noon CT. We recommend any users who normally use the system at that time to postpone any critical process until after the maintenance window.

There are no open markets at this time, so the impact to our users should be minimal. If you do have issues, we recommend that you log out and back in again to reconnect.

https://iqhelp.dtn.com/general-maintenance-this-saturday-april-30-2022/

Sincerely,
Gary Stephen
DTN IQFeed Implementation Support Specialist



DTN will be doing network and security maintenance this Saturday morning. This will require us to do server reboots. Users should be rerouted to live servers. The maintenance window is from 7:00 a.m. to Noon CT. We recommend any users who normally use the system at that time to postpone any critical process until after the maintenance window.

There are no open markets at this time, so the impact to our users should be minimal. If you do have issues, we recommend that you log out and back in again to reconnect.

https://iqhelp.dtn.com/general-maintenance-this-saturday-april-30-2022/



Sincerely,
Gary Stephen
DTN IQFeed Implementation Support Specialist

Edited by DTN_Gary_Stephen on Apr 28, 2022 at 02:53 PM


Can you give an example?

It makes sense that Number_of_trades_Today shouldn't decrease during the day, but there might be rare circumstances where this appears to happen.

Sincerely,
Gary Stephen
DTN IQFeed Implementation Support Specialist


Data and Content Support » Missing CFTC Products Apr 13, 2022 03:55 PM (Total replies: 2)

Can you be more specific? There are a lot of COT reports: https://www.cftc.gov/MarketReports/CommitmentsofTraders/HistoricalViewable/cot032922

Is it just the energy symbols or ICE symbols you want?

Sincerely,
Gary Stephen
DTN IQFeed Implementation Support Specialist


IQFeed Developer Support » FDS request error Apr 11, 2022 10:37 AM (Total replies: 2)

Are you sending S,SET PROTOCOL first? The Market Summary commands were only added in Protocol 6.1, so if you're not specifying 6.1 or 6.2 the API will not recognize this command.

Also (as altmany just said) make sure you are connecting to Port 9100. Other ports (like 9400) will not understand this command.



Sincerely,
Gary Stephen
DTN IQFeed Implementation Support Specialist

Edited by DTN_Gary_Stephen on Apr 11, 2022 at 10:40 AM

IQFeed Developer Support » Future previous contracts Apr 7, 2022 08:53 AM (Total replies: 2)

The Option Chains command will return only current options, not past ones. There is no API method that will return past option symbols, but we publish a text lists of past/expired option symbols in:

www.iqfeed.net/downloads/beta/IEOPTION.zip

This list includes only past option symbols that traded at least once. Standard API commands will work on past option symbols. There is also a file www.iqfeed.net/downloads/beta/EQUITY.zip which contains past equity symbols.

Also, the Level 1 Fundamental Message contains a field called Contract Months, fifth from the end (in protocol 6.2):

F,@NQ#,22,,,16700.00,12750.00,,,,,,,,,,,,E-MINI NASDAQ 100 JUNE 2022,,,,,,,,,,,,12,2,,29.52,8,43,11/22/2021,03/26/2021,,,,,,06/17/2022,,,NQ,,,18:00:00,17:00:00,USD,20,--H--M--U--Z,0.25,,,,

Sincerely,
Gary Stephen
DTN IQFeed Implementation Support Specialist



Time: Sat May 21, 2022 3:37 AM CFBB v1.2.0 16 ms.
© AderSoftware 2002-2003