gwalschl
-Interested User-
Posts: 46
Joined: Oct 25, 2006
|
Posted: Sep 11, 2007 07:19 AM
Msg. 1 of 10
I currently have the standard 500 symbols for about $60/month. The feed is input into my own C++ based trading application. What are the levels of upgrading from this to get more symbols and how much does each upgrade cost? I have had various people tell me that the upper limit is 1300 symbols and others have said it is 1800 symbols. I could use around 2000 symbols for my application.
|
DTN_Jay_Froscheiser
-VP, Product Operations-
Posts: 1746
Joined: May 3, 2004
DTN IQFeed/DTN.IQ/DTN NxCore
|
Posted: Sep 11, 2007 08:01 AM
Msg. 2 of 10
You can subscribe to up to 1800 symbols with IQFeed. It will cost $129 + exchange fees (call sales at 800-475-4755 to upgrade). However, in order to watch 1800 symbols, you will need a top of the line PC and must have very efficient code on your side. We are working on a new build of IQFeed client that will be more efficient and should help with watching 1800 symbols.
If you need 1800+ symbols, I would suggest looking at our NxCore feed. It is a highly efficient feed that broadcasts the entire market (no symbol limit). The overhead is much lower than IQFeed when broadcasting a large number of symbols. Costs for NxCore start at $500 per month for equities. If you need more information, please email prosales@dtn.com.
Jay Froscheiser DTN - Trading Markets
|
gwalschl
-Interested User-
Posts: 46
Joined: Oct 25, 2006
|
Posted: Sep 11, 2007 08:39 AM
Msg. 3 of 10
Thanks. So, that's $129/month total, not an additional $129 over the current $60/month?
Do you know have any estimate of when the new, more efficient servers will be released?
Any thoughts in a future release of having users able to tell IQFeed what data they need instead of just getting a fixed number of fields in update messages? For example, in update messages, I only use 1/2 (if that much) of the available data that arrives with every message. Seems to me that things would be MUCH more efficient for both IQFeed and for your users if we could send a message up front when connecting to the feed that indicates we get shipped only the fields we need. I imagine that most users would have a similar scenario. Might be an easy way to greatly increase server efficiency. What do you think?
|
DTN_Jay_Froscheiser
-VP, Product Operations-
Posts: 1746
Joined: May 3, 2004
DTN IQFeed/DTN.IQ/DTN NxCore
|
Posted: Sep 11, 2007 08:45 AM
Msg. 4 of 10
$129 total plus exchange fees. We are working on a new build of the IQFeed client (the piece running on your machine), to make it more efficient (just wanted to be clear since you mentioned "server"). I don't have an ETA as it is in early development. We are shooting to have it available within 2 months. I don't think we are going to be able to get the custom messages functionality into this release. However, the code changes we are making look very promising so far for significantly reducing the CPU utilization of IQFeed client.
If you were asking about the servers, we are hoping to release the new server code either this weekend or next to the remaining servers. We will post information when we have a hard date.
Jay Froscheiser DTN - Trading Markets
|
gwalschl
-Interested User-
Posts: 46
Joined: Oct 25, 2006
|
Posted: Sep 11, 2007 10:41 AM
Msg. 5 of 10
You mentioned that the new IQFeed client will be more efficient, but you also mentioned the need for a "top of the line" PC and efficient code to handle 1800 watching symbols.
I believe that my multi-tasking code is quite efficient as it has an extremely high priority thread that just reads raw socket data and buffers it, a high priority thread that formats the queued raw data into a "received messages queue" and finally an average priority thread that performs any analysis on incoming messages in the receive queue.
My PC has a 3.4GHz Intel Pentium 4 processor and 2GB of RAM on board. Does this meet your statement for requiring a "top of the line" PC in terms of downloading 1800 symbols?
Also, you mentioned that you won't be able to get the custom messages functionality into this release. However, is this something that you are already planning for in a future release?
|
dhakme
-DTN Evangelist-
Posts: 150
Joined: Sep 17, 2004
|
Posted: Sep 11, 2007 09:27 PM
Msg. 6 of 10
gwalschl,
It very much depends on what symbols you're watching. If you're watching the most active symbols on NYSE or Nasdaq then you don't have a chance. It should be noted that NYSE traffic has increased 2-3 fold in recent months. The IQFeed client will only utilize one core and (without anything else running) I would estimate your PC will max out at around 400-500 symbols. A more powerful Core 2 duo running at 2.9GHz would probably handle 700-800 and also handle your application (as it has 2 cores). From our experience there is a huge scope (order of magnitude) for improvement in the efficiency of the IQFeed client so hopefully the new client will improve things.
cheers, Dennis
PS your RAM is more than adequate
|
gwalschl
-Interested User-
Posts: 46
Joined: Oct 25, 2006
|
Posted: Sep 12, 2007 10:31 AM
Msg. 7 of 10
Thanks Dennis!
For my current application, with 500 symbols, my system stated is working great. I think it's due to not watching high volume symbols and due to decent architecture in my software.
However, it's looking more and more like I'll be interested in watching up to 1800 symbols...again, none of them typically heavy volume. Nonetheless, the multi-core processors sound good.
Do you know if you can somehow specify which processor core you'd like a thread to run on? I guess I'm asking if there is any way to impart a preference to using the cores or is it just done automatically based upon the number of apps, threads and their classes/priorities.
For certain, I'm waiting until I see the new IQFeed client before I make any configuration changes.
Gerard
|
nsolot
-DTN Guru-
Posts: 273
Joined: Sep 4, 2004
|
Posted: Sep 12, 2007 10:37 AM
Msg. 8 of 10
based on my observations, the issue isn't so much the number of symbols you're watching, but the aggregate number of update messages you recieve in any given time slice.
Active issues (MSFT, INTC, QQQQ, etc.) will send lots of messages.
Low volume stocks will usually send fewer, however keep in mind that significant news can cause a normally low volume stock to spike on any given day, and this can have the effect of slowing down (or other problems) for the entire set of tickers you're watching.
|
dhakme
-DTN Evangelist-
Posts: 150
Joined: Sep 17, 2004
|
Posted: Sep 12, 2007 10:59 AM
Msg. 9 of 10
Gerard,
Windows will normally do a decent job of spreading threads across multiple cores. It is possible to set process affinity (allocate a thread/process to a core) but I haven't found any advantage. However, I found a small advantage (approx 5% more throughput) in raising the priority of the IQFeed process to "high" on a w2k machine.
Dennis
|
gwalschl
-Interested User-
Posts: 46
Joined: Oct 25, 2006
|
Posted: Sep 12, 2007 04:37 PM
Msg. 10 of 10
Thanks for the info Dennis. I agree with nsolot that of course it's the total throughput that is more important than some arbitrary number of symbols. In my case, my symbols aren't high traffic choices.
BTW: My settings for my highest priority thread that simply buffers socket data are set to REALTIME_PRIORITY_CLASS and THREAD_PRIORITY_ABOVE_NORMAL. I see excellent performance and my other applications respond just fine while my app is running.
|