Perguntas de Iniciantes MQL5 MT5 MetaTrader 5 - página 269

 
tol64:
Marcar e volume real (se houver).

e qual é a diferença entre carrapato e real???

 
soroko:

Qual é a diferença entre uma teca e uma teca real?

O tick é o número de negócios, real é baseado no tamanho
 
zfs:
tick é o número de trocas, real é baseado no tamanho da troca

então porque é que o verdadeiro mostra 0 em todo o lado ?

 
soroko:

então porque é que o verdadeiro mostra 0 em todo o lado ?

não há dados, não se conhecem volumes reais, isto é para outras trocas como fortalezas
 
zfs:
sem dados, em forex os volumes reais não são conhecidos, isto é para outras trocas como fortificações

Obrigado por me ter poupado o tempo que eu teria passado à procura)

 
Que tal a minha pergunta principal. Que função posso utilizar para preencher a matriz com os últimos 5 preços, a fim de descobrir de que lado o preço atravessa a linha? Obrigado de antemão.
 
soroko:
Compreendo isso, mas como mudar o preço dentro da matriz. Experimentei-o com a função ArrayCopy, ele passa 0,0 ou o mesmo Bid. E também estou preocupado com o código massivo, não posso fazer tudo com uma função?
Elemento por elemento num laço.
 
soroko:
Que tal a minha pergunta principal. Que função posso utilizar para preencher a matriz com os últimos 5 preços, a fim de descobrir de que lado o preço atravessa a linha? Obrigado de antemão.
É necessário obter um conhecimento básico de programação.
 

Não consigo obter os parâmetros de um indicador que não conste do gráfico. Abaixo está o código com todas as coisas desnecessárias removidas, as linhas para obter parâmetros indicadores são copiadas da ajuda. O próprio indicador está anexado ao gráfico de uma hora, mas eu quero trabalhar com cinco minutos. GetLastError() gera erro 4006, mas nada parece estar errado...

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);
  }
//+------------------------------------------------------------------+
 
Olá! tenho um EA escrito em mt4 pode ser convertido para mt5
Razão: