T3 - страница 15

 
SVGuss:
Привет, ребята,

Я совсем не умею кодить, но мне удалось объединить эти два индикатора, которые мне нравятся (один сделан fxbs, другой я не знаю), так что в основном у вас есть T3MA, который меняет цвет, не когда меняется его угол (как в All_Averages_V2.2), а когда его пробивает цена.

Инди RoundPrice необходим для работы Ma_RoundPrice.

Наслаждайтесь.

Уважаемый SVGuss

Индикатор не работает. Я пытался скомпилировать его в редакторе mt4, но у меня сообщение об ошибке следующего содержания - "breakBars" переменная не определена.

Не подскажете, как можно исправить?

С уважением,

Дэн

 
dansmol:
Уважаемый SVGuss

Индикатор не работает. Я попытался скомпилировать его в редакторе mt4, но у меня сообщение об ошибке следующего содержания - переменная "breakBars" не определена.

Есть идеи, как это можно исправить?

С уважением,

Дэн

Привет, dansmol,

Вот исправлено; Вам также необходимо иметь `RoundPriceNE_big_mod[5dig]` в папке индикатора. (Извините, у меня нет файла mq4).

Всего хорошего

Tomcat

 
mladen:
Boxter

Я знаю, что случилось с индикатором из поста (он был удален, когда я был "слишком доволен" однажды прекрасной работой tro, и он был удален мной), но теперь я не могу найти ту версию на моем ПК (это было давно, очень давно ...).

В любом случае, за это время metatrader каким-то образом удалось исправить ошибку, которую они имели с функцией iStdDevOnArray(), так что оригинальный индикатор теперь можно использовать, поскольку больше нет необходимости в отдельной пользовательской функции iStdDevOnArray().

с уважением,

Mladen

Привет,

Эта?

KAMA в папке indicator

PriceSeries в папке include.

Надеюсь это поможет.

Желаю удачи.

Tomcat

Файлы:
kama.mq4  7 kb
 

Tomcat

Это не тот случай (у меня был пользовательский расчет отклонений, который заменил встроенную функцию"on array"), но все равно спасибо.

Как я уже сказал, необходимости в пользовательском расчете отклонений больше нет, так как эта ошибка в metatrader была исправлена в одном из обновлений, поэтому необходимости в той версии индикатора адаптивного скользящего среднего Кауфмана тоже больше нет.

с уважением

Mladen

Tomcat98:
Привет,

Эта?

KAMA в папке indicator

PriceSeries в папке include.

Надеюсь, это поможет.

Всего хорошего WE.

Tomcat
 
Tomcat98:
Привет, Дэнсмол,

Вот это исправлено; Вам также необходимо иметь `RoundPriceNE_big_mod[5dig]` в папке индикатора. (Извините, у меня нет файла mq4).

Всего хорошего

Tomcat

БОЛЬШОЕ СПАСИБО TOMCAT98

С УВАЖЕНИЕМ

Дэн

 

Вычисление t3_clean из советника, а не индикатора

Привет всем! Я хотел бы иметь возможность вычислять различные значения t3_clean от советника, а не от индикатора. Таким образом, я могу манипулировать последней ценой, используемой для вычисления индикатора. Я использую : t3_clean от mladen на https://www.mql5.com/en/forum/173058/page4.

Любая помощь была бы просто фантастической.

 

в коде t3_clean у нас есть этот блок кода :

double CalculateT3(int limit,int period,int priceType)

{

Print("This is the data in the T3"+"\t "+limit+"\t "+period+"\t "+priceType);

Print("Info Indicator from the Indicator "+IndicatorCounted() );

if (t3.period != period)

{

t3.period = period;

b2 = b*b;

b3 = b2*b;

c1 = -b3;

c2 = (3*(b2+b3));

c3 = -3*(2*b2+b+b3);

c4 = (1+3*b+b3+3*b2);

w1 = 2 / (2 + 0.5*(MathMax(1,period)-1));

w2 = 1 - w1;

}

//

//

//

//

//

for(int i=limit; i>=0; i--)

{

if(i == index_posi)

{

//v_manipul=

double price = v_manipul;

e1 = w1*price + w2*ae1;

e2 = w1*e1 + w2*ae2;

e3 = w1*e2 + w2*ae3;

e4 = w1*e3 + w2*ae4;

e5 = w1*e4 + w2*ae5;

e6 = w1*e5 + w2*ae6;

t3Array=c1*e6 + c2*e5 + c3*e4 + c4*e3;

ae1 = e1;

ae2 = e2;

ae3 = e3;

ae4 = e4;

ae5 = e5;

ae6 = e6;

}else{

price = iMA(NULL,0,1,0,MODE_SMA,priceType,i);

e1 = w1*price + w2*ae1;

e2 = w1*e1 + w2*ae2;

e3 = w1*e2 + w2*ae3;

e4 = w1*e3 + w2*ae4;

e5 = w1*e4 + w2*ae5;

e6 = w1*e5 + w2*ae6;

t3Array=c1*e6 + c2*e5 + c3*e4 + c4*e3;

ae1 = e1;

ae2 = e2;

ae3 = e3;

ae4 = e4;

ae5 = e5;

ae6 = e6;

}

}

}[/CODE]

I am trying to adapt it inside an Expert so it can be call to calculate any t3_clean value on demand, by changing the last bar value. e.g, the t3 for the bar 83.8167 is 85.9751; what if the bar was 81 and not 83 ? ect..., so so far, this is my code :

[CODE]

double CalculateT3(int limit,int period,int priceType,int index_posi, double v_manipul, int index_i)

{

double t3Array[];

double ae1[];

double ae2[];

double ae3[];

double ae4[];

double ae5[];

double ae6[];

ArrayResize( t3Array, limit);

ArrayResize( ae1, limit);

ArrayResize( ae2, limit);

ArrayResize( ae3, limit);

ArrayResize( ae4, limit);

ArrayResize( ae5, limit);

ArrayResize( ae6, limit);

Print("This is the data in the T3 FROM THE EA >>>>>> "+"\t "+limit+"\t "+period+"\t "+priceType);

Print("Info Indicator from the Indicator FROM THE EA <<<<<<<< "+IndicatorCounted() );

if (t3.period != period)

{

t3.period = period;

b2 = b*b;

b3 = b2*b;

c1 = -b3;

c2 = (3*(b2+b3));

c3 = -3*(2*b2+b+b3);

c4 = (1+3*b+b3+3*b2);

w1 = 2 / (2 + 0.5*(MathMax(1,period)-1));

w2 = 1 - w1;

}

Print("Voici w in the EA A VOIT XXXXXXXXX>>>XXXX<<>>"+w2+" "+w1);

//

//

//

//

//

for(int i=limit; i>=0; i--)

{

if(i == index_posi)

{

//v_manipul=

double price = v_manipul;

e1 = w1*price + w2*ae1;

e2 = w1*e1 + w2*ae2;

e3 = w1*e2 + w2*ae3;

e4 = w1*e3 + w2*ae4;

e5 = w1*e4 + w2*ae5;

e6 = w1*e5 + w2*ae6;

t3Array=c1*e6 + c2*e5 + c3*e4 + c4*e3;

ae1 = e1;

ae2 = e2;

ae3 = e3;

ae4 = e4;

ae5 = e5;

ae6 = e6;

Print("PREMIERE ETAPE DATA DANS LARRAY ]]]]]]]]]]]]]]}}}}} "+t3Array);

}else{

price = iMA(NULL,0,1,0,MODE_SMA,priceType,i);

e1 = w1*price + w2*ae1;

e2 = w1*e1 + w2*ae2;

e3 = w1*e2 + w2*ae3;

e4 = w1*e3 + w2*ae4;

e5 = w1*e4 + w2*ae5;

e6 = w1*e5 + w2*ae6;

t3Array=c1*e6 + c2*e5 + c3*e4 + c4*e3;

ae1 = e1;

ae2 = e2;

ae3 = e3;

ae4 = e4;

ae5 = e5;

ae6 = e6;

double op = c1*e6 + c2*e5 + c3*e4 + c4*e3;

Print("DEUXIEME ETAPE DATA DANS LARRAY ]]]]]]]]]]]]]]}}}}} "+op);

Print("SHOW ME PRICE "+ ae1[0]);

}

}

return (t3Array);

}

и он не работает вообще... кто-нибудь может помочь?

 

T3 осциллятор ...

Сначала я хотел сделать версию awesome oscillator, используя T3, но потом, когда я попробовал, оказалось, что с awesome oscillator, вычисляющим длины (5,14), это слишком быстро. Поэтому я решил открыть длины как параметры и использовать другие длины по умолчанию.

Вот как это выглядит сейчас с параметрами по умолчанию:

Файлы:
 
mladen:
Сначала я хотел сделать версию awesome oscillator, используя T3, но потом, когда я попробовал, оказалось, что с awesome oscillator, вычисляющим длины (5,14), это слишком быстро. Поэтому я решил открыть длины как параметры и использовать другие длины по умолчанию.

Вот как это выглядит сейчас с параметрами по умолчанию:

С настройками fast/slow : 6/12 на ренко графике это красиво, может быть "простой" стратегией.

Спасибо mladen!

 

И еще одна версия T3 : T3 GMMA

Для короткой (короткие периоды - быстрее) части установите параметр ShowLongGmma в false. Для длинной (более длинные периоды - более медленные) установите его в true и, комбинируя эти два параметра, вы можете получить что-то вроде этого:

Файлы:
t3_gmma.gif  29 kb
t3_gmma.mq4  5 kb
Причина обращения: