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)

"IQFeed version 4 is a real screamer compared to anything else I have seen." - Comment from Tom
"I just wanted to tell you what a fine job you have been doing. While *******, from what I hear, has been down and out, off and on, IQ feed has held like a champ this week." - Comment from Shirin
"For anyone considering using DTN.IQ for a data feed, my experience with the quality of data and the tech support has been very positive." - Comment from Public Forum
"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
"You are either overstaffed or people just don't have problems with your feed because customer support always answers the phone quickly." - Comment from Jay via Email
"Version 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.
"Just a quick one to say I'm very impressed so far :) The documentation for developers is excellent and I've quickly managed to get an app written to do historical downloads. The system is very robust and pretty quick considering the extent of data that's available. The support guys have been very helpful too, in combination with the forums it's been plain sailing so far!" - Comment from Adam
"Excellent datafeed !!!" - Comment from Arely
"Thanks for following up with me. You guys do a great job in tech support." - Comment from Phelps
"I will tell others who want to go into trading that DTN ProphetX is an invaluable tool, I don't think anyone can trade without it..." - Comment from Luther
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: AK786
About Contact
Joined: Jul 17, 2018 01:31 PM
Last Post: Sep 11, 2018 12:51 PM
Last Visit: Sep 27, 2018 10:59 PM
Yahoo IM:
Post Statistics
AK786 has contributed to 21 posts out of 20642 total posts (0.10%) in 1,447 days (0.01 posts per day).

20 Most recent posts:
IQFeed Developer Support » Historical Tick Data Request Hours Sep 11, 2018 12:51 PM (Total replies: 12)

@bigjake - if you are writing code in C#, try using Mathieu P C# Service.

To Avoid Time Out,

1. Alternatively, request 1 day of tick data and loop -

2. Alternatively, have upto 15 requests simulataneously to request Tick Data

IMO IQfeed is a great product, i had to figure things out through trial and error.


To all IQFeed Forum Readers,

i just wanted to share that I have been using Matt P. (IQfeed Csharp Client) and its phenomenal. Tick Data download for all US Equities (Approx 8000) can get done within 15 mins / each day. Options data download which can have over a million queries for entire dataset - lightning fast even. I downloaded all US Equity Options for 6 months which has "Expired" + "Recently Traded" Options.

The Live Data Client runs on super low CPU and memory. Check out his code, he has saved me tons of time. I am very grateful to him for responding to my queries almost immediately and resolving minor bugs if any.

Thank you Matt P. and all his IQFeed github contributors.


Thank you J - you are correct,


Regarding this - I was making a mistake at my end.
This issue is resolved.

Please let me know about the other situation related to last trade date (after expiration) - its still not a problem, if its a system issue at your end.



Also another question is how Far Options History do you carry, i tried requesting Options Tick Data between
<OptionsBeginDate value= "20180501"/>
<OptionsEndDate value= "20180713"/>

for all options in (From the above attached file) for Equity Symbol AAPL and i did not get a single data tick data history


Also another question is how Far Options History do you carry, i tried requesting Options Tick Data between
<OptionsBeginDate value= "20180501"/>
<OptionsEndDate value= "20180713"/>

for all options in (From the above attached file) for Equity Symbol AAPL and i did not get a single data tick data history



This is WRT the post from:
Posted: Aug 7, 2018 08:32 AM Quote Post Reply To Post Msg. 22 of 33
Actually, the expiration date is the blank field, the other date is the last traded date.

I'll correct the email above to be accurate. Expiration can be inferred from the symbol, but we will look into that prior to release as well.


I parsed out Sample Data from the IEOptions File from 20150101 to 20180713

Somehow, for the a Large Number of Options, The Last Traded Date is after the Expiration Date.

Can you kindly explain how that might have happened.

Please see attached. I know you will be generating the latest IEOptions FIle tomm, so I wanted to make sure your efforts do not go to waste.

Thank you


Thank you very much, your help is very much appreciated. Very satisfied with IQFeed Service.



This message is with reference to your post from:
Posted: Aug 2, 2018 07:35 AM Quote Post Reply To Post Msg. 18 of 30
There is some work being done on our website currently and that bumped the automation back, but I did place a file up a couple weeks ago for everything that was expired up to that date if you want to take a look at it.

Get Options Tick Data for Expired Options and Current Options for the 6 months.

I downloaded this file and parsed the file. However the last trade date is 20180713

Q1. I am assuming that contains only Option Symbols that have expired and the last date they traded? For example, 20180710 has only 24103 symbols as you can see below and file contains approx 900k option symbols which are all currently trading symbols.

Can you please verify this assumption is accurate

Q2. Can you kindly update this file until 20180817 (The last date is 20180713)

After this - i can get latest symbols daily from and request IQFeed data.

Your help is very appreciated. Thank you.

Please see attached file: (IEOptionsFile_DateSym.xlsx)
Date Symbols
20180713 603
20180711 130
20180710 24159
20180709 112
20180707 385
20180706 403
20180703 27661
20180702 87
20180701 386



This is so strange (NO changes to my code since yesterday)

Yesterday No Open Interest

Today, I see open interest.

Thank you anyways. You are very meticulous.



I downloaded Daily Data for Equity Options. However the "Open Interest" is missing.

Can you please verify that this IS or IS NOT available?


(VERY Significant for my trading strategy)


string TickMessageCSV(string timeStamp, double last, int lastSize, long totalVolume, double bid, double ask, long tickId, char basisForLast, int tradeMarketCenter, string tradeConditions)
StringBuilder sb = new StringBuilder(1000);


return sb.ToString();

I will post all my code here soon. I am in the process of Writing my Data Collection and storage handlers.



Any updates?

Would appreciate your response. This is very critical to get me going.




data_collector, here is something i did to parse out the code from Matt P. I am storing Flat Files - you can write all teh data to a C# datatable object.

His code is awesome and has saved me 50+ hours - higher performance than the IQFeed examples IMO.

Also if there is bug, he serves us by fixing it in just a few hours if you send him an email

var tickData = await lookupClient.Historical.ReqHistoryTickTimeframeAsync(symbol, requestStartDate, requestEndDate, null, null, null, DataDirection.Oldest);

CreateTaskStoreTickMessages(symbol, tickData);

void CreateTaskStoreTickMessages(string symbol, IEnumerable<TickMessage> tickMessages)

Task.Factory.StartNew(() => StoreTickMessages(symbol, tickMessages, TickDirectory));

List<double> tickMessagesStoreRunTime = new List<double>();
object tickMessagesStoreLockObject = new object();
static string TickFileHeader = "Timestamp,Last,LastSize,TotalVolume,Bid,Ask,TickId,BasisForLast,TradeMarketCenter,TradeConditions";
void StoreTickMessages(string symbol, IEnumerable<TickMessage> tickMessages, string baseTickDirectory)
DateTime storeTickMessagesStartTime = DateTime.Now;

// All the Tick Data gets stored into "Date" Created Files By Symbol Name
List<TickMessage> tickMessagesCurrentDate = new List<TickMessage>();

DateTime previousDate = DateTime.MaxValue;
List<DateTime> datesProcessing = new List<DateTime>();

foreach (TickMessage message in tickMessages)
DateTime dateTime = message.Timestamp;
DateTime date = message.Timestamp.Date;

// New Date in Tick Messages
if (!datesProcessing.Contains(date))

// Record Previous Date for the First Time
if (previousDate == DateTime.MaxValue)
previousDate = date;
else // Store the Previous Dates Data once New TimeStamp is triggered
StoreTickMessagesByDate(baseTickDirectory, previousDate, symbol, tickMessagesCurrentDate);

// Reset Data Structures
tickMessagesCurrentDate = new List<TickMessage>();

previousDate = date;


// Store Data from Last Date
StoreTickMessagesByDate(baseTickDirectory, previousDate, symbol, tickMessagesCurrentDate);

TimeSpan storeTickMessagesRunTime = DateTime.Now.Subtract(storeTickMessagesStartTime);
double runTimeSeconds = Math.Round(storeTickMessagesRunTime.TotalSeconds, 4);
double avgRunTimeSeconds = 0;

lock (tickMessagesStoreLockObject)

avgRunTimeSeconds = Math.Round(GetAverage(tickMessagesStoreRunTime), 2);

logger.Trace("StoreTickMessages: " + " Symbol: " + symbol + " Run Secs: " + runTimeSeconds + " Avg Run Secs: " + avgRunTimeSeconds);

void StoreTickMessagesByDate(string TickDirectory, DateTime date, string symbol, List<TickMessage> tickMessages)
string TickDirectoryDate = TickDirectory + date.ToString(SystemInfrastructure.DateFormat) + "\\";

// Create Date Directory only once
if (false == Directory.Exists(TickDirectoryDate))

string symbolFileName = TickDirectoryDate + symbol + ".csv";

using (StreamWriter sw = new StreamWriter(symbolFileName))

foreach (TickMessage tickMessage in tickMessages)
string timeStamp = tickMessage.Timestamp.ToString(IQFeed.CSharpApiClient.Lookup.Historical.Messages.TickMessage.TickDateTimeFormat);
double Last = Math.Round(tickMessage.Last, 4);
int LastSize = tickMessage.LastSize;
long TotalVolume = tickMessage.TotalVolume;
double Bid = Math.Round(tickMessage.Bid, 2);
double Ask = Math.Round(tickMessage.Ask, 2);
long TickId = tickMessage.TickId;
char BasisForLast = tickMessage.BasisForLast;
int TradeMarketCenter = tickMessage.TradeMarketCenter;
string TradeConditions = tickMessage.TradeConditions;

string tickMessageCSV = TickMessageCSV(timeStamp, Last, LastSize, TotalVolume, Bid, Ask, TickId, BasisForLast, TradeMarketCenter, TradeConditions);




Q1. How do I join the Dev List so I can "TEST OUT" Beta products.

Q2. Can you provide a link to the LATEST "Options File" - i had the old one and Matt P helped me out on this one.

Q3. Any ETA on the list of the "traded products"



This message is for everyone who has been looking for "Reducing the number of Callbacks" to IQfeed for requesting options tick or daily data on a Daily Basis to avoid "False Positives"
where 20170103 = TradeDate
(this provided us with "Expirations" where Trading happened
If you are just focused on Front 2 months, that reduced the load even further.

This is not a perfect solution but reduces the load.

There are many different queries available for Batch Processing


Thank you so so much Tim, This will get us going a long way

Can you please provide the header. Just want to make sure I get it right.

PEGA1716R35,2,PEGASYSTEMS JUN 17 P 35,,14,20170227

This is PEGA JUN 17 35 Put

What does the 2 refer to?
What is 14?
and is 20170227 the trade date when 14 contracts traded?

Thanks very much


IQFeed Developer Support » Historical Tick Data Request Hours Aug 1, 2018 02:08 PM (Total replies: 12)

Asset Class: US Stocks and US Equity Options

Q1. What is the largest number of Days for which Historical Tick Data that can be requested during US trading hours?

Q2. Lets say Answer to Q1 = 10 days of Tick/Symbol - Can I request a 10 days from 30 days ago (which is part of the 180 Days Tick Historical that is stored)


Hi Tim,

I am looking for the same. Any updates - just checking



Is there any update on being able to receive "Traded" Option Symbols or Last Price, Volume on the Symbol List


IQFeed Developer Support » C# sample using sockets? Jul 17, 2018 03:08 PM (Total replies: 8)

It got fixed after I updated VS 2017 with the latest NetCore Packages, thank you


IQFeed Developer Support » C# sample using sockets? Jul 17, 2018 02:06 PM (Total replies: 8)

FYI - have dependency installed


Time: Sat July 2, 2022 3:27 AM CFBB v1.2.0 0 ms.
© AderSoftware 2002-2003