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
Website:  
Location:
Occupation:
Interests:
AIM:
ICQ:
MSN IM:
Yahoo IM:
Post Statistics
AK786 has contributed to 21 posts out of 21251 total posts (0.10%) in 2,335 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.
https://github.com/mathpaquette/IQFeed.CSharpApiClient

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.

AK786


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.

AK786


Thank you J - you are correct,

Tim,

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.

Thanks

AK


****
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
***

AK786


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

AK786


Tim,

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.

Tim
***

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

AK786


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

AK786


Tim,

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.

ftp://www.dtniq.com/beta/IEOPTION.zip
***

Goal:
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 ftp://www.dtniq.com/beta/IEOPTION.zip 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
http://www.dtniq.com/product/mktsymbols_v2.zip 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 ftp://www.dtniq.com/beta/IEOPTION.zip until 20180817 (The last date is 20180713)

After this - i can get latest symbols daily from http://www.dtniq.com/product/mktsymbols_v2.zip 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
...






AK786


Tim,

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

Yesterday No Open Interest
TimeStamp,Open,High,Low,Close,PeriodVolume,OpenInterest
20180816,17.5,17.5,2.85,3.41,158,0,

Today, I see open interest.

Thank you anyways. You are very meticulous.

AK786


Tim,

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

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

Thanks,

(VERY Significant for my trading strategy)

AK786


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);

sb.Append(timeStamp).Append(",");
sb.Append(last).Append(",");
sb.Append(lastSize).Append(",");
sb.Append(totalVolume).Append(",");
sb.Append(bid).Append(",");
sb.Append(ask).Append(",");
sb.Append(tickId).Append(",");
sb.Append(basisForLast).Append(",");
sb.Append(tradeMarketCenter).Append(",");
sb.Append(tradeConditions).Append(",");

return sb.ToString();
}

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

AK786


Tim,

Any updates?

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

Thanks

AK

AK786


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))
{
datesProcessing.Add(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;
}
}

tickMessagesCurrentDate.Add(message);
}

// 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)
{
tickMessagesStoreRunTime.Add(runTimeSeconds);

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))
{
Directory.CreateDirectory(TickDirectoryDate);
}

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

using (StreamWriter sw = new StreamWriter(symbolFileName))
{
sw.WriteLine(TickFileHeader);

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);

sw.WriteLine(tickMessageCSV);
}
}
}

AK786


Tim

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"

Thanks

AK786


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"

https://www.theocc.com/webapps/cont-volume-download?reportDate=20170103&format=txt
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
https://www.theocc.com/market-data/batch-processing.jsp#http_volume_download_contract_date

AK786


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


AK786

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)

AK786


Hi Tim,

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

AK786


Tim

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

AK786

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

AK786

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

FYI - have dependency installed

https://www.microsoft.com/net/download/thank-you/dotnet-sdk-2.1.302-windows-x64-installer

AK786


Time: Fri December 6, 2024 11:48 PM CFBB v1.2.0 7 ms.
© AderSoftware 2002-2003