Welcome to the Traders Laboratory.

Open E Cry The unofficial Open E Cry forum.

Reply
Old 09-12-2009, 04:47 AM   #9

Join Date: Sep 2009
Location: Albuquerque
Posts: 6
Ignore this user

Thanks: 1
Thanked 0 Times in 0 Posts

my second plea for help on EMA-convergence detection

Hi There!

If anyone is capable of coding for OEC Trader, I'd really appreciate some feedback. Nobody replied to me even by PM so I'll try again. No harm in trying again.

I urgently need some very simple help in getting started is using either EasyLanguage or C# for the newly updated OEC Trader that supposedly makes it much easier than in in the past to implement Custom Indicators, Strategies, etc. If they would provide an *example* in theri documentation of code that did more than the Hello World that they show, I'd be able to figure it out on my own, but I cannot find *anything* useful that can be compiled without at least two syntax errors. OK.

I'm hoping to develop a Custom Indicator that will automatcially scan all my open graphs for a particular chart condition that often preceded a very strong move up or down.

It's basically a congestion/expansion reversal pattern where the strong move usually begins within minutes of a particular type of convergence that I set up all my charts to show. I waste a tremendous amount of time flipping through all my charts in sequence hoping to see it and I can miss out on a big price move because I was too late by less than five minutes.

The important chart elements are four EMAs of harmonic lengths, here they're set at 20, 40, 80, and 160. This is a one-minute chart in a screen screen shot from TOS of 6BZ9 taken around 5:30 AM MDT on 9/11/2009. It shows two different points on the graph where, after a consolidation, all four EMAs seem to converge exactly to a single point, with the last tick being either above or below the congestion point of the EMAs. Such a condition doesn't usually last more than a few minutes. It's my signal to set up to take a trade. I need OEC to sound an alert whenever this happens.

The attached chart show two such patterns and subsequent rallies in 6BZ9.

The first one was almost exactly 5 AM (MDT); 6BZU9 came to a non-exact (indicator needs to allow some "slop") at about 1.6510, just below the purple Fib line. The BoE had just announced their new interest rate news. The four EMAs opened up like a fan and the rally topped out at noon just above 1.6800. That first rally of the day was 290 ticks, which is worth $1800 per contract and it took exactly 7 hours. There were two retraces along the way that wouldhave stopped me out, but I'd watch and wait hoping to reenter because there were no signs of reversal.

The second rally started with the EMAs converging much closer almost to a perfect point at 8 PM at a price of 1.6650. After the fan formed and expanded it rallied 92 ticks ito a new high of 1.6742. That rally was an almost perfect 45-degree up-channel with the choppiness starting at the end of the move. If someone can nail tops, they could have made $575 per contract with a lot less nervousness than trying to ride the earlier huge 8 AM BoE rally. Heck, that 8 PM rally was so smooth that it would have made sense to pyramid in and add to it. That last rally took four hours to top out at midnight exactly.

Wouldn't it be nice to make over $2 K in a (long) day by trading just one contract of 6B, with a $6.25 tick? Even with the two reversals during the 290-tick 8 AM rally, you could have had the 10 ticks from that first short-lived 3 AM rally if your computer woke you up with a WAV file and the speakers turned up.

I have many TA books, but the best description I can find to describe this chart pattern is a congestion/expansion reversal. But when the four harmonic EMAs converge to a point and they all expand like a fan with the price leading the way, it almost always leads to rallies of at least 100 ticks, which many traders would be thrilled to get every day.

Sure. Nothing is perfect, but it seems to work 2/3 of the time. At the very left of this chart at 3 AM on the purple Fib line you can see where the fan started opening upwards and there was a 20-tick rally that then reversed. But even that failed pattern could have gotten a nimble trader maybe the full 20 ticks because it started and ended at round #s, based at a Fib line of support, where hindsight says a logical short term target wouldhave been the 1.654 grid line.

Now I've tried to think of a way to "simulate" this pattern by using two customized MACD indicators to represent my four EMAs indirectly. I could make a MACD_F with non-standard periods of my fast EMAs: 20 and 40. And then make MACD_S with the slow MACDs: 80 and 160. In OEC's Custom Alerts, I could try to find a way to use the variables from these jury-rigged MACDs to test for when the four EMAs converge to near a point, with the last price being either right on them or close nearby. If someone is handy with OEC, it shouldn't be too hard to tell this thread how such an alarm could be set up.

Please help me! I'll contribute to this board. I'd make a donation to your favorite charity. Anything. It's driving me crazy looking at these charts and missing these strong moves. I could be making a lot of money by trading them and so can anyone else here.

David

P.S. I've requested price quotes for this work in several different places and nobody is interested in doing it.
Attached Thumbnails
Getting Started in Open Ecry With EasyLanguage-two_ma_convergences_before_rallies.jpg  
David79 is offline  
Reply With Quote
Old 09-12-2009, 09:18 PM   #10

Tams's Avatar

Join Date: Sep 2008
Location: Geelong
Posts: 4,056
Ignore this user

Thanks: 2,273
Thanked 1,648 Times in 1,007 Posts

Re: Getting Started in Open Ecry With EasyLanguage

This is what I suggest to people on getting a programming project off the ground:

1. write out your thoughts ONE LOGIC at a time,
2. write out your logic ONE ACTION at a time,
3. write out your actions ONE LINE at a time,

in no time you will have your indicator written in EasyLanguage.


Good luck
__________________
Arguing with a troll is a lot like wrestling in the mud with a pig, after a couple of hours you realize the pig likes it.
Tams is offline  
Reply With Quote
Old 09-13-2009, 01:36 AM   #11

Join Date: Sep 2009
Location: Albuquerque
Posts: 6
Ignore this user

Thanks: 1
Thanked 0 Times in 0 Posts

Re: Getting Started in Open Ecry With EasyLanguage

Quote:
Originally Posted by Tams »
This is what I suggest to people on getting a programming project off the ground:

1. write out your thoughts ONE LOGIC at a time,
2. write out your logic ONE ACTION at a time,
3. write out your actions ONE LINE at a time,

in no time you will have your indicator written in EasyLanguage.


Good luck

Thanks for your help with EasyLanguage. I've developed over $30 M of software in the past 30 years but don't have the time to learn a new language from scratch right now. All I need is some skeleton code that has at least part of this and which will clean compile *in OECTrader* without any syntax errors. I can do the rest. Pascal and ADA used to be in my toolbox but it's been way too long to remember anything and their manuals are in landfills.

OEC's documentation gives absolutely no examples of any working code besides a sort of Hello World that does nothing of any use. They're probably afraid someone will use their code example to trade with and will then sue them for losing money with it. All I need is a starting point. Anyone?

Last edited by David79; 09-13-2009 at 02:17 AM.
David79 is offline  
Reply With Quote
Old 09-13-2009, 01:39 AM   #12

Join Date: Nov 2006
Location: N/A
Posts: 599
Ignore this user

Thanks: 62
Thanked 299 Times in 179 Posts

Re: Getting Started in Open Ecry With EasyLanguage

Quote:
Originally Posted by David79 »
Thanks for your sage advice. I've developed over $30 M of software in the past 30 years but don't have the time to learn a new language from scratch right now.

All I'm asking for is a working prototype of skeleton code for this that will clean compile in OEC.

The title of this thread is "Getting Started in Open ECry With EasyLanguage." That's exactly what I'm trying to do.
With all that experience, one would have thought that you would be able to write out clearer pseudo code of what you want, instead of an essay and expect people to code something for you based on that.
sevensa is offline  
Reply With Quote
The Following User Says Thank You to sevensa For This Useful Post:
Tams (09-13-2009)
Old 09-13-2009, 10:07 AM   #13

Join Date: Sep 2009
Location: Albuquerque
Posts: 6
Ignore this user

Thanks: 1
Thanked 0 Times in 0 Posts

Would pay for working OEC code that does any of these three things

I'm an experienced software developer who uses OEC to do futures trading, but have never programmed real-time systems such as EasyLanguage or C#. Since the title of this thread is Getting Started in OEC with EL, it seemed like an appropriate place for me to ask for help in my own unique needs for getting started with OEC.

There are really three different things that I'd like to have working on the OECTrader platform, but I have posted a request for help in getting started with simplest of the three, because, if I could have even just a bare skeleton of working code to alert me that three EMAs have converged, I could continue developing that EMA-convergence alert script to allow testing of either 2, 3, or 4 harmonic EMAs instead of the hard-wired 3, etc. The EMA convergence script is the simplest of the three things I'd like to implement, which is Part 3, because it seemed the least likely that EOC development team would have any interest in it except maybe as some kind of example of a useful script for their documentation of Custom Indicators to do something more useful than the Hello World script they provide as their only example of code.

It's unfortunate and surprising that my requests for help here have drawn unwarranted hostility and undue sniping. If you don't want to see my essays, please use Ignore.

I certainly did not come here asking anyone do any significant coding for free. My post said that I was hoping someone could get me started with some skeleton code that will clean compile on OEC. I'm willing to pay for anyone to do this as work for hire, and only hinted as much, because I don't know if this forum allows members to offer to pay people to do paid work.

Here are the three things I need to have running with OECTrader, written as Parts 1, 2, and 3. After I asked my broker at OEC if he knew of anyone who did OEC programming for pay, he said he did not know of any, but he asked me to write up my needs and he'd pass them on to the OEC development team for their consideration. I'd pay ANYONE who can do ANY of these three things, but up to now I have only mentioned here the simplest one of the three (Part 3 below), because if I could have at least an initial version of Part 3 up and running, I could do Parts 1 and 2 myself later, as time allows. This is my wishlist:

-----------
Part 1 (Vervain Crossover--POPULAR):

A lot of trading systems are based on detecting trend changes signalled by crossovers in moving averages. A highly respected published algorithm for a trading Strategy based on research is Sylvain Vervoort's May 2008 article in Stocks and Commodities titled "The Quest for a Reliable Crossover."

VervoortCrossover.ELD is a free download written in EasyLanguage available for download if I get access to the tradestation forums by taking the free trial of tradestation they are offering now. If I get tradestation, I can probably also get the TS source code and then try to port that code over to the OEC platform. A *lot* of people are very interested in Vervoort crossover, both for automated trading and for indicators on a graph. Google has 4680 hits for
vervoort crossover - Google Search

I can find versions for many different platforms, but nobody seems to have posted anything about using VervoortCrossover with OEC. I've been trying to find some code for OEC that would clean compile to make a Custom Indicator, not the usual Strategy to implement it, because I'd like to see it in action before converting an Indicator to an automated trading Strategy. So. Here's an implementation of it as an Indicator for thinkorswim at ThinkScripter Blog Archive Vervoort Crossover where the post gives the attached source code and also the nice graph I've attached as taken from that TOS forum post. I tried compiling that code on OEC as if it was EL and it has syntax errors. Also, since that's just one anonymous person's implementation, I'd really rather have the algorithm taken from Vervain's article or an "official" tradestation implementation. Also, instead of changing colors of the indicator line to indicate crossover, I'd like to be able to put symbols on the graph at the crossover points just like they did in the attached graph for Range Exhaustion of my Part 2 where they used +1 and -1 for buy and sell signals.

tradestation members can download a free file named VervoortCrossover.ELD compiled in EasyLanguage code for tradestation that's probably an accurate implementation. But I believe that file is a *Strategy* that gives Buy/Sell trade signals, while what I'm looking for is an *Custom Indicator* for OEC that I can see on a graph and then use OEC Custom Alerts to play a WAV file and give a popup when those crossovers happen. If the bool variables Buy/Sell are available in a script that compiles in OEC, it would be very easy for me to have Custom Alerts test for them and, eventually, maybe use it as a trading system.

I've been posting on trader message boards and Googleing to find financial software developers who can give me a VervainCrossover indicator script that compiles with OEC ... but nobody i've found seems interested because none of them work with OEC. I could probably do it myself with a lot of learning curve if i get tradestation and get VervoortCrossover to work on TS, and then port the script over to OEC, but that would require installing and learning TS but I'd rather just stick with OEC because I have used way too many platforms this year and don't want to learn another one and have it clog up my PC with its DLLs everywhere as most of them have done in the past.
------------
Part 2: (an interesting and unique approach to finding tops and bottoms)

If I could get Vervain's algorithm running on OEC and have the source code, I could probably adapt the source code given here for an interesting approach to finding near-term tops and bottoms based on oversold or overbought conditions: Counter-Trend Trading with Simple Range Exhaustion System | NeoTicker Blog . The graph from that blog post is also attached, mostly to show how that author uses +1 and -1 to indicate buy and sell points as an alternative to changing the color of the price line. While the Vervoort graph changes the MA from red to green to signal a crossover, an alternative would be to put symbols on the graph at the crossover points. I'd really like to try out the range-exhaustion algorithm on OEC and also have it play a WAV file when those buy and sell points occur. Since this range-exhaustion algorithm is not public domain, you'd almost surely need permission from the author, Lawrence Chan (and maybe Neoticker also) before you could "publish it for commercial purposes."
-----------
Part 3: (a very "simple" Custom Indicator to alert for MA convergences Last price in order to signal a possible reversal point)

I spend a lot of time flipping back and forth between all my charts looking for points where moving averages of different lengths converge to a point. I've previously posted a graph of 6BZ9 on BoE's recent announcement day with MAs of 21, 42, 84, and 168 as their period lengths. I'd like to have OECTrader play a WAV file to alert me when either of two, three, or four (as set by Properties) of the EMAs converge with the last price, but it's a little complicated to put into Custom Alerts because the EMAs won't usually be *exactly* equal. It would be a tremendous help if I could program a Custom Indicator to tell me when the harmonic-length EMAs converge to a point with Last price usually starting a fan-shaped expansion that usually accelerates rapidly. It would be nice if the "exactness" could be made an adjustable parameter under Properties so the script doesn't need to be recompiled to change it. Call that variable SLOP (positive int). If the three moving averages are MA1, MA2, MA3, and LAST is the price, with everything in int ticks, then i'd code up this script to sound a Custom Alarm to alert me to look at the chart and consider taking the trade whenever ALARM becomes true in this pseudocode that's always testing convergence of a hard-wired three harmonic EMAs (a later version will allow the number of harmonic EMAs to be specified under Properties as either 2, 3, or 4). Making the # of EMAs variable makes testing their convergence more complex than adding two and subtracting two to compare the sum against SLOP. To take it even further, I'd eventually like to have the script pop up a prepopulated bracket order for this commodity to either buy or sell, depending on whether LAST is above or below the EMA convergence point. Here is some pseudocode:

bool ALARM = false
int SLOP= {inherited from Properties of graph's Custom Indicator, allow values of 0 to 10}
int LAST = {last price of commodity on this graph in NINT ticks, inherited from graph}
int BASEPERIOD = {user defined period length of shortest EMA, from Properties}

int MA1 = "EMA for BASEPERIOD" {short EMA inherited from graph}
int MA2 = "EMA for BASEPERIOD*2" {medium EMA inherited from graph}
int MA3 = "EMA for BASEPERIOD*4" {long EMA inherited from graph}

if [ABS(MA1 - MA2 + MA3 - LAST) <= SLOP]
then ALARM = TRUE
else ALARM = FALSE
endif
David79 is offline  
Reply With Quote
Old 09-13-2009, 10:40 AM   #14

Join Date: Jan 2008
Location: San Francisco
Posts: 397
Ignore this user

Thanks: 17
Thanked 340 Times in 158 Posts

Re: Getting Started in Open Ecry With EasyLanguage

david,

part of what you are talking about is very simple --- the other part I don't think is doable in OEC, though I am not an expert so I couldn't say for sure.

plotting an alert to tell you that 4 emas are near each is very easy. here is a first pass (skeleton code). Easylanguage is very simple.

there is an application in tradestation called Radarscreen that would work for scanning multiple contracts for the same custom indicator set-up.

when you ask for help, you need to come up with a specific rule for what constitutes a set-up. I have given an example here just as an idea -- start with the longest ema +/- 0.5 ATR(10) and whenever the other emas close within that range, plot a 1 in a histogram on the bottom. I spent about 2 seconds thinking about this so you will want to think about what rule would work better: # of ticks or Average true range are some typical ways to do this (ATR better if using contracts with widely varying absolute price levels).

vars: uboundEMA(0), lboundEMA(0), ema20(0), ema40(0), ema80(0), ema160(0);

lboundEMA=xaverage(close, 160) - 0.5*avgtruerange(10);
uboundEMA=xaverage(close, 160) + 0.5*avgtruerange(10);

ema20 = xaverage(c, 20);
ema40 = xaverage(c, 40);
ema80 = xaverage(c, 80);
ema160 = xaverage(c, 160);

condition1 = ema20>lboundEMA AND ema20<uboundEMA;
condition2 = ema40>lboundEMA AND ema40<uboundEMA;
condition3 = ema80>lboundEMA AND ema80<uboundEMA;
condition4 = ema160>lboundEMA AND ema160<uboundEMA;

if condition1 and condition2 and condition3 and condition4 then
plot1(1,"set-up");

Attached Thumbnails
Getting Started in Open Ecry With EasyLanguage-bowtie-image.png  
Frank is offline  
Reply With Quote
The Following User Says Thank You to Frank For This Useful Post:
Tams (09-13-2009)

Reply

Tags
easylanguage, oec

Thread Tools
Display Modes Help Others By Rating This Thread
Help Others By Rating This Thread:

Similar Threads
Thread Thread Starter Forum Replies Last Post
Review of Open ECry (futures broker) brownsfan019 Brokers and Data Feeds 83 10-16-2014 11:40 AM
Open ECry Wish List Thread brownsfan019 Open E Cry 140 08-30-2014 11:06 AM
Buy at Open with Easylanguage cleon Coding Forum 5 03-02-2011 12:16 PM
Open ECry Data Feed Tresor Open E Cry 10 04-21-2009 12:04 AM
Getting Started with Tradestation EasyLanguage cleon Introduce Yourself 2 02-13-2009 07:09 PM

All times are GMT -4. The time now is 06:19 AM.
Copyright ©2000 - 2014, Jelsoft Enterprises Ltd.
CS to VB integration by DeskLancer
2006-2011 Traders Laboratory, All Rights Reserved.