Quaisquer perguntas de recém-chegados sobre MQL4 e MQL5, ajuda e discussão sobre algoritmos e códigos - página 509
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
Olá, você poderia me dizer por que neste ciclo minhas ordens de limite só são deletadas se, após fazer uma ordem de limite, outra ordem de limite não tiver sido feita na próxima barra, ou seja, uma ordem de limite só é deletada se for feita e então seguida por duas barras onde nenhuma ordem de limite foi feita
Qual ordem você escolheu aqui?
E que ordem você escolheu aqui?
Recebi o erro, ao invés de OrderTicket() também substituí um ticket variável ao qual OrderSend foi atribuído, ele ainda não apaga nada, mas como faço para configurar o loop para passar pelas ordens limite e apagar as que ficaram na 2ª barra?
Vejo o erro, também substituí uma variável para OrderTicket() por OrderSend, ele ainda não apaga nada, mas como configurar o laço para passar pelas ordens de limite e apagar as que ficaram na 2ª barra?
Isto é ótimo, pelo menos foi assim que aprendi o mql
Você encontra um EA em kodobase que atende aproximadamente suas exigências, olhe para o código e se o código for grande e não estiver claro, procure o próximo.
Depois de encontrar um código mais compreensível, você começa a estudá-lo e editá-lo, de modo que você rapidamente compreende como ele funciona
Bem, sim, é óbvio, mas não é conveniente. Não é agradável colar parâmetros de entrada em uma classe.
No entanto, estes valores devem, de alguma forma, chegar lá )). Afinal, na maioria das vezes, o trabalho da classe é baseado nos valores que o usuário especifica. Mas por alguma razão você não quer fazer isso. Eles não aparecerão lá por magia.
Normalmente, os parâmetros de entrada na fase de inicialização do programa são transferidos para uma estrutura especial. Na maioria das vezes esses valores são pré-processados (pelo menos, verificados quanto à exatidão). Quando uma nova instância da classe é criada, uma referência a esta estrutura é passada para ela. Qual é o inconveniente aqui?
No entanto, estes valores devem, de alguma forma, chegar lá )). Afinal, na maioria das vezes, o trabalho da classe é baseado nos valores que o usuário especifica. Mas por alguma razão você não quer fazer isso. Eles não aparecerão lá por magia.
Normalmente, os parâmetros de entrada na fase de inicialização do programa são transferidos para uma estrutura especial. Na maioria das vezes esses valores são pré-processados (pelo menos, verificados quanto à exatidão). Quando uma nova instância da classe é criada, uma referência a esta estrutura é passada para ela. Qual é o inconveniente aqui?
O inconveniente só precisa passar estes valores cada vez que se cria um objeto. Eles são sempre idênticos. Tudo bem, vou criá-lo através do construtor, mas é uma solução privada. O construtor padrão pode conter estes parâmetros para uma EA e eles são bem diferentes para outra EA.
Talvez a solução seja fazer uma classe totalmente diferente cujos métodos retornem os valores dos parâmetros. Então eu só precisaria inicializar esta nova classe uma vez. E na classe original, ao criar um objeto (mesmo no mesmo construtor), solicitar valores de parâmetros da nova classe.
O único inconveniente é a necessidade de passar esses valores cada vez que um objeto é criado. Eles são sempre os mesmos. Tudo bem, eu o farei através do construtor, mas é uma solução privada. O construtor padrão de uma EA pode ter esses parâmetros, enquanto o construtor padrão de outra EA é completamente diferente.
Talvez a solução seja fazer uma classe totalmente diferente cujos métodos retornem os valores dos parâmetros. Então eu só precisaria inicializar esta nova classe uma vez. E na classe original, ao criar um objeto (mesmo no mesmo construtor), solicitar valores de parâmetros da nova classe.
Você parece estar resolvendo heroicamente um problema inventado.
Não li atentamente sobre o problema, mas algo me chamou a atenção que era o mesmo ancinho em que eu estava pisando e você me ajudou a tirá-lo do caminho. Não é?
Parece que você está resolvendo heroicamente um problema inventado.
Sim, foi o que eu sugeri acima, na verdade da mesma forma que você fez com a estrutura, apenas mais complicada.
-> E na classe fonte, ao criar um objeto (mesmo no mesmo construtor), solicitar valores de parâmetros da nova classe.
Mas em geral eu teria que passar uma referência a esta classe auxiliar para a classe fonte. Em resumo, sim, o mesmo que com a estrutura.
Criar uma classe de contêineres, através da qual todos esses objetos possam ser criados ainda mais. Então estes parâmetros podem ser inicializados uma vez nesta classe de contêineres. Isso é o que eu acho que vou fazer.