Skip to main content

Rsi Trendline




_SECTION_BEGIN("rSI tRENDLINE");
// RSI TRENDLINE formula ver 1.0

SetBarsRequired(sbrAll, sbrAll);                                                       
TP = Param("Trend Per", 300,2,1000);                                                               
per_RSI= Param("RSI Per", 9, 7, 35,1);
IND =  RSI(per_RSI);                                                                                                     
Center = 50 ;

Plot( RSI(per_RSI), "", 4, 4);    
Plot(50,"",1,1) ;

// CALCULATE  UPTREND

startvalue = LastValue( LLV( IND, TP ) );                                                                         
startbar =  LastValue( ValueWhen( IND == startvalue, BarIndex(), 1) );                     
BP = BarCount - Startbar;                                                                                           

secondvalue =  LastValue( LLV( IND, BP - 5  ) );                                                      
secondbar =  LastValue( ValueWhen( IND == secondvalue, BarIndex(), 1) );           
BP2 = BarCount - secondbar; 

thirdvalue =  LastValue( LLV( IND, BP2 - 5 ) );                                                   
thirdbar =  LastValue( ValueWhen( IND == thirdvalue, BarIndex(), 1) );            
BP3 = BarCount - thirdbar; 

fourthvalue =  LastValue( LLV( IND, BP3 - 5 ) );                                                      
fourthbar =  LastValue( ValueWhen( IND ==fourthvalue, BarIndex(), 1) );        
BP4 = BarCount - fourthbar; 

fifthvalue =  LastValue( LLV( IND, BP4 - 5 ) );                                                   
fifthbar =  LastValue( ValueWhen( IND ==fifthvalue, BarIndex(), 1) );      
BP5 = BarCount - fifthbar; 

sixthvalue =  LastValue( LLV( IND, BP5 - 5 ) );                                            
sixthbar =  LastValue( ValueWhen( IND ==sixthvalue, BarIndex(), 1) );        

Low_1= IIf( BarIndex() == startbar, 80, Null);
Low_2= IIf( BarIndex() == secondbar, 80, Null);
Low_3= IIf( BarIndex() == thirdbar, 80, Null);
Low_4= IIf( BarIndex() == fourthbar, 80, Null);
Low_5= IIf( BarIndex() == fifthbar, 80, Null);
Low_6= IIf( BarIndex() == sixthbar, 80, Null);

b = startvalue ;   
FirstSlope = (secondvalue - b) / (secondbar - startbar) ;
FirstTrendline = FirstSlope * ( BarIndex() - startbar ) + b;                                                            
// Plot(  IIf(  BarIndex() >= startbar  AND FirstTrendline <= 90 , FirstTrendline, Null ) , "FirstTrendline", colorGreen, styleThick +2048 );       

SecondSlope = (thirdvalue - b) / (thirdbar - startbar) ;
SecondTrendline = SecondSlope * ( BarIndex() - startbar ) + b;                                                             

ThirdSlope = (fourthvalue - b) / (fourthbar - startbar) ;
ThirdTrendline = ThirdSlope * ( BarIndex() - startbar ) + b; 

FourthSlope = (fifthvalue - b) / (fifthbar - startbar) ;
FourthTrendline = FourthSlope * ( BarIndex() - startbar ) + b; 

FifthSlope = (sixthvalue - b) / (sixthbar - startbar) ;
FifthTrendline = FifthSlope * ( BarIndex() - startbar ) + b; 

MainSlope = IIf( FirstSlope > SecondSlope,  IIf( SecondSlope > ThirdSlope,  IIf( ThirdSlope > FourthSlope,
 IIf( FourthSlope >  FifthSlope,  FifthSlope, FourthSlope),ThirdSlope), SecondSlope), FirstSlope) ;

MainLine = MainSlope * ( BarIndex() - startbar ) + b;   
Plot(  IIf(  BarIndex() >= startbar, MainLine, Null ) , "MainLine", colorDarkGreen, styleThick ) ;  


IND_Diff = IIf(  BarIndex() >= startbar, abs( IND - MainLine), Null) ;
MainTrendLine_Diff = Param("Difference IND from MainTrendLine", 2.5, 0.5,5,  0.5);

Cond_Buy = IIf( BarIndex() >= Thirdbar AND  IND_Diff  <= MainTrendLine_Diff, IND, 0)  AND  MainLine < 55 ;

PlotShapes( IIf( Cond_Buy, shapeUpArrow , shapeNone ), colorGreen );



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

// CALCULATE  DOWNTREND

starthigh = LastValue( HHV( IND, TP ) );                                                                        
starthighbar =  LastValue( ValueWhen( IND == starthigh, BarIndex(), 1) );               
HBP = BarCount - starthighbar;                                                                                  

secondhigh =  LastValue( HHV( IND, HBP - 5  ) );                                                   
secondhighbar =  LastValue( ValueWhen( IND == secondhigh, BarIndex(), 1) );     
HBP2 = BarCount - secondhighbar; 

thirdhigh =  LastValue( HHV( IND, HBP2 - 5 ) );                                                   
thirdhighbar =  LastValue( ValueWhen( IND == thirdhigh, BarIndex(), 1) );           
HBP3 = BarCount - thirdhighbar; 

fourthhigh =  LastValue( HHV( IND, HBP3 - 5 ) );                                                        
fourthhighbar =  LastValue( ValueWhen( IND ==fourthhigh, BarIndex(), 1) );          
HBP4 = BarCount - fourthhighbar; 

fifthhigh =  LastValue( HHV( IND, HBP4 - 5 ) );                                                  
fifthhighbar =  LastValue( ValueWhen( IND ==fifthhigh, BarIndex(), 1) );        
HBP5 = BarCount - fifthhighbar; 

sixthhigh =  LastValue( HHV( IND, HBP5 - 5 ) );                                               
sixthhighbar =  LastValue( ValueWhen( IND ==sixthhigh, BarIndex(), 1) );          

High_1= IIf( BarIndex() == starthighbar, 90, Null);
High_2= IIf( BarIndex() == secondhighbar, 90, Null);
High_3= IIf( BarIndex() == thirdhighbar, 90, Null);
High_4= IIf( BarIndex() == fourthhighbar, 90, Null);
High_5= IIf( BarIndex() == fifthhighbar, 90, Null);
High_6= IIf( BarIndex() == sixthhighbar, 90, Null);

MainTrendLine_Diff = Param("Difference IND from MainTrendLine", 2.5, 0.5,7,  0.5);

d = starthigh ;   
FirstDownSlope = (secondhigh - d) / (secondhighbar - starthighbar) ;
FirstDownTrendline = FirstDownSlope * ( BarIndex() - starthighbar ) + d;                                                              

SecondDownSlope = (thirdhigh - d) / (thirdhighbar - starthighbar) ;
SecondDownTrendline = SecondDownSlope * ( BarIndex() -  starthighbar ) + d;                                                         

ThirdDownSlope = (fourthhigh - d) / (fourthhighbar - starthighbar) ;
ThirdDownTrendline = ThirdDownSlope * ( BarIndex() - starthighbar ) + d; 

FourthDownSlope = (fifthhigh - d) / (fifthhighbar - starthighbar) ;
FourthDownTrendline = FourthDownSlope * ( BarIndex() - starthighbar ) + d; 

FifthDownSlope = (sixthhigh - d) / (sixthhighbar - starthighbar) ;
FifthDownTrendline = FifthDownSlope * ( BarIndex() - starthighbar ) + d; 

MainDownSlope = IIf( FirstDownSlope < SecondDownSlope,  IIf( SecondDownSlope < ThirdDownSlope, 
IIf( ThirdDownSlope < FourthDownSlope,  IIf( FourthDownSlope <  FifthDownSlope, FifthDownSlope, FourthDownSlope),ThirdDownSlope), SecondDownSlope), FirstDownSlope) ;

MainDownLine =  IIf( MainDownSlope == 0, Null, MainDownSlope * ( BarIndex() - starthighbar ) + d ) ;   
Plot(  IIf(  BarIndex() >=  starthighbar, MainDownLine, Null ) , "Main_DOWN_Line", colorViolet, styleThick ) ;   

IND_Diff = IIf(  BarIndex() >=  starthighbar, abs( IND - MainDownLine), Null) ;

Cond_Sell = IIf( BarIndex() >= Thirdbar AND  IND_Diff  <= MainTrendLine_Diff, IND, 0)  AND  MainDownLine > 45 ;

PlotShapes( IIf( Cond_Sell, shapeDownArrow , shapeNone ), colorRed );


Title =  Name() + "\\c17" +   "  " +"\\c12" + "RSI" +  " " + per_RSI   ;
_SECTION_END();

Comments

Popular posts from this blog

TB 100.1.1 tsf tema linear

_SECTION_BEGIN("Magnified Market Price"); //by Vidyasagar, vkunisetty@yahoo.com// SetChartOptions(0,chartShowArrows|chartShowDates); FS=Param("Font Size",30,11,100,1); GfxSelectFont("Times New Roman", FS, 700, True ); GfxSetBkMode( colorWhite ); GfxSetTextColor( ParamColor("Color",colorWhite) ); Hor=Param("Horizontal Position",750,1,1200,1); Ver=Param("Vertical Position",7,1,830,1); GfxTextOut(""+C , Hor , Ver ); YC=TimeFrameGetPrice("C",inDaily,-1); DD=Prec(C-YC,2); xx=Prec((DD/YC)*100,2); GfxSelectFont("Times New Roman", 11, 700, True ); GfxSetBkMode( colorWhite ); GfxSetTextColor(ParamColor("Color",colorWhite) ); //GfxTextOut("Open - "+O+" High - "+H+" Low - "+L+" Close - "+C, Horr , Verr-14 ); //GraphXSpace = Param("Graph Space",500,-10,500,1); _SECTION_END(); _SECTION_BEGIN("Trend Blaster V1.2"); SetChartBkColor(...

Renko Chart

_SECTION_BEGIN("www.trendnifty.com"); SetBarsRequired(100000,100000); //------------------------------------------------------------------+ // Block 1 | //------------------------------------------------------------------+ VR=ParamToggle("View Renko","Bricks|Lines/Bars",0); FV=Param("Initial size volatility",5,5,5,5); MV=Param("Method calculation volatility",0,0,2,1); PeriodVol=Param("Period calculation volatility",14,2,100,1); Multiplier=Param("Multiplier volatility",1,0.1,10,0.1); MR=ParamToggle("Method Renko","floating|fixed",1); SG=ParamToggle("Show gap","No|Yes",1); CG=ParamColor("Colour show gap",11); MaxBS=Param("Maximum size brick",0,0,10,0.1); MinBS=Param("Minimum size brick",0,0,10,0.1); RenkoUp=ParamColor("Colour Renko upwards",colorGreen); RenkoDown=ParamColor("Colour Renko downwards",colorRed); SB=ParamStyle(...

Daily RSI

_SECTION_BEGIN("Unnamed 2"); ////////////////////////////////////////////////////////////////// TimeFrameSet(inDaily); dRSI = RSI(14); TimeFrameRestore(); TimeFrameSet(inDaily); DailyRSI = RSI(14); TimeFrameRestore(); TimeFrameSet(inDaily); dRSI = RSI(14); TimeFrameRestore(); Plot( TimeFrameExpand(dRSI ,inDaily),"daily RSI 14",colorGreen,styleHistogram|styleThick); Plot( RSI(14),"RSI 14",colorRed,styleThick); Plot( TimeFrameExpand(dRSI ,inDaily),"daily RSI 14",colorGreen); Plot( TimeFrameExpand(DailyRSI ,inDaily),"daily RSI 14",colorBlue); Filter=1; AddColumn( TimeFrameExpand(dRSI ,inDaily), "daily RSI 14"); AddColumn( TimeFrameExpand(dRSI ,inDaily), "daily RSI 14"); ////////////////////////////////////////////////////////////////// _SECTION_END();