[AVISO FECHADO!] Qualquer pergunta de novato, para não desorganizar o fórum. Profissionais, não passem por aqui. Não posso ir a lugar algum sem você. - página 399

 
gross >>:

Здравствуйте, решил занятся изучением MQL4, начал работать с массивами, возник вопрос: при выводе элемента Time[] выходит такое вот значение 1264149780, вместо вида 2006.11.01 14:35 к примеру, или возможно 1264149780 это координата?

leia https://docs.mql4.com/ru/convert/TimeToStr

1264149780 é o número de segundos transcorridos desde 01.01.1970

 
alsu писал(а) >>

procurar por erros mais lógicos.

O SRC é este:

Encontrou o erro lógico que tudo combina.
Agora que o roteiro é assim, talvez alguém estivesse interessado:
int start()
  {
int Period_CCI=18;
int Period_MA=9;
double MApoCCI;
double ind_CCI, ind_CCI_2;
double Sum_CCI;
for (int k=0; k<5; k++)
  {
      for (int i=1+ k; i< Period_MA+1; i++)
       {
         ind_CCI= iCCI(Symbol(),0, Period_CCI,PRICE_TYPICAL, i);
         Sum_CCI= Sum_CCI+ ind_CCI;
       }
     MApoCCI= Sum_CCI/ Period_MA;
     int n= k+1;
     ind_CCI_2= iCCI(Symbol(),0, Period_CCI,PRICE_TYPICAL, n);
     Alert("MA по СиСиАй "+ k+" = "+ MApoCCI);
     Alert("СиСиАй "+ k+" = "+ ind_CCI_2);
     Sum_CCI=0;
}
//----
   return(0);
  }
 
Vekker писал(а) >>

Você quer um roteiro ou um indicador?

Como exemplo de um indicador

Arquivos anexados:
 
Vinin писал(а) >>

Você quer um roteiro ou um indicador?

Como exemplo de um indicador

Este roteiro será mais tarde na EA - como um roteiro foi escrito para verificar o desempenho desta peça e a exatidão dos números que ela produz para processamento posterior.

>> Obrigado pelo indicador anexo, você pode explicar do que se trata?

 
Vekker писал(а) >>

Este roteiro será mais tarde na EA - como um roteiro foi escrito para verificar o desempenho desta peça e a exatidão dos números que ela produz para processamento posterior.

Obrigado pelo indicador anexo - você pode explicar - do que se trata?

// Construir WPR

para (i=limite;i>0;i--) WPR[i]=iWPR(NULL,0,WPR.Período,i);

//first smoothing
for (i=limit;i>0;i--) EMA1[i]=iMAOnArray(WPR,0,EMA.1.Period,0,MODE_EMA,i);

// Segundo alisamento
para (i=limite;i>0;i--) EMA2[i]=iMAOnArray(EMA1,0,EMA.2.Período,0,MODE_EMA,i);

Devemos criar um indicador que possa ser utilizado posteriormente no Expert Advisor.

Será melhor e mais rápido.

 

Você pode, por favor, me dizer qual é o problema? Eu dou duas peças de código que fecham todos os negócios da mesma direção:

for( ii=0; ii<OrdersTotal(); ii++)
      {
        OrderSelect( ii, SELECT_BY_POS, MODE_TRADES);
        
        if(OrderType()==OP_BUY)
          {
            if( closelong==1)
              {
                OrderClose(OrderTicket(),OrderLots(),Bid,20,Blue);
                return(0);
              }
          }
        if(OrderType()==OP_SELL)
          {
            if( closeshort==1)
              {             
                OrderClose(OrderTicket(),OrderLots(),Ask,20,Red);
                return(0);
              }
          }
      }

e a segunda:

for( ii=OrdersTotal(); ii>0; ii--)
      {
        OrderSelect( ii, SELECT_BY_POS, MODE_TRADES);
        
        if(OrderType()==OP_BUY)
          {
            if( closelong==1)
              {
                OrderClose(OrderTicket(),OrderLots(),Bid,20,Blue);
                return(0);
              }
          }
        if(OrderType()==OP_SELL)
          {
            if( closeshort==1)
              {             
                OrderClose(OrderTicket(),OrderLots(),Ask,20,Red);
                return(0);
              }
          }
      }

Parece ser o mesmo, apenas o segundo deve fechar negócios a partir do último, e o primeiro deve fechar a partir do primeiro.

Portanto, a primeira funciona corretamente, todas as negociações são fechadas, mas a segunda fecha apenas a última e as demais não. Por quê?

 
Azimuth >>:

Подскажите, пожалуйста, в чем тут загвоздка? Даю два куска кода, которые закрывают все сделки одного направления:

и второй:

Вроде бы все тоже самое, только второй должен закрывать сделки, начиная с последней, а первый - начиная с первой.

Так вот, первый работает правильно, все сделки закрываются, а вот второй закрывает только самую последнюю сделку, а остальные - нет. Почему?

Estranho uso de retorno, condições e se o ninho pode ser reduzido.

if ((OrderType()==OP_BUY) && ( closelong==1))


E a contagem regressiva pode EncomendasTotal por um.


 
Você pode me dizer como fazer o ziguezague no testador funcionar. Executo um roteiro procurando pontos pivô e ele dá resultados da janela de citações reais, não é o primeiro indicador que faz isso. Como lutar contra isso.
 
Andrei-1 писал(а) >>
Você pode me dizer como fazer o ziguezague funcionar no testador? Estou executando um roteiro à procura de pontos pivô, mas ele mostra os resultados da janela de citações reais, não é o primeiro indicador que faz isso. Como combatê-lo.

Um ziguezague lançado sobre o gráfico em modo de visualização olha para o futuro.

Posso lhe dar um ziguezague que não olha para o futuro.

 
Vamos tentar. Sim capturando savchenkoandrei-ya@yandex.ru ou link.