[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[amibroker] Re: Convexity, Concavity and their use



PureBytes Links

Trading Reference Links

OK - I will try and be more articulate.

The code you generously developed identified concave and convex 
shapes in the chart, after some initial smoothing. This indicates 
areas where the chart was accelarating or decelerating in either 
an 'up' direction or a'down' direction. You identified these as 
bullstart, bearstart, etc.

I optmizied on both your K paraneter (for smoothing) and T parameter 
(for lookback period) and was able to get nice resutls for indivdual 
stocks, but could not find a robust set of paramters for a basket (in 
this case the NDX100).

This led to a suggestion for 2 possible improvements to the code:

1) A way to identify only 'deep' concaves and convexes - which would 
signal fast acceleration/deceleration, which, presumably would signal 
the start of a short trend. For 'shallow' concaves and convexes, the 
strategy would be to hold position.
2) A more adaptive smoothing algorithm


Cheers,

Steve


--- In amibroker@xxxxxxxxxxxxxxx, "DIMITRIS TSOKAKIS" <TSOKAKIS@xxxx> 
wrote:
> If you have the time, it would be better to give more specific 
> descriptions/codes. This would help the [more than 1000] readers to 
> understand better your text ["optimize", "delta" etc]
> This would also help the progress of this [hopefully interesting] 
> thread.
> Dimitris Tsokakis
> --- In amibroker@xxxxxxxxxxxxxxx, "sidleysh" <steves@xxxx> wrote:
> > DT - thanks, good stuff. Obviously the smoothing algorithm causes 
a 
> > lag in signal, so I am finding good results when I optimize, but 
I 
> > fear I am curve fitting.  (I cannot find a set of coefficents for 
K 
> > and T that work reasonably over the whole market). 
> > 
> > This could be vastly improved by only trading on 'serious' 
> covexities 
> > and concavities, and staying out for the shallow ones. The 
serious 
> > ones could be defined as when today delta is greater than 2* 
> > yesterday's delta, which is greater than 2* the previous day's 
> delta 
> > (or some such). You then stay in the trade (long) until it starts 
> to 
> > descend. 
> > 
> > --- In amibroker@xxxxxxxxxxxxxxx, "Dimitris Tsokakis" 
> <TSOKAKIS@xxxx> 
> > wrote:
> > > An ideal sinusoidal has 4 phases:
> > > 
> > > Convex AND Ascending;// colorDarkGreen
> > > Concave AND Ascending;// colorTurquoise
> > > Concave AND Descending;// colorDarkRed
> > > Convex AND Descending;// colorPink
> > > The IB code illustrates the example 
> > > 
> > > // The 4 phases of an ideal sinusoidal
> > > freq = 1;
> > > y=sin( Cum( freq/10 ) );
> > > t=1;
> > > Convex=(y-Ref(y,-t))/t>=(y-Ref(y,-(t+1)))/(t+1);
> > > Concave=NOT(Convex);
> > > Ascending=y>=Ref(y,-1);
> > > Descending=NOT(ascending);
> > > Bullstart=Convex AND Ascending;
> > > Bullend=Concave AND ascending;
> > > Bearstart=Concave AND Descending;
> > > Bearend=Convex AND Descending;
> > > Color=IIf(Bullstart,colorDarkGreen,IIf
(Bullend,colorTurquoise,IIf
> > (Bearstart,colorDarkRed,colorPink)));
> > > Plot(y,"",Color,8);
> > > 
> > > [see sin.gif]
> > > We shall use a smoothing procedure [IIR2 filter] as close to 
the 
> > sinusoidal as possible. [see IIR2.gif]
> > > Of course the trend characteristics do not give the [-1, +1] 
> > oscillation, but the convexity/concavity are still detectable.
> > > The superimpose of actual price candles gives a more 
descriptive 
> > picture of the 4 phases.
> > > [see 4phases.gif]
> > > The full code is
> > > 
> > > // The 4 phases of a stock graph
> > > // A. Smothing procedure
> > > function IIR2( input, f0, f1, f2 )
> > > {
> > > result[ 0 ] = input[ 0 ];result[ 1 ] = input[ 1 ]; 
> > > for( i = 2; i < BarCount; i++ )
> > > {
> > > result[ i ] = f0 * input[ i ] + f1 * result[ i - 1 ] + f2 * 
result
> [ 
> > i - 2 ]; 
> > > }
> > > return result;
> > > }
> > > C1=C;
> > > k=0.3;
> > > RD=IIR2( C1, 0.3, 1.2+K, -0.5-K);
> > > // B. Convexity definition
> > > y=RD;
> > > t=1;
> > > Convex=(y-Ref(y,-t))/t>=(y-Ref(y,-(t+1)))/(t+1);
> > > Concave=NOT(Convex);
> > > Ascending=y>=Ref(y,-1);
> > > Descending=NOT(ascending);
> > > // C. Trend phases
> > > Bullstart=Convex AND Ascending;// from A to B
> > > Bullend=Concave AND ascending;// from B to C
> > > Bearstart=Concave AND Descending;// from C to D
> > > Bearend=Convex AND Descending;// from D to E
> > > // D. Application
> > > Color=IIf(Bullstart,colorDarkGreen,IIf
(Bullend,colorTurquoise,IIf
> > (Bearstart,colorDarkRed,colorPink)));
> > > Plot(y,"",Color,8+styleThick);
> > > Plot(C,"",47,64);GraphXSpace=5;


------------------------ Yahoo! Groups Sponsor ---------------------~-->
Buy Ink Cartridges or Refill Kits for your HP, Epson, Canon or Lexmark
Printer at MyInks.com. Free s/h on orders $50 or more to the US & Canada.
http://www.c1tracking.com/l.asp?cid=5511
http://us.click.yahoo.com/mOAaAA/3exGAA/qnsNAA/GHeqlB/TM
---------------------------------------------------------------------~->

Send BUG REPORTS to bugs@xxxxxxxxxxxxx
Send SUGGESTIONS to suggest@xxxxxxxxxxxxx
-----------------------------------------
Post AmiQuote-related messages ONLY to: amiquote@xxxxxxxxxxxxxxx 
(Web page: http://groups.yahoo.com/group/amiquote/messages/)
--------------------------------------------
Check group FAQ at: http://groups.yahoo.com/group/amibroker/files/groupfaq.html 

Your use of Yahoo! Groups is subject to http://docs.yahoo.com/info/terms/