Qualquer pergunta de novato, de modo a não desorganizar o fórum. Profissionais, não passem por aqui. Em nenhum lugar sem você - 6. - página 474

 

Ajuda com conselhos. Na versão antiga do terminal minha última tabela de preços funcionou, mas na nova construção 609 não funciona mais.

A questão é como armazenar os últimos, digamos, 20 ticks de preço na matriz?

 
polundra:

Ajuda com conselhos. Na versão antiga do terminal minha última tabela de preços funcionou, mas na nova construção 609 não funciona mais.

A questão é como armazenar os últimos, digamos, 20 ticks de preço na matriz?

Fi-lo uma vez a pedido de um amigo (indicador). O princípio pode ser compreendido.
Arquivos anexados:
tickcount.mq4  3 kb
 
TarasBY:
Era uma vez, eu o esbocei a pedido de um camarada (indicador). O princípio pode ser compreendido.
Obrigado, vou dar uma olhada nisso.
 

Se você souber como colocar a função martingale no código (por exemplo, este), por favor, informe. Deve ser ativado em um comércio perdido e depois de um comércio lucrativo deve retornar aos ajustes do lote.



//+------------------------------------------------------------------+
//|                                                                  |    
//+------------------------------------------------------------------+
             //внешние переменные
extern int x = 5;
extern int y = 19;             
extern double TakeProfit = 300;
extern double stoploss = 300;
extern double Lots = 0.1;
//+------------------------------------------------------------------+
//|                                                                  |
//+------------------------------------------------------------------+
int start()
  {
   double MA1, MA2;
   int cnt, ticket, total;
   MA1=iMA(NULL,0,x,0,MODE_SMA,PRICE_CLOSE,0);
   MA2=iMA(NULL,0,y,0,MODE_SMA,PRICE_CLOSE,0);
   total=OrdersTotal();
   if(total<1)//проверка количества ордеров 
     {
      // проверка свободных средств
      if(AccountFreeMargin()<(1000*Lots))//количество свободных средств
        {
         Print("Недостаточно средств = ", AccountFreeMargin());
         return(0);  
        }
      // открытие длинной позиции
      if(MA1>MA2)
        {
         ticket=OrderSend(Symbol(),OP_BUY,Lots,Ask,3,Bid-stoploss*Point,Ask+TakeProfit*Point,"-",0,0,Blue);
         if(ticket>0)
           {
            if(OrderSelect(ticket,SELECT_BY_TICKET,MODE_TRADES)) Print("открыта позиция BUY : ",OrderOpenPrice());
           }
         else Print("Ошибка при открытии BUY позиции : ",GetLastError()); 
         return(0);
        }
      // открытие короткой позиции
      if(MA1<MA2)
        {
         ticket=OrderSend(Symbol(),OP_SELL,Lots,Bid,3,Ask+stoploss*Point,Bid-TakeProfit*Point,"-",0,0,Red);
         if(ticket>0)
           {
            if(OrderSelect(ticket,SELECT_BY_TICKET,MODE_TRADES)) Print("открыта позиция SELL : ",OrderOpenPrice());
           }
         else Print("Ошибка при открытии SELL позиции : ",GetLastError()); 
         return(0); 
        }
      return(0);
     }
   }
 
vasabu2012:
A questão do problema de pessoas conhecedoras surgiu recentemente: no sinal da UPU para o correio deixou de vir, antes que tudo estivesse bem, agora no registro do terminal escreve durante o teste: foi cantado, mas o correio não vem nada. A UPU reinicializou, o terminal também, sem resultado.Qual pode ser o problema?

mesmo problema.
 
Boa noite administradores, há muito material, não há sistematização das perguntas, então talvez a resposta já estivesse lá. Novas duplicatas de diretórios de pastas e arquivos em pastas de roaming, é terrivelmente inconveniente trabalhar com diretórios paralelos, aconselhar como evitar este problema, resolver ou desativar este roaming, etc.? Ganhe 7 (32)
 
SergMich:
Boa noite, Admins, o material é muito complexo, as perguntas não são sistematizadas, então talvez a resposta já tenha sido dada. A nova construção duplica as pastas e arquivos na pasta de roaming, é terrivelmente inconveniente trabalhar com diretórios paralelos, sugerir como evitar este problema, resolvê-lo ou desativar o roaming e assim por diante? Ganhe 7 (32)

Está se duplicando? Ele "move" você para lá junto com todas as suas malas.

Se você quiser continuar trabalhando no diretório local, use a tecla /portátil no atalho do terminal e no editor. Isto criará a pasta MQL4 e os diretórios familiares nela contidos.

 
artmedia70:

Está se duplicando? Ele "move" você para lá junto com todas as suas malas.

Se você quiser continuar trabalhando no diretório local, use o interruptor /portátil no atalho do terminal e o editor



OK, como você opera este interruptor?
 
SergMich:

OK, como você lança esta chave?
Você sabe o que é um atalho?
 
artmedia70:
Você sabe o que é um rótulo?

sim. próximos passos