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 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
"IQ feed is brilliant. The support is mind-bending. What service!" - Comment from Public Forum Post
"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
"Can I get another account from you? I am tired of ******* going down so often" - Comment from George
"I've been using IQFeed 4 in a multi-threaded situation for the last week or two on 2600 symbols or so with 100 simultaneous daily charts, and I have had 100% responsiveness." - Comment from Scott
"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
"If you want customer service that answers the phone, your best bet is IQFeed. I cannot stop praising them or their technical support. They are always there for you, and they are quick. I have used ****** too but the best value is IQFeed." - Comment from Public Forum
"I am very pleased with the DTNIQ system for quotes and news." - Comment from Larry
"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
"I am a hedge fund manager here. It’s funny, I have a Bloomberg terminal and a Bridge feed, but I still like having my DTN feed!" - Comment from Feras
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: altmany
About Contact
Joined: Jul 30, 2018 05:38 AM
Last Post: Oct 16, 2021 01:09 PM
Last Visit: Oct 16, 2021 01:09 PM
Website: https://UndocumentedMatlab.com/IQML
Location:
Occupation: Consultant
Interests: Matlab, finance, trading
Avatar:
IQML - IQFeed-MATLAB connector
Email: altmany@gmail.com
AIM:
ICQ:
MSN IM:
Yahoo IM:
Post Statistics
altmany has contributed to 62 posts out of 20374 total posts (0.30%) in 1,182 days (0.05 posts per day).

20 Most recent posts:

This field in the S,CUST message indicates the latest official version of IQFeed, which is currently 6.1.0.20. Remember that 6.2 is still in beta mode and not the officially supported version [yet]. Simply run the S,SET PROTOCOL,6.2 after you receive this message and you should be ok. You will see that the 6.2 protocol is used by an incoming S,CURRENT PROTOCOL,6.2 message. Note that you need to repeat this protocol setting for all ports, not just the Admin port.

Yair Altman
IQML - IQFeed-MATLAB connector
https://UndocumentedMatlab.com/IQML

I am not a DTN employee; my post reflects my personal opinion



Are you certain that when you initially connect to IQFeed you specify S,SET PROTOCOL,6.2 in *ALL* the connection ports?

Yair Altman
IQML - IQFeed-MATLAB connector
https://UndocumentedMatlab.com/IQML

I am not a DTN employee; my post reflects my personal opinion


IQFeed Developer Support » Multiple Interval Watches on same symbol Oct 9, 2021 03:47 PM (Total replies: 1)

You can specify a unique RequestID (8th parameter after the BW) for each separate BW request (for example: IBM-1s, IBM-5s, IBM-30s). This will be reported at the beginning of each incoming message from IQFeed. You could parse the incoming RequestID and use the parsed components in your code logic.

Note: setting multiple overlapping BW requests per symbol is sub-optimal and will likely inundate your program with multiple duplicate messages. I think that it would be better to only request 1sec BW intervals, and to aggregate the bars in your program logic. This would probably be more efficient than to separately process multiple duplicate interval messages.

Yair Altman
IQML - IQFeed-MATLAB connector
https://UndocumentedMatlab.com/IQML

I am not a DTN employee; my post reflects my personal opinion


IQFeed Developer Support » Question regarding streaming Oct 8, 2021 08:20 AM (Total replies: 3)

In your BW command to start the streaming, set the UpdateInterval field (which is the 11th field after the BW) to any integer value >= 0 (e.g. 1), to specify the max number of seconds before a bar update message is sent from IQFeed, even when no trade has occurred.

Also see http://forums.iqfeed.net/index.cfm?page=topic&topicID=4341

Yair Altman
IQML - IQFeed-MATLAB connector
https://UndocumentedMatlab.com/IQML

I am not a DTN employee; my post reflects my personal opinion


IQFeed Developer Support » Market center codes Jul 26, 2021 08:28 AM (Total replies: 1)

Run the SLM command on the Lookup port to get the latest list of market centers (IDs, names and descriptions)

Yair Altman
IQML - IQFeed-MATLAB connector
https://UndocumentedMatlab.com/IQML

I am not a DTN employee; my post reflects my personal opinion


IQFeed Developer Support » HWX, HMX May 25, 2021 08:00 AM (Total replies: 4)

You're probably using an old version of the IQFeed client (IQConnect), version 6.0 or older - these versions used fewer parameters (the IncludePartialDatapoint parameter was added in client version 6.1). Simply install the latest IQFeed client and this problem will probably be resolved.

Yair Altman
IQML - IQFeed-MATLAB connector
https://UndocumentedMatlab.com/IQML

I am not a DTN employee; my post reflects my personal opinion



For the volatility value you can use the Historical_Volatility field from the underlying asset's fundamental data. DTN's official description of this field is: “30-trading day volatility, calculated using Black-Scholes”. Apparently, the actual calculation (which is updated once a day, after midnight) for options computes the volatility of day-to-day price change values of the last 30 trading days, using the last 31 daily close prices, as follows:
100*sqrt(252)*std(ln(close(i+1)/close(i)))
, rounded to the nearest 0.01. For futures, the calculation is similar but apparently based on 90 (not 30) values. When a contract is newly-listed, fewer values are used, with a minimum of 4 values.

You can also calculate the historic volatility yourself, using historic prices of the underlying asset (use IQFeed's historic bars query for this). In this case, you can use a different number of historic prices for the calculation, ignore outlier values etc., without relying on DTN's built-in opaque calculation.

As an alternative to using the historic volatility, you can also calculate the implied volatility using Black-Scholes. This will typically be easier for European derivatives than for American/Asian/exotic ones.

In my IQML connector I enable the user to choose whether to use IQFeed's built-in Historical_Volatility field, or a calculated Implied Volatility, or a fixed value.

For the risk-free rate, you can either set a fixed rate (in the current financial situation, a simple value of 0 may be close enough for practical purposes), or use the current value of assets such as LIBOR/IRX.XO.

See http://forums.iqfeed.net/index.cfm?page=topic&topicID=4387 for some detailed discussion of these matters.


Yair Altman
IQML - IQFeed-MATLAB connector
https://UndocumentedMatlab.com/IQML

I am not a DTN employee; my post reflects my personal opinion

Edited by altmany on Feb 21, 2021 at 02:58 AM


I do not believe that IQFeed has a dedicated query for requesting greeks, nor are the greeks reported by IQFeed in the standard market-data query.

Some of the software that connects to IQFeed (for example, my IQML connector for Matlab) calculate the greeks internally and report them to the user. If you are developing your own program, you can calculate the greeks using the information reported for the options and their underlying asset, and the standard Mathematical definitions: https://en.wikipedia.org/wiki/Greeks_(finance).

Yair Altman
IQML - IQFeed-MATLAB connector
https://UndocumentedMatlab.com/IQML

I am not a DTN employee; my post reflects my personal opinion


IQFeed Developer Support » Questions about api Dec 28, 2020 10:09 AM (Total replies: 4)

For the benefit of anyone who happens across this thread, note that on Dec. 22, 2020 DTN has changed the throttling mechanism for historical data queries: instead of the old limit on the number of concurrent connections, the new limit is on the number of queries within a rolling 1-second window (50 queries/sec).

References:

There is currently no known throttling limitation on other types of IQFeed queries (non-historical).

Yair Altman
IQML - IQFeed-MATLAB connector
https://UndocumentedMatlab.com/IQML

I am not a DTN employee; my post reflects my personal opinion


IQFeed 3rd Party Software Support » Bar Watch Help Dec 1, 2020 03:04 PM (Total replies: 7)

Set a non-default UpdateInterval parameter in your BW command to get interim bars.
See http://forums.iqfeed.net/index.cfm?page=topic&topicID=4341 and http://www.iqfeed.net/dev/api/docs/Derivatives_StreamingIntervalBars_TCPIP.cfm

Yair Altman
IQML - IQFeed-MATLAB connector
https://UndocumentedMatlab.com/IQML

I am not a DTN employee; my post reflects my personal opinion


Data and Content Support » Download Futures Data with delivery month Nov 30, 2020 06:33 AM (Total replies: 12)

The delivery date for futures and future options is included in the "First Delivery Date" field of the Fundamental Data Message in IQFeed (towards the end of the message).
See http://www.iqfeed.net/dev/api/docs/Level1FundamentalMessage.cfm and http://www.iqfeed.net/dev/api/docs/Level1viaTCPIP.cfm

Yair Altman
IQML - IQFeed-MATLAB connector
https://UndocumentedMatlab.com/IQML

I am not a DTN employee; my post reflects my personal opinion


Data and Content Support » Roll rule change for @3N# Nov 12, 2020 03:50 PM (Total replies: 2)

I think that many users would welcome the ability to have a roll rule based on the trading volume rather than a fixed date. For example, @3N# would continue to be date-based, whereas @3N@ would roll on the first day following a daily volume crossover between the near/next contracts.

Yair Altman
IQML - IQFeed-MATLAB connector
https://UndocumentedMatlab.com/IQML

I am not a DTN employee; my post reflects my personal opinion


IQFeed Developer Support » HIT: Missing data or data compression? Jul 16, 2020 04:52 PM (Total replies: 3)

Interval bars during which no trading occurred are not reported. For this reason you often see many such gaps in non-trading hours, but sometimes also during the trading day. Naturally, the wider that your requested interval bar size is, the less likely this is to happen.

Yair Altman
IQML - IQFeed-MATLAB connector
https://UndocumentedMatlab.com/IQML

I am not a DTN employee; my post reflects my personal opinion


IQFeed Developer Support » HTT command: bug in parsing EndTime? Jun 9, 2020 02:47 PM (Total replies: 1)

When I run the following HTT command:

 HTT,SPY,20200608 200000,20200609 000000,1000000,,,1,HTT-SPY,

I receive the expected last few ticks from 2020-06-08, but also hundreds of thousands of unexpected ticks from 2020-06-09. I expected no ticks after midnight 2020-06-09. No matter which EndTime value I enter, the latest reported tick is always from the current time.

Perhaps EndTime is not parsed correctly on the server?

I'm using IQFeed client 6.2.0.1, in case that's relevant.

Yair Altman
IQML - IQFeed-MATLAB connector
https://UndocumentedMatlab.com/IQML

I am not a DTN employee; my post reflects my personal opinion


Data and Content Support » Same Timestamp with different TickID Jun 2, 2020 06:47 AM (Total replies: 12)

I think that it would be useful to include a unique sequence ID with each tick that *would indeed* be unique (an incremental long integer if possible) across the board.

I'd be surprised if you don't already have such an ID in your databases, since all databases have such IDs which are often used as index keys. I assume that adding it to the reported tick fields should not be too difficult.

A unique sequence ID will help end-users differentiate between different ticks in their programs. It will also help users when they report a potential data problem to refer to a unique sequence id that you could immediately find in your database.

Yair Altman
IQML - IQFeed-MATLAB connector
https://UndocumentedMatlab.com/IQML

I am not a DTN employee; my post reflects my personal opinion



  • CummlativeVolume – total trade volume since start of the current trading day.
  • IntervalVolume – trade volume during this specific interval bar only.
  • NumberOfTrades – number of trades during this specific interval bar. Relevant only when the IntervalType in your request is ticks/trades.

    Yair Altman
    IQML - IQFeed-MATLAB connector
    https://UndocumentedMatlab.com/IQML

    I am not a DTN employee; my post reflects my personal opinion


    Data and Content Support » Streaming nterval bar with H type Apr 21, 2020 10:06 AM (Total replies: 1)

    The intervalbars query is special in the sense that it returns both historic and live (streaming) bars, depending on the parameters in the request. In most case, you will receive a bunch of historic bars (H) immediately, followed by live streaming bars (C/H), one at a time, as they become available (depending on your interval duration).

    Yair Altman
    IQML - IQFeed-MATLAB connector
    https://UndocumentedMatlab.com/IQML

    I am not a DTN employee; my post reflects my personal opinion


    IQFeed Developer Support » Undocumented limit of 4000 headlines? Mar 11, 2020 02:08 PM (Total replies: 3)

    Thank you for the clarification Gary.

    You may wish to consider updating the official API doc page accordingly: http://www.iqfeed.net/dev/api/docs/NewsLookupviaTCPIP.cfm

    Yair Altman
    IQML - IQFeed-MATLAB connector
    https://UndocumentedMatlab.com/IQML

    I am not a DTN employee; my post reflects my personal opinion


    IQFeed Developer Support » Undocumented limit of 4000 headlines? Mar 6, 2020 05:01 AM (Total replies: 3)

    In the following headlines query, I consistently get only 4000 headlines although I requested 5000. Is 4000 an undocumented limit?
    NHL,,:,t,5000,,


    Yair Altman
    IQML - IQFeed-MATLAB connector
    https://UndocumentedMatlab.com/IQML

    I am not a DTN employee; my post reflects my personal opinion


    IQFeed Developer Support » Only TRADES for "HIT" historical data requests? Dec 22, 2019 08:25 AM (Total replies: 13)

    I don't want to answer in DTN's stead, but I think you are underestimating the required effort to have HIT support for non-trading ticks. Remember that HIT enables specifying an interval of not just 60 secs but even a couple of secs, as well as any number of ticks (i.e., not a fixed-duration interval) and volume. To support all of these combinations with a custom interval size by the users, IQFeed would be required to store and process every single tick. This may not seem much for out-of-the-money options, but it would be an enormous amount of data for Forex options or S&P 500 equities (for example). In short, except for certain asset classes, it is an unrealistic expectation to support. And if IQFeed were to support non-trading ticks with only these certain asset types, users would naturally complain that all other asset types are not similarly supported.

    Note that I am not a DTN employee and this is just my own personal opinion.

    Yair Altman
    IQML - IQFeed-MATLAB connector
    https://UndocumentedMatlab.com/IQML

    I am not a DTN employee; my post reflects my personal opinion



  • Time: Sat October 23, 2021 10:09 AM CFBB v1.2.0 0 ms.
    © AderSoftware 2002-2003