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 are much better than lawyers or the phone company because you answer the phone when I call! I just love your customer service." - Comment from Isreal
"The service is great, I see a noticeable improvement in my volume profiles over [broker]'s data feed" - Comment from Larry
"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
"I've been using Neoticker RT with IQFeed for two months, and I'm very happy with both of the products (I've had IQFeed for two years with very few complaints). The service from both companies is exceptional." - Comment from Public Forum
"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
"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.
"I noticed that ******* quotes locked up shortly after the interest rate announcement yesterday while yours stayed stable." - Comment from Ron in Utah
"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 started a trial a few weeks back before the market went wild. DTN.IQ didn’t miss anything and beat my other provider. I decided to stay with you because of the great service through all the volatility." - Comment from Mike
"I just wanted to let you know how fast and easy I found it to integrate IQFeed into our existing Java code using your JNI client. In my experience, such things almost never go so smoothly - great job!" - Comment from Nate
Home  Search  Register  Login  Blogs Recent Posts

Information on Various DTN Products:
DTN IQFeed | DTN ProphetX | DTN Ag | NxCore
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: Sep 13, 2017 07:49 AM
Last Visit: Sep 13, 2017 07:49 AM
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 240 posts out of 18070 total posts (1.33%) in 4,485 days (0.05 posts per day).

20 Most recent posts:
IQFeed Developer Support » greeks / delta Sep 13, 2017 07:49 AM (Total replies: 9)

@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: 9)

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: 9)

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

IQFeed Developer Support » Interest Rate Symbols Jul 15, 2013 03:59 PM (Total replies: 3)

When calculating options parameters, one of the parameters is 'risk free rate of interest'.

Does any one have any suggestions for which symbols to use to obtain that rate for US based symbols? For some non US symbols, I use LIBOR which are symbols like ONLIB.X, 1WLIB.X, 2WLIB.X ....

What would be the USD equiv?

Thank you.

Ray


The symbol GLD has options available to it. Option naming doesn't appear to be consistent. For example, for a 2012/02/10 expiry for a GLD call is 'GLD1210B167'. 120210 is a Friday. On the other hand, for GLD option dated 120518, the option actually has a Saturday date: 'GLD1219E86'. Is there a method to this madness? I see IB has similar dating, so I believe it is official, but why?

Thank you.

Data and Content Support » mktsymbols_v2 futures symbols truncation Sep 19, 2011 04:53 PM (Total replies: 2)

At the time I wrote the parser for parsing the file, inertia led me to write a text parser for the description. I have subsequently found the decoding ring for decoding the symbol. I'll try that.


Has the XAUUSD.FXCM symbol been changed? I do not see it in the mktsymbols_v2.txt file.

Data and Content Support » mktsymbols_v2 futures symbols truncation Sep 19, 2011 07:17 AM (Total replies: 2)

In the mktsymbols_v2.txt file, quite a number of futures symbols have their descriptions truncated. I had been using the description to determine month/year of the future.

One random example:

XNZ13, SOCAL PIPE SYNTHETIC FUTURE DECEMBER 20

Do you know if the description field will be lengthened to accomodate a full description?

IQFeed Developer Support » Socket Interface Documentation Feb 26, 2011 04:03 PM (Total replies: 3)

You definitely need to register for the developer docs. What you are seeing is the regular time stamp from the client. So, what you are seeing is a good thing... you have a good connection.


Based upon what I've encountered in terms of real time quote, market depth, and book walking, I think trying to make use of any quote information at the time of trade is an exercise in futility.

If you are trying to back test strategies based upon quote level information (which implies book level information), you are probably best off recording quote/trade changes through a trading day, and then back testing based upon what you've recorded as being important.

Bid/Ask values and sizes are very nebulous/transient in nature. You also have to be aware of the your round trips: the time to get the order to market, and when it gets executed (ie slippage), which is highly variable. And are you simulating market orders or limit orders? Simulations can have a hard time simulating 'touch' scenarios.

In the end, for my simulations, I record quotes during the day, and simulate off that stream, pretty much ignoring trades but for their trending and volume indications.

IQFeed Developer Support » Tick data : trades or quotes ? Aug 11, 2010 05:42 AM (Total replies: 6)

From an IQFeed perspective, the only way to backtest option based strategies, or, for that matter, any equity based strategy using primarily quotes, is to design your program to collect and save live data during trading hours. Then use the data you've saved to run through your backtesting application.

I use IQFeed's historical daily data to look for interesting trading candidates, then use the above mechanism to capture intraday details for testing.

IQFeed Developer Support » Tick data : trades or quotes ? Aug 10, 2010 04:04 PM (Total replies: 6)

Because options are sparsely traded, ticks (trades) don't arrive very often, and therefore it is difficult to build bars. The only alternative is to collect quotes and use them for your own bar building. Using the mid-point between bid and ask is common. This is meant for collecting data during live sessions.

If you are trying to build bars from history, the bars you get are typically sparse, and of zero height, basically due to the fact that trade data is sparse. If you want continuous range bars, you are pretty much SOL when using the history files, as the files only provide quotes during a trade.
Edited by stargrazer on Aug 10, 2010 at 04:07 PM


I agree with taa_dtn: "For back-testing real-time trading systems you need the historical data to match exactly what was sent on the real-time feed. That includes bad ticks, ticks that weren't properly split-adjusted, and split-adjusted trades that took place before the announcement of the split was transmitted on the feed."

The historical values need to reflect what was traded in real time in order ascertain that trading algorithms are doing what they are supposed to be doing.

IQFeed Developer Support » Issues with Content of News Stories May 9, 2010 09:07 PM (Total replies: 1)

It seems that many (more than usual) news stories are coming up empty of content. A couple of examples:


The first as seen in my program:
N,FLY,21077737284,:BTU:,20100509 213915,Peabody submits A$15 per share cash offer for controlling stake in ...

<?xml version='1.0'?>
<news_stories>
</news_stories>


The second as seen from telneting to localhost 9100:
NN:13992439;<?xml version='1.0'?>
<news_stories>
</news_stories>

!ENDMSG!

Is this unusual?

IQFeed Developer Support » Finding if Trade is a Market Order ? Feb 1, 2010 03:29 PM (Total replies: 2)

It isn't easy. I think the seminal paper on that is "Inferring Trade Direction from IntraDay Data" by Lee and Ready. But there is another hitch. I read in some recent papers that the 'short on an uptick' rule biases historical data.


Time: Fri September 22, 2017 3:47 PM CFBB v1.2.0 0 ms.
© AderSoftware 2002-2003