Posted Saturday July 16 2011
Hi. I desperately need some help on this.
In my attempts to get live data (of any kind, not just forex) from OEC, I may have found an issue with RE and the OEC plugin. OEC OneLink released a new version of it's API (3.5) and I don't think the OEC plugin and RE work with this version. I discovered this when I tried rewriting the OpenECry plugin just to simply get some live data.
First, I just wanted to make sure I could modify and use a new plugin in RE. So i followed the steps here: http://www.rightedgesystems.com/forums/Topic9847-16-1.aspx . I simply modified the OpenECry project ServiceName() to "Open E-Cry1", built the project and replaced the current RightEdge2010/Plugins/OpenECry.dll with the new one. Then I launched RE and "Service Name" is "Open E-Cry1" as expected. Cool. But still all 0.00 for price data.
So let's use the new OEC API.dll (3.5) and see what happens:
1. The current RE version (build 36) is using OEC API version 18.104.22.168 for it's plugin code -- OEC has released 3.5
2. In the same plugin project "OpenECry", I removed the OLD OEC dll references: API.dll, CommLib.dll and ProtoSharp.Core and added the new ones that OEC is currently using. API.dll 22.214.171.124, CommLib.dll , ProtoSharp.Core
3. Changed ServiceName() to "Open E-Cry2", and build the project successfully.
4. I replaced the RightEdge2010/Plugins/OpenECry.dll with the new OpenECry.dll.
5. Launched RE, Tools>ConfigureServices>New and Open E-Cry2 is not listed. This is as expected, since the RE \Yye Software\RightEdge 2010\Plugins still reference the OEC 3.4 dll's.
What I thought would be a possible solution:
1. Replace the OLD API.dll (3.4), CommLib.dll and ProtoSharp.Core.dll in the current RE installation folder \Yye Software\RightEdge 2010\Plugins to the latest version of the OEC DLL's (3.5).
2. Change a deprecated method. Line 849 in the OpenECry plugin project: Change "oecClient.RequestBars(oecContract, startDate, endDate, interval);" to
"oecClient.RequestBars(oecContract, startDate, endDate, OEC.Data.SubscriptionType.Bar, interval);" note: this overload takes an int for interval, not timespan .. 1 = minute intervals.
3. I run RE, find the new service listing "Open E-Cry2" (as a result of matching DLL's..getting excited), login fine, but still get 0.00's for all data (Forex,Futures whatever).
4. I downloaded the sample API apps from OEC (all C++ though) and was able to retrive FOREX price data, no problem.
So, what do I do now? Is anyone using OEC's API with RE build 36? How did you get live Forex data to show?
Thanks so much for your help!!