[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 961

 
artmedia70:

É tudo individual e todo IMHO.

"...preciso encontrar a variante EA com os melhores resultados..." Estes resultados - não significam quase nada para o presente e futuro - eles são ajustados para a HISTÓRIA - e portanto para o passado.

Trata-se, em particular, da minha atitude em relação à velocidade e, mais ainda, à otimização - tento reduzir os parâmetros ajustáveis da EA a zero. De acordo com minhas observações - a otimização é apenas uma questão de adequação aos dados históricos, que não tem significado para o presente. Por que eu preciso de um brinquedo que tenha sido razoavelmente bem comercializado no passado?

Por esta mesma razão, todos os meus Conselheiros Especialistas têm parâmetros auto-ajustáveis para a situação atual do mercado, e não reagem à história com parâmetros rigidamente escritos, mas aos eventos atuais, mudando dinamicamente alguns de seus parâmetros para se adequarem ao momento presente... E eu NUNCA os otimizo. Basta-me correr um ou dois meses de história para encontrar erros e ter certeza de que minha lógica de Expert Advisor funciona corretamente e é lucrativa.

Portanto, não leve a sério o humor do meu soldado. Peço desculpas, espero - sem ofensa? :))

Artem, está tudo bem). Se você fosse uma menina, eu lhe daria flores virtuais )) Obrigado. Sobre a "cor verde" - os resultados estão ligados não apenas à história, mas ao movimento МА (sim, pela história, mas de outra forma não se pode ver seu possível comportamento e variantes). Se até mesmo uma pequena regularidade for detectada - afinal sempre haverá movimentos para cima e para baixo - isso será a otimização. Talvez todas as minhas iniciativas estejam erradas, mas não tenho nenhuma outra opção para dirigir o Expert Advisor a fim de determinar pelo menos parte de sua usabilidade. Eu só quero otimizá-lo uma vez ) E eu quero ou recusar esta EA ou levá-la para o trabalho. E se durante 4 anos houver um lucro constante - é um critério fraco? Afinal de contas, então algum tipo de regularidade é capturado. Por exemplo, se a corrente do rio mudar para frente e para trás - pequenas pedras leves irão rolar para frente e para trás em pequenas distâncias em qualquer caso - isso é dependência.
 
volshebnik:
Nikolai, obrigado. Eu uso indicadores padrão - MA. O código é mais de mil linhas, quem gostaria de se preocupar com ele, eu acho. O cálculo é feito uma vez por um tick (verifiquei-o com "alertas").
Talvez haja alguns cálculos sem os quais possamos prescindir, por exemplo, erro e todo tipo de tratamento de situações anormais, não são necessários no estágio de desenvolvimento, e podem ser adicionados quando o algoritmo de negociação estiver pronto e a EA puder ser configurada para negociação real. Quantas vezes o Consultor Especialista percorre todos os pedidos? Existem muitos loops e funções iHighest/ilowest? Mil linhas, sim, muito poucas pessoas o entenderiam, exceto por um olhar rápido, caso algo chame sua atenção...
 
Techno:
Também é possível que haja cálculos sem os quais você pode prescindir, por exemplo, de erros de manipulação e todo tipo de situações anormais não são necessárias na fase de desenvolvimento, elas podem ser adicionadas quando o algoritmo de negociação estiver completo e você pode começar a usar o Expert Advisor de verdade. Quantas vezes o Consultor Especialista percorre todos os pedidos? Existem muitos loops e funções iHighest/ilowest? Mil linhas, sim, apenas muito poucas pessoas o entenderiam, exceto para uma rápida olhada ao redor no caso de algo chamar sua atenção.
Todas as ordens são testadas a cada tick (porque as ordens são modificadas ao atingir um determinado nível, e esta conquista só pode ser avaliada por um tick). Eu ainda não implementei nenhuma situação anormal; o tratamento de erros existe, sim. E os ciclos são contados somente na abertura de cada hora (atraso significativo é perceptível, quando cada carrapato é verificado, como descrito).
 
volshebnik:
Todas as ordens são reproduzidas em cada tick (porque as ordens são modificadas quando um certo nível é atingido, e esta conquista só pode ser definida por um tick). Eu ainda não implementei nenhuma situação anormal, mas o tratamento de erros existe. E os ciclos são contados somente na abertura de cada hora (atraso significativo é perceptível, quando cada carrapato é verificado, como descrito).
parece que não há nada de egrégio, algo mais já pode ser dito com o código...
 
Techno:
não parece haver nada de egrégio, algo mais pode ser dito com o código...
Obrigado, Nikolai, era isso que eu estava imaginando - a velocidade do testador aumentaria significativamente se eu mudasse o processador?
 
volshebnik:
Obrigado, Nikolai, era isso que eu estava imaginando - a velocidade do testador aumentaria significativamente se eu mudasse o processador?
O problema não está no processador, mas no código EA, em algum lugar há gargalos, mas é impossível diagnosticá-los e corrigi-los por palavras, você precisa do código
 
Olá a todos! Pergunta: Como posso modificar uma ordem pendente e uma posição já aberta, pré-selecionando-as por número mágico. Se você puder me dar um exemplo. Eu gostaria de lhe fazer uma pergunta.
 
Você pode me dizer se, quando ativado, um EA pode tomar o nível de preço de uma entrada no mercado ou ordem pendente de uma célula Excel (os números correspondentes serão digitados lá com antecedência)?
 
Ajude a "reanimar" o indicador. Ela funciona de acordo com os dados históricos, mas não de acordo com os novos dados. Ao menos me dê a razão.
#property copyright "Stellar Space"
#property link      "http"

#property indicator_chart_window                                               // Индикатор рисуется в основном окне
#property indicator_buffers 2                                                  // Количество индикаторных буферов
#property indicator_color1 DarkGreen                                           // Цвет первой линии
#property indicator_width1 1                                                   // Ширина первой линии
#property indicator_color2 Crimson                                             // Цвет второй линии
#property indicator_width2 1                                                   // Ширина второй линии

extern int Code_1=159;                                                         // Код значка
extern int Code_2=159;                                                         // Код значка

extern int History=1000;                                                       // Количество баров истории

double Buf_0[],Buf_1[];                                                        // Объявление массива под буфер индикатора

//+------------------------------------------------------------------+
int init()
 {
 
 SetIndexBuffer(0,Buf_0);                                                      // Назначение массива буферу
 SetIndexStyle(0, DRAW_ARROW);                                                 // Стиль линии
 SetIndexArrow(0, Code_1);                                                     // Стиль Arrow
 SetIndexLabel(0,"Максимум (1 уровень)");                                      // Установка имени линии индикатора 
 SetIndexBuffer(1,Buf_1);                                                      // Назначение массива буферу
 SetIndexStyle(1, DRAW_ARROW);                                                 // Стиль линии
 SetIndexArrow(1, Code_2);                                                     // Стиль Arrow
 SetIndexLabel(1,"Минимум (1 уровень)");                                       // Установка имени линии индикатора 
  
 return(0);
 }

//+------------------------------------------------------------------+
int start()
 {
 
 int i;                                                                        // Индекс бара
 int a,b,c,d,e,f,g,h,j,k,l,m,n,o,p,q;                                          // Объявление переменых
 int Counted_bars=IndicatorCounted();                                          // Количество просчитанных баров
 
 
//+------------------------------------------------------------------+         // START
 i=MathMin(History,Bars-Counted_bars-1);

  while(i>0)                                                                    // Цикл по непосчитанным барам
 {

 
//+------------------------------------------------------------------+         // A

 for(a=i; a>0; a--)    
 {//Aa
 if (High[a+1]<High[a]&&Low[a+1]<Low[a])
    {b=a;}    
 else {break;}
 }//Aa
//--
 for(a=i; a>0; a--)    
 {//Ab
 if (High[a+1]>High[a]&&Low[a+1]>Low[a])
    {c=a;}
 else {break;}
 }//Ab
//--

 for(a=i; a>0; a--)    
 {//Ac
 if (b>c){d=b;}    
 else {break;}
 }//Ac 
//--
 for(a=i; a>0; a--)    
 {//Ad
 if (c>b){e=c;}    
 else {break;}
 }//Ad
//--

 for(a=i; a>0; a--)    
 {//Ae
 if (e>d&&d>c)
  {
   f=iHighest(NULL,0,MODE_HIGH,e-c,c);
   Buf_0[f]=High[f]+2*Point;
  }    
 else {break;}
 }//Ae 
 for(a=i; a>0; a--)    
 {//Af
 if (d>e&&e>b)
  {
   g=iLowest(NULL,0,MODE_LOW,d-b,b);
   Buf_1[g]=Low[g]-2*Point;
  }    
 else {break;}
 }//Af 
 

//+------------------------------------------------------------------+
 i--;
 }

//+------------------------------------------------------------------+         // FINISH

 //!

 return(0);
 }

//+------------------------------------------------------------------+
int deinit()
 {
 return(0);
 }
  
//+------------------------------------------------------------------+
 

Onde posso obter cotações M30(ou inferiores) mais antigas que 2004 para QUALQUER ações ou índices. NÃO em moedas? Obrigado