Erros, bugs, perguntas - página 1506
Você está perdendo oportunidades de negociação:
- Aplicativos de negociação gratuitos
- 8 000+ sinais para cópia
- Notícias econômicas para análise dos mercados financeiros
Registro
Login
Você concorda com a política do site e com os termos de uso
Se você não tem uma conta, por favor registre-se
Por favor, perdoe qualquer informação incompleta.
1. a informação está no separador Registo:
2. o indicador testado para remoção são as Bandas de Bollinger padrão:
- o ficheiro indicador está localizado em C:\Program Files\Alpari Limited MT5\MQL5\Indicators\Examples\BB.ex5;
- O ficheiro compilado é adicionado ao gráfico manualmente;
- ambos os ficheiros são anexados a este post.
3. Código completo do Expert Advisor que remove o indicador e sobre o qual o erro é detectado:
void OnInit(){
ChartIndicatorDelete(0,0,"Bollinger Bands");
}
Resultado do teste:
Após arrastar tal "Expert Advisor" (na aplicação - DeleteInd.ex5) no gráfico
As Bandas de Bollinger adicionadas manualmente ao gráfico são eliminadas mas o gráfico não é escalado depois disso quando o tamanho do gráfico muda.
Obrigado por uma pergunta tão detalhada e bem formatada (há muito tempo que ninguém escreve assim!).
O que se passa é o seguinte:
Recebo um erro
ERR_CHART_INDICATOR_CANNOT_DEL
4115
Erro ao apagar o indicador do gráfico
Este erro ocorre porque após a eliminação do indicador da EA, a janela do gráfico onde estava BB, embora o possamos ver, mas na realidade já está eliminado. Para verificar isto, depois de executar o Expert Advisor, mude para outro perfil no terminal e depois volte (para o perfil antigo) e descubra que o gráfico se desceu como uma vaca.
A minha configuração:
Obrigado por uma pergunta tão detalhada e bem escrita (já há muito tempo que ninguém escreve assim!).
Eis o que está a acontecer:
Recebo um erro
ERR_CHART_INDICATOR_CANNOT_DEL
4115
Erro ao apagar o indicador do gráfico
Este erro ocorre porque após a eliminação do indicador da EA, a janela do gráfico onde estava BB, embora o possamos ver, mas na realidade já está eliminado. Para verificar isto, depois de executar o Expert Advisor, mude para outro perfil no terminal e depois volte (para o perfil antigo) e descubra que o gráfico se desceu como uma vaca.
A minha configuração:
Ao executar o seu código no diário de bordo, recebo apenas:
2016.02.11 20:14:01.996 Experts expert DeleteInd (XAUUSD,M1) loaded successfully
Mas depois de mudar para outro perfil e voltar, a janela está ausente (embora as citações nele estivessem a mudar depois de adicionar um consultor especializado).
Significa que se trata de um insecto? Tanto quanto sei, a função ChartIndicatorDelete() não deve conduzir a tal comportamento anormal de um gráfico. É possível corrigi-lo?
Quando executo o vosso código, só o recebo no livro de bordo:
2016.02.11 20:14:01.996 Experts expert DeleteInd (XAUUSD,M1) loaded successfully
Mas depois de mudar para outro perfil e voltar a janela está ausente (embora as citações nele estivessem a mudar após a adição do Expert Advisor).
Significa que se trata de um insecto? Tanto quanto sei, a função ChartIndicatorDelete() não deve levar a tal comportamento anormal de um gráfico. É possível corrigi-lo?
Fiz uma troca. Mas o que aconteceu é o seguinte: se eu compilar o ficheiro mq4 na pasta Especialistas, o programa funciona apenas como uma EA, como um indicador (quando o copio para a pasta Indicadores) ele nem sequer está definido no gráfico. Mas se eu o recompilar nesta pasta, tudo está bem. O mesmo se aplica à EA, esta não será instalada se tiver sido compilada na pasta Indicadores. Por favor, diga-me qual é a razão para isso? O modo de compilação é rigoroso, não há erros.
Na última construção de MT5 1241 ChartIndicatorDelete a função "mexer" no gráfico. A carta não é redesenhada ao redimensionar, a carta não é guardada ao fechar o terminal, etc.
Isto já foi corrigido. Por favor aguarde pela próxima construção
A secretária aconselhou que deveria haver apenas um ficheiro,
Caros programadores, poderiam aconselhar se é permitida a repetição de funções e métodos de classe na MQL? Estou a fazer uma chamada de método recorrente e a receber um transbordo de pilha.
É claro que é permitido. Caso contrário, não receberia um transbordo de pilha.
E o que esperava?
Controla de alguma forma a profundidade de recorrência?
É claro que é permitido. Caso contrário, não receberia um transbordo de pilha.
O que esperava?
Controla de alguma forma a profundidade da recorrência?