Помощь в кодировании - страница 331

 

Помощь в кодировании

Добрый день всем

Здравствуйте mladen

Я пытаюсь найти этот код для MT4 и не могу его найти.

Индикатор называется Magarto.

У меня есть код для другой платформы.

  1. study("magarto indicator",overlay=false)
  2. ma=sma(close,30)

    maslope=ma-ma[2]

    maslopeB=iff(maslope0,1,0))

    candleOver=iff(ohlc4>ma,1,-1)

    xMA = ema(close,13)

    DayLow = iff(dayofmonth != dayofmonth[1], low, min(low, nz(DayLow[1])))

    bearpower = DayLow - xMA

    DayHigh = iff(dayofmonth != dayofmonth[1], high, max(high, nz(DayHigh[1])))

    bullpower = DayHigh - xMA

    bothElder=iff((bearpower>0 and bullpower>0),1,iff((bearpower<0 and bullpower<0),-1,0))

    all4=maslopeB+candleOver+bothElder

    plot(all4)

    hline(3)

    hline(-3)

    sell = all4 == -3 ? all4 : na

    buy = all4 == 3 ? all4 : na

    plot(sell, style=circles, linewidth=4, color=red)

    plot(buy, style=circles, linewidth=4, color=green)

Я могу помочь вам найти его.

Я вижу этот другой индикатор, он как-то связан с кодом Magarto.

https://www.mql5.com/en/forum/173112/page2

Заранее большое спасибо.

Приветствую.

Файлы:
magarto.png  70 kb
 

Извините, что снова беспокою...

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

Код, который я использовал для этой цели, выглядит следующим образом:

int start()

{

int i,limit,counted_bars=IndicatorCounted();

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

if(counted_bars>0) counted_bars--;

limit=Nbars-counted_bars;

Но я просто заметил, что теперь, когда рынки открыты, все модифицированные индикаторы не обновляются, когда на экране появляются новые бары.

Возможно ли, чтобы вы, опытные кодеры, нашли проблему именно в этих нескольких строчках? Или лучше, есть ли способ или формула, которую можно использовать во всех индикаторах, чтобы ограничить расчет баров?

 
thefxpros:
Извините, что снова беспокою...

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

Код, который я использовал для этой цели, выглядит следующим образом:

int start()

{

int i,limit,counted_bars=IndicatorCounted();

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

if(counted_bars>0) counted_bars--;

limit=Nbars-counted_bars;

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

Возможно ли, чтобы вы, опытные кодеры, нашли проблему именно в этих нескольких строчках? Или лучше, есть ли способ или формула, которая может быть использована во всех индикаторах, чтобы ограничить расчет баров?

Замените последнюю строку на следующую, и все случаи должны быть "покрыты":

if (Nbars<=0) Nbars = Bars-1;

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

 
mladen:
Замените последнюю строку на следующую и все случаи будут "покрыты":

if (Nbars<=0) Nbars = Bars-1;

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

вы спасли меня.

Спасибо, все работает нормально.

 

Здравствуйте, mladen, не могли бы вы помочь мне перевести этот код для mt4? спасибо.

_SECTION_BEGIN("TD Pressure Ratio");

SetChartBkColor(16);

Periods = Param("Periods",13,1,50,1);

function TDPressure (Periods)

{

for( i = 2; i < BarCount; i++ )

{

if((O - C) / C > 0.15) // gapup

{

BP = (H - C + C - L) * V;

}

else if((C-O) / O > 0.15)// gapdown

{

SP = (C - L + H - C) * V;

}

else

{

BP = IIf(C > O, C - O,0) * V;

SP = IIf(C < O, C - O,0) * V;

}

}

Result = 100 *Sum(BP,Periods)/ (Sum(BP,Periods) -

Sum(SP,Periods));

Result = IIf(Result < 0,0,Result);

Result = IIf(Result > 100,100,Result);

return Result;

}

TDP = TDPressure(Periods);

Plot(TDP ,"TD Pressure",colorLightBlue,1);

Plot( 25 , "", colorGreen,styleDashed);

Plot( 50 , "", colorLightGrey,styleDashed);

Plot( 75 , "", colorRed,styleDashed);

_SECTION_END();

 

Привет всем,

Если это не та тема для этого, пожалуйста, направьте меня в нужное место.

Это мой любимый индикатор и оповещения отличные, но он оповещает во время текущей свечи, когда сигнал меняется. Это приводит к большому количеству ложных сигналов, так как только тень свечи проходит выше/ниже полосы, а направление официально не меняется.

Возможно ли изменить код так, чтобы он отправлял оповещение только после того, как направление изменилось И бар закрылся?

Спасибо!

Файлы:
 
sundown858:
Привет всем,

Если это не та тема для этого, пожалуйста, направьте меня в нужное место.

Это мой любимый индикатор, и оповещения отличные, но он оповещает во время текущей свечи, когда сигнал меняется. Это приводит к большому количеству ложных сигналов, так как только тень свечи проходит выше/ниже полосы, а направление официально не меняется.

Можно ли изменить код таким образом, чтобы он отправлял сигнал только после того, как направление изменилось И бар закрылся?

Спасибо!

sundown858

установите для alertsOnCurrent значение false, и это должно помочь.

 

Пробовали ли вы переключить "false" эту опцию?

extern bool alertsOnCurrent = true;

 
Hermo:
Добрый день всем

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

Я пытаюсь найти этот код для MT4 и не могу его найти.

Индикатор называется Magarto.

У меня есть код для другой платформы.

  1. study("magarto indicator",overlay=false)
  2. ma=sma(close,30)

    maslope=ma-ma[2]

    maslopeB=iff(maslope0,1,0))

    candleOver=iff(ohlc4>ma,1,-1)

    xMA = ema(close,13)

    DayLow = iff(dayofmonth != dayofmonth[1], low, min(low, nz(DayLow[1])))

    bearpower = DayLow - xMA

    DayHigh = iff(dayofmonth != dayofmonth[1], high, max(high, nz(DayHigh[1])))

    bullpower = DayHigh - xMA

    bothElder=iff((bearpower>0 and bullpower>0),1,iff((bearpower<0 and bullpower<0),-1,0))

    all4=maslopeB+candleOver+bothElder

    plot(all4)

    hline(3)

    hline(-3)

    sell = all4 == -3 ? all4 : na

    buy = all4 == 3 ? all4 : na

    plot(sell, style=circles, linewidth=4, color=red)

    plot(buy, style=circles, linewidth=4, color=green)

Я могу помочь вам найти его.

Я вижу этот другой индикатор, он как-то связан с кодом Magarto.

https://www.mql5.com/en/forum/173112/page2

Заранее большое спасибо.

Приветствие.

Какой это язык кодирования торговой платформы?

 

Боже мой! Мне было интересно, что делает этот вход. Это решило проблему. Спасибо mladen и assassin!