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)




"The people at Nirvana have very nice things to say about your company and I can see why! Price and service is a potent combination." - Comment from Ed
"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
"I am very pleased with the DTNIQ system for quotes and news." - Comment from Larry
"I'm satisfied with IQFeed. It's the most reliable and fastest quote feed I have ever used. Although I'm a resident in China, it's still very fast!" - Comment from Xiaofei
"You have an excellent product !!!!!!" - Comment from Arely
"I have to tell you though that using the IQFeed API is about the easiest and cleanest I have seen for some time." - Comment from Jim
"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
"Awesome response, as usual. It is a sincere and refreshing pleasure to do business with DTN, compared to your competition." - Comment from Ryan
"Thanks for following up with me. You guys do a great job in tech support." - Comment from Phelps
"I've never had DTN go out on me since switching. ******* would go down a couple times every month when I was using them." - Comment from Bryce in AL.
Home  Search  Register  Login  Blogs Recent Posts

Information on DTN's Industries:
DTN Oil & Gas | DTN Trading | DTN Agriculture | DTN Weather
Follow DTN_IQFeed on Twitter
DTN.IQ/IQFeed on Twitter
DTN News and Analysis on Twitter
Viewing User Profile for: stargrazer
About Contact
Joined: Jun 13, 2005 12:02 PM
Last Post: Nov 17, 2018 01:03 AM
Last Visit: Nov 17, 2018 08:15 PM
Website:  
Location: Bermuda
Occupation: Consultant
Interests:
Avatar:
Right Here & Now
Email: ray@oneunified.net
AIM:
ICQ:
MSN IM: rpb@ba.ca
Yahoo IM:
Post Statistics
stargrazer has contributed to 252 posts out of 18831 total posts (1.34%) in 4,909 days (0.05 posts per day).

20 Most recent posts:
IQFeed Developer Support » Consuming IQFeed APIs via C++ on Linux Nov 17, 2018 01:03 AM (Total replies: 16)

Oh, and one more thing. Is the iqfeed client 64 bit yet? If not, isn't that kinda stone age? My 64 bit apps are unable to start the iqfeed client, and I have to revert to starting it manually with one of the iqfeed supplied sample apps. As far as I recollect, and it was a long time ago, there is only a 32 bit api for auto-starting the iqfeed client. Or have things changed since way back then?

IQFeed Developer Support » Consuming IQFeed APIs via C++ on Linux Nov 16, 2018 08:48 PM (Total replies: 16)

But having said all that, it seems as though more and more users are switching to Linux. And this goes back 'quite a number of years'.

For the DTN support people, what would be preventing the creation of a native linux based client? Or even a client which does not require a GUI login? Is it an exchange licensing problem?

IQFeed Developer Support » Consuming IQFeed APIs via C++ on Linux Nov 16, 2018 08:45 PM (Total replies: 16)

The closest to headless I run is:

* building an lxc container, installing wine, etc.
* installing LXDE as a gui environment, but not tied to a graphics card [1]
* installing x2go server
* connecting to the session with an x2go client
* allows gui session via remote access

Don't know if this helps at all.

[1] http://blog.raymond.burkholder.net/index.php?/archives/950-Gui-using-Wine,-X2Go,-LXDE-in-a-simple-LXC-container.html


Quote: I'm looking at option trades for backtesting, primarily on EOD


I am curious. I gather you have already pulled down historical option tick data and/or historical option 1 minute bar data for your symbols of interest for what they supply currently. Do you get coverage through out the day, or is it pretty sparse? Do you see ticks or bars falling at EOD regularily?


Quote: I am particularly looking forward to expired futures contracts. My requirement is to calculate contango and backwardation. In an ideal world, there would be a continuous front month and continuous back months


Due to the fact that trades can be sparse on back months on even popular symbols, I've found it of more value to capture and store daily feeds, keep the quotes as well as the trades, and then perform algorithm analysis based upon the quotes captured. I build my own daily summaries from the quotes, and typically use quote mid-points for rough approximations. This allows me to deal with open, close, and any time in between without worrying about the lack of trades.

You will also note that, as various sites say in the footers, past history may not be a good prognosticator of current movements. Which suggests even more value in collecting your own current data, complete with both quote and trade info, to use in your modeling and algorithm development.


Quote: In using a modification of Mathieu's excellent client (Thanks, Mathieu) I'm seeing symbols that are in IEOPTION but appear to have no data. Could this be verified and, preferably, the data added or the symbols removed from the file.


I am wondering what your expectations are. Have you followed options on the real time feeds? You'll note that there are continuous quotes available, but there are very infrequent trades happening. And if history only has the trades stored, the trades (if they are available), may not be indicative of the open, the close, the min, the max or anything in between. And that may be the reason why you see NO_DATA, because, well, the option was available, but no one traded anything. Ie, repeating myself, trades are very sparse in the options world.
Edited by stargrazer on Oct 8, 2018 at 03:04 PM


through an indirection of someone linking to me at github, I learned about:

https://github.com/akapur/pyiqfeed

A Python IQFeed library.


The API to Big Query is well defined:

https://cloud.google.com/bigquery/docs/reference/rest/v2/

There are a number of official client libraries, with Python being one of them:

https://cloud.google.com/bigquery/docs/quickstarts/quickstart-client-libraries

It is possible to call c++ from Python with Boost.Python.

On the other hand, there are others in the forums who have C# code (with C# being a native client library), could probably interface directly to Big Query.

There may be others who have Python code for handling the IQFeed interface.

If all you desire is 1 minute Bar updates, it may be straight forward to use python natively to talk to IQFeed, decode the inbound streams, build the bars and send them to Big Query. I could maybe accomplish that task a s special project, if no others are available. The issue here is that if you are dealing with 100(s) of symbols, and depending upon their liquidity, there may be performance issues with handling the inbound streams.

Something to which I have not looked, IQFeed may supply real time bars. If so, then performance issues may not be a problem.

In any case, you will need some sort of server on which the interface code and the IQFeed client will need to reside.


If you are looking for c++ style tooling, I have some IQFeed code libraries at:

https://github.com/rburkholder/trade-frame/tree/master/lib/TFIQFeed

https://github.com/rburkholder/trade-frame/tree/master/IQFeedMarketSymbols

https://github.com/rburkholder/trade-frame/tree/master/IQFeedGetHistory

For further info, my email is associated with that account.


two items:

1) you will need to have the i386 wine packages installed

2) you need to run the iqfeed installer inside the wine environment, you can't just copy iqconnect over.

hope this helps.

DTNIQ Client Software Wish List » amd64 version? Nov 14, 2017 07:53 PM (Total replies: 1)

i386 is kinda last century?

Any update in the roadmap as to when a native 64 bit version might be available? Which might run in the native 64 bit Wine environment?

IQFeed Developer Support » Reading feed into app Oct 21, 2017 01:37 PM (Total replies: 4)

Another code example:

https://github.com/rburkholder/QuantDeveloper/tree/master/OneUnified.IQFeed

IQFeed Developer Support » greeks / delta Sep 13, 2017 07:49 AM (Total replies: 10)

@J: I needed to do a linear interpolation from 0 to 30 days for the TB30.X... that is why you see it as 0 in my list. I don't know what symbol might reflect a TB overnight rate, or similar, or if even there is such an animal. Any thoughts?

I havn't done the inverse calculation to see what others are doing. I'm still evolving towards matching up what other providers, like IB, are generating for IV first. Whether they use mid-bid, or log(mid-bid), or bid or ask, or last trade or .....

In case any one is interested in what I've done:

Basic binomial code is at:

https://github.com/rburkholder/trade-frame/blob/master/lib/TFOptions/Binomial.cpp

The code where I build those tables and interpolate the interest rate:

https://github.com/rburkholder/trade-frame/blob/master/lib/TFTrading/NoRiskInterestRateSeries.cpp

Code where I bring all that together:

https://github.com/rburkholder/trade-frame/blob/master/lib/TFOptions/Option.cpp

IQFeed Developer Support » greeks / delta Sep 12, 2017 07:33 AM (Total replies: 10)

Thanx for that. I guess for what I found so far is not so far off the mark.

One of those links suggested using an interest rate near the expiry. There is an IQFeed LIBOR symbol set. The following seem to be active, based upon

http://www.global-rates.com/interest-rates/libor/american-dollar/american-dollar.aspx

An extract from some of my code for using the symbols.

Quote:
structSymbol( time_duration( hours( 0 * 24 ) ), "ONLIB.X" ), // overnight
structSymbol( time_duration( hours( 7 * 24 ) ), "1WLIB.X" ), // 1 week
structSymbol( time_duration( hours( 30 * 24 ) ), "1MLIB.X" ), // 1 month
structSymbol( time_duration( hours( 60 * 24 ) ), "2MLIB.X" ), // 2 month
structSymbol( time_duration( hours( 90 * 24 ) ), "3MLIB.X" ), // 3 month
structSymbol( time_duration( hours( 180 * 24 ) ), "6MLIB.X" ), // 6 month
structSymbol( time_duration( hours( 365 * 24 ) ), "1YLIB.X" ); // 1 year


For treasury, I found these symbols:

Quote:
structSymbol( time_duration( hours( 0 * 24 ) ), "TB30.X" ), // overnight, base at 0 days needed for algorithm
structSymbol( time_duration( hours( 30 * 24 ) ), "TB30.X" ), // 30 day
structSymbol( time_duration( hours( 90 * 24 ) ), "TB90.X" ), // 90 day
structSymbol( time_duration( hours( 180 * 24 ) ), "TB180.X" ), // 180 day
structSymbol( time_duration( hours( 365 * 24 ) ), "1YCMY.X" ); // 1 year


Can't say this is the right way, but at least it gets me in to the right ball park.

IQFeed Developer Support » greeks / delta Sep 12, 2017 06:18 AM (Total replies: 10)

Part of a 'greeks' calculation is the risk free interest rate. What symbol or set of symbols could be used for obtaining these values?


There are some differences in handling between IQFeed and IB.

Symbols in IQFeed are completely textual and obtained through a 'mktsymbols' text file.

For IB, to generate trades and request data through their API, contract numbers are typically required. To request contract numbers for equities traded on the primary exchanges, IQFeed symbols can typically be used directly for the lookup in the IB API. For options and futures, you have to perform lookups through the IB API based upon underlying symbol, currency, expiry dates, strikes, etc... Then use that contract number to make the request through the other portions of the IB API.

If the IQFeed people have these lookup tables as another service, cool.

But for us do-it-yourselfers, code needs to be written. I have written code to parse the IQFeed market symbols text file, pull out the options/futures info, and use that to look up contract details in the IB API.

If you want to wade through a bunch of stuff I've done:

An IQFeed provider:

https://github.com/rburkholder/trade-frame/tree/master/lib/TFIQFeed

An IB provider:

https://github.com/rburkholder/trade-frame/tree/master/lib/TFInteractiveBrokers

Send me a message at iqfeed@oneunified.net if you'd like more instructions.

All this is based upon the fact that I start with the mktsymbols file, decode it, and use it to request data from IQFeed, and to generate trades with IB. To go the other way around, if you have IB contract info, I have some other code in the same repository which will build IQFeed symbols from contract info and underlying symbol names. There are some futures and options underlying symbol which require a manually composed lookup table, such as GC in InteractiveBrokers and QGC in IQFeed.
Edited by stargrazer on Mar 21, 2017 at 03:41 AM


A market replay would be best. At minimum, one or more futures (maybe the ES as mentioned, as they run almost 24 hours, and could rotate on 24 hours). Bonus would be one or more equities, maybe a few OPRA options to go along with the chosen equities.

IB runs what appears to be pseudo random values on their edemo account, but at least there is a time varying feed to run basic operational tests.

Data and Content Support » Error in mktsymbols_v2.txt Sep 21, 2014 09:14 PM (Total replies: 1)

The following line in the symbols file has an extra \t before the exchange.

CS.17.CB\tCREDIT SUISSE NEW YORK 1.375% 05/26/17\t\tNYSE\tNYSE\tBONDS\t\t\t

IQFeed Developer Support » C++ Suggested Libraries, Speed Oct 8, 2013 03:00 PM (Total replies: 6)

Looping through the string looking for commas is the way I do it. I pull the delimited character strings out and process as required.

For converting characters to native values, you can try boost::lexical_cast, which uses in place iterators, so should be robust and fast.

For extra pizzaz you could try boost::spirit, something with which you would design a parser, and parse the whole thing and give you the appropriate converted values. Possibly a bit overkill as it will parse and convert more than just the few fields you might need. Or mix dynamic field sets with boost::spirit.

IQFeed Developer Support » Option Symbol Conventions Sep 3, 2013 12:13 PM (Total replies: 2)

Two questions regarding options in the Market Symbols file:

1) In the following line:
AGII11418A36.36 AGII JAN 2014 C 36.360 OPRA OPRA IEOPTION
The option base symbol is AGII1. But in the descripion, the underlying shows as AGII. What is the 1 after the symbol, but before the four digit date, represent? There are a number of symbols
referencing the underlying this way.

2) The question is in the third set of symbols:

These I know are regular options:
SPY1304J145 SPY OCT 2013 C 145.000 OPRA OPRA IEOPTION
SPY1319J145 SPY OCT 2013 C 145.000 OPRA OPRA IEOPTION

These I know are mini options:
SPY71319J145 SPY OCT 2013 C 145.000 OPRA OPRA IEOPTION

But what are these options? With symbol SPYJ? The underlying in the description indicates SPY.
SPYJ1304J145 SPY OCT 2013 C 145.000 OPRA OPRA IEOPTION
SPYJ1319J145 SPY OCT 2013 C 145.000 OPRA OPRA IEOPTION


Time: Tue November 20, 2018 11:41 AM CFBB v1.2.0 16 ms.
© AderSoftware 2002-2003