Welcome Features News Download Registration Support FAQ Wish list Links
Advanced stock charting and analysis program

AFL Library

This is read-only version of AFL library entry. Ability to add user formulas and comment is only available from members-only area.

Details:

Formula name: Trend Exploration: Slope Moving Average
Author/Uploader: marcus - marcusdavidsson
Date/Time added: 2009-09-20 06:38:06
Origin:
Keywords:
Level: basic
Flags: exploration

DISCLAIMER: Most formulas present in AFL on-line library are submitted by the users and are provided here on an "as is" and "as available" basis. AmiBroker.com makes no representations or warranties of any kind to the contents or the operation of material presented here. We do not maintain nor provide technical support for 3rd party formulas.
Description:

This exploration uses a lot of color and the slope of a moving averages to rank and filter out securities in the exploration window.

Formula:


// I use this moving averige exploration with daily data!  

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

SetOption("NoDefaultColumns", True);
Filter = Status("lastbarinrange");

DTL=140; // DTL = Define Trend Long
DTM=50;	// DTM = Define Trend Medium
DTS=10;  // DTS = Define Trend Short

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

TL=LinRegSlope(MA(C, DTL),2);	 // TL = Trend Long
TM=LinRegSlope(MA(C, DTM),2);  // TM = Trend Medium
TS=LinRegSlope(MA(C, DTS),2);  // TS = Trend Short

TLL=IIf(LinRegSlope(MA(C, DTL),2) > 0,True, False);		
TMM=IIf(LinRegSlope(MA(C, DTM),2) > 0,True, False);		
TSS=IIf(LinRegSlope(MA(C, DTS),2) > 0,True, False);		

TLLL= 
WriteIf(TL>0 AND TL<0.3,"+",
WriteIf(TL>=0.3 AND TL<0.6 ,"+ +", 
WriteIf(TL>=0.6,"+ + +", 
WriteIf(TL<0 AND TL>-0.3,"-",
WriteIf(TL<=-0.3 AND TL>-0.6 ,"- -",
WriteIf(TL<=-0.6,"- - -",""))))));  

TMMM=
WriteIf(TM>0 AND TM<0.3,"+",
WriteIf(TM>=0.3 AND TM<0.6 ,"+ +",
WriteIf(TM>=0.6,"+ + +",
WriteIf(TM<0 AND TM>-0.3,"-",
WriteIf(TM<=-0.3 AND TM>-0.6 ,"- -",
WriteIf(TM<=-0.6,"- - -",""))))));  

TSSS=
WriteIf(TS>0 AND TS<0.3,"+",
WriteIf(TS>=0.3 AND TS<0.6 ,"+ +",
WriteIf(TS>=0.6,"+ + +",
WriteIf(TS<0 AND TS>-0.3,"-",
WriteIf(TS<=-0.3 AND TS>-0.6 ,"- -",
WriteIf(TS<=-0.6,"- - -",""))))));  

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

AddTextColumn( Name(), "ticker", 1, colorDefault,
IIf(TLL==True AND TMM==True AND TSS==True, colorGreen, 
IIf(TLL==False AND TMM==False AND TSS==False, colorRed, colorYellow )),-1 ) ;
AddColumn( DateTime(), "date/time", formatDateTime, colorDefault,
IIf(TLL==True AND TMM==True AND TSS==True, colorGreen, 
IIf(TLL==False AND TMM==False AND TSS==False, colorRed, colorYellow )),-1 ) ;

AddTextColumn( TLLL, "MA"+-DTL, 1 , colorDefault,
IIf( TLL==True, colorGreen, colorRed ),-1 );
AddTextColumn( TMMM, "MA"+-DTM, 1 , colorDefault,
IIf( TMM==True, colorGreen, colorRed ),-1 );
AddTextColumn( TSSS, "MA"+-DTS, 1 , colorDefault,
IIf( TSS==True, colorGreen, colorRed ),-1 );

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

message=
WriteIf(TL>=0.3 AND TM>=0.3 AND
TS>=0.3, "Strong Up Trend",
WriteIf(TL<=-0.3 AND TM<=-0.3 AND
TS<=-0.3, "Strong Down Trend",
WriteIf(TLL==True AND TMM==True AND
TSS==True,"Up Trend",
WriteIf(TLL==False AND TMM==False AND
TSS==False,"Down Trend", "No Trend"))));


AddTextColumn( message, "Overall Trend", 1 , colorDefault,
IIf(TLL==True AND TMM==True AND TSS==True, colorGreen, 
IIf(TLL==False AND TMM==False AND TSS==False, colorRed, colorYellow )),-1 );

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

x = IIf(Cross(LinRegSlope(MA(C, DTL),2),0) OR
Cross(0, LinRegSlope(MA(C, DTL),2) ), True, False); 
y = BarIndex()-ValueWhen(x==True, BarIndex(),1); 

Phase=WriteIf(Y>=400,"Mature",WriteIf(Y>100 AND
Y<400, "Progress", WriteIf(Y<=100, "Initial", "")));

AddTextColumn( Phase, "Trend Phase", 1 ,colorDefault,
IIf(TLL==True AND TMM==True AND TSS==True, colorGreen, 
IIf(TLL==False AND TMM==False AND TSS==False, colorRed, colorYellow )),-1 ) ;

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

Comments=
WriteIf(Y>=400,"Mature trend with risk of bubble",
WriteIf(y<400 AND TLL==True AND TMM==True AND TSS==True,
"Keep on coming baby $",
WriteIf(y<15 AND TLL==True AND TMM==True AND TSS==True OR
TLL==False AND TMM==False AND TSS==False,
"Are you going to grow up and become a big boy?",
WriteIf(y<400 AND TLL==False AND TMM==False AND TSS==False,
"Keep on coming baby $$",
WriteIf(TLL==True AND TMM==True AND TSS==False OR 
TLL==False AND TMM==False AND TSS==True,
"Risk for short term reversal",
WriteIf(TLL==True AND TMM==False AND TSS==True OR
TLL==False AND TMM==True AND TSS==False,
"trading range-avoid",
"live to trade another day")))))); 
			

AddTextColumn( Comments, "Comments", 1,colorDefault,
IIf(TLL==True AND TMM==True AND TSS==True, colorGreen, 
IIf(TLL==False AND TMM==False AND TSS==False, colorRed, colorYellow )),-1 ) ;

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

Comments:


About | Privacy | Terms of Use | Contact information
Copyright © 2001 AMIBROKER.COM