Miscellaneous
1
Views
0
Downloads
0
Favorites
TrendLineRange
//+------------------------------------------------------------------+
//| TrendLineRange.mq4 |
//| Ñîêðàòèëèí Àëåêñåé |
//| sokratilin@brocompany.com |
//+------------------------------------------------------------------+
#property copyright "Ñîêðàòèëèí Àëåêñåé"
#property link "sokratilin@brocompany.com"
#property indicator_chart_window
//---- input parameters
extern int PointsRange1=20; //1-îå ðàññòîÿíèå äî òðåíäîâîé ëèíèè
extern int PointsRange2=10; //2-îå ðàññòîÿíèå äî òðåíäîâîé ëèíèè
extern int PointsRange3=5; //3-åå ðàññòîÿíèå äî òðåíäîâîé ëèíèè
extern string IndexTrendLine; //Èíäåêñ òðåíäîâîé ëèíèè â ñïèñêå îáúåêòîâ
//+------------------------------------------------------------------+
//| Custom indicator initialization function |
//+------------------------------------------------------------------+
int init()
{
//---- indicators
//----
return(0);
}
//+------------------------------------------------------------------+
//| Custom indicator deinitialization function |
//+------------------------------------------------------------------+
int deinit()
{
//----
//----
return(0);
}
//+------------------------------------------------------------------+
//| Custom indicator iteration function |
//+------------------------------------------------------------------+
int start()
{
static int S1,S2,S3; //Ñ÷åò÷èêè ñèãíàëîâ
string TrendLine="Trendline "+IndexTrendLine; //Äîáàâëåíèå èíäåêñà òåíäîâîé ëèíèè ê "Trendline"
double Price=Bid; //Òåêóùàÿ öåíà
double TrendLineValue=NormalizeDouble(ObjectGetValueByShift(TrendLine,0),Digits); //Òåêóùåå çíà÷åíèå òðåíäîâîé ëèíèè
int Range=MathAbs((NormalizeDouble(Price,Digits)-TrendLineValue)*MathPow(10,Digits));
//Âû÷èñëåíèå ðàññòîÿíèÿ ìåæäó òåêóùåé öåíîé è òðåíäîâîé ëèíèåé
Comment("Range=",Range);
if (Range<=PointsRange1 && Range>PointsRange2 && S1==0) //Åñëè òåêóùåå ðàñññòîÿíèå <= ðàññòîÿíèÿ1 è > ðàññòîÿíèÿ2
{ //ñèãíàë íà ýòîì ïðîìåæóòêå íå ïîäàâàëñÿ, òî ïîäàåì îäèí ñèãíàë.
Alert("Range=",Range," Price=",Price," TrendLine=",TrendLineValue);
S1=1; S2=0; S3=0; //Îáíóëåíèå ñ÷åò÷èêîâ
}
else
if (Range<=PointsRange2 && Range>PointsRange3 && S2==0) //Åñëè òåêóùåå ðàñññòîÿíèå <= ðàññòîÿíèÿ2 è > ðàññòîÿíèÿ3
{ //ñèãíàë íà ýòîì ïðîìåæóòêå íå ïîäàâàëñÿ, òî ïîäàåì îäèí ñèãíàë.
Alert("Range=", Range, " Price=", Price, " TrendLine=",TrendLineValue);
S1=0; S2=1; S3=0; //Îáíóëåíèå ñ÷åò÷èêîâ
}
else
if (Range<=PointsRange3 && S3==0) //Åñëè òåêóùåå ðàñññòîÿíèå <= ðàññòîÿíèÿ3
{ //ñèãíàë íà ýòîì ïðîìåæóòêå íå ïîäàâàëñÿ, òî ïîäàåì îäèí ñèãíàë.
Alert("Range=", Range, " Price=", Price, " TrendLine=",TrendLineValue);
S1=0; S2=0; S3=1; //Îáíóëåíèå ñ÷åò÷èêîâ
}
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
---