0% found this document useful (0 votes)
234 views3 pages

Trendline Breakout Trading System

This document contains code for identifying patterns in price data such as wedges, triangles, and channels. It calculates trendlines for support and resistance and colors the chart bars based on breaks of the trendlines. Text columns are added to annotate the chart with the identified patterns and breakout directions.
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as TXT, PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
234 views3 pages

Trendline Breakout Trading System

This document contains code for identifying patterns in price data such as wedges, triangles, and channels. It calculates trendlines for support and resistance and colors the chart bars based on breaks of the trendlines. Text columns are added to annotate the chart with the identified patterns and breakout directions.
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as TXT, PDF, TXT or read online on Scribd
You are on page 1/ 3

//www.aflcode.

com
_SECTION_BEGIN("Pattern_Recognition_with_Shading");
//Pattern Recognition graph with shading

/*TRENDLINES BREAKOUT*/

x = Cum(1);

per = Param("Percent",3,1,5,1);

s1=L;

s11=H;

pS = TroughBars( s1, per, 1 ) == 0;

endt= LastValue(ValueWhen( pS, x, 1 ));

startt=LastValue(ValueWhen( pS, x, 2 ));

endS = LastValue(ValueWhen( pS, s1, 1 ) );

startS = LastValue( ValueWhen( pS, s1, 2 ));

dtS =endt-startt;

aS = (endS-startS)/dtS;

bS = endS;

trendlineS = aS * ( x -endt ) + bS;

pR = PeakBars( s11, per, 1 ) == 0;

endt1= LastValue(ValueWhen( pR, x, 1 ));

startt1=LastValue(ValueWhen( pR, x, 2 ));

endR = LastValue(ValueWhen( pR, s11, 1 ) );

startR = LastValue( ValueWhen( pR, s11, 2 ));

DTR=ENDT1-STARTT1;

aR = (endR-startR)/dtR;

bR = endR;

trendlineR = aR * ( x -endt1 ) + bR;

BEGIN=Min(STARTT,STARTT1);

TRS = IIf(x>BEGIN-10,trendlineS,-1e10);

TRR = IIf(x>BEGIN-10,trendlineR,-1e10);
Condcolor=(Cross(C,trendlineR) AND X>ENDT1) OR (Cross(trendlineS,C) AND

X>ENDT);

BarColor=IIf(Condcolor,7,1);

Plot(C,"Close",BarColor,styleCandle);

Plot(TRS,"Support",colorYellow,styleLine);

Plot(TRR,"Resist",colorYellow,styleLine);

/////////////////////////////////////

// Shading //

////////////////////////////////////

fill=Param("style",2,1,2,1);

style=IIf(fill==1,styleHistogram,IIf(fill==2,styleArea,Null));

x=IIf(trs > trr,trr,trs);

Plot(x,"",colorLightGrey,style);

Plot(trr,"",colorPink,style);

////////////////////////////////////////////

// Pattern Recognition in title bar //

///////////////////////////////////////////

Lowline=Ends-starts;

Highline=endr-startr;

Wedge=IIf(Highline <0 AND Lowline > 0,1,0);

DecendingTriangle=IIf(Highline < 0 AND Lowline==0,1,0);

AscendingTriangle=IIf(Highline==0 AND Lowline > 0,1,0);

DownChannel=IIf(Highline<0 AND Lowline<0,1,0);

UpChannel=IIf(Highline>0 AND Lowline>0,1,0);

BroadeningWedge=IIf(Highline > 0 AND Lowline < 0,1,0);

///////////////////////////////////

// Bullish or Bearish breakout //

//////////////////////////////////
BullishBreakout=Cross(C,trendlineR);

BearishBreakout=Cross(trendlineS,C);

Title=Name()+ WriteIf(wedge==1," Wedge","")+WriteIf(DecendingTriangle==1,"


Decending Triangle","")+WriteIf(AscendingTriangle==1,"Ascending
Triangle","")/*+WriteVal(Lowline)*/+WriteIf(DownChannel==1," Downward Sloping
Channel","")+WriteIf(UpChannel==1," Upward Sloping Channel","")
+WriteIf(broadeningWedge==1," Broadening Wedge","")+"\n"+EncodeColor(colorGreen)
+WriteIf(bullishbreakout,"Bullish Breakout",EncodeColor(colorRed)
+WriteIf(bearishbreakout,"Bearish Breakout",""))/*+WriteVal(highline)*/;

/////////////////////////////////////

// Automatic Analysis //

////////////////////////////////////

Filter=AscendingTriangle OR DecendingTriangle OR Wedge OR DownChannel OR UpChannel


OR BroadeningWedge OR Bullishbreakout OR bearishbreakout;

AddTextColumn(WriteIf(bullishbreakout,"bullish Breakout",""),"BullBreak");

AddTextColumn(WriteIf(bearishBreakout,"Bearish Breakout",""),"BearBreak");

AddTextColumn(WriteIf(ascendingtriangle,"Ascending
Triangle",WriteIf(decendingtriangle,"Decending
Triangle",WriteIf(Wedge,"Wedge",WriteIf(DownChannel,"Down
Channel",WriteIf(UpChannel,"Up Channel",WriteIf(BroadeningWedge,"Broadening
Wedge","")))))),"Pattern");

AddColumn(C,"Close");

_SECTION_END();

You might also like