0
Views
0
Downloads
0
Favorites
Lines HiLo_ Periodical
//+------------------------------------------------------------------+
//| Lines_HiLo_Periodical.mq4 |
//|
//|
//+------------------------------------------------------------------+
#property copyright "TradeForex"
#property link ""
#property indicator_chart_window
//extern int Lookback_Period = 1
extern int Days_into_Curr_Week = 1;
extern int Days_into_Curr_Mnth = 1;
extern int Days_into_Curr_Year = 109;
extern int _Days_into_Curr_Year_To_May31_ = 109;
extern int No_of_Days_in_Prev_Wk = 5;
extern int Days_in_Prev_Month = 23;
extern int Days_in_Prev_Year = 245;
//int DayOfYear();
//double Curr_Yr_Daily_Bars_To_Today = 0;
double Daily_Period_Low=0;
double Daily_Period_High=0;
double Daily_Period_Low_Line;
double Daily_Period_High_Line;
double Curr_Wk_Period_High = 0;
double Curr_Wk_Period_Low = 0;
double Prev_Wk_Period_High = 0;
double Prev_Wk_Period_Low = 0;
double Curr_Wk_Period_High_Line;
double Curr_Wk_Period_Low_Line;
double Prev_Wk_Period_High_Line;
double Prev_Wk_Period_Low_Line;
double Curr_Month_Period_Low=0;
double Curr_Month_Period_High=0;
double Curr_Month_Period_Low_Line;
double Curr_Month_Period_High_Line;
double Prev_Month_Period_Low=0;
double Prev_Month_Period_High=0;
double Prev_Month_Period_Low_Line;
double Prev_Month_Period_High_Line;
double Curr_Year_Period_Low=0;
double Curr_Year_Period_High=0;
double Curr_Year_Period_Low_Line;
double Curr_Year_Period_High_Line;
double Prev_Year_Period_Low=0;
double Prev_Year_Period_High=0;
double Prev_Year_Period_Low_Line;
double Prev_Year_Period_High_Line;
//+------------------------------------------------------------------+
//| Custom indicator initialization function |
//+------------------------------------------------------------------+
int init()
{
return(0);
}
//+------------------------------------------------------------------+
//| Custor indicator deinitialization function |
//+------------------------------------------------------------------+
int deinit()
{
return(0);
}
//+------------------------------------------------------------------+
//| Custom indicator iteration function |
//+------------------------------------------------------------------+
int start()
{
Daily_Period_High =High[Highest(NULL,0,MODE_HIGH,1,1)];
Daily_Period_Low =Low[Lowest(NULL,0,MODE_LOW,1,1)];
Daily_Period_Low_Line = (Daily_Period_Low );
Daily_Period_High_Line = (Daily_Period_High );
Curr_Wk_Period_High =High[Highest(NULL,0,MODE_HIGH,Days_into_Curr_Week,0 )];
Curr_Wk_Period_Low =Low[Lowest(NULL,0,MODE_LOW,Days_into_Curr_Week,0 )];
Prev_Wk_Period_High =High[Highest(NULL,0,MODE_HIGH,No_of_Days_in_Prev_Wk,Days_into_Curr_Week)];
Prev_Wk_Period_Low =Low[Lowest(NULL,0,MODE_LOW,No_of_Days_in_Prev_Wk,Days_into_Curr_Week)];
Curr_Wk_Period_High_Line = (Curr_Wk_Period_High );
Curr_Wk_Period_Low_Line = (Curr_Wk_Period_Low );
Prev_Wk_Period_High_Line = (Prev_Wk_Period_High );
Prev_Wk_Period_Low_Line = (Prev_Wk_Period_Low );
Curr_Month_Period_High =High[Highest(NULL,0,MODE_HIGH,Days_into_Curr_Mnth,0)];
Curr_Month_Period_Low =Low[Lowest(NULL,0,MODE_LOW,Days_into_Curr_Mnth,0)];
Curr_Month_Period_Low_Line = (Curr_Month_Period_Low );
Curr_Month_Period_High_Line = (Curr_Month_Period_High );
Prev_Month_Period_High =High[Highest(NULL,0,MODE_HIGH,Days_in_Prev_Month,Days_into_Curr_Mnth)];
Prev_Month_Period_Low =Low[Lowest(NULL,0,MODE_LOW,Days_in_Prev_Month,Days_into_Curr_Mnth)];
Prev_Month_Period_Low_Line = (Prev_Month_Period_Low );
Prev_Month_Period_High_Line = (Prev_Month_Period_High );
Curr_Year_Period_High =High[Highest(NULL,0,MODE_HIGH,Days_into_Curr_Year,0)];
Curr_Year_Period_Low =Low[Lowest(NULL,0,MODE_LOW,Days_into_Curr_Year,0)];
Curr_Year_Period_Low_Line = (Curr_Year_Period_Low );
Curr_Year_Period_High_Line = (Curr_Year_Period_High );
Prev_Year_Period_High =High[Highest(NULL,0,MODE_HIGH,Days_in_Prev_Year,Days_into_Curr_Year)];
Prev_Year_Period_Low =Low[Lowest(NULL,0,MODE_LOW,Days_in_Prev_Year,Days_into_Curr_Year)];
Prev_Year_Period_Low_Line = (Prev_Year_Period_Low );
Prev_Year_Period_High_Line = (Prev_Year_Period_High );
{
SetLevel("Current Week High", Curr_Wk_Period_High_Line, Salmon); //Green
SetLevel("Current Week Low", Curr_Wk_Period_Low_Line , Salmon); //G
SetLevel("Previous Week High", Prev_Wk_Period_High_Line, LightSalmon); //Green
SetLevel("Previous Week Low", Prev_Wk_Period_Low_Line, LightSalmon); //G
SetLevel("Current Months High", Curr_Month_Period_High_Line, Green); //Green
SetLevel("Current Months Low", Curr_Month_Period_Low_Line, Green); //G
SetLevel("Previous Months High", Prev_Month_Period_High_Line, LightGreen); //Green
SetLevel("Previous Months Low", Prev_Month_Period_Low_Line, LightGreen); //G
SetLevel("Current Year High", Curr_Year_Period_High_Line, Gold); //Green
SetLevel("Current Year Low", Curr_Year_Period_Low_Line, Gold); //G
SetLevel("Previous Year High", Prev_Year_Period_High_Line, Beige); //Green
SetLevel("Previous Year Low", Prev_Year_Period_Low_Line, Beige); //G
SetLevel("Yesterdays High", Daily_Period_High_Line, Blue); //Blue
SetLevel("Yesterdays Low", Daily_Period_Low_Line, Blue); //Blue
}
return(0);
}
void SetLevel(string text, double level, color col1)
{
string labelname= text + " Label";
string linename= text + " Line";
if (ObjectFind(labelname) != 0) {
ObjectCreate(labelname, OBJ_TEXT, 0, Time[20], level);
ObjectSetText(labelname, " " + text, 8, "Arial", White);
}
else {
ObjectMove(labelname, 0, Time[20], level);
}
if (ObjectFind(linename) != 0) {
ObjectCreate(linename, OBJ_HLINE, 0, Time[40], level);
ObjectSet(linename, OBJPROP_STYLE, STYLE_SOLID);
ObjectSet(linename,OBJPROP_LEVELWIDTH, 5);
ObjectSet(linename, OBJPROP_COLOR, col1);
}
else {
ObjectMove(linename, 0, Time[40], level);
}
}
Comments
Markdown Formatting Guide
# H1
## H2
### H3
**bold text**
*italicized text*
[title](https://www.example.com)

`code`
```
code block
```
> blockquote
- Item 1
- Item 2
1. First item
2. Second item
---