Market Data » Volume Discrepancy May 31, 2012 @ 12:49 PM (Total replies: 2) | |||||
There really isn't any source code to compare bars. I just copied and pasted all the data into an Excel spreadsheet and subtracted the OEC data from the CQG data. I had about 2200 data points to use for a comparison, from the Open on Sunday to the Close on Tuesday, so all times of day were seen in the data. The OEC volume data are off by a factor of 10 from the CQG data, no matter the time of day. I don't have exchange data to compare with the other two. I'm not sure how I would obtain that. I was able to obtain some data from another provider named TickDataMarket. Their volume data were quite close to yours, but not exactly the same. There was still an error rate of approximately 26% in the volume data between OEC and TDM. In contrast, the error rate was approximately 97% in the volume data between OEC and CQG. I asked CQG about this problem, but they have not responded. I'm not sure what the issue is, as CQG has quite a good reputation for quality, but your data agree with TDM quite well. Nathan verner & Fred isabelle |
|||||
Market Data » Volume Discrepancy May 27, 2012 @ 01:07 AM (Total replies: 2) | |||||
Hello, I received some NQM2 sample data from CQG, one of the most reliable market data providers in the world, and their volume data were quite different from the data I downloaded using the OEC Demo API. I acquired the OEC data by using a RequestBars command. The data from both CQG and OEC are one-minute bars. The average volumes per minute for the NQM2 for CQG and OEC were 18.6 and 239.1, respectively, from May 13 to May 15. Do you know why there is such a large difference? The other data from CQG seem quite close to what I have on OEC. I only saw 15 total errors in the Open, High, Low, or Close for roughly 2000 minutes. The errors were quite small, no greater in magnitude than 0.25. However, I don't understand why the volumes would be so different for the same contract. I would appreciate any insight you have on this issue. Thanks. Nathan verner & Fred isabelle |
|||||
Market Data » More Bar Data May 18, 2012 @ 09:12 AM (Total replies: 4) | |||||
I am having a problem similar to what PArnoldson experienced. I tried the method that RuslanK suggested for the NQM2, and I am only able to get 5770 one-minute bars, starting from the present and extending backwards without any skipped bars. I request the bars in sets of 1000 and usually get back somewhere between 500 and 1000 bars per request, for a total of 7 requests. This is almost exactly 4 days, so it seems like some kind of arbitrary limit that is set for the server. I would like something on the order of several months of one-minute bar data on the NQ futures, which would be extremely useful for back-testing my trading algorithm. Is there any way for me to get this data? Thanks. Nathan verner & Fred isabelle |
|||||
Order Execution » Order Clearing May 18, 2012 @ 07:39 AM (Total replies: 2) | |||||
OK, thanks a lot Victor! Nathan verner & Fred isabelle |
|||||
Order Execution » Order Clearing May 15, 2012 @ 04:20 AM (Total replies: 2) | |||||
Hello, I am creating a trading algorithm, and I want it to have a method that offsets all existing orders, so that I can shut off the program and not have to worry. I believe I have figured out what to do for old market orders that I sent, but I'm not sure what I should do about filled stop orders. If a stop order is triggered, its state goes from Held to Accepted and it becomes a market order. After that, the state becomes Completed when the market order is filled, right? I have references to my orders saved using the Order class. When a stop order becomes a market order, will my old reference work? Additionally, after the stop order becomes a market order and the market order is filled, how can I find that order to offset it? Will my original Order reference work or is there some better way to do this? Thanks. Nathan verner & Fred isabelle |
|||||
Market Data » How to Use Subscription May 15, 2012 @ 04:09 AM (Total replies: 8) | |||||
OK, I have it figured out now. Thanks for your help. Nathan verner & Fred isabelle |
|||||
Market Data » How to Use Subscription May 14, 2012 @ 05:17 AM (Total replies: 8) | |||||
Thanks again for your advice. I was able to get the data. However, for some strange reason, after one request for bars, I get two OnBarsReceived Events. So if I were using your example code, the OnBarsReceived method would be called twice every time a new bar came in. On the first time, the bars are full, but on the second time, the bars are empty, which causes my program to throw an exception. What do you think the problem is, and how should I fix it? Thanks. Nathan verner & Fred isabelle |
|||||
Market Data » How to Use Subscription May 10, 2012 @ 10:30 AM (Total replies: 8) | |||||
Thanks for the quick reply. I've been messing around with the code, but I haven't gotten anything to work. Can you please look at my code and tell me what I'm doing wrong? Thanks. public void Start() { ... Bar[] bars = null; Subscription sub = OECClient.Global.RequestBars( mainfrm.m_cli.Contracts["NQM2"], //Contract DateTime.UtcNow - TimeSpan.FromMinutes(30), //StartDate DateTime.UtcNow, //EndDate SubscriptionType.Bar, //SubscriptionType 1); //Interval mainfrm.m_cli.OnBarsReceived += barReceived(sub, bars); } OnBarsReceivedEvent barReceived(Subscription Sub, Bar[] bar) { return OnBarsReceivedEvent } Nathan verner & Fred isabelle |
|||||
Market Data » How to Use Subscription May 10, 2012 @ 10:27 AM (Total replies: 8) | |||||
Is this working? I can't see my other post... Nathan verner & Fred isabelle |
|||||
Market Data » How to Use Subscription May 10, 2012 @ 09:20 AM (Total replies: 8) | |||||
Hi, I would like to download a set number of minutes of past data from the OEC Server and use it in my program. I have looked through the forums and the documentation, but I was not able to figure out why I can't access the data. Here is my code: Subscription sub = OECClient.Global.RequestBars( mainfrm.m_cli.Contracts["NQM2"], //Contract DateTime.UtcNow - TimeSpan.FromMinutes(30), //StartDate DateTime.UtcNow, //EndDate SubscriptionType.Bar, //SubscriptionType 1); //Interval The code compiles and runs okay, but I don't see any data in the local variables. The Subscription class has no data fields. Where are the bars? Did I write the code incorrectly? I am writing my code by modifying the Advanced Example and using a simulated account. Any help would be appreciated. Thanks. Nathan verner & Fred isabelle |
|||||
API Support » Create New Algorithm Apr 27, 2012 @ 08:52 PM (Total replies: 3) | |||||
Victor, Thanks for responding. So essentially, I have to write my own code to implement my trading strategy using the API and won't be able to use the Algo class? Are there any plans to change this in the future? It would be quite convenient to be able to just write my own OSM algorithm and plug it into the Advanced API Example. Thanks. Nathan verner & Fred isabelle |
|||||
API Support » Create New Algorithm Apr 23, 2012 @ 02:59 PM (Total replies: 3) | |||||
Hello, I would like to implement a new algorithm that I developed to do day-trading using the OEC API. I downloaded the OEC API Advanced Example and examined the files. I also looked through the online API documentation. I found that the API already has an Algo class that can be used to implement new algorithms. Additionally, the OSM Orders Control has a list of four algorithms (Iceberg, ImprovedTimeSlice, MarketTimeSlice, and TimeSlice) that can be used to trade. These algorithms seem to be loaded through the OEC.API.OECClient.Global.LoadOsmAlgoList() method, which accesses the list from the OEC server. I would like to know how to create and add my own algorithm to this list of algorithms in the Advanced Example GUI. Any assistance would be very appreciated. Thanks. Nathan verner & Fred isabelle |