Aiuto per la codifica - pagina 331

 

Aiuto per la codifica

Buon pomeriggio a tutti

Ciao mladen

Sto cercando di trovare questo codice per MT4 e non riesco a trovarlo

L'indicatore si chiama Magarto.

Ho il codice per un'altra piattaforma

  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)

Potrei aiutarti a trovarlo.

Sto vedendo questo altro indicatore, ha qualcosa a che fare con il codice Magarto.

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

Grazie mille in anticipo.

Un saluto.

File:
magarto.png  70 kb
 

Mi dispiace disturbare di nuovo...

Ieri ho modificato molti dei miei indicatori al fine di limitare il calcolo delle barre per risparmiare un po' di cpu dato che faccio girare più mt4 contemporaneamente.

Il codice che ho usato per questo scopo è questo:

int start()

{

int i,limit,counted_bars=IndicatorCounted();

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

if(counted_bars>0) counted_bars--;

limit=Nbars-counted_bars;

ma sto notando che ora, con i mercati aperti, tutti gli indicatori modificati non si aggiornano quando nuove barre sono tracciate sullo schermo.

E' possibile per voi, codificatori esperti, trovare il problema solo in quelle poche righe? O meglio, c'è un modo o una formula che può essere usata in tutti gli indicatori per limitare il calcolo delle barre?

 
thefxpros:
Scusa se ti disturbo ancora...

Ieri ho modificato molti dei miei indicatori al fine di limitare il calcolo delle barre per risparmiare un po' di cpu dato che faccio girare più mt4 contemporaneamente.

Il codice che ho usato per questo scopo è questo:

int start()

{

int i,limit,counted_bars=IndicatorCounted();

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

if(counted_bars>0) counted_bars--;

limit=Nbars-counted_bars;

ma sto solo notando che ora, con i mercati aperti, tutti gli indicatori modificati non si aggiornano quando nuove barre sono tracciate sullo schermo.

È possibile per voi, codificatori esperti, trovare il problema solo in queste poche righe? O meglio, è un modo o una formula che può essere utilizzata in tutti gli indicatori per limitare il calcolo delle barre?

Sostituite l'ultima linea con la seguente e tutti i casi dovrebbero essere "coperti":

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

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

 
mladen:
Sostituisci l'ultima linea con la seguente e tutti i casi dovrebbero essere "coperti":

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

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

mi hai salvato.

Grazie, tutto funziona bene.

 

Ciao mladen, puoi aiutarmi a tradurre questo codice per mt4? grazie

_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();

 

Ciao a tutti,

Se questo non è il thread corretto per questo, per favore indirizzatemi nel posto giusto.

Questo è il mio indicatore preferito e gli avvisi sono ottimi, ma avvisa durante la candela corrente ogni volta che il segnale cambia. Questo si traduce in molti falsi segnali perché solo l'ombra della candela va sopra/sotto la banda e la direzione non è ufficialmente cambiata.

E' possibile modificare il codice in modo che invii l'allarme solo quando la direzione è cambiata E la barra si è chiusa?

Grazie!

 
sundown858:
Ciao a tutti,

Se questo non è il thread corretto per questo, per favore indirizzatemi nel posto giusto.

Questo è il mio indicatore preferito e gli avvisi sono ottimi, ma avvisa durante la candela corrente ogni volta che il segnale cambia. Questo si traduce in molti falsi segnali perché solo l'ombra della candela va sopra/sotto la banda e la direzione non è ufficialmente cambiata.

E' possibile modificare il codice in modo che invii l'allarme solo quando la direzione è cambiata E la barra si è chiusa?

grazie!

tramonto858

imposta alertsOnCurrent a false e questo dovrebbe farlo

 

Avete provato a commutare "false" questa opzione?

extern bool alertsOnCurrent = true;

 
Hermo:
Buon pomeriggio a tutti

Ciao mladen

Sto cercando di trovare questo codice per MT4 e non riesco a trovarlo

L'indicatore si chiama Magarto.

Ho il codice per un'altra piattaforma

  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)

Potrei aiutarti a trovarlo.

Sto vedendo questo altro indicatore, ha qualcosa a che fare con il codice Magarto.

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

Grazie mille in anticipo.

Un saluto.

Che linguaggio di codifica della piattaforma di trading è questo?

 

Santo cielo! Mi chiedevo cosa facesse quell'input. Questo ha risolto il problema. Grazie mladen e assassino!