Miscellaneous
0
Views
0
Downloads
0
Favorites
Trofimov_Lines_1_4_1
//+---------------------------------------------------------------------+
//| Trofimov_Lines.mq4 |
//| Copyright © Trofimov 2010 |
//+---------------------------------------------------------------------+
#property copyright "Copyright © Trofimov Evgeniy, 2010"
#property link "http://www.mql4.com/ru/users/EvgeTrofi"
//---- Ñâîéñòâà èíäèêàòîðà
#property indicator_chart_window
#property indicator_buffers 8
#property indicator_color1 Blue
#property indicator_width1 1
#property indicator_color2 Red
#property indicator_width2 1
//---- Âõîäÿùèå ïàðàìåòðû
extern int MaxiCanal=5000; //Ìàêñèìàëüíàÿ øèðèíà êàíàëà
extern int MinLengh=0; //Ìèíèìàëüíàÿ äëèíà êàíàëà
double Buff_line1[];
double Buff_line2[];
double Buff_line3[]; //-Äëèíà
double Buff_line4[]; //-Øèðèíà
double Buff_line5[]; //-Óãîë
double Buff_line6[]; //-Ñðåäíÿÿ ëèíèÿ
double Buff_line7[]; //-Çîëîòîå ñå÷åíèå
double Buff_line8[]; //-âåðîÿòíîñòü òðåíäà
double Golden = 0.381966;
//+------------------------------------------------------------------+
//| Ôóíêöèÿ èíèöèàëèçàöèè èíäèêàòîðà |
//+------------------------------------------------------------------+
int init() {
//---- x äîïîëíèòåëüíûõ áóôåðà, èñïîëüçóåìûõ äëÿ ðàñ÷åòà
IndicatorBuffers(8);
IndicatorDigits(Digits);
//---- ïàðàìåòðû ðèñîâàíèÿ (óñòàíîâêà íà÷àëüíîãî áàðà)
//SetIndexDrawBegin(0,1);
//SetIndexDrawBegin(1,1);
//---- x ðàñïðåäåëåííûõ áóôåðà èíäèêàòîðà
SetIndexBuffer(0,Buff_line1);
SetIndexBuffer(1,Buff_line2);
SetIndexBuffer(2,Buff_line3);
SetIndexBuffer(3,Buff_line4);
SetIndexBuffer(4,Buff_line5);
SetIndexBuffer(5,Buff_line6);
SetIndexBuffer(6,Buff_line7);
SetIndexBuffer(7,Buff_line8);
//---- èìÿ èíäèêàòîðà è ïîäñêàçêè äëÿ ëèíèé
IndicatorShortName("TrofiLines");
SetIndexLabel(0,"Up");
SetIndexLabel(1,"Dn");
SetIndexLabel(2,"Lengh");
SetIndexLabel(3,"Width");
SetIndexLabel(4,"Angle");
SetIndexLabel(5,"Midle");
SetIndexLabel(6,"Gold");
SetIndexLabel(7,"Trend");
SetIndexStyle(2,DRAW_NONE);
SetIndexStyle(3,DRAW_NONE);
SetIndexStyle(4,DRAW_NONE);
SetIndexStyle(5,DRAW_NONE);
SetIndexStyle(7,DRAW_NONE);
return(0);
}//init()
//+------------------------------------------------------------------+
//| Ôóíêöèÿ èíäèêàòîðà |
//+------------------------------------------------------------------+
int start() {
int counted_bars=IndicatorCounted();
if(counted_bars<0) return(-1);
int limit=Bars-counted_bars;
int j, x;
double y, y1;
//Òåêóùèå ðàñ÷¸òíûå çíà÷åíèÿ:
double width; //-øèðèíà êàíàëà
double WDown, WUp; //Ðàññòîÿíèå îò öåíòðàëüíîé ëèíèè ðåãðåññèè äî íèæíåé è âåðõíåé ãðàíèöû
int begin; //-íîìåð íà÷àëüíîé ñâå÷è äëÿ îáðàçîâàíèÿ êîðèäîðà
static datetime beginTime;
double angle; //-óãîë íàêëîíà êîðèäîðà ê ãîðèçîíòó
static bool first=true;
if(first) {
beginTime=Time[limit-1];
first=false;
}
for(int t=limit-1; t>-1; t--){//Çäåñü t - ýòî òåêóùàÿ ñâå÷à, äëÿ êîòîðîé ñòðîèì ãðàôèê
begin=Candle(beginTime, t);
x=begin-t;
if(x==0) continue;
angle=((High[t]+Low[t])/2-(High[begin]+Low[begin])/2)/x;//Ïðèðàùåíèå
y1=(High[begin]+Low[begin])/2;
WDown=0; WUp=0;
for(j=begin-1; j>=t; j--){//Ïîèñê ïåðõíåé è íèæíåé ãðàíèöû
x=begin-j;//- ðàññòîÿíèå îò èñõîäíîãî ïîëîæåíèÿ äî àíàëèçèðóåìîé ñâå÷è â ñâå÷àõ
y=angle*x+y1;
if(Low[j]<y-WDown) WDown=y-Low[j];
if(High[j]>y+WUp) WUp=High[j]-y;
}//Next j
width=(WDown+WUp)/Point;
if(x>MinLengh){
Buff_line1[t]=y+WUp;
Buff_line2[t]=y-WDown;
Buff_line6[t]=y;
if(angle>0) {
Buff_line7[t]=Buff_line2[t]+(WUp+WDown)*Golden;
Buff_line8[t]=(Close[t]-Buff_line7[t])*100/(Buff_line1[t]-Buff_line7[t]);
}else{
Buff_line7[t]=Buff_line1[t]-(WUp+WDown)*Golden;
Buff_line8[t]=-(Buff_line7[t]-Close[t])*100/(Buff_line7[t]-Buff_line2[t]);
}
}
Buff_line3[t]=x;
Buff_line4[t]=width;
Buff_line5[t]=angle/Point;
if(width>MaxiCanal) {
beginTime=Time[t];
width=0;
Buff_line1[t]=EMPTY_VALUE;
Buff_line2[t]=EMPTY_VALUE;
}
}//Next t
}//start()
//+------------------------------------------------------------------+
int Candle(datetime MyTime, int start=0){
for(int i=start; i<Bars; i++){
if(MyTime>=Time[i]) return(i);
}
return(-1);
}//Candle()
//+------------------------------------------------------------------+
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
---