Ajuda na codificação - página 781

 
Por favor, você está disposto a ajudar?

Tenho este indicador que suponho estar atualizando alguns valores ao fechar a vela, mas ele não responde suficientemente cedo, geralmente 20 -40 segundos após o fechamento da vela Muitas vezes tenho que recarregar o gráfico

Você pode ajudar a consertar isso?
Arquivos anexados:
 
Savior: r supõe estar atualizando alguns valores no fechamento de uma vela,

Não existe tal coisa. Uma vela é considerada fechada quando uma nova vela chega depois do último segundo da vela atual, iniciando uma nova vela.

Pode haver minutos entre carrapatos durante a sessão asiática, pense no gráfico M1. Gráficos maiores, pense fim de semana, feriado do mercado (país e corretor específico.) requer conhecimento de quando seu corretor pára e começa (não é necessário o mesmo que o mercado).
Gráficos "Free-of-Holes" - MQL4 Artigos20 de junho de 2006
Sem vela se aberto = fechado ? -Fórum de programação MQL42010.06.06

O código é executado uma vez por segundo em um temporizador e é atualizado quando um símbolo inicia uma nova barra. Nada de errado.

 

Olá a todos -

Monte alguns EA's decentes usando o EA Builder, mas estou lutando para montar um usando o Fractals.

Dado que os fractais aparecem como ponto médio em séries de 5 velas, espero que eu possa estar recebendo o 'shift' e o índice incorreto.

Tentando criar um simples longo (uma vez que eu entenda o deslocamento/índice eu seria capaz de aumentar os parâmetros)

Aberto, Fracctal, Quadro de tempo (Corrente), Indicador (Superior) Deslocamento (3) 'está acima' Vela, Índice (3), Valor (Baixo)

Sendo a idéia que o fractal está abaixo de uma vela baixa, pronto para iniciar a tendência... percebendo que a maioria das duas velas atuais teria altas mais altas, eu usaria isso como limite de compra no pullback não abaixo de Fractal

Muito obrigado, david.

 
  1. David-Toronto: Muito obrigado, david.
    Ajudar você com o quê? Você não declarou um problema, você nem sequer declarou uma necessidade?

  2. David-Toronto : Monte alguns EA's decentes usando EA Builder
    EA builder, EATree, Etasoft forex generator, Forex Strategy Builder, FOREXEADVISOR STRATEGY BUILDER, FX EABuilder, fxDreema, FxPro, Molanis, Online Forex Expert Advisor Generator, Strategy Builder FX, Strategy Quant, Visual Trader Studio, MQL5 Wizard, etc., são todas iguais. Você conseguirá algo rapidamente, mas depois passará muito mais tempo tentando acertar, do que se você aprendesse o idioma de antemão, e depois apenas o escrevesse.
    1. Como você não aprendeu MQL4/5, por isso não há uma linguagem comum para nos comunicarmos.
      Se nós lhe dissermos o que você precisa, você não poderá codificá-lo.
      Se nós lhe dermos o código, você não sabe como integrá-lo ao seu.
      Estamos dispostos a lhe ajudar quando você publicar sua tentativa (usando SRC) e a natureza de seu problema, mas não vamos depurar suas centenas de linhas de código. Você estará essencialmente por sua conta e risco.

    2. O construtor da EA faz uma contagem ruim do código ao fechar várias ordens.
      O construtor da EA faz mau código Barras não é confiável (Max barras no gráfico), o volume não é confiável (erros de ticks.) Use sempre o tempo.
      O construtor da EA faz código ruim, não ajustando para corretores de 4/5 dígitos, TP/SL e slippage.
      EA builder faz código ruim, não se ajustando para corretores ECN. pré-Build 500)
      EA builder faz código ruim, não
      verificando códigos de retorno.

    3. EATree usa objetos na tabela para salvar valores - não armazenamento persistente(arquivos ou GV+Flush.) Nenhuma recuperação (falha de energia).

    4. FX EA Builder faz códigos ruins, não verificando códigos de retorno.
      FX EA Builder faz código ruim, perdendo bilhetes abertos no reinício do terminal. Sem recuperação (falha de energia).
      FX EA Builder faz código ruim, não ajustando paradas para o spread.
      FX EA Builder faz código ruim, usando OrderTotal diretamente.

    5. FOREXEADVISOR STRATEGY STRATEGY BUILDER faz código ruim, variáveis globais não atualizadas.
      FOREXEADVISOR STRATEGY BUILDER faz código ruim, erros de compilação.
      FOREXEADVISOR STRATEGY BUILDER faz código ruim, não verificando códigos de retorno.

    Aprendaacodificá-lo, ou pague a alguém (freelance) alguém para codificá-lo.
    Contratação para escrever roteiro - Geral - Fórum de programação MQL5

 
William Roeder:
  1. Ajudar você com o quê? Você não declarou um problema, você nem sequer declarou uma necessidade?

  2. EA builder, EATree, Etasoft forex generator, Forex Strategy Builder, FOREXEADVISOR STRATEGY BUILDER, FX EABuilder, fxDreema, FxPro, Molanis, Online Forex Expert Advisor Generator, Strategy Builder FX, Strategy Quant, Visual Trader Studio, MQL5 Wizard, etc., são todas iguais. Você conseguirá algo rapidamente, mas depois passará muito mais tempo tentando acertar, do que se você aprendesse o idioma de antemão, e depois apenas o escrevesse.
    1. Como você não aprendeu MQL4/5, portanto não há uma linguagem comum para nos comunicarmos.
      Se nós lhe dissermos o que você precisa, você não poderá codificá-lo.
      Se nós lhe dermos o código, você não sabe como integrá-lo ao seu.
      Estamos dispostos a lhe ajudar quando você publicar sua tentativa (usando SRC) e a natureza de seu problema, mas não vamos depurar suas centenas de linhas de código. Você estará essencialmente por sua conta e risco.

    2. O construtor da EA faz uma contagem ruim do código ao fechar várias ordens.
      O construtor da EA faz mau código Barras não é confiável (Max barras no gráfico), o volume não é confiável (erros de ticks.) Use sempre o tempo.
      O construtor da EA faz código ruim, não ajustando para corretores de 4/5 dígitos, TP/SL e slippage.
      EA builder faz código ruim, não se ajustando para corretores ECN. pré-Build 500)
      EA builder faz código ruim, não
      verificando códigos de retorno.

    3. EATree usa objetos na tabela para salvar valores - não armazenamento persistente(arquivos ou GV+Flush.) Nenhuma recuperação (falha de energia).

    4. FX EA Builder faz códigos ruins, não verificando códigos de retorno.
      FX EA Builder faz código ruim, perdendo bilhetes abertos no reinício do terminal. Sem recuperação (falha de energia).
      FX EA Builder faz código ruim, não ajustando paradas para o spread.
      FX EA Builder faz código ruim, usando OrderTotal diretamente.

    5. FOREXEADVISOR STRATEGY STRATEGY BUILDER faz código ruim, variáveis globais não atualizadas.
      FOREXEADVISOR STRATEGY BUILDER faz código ruim, erros de compilação.
      FOREXEADVISOR STRATEGY BUILDER faz código ruim, não verificando códigos de retorno.

    Aprendaacodificá-lo, ou pague a alguém (freelance) alguém para codificá-lo.
    Contratação para escrever roteiro - Geral - Fórum de programação MQL5

Obrigado William, mas ainda não está pronto para codificar e não precisa de tijolos para a cabeça.

A alguém que começou ou usou o EA Builder, por favor, só responda se você puder ajudar. obrigado


A questão é como abrir comércio longo (usando EA Builder) para fractal ocorrendo acima da vela.

Minha tentativa é dar ordens de compra ocorrendo após qualquer ocorrência fractal (acima ou abaixo da vela).

usando: Fractal, Time Frctal (Corrente), Indicador (Superior) Shift (3) 'está acima' Vela, Índice (3), Valor (Baixo)

 

Boa tarde

Sou bastante novo na codificação e gostaria de alguma ajuda em um indicador que estou tentando codificar. Estou basicamente fazendo de meu próprio MA uma faixa dos valores de abertura e fechamento de barras, dependendo de qual é a faixa, ou seja, se aberto é maior que fechado, é salvo na matriz superior, caso contrário é salvo na matriz inferior. Fiz uma boa parte da solução de problemas em um EA que escrevi, mas infelizmente não consigo obter o mesmo resultado no indicador.

Arquivos anexados:
MA_Band.mq4  5 kb
 
  1. PLZFrosty: mas não consigo obter o mesmo resultado no indicador,

    "Não funciona" não faz sentido - assim como dizer que o carro não funciona. Não pega, não vai na engrenagem, não tem eletricidade, falta da chave, pneus furados - sem sentido. Você realmente espera uma resposta? Não há leitores de mentes aqui e nossas bolas de cristal estão rachadas. Você não declarou um problema.

  2.       SetIndexBuffer(0, MA_top);
          ⋮
          SetIndexBuffer(1, MA_bot);
    
    Quantos amortecedores você declarou que seu indicador tem? Se você tivesse verificado seus códigos de retorno, você saberia o motivo.
    Propriedades do programa (#propriedade) - Pré-processador - Noções básicas de linguagem - Referência MQL4
 
William Roeder:
  1. "Não funciona" não faz sentido - assim como dizer que o carro não funciona. Não pega, não vai na engrenagem, não tem eletricidade, falta da chave, pneus furados - sem sentido. Você realmente espera uma resposta? Não há leitores de mentes aqui e nossas bolas de cristal estão rachadas. Você não declarou um problema.

  2. Quantos amortecedores você declarou que seu indicador tem? Se você tivesse verificado seus códigos de retorno, você saberia o motivo.
    Propriedades do programa (#propriedade) - Pré-processador - Noções básicas de linguagem - Referência MQL4

Eu sei o que deve fazer, mas não sei como descobrir porque não está funcionando. Usei o Commentfunction para descobrir onde ele pára de funcionar e descobri que ele pára no ponto em que é suposto colocar os valores nos arrays mencionados. Estou pedindo orientação sobre a solução de problemas, não alguém que a conserte para mim. Dizer-me o que perdi ou o que fiz de errado e onde ler para a solução me ajudará muito. Obrigado pelo link. Pelo menos é um dos meus problemas resolvidos. Existe uma maneira mais eficiente do que usar Comentário() para solucionar problemas onde o código foi bombardeado?

Documentation on MQL5: Common Functions / Comment
Documentation on MQL5: Common Functions / Comment
  • www.mql5.com
[in]   Any values, separated by commas. To delimit output information into several lines, a line break symbol "\n" or "\r\n" is used. Number of parameters cannot exceed 64. Total length of the input comment (including invisible symbols) cannot exceed 2045 characters (excess symbols will be cut out during output). Data of double type are output...
 
PLZFrosty:

Eu sei o que deve fazer, mas não sei como descobrir porque não está funcionando. Usei a função Comentar para descobrir onde pára de funcionar e descobri que pára no ponto em que é suposto colocar os valores nas matrizes mencionadas. Estou pedindo orientação sobre a solução de problemas, não alguém que a conserte para mim. Dizer-me o que perdi ou o que fiz de errado e onde ler para a solução me ajudará muito. Obrigado pelo link. Pelo menos é um dos meus problemas resolvidos. Existe uma maneira mais eficiente do que usar Comentário() para solucionar problemas onde o código foi bombardeado?

De alguma forma consegui que funcionasse, mas não tenho idéia da razão pela qual está funcionando e não o contrário. Vi um pequeno erro em meu raciocínio e reescrevi a minha função. Ainda não está me mostrando os valores de minha array quando uso Comentário(DoubleToString(array[1], 3);, mas está pelo menos desenhando a MAline. Existe alguma maneira de eu poder ver meus valores de array, além de usar Comment()?
 
input int SmallEMA = 50;
input int BigEMA = 100;
void OnTick()
  {
   string signal = "";
   double SmallMovingAvarage1 = iMA(Symbol(),PERIOD_CURRENT,SmallEMA,0,MODE_EMA,PRICE_CLOSE,0);
   double BigMovingAvarage1   = iMA(Symbol(),PERIOD_CURRENT,BigEMA,0,MODE_EMA,PRICE_CLOSE,0);
   
   if (BigMovingAvarage1 > SmallMovingAvarage1)
   
   {
   
      signal = "sell";
   }
   
   if (BigMovingAvarage1 < SmallMovingAvarage1)
    
   {
      signal = "buy";
   }
   
   
 
   if (signal == "sell" &&   OrdersTotal() == 0 )
   
   OrderSend(Symbol(),OP_SELL,0.02,Bid,10,0,0,NULL,0,0);
   
    
   
   if ( signal == "buy" && OrdersTotal() == 1)
   
   CloseSellPositions();
  
   
   
   if (signal == "buy" &&  OrdersTotal() == 0  )
   
    OrderSend(Symbol(),OP_BUY,0.02,Ask,10,0,0,NULL,0,0);
   
   //if (signal == "sell" && 0 <= OrdersTotal() <= 1)
   
   if (signal == "sell" && OrdersTotal() == 0)
   
   CloseBuyPositions();
    
   
   Comment ("The current signal is: ",signal);
   
   
  }


void CloseBuyPositions()
   {
   
   for(int i = OrdersTotal() -1 ; i >= 1; i--)
   {
      OrderSelect(i,SELECT_BY_POS,MODE_TRADES);
      
      string CurrencyPair = OrderSymbol();
      
      if(Symbol() == CurrencyPair)
      
      if (OrderType () == OP_BUY)
      {
         
         OrderClose(OrderTicket(),0.02,Bid,10);
      }
   }
   
   
   }
void CloseSellPositions()
   {
   
   for(int i = OrdersTotal()- 1; i >= 1; i--)
   {
      OrderSelect(i,SELECT_BY_POS,MODE_TRADES);
      
      string CurrencyPair = OrderSymbol();
      
      if(Symbol() == CurrencyPair)
      
      if (OrderType () == OP_SELL)
      {
         OrderClose(OrderTicket(),0.02,Ask,10);
      }
    }
   } 

Hi,


EMA (1) = 50

EMA (2) = 100


se (50 <100)

Fechar posição de compra aberta se houver e abrir uma posição de venda


se (50> 100)


Fechar a posição de venda aberta, se houver, e abrir posições de compra.


Quero desenvolver um consultor especializado que preencha estas condições, eu compartilhei o código que escrevi. Mas não funciona como eu quero.


Você pode me ajudar a completar as partes que faltam no meu código?