Comunità di esperti - pagina 6

 
Che differenza vuoi trovare? differenza di matrice? Quindi le matrici non possono essere aggiunte o sottratte. trova la differenza elemento per elemento.
 
Che differenza vuoi trovare? Differenza di matrice? Quindi non possiamo aggiungere o sottrarre matrici. trovare la differenza elemento per elemento.


Solo che non ci è chiaro chukchi perché dici che stiamo cercando di sottrarre gli array, lo facciamo come mostrato nel dizionario MKL4:


double macurrent=iMAOnArray(ExtBuffer,0,5,0,MODE_LWMA,0);
   double macurrentslow=iMAOnArray(ExtBuffer,0,10,0,MODE_LWMA,0);
   double maprev=iMAOnArray(ExtBuffer,0,5,0,MODE_LWMA,1);
   double maprevslow=iMAOnArray(ExtBuffer,0,10,0,MODE_LWMA,1);
   //----
   if(maprev<maprevslow && macurrent>=macurrentslow)
     Alert("crossing up");



Per favore, consigliatemi!

 
Grazie, Slava, per il suggerimento.

Ecco il codice con l'errore

ArrayCopySeries(ma_C, MODE_CLOSE, "EURUSD", PERIOD_H1);
double ma_6C=iMAOnArray( ma_C, 0, 3*MA_period,0,MODE_SMA,1 );



Ed ecco un lavoratore

ArrayCopySeries(ma_C, MODE_CLOSE, "EURUSD", PERIOD_H1);

 ma_6C=ma_C[1];

for(i=2; i<(3*MA_period); i++)
   {
      ma_6O+=ma_O[i];
      ma_6C+=ma_C[i];
   }

ma_6C/=(3*MA_period);
 
L'argomento è stato spostato su http://forum.viac.ru/viewtopic.php?t=2973
 
L'argomento è stato spostato su http://forum.viac.ru/viewtopic.php?t=2973
 
L'argomento è stato spostato su http://forum.viac.ru/viewtopic.php?t=2973
 
Una domanda per coloro che conoscono le profondità di MKL4.

C'è qualche comando standard che permette all'esperto
per vedere l'intersezione delle medie. Per esempio, una media del periodo 5 incrocia una media
del periodo 20. L'Expert Advisor può vedere come una persona il momento dell'attraversamento,
c'è una funzione o un comando standard per questo tipo di cose?

La figura qui sotto mostra l'intersezione delle medie rossa e verde come
È un esempio di ciò che l'Expert Advisor dovrebbe vedere e lavorare su questo segnale.
 
M1 - primo scorrimento,
M2 è il secondo scorrimento.

Dobbiamo confrontare i segni delle differenze (M1 - M2)
sulla barra corrente e su quella precedente.
Se sono diversi, significa che c'è un incrocio.
Il caso speciale è quando una delle differenze = 0.

Si può fare così
if ((M1[0] - M2[0]) != 0)
{ 
   double R = 0;
   for (int i = 1; i < Bars && R == 0; i++)  R = (M1[i] - M2[i]);
   if ((M1[0] - M2[0]) * R < 0)
   {
      // Знаки разные, есть пересечение ..........
   }
}



(non ho controllato personalmente)

 
...C'è qualche comando standard che permette a Expert Advisor<br / translate="no"> di vedere il crossover delle medie.

non c'è uno standard.
L'Expert Advisor può vedere il tempo di crossover come un umano,
c'è una funzione o un comando standard per queste cose?

Facilmente
...come esempio di ciò che l'Expert Advisor dovrebbe vedere e lavorare su questo segnale.

vedere il dizionario iMAOnArray, c'è anche un esempio con intersezione
nel caso in cui
   double macurrent=iMAOnArray(ExtBuffer,0,5,0,MODE_LWMA,0);
   double macurrentslow=iMAOnArray(ExtBuffer,0,10,0,MODE_LWMA,0);
   double maprev=iMAOnArray(ExtBuffer,0,5,0,MODE_LWMA,1);
   double maprevslow=iMAOnArray(ExtBuffer,0,10,0,MODE_LWMA,1);
   //----
   if(maprev<maprevslow && macurrent>=macurrentslow)
     Alert("crossing up");



2Sysadmin, il pulsante "enter" è di nuovo nascosto. Inoltre, a quanto ho capito [pre] è stato sostituito con [code]?

 
Perché si sottopone a questa operazione e cosa fa?

   for (int i = 1; i < Bars && R == 0; i++)  R = (M1[i] - M2[i]);