Domande dai principianti MQL5 MT5 MetaTrader 5 - pagina 269

 
tol64:
Tick e volume reale (se presente).

e qual è la differenza tra tick e reale?

 
soroko:

Qual è la differenza tra un tek e uno vero?

Tick è il numero di scambi, reale si basa sulla dimensione
 
zfs:
tick è il numero di trade, real si basa sulla dimensione del trade

allora perché quello vero mostra 0 dappertutto?

 
soroko:

allora perché quello vero mostra 0 dappertutto?

nessun dato, i volumi reali del forex non sono noti, questo è per altre borse come forts
 
zfs:
nessun dato, nel forex i volumi reali non sono noti, questo è per altre borse come forts

Grazie per avermi risparmiato il tempo che avrei passato a cercarlo)

 
Per quanto riguarda la mia domanda principale, quale funzione posso usare per riempire l'array con gli ultimi 5 prezzi per scoprire da che parte il prezzo attraversa la linea? Grazie in anticipo.
 
soroko:
Lo capisco, ma come spostare il prezzo all'interno dell'array. Ho provato con la funzione ArrayCopy, passa 0,0 o lo stesso Bid. E sono anche preoccupato per il codice massiccio, non posso fare tutto con una sola funzione?
Elemento per elemento in un ciclo.
 
soroko:
Per quanto riguarda la mia domanda principale, quale funzione posso usare per riempire l'array con gli ultimi 5 prezzi per scoprire da che parte il prezzo attraversa la linea? Grazie in anticipo.
È necessario avere una conoscenza di base della programmazione.
 

Non posso ottenere i parametri di un indicatore che non è sul grafico. Qui sotto c'è il codice con tutte le cose inutili rimosse, le linee per ottenere i parametri dell'indicatore sono copiate dall'aiuto. L'indicatore stesso è collegato a un grafico di un'ora, ma io voglio lavorare con cinque minuti. GetLastError() genera l'errore 4006, ma niente sembra essere sbagliato...

int m_MA_M5;

int OnInit()
  {
  
m_MA_M5 = iMA(NULL, PERIOD_M5, 12, 0, MODE_SMA, PRICE_CLOSE);

if (m_MA_M5 <=0 )
{
   Print("Error create MA");
   return (INIT_FAILED);
}
   
//---
   return(INIT_SUCCEEDED);
  }
//+------------------------------------------------------------------+
//| Custom indicator iteration function                              |
//+------------------------------------------------------------------+
int OnCalculate(const int rates_total,
                const int prev_calculated,
                const datetime &time[],
                const double &open[],
                const double &high[],
                const double &low[],
                const double &close[],
                const long &tick_volume[],
                const long &volume[],
                const int &spread[])
  {
//---

   if (prev_calculated == rates_total)
      return (rates_total);

   
          MqlParam parameters[];
          ENUM_INDICATOR indicator_type;
          int params=IndicatorParameters(m_MA_M5,indicator_type,parameters);
          
          if (params<0)
          {
            Print("Error geted data Last Error=", GetLastError());
          }else{
          
         	 //--- заголовок сообщения
	          string par_info="Short name M5"+", type "
                          +EnumToString(ENUM_INDICATOR(indicator_type))+"\r\n";
        	  //--- 
	          for(int p=0;p<params;p++)
        	    {
	             par_info+=StringFormat("parameter %d: type=%s, long_value=%d, double_value=%G,string_value=%s\r\n",
                                    p,
                                    EnumToString((ENUM_DATATYPE)parameters[p].type),
                                    parameters[p].integer_value,
                                    parameters[p].double_value,
                                    parameters[p].string_value
                                    );
        	    }
	          Print(par_info);
    
   	}
   
//--- return value of prev_calculated for next call
   return(rates_total);
  }
//+------------------------------------------------------------------+
 
Ciao, ho un EA scritto in mt4 può essere convertito in mt5