Price Data Components
0
Views
0
Downloads
0
Favorites
i-DRProjections_v[1][1].0.1_v2
//+------------------------------------------------------------------+
//| i-DRProjections.mq4 |
//| Êèì Èãîðü Â. aka KimIV |
//| http://www.kimiv.ru |
//| 27.08.2005 v.0.0 ïî ïðîñüáå $anto$'à |
//| Èíäèêàòîð Daily Range Projections |
//| Ïðîãíîçèðîâàíèå äíåâíûõ äèàïàçîíîâ öåí |
//| Àâòîð èäåè Òîìàñ Äåìàðê |
//| 29.08.2005 v.0.1 Äîðàáîòêà Aleks78 |
//+------------------------------------------------------------------+
#property copyright "Êèì Èãîðü Â. aka KimIV"
#property link "http://www.kimiv.ru"
//----
#property indicator_chart_window
#property indicator_buffers 2
#property indicator_color1 Blue
#property indicator_color2 Salmon
//------- Âíåøíèå ïàðàìåòðû ------------------------------------------
extern int NumberOfDay =10; // Êîëè÷åñòâî äíåé
extern bool ShowTomorrow=True; // Ïîêàçûâàòü çàâòðà
//------- Áóôåðû èíäèêàòîðà ------------------------------------------
double MaxDay[];
double MinDay[];
//+------------------------------------------------------------------+
//| Custom indicator initialization function |
//+------------------------------------------------------------------+
void init()
{
if (ShowTomorrow)
{
ObjectCreate("LineHi", OBJ_TREND, 0, 0,0, 0,0);
ObjectCreate("LineLo", OBJ_TREND, 0, 0,0, 0,0);
}
SetIndexBuffer(0, MaxDay);
SetIndexStyle (0, DRAW_LINE, STYLE_SOLID, 1);
SetIndexBuffer(1, MinDay);
SetIndexStyle (1, DRAW_LINE, STYLE_SOLID, 1);
Comment("");
}
//+------------------------------------------------------------------+
//| Custor indicator deinitialization function |
//+------------------------------------------------------------------+
void deinit()
{
ObjectDelete("LineHi");
ObjectDelete("LineLo");
Comment("");
}
//+------------------------------------------------------------------+
//| Custom indicator iteration function |
//+------------------------------------------------------------------+
int start()
{
double po, ph, pl, pc, x;
double MaxDay1, MinDay1, OpenDay1, CloseDay1; //+++
int currDay, i=0, j=0;
if (Period()>240)
{
Comment("Èíäèêàòîð i-DRProjections íå ïîääåðæèâàåò ÒÔ áîëåå Í4 !");
return;
}
while(i<=NumberOfDay)
{
if (currDay!=TimeDay(Time[j]))
{
po=iOpen (NULL, 1440, i+1);
ph=iHigh (NULL, 1440, i+1);
pl=iLow (NULL, 1440, i+1);
pc=iClose(NULL, 1440, i+1);
if (pc<po) x=(ph + pl + pc + pl)/2;
if (pc>po) x=(ph + pl + pc + ph)/2;
if (pc==po) x=(ph + pl + pc + pc)/2;
i++;
}
currDay=TimeDay(Time[j]);
MaxDay[j]=x - pl;
MinDay[j]=x - ph;
j++;
}
//----
if (ShowTomorrow)
{
MaxDay1 =MarketInfo(Symbol(),MODE_HIGH);
MinDay1 =MarketInfo(Symbol(),MODE_LOW);
OpenDay1 =iOpen (NULL, 1440, 0);
CloseDay1=Bid;
//----
if (CloseDay1<OpenDay1) x=(MaxDay1 + MinDay1 + CloseDay1 + MinDay1)/2;
if (CloseDay1>OpenDay1) x=(MaxDay1 + MinDay1 + CloseDay1 + MaxDay1)/2;
if (CloseDay1==OpenDay1) x=(MaxDay1 + MinDay1 + CloseDay1 + CloseDay1)/2;
//----
ObjectSet("LineHi",OBJPROP_TIME1, Time[1]);
ObjectSet("LineLo",OBJPROP_TIME1, Time[1]);
ObjectSet("LineHi",OBJPROP_PRICE1, x - MinDay1);
ObjectSet("LineLo",OBJPROP_PRICE1, x - MaxDay1);
ObjectSet("LineHi",OBJPROP_TIME2, CurTime());
ObjectSet("LineLo",OBJPROP_TIME2, CurTime());
ObjectSet("LineHi",OBJPROP_PRICE2, x - MinDay1);
ObjectSet("LineLo",OBJPROP_PRICE2, x - MaxDay1);
ObjectSet("LineHi",OBJPROP_COLOR, indicator_color1);
ObjectSet("LineLo",OBJPROP_COLOR, indicator_color2);
ObjectSet("LineHi",OBJPROP_RAY, True);
ObjectSet("LineLo",OBJPROP_RAY, True);
ObjectSet("LineHi",OBJPROP_STYLE, STYLE_DOT);
ObjectSet("LineLo",OBJPROP_STYLE, STYLE_DOT);
}
}
//+------------------------------------------------------------------+
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
---