Price Data Components
0
Views
0
Downloads
0
Favorites
GapView
//+------------------------------------------------------------------+
//| Sonar.mq4 |
//| fartarantula |
//| |
//+------------------------------------------------------------------+
#property copyright "fartarantula"
#property link ""
#property indicator_chart_window
extern bool Ïîêàçûâàòü_óðîâíè_ãýïà=true;
extern bool Ïîêàçûâàòü_äàòó_ãýïà=true;
extern bool Ãýï_M5=true;
extern color UplineM5=Red;
extern color DwnlineM5=Blue;
extern bool Ãýï_M15=false;
extern color UplineM15=Green;
extern color DwnlineM15=BlueViolet;
extern bool Ãýï_M30=false;
extern color UplineM30=Yellow;
extern color DwnlineM30=DarkSlateBlue;
extern bool Ãýï_H1=false;
extern color UplineH1=Sienna;
extern color DwnlineH1=DarkSlateGray;
extern bool Ãýï_H4=false;
extern color UplineH4=Maroon;
extern color DwnlineH4=SaddleBrown;
extern bool Ãýï_D1=false;
extern color UplineD1=MediumVioletRed;
extern color DwnlineD1=OliveDrab;
extern bool Ãýï_W1=false;
extern color UplineW1=SpringGreen;
extern color DwnlineW1=Teal;
extern int ÄàëüíîñòüÃýïîâ=60;
extern int Òî÷íîñòü_öåíû=4;
int init()
{
ObjectsDeleteAll(0,OBJ_HLINE);
return(0);
}
int deinit()
{
ObjectsDeleteAll(0,OBJ_HLINE);
return(0);
}
int start()
{
init();
int i,b;
double price1,price2,price3;
datetime DALNOSTGAP=iTime(NULL,PERIOD_D1,ÄàëüíîñòüÃýïîâ);
//////////////////////////M5
if (Ãýï_M5==true)
{
int shiftDALNOSTGAP=iBarShift(NULL,5,DALNOSTGAP,false);
int DG=shiftDALNOSTGAP;
for (i=DG;i>1;i--)
{
if (Ïîêàçûâàòü_óðîâíè_ãýïà==true)
{
price1=NormalizeDouble(iClose(NULL,5,i),Òî÷íîñòü_öåíû);
price2=NormalizeDouble(iHigh(NULL,5,i-1),Òî÷íîñòü_öåíû);
price3=NormalizeDouble(iLow(NULL,5,i-1),Òî÷íîñòü_öåíû);
//*****************************************************
if (price1>price2)
{
for (b=i-1;b>=1;b--)
{
price2=NormalizeDouble(iHigh(NULL,5,b),Òî÷íîñòü_öåíû);
if (price2>=price1)
{
break;
}
if (b==1)
{
string name =DoubleToStr( price1, 4);
ObjectCreate(name, OBJ_HLINE,0, 0,price1) ;
ObjectSet(name,OBJPROP_COLOR,UplineM5);
if (Ïîêàçûâàòü_äàòó_ãýïà==true)
{
datetime SecondUP=iTime(NULL,5,i);
string opisanieUP=TimeToStr(SecondUP,TIME_DATE|TIME_MINUTES);
ObjectSetText(name, opisanieUP+" M5");
}
}
}
}
if (price1<price3)
{
for (b=i-1;b>=1;b--)
{
price3=NormalizeDouble(iLow(NULL,5,b),Òî÷íîñòü_öåíû);
if (price3<=price1)
{
break;
}
if (b==1)
{
string name2 =DoubleToStr( price1, 4);
ObjectCreate(name2, OBJ_HLINE,0, 0,price1) ;
ObjectSet(name2,OBJPROP_COLOR,DwnlineM5);
if (Ïîêàçûâàòü_äàòó_ãýïà==true)
{
datetime SecondDWN=iTime(NULL,5, i);
string opisanieDWN=TimeToStr(SecondDWN,TIME_DATE|TIME_MINUTES);
ObjectSetText(name2, opisanieDWN+" M5");
}
}
}
}
}
}
}
//////////////////////////M5
//////////////////////////M15
if (Ãýï_M15==true)
{
shiftDALNOSTGAP=iBarShift(NULL,15,DALNOSTGAP,false);
DG=shiftDALNOSTGAP;
for (i=DG;i>1;i--)
{
if (Ïîêàçûâàòü_óðîâíè_ãýïà==true)
{
price1=NormalizeDouble(iClose(NULL,15,i),Òî÷íîñòü_öåíû);
price2=NormalizeDouble(iHigh(NULL,15,i-1),Òî÷íîñòü_öåíû);
price3=NormalizeDouble(iLow(NULL,15,i-1),Òî÷íîñòü_öåíû);
//*****************************************************
if (price1>price2)
{
for (b=i-1;b>=1;b--)
{
price2=NormalizeDouble(iHigh(NULL,15,b),Òî÷íîñòü_öåíû);
if (price2>=price1)
{
break;
}
if (b==1)
{
name =DoubleToStr( price1, 4);
ObjectCreate(name, OBJ_HLINE,0, 0,price1) ;
ObjectSet(name,OBJPROP_COLOR,UplineM15);
if (Ïîêàçûâàòü_äàòó_ãýïà==true)
{
SecondUP=iTime(NULL,15,i);
opisanieUP=TimeToStr(SecondUP,TIME_DATE|TIME_MINUTES);
ObjectSetText(name, opisanieUP+" M15");
}
}
}
}
if (price1<price3)
{
for (b=i-1;b>=1;b--)
{
price3=NormalizeDouble(iLow(NULL,15,b),Òî÷íîñòü_öåíû);
if (price3<=price1)
{
break;
}
if (b==1)
{
name2 =DoubleToStr( price1, 4);
ObjectCreate(name2, OBJ_HLINE,0, 0,price1) ;
ObjectSet(name2,OBJPROP_COLOR,DwnlineM15);
if (Ïîêàçûâàòü_äàòó_ãýïà==true)
{
SecondDWN=iTime(NULL,15, i);
opisanieDWN=TimeToStr(SecondDWN,TIME_DATE|TIME_MINUTES);
ObjectSetText(name2, opisanieDWN+" M15");
}
}
}
}
}
}
}
//////////////////////////M15
//////////////////////////M30
if (Ãýï_M30==true)
{
shiftDALNOSTGAP=iBarShift(NULL,30,DALNOSTGAP,false);
DG=shiftDALNOSTGAP;
for (i=DG;i>1;i--)
{
if (Ïîêàçûâàòü_óðîâíè_ãýïà==true)
{
price1=NormalizeDouble(iClose(NULL,30,i),Òî÷íîñòü_öåíû);
price2=NormalizeDouble(iHigh(NULL,30,i-1),Òî÷íîñòü_öåíû);
price3=NormalizeDouble(iLow(NULL,30,i-1),Òî÷íîñòü_öåíû);
//*****************************************************
if (price1>price2)
{
for (b=i-1;b>=1;b--)
{
price2=NormalizeDouble(iHigh(NULL,30,b),Òî÷íîñòü_öåíû);
if (price2>=price1)
{
break;
}
if (b==1)
{
name =DoubleToStr( price1, 4);
ObjectCreate(name, OBJ_HLINE,0, 0,price1) ;
ObjectSet(name,OBJPROP_COLOR,UplineM30);
if (Ïîêàçûâàòü_äàòó_ãýïà==true)
{
SecondUP=iTime(NULL,30,i);
opisanieUP=TimeToStr(SecondUP,TIME_DATE|TIME_MINUTES);
ObjectSetText(name, opisanieUP+" M30");
}
}
}
}
if (price1<price3)
{
for (b=i-1;b>=1;b--)
{
price3=NormalizeDouble(iLow(NULL,30,b),Òî÷íîñòü_öåíû);
if (price3<=price1)
{
break;
}
if (b==1)
{
name2 =DoubleToStr( price1, 4);
ObjectCreate(name2, OBJ_HLINE,0, 0,price1) ;
ObjectSet(name2,OBJPROP_COLOR,DwnlineM30);
if (Ïîêàçûâàòü_äàòó_ãýïà==true)
{
SecondDWN=iTime(NULL,30, i);
opisanieDWN=TimeToStr(SecondDWN,TIME_DATE|TIME_MINUTES);
ObjectSetText(name2, opisanieDWN+" M30");
}
}
}
}
}
}
}
///////m30
//////////////////////////H1
if (Ãýï_H1==true)
{
shiftDALNOSTGAP=iBarShift(NULL,60,DALNOSTGAP,false);
DG=shiftDALNOSTGAP;
for (i=DG;i>1;i--)
{
if (Ïîêàçûâàòü_óðîâíè_ãýïà==true)
{
price1=NormalizeDouble(iClose(NULL,60,i),Òî÷íîñòü_öåíû);
price2=NormalizeDouble(iHigh(NULL,60,i-1),Òî÷íîñòü_öåíû);
price3=NormalizeDouble(iLow(NULL,60,i-1),Òî÷íîñòü_öåíû);
//*****************************************************
if (price1>price2)
{
for (b=i-1;b>=1;b--)
{
price2=NormalizeDouble(iHigh(NULL,60,b),Òî÷íîñòü_öåíû);
if (price2>=price1)
{
break;
}
if (b==1)
{
name =DoubleToStr( price1, 4);
ObjectCreate(name, OBJ_HLINE,0, 0,price1) ;
ObjectSet(name,OBJPROP_COLOR,UplineH1);
if (Ïîêàçûâàòü_äàòó_ãýïà==true)
{
SecondUP=iTime(NULL,60,i);
opisanieUP=TimeToStr(SecondUP,TIME_DATE|TIME_MINUTES);
ObjectSetText(name, opisanieUP+" H1");
}
}
}
}
if (price1<price3)
{
for (b=i-1;b>=1;b--)
{
price3=NormalizeDouble(iLow(NULL,60,b),Òî÷íîñòü_öåíû);
if (price3<=price1)
{
break;
}
if (b==1)
{
name2 =DoubleToStr( price1, 4);
ObjectCreate(name2, OBJ_HLINE,0, 0,price1) ;
ObjectSet(name2,OBJPROP_COLOR,DwnlineH1);
if (Ïîêàçûâàòü_äàòó_ãýïà==true)
{
SecondDWN=iTime(NULL,60, i);
opisanieDWN=TimeToStr(SecondDWN,TIME_DATE|TIME_MINUTES);
ObjectSetText(name2, opisanieDWN+" H1");
}
}
}
}
}
}
}
///////////H4
if (Ãýï_H4==true)
{
shiftDALNOSTGAP=iBarShift(NULL,240,DALNOSTGAP,false);
DG=shiftDALNOSTGAP;
for (i=DG;i>1;i--)
{
if (Ïîêàçûâàòü_óðîâíè_ãýïà==true)
{
price1=NormalizeDouble(iClose(NULL,240,i),Òî÷íîñòü_öåíû);
price2=NormalizeDouble(iHigh(NULL,240,i-1),Òî÷íîñòü_öåíû);
price3=NormalizeDouble(iLow(NULL,240,i-1),Òî÷íîñòü_öåíû);
//*****************************************************
if (price1>price2)
{
for (b=i-1;b>=1;b--)
{
price2=NormalizeDouble(iHigh(NULL,240,b),Òî÷íîñòü_öåíû);
if (price2>=price1)
{
break;
}
if (b==1)
{
name =DoubleToStr(price1, 4);
ObjectCreate(name, OBJ_HLINE,0, 0,price1) ;
ObjectSet(name,OBJPROP_COLOR,UplineH4);
if (Ïîêàçûâàòü_äàòó_ãýïà==true)
{
SecondUP=iTime(NULL,240,i);
opisanieUP=TimeToStr(SecondUP,TIME_DATE|TIME_MINUTES);
ObjectSetText(name, opisanieUP+" H4");
}
}
}
}
if (price1<price3)
{
for (b=i-1;b>=1;b--)
{
price3=NormalizeDouble(iLow(NULL,240,b),Òî÷íîñòü_öåíû);
if (price3<=price1)
{
break;
}
if (b==1)
{
name2 =DoubleToStr( price1, 4);
ObjectCreate(name2, OBJ_HLINE,0, 0,price1) ;
ObjectSet(name2,OBJPROP_COLOR,DwnlineH4);
if (Ïîêàçûâàòü_äàòó_ãýïà==true)
{
SecondDWN=iTime(NULL,240, i);
opisanieDWN=TimeToStr(SecondDWN,TIME_DATE|TIME_MINUTES);
ObjectSetText(name2, opisanieDWN+" H4");
}
}
}
}
}
}
}
///////////D1
if (Ãýï_H4==true)
{
shiftDALNOSTGAP=iBarShift(NULL,1440,DALNOSTGAP,false);
DG=shiftDALNOSTGAP;
for (i=DG;i>1;i--)
{
if (Ïîêàçûâàòü_óðîâíè_ãýïà==true)
{
price1=NormalizeDouble(iClose(NULL,1440,i),Òî÷íîñòü_öåíû);
price2=NormalizeDouble(iHigh(NULL,1440,i-1),Òî÷íîñòü_öåíû);
price3=NormalizeDouble(iLow(NULL,1440,i-1),Òî÷íîñòü_öåíû);
//*****************************************************
if (price1>price2)
{
for (b=i-1;b>=1;b--)
{
price2=NormalizeDouble(iHigh(NULL,1440,b),Òî÷íîñòü_öåíû);
if (price2>=price1)
{
break;
}
if (b==1)
{
name =DoubleToStr(price1, 4);
ObjectCreate(name, OBJ_HLINE,0, 0,price1) ;
ObjectSet(name,OBJPROP_COLOR,UplineD1);
if (Ïîêàçûâàòü_äàòó_ãýïà==true)
{
SecondUP=iTime(NULL,1440,i);
opisanieUP=TimeToStr(SecondUP,TIME_DATE|TIME_MINUTES);
ObjectSetText(name, opisanieUP+" D1");
}
}
}
}
if (price1<price3)
{
for (b=i-1;b>=1;b--)
{
price3=NormalizeDouble(iLow(NULL,1440,b),Òî÷íîñòü_öåíû);
if (price3<=price1)
{
break;
}
if (b==1)
{
name2 =DoubleToStr( price1, 4);
ObjectCreate(name2, OBJ_HLINE,0, 0,price1) ;
ObjectSet(name2,OBJPROP_COLOR,DwnlineD1);
if (Ïîêàçûâàòü_äàòó_ãýïà==true)
{
SecondDWN=iTime(NULL,1440, i);
opisanieDWN=TimeToStr(SecondDWN,TIME_DATE|TIME_MINUTES);
ObjectSetText(name2, opisanieDWN+" D1");
}
}
}
}
}
}
}
///////////W1
if (Ãýï_W1==true)
{
shiftDALNOSTGAP=iBarShift(NULL,240,DALNOSTGAP,false);
DG=shiftDALNOSTGAP;
for (i=DG;i>1;i--)
{
if (Ïîêàçûâàòü_óðîâíè_ãýïà==true)
{
price1=NormalizeDouble(iClose(NULL,10080,i),Òî÷íîñòü_öåíû);
price2=NormalizeDouble(iHigh(NULL,10080,i-1),Òî÷íîñòü_öåíû);
price3=NormalizeDouble(iLow(NULL,10080,i-1),Òî÷íîñòü_öåíû);
//*****************************************************
if (price1>price2)
{
for (b=i-1;b>=1;b--)
{
price2=NormalizeDouble(iHigh(NULL,10080,b),Òî÷íîñòü_öåíû);
if (price2>=price1)
{
break;
}
if (b==1)
{
name =DoubleToStr(price1, 4);
ObjectCreate(name, OBJ_HLINE,0, 0,price1) ;
ObjectSet(name,OBJPROP_COLOR,UplineW1);
if (Ïîêàçûâàòü_äàòó_ãýïà==true)
{
SecondUP=iTime(NULL,10080,i);
opisanieUP=TimeToStr(SecondUP,TIME_DATE|TIME_MINUTES);
ObjectSetText(name, opisanieUP+" W1");
}
}
}
}
if (price1<price3)
{
for (b=i-1;b>=1;b--)
{
price3=NormalizeDouble(iLow(NULL,10080,b),Òî÷íîñòü_öåíû);
if (price3<=price1)
{
break;
}
if (b==1)
{
name2 =DoubleToStr( price1, 4);
ObjectCreate(name2, OBJ_HLINE,0, 0,price1) ;
ObjectSet(name2,OBJPROP_COLOR,DwnlineW1);
if (Ïîêàçûâàòü_äàòó_ãýïà==true)
{
SecondDWN=iTime(NULL,10080, i);
opisanieDWN=TimeToStr(SecondDWN,TIME_DATE|TIME_MINUTES);
ObjectSetText(name2, opisanieDWN+" W1");
}
}
}
}
}
}
}
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
---