Erros, bugs, perguntas - página 882

 
A100:

Pergunta: Está documentado o atraso min entre chamadas

Huh, improvável. Não só isso, o máximo também é provável :) .
 

então é estranho que o código de erro = 4754 seja o mesmo que para um bilhete conhecido inexistente

OrderSelect( 123456789/*произвольное число*/ );
Acho que poderia ter arranjado um código diferente (ocupado, por exemplo) - alguém me deu o resultado do número do bilhete.order
 
A100:

então é estranho que o código de erro = 4754 seja o mesmo que o de um bilhete conhecido inexistente

Sim, o evento ainda não foi processado pelo terminal.

 
A100: então é estranho, esse código de erro = 4754 é o mesmo que para um bilhete conscientemente inexistente - penso que poderíamos ter arranjado outro código (ocupado, por exemplo) - alguém me deu o resultado do número do bilhete.order

Aqui temos:

  • OrderSelect(ticket ) - copia a encomenda activa pelo seu ticket da base de dados do terminal para a cache das encomendas actuais para referência posterior às suas propriedades usando as funções OrderGetDouble(), OrderGetInteger() e OrderGetString()
  • De forma correspondente, a encomenda não pode ser encontrada na base do terminal . E é por isso que 4754 é devolvido. Mesmo que o bilhete seja conhecido.
    Dê uma vista de olhos aos artigos:

    Encomendas, Posições e Ofícios no MetaTrader 5;

    Eventos comerciais no MetaTrader 5

     
    Yedelkin:
    Obrigado por estudá-lo, mas não compreendo bem - com este código
    OrderSelect( tiket20 );
    OrderSelect( tiket20 ); //обращения последовательные, тикет то же
    

    Quantas vezes será feito um pedido à base de dados do terminal: 2 ou 1

    Por outras palavras, será necessário monitorizar a frequência das chamadasOrderSelect( tiket20 ) não em termos de relevância da informação, mas em termos de tempo gasto na frequência dos pedidos consecutivos à base terminal para a mesma questão? (a questão não está directamente relacionada com a anterior)

     
    A100:
    Obrigado por estudá-lo, mas não compreendo bem - com este código

    Quantas vezes será feito um pedido à base de dados do terminal: 2 ou 1

    Por outras palavras, será necessário monitorizar a frequência das chamadasOrderSelect( tiket20 ) não em termos de relevância da informação, mas em termos de tempo gasto na frequência dos pedidos consecutivos à base terminal para a mesma questão? (a questão não está directamente relacionada com a anterior)

    Aguarde o evento comercial na OnTradeTransaction() e verifique o estado das ordens, posições e histórico comercial.
     

    A100:
    Спасибо изучил, но не совсем понял - при таком коде

    OrderSelect( tiket20 );
    OrderSelect( tiket20 ); //обращения последовательные, тикет то же

    Quantas vezes será consultada a base terminal: 2 ou 1

    Duas chamadas consecutivas para a função OrderSelect() resultarão em dois pedidos consecutivos para a base de dados do terminal, independentemente do bilhete especificado como parâmetro de função. Outra coisa é que se a nossa encomenda (detalhes da encomenda) ainda não aparecer na base de dados do terminal durante esses pedidos consecutivos, a função ainda devolverá o código de erro "encomenda não encontrada".

    A100 : Poroutras palavras, devo acompanhar a frequência das chamadasOrderSelect( tiket20 ) não em termos de relevância da informação, mas em termos de tempo gasto na frequência dos pedidos consecutivos à base de dados do terminal para a mesma questão? (a questão não está directamente relacionada com a anterior)

    Sim, preciso de controlar a frequência das chamadas de um tipo para a base de dados do terminal. A Roche já sugeriu uma das opções. Ainda não estou habituado à função OnTradeTransaction() (demasiado preguiçoso para filtrar todos os eventos comerciais), por isso ajo de uma forma antiquada - usando eventos, se assim posso dizer. Isto é, acedo à base do terminal quando chega um próximo tick; se a ordem não for detectada num próximo tick, simplesmente "salto a vez" em relação a essa ordem.

     
    m_handle=iMA(m_strategy_symbol,(ENUM_TIMEFRAMES)m_period,maperiod,0,MODE_EMA,PRICE_CLOSE); - pergunta porquê se a optimização capta m_period, então vai com alguns períodos e não com alguns?
    Документация по MQL5: Стандартные константы, перечисления и структуры / Константы индикаторов / Ценовые константы
    Документация по MQL5: Стандартные константы, перечисления и структуры / Константы индикаторов / Ценовые константы
    • www.mql5.com
    Стандартные константы, перечисления и структуры / Константы индикаторов / Ценовые константы - Документация по MQL5
     
    AndreyS:
    m_handle=iMA(m_strategy_symbol,(ENUM_TIMEFRAMES)m_period,maperiod,0,MODE_EMA,PRICE_CLOSE); - a questão é porque é que se a optimização capta m_period então com alguns períodos continua e com outros não?

    A única pergunta vaga pode ser respondida com a mesma resposta vaga - Períodos de gráficos
     

    AndreyS: 

      m_handle=iMA(m_strategy_symbol,(ENUM_TIMEFRAMES)m_period,maperiod,0,MODE_EMA,PRICE_CLOSE);

    - pergunta porquê se a optimização selecciona m_período, então alguns períodos são humedecidos e outros não???

    1. Inserir o código correctamente.

    2. como é optimizado/seleccionado o parâmetro m_period? Isto é, qual é o seu valor durante a sua optimização?