Joined: |
Feb 23, 2009 08:22 AM |
Last Post: |
Oct 1, 2010 06:08 AM |
Last Visit: |
Oct 19, 2010 10:03 AM |
Website: |
|
Location: |
|
Occupation: |
|
Interests: |
|
|
|
smt52 has contributed to 31 posts out of 20980 total posts
(0.15%) in 5,217 days (0.01 posts per day).
20 Most recent posts:
Hi,
Is there any method at all, no matter how hack-prone and nasty, to filter our binary and weekly options from the list of returned option chains?
> (for example, the ability to filter weekly or binary options would be needed)
I would love the ability to filter out weekly or binary options, these are a real headache to handle in code, as every single symbol needs to be tweaked by hand to make it work. Nasty.
I understand now: its returning binary options on the SPX, which are not very popular and thus lightly traded, if at all.
Edited by smt52 on Oct 1, 2010 at 05:55 AM
Hi,
If I use the demonstration IQfeed option chain program to return all option chains within 1 strike of the underlying for SPX.XO, it returns option chains correctly for the monthly options, but it fails to return the option chains correctly for the weekly options.
SPX1020K1140 SPX1020K1145
SPX1018L1140 SPX1018L1145
SPX1016J1140 SPX1016J1145
SPX1008J1140 << there should be a SPX1008J1150 here, but its missing
SPX1001J1140 << there should be a SPX1001J1150 here, but its missing
NOTE: I think the bug is related to the fact that there is no SPX1001J1145 for the weekly options, there is only a SPX1001J1150, and this may be screwing up the internal calculations somehow. Edited by smt52 on Oct 1, 2010 at 05:59 AM
Hi,
If I look up the option chains for SPX.XO, it returns, among other things, the following option chains:
BSZ1016J1140 BSZ1016J1150
These option chains have exactly the same description as SPX1016J1150, however, no data is returned from them.
Can you explain what this option chain is? Edited by smt52 on Oct 1, 2010 at 06:01 AM
We would like some advice on how to fix an issue with IQfeed which results in it crashing one or twice per day. By "crash", I mean that it starts to gobble up 90% of CPU time (up from 10%), which means that nothing else has any CPU time to do anything.
Setup:
1. Amazon EC2. 2. 1.7GB of RAM. 3. 1 EC2 compute unit (equivalent to a 1.0-1.2 GHz 2007 Opteron). 4. Operating system is Windows Server 2008.
How to reproduce the problem: 1. Subscribe to 20 symbols. 2. CPU usage is consistently ~10% or less. 3. Wait until there is lots of market activity (i.e. 4:15pm). 4. At some point during the day, under higher load, the IQfeed driver goes from 10% CPU usage to 90% CPU usage. This problem occurs 1 to 2 times per day. 5. As the IQfeed driver has effectively crashed, the rest of the system has no CPU time to do anything, so the entire system grinds to a halt.
Hypothesis: 1. Perhaps the buffers are filling up internally - how can we check to see if this is happening, to guard against this happening?
Hi, Steve.
Thank you for helping me to understand the problem. I'm profiling my application to find a cause of problem from my side. Could you please to send me your variant of C# code working with IQFeed sockets?
Unfortunately I'm not able to run your test applications because APP ID is not suitable for my logins. IQFeed reports an error:
" Sorry, your Product and/or Service for the attempted login are incorrect. If you have recently changed products you may also need to change your type of service. Please contact DTN customer support for assistance."
How can I go over it?
Hi, Steve.
The 90% CPU load remains in both 4.7.0.7 and 4.7.0.9 build of IQConnect. Now this problem becomes vital for me, because IQConnect goes to 90-100% CPU load every several minutes. Same time it stops sending symbols through sockets. The whole picture is following:
1. My application starts IQConnect and then start subscibing to 78 symbols. For each symbol it first reads historical data was missing after last shutdown; 2. IQConnect consumes about 4-5Mb of memory and 3-7% CPU load; 3. When there are about 50 symbols subscribed IQCOnnect starts consuming more and more RAM and when it's about 10Mb it consumes 90-95% of CPU time; 4. IQConnect stops responding on sockets and my application closes it. 5. Go to #1
This happening under Windows Server 2008 R2 (1Gb RAM) and does not happen under Win7 (4Gb RAM). Windows Server 2008 R2 has about 95% RAM load. In normal situation there is no more than 30% total CPU load (including all services and my applications). Edited by smt52 on Jan 29, 2010 at 09:07 AM
The issue is 100% reproducable on my system. Edited by smt52 on Jan 29, 2010 at 09:13 AM
We have a plugin for OpenQuant (which was originally developed by the same company) if you are interested.
Hi, Steve
Thank you for your kind help. Now it works as expected.
Before I sent "S,CONNECT" once and this happen before dialog showed up.
Now I'm sending "S,CONNECT" every second until it connected and connection works with autoconnect and savelogin both set to off.
Hi, Steve
Cat I somehow to force IQConnect to generate the debug log for you?
Hi, Steve.
I just downloaded and tested lastest IQFeed 4.7.0.3 beta. "S,CONNECT" command now works, but it works only in one case, wneh:
SendMessageToServer("S,SET SAVE LOGIN INFO,On"); SendMessageToServer("S,SET AUTOCONNECT,On");
sent before the "S,REGISTER CLIENT APP" command. When I send
SendMessageToServer("S,SET SAVE LOGIN INFO,Off"); SendMessageToServer("S,SET AUTOCONNECT,On");
or
SendMessageToServer("S,SET SAVE LOGIN INFO,On"); SendMessageToServer("S,SET AUTOCONNECT,Off");
or
SendMessageToServer("S,SET SAVE LOGIN INFO,Off"); SendMessageToServer("S,SET AUTOCONNECT,Off"); // Most preferred combination
"S,CONNECT" command does nothing. IQConnect shows login dialog, but nothing happening until I click "Connect" button.
Hi, Steve.
Below is the list of symbols we're currently watching by IQFeed (1 in second column menas that market depth (Level II) collected for this symbol) :
(see private message) Edited by smt52 on Dec 18, 2009 at 05:55 AM
Hi.
I'm testing my application which running continously for a long time. It's currently subscribed to 78 symbols (including Level II for few of them) and running IQConnect 4.7.x beta (latest available beta release). IQConnect normally does not load CPU much (about 2% in peaks).
After about 48 hours of uninterrupted functioning IQConnect process started consuming about 90% of CPU time. When I exit IQConnect and restarted it CPU load become normal.
FYI, My application consumes all the traffic coming from IQFeed (including admin status messages). IQConnect does not report that it is out of memory. Unfortunately I forgot to check how much memory IQConnect allocated when it loaded CPU for 90%. In normal mode it occupies 9.2 Mb of RAM. I will wait until next problematic situation with IQConnect and will check how much memory it occupied then.
Hi, Steve.
Thank you for reply. I seen the disabled "Connect" button and had all the problems you described. Will wait for the next beta.
Edited by smt52 on Dec 16, 2009 at 11:51 AM
Hi, Steve.
Thank you very much for your advise. I used it and it working fine.
However I found another problem in the IQConnect 4.7 beta. The problem related to "S,CONNECT" command sent to admin socket. Unfortunately this command prevents IQConnect from connecting even when "S,SET SAVE LOGIN INFO,On" command sent or "-autoconnect" parameter sent through command line. When this command sent to IQConnect it starts in disconnected mode and even does not show login dialog.
Actually I tried to avoid using command-line parameter to pass credentials to IQConenct.exe (this is not safe). So I tried to use the following sequence of commans passed to admin interface:
SendMessageToServer("S,SET SAVE LOGIN INFO,Off"); SendMessageToServer("S,SET AUTOCONNECT,Off");
// Register application SendMessageToServer(string.Format("S,REGISTER CLIENT APP,{0},{1}",_productName, _productVersion));
// Send credentials to IQConnect SendMessageToServer(string.Format("S,SET LOGINID,{0}", login)); SendMessageToServer(string.Format("S,SET PASSWORD,{0}", password));
// Force server connection SendMessageToServer("S,CONNECT");
IQConnect responds with messages that application is registered and credentials are set, but does not login.
Now I have rolled back to passing credentials through command-line parameters and setting "-autoconnect" and "-savelogininfo" parameters. Currently this is only approach which works with IQConnect.
How should I change my code to pass credentials through admin sockects and to make "S,CONNECT" command work correctly?
I'm using new IQFeed 4.7 approach to launch IQFeed child process with parameters. It's taking several seconds for IQConnect to login and to launch all sockets. If I trying to connect to the socket immediately after process started I can connect to admin socket only. So calling process need to wait for several seconds before connecting. This wait time varies depending of internet channel load and (probably) IQFeed server load. This is not good approach to wait hardcoded number of seconds because of possibe race. So I created code which tries to connect to Level I socket with 1 second intervals until connected. Then this code holds this socket opened for several seconds to make sure IQFeed will not unload and let the main code to connect to IQFeed sockets. This all code works fine. But, when main code tries to connect, it receives S,SERVER_DISCONNECTED message and does not work. If I trying to connect to IQFeed again (unload and load again) it repeats S,SERVER_DISCONNECTED message. What is the correct approach to make sure IQConnect logged in and ready for connection?
It only happened during the weekend.
Just to confirm - is there any specific times of the weekend when IQfeed goes down for maintenance? Most datafeeds do this.
Hi,
Its 3pm GMT, on Saturday.
IQfeed is saying "Failure to Login", then "IQfeed will automatically close in X seconds", followed by it closing.
Our software automatically restarts IQfeed, and the cycle starts again (see the attached .png file).
Any ideas?
Shane.
|
|