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

 
Seric29:

Quer dizer, se a condição for verdadeira, então faça 2 acções idênticas, por exemplo

Declarei variáveis e nada é feito excepto esta acçãoPrice_UrNij = Bar_Cl[iHgCL]>Bar_Op[iHgOP] ? Bar_Cl[iHgCL]:Bar_Op[iHgOP]; ou esta acçãoPrice_UrVerh = Bar_Cl[iLwCL]<Bar_Op[iLwOP] ? Bar_Cl[iLwCL]:Bar_Op[iLwOP]; como fazê-lo executar 2 acções idênticas com ambos os níveis superiores e inferiores por condição. Alguém pode sugerir como escrevê-lo de uma forma mais curta?

1. tal código é muito difícil de ler.

          int iHgCL=iHighest(_Symbol,PERIOD_D1,MODE_CLOSE,4,qt+1); int iHgOP=iHighest(_Symbol,PERIOD_D1,MODE_OPEN,4,qt+1);

Quase ninguém procuraria uma declaração variável fora do início de uma linha.

2. Só tem de chamar duas vezes a função de construir níveis dentro do se bloco

vs_Line_TR( Line_TR, iTime(_Symbol,PERIOD_D1,qt+2),  Price_UrNij, iTime(_Symbol,PERIOD_D1,qt), Price_UrNij, clrGreen, DRAW_LINE, 2, false, false);
vs_Line_TR( Line_TR, iTime(_Symbol,PERIOD_D1,qt+2),  Price_UrVerh, iTime(_Symbol,PERIOD_D1,qt), Price_UrVerh, clrGreen, DRAW_LINE, 2, false, false);
 

qual é a diferença na utilização? qual é a nuance?

MqlDateTime dt;
datetime time=TimeTradeServer(dt)

и

MqlDateTime tm;
TimeToStruct(TimeTradeServer(),tm);
 
Fast528:

qual é a diferença na utilização? qual é a nuance?

Provavelmente não há diferença.

 
Alexey Viktorov:

Provavelmente não há diferença.

Presumo que o primeiro caso é se quiser usar a variável tempo e a estrutura, e o segundo caso é apenas os dados da estrutura?

 
Fast528:

Presumo que o primeiro caso é se quiser utilizar a variável tempo e a estrutura, e o segundo caso é apenas os dados da estrutura?

Não prestei atenção à variável tempo.

Para que serve? Afinal de contas, não custa nada traduzir a estrutura em tempo. Mas, neste caso, não haverá memória reservada para a variável.

Ou se precisamos apenas de tempo sem divisão em partes, porque devemos reservar a memória para a estrutura?

 
Alexey Viktorov:

Não prestei atenção à variável tempo.

Para que serve? Não custa nada traduzir a estrutura em tempo. Mas, neste caso, não haverá memória reservada para a variável.

Ou se precisa apenas de tempo sem divisão, porque é que eu precisaria de reservar a memória para a estrutura?

Preciso do indicador para mostrar as posições de entrada/saída no gráfico e traçar uma linha entre elas, por exemplo, no período de hoje menos 1 dia, como normalmente é feito num indicador ou robô?

 

Realização de um teste.

O programa abre o ficheiro no OnInit():

CFileTxt file;
int file_handle=file.Open("file_name.lic",FILE_READ);
if(file_handle==INVALID_HANDLE)
     {      
      return INIT_FAILED;
     }

Não só não encontra o ficheiro na pasta, como também elimina outro ficheiro na pasta MQL5\Files do agente de teste após o teste. Há dois ficheiros no total que são apagados no arranque.

Erro5004 em FileOpen().

O problema está apenas no testador.

Тестирование стратегий - Алгоритмический трейдинг, торговые роботы - MetaTrader 5
Тестирование стратегий - Алгоритмический трейдинг, торговые роботы - MetaTrader 5
  • www.metatrader5.com
Тестер стратегий позволяет тестировать и оптимизировать торговые стратегии (советники) перед началом использования их в реальной торговле. При тестировании советника происходит его однократная прогонка с начальными параметрами на исторических данных. При оптимизации торговая стратегия прогоняется несколько раз с различным набором параметров...
 
Juer:

Realização de um teste.

O programa abre o ficheiro no OnInit():

Não só não encontra o ficheiro na pasta, como também elimina outro ficheiro na pasta MQL5\Files do agente de teste após o teste. Há dois ficheiros no total que são apagados no arranque.

Erro5004 em FileOpen().

O problema está apenas no testador.

As pastas dos agentes estão a ser limpas. Isto é correcto. Se precisar de guardar um ficheiro previamente guardado, utilize a referência ao ficheiro guardado na pasta partilhada.


Exemplo dos meus códigos:

//--- STEP 6
   if(m_file_txt.Open(InpFileName,FILE_WRITE|FILE_COMMON)==INVALID_HANDLE)
 
Vladimir Karputov:

As pastas dos agentes estão a ser limpas. Isto é correcto. Se precisar de guardar um ficheiro previamente guardado, utilize a referência ao ficheiro guardado na pasta partilhada.


Um exemplo dos meus códigos:

Que pasta partilhada? Não o utilizo de todo. Começo sempre no modo portátil. Tenho tudo na pasta de instalação.

 
Juer:

Que pasta partilhada? Não o utilizo de todo. Corro sempre em modo portátil. Tenho tudo na pasta de instalação.

Pasta partilhada:FILE_COMMON. Pesquisar, ler. Pensar.