O testador MT4 não fornece informações de outros períodos de tempo - página 5

 
avatara писал(а) >>

Teria a gentileza de corrigir o código. Basta emitir os dados corretos da M1.

Teste no m15.
Obrigado de antemão!


E leia o artigo que a Roche aconselhou.

 
Rosh >>:
Вы что, проверяете этот код в режиме визуального тестирования? Почитайте статью Тестер в терминале MetaTrader 4: Это необходимо знать

Eu li e não apenas este artigo, é por isso que estou intrigado - está escrito que você pode ver qualquer TF em modo de teste,
Mas na verdade iHigh(NULL,PERIOD_D1,0) e funções similares no testador são apenas do TF atual.
Talvez algo esteja errado com meu testador, mas parece que não sou o único, a julgar pelo feedback das pessoas.
Você já se verificou?

 
Vinin >>:


А статью прочитал, что Рош советовал.

Mais de uma vez.

Apenas não dê conselhos de um tipo similar

double arr1[][6];

int init()
  {
   ArrayCopyRates(arr1,Symbol(), tf); // tf - необходимый таймфрейм
   return(0);
  }
ou feitiços - tudo isso está contando para as pessoas erradas.
Eu lhe dei o código - conserte-o.
Uma lição para mim e para os outros.
;)
 
vladv002 писал(а) >>

Eu li e não apenas este artigo, é por isso que estou intrigado - está escrito que você pode ver qualquer TF em modo de teste,
Mas na verdade iHigh(NULL,PERIOD_D1,0) e funções similares no testador são apenas do TF atual.
Talvez algo esteja errado com meu testador, mas parece que não sou o único, a julgar pelo feedback das pessoas.
Você já se verificou?



Ver significa obter valores na EA.
E no modo de teste visual, os indicadores esboçados obtêm valores a partir de dados reais, não de dados simulados.
 
Vinin >>:


Видеть, значит получать значения в советнике.
А в режиме визульного тестирования наброшенные индикаторы получают значения с реальных данных, а не с моделированных.

Sim, a partir de um horário off-line. ;)

 
avatara писал(а) >>

Sim, a partir de um horário off-line. ;)

A partir de dados reais. Para a exibição correta do indicador neste modo, é necessário complicá-lo em excesso. Para verificar a possibilidade de obter dados de diferentes prazos, basta fazer no Expert Advisor Print() dos valores requeridos, e depois procurar nos logs.
 
Isso é esquisito? Está funcionando muito bem para mim. Em qualquer modo de teste.

//+------------------------------------------------------------------+
//|                                                     test_acr.mq4 |
//+------------------------------------------------------------------+

double arr1[][6];
double arr5[][6];
double arr15[][6];
double arr30[][6];
double arr60[][6];
double arr240[][6];
double arr1440[][6];
double arr10080[][6];
double arr43200[][6];

//+------------------------------------------------------------------+
//| expert initialization function                                   |
//+------------------------------------------------------------------+
int init()
  {
//----
ArrayCopyRates(arr1,Symbol(), 1);   
ArrayCopyRates(arr5,Symbol(), 5);   
ArrayCopyRates(arr15,Symbol(), 15);   
ArrayCopyRates(arr30,Symbol(), 30);   
ArrayCopyRates(arr60,Symbol(), 60);   
ArrayCopyRates(arr240,Symbol(), 240);   
ArrayCopyRates(arr1440,Symbol(), 1440);   
ArrayCopyRates(arr10080,Symbol(), 10080);   
ArrayCopyRates(arr43200,Symbol(), 43200);   
//----
   return(0);
  }
//+------------------------------------------------------------------+
//| expert deinitialization function                                 |
//+------------------------------------------------------------------+
int deinit()
  {
//----
   
//----
   return(0);
  }
//+------------------------------------------------------------------+
//| expert start function                                            |
//+------------------------------------------------------------------+
int start()
  {
//----
Comment (
"\n", " -----------1------ = ",arr1[0][1]," - ", arr1[0][4],
"\n", " -----------2------ = ",arr5[0][1]," - ", arr5[0][4],
"\n", " -----------3------ = ",arr15[0][1]," - ", arr15[0][4],
"\n", " -----------4------ = ",arr30[0][1]," - ", arr30[0][4],
"\n", " -----------5------ = ",arr60[0][1]," - ", arr60[0][4],
"\n", " -----------6------ = ",arr240[0][1]," - ", arr240[0][4],
"\n", " -----------7------ = ",arr1440[0][1]," - ", arr1440[0][4],
"\n", " -----------8------ = ",arr10080[0][1]," - ", arr10080[0][4],
"\n", " -----------9------ = ",arr43200[0][1]," - ", arr43200[0][4]);   
//----
   return(0);
  }
//+------------------------------------------------------------------+
 
Vinin >>:

С реальных данных. Для корректного отображения индикатора в таком режиме нужна излишнее его усложнение. Для проверки возможности получения данных с разных таймфреймов достаточно сделать в советнике Print() нужных значений, а потом в логах смотреть.

Do que você está falando? Estamos falando do testador em geral.

 
avatara писал(а) >>

Do que você está falando? Estamos falando do testador em geral.


Estou falando do testador também. Aparentemente, você não leu o artigo muito bem.
 
Mais uma vez para você e Sych.

Você pode me dizer como escrever um indicador multitimeframe correto para que ele funcione corretamente no testador?

Os resultados do teste seriam os mesmos.
Por exemplo, você pode tentar Tikovsky;)
Execute-o em um testador respeitável, por exemplo.