- Помогите немного изменить индикатор.
- скрипт или советник для измерения длины линии, построенной на графике. в пунктах
- помогите совместить два индикатора!
Помогите немного изменить индикатор. Он измеряет длину линий построенных зигзагом. (прилагаю ниже). Но для измерений он использует параметры в процентах, а нужно в пунктах. Помогите, кто нибудь может изменить? mt4.
Вот:
//+------------------------------------------------------------------+ //| zzleglength.mq4 | //| Copyright © 2009, Stephen Ambatoding. | //+------------------------------------------------------------------+ #property version "1.00" #property strict #property copyright "Copyright © 2009, Stephen Ambatoding." #property link "sangmane@forexfactory.com" #property indicator_chart_window extern int varExtDepth=12; extern int varExtDeviation=5; extern int varExtBackstep=3; extern int History=1000; extern color FontColor=Yellow; double Pip; //+------------------------------------------------------------------+ //| | //+------------------------------------------------------------------+ int init() { if(Digits==3 || Digits==5) Pip = 10*Point; else Pip = Point; IndicatorDigits(Digits+1); return(0); } //+------------------------------------------------------------------+ //| | //+------------------------------------------------------------------+ int deinit() { string ObjName; for(int i=ObjectsTotal()-1; i>=0; i--) { ObjName=ObjectName(i); if(StringFind(ObjName,"ZZLabel",0)>=0) ObjectDelete(ObjName); } return(0); } //+------------------------------------------------------------------+ //| | //+------------------------------------------------------------------+ int start() { int i,k,limit,counted_bars=IndicatorCounted(); limit=MathMin(History,Bars-counted_bars-1); double zz; for(i=limit; i>=0; i--) { k=i; double d1=0,d2=0,d3=0; datetime t1=0,t2=0,t3=0; while(k<Bars-2) { zz=iCustom(NULL,0,"ZigZag",varExtDepth,varExtDeviation,varExtBackstep,0,k); if(zz!=0) { d1 = d2; d2 = d3; d3 = zz; t1 = t2; t2 = t3; t3 = Time[k]; } if(d1>0) break; k++; } if(d1==0) continue; double LabelPos; int ib=iBarShift(NULL,0,t2); if(d2>d3) LabelPos=NormalizeDouble(High[ib]+0.2*iATR(NULL,0,10,ib),Digits); else LabelPos=NormalizeDouble(Low[ib]-0.2*iATR(NULL,0,10,ib),Digits); string ObjName="ZZLabel_"+TimeToString(t1); if(ObjectFind(ObjName)<0) { ObjectCreate(ObjName,OBJ_TEXT,0,t2,LabelPos); ObjectSetText(ObjName,DoubleToStr(MathAbs(d3-d2)/Pip,0),8,"Arial",FontColor); } } return(0); } //+------------------------------------------------------------------+
Вот:
Вот:
только он также в процентах работает...
только он также в процентах работает...
Вот для сравнения на картинке видны значения индикатора ZigZag (в окне "Окно данных") и показания индикатора.
Вот для сравнения на картинке видны значения индикатора ZigZag (в окне "Окно данных") и показания индикатора.
спасибо огромное, что пытаетесь мне помочь, извините, я просто не точно выражаюсь..
Я имею ввиду, что мне нужно модернизировать этот индикатор, чтобы в настройках отображалось не (12.5.3.), а значение, с каким интервалом строить отрезки ( в пунктах ).
Например, в параметрах я устанавливаю минимальную длину волны 200 пунктов. Тренд движется вниз, условно прошел вниз 500 пунктов, индикатор понимает и рисует линию, как только тренд в противоположную сторону (наверх) пройдет минимум 200 пунктов. Как только тренд прошел в противоположную сторону минимум 200 пунктов, индикатор считает его полноценной волной и тренд может идти дальше вверх, пока опять же не пройдет в противоположную сторону минимум 200 пунктов.
спасибо огромное, что пытаетесь мне помочь, извините, я просто не точно выражаюсь..
Я имею ввиду, что мне нужно модернизировать этот индикатор, чтобы в настройках отображалось не (12.5.3.), а значение, с каким интервалом строить отрезки ( в пунктах ).
Например, в параметрах я устанавливаю минимальную длину волны 200 пунктов. Тренд движется вниз, условно прошел вниз 500 пунктов, индикатор понимает и рисует линию, как только тренд в противоположную сторону (наверх) пройдет минимум 200 пунктов. Как только тренд прошел в противоположную сторону минимум 200 пунктов, индикатор считает его полноценной волной и тренд может идти дальше вверх, пока опять же не пройдет в противоположную сторону минимум 200 пунктов.
У меня есть модифицированный индикатор зигзаг. Он строит линии по пунктам. Например, в параметрах я устанавливаю минимальную длину волны 200 пунктов. Тренд движется вниз, условно прошел вниз 500 пунктов, индикатор понимает и рисует линию, как только тренд в противоположную сторону (наверх) пройдет минимум 200 пунктов. Как только тренд прошел в противоположную сторону минимум 200 пунктов, индикатор считает его полноценной волной и тренд может идти дальше вверх, пока опять же не пройдет в противоположную сторону минимум 200 пунктов. И так до бесконечности... тренд вверх, пока в противоположную не пройдет 200 и т.д. Тут все хорошо, индикатор работает как нужно, меня все устраивает ( прилагаю его ниже ). НО! Вот в какой помощи я нуждаюсь, мой индикатор нарисовал мне огромное кол-во линий (волн), мне для моей стратегии приходиться их вручную, перекрестием измерять (кол-во пипсов). Было бы просто великолепно, если бы был какой то способ, чтобы это измерение происходило в автоматическом режиме и рядом с линией оставляло пометки с длиной (в пипсах, пунктах..).
Простите, ничего не понял. Я пас.
- Бесплатные приложения для трейдинга
- 8 000+ сигналов для копирования
- Экономические новости для анализа финансовых рынков
Вы принимаете политику сайта и условия использования