Domande dai principianti MQL5 MT5 MetaTrader 5 - pagina 402

 
Karputov Vladimir:
Poi apri un topic separato per le domande sul tuo codice. Forse con i suggerimenti, sarete in grado di padroneggiare il vostro codice.
Capito, me ne vado, vi lascio a questo...
 
-Aleks-:
Codice complicato per me, e i freelance hanno un grande appetito - un messaggio come "scriveremo da zero per un sacco di soldi"...

Va bene ... il codice è complicato e renderlo ancora più complicato è più facile, no?

Puoi anche leggere un libro di testo, la documentazione... La strada è percorsa. Bene... o andare a fare il freelance nelle fauci di alcuni avidi e brutti freelance ;)

 
RSl = iRSI(Symbol(),0,InpRSIPeriod,PRICE_CLOSE,0);

if (OrdersTotal() == 0 && RSl <= 70 )

perché la condizione non è soddisfatta cosa ho scritto di sbagliato?

 
Leanid Aladzyeu:
RSl = iRSI(Symbol(),0,InpRSIPeriod,PRICE_CLOSE,0);

if (OrdersTotal() == 0 && RSl <= 70 )

perché la condizione non è soddisfatta, cosa ho scritto di sbagliato?

Usa lo styler del codice - gli errori saranno visibili.

   RSl=iRSI(Symbol(),0,InpRSIPeriod,PRICE_CLOSE,0);
   if(OrdersTotal()==0 && RSl<=70)
     {
      // здесь долна быть обработка условия
     }
 
Karputov Vladimir:

Usa il Code Styler - gli errori saranno visibili.

La styler non ha aiutato, la condizione di lavorazione c'era.

C'erano 25 avvertimenti e 5 errori e ci sono ancora. yep)))

 

Ho cercato su internet e non ho trovato una soluzione. Aiuto.

Ho ricalcolato il numero uguale di parentesi in tutte le funzioni

 
Leanid Aladzyeu:

Ho cercato su internet e non ho trovato una soluzione. Aiuto.

Ho contato il numero uguale di parentesi in tutte le funzioni.

Non sei bravo con l'inglese?

Prima:

int start()

  {

  }

Compilatelo e poi vedrete, dato che non volete mostrare il codice per intero.

 
Artyom Trishkin:

Non sei bravo con l'inglese?

Prima di tutto:

Poi: da qualche parte nel tuo codice, Ask è impostato come variabile, cosa che non puoi fare assolutamente. Nominatela altrimenti, perché Ask è una variabile predefinita. E poi vedrai, visto che non vuoi mostrare il codice per intero.

Opps . Ask come variabile non lo era. ho aggiunto le parentesi e tali errori sono andati via. ci sono 5 , e 6 avvertimenti rimasti))
 
Leanid Aladzyeu:
Ops. Asc come variabile non lo era. ha aggiunto le parentesi e tali errori sono andati via. 5, e 6 avvertimenti lasciati. risolviamolo)))
Ecco perché ho corretto il mio post originale. Perché la mancanza di parentesi è esattamente ciò che potrebbe aver causato tali errori - mattina, 5 e mezzo, notte senza sonno ...
 
Artyom Trishkin:
Ecco perché ho modificato il mio post originale. Perché la mancanza di parentesi è esattamente ciò che potrebbe aver causato tali errori - mattina, sei e mezza, notte insonne ...

È normale per me non dormire per 24 ore.

Aiuto

C'è una goccia a sinistra. le gambe stanno crescendo da questa funzione "Modifi order" penso

//----------------------------------

void ModificaOrdini()

{

doppio avg= 0;

int count = 0;


for(int i=OrdersTotal()-1; i>=0; i--)

{

if(OrderSelect(i,SELECT_BY_POS,MODE_TRADES))

{

if(OrderSymbol()==Symbol() && OrderMagicNumber()==Magic)

{

if(OrderType()==OP_BUY || OP_SELL)

{

avg+=OrderOpenPrice();

count++;

}

}

}

}


avg=NormalizeDouble(avg/count,Digits);

for(int i=OrdersTotal()-1; i>=0; i--)

{

if(OrderSelect(i,SELECT_BY_POS,MODE_TRADES))

{

if(OrderSymbol()==Symbol() && OrderMagicNumber()==Magic)

{

if(OrderType()==OP_BUY)

{

TP=NormalizeDouble(avg+TakeProfit*Point,Digits);

OrderModify(OrderTicket(),OrderOpenPrice(),0,TP,0);

}

else

if(OrderType()==OP_SELL)

{

TP=NormalizeDouble(avg-TakeProfit*Point,Digits);

OrderModify(OrderTicket(),OrderOpenPrice(),0,TP,0);

}

}

}

}


}

//+------------------------------------------------------------------+