[ARQUIVO]Qualquer pergunta de novato, para não desorganizar o fórum. Profissionais, não passem por ela. Não posso ir a lugar nenhum sem você - 5. - página 42

 
TarasBY:

Falta uma variável na chamada do indicador - o buffer!!!


Está funcionando. Mais uma vez, obrigado.
 

Pergunta para os conhecedores.

Há um código no gráfico real que os comentários estão corretos. no testador de estratégia todos os valores são iguais a 2147483647

O que está errado aqui?

Ou devemos adicionarEMPTY_VALUE ao cheque?

E devemos sempre normalizar os dados obtidos a partir dos indicadores para compará-los entre si em 5 dígitos?

double adxLastBuy,adxLastSell,adxLast;

for (int i=0; i<Bars; i++)
{
   adxLastBuy=iCustom(NULL,0,"Adx_crossing",ADXbars,CountBars,0,i); if (adxLastBuy>0) break;
   
}
for (int j=0; j<Bars; j++)
{
   
   adxLastSell=iCustom(NULL,0,"Adx_crossing",ADXbars,CountBars,1,j); if (adxLastSell>0) break;
}

for (int k=0; k<Bars; k++)
{
   adxLast=iCustom(NULL,0,"Adx_crossing",ADXbars,CountBars,0,k); if (adxLast>0) break;
   adxLast=iCustom(NULL,0,"Adx_crossing",ADXbars,CountBars,1,k); if (adxLast>0) break;
}



 Comment("Цена последнего ADX Покупки: ", adxLastBuy, " Цена последнего ADX продажи: ", adxLastSell, " Последний сигнал ", adxLast );
 
Twilight:

Pergunta para os conhecedores.

Há um código no gráfico real que os comentários estão corretos. no testador de estratégia todos os valores são iguais a 2147483647

O que está errado aqui?

Ou devemos adicionar EMPTY_VALUE ao cheque?

E devemos sempre normalizar os dados obtidos a partir dos indicadores para compará-los entre si em 5 dígitos?

É obrigatório quando se utiliza o iCustom. Como:
if(signal!=0 && signal!=EMPTY_VALUE){
   BuySignal=true;
}
 
mmm ...há também um problema ...o sinal sonoro às vezes soa como se estivesse no código News.wav e mais frequentemente toca Alert.wav

#property copyright "Copyright © 2012"
#property link      "Не ссать  против ветра "
 
 extern bool       Будильник      = true ;
 extern string SoundFile      =  "News.wav";
 
int start ()                                  
{
 double  a=iCustom(NULL,0,"HMA_Russian_Color",5,MODE_LWMA,PRICE_MEDIAN,"Uptrend[]",0); 
 double  b=iCustom(NULL,0,"HMA_Russian_Color",8,MODE_LWMA,PRICE_MEDIAN,"Uptrend[]",0); 
 
if (Будильник ==true)
{

  {
 if ( a > b ) 
       
 {  
  Alert("BUY
  PlaySound(SoundFile);
  Sleep(100000);
  }
 }
}


return(0);}
 
odiseif:
mmm ...há também um problema ...o sinal sonoro às vezes soa como se estivesse no código News.wav e mais frequentemente toca Alert.wav

Você poderia me dizer, por favor, onde está o erro?
 

Por favor, me ajude, me diga como implementar o código EA em duas ou três linhas:

Quando chega um sinal (por exemplo, cruzamento de dois MAs)

1. Expert Advisor determina a hora do sinal (em horas, minutos), armazena-o;

2. Contagem regressiva de um minuto.

Em seguida, prontidão para fazer algo (por exemplo, abrir um pedido)
 
Twilight:

Pergunta para os conhecedores.

Há um código no gráfico real que os comentários estão corretos. no testador de estratégia todos os valores são iguais a 2147483647

O que está errado aqui?

Ou devemos adicionar EMPTY_VALUE ao cheque?

E devemos sempre normalizar os dados obtidos a partir dos indicadores para compará-los entre si em 5 dígitos?

O buffer indicador tem um conceito de "valor vazio". Ele (por padrão) é igual a EMPTY_VALUE, mas pode ser alterado usando a função SetIndexEmptyValue(). Este é o valor que o tampão não desenha no gráfico (se é que desenha de todo). É o valor em falta que deve ser verificado, se necessário.
 
odiseif:
Mm ... há também um problema ... o bip às vezes soa como o código News.wav e mais frequentemente toca Alert.wav

Há alguns disparates escritos aqui:

 double  a=iCustom(NULL,0,"HMA_Russian_Color",5,MODE_LWMA,PRICE_MEDIAN,"Uptrend[]",0); 
 double  b=iCustom(NULL,0,"HMA_Russian_Color",8,MODE_LWMA,PRICE_MEDIAN,"Uptrend[]",0);

Leia sobre o iCustom().

 
Andrey-F:

Por favor, me ajude, me diga como implementar o código EA em duas ou três linhas:

Quando chega um sinal (por exemplo, cruzamento de dois MAs)

1. Expert Advisor determina a hora do sinal (em horas, minutos), armazena-o;

2.contagem regressiva de um minuto.

A seguir, prontidão para fazer alguma ação (por exemplo, abrir um pedido)

Em uma variável global, você escreve o valor de tempo no momento do recebimento do sinal:

    if (Signal) gdt_TimeSignal = TimeCurrent();

e depois faça uma contagem regressiva de seu minuto (você pode fazer isso):

    if (gdt_TimeSignal != 0) if (iBarShift (NULL, 1, gdt_TimeSignal) == 1)
    {
        //---- Открываете ордер
        OrderSend ();
        gdt_TimeSignal = 0;
    }

Esta é uma solução para acompanhar o tempo após a ocorrência de um evento.

 
TarasBY:

Em uma variável global, escreva o valor de tempo no momento do sinal:

e depois faça uma contagem regressiva de seu minuto (você poderia fazer isso):

Esta é uma solução para rastrear o tempo após algum evento ter ocorrido.



Alternativamente, você pode definir a qualquer momento após a chegada do sinal
if (Signal) gdt_TimeSignal = TimeCurrent();
//
//
//
if (TimeCurrent()-gdt_TimeSignal >=60)
     {
     //
     }
Razão: