Tutte le domande dei nuovi arrivati su MQL4 e MQL5, aiuto e discussione su algoritmi e codici - pagina 1129

 

Per favore, ditemi. Ci sono due buffer con valori nell'indicatore.

Buf1[0]=12.00000;
Buf2[0]=0.00045;

Cercando di ottenere il valore del terzo buffer.

Buf3[0]=Buf2[0]/Buf1[0];

Niente.

Cosa sto facendo di sbagliato?

Grazie.

 
Oleg Bondarev:

Per favore, ditemi. Ci sono due buffer con valori nell'indicatore.

Cercando di ottenere il valore del terzo buffer.

Niente.

Cosa sto facendo di sbagliato?

Grazie.

Non si riceve. Lo stai scrivendo.

 
Artyom Trishkin:

Non si riceve. Lo stai scrivendo.

Non capisco.
 

Si assegna un valore al 3° buffer. "E niente" è cosa? )))

Come stai cercando di ottenere questo valore?

 
Сергей Таболин:

Si assegna un valore al 3° buffer. "E niente" è cosa? )))

Come stai cercando di ottenere questo valore?

Sto assegnando un quoziente dividendo i valori del secondo e del primo buffer.

Si ottiene un buffer vuoto.

Документация по MQL5: Основы языка / Операции и выражения / Арифметические операции
Документация по MQL5: Основы языка / Операции и выражения / Арифметические операции
  • www.mql5.com
Операция инкремента и декремента применяются только к переменным, к константам не применяются. Префиксныe инкремент (++i) и декремент (--k) применяются к переменной непосредственно перед использованием этой переменной в выражении. Могут возникнуть вычислительные проблемы при переносе вышеуказанного выражения из одной среды программирования в...
 
Oleg Bondarev:

Assegno il quoziente dividendo i valori del secondo e del primo buffer.

Il buffer è vuoto.

Forse non è il buffer che è vuoto, ma il grafico).

 
Oleg Bondarev:

Assegno il quoziente dividendo i valori del secondo e del primo buffer.

Si ottiene un buffer vuoto.

È così che funziona.

void OnStart()
{
   double   Buf1[];
   double   Buf2[];
   double   Buf3[];
   
   ArrayResize(Buf1,1);
   ArrayResize(Buf2,1);
   ArrayResize(Buf3,1);
   
   Buf1[0]=12.00000;
   Buf2[0]=0.00045;
   
   Buf3[0]=Buf2[0]/Buf1[0];
   
   ArrayPrint(Buf3);
}
2020.04.18 21:19:09.970 test (EURUSD,H1)        0.00004
 
Сергей Таболин:

È così che funziona.

Grazie, ma ho una domanda. I buffer che ho sono indicativi e sembrano.

Buf1[0]=Buf1[0]+delta1;
Buf2[0]=Buf2[0]+delta2;

Funzionerà in questa forma?

 
Oleg Bondarev:

Grazie, ma ho una domanda. I miei buffer sono indicativi e hanno una vista.

Funzionerà in questa forma?

Il buffer è un array regolare. Credo che stiate scrivendo domande più lunghe di quelle che potreste controllare con un semplice esempio. Tutto quello che hai scritto funzionerà e può anche essere semplificato.

Buf1[0]+=delta1;
Buf2[0]+=delta2;
 
Grazie a tutti per il vostro aiuto!