0
Views
0
Downloads
0
Favorites
PivotPoints MT04a
//+------------------------------------------------------------------+
//| PV4.mq4 |
//| Jim Arner |
//| |
//+------------------------------------------------------------------+
#property indicator_chart_window
double day_high;
double day_low;
double yesterday_open;
double today_open;
double cur_day;
double prev_day;
//+------------------------------------------------------------------+
//| Custom indicator initialization function |
//+------------------------------------------------------------------+
int init()
{
//---- indicators
//---- indicators
//----
return(0);
}
//+------------------------------------------------------------------+
//| Custor indicator deinitialization function |
//+------------------------------------------------------------------+
int deinit()
{
//---- TODO: add your code here
Comment(" ");
ObjectDelete("P_Line");
ObjectDelete("S1_Line");
ObjectDelete("R1_Line");
ObjectDelete("S2_Line");
ObjectDelete("R2_Line");
ObjectDelete("S3_Line");
ObjectDelete("R3_Line");
ObjectDelete("S0.5_Line");
ObjectDelete("R0.5_Line");
ObjectDelete("S1.5_Line");
ObjectDelete("R1.5_Line");
ObjectDelete("S2.5_Line");
ObjectDelete("R2.5_Line");
//----
return(0);
}
//+------------------------------------------------------------------+
//| Custom indicator iteration function |
//+------------------------------------------------------------------+
int start()
{
int cnt=720;
double yesterday_high;
double yesterday_low;
double yesterday_close;
double P,S0.5,R0.5,S1,R1,S1.5,R1.5,S2,R2,S2.5,R2.5,S3,R3;
//---- TODO: add your code here
//---- Get new daily prices & calculate pivots
day_high=0;
day_low=0;
yesterday_open=0;
today_open=0;
cur_day=0;
prev_day=0;
while (cnt!= 0)
{
if (TimeDayOfWeek(Time[cnt]) == 0)
{
cur_day = prev_day;
}
else
{
cur_day = TimeDay(Time[cnt]);
}
if (prev_day != cur_day)
{
yesterday_close = Close[cnt+1];
today_open = Open[cnt];
yesterday_high = day_high;
yesterday_low = day_low;
day_high = High[cnt];
day_low = Low[cnt];
prev_day = cur_day;
}
if (High[cnt]>day_high)
{
day_high = High[cnt];
}
if (Low[cnt]<day_low)
{
day_low = Low[cnt];
}
cnt--;
}
P = ((yesterday_high + yesterday_low + yesterday_close)/3);
R1 = (2*P)-yesterday_low;
S1 = (2*P)-yesterday_high;
R0.5 = (P+R1)/2;
S0.5 = (P+S1)/2;
R2 = P+(R1-S1);
S2 = P-(R1-S1);
R1.5 = (R1+R2)/2;
S1.5 = (S1+S2)/2;
R3 = (yesterday_high + (2*(P-yesterday_low)));
S3 = (yesterday_low - (2*(yesterday_high-P)));
R2.5 = (R2+R3)/2;
S2.5 = (S2+S3)/2;
Comment("PV3_10","\nR3=",R3,"\nR2.5=",R2.5,"\nR2=",R2,"\nR1.5=",R1.5,"\nR1=",R1,"\nR0.5=",R0.5,"\nP=",P,"\nS0.5=",S0.5,"\nS1=",S1,"\nS1.5=",S1.5,"\nS2=",S2,"\nS2.5=",S2.5,"\nS3=",S3);
ObjectDelete("P_Line");
ObjectDelete("S1_Line");
ObjectDelete("R1_Line");
ObjectDelete("S2_Line");
ObjectDelete("R2_Line");
ObjectDelete("S3_Line");
ObjectDelete("R3_Line");
ObjectDelete("S0.5_Line");
ObjectDelete("R0.5_Line");
ObjectDelete("S1.5_Line");
ObjectDelete("R1.5_Line");
ObjectDelete("S2.5_Line");
ObjectDelete("R2.5_Line");
ObjectCreate("P_Line", OBJ_HLINE,0, CurTime(),P);
ObjectSet("P_Line",OBJPROP_COLOR,OrangeRed);
ObjectSet("P_Line",OBJPROP_STYLE,STYLE_SOLID);
ObjectSet("P_Line",OBJPROP_WIDTH,2);
ObjectCreate("S1_Line", OBJ_HLINE,0, CurTime(),S1);
ObjectSet("S1_Line",OBJPROP_COLOR,Green);
ObjectSet("S1_Line",OBJPROP_STYLE,STYLE_DASH);
ObjectCreate("R1_Line", OBJ_HLINE,0, CurTime(),R1);
ObjectSet("R1_Line",OBJPROP_COLOR,Crimson);
ObjectSet("R1_Line",OBJPROP_STYLE,STYLE_DASH);
ObjectCreate("S2_Line", OBJ_HLINE,0, CurTime(),S2);
ObjectSet("S2_Line",OBJPROP_COLOR,Green);
ObjectSet("S2_Line",OBJPROP_STYLE,STYLE_DASH);
ObjectCreate("R2_Line", OBJ_HLINE,0, CurTime(),R2);
ObjectSet("R2_Line",OBJPROP_COLOR,Crimson);
ObjectSet("R2_Line",OBJPROP_STYLE,STYLE_DASH);
ObjectCreate("S3_Line", OBJ_HLINE,0, CurTime(),S3);
ObjectSet("S3_Line",OBJPROP_COLOR,Green);
ObjectSet("S3_Line",OBJPROP_STYLE,STYLE_SOLID);
ObjectSet("S3_Line",OBJPROP_WIDTH,2);
ObjectCreate("R3_Line", OBJ_HLINE,0, CurTime(),R3);
ObjectSet("R3_Line",OBJPROP_COLOR,Maroon);
ObjectSet("R3_Line",OBJPROP_STYLE,STYLE_SOLID);
ObjectSet("R3_Line",OBJPROP_WIDTH,2);
ObjectCreate("S0.5_Line", OBJ_HLINE,0, CurTime(),S0.5);
ObjectSet("S0.5_Line",OBJPROP_COLOR,Green);
ObjectSet("S0.5_Line",OBJPROP_STYLE,STYLE_DASHDOT);
ObjectCreate("R0.5_Line", OBJ_HLINE,0, CurTime(),R0.5);
ObjectSet("R0.5_Line",OBJPROP_COLOR,Crimson);
ObjectSet("R0.5_Line",OBJPROP_STYLE,STYLE_DASHDOT);
ObjectCreate("S1.5_Line", OBJ_HLINE,0, CurTime(),S1.5);
ObjectSet("S1.5_Line",OBJPROP_COLOR,Green);
ObjectSet("S1.5_Line",OBJPROP_STYLE,STYLE_DASHDOT);
ObjectCreate("R1.5_Line", OBJ_HLINE,0, CurTime(),R1.5);
ObjectSet("R1.5_Line",OBJPROP_COLOR,Crimson);
ObjectSet("R1.5_Line",OBJPROP_STYLE,STYLE_DASHDOT);
ObjectCreate("S2.5_Line", OBJ_HLINE,0, CurTime(),S2.5);
ObjectSet("S2.5_Line",OBJPROP_COLOR,Green);
ObjectSet("S2.5_Line",OBJPROP_STYLE,STYLE_DASHDOT);
ObjectCreate("R2.5_Line", OBJ_HLINE,0, CurTime(),R2.5);
ObjectSet("R2.5_Line",OBJPROP_COLOR,Crimson);
ObjectSet("R2.5_Line",OBJPROP_STYLE,STYLE_DASHDOT);
ObjectsRedraw();
return(0);
}
//+------------------------------------------------------------------+
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
---