![MQL5 - Linguagem para estratégias de negociação inseridas no terminal do cliente MetaTrader 5](https://c.mql5.com/i/registerlandings/logo-2.png)
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
Qual é a diferença?
Qual é a diferença?
Qual é a diferença?
Literalmente diferente.
Qual é a questão?
1. levar o guião torcido para o posto e executar no gráfico. O guião deve copiar um certo número de barras e executar o desenrolar das 20 mais antigas.
Esta forma é utilizada (entendo que não há verificações e todo o tipo de armadilhas para erros, mas mesmo assim)
Assim, com os parâmetros que especifiquei (número de barras e M1) o guião corre mas por vezes recusa-se a trabalhar NORMALMENTE. Acontece num certo número de bares (recebi mais de 368700).
Ao 368800 devolve muito menos barras (mas sempre um número diferente - 368732 / 368735 / 368736 ou algo nesta vizinhança).
Mas nem sempre funciona correctamente mesmo com 360000, houve casos em que apenas copiou 10000 barras.
2. A variante onde duas datas são especificadas chocou-me realmente. Não só não aceitaria 0 como a primeira data (o que faz sentido na minha opinião), como também copia até 10000.
Embora com 0 como tempo_de_início seja compreensível (tenho experiência), trata-se de sobrecarga de funções e compilador "não compreendendo" certas coisas. Mas é por isso que 10000 barras é uma questão à parte que se chama "em um milhão".
As barras de 10.000 minutos, como entendemos, não irão além de 2011, se bem entendi, não irão além de Fevereiro (e como se torna claro de todos os anteriores, pelo menos 360000 é carregado com certeza).
PS
Ao mesmo tempo, a velocidade do normal e do "buggy" (quando o guião copia apenas 10000 barras) difere muitas vezes ao longo do tempo.
PPS
Por favor, certifique-se de levar certas secções de ajuda (ou melhor, os seus exemplos) à sua conclusão lógica, para evitar ambiguidade e outras situações "parvas".
Os cheques devem ser colocados adicionalmente, etc. Também, neste caso não há referências cruzadas nas descrições dos parâmetros (pelo menos no tempo) e não é claro que tipo de start_time e start_pos têm.Acho que essa data/hora (caso contrário, porque é que o compilador juraria por 0 como hora_de_início).
Isto é um insecto ou a minha falta de habilidade?
A carta sacode quando se navega a partir da barra zero. Introduzi propositadamente deslizes entre a navegação e a actualização para destacar o problema. Mas o insecto existe mesmo sem escorregões. Acontece que ChartNavigate() primeiro move o gráfico para zero e depois volta a movê-lo para trás. Além disso, não o faz sempre.
Pelo menos, o facto de o bug não existir sempre que se chama ChartNavigate(), aparece quando o corre sem escorregões.
Isto é um insecto ou a minha falta de habilidade?
A carta sacode quando se navega a partir da barra zero. Introduzi propositadamente deslizes entre a navegação e a actualização para destacar o problema. Mas o insecto existe mesmo sem escorregões. Acontece que ChartNavigate() primeiro move o gráfico para zero e depois volta a movê-lo para trás. Além disso, não o faz sempre.
Pelo menos, o facto de o bug não existir sempre que se chama ChartNavigate(), aparece quando o corre sem escorregões.
Experimente o exemplo do ramo A função ChartNavigate não funciona, Por favor, ajude
Então, o que há neste exemplo que é tão fundamentalmente diferente do meu código?
É que no seu código de navegação é chamado uma vez, enquanto que eu preciso de manter a carta na barra desejada o tempo todo (independentemente das acções do utilizador).
Tentei o vosso exemplo e corri o meu código sem actualização gráfica (embora seja importante para mim porque o programa usa muitas transformações gráficas), mas também não funcionou. O idiota permanece. Continuo a navegar até ao mesmo ponto, e depois navego até à barra zero.
Também considero inaceitável a utilização da navegação a partir da barra actual, porque o utilizador pode mover inadvertidamente a carta enquanto o programa está em execução.
A história está toda escondida?
Então, o que há neste exemplo que é tão fundamentalmente diferente do meu código?
É que no seu código de navegação é chamado uma vez, enquanto eu preciso de manter a carta na barra desejada o tempo todo (independentemente das acções do utilizador).
Depois de rever o seu exemplo, corri o meu código sem actualização do gráfico (embora seja importante para mim uma vez que o programa também usa um monte de conversões gráficas), mas também não ajudou. O idiota permanece. Continuo a navegar até ao mesmo ponto, e depois navego até à barra zero.
Também considero inaceitável a utilização da navegação a partir da barra actual, porque o utilizador pode mover inadvertidamente a carta enquanto o programa está em execução.