R2_Arrows_v3

Author: Copyright � 2007 , NOT FOR SALE , transport_david , David W Honeywell
R2_Arrows_v3
Indicators Used
Moving average indicatorRelative strength index
Miscellaneous
Implements a curve of type %1
0 Views
0 Downloads
0 Favorites
R2_Arrows_v3
//+--------------------------------------------------------------------------+
//|                                                         R2_Arrows_v3.mq4 |
//|    Copyright © 2007 , NOT FOR SALE , transport_david , David W Honeywell |
//| http://finance.groups.yahoo.com/group/MetaTrader_Experts_and_Indicators/ |
//+--------------------------------------------------------------------------+

#property copyright "Copyright © 2007 , NOT FOR SALE , transport_david , David W Honeywell"
#property link      "http://finance.groups.yahoo.com/group/MetaTrader_Experts_and_Indicators/"

//+-------------------------------------------------------------------------------------------------+
//| http://www.tradingmarkets.com/.site/stocks/commentary/editorial/The-Improved-R2-Strategy.cfm    |
//| introduced to http://finance.groups.yahoo.com/group/MetaTrader_Experts_and_Indicators/          |
//| by Peter , blackprinzze , blackprinzze@yahoo.com                                                |
//| for a complimentary build in .mq4                                                               |
//| I have included the option to check Day 3 Rsi Levels .                                          |
//+-------------------------------------------------------------------------------------------------+

#property indicator_chart_window
#property indicator_buffers 4
#property indicator_color1 DodgerBlue
#property indicator_color2 White
#property indicator_color3 Coral
#property indicator_color4 SlateGray

//|+---------------------------------------------------+
//---- input parameters

extern string Ma                  = "---------------";

extern int    Ma_Periods          = 200;
extern int    Ma_Applied_Price    =   0;

//|+---------------------------------------------------+
extern string Rsi                 = "---------------";

extern int    RsiPeriods          =   2;
extern int    Rsi_Applied_Price   =   0;

//|+---------------------------------------------------+
extern string Buy_Rsi_Levels      = "---------------";

extern int    Day_1_Rsi_Below     =  65;
extern int    Day_3_Rsi_Below     = 100;

//|+---------------------------------------------------+
extern string Sell_Rsi_Levels     = "---------------";

extern int    Day_1_Rsi_Above     =  35;
extern int    Day_3_Rsi_Above     =   0;

//|+---------------------------------------------------+
extern string Close_Rsi           = "---------------";

extern int    CloseBuyIfRsiAbove  =  75;
extern int    CloseSellIfRsiBelow =  25;

//|+---------------------------------------------------+
//---- buffers

double ExtMapBuffer0[];
double ExtMapBuffer1[];
double ExtMapBuffer2[];
double ExtMapBuffer3[];

//+------------------------------------------------------------------+
//| Custom indicator initialization function                         |
//+------------------------------------------------------------------+

int init()
  {
//---- indicators
   
   IndicatorBuffers(4);
   
   SetIndexEmptyValue(0,0.0);
   SetIndexStyle(0,DRAW_LINE);
   SetIndexBuffer(0,ExtMapBuffer0);
   
   SetIndexEmptyValue(1,0.0);
   SetIndexStyle(1,DRAW_ARROW);
   SetIndexArrow(1,233);
   SetIndexBuffer(1,ExtMapBuffer1);
   
   SetIndexEmptyValue(2,0.0);
   SetIndexStyle(2,DRAW_ARROW);
   SetIndexArrow(2,234);
   SetIndexBuffer(2,ExtMapBuffer2);
   
   SetIndexEmptyValue(3,0.0);
   SetIndexStyle(3,DRAW_ARROW);
   SetIndexArrow(3,172);
   SetIndexBuffer(3,ExtMapBuffer3);
   
   IndicatorShortName("R2_Arrows_v3");
   
//----
   return(0);
  }

//+------------------------------------------------------------------+ 
//| Custor indicator deinitialization function                       |
//+------------------------------------------------------------------+

int deinit()
  {
//---- 
   
//----
   return(0);
  } 

//+------------------------------------------------------------------+
//| Custom indicator iteration function                              |
//+------------------------------------------------------------------+ 

int start()
  {
   
//---- 
   for (int i=Bars; i>=0; i--)
      {
      
      //|+---------------------------------------------------+
      double prevtime;
      if (prevtime != Time[0]) { RefreshRates(); prevtime=Time[0]; } 
      
      //|+---------------------------------------------------+
      double Trend_Ma = iMA(Symbol(),0,Ma_Periods,0,MODE_SMA,Ma_Applied_Price,i+1);
      
      ExtMapBuffer0[i]=Trend_Ma;
      
      //|+---------------------------------------------------+
      double Day1 = iRSI(Symbol(),0,RsiPeriods,Rsi_Applied_Price,i+3);
      double Day2 = iRSI(Symbol(),0,RsiPeriods,Rsi_Applied_Price,i+2);
      double Day3 = iRSI(Symbol(),0,RsiPeriods,Rsi_Applied_Price,i+1);
      
      //|+---------------------------------------------------+
      //- Buy Arrows ---
      if ( (Close[i+1] > Trend_Ma) && (Day1 < Day_1_Rsi_Below) && (Day2 < Day1) && (Day3 < Day2) && (Day3 < Day_3_Rsi_Below) )
         ExtMapBuffer1[i]=Low[i]-(20*Point);//Low arrow Buy 
      
      //|+---------------------------------------------------+
      //- Sell Arrows ---
      if ( (Close[i+1] < Trend_Ma) && (Day1 > Day_1_Rsi_Above) && (Day2 > Day1) && (Day3 > Day2) && (Day3 > Day_3_Rsi_Above) )
         ExtMapBuffer2[i]=High[i]+(20*Point);//High arrow Sell
      
      //|+---------------------------------------------------+
      //- Close Trades Marker ---
      if ( (Close[i+1] < Trend_Ma) && (Day3 < CloseSellIfRsiBelow) )
         ExtMapBuffer3[i]=Low[i]-(50*Point);
      
      if ( (Close[i+1] > Trend_Ma) && (Day3 > CloseBuyIfRsiAbove) )
         ExtMapBuffer3[i]=High[i]+(50*Point);
      
      }
     
//----
   return(0);
  }
//+------------------------------------------------------------------+

Comments

Markdown supported. Formatting help

Markdown Formatting Guide

Element Markdown Syntax
Heading # H1
## H2
### H3
Bold **bold text**
Italic *italicized text*
Link [title](https://www.example.com)
Image ![alt text](image.jpg)
Code `code`
Code Block ```
code block
```
Quote > blockquote
Unordered List - Item 1
- Item 2
Ordered List 1. First item
2. Second item
Horizontal Rule ---