Мультитаймфреймовые индикаторы - страница 414

 

Mrtools

Не могли бы вы добавить опцию MTF в этот индикатор?

Заранее спасибо

new_sfractals.mq4

Файлы:
 

Я думаю, что mrtools отдыхает на выходных, поэтому вот эта версия.

affandiz:
Mrtools

Не могли бы вы добавить опцию MTF в этот индикатор?

Заранее спасибо

new_sfractals.mq4
Файлы:
 

Попросите помощи в программировании

mladen:
Мультитаймфреймовая версия индикатора Stochastic of T3 (тот, который был первоначально размещен здесь: Stochastic Oscillator ) с некоторыми объяснениями, что это такое и как это работает.

Здравствуйте Младен,

Я хотел добавить стрелки и алерты, когда основная линия пересекает сигнальную линию этого индикатора, используя соответствующие процедуры из кодов других ваших индикаторов, но у меня не получилось.

Не могли бы вы мне помочь, что не так в моей попытке?

С уважением,

Chrisstoff

 

Спасибо

mrtools:
Привет Chrisstoff, Вы были близки, вот исправленная версия. Вы, вероятно, увидите это в коде лучше, чем я объясню, мои объяснения иногда не очень хороши.

Здравствуйте, MrTools,

Спасибо за вашу помощь, я очень признателен. Я уже просмотрел код и увидел некоторые свои ошибки...

С уважением,

Крисстофф

 
mrtools:
Привет Chrisstoff, Вы были близки, вот исправленная версия. Вы, вероятно, увидите это в коде лучше, чем я объясню, мои объяснения иногда не очень хороши.

спасибо за это

 
mladen:
Я думаю, что mrtools отдыхает в эти выходные, так что вот эта версия

спасибо большое...

 
mladen:
Я думаю, что mrtools отдыхает в эти выходные, поэтому вот эта версия

привет младен можно ли сделать так, чтобы инди показывал больше стрелок как на второй картинке?

Я пытаюсь создать индикатор mtf с помощью icustom, как в приложении, но он заставляет мой ноутбук зависать.

заранее спасибо

mtf_sfractals_alert.mq4

Файлы:
 

Многопарный мультитаймфрейм

MLaden, MrTools и все остальные?

У меня есть многопарный мультитаймфреймовый пользовательский индикатор, который я написал. Я храню мои пары в массиве пар, а таймфреймы в массиве сессий. Что я хочу сделать, так это первоначально вычислить первую дюжину баров, от 0 до 12, iCustom вызовом специального MACD, который я написал, а затем определить пересечения MACD нуля и пересечения MACD сигнала в течение этого времени. После этого мне нужно делать iCustom-вызовы только на неучтенных барах.

Итак, я вычисляю counted_bars и limit стандартным образом, а затем делаю MathMin для limit и 12. Далее настраиваются 3 цикла, один для пары, один для таймфрейма и один для вычисляемых баров.

Я обнаружил, что начальный лимит 12 вызывается 4 раза для одной пары (не всегда одной и той же пары, и не пары графика), затем пара графика вызывается один раз для одного и того же бара, затем вычисления сбрасываются, и лимит таймфрейма меняется с 12 на 2. После этого диагностика печати обычно показывает, что пары растут по своему индексу. Однако во многих случаях наблюдается разрыв индекса или сброс индекса, а иногда даже просто одна строка диагностики.

Может ли кто-нибудь объяснить, что происходит? Вызывается ли эта проблема входящими тиками либо в окно графика, либо двумя вызовами iCustom. Что происходит, когда индикатор находится в середине вычислений и приходит еще один тик? Я думал, что индикатор завершил работу и этот тик игнорируется, когда приходит следующий.

Другая возможность, которую я рассматривал, заключалась в переполнении буфера на вкладке Experts из-за относительной медлительности выводимых данных. Однако, судя по индексу, это маловероятно.

Наконец, возможно ли вызвать функцию вычисления один раз из функции init() и устранить необходимость в специальном случае в функции start().

Вот соответствующий код

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

void Calculate_MAsAndMACDs(int index, int session, int bar, int limit, int counted_bars)

{

строка pair;

pair=Symbols.Pair;

int previous=bar+1;

macd= iCustom(pair,Session.Period[session],File.MACD, 3,4,3,8,13,false,1,bar);

signal=iCustom(pair,Session.Period[session],File.MACD, 3,4,3,8,13,false,0,bar);

Print(Symbols," Counted Bars-b ",index," ",bar," ",Bars," ",IndicatorCounted()," ",limit," ",counted_bars);

MACD.Trend=1;

if(macd<signal) MACD.Trend=-1;

if(macd > signal && macd[previous] < signal[previous]) {MACD.CrossOverTime=Time; MACD.CrossOverTimeValue=1;}

if(macd signal[previous]) {MACD.CrossOverTime=Time; MACD.CrossOverTimeValue=-1;}

if(MACD.CrossOverTime == 0) MACD.CrossOverTime=Time[ActiveCrossOverBars+1];

if(macd >0. && macd[previous] <0.) {MACD.CrossedTime=Time; MACD.CrossedTimeValue=1; }// Print("crossed up ",bar," ",MACD.CrossedTimeValue);}

if(macd 0.) {MACD.CrossedTime=Time; MACD.CrossedTimeValue=-1;}// Print("crossed dn ",bar," ",MACD.CrossedTimeValue);}

//if(Symbols == "XAUUSD")

Print(Symbols," Counted Bars-b ",index," ",bar," ",Bars," ",IndicatorCounted()," ",limit," ",counted_bars," ",DoubleToStr(macd,7)," ",DoubleToStr(macd[previous],7)," ",TimeToStr(MACD.CrossedTime,TIME_MINUTES)," ",TimeToStr(Time,TIME_MINUTES)," ",MACD.CrossedTimeValue);

if(MACD.CrossedTime == 0) MACD.CrossedTime=Time[ActiveCrossOverBars+1];

if(macd >= macd[previous]) MACD.Slope=1; else MACD.Slope=-1;

MACD.Signal.Trend=1;

if(signal<signal[previous]) MACD.Signal.Trend=-1;

}

int start()

{

int Y.Height,session,index,xpos,counted_bars=IndicatorCounted(), elements=ActiveCrossOverBars+2;

if(counted_bars<0) return(-1);

if(counted_bars>0) counted_bars--;

int limit = MathMin(Bars-counted_bars,Bars-1);

limit = MathMin(limit,elements);

for(int i=0;i<Session.Order.Number;i++)

{

session=Session.Order;

for(index=0;index<Symbols.Number;index++)

{

Print(Symbols," Counted Bars-a ",index," ",-1," ",Bars," ",IndicatorCounted()," ",counted_bars," ",limit);

ArrayResize(macd,элементы); ArrayResize(signal,элементы);

for(int k=limit;k>=0;k--) Calculate_MAsAndMACDs(index, session, k, limit, counted_bars);

}

}

return(0);

Файлы:
diagnostics.jpg  216 kb
 

привет, мне нужна ваша помощь, чтобы сделать этот индикатор в версии MTF ...

большое спасибо за помощь

Файлы:
ut_fast.mq4  26 kb
 

Уважаемые mladen и mrtools

Не будете ли вы так любезны добавить опцию MTF к

два прилагаемых индикатора?

Большое спасибо за ваше время

Дэн