Erros, bugs, perguntas - página 984

 

Fórum sobre comércio, sistemas automatizados de comércio e testes de estratégia comercial

Insectos, insectos, perguntas

tol64, 2013.05.05 19:21

Compreendi-o, mas não resolvi o meu problema. Ainda não o resolvi. Ocorre raramente e nos fins-de-semana (quando os carrapatos não vêm) quando se mudam os prazos/simbolos. A série de indicadores por vezes não é exibida nem no Navegador da Janela de Dados nem no gráfico, mas os dados podem ser recuperados de forma programática. É o que parece:

...

//---

Pensei primeiro que se a subjanela não aparecer e no Navegador da Janela de Dados também, significa que os amortecedores estão vazios(empty_value) e ao verificar pode chamar OnCalculate() para actualizar. Mas não funcionou, pois os melões estão nos amortecedores.

Isto é um insecto?

Manualmente, é fixado rapidamente se mudar os prazos. É claro que gostaria de não ter de o explicar aos utilizadores, mas de o resolver de forma programática. Alguém se deparou com um problema deste tipo?

Se não for um bug, então precisamos de uma forma de determinar que as séries gráficas do indicador não são exibidas na subjanela (e também na janela de Dados ). Como fazer isto não é claro, uma vez que é possível obtê-los de forma programática. A seguir, após determinar que não há nada na sub-janela, chamamos OnCalculate() no temporizador para recalcular zerando a variável pré_calculada.

O seguinte está escrito na Ajuda:

Para tal, é normalmente suficiente devolver o valor do parâmetro rate_total, que contém o número de barras na chamada de função actual. Se desde a última chamada do OnCalculate() os dados de preços foram alterados (foi bombeado um histórico mais profundo ou foram preenchidos espaços em branco no histórico), então o valor do parâmetro de entrada pré_calculado será definido para zero pelo terminal.

Nota: se a funçãoOnCalculate retorna zero, os valores do indicador não são exibidos na janela DataWindow do terminal do cliente.

No meu caso todos os cálculos foram efectuados (só podem ser iniciados após todas as verificações) e OnCalculate() devolve um valor não zero, portanto os dados podem ser obtidos de forma programática. Mas isto não é consistente com o que está escrito na Ajuda.


 
Pergunta para a gestão. Tem um servidor de demonstração para MT5, onde 1 lote = 10 000 (não 100 000 USD), lote min = 0,01, passo = 0,01? Gostaria de optimizar a minha EA para contas em cêntimos. Nas contas de MT5 cêntimos que encontrei dos corretores lote min. = 0,1, enquanto procuro uma com 0,01.
 

No código fonte da biblioteca padrão, encontrei a seguinte construção

//+------------------------------------------------------------------+
//| Construtor |
//+------------------------------------------------------------------+
CMoneyFixedLot::CMoneyFixedLot(void) : m_lots(0.1)
{

}

O que é isto? :)

Документация по MQL5: Стандартная библиотека
Документация по MQL5: Стандартная библиотека
  • www.mql5.com
Стандартная библиотека - Документация по MQL5
 
ns_k:

No código fonte da biblioteca padrão, encontrei a seguinte construção

//+------------------------------------------------------------------+
//| Construtor |
//+------------------------------------------------------------------+
CMoneyFixedLot::CMoneyFixedLot(void) : m_lots(0.1)
{

}

O que é isto? :)

O que quer dizer?
 
uncleVic:
O que quer dizer?
O que faz, eu compreendo. Em vez disso, refiro-me a onde no documento diz para usar este tipo de sintaxe, como é chamada, por exemplo
 
ns_k:
O que faz, eu compreendo. Em vez disso, refiro-me onde no documento diz para usar este tipo de sintaxe, como é chamada, por exemplo
é
 
uncleVic:
ali
encontrou-o, obrigado!
 

Fórum sobre comércio, sistemas automatizados de comércio e testes de estratégia comercial

Insectos, insectos, perguntas

tol64, 2013.05.06 02:38

...

No meu caso, todos os cálculos foram feitos (só é possível fazê-los depois de todas as verificações) e OnCalculate() devolve um valor não zero, para que os dados possam ser obtidos de forma programática. Mas isto não está de acordo com o que está escrito na Ajuda.

Aplicação #740856.

Portanto, há outra razão pela qual os valores indicadores podem não ser exibidos, mesmo que os amortecedores tenham sido preenchidos e a OnCalculate tenha devolvido um valor não zero.


 
Descoberto acidentalmente. Se fizer duplo clique sobre um espaço vazio na janela de encomenda, o quadro de marcas está escondido. Isto é um insecto ou uma característica? )
 
ns_k:
Descoberto acidentalmente. Se fizer duplo clique sobre um espaço vazio na janela de encomenda, o quadro de marcas está escondido. Isto é um insecto ou uma característica? )
Um insecto. É claro que seria melhor ter um botão para encontrar esta característica não por acidente.