Consultor multimoedas baseado em indicadores de cluster - página 4

 

Estou mais interessado em outra pergunta. Esta é a função do indicador.

//+------------------------------------------------------------------+
//|  Subroutine                                                      |
//+------------------------------------------------------------------+
double ma(string sym, int per, int Mode, int Price, int i)
  {
   double res = 0;
   int k = 1;
   int ma_shift = 0;
   int tf = 0;
   switch(Period())
     {
       case 1:     res += iMA( sym, tf, per* k, ma_shift, Mode, Price, i);
                   k += 5;  // k=6;
       case 5:     res += iMA( sym, tf, per* k, ma_shift, Mode, Price, i);
                   k += 3;  // k=9;
       case 15:    res += iMA( sym, tf, per* k, ma_shift, Mode, Price, i);
                   k += 2;  // k=11;
       case 30:    res += iMA( sym, tf, per* k, ma_shift, Mode, Price, i);
                   k += 2;  // k=13;
       case 60:    res += iMA( sym, tf, per* k, ma_shift, Mode, Price, i);
                   k += 4;  //k=17;
       case 240:   res += iMA( sym, tf, per* k, ma_shift, Mode, Price, i);
                   k += 6;  //k=23;
       case 1440:  res += iMA( sym, tf, per* k, ma_shift, Mode, Price, i);
                   k += 4;  //k=27;
       case 10080: res += iMA( sym, tf, per* k, ma_shift, Mode, Price, i);
                   k += 4;  //k=31;
       case 43200: res += iMA( sym, tf, per* k, ma_shift, Mode, Price, i);
     }
   return( res);
  }  
//+------------------------------------------------------------------+

Parece que o sinal foi confundido. Deveria ter sido multiplicado.

//+------------------------------------------------------------------+
//|  Subroutine                                                      |
//+------------------------------------------------------------------+
double ma(string sym, int per, int Mode, int Price, int i)
  {
   double res = 0;
   int k = 1;
   int ma_shift = 0;
   int tf = 0;
   switch(Period())
     {
       case 1:     res += iMA( sym, tf, per* k, ma_shift, Mode, Price, i);
                   k *= 5;  // k=5;
       case 5:     res += iMA( sym, tf, per* k, ma_shift, Mode, Price, i);
                   k *= 3;  // k=15;
       case 15:    res += iMA( sym, tf, per* k, ma_shift, Mode, Price, i);
                   k *= 2;  // k=30;
       case 30:    res += iMA( sym, tf, per* k, ma_shift, Mode, Price, i);
                   k *= 2;  // k=60;
       case 60:    res += iMA( sym, tf, per* k, ma_shift, Mode, Price, i);
                   k *= 4;  // k=240;
       case 240:   res += iMA( sym, tf, per* k, ma_shift, Mode, Price, i);
                   k *= 6;  // k=1440;
       case 1440:  res += iMA( sym, tf, per* k, ma_shift, Mode, Price, i);
                   k *= 4;  // k=5760;
       case 10080: res += iMA( sym, tf, per* k, ma_shift, Mode, Price, i);
                   k *= 4;  // k=23040
       case 43200: res += iMA( sym, tf, per* k, ma_shift, Mode, Price, i);
     }
   return( res);
  }  
//+------------------------------------------------------------------+

E nos dois últimos cálculos foi cometido um erro.

Por quê?

 
Vinin >>:

Меня вот больше другой вопрос интересует. Вот эта функция в индикаторе.

Похоже что знак перепутан был. Умножение должно было быть

Да и то в последних двух расчетах ошибка сделана.

Почему?

Esta pergunta deveria ser dirigida ao Semen Semenych, o autor dos indicadores, mas ele não tem sido ouvido ou visto há muito tempo. Tanto quanto sei, os indicadores são calculados com base na idéia de que a soma das linhas de todas as moedas no momento é igual a 0. Talvez a partir destas considerações haja adição, não multiplicação.

Embora visualmente a diferença seja óbvia


 

Colegas, peço desculpas por estar fora do tópico ....


apenas para esclarecer:

há alguma técnica para testar EAs em múltiplas moedas?


Obrigado.

 
Morzh09 писал(а) >>

Colegas, peço desculpas por estar fora do tópico ....

apenas para esclarecer:

há alguma técnica para testar EAs em múltiplas moedas?

Obrigado.

Ao testar no MT4, há uma série de problemas. O principal não é muito correto trabalhar com memória. Em geral, isso não é suficiente. A solução mais razoável é importar cotações (sincronizadas) para um Expert Advisor e fazer tudo lá. Incluindo o cálculo de indicadores.

 
Vinin >>:

При тестирования в МТ4 существует ряд проблем. Основная - не совсем корректная работа с памятью. В общем не хватает. Самое разумное - импортировать котирвки (синхронизированные) в программу анализа и делать все там уже. Включая и расчет индикаторов.

Que analisadores de software você pode recomendar?

 
evbut писал(а) >>

Que analisadores de software você pode recomendar?

Normalmente todos usam o que sabem melhor.

 
Vinin >>:

Меня вот больше другой вопрос интересует. Вот эта функция в индикаторе.

Похоже что знак перепутан был. Умножение должно было быть

Да и то в последних двух расчетах ошибка сделана.

Почему?

Você poderia ajustar o indicador como está escrito aqui, ou seja, adicionar o tempo e o controle de carga do histórico?

 
evbut писал(а) >>

Você poderia ajustar o indicador como está escrito aqui, ou seja, adicionar o tempo e o controle de carga do histórico?

Certamente, ou melhor, posso fazer meu próprio análogo. Não se deve consertar o indicador de outra pessoa. Devemos deixá-lo na versão de seu autor.

 
Vinin >>:

Меня вот больше другой вопрос интересует. Вот эта функция в индикаторе.

Похоже что знак перепутан был. Умножение должно было быть

Да и то в последних двух расчетах ошибка сделана.

Почему?

Sim, isso soa como um erro. E os dias devem ser multiplicados por 5 para se ter uma semana.

Por outro lado, a versão do autor "desenha mais bonito", menos dentes. O Semenych viria aqui.


USDJPY


 
BLACK_BOX >>:

Семеныча бы сюда.


onde encontrá-lo :)


Haverá alguém disposto a implementar o TC em código?