[ARQUIVO!] Qualquer pergunta de novato, para não desorganizar o fórum. Profissionais, não passem por aqui. Em nenhum lugar sem você - 4. - página 470

 
hoz:

A documentação diz que a função SetIndexEmptyValue é usada para especificar um valor "vazio". Ou seja, especificamos a que valor não precisamos extrair nada. É muito conveniente em nosso caso, pois os sinais não ocorrem em todos os bares. Funciona da seguinte forma. Quando você não precisa desenhar a seta na barra atual, você atribui um valor "vazio" para a entrada apropriada do buffer de dados, em nosso caso 0.

Algo que eu não entendo. Se algo for desenhado pelo sinal, não será desenhado sem o sinal. Então, qual é o objetivo desta função em geral?


É costume que o computador indique explicitamente que não há valor. Então não parece ser nada zero. Imagine desenhar um buffer - aqui ele tem o valor 1.2903, 1.2905, 1.2904... E, de repente, 0. Nessas névoas, as linhas indicadoras terão que mergulhar de repente abaixo da janela!!!
 
hoz:

A documentação diz que a função SetIndexEmptyValue é usada para especificar um valor "vazio". Ou seja, especificamos a que valor não precisamos extrair nada. É muito conveniente em nosso caso, pois os sinais não ocorrem em todos os bares. Funciona da seguinte forma. Quando você não precisa desenhar a seta na barra atual, você atribui um valor "vazio" para a entrada apropriada do buffer de dados, em nosso caso 0.

Algo que eu não entendo. Se algo for desenhado pelo sinal, não será desenhado sem o sinal. Então, qual é o objetivo desta função em geral?

Esta função preenche a matriz (neste caso, o buffer indicador) com um valor vazio EMPTY_VALUE = 0x7FFFFFFFFFFFFFF.
 
drknn:


Na verdade, existe um tipo especial de variável no idioma - a cor é chamada. Por exemplo:

Velichina dupla;

MyLine;

Velichina=2,569;

MyLine=Red;


Eu o tinha assim.
  OrderSend( NULL, OP_BUY, lot, Ask, 3, NormalizeDouble( Bid- (stoplos*Point),Digits),   NormalizeDouble( Ask+( takeprofit*Point),Digits), NULL, magicnumber, 0, 00 FF33);  }
           
O que ele deve fazer, escrever cor lá dentro?
 
Dimka-novitsek:

Eu tinha assim O que ele deveria escrever ali, uma cor especial, ou o quê?

Não, você pode escrever simplesmente Vermelho em vez de 00FF33, ou qualquer cor da tabela de cores da Web - abra este link - há cores suficientes para não usar o código hexadecimal.
 
Robô
//+------------------------------------------------------------------+
//|                                                     советник.mq4 |
//|                        Copyright 2012, MetaQuotes Software Corp. |
//|                                        http://www.metaquotes.net |
//+------------------------------------------------------------------+
#property copyright "Copyright 2012, MetaQuotes Software Corp."
#property link      "http://www.metaquotes.net"


  extern double  lot=1;                          
  extern int taymfreym=0 ;                           
  extern double  stoplos=20 ;                          
  extern double  takeprofit=50 ; 
  extern double  magicnumber=350//+------------------------------------------------------------------+
//| expert start function                                            |
//+------------------------------------------------------------------+
int start()
  {
//----
            double strela1 = iCustom(NULL, taymfreym, "индикатор", 0, 1);
            double strela2 = iCustom(NULL, taymfreym, "индикатор", 1, 1);
            int BUY=0,SELL=0;int ticket; 
            Print (  " strela1 " , strela1 , "   strela2  " , strela2  );
            
    
            
            for(int i=1; i<=OrdersTotal(); i++) {  
            if (OrderSelect(i-1,SELECT_BY_POS)==true) // Если есть следующий
        {                                       // Анализ ордеров:
         if (OrderSymbol()!=Symbol( ) )continue;      // Не наш фин. инструм
         if (OrderMagicNumber( ) !=magicnumber)continue;
         if (OrderType()==0){ BUY++; ticket=OrderTicket( );}
         if (OrderType()==1) {SELL++;ticket=OrderTicket( );}    } }
         
   if (strela1>strela2&&BUY==0&&SELL==0){               
            
           OrderSend( NULL, OP_BUY, lot, Ask, 3, NormalizeDouble( Bid- (stoplos*Point),Digits), 
  NormalizeDouble( Ask+( takeprofit*Point),Digits), NULL, magicnumber, 0, CLR_NONE);  }
           
           
   if (strela1<strela2&&BUY==0&&SELL==0){  
   
            OrderSend( NULL, OP_SELL, lot, Bid, 3, NormalizeDouble( Ask- (stoplos*Point),Digits), 
  NormalizeDouble( Bid+( takeprofit*Point),Digits), NULL, magicnumber, 0, CLR_NONE) ; }
            
            
  if (strela1>strela2&&BUY==0&&SELL!=0){ 
   OrderSelect(ticket, SELECT_BY_TICKET);
   OrderClose(  ticket , OrderLots( ) , OrderOpenPrice( ) , 3, CLR_NONE);                 
   OrderSend( NULL, OP_BUY, lot, Ask, 3, NormalizeDouble( Bid- (stoplos*Point),Digits),  
 NormalizeDouble( Ask+( takeprofit*Point),Digits), NULL, magicnumber, 0, CLR_NONE);  }         
      
  if (strela1<strela2&&SELL==0&&BUY!=0){ 
   OrderSelect(ticket, SELECT_BY_TICKET);
   OrderClose(  ticket , OrderLots( ) , OrderOpenPrice( ) , 3, CLR_NONE);                 
   OrderSend( NULL, OP_SELL, lot, Bid, 3, NormalizeDouble( Ask- (stoplos*Point),Digits),  
 NormalizeDouble( Bid+( takeprofit*Point),Digits), NULL, magicnumber, 0, CLR_NONE) ; }
      
            
            
//----
   return(0);
  }
//+------------------------------------------------------------------+
É um lugar
 double strela1 = iCustom(NULL, taymfreym, "индикатор", 0, 1);
 double strela2 = iCustom(NULL, taymfreym, "индикатор", 1, 1);

O strela2 não funciona, seu valor é -1. Tarefa se a seta estiver para cima, comprar ordem e vice-versa. Ou talvez eu não esteja escrevendo direito!!!

Estouusando esteiCustom pela primeira vez. É correto comparar strela1 e strela2desta forma? Que tipo de valores eu recebo - quero dizer, eu percebo que é

o primeiro e o segundo amortecedores, mas não mais do que isso.

Com o que ele desenha as setas?

 

Indicador

/*ДЕКОМПИЛ УДАЛЕН, ВАМ ПРЕДУПРЕЖДЕНИЕ*/

De qualquer forma, com o que ele desenha as flechas?

 

O que significa a palavra "tralit"?

A citação lê-se na íntegra desta forma:

<Advisor usa sinais indicadores"Alligator" para entradas, move a posição para Breakeven e arrasto com um passo definido.

 
Eu não entendo! Mandei um cara me enviar um indicador no correio. De onde ele a descompilou? Sim, já vi indicadores bastante semelhantes mais de uma vez. Por favor, coloque-os de volta onde eles pertencem!
 
Sim, eu vi uma linha nela.
 
Dimka-novitsek:
Eu não entendo! Mandei um cara me enviar um indicador no correio. De onde ele a descompilou? Sim, já vi indicadores bastante semelhantes mais de uma vez. Por favor, coloque-os de volta onde eles pertencem!

O descompilar é o resultado de um roubo do código do programa. Foi-lhe enviado um item roubado. Você não vai tê-lo de volta. As setas em sua captura de tela são desenhadas pelo indicador, não pelo Conselheiro Especialista, cujo código você mostrou.