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
Hi! :)
Estou tentando usar sua biblioteca. Modo MT5 Hedge build 1959, modo de teste.
A chamada OrderSelect(... , SELECT_BY_TICKET) retorna false para a ordem no histórico, embora a ordem esteja claramente presente nos registros do testador. Você pode sugerir como isso é possível?
Hi! :)
Estou tentando usar sua biblioteca. Modo MT5 Hedge build 1959, modo de teste.
A chamada OrderSelect(... , SELECT_BY_TICKET) retorna false para a ordem no histórico, embora a ordem esteja claramente presente nos registros do testador. Você consegue imaginar como isso é possível?
Você deve ler este tópico para que eu não me repita mais uma vez.
O tíquete de uma posição MT4 fechada é igual ao tíquete de uma negociação MT5 fechada, para resumir. Há vários motivos totalmente válidos para isso. Em particular, leia sobre isso no cabeçalho da biblioteca. Ou melhor, é claro, leia o tópico sobre esse assunto.
Para entender melhor, faça todos os tipos de negociações complexas manualmente no MT5 e, em seguida, execute este script
Fórum sobre negociação, sistemas de negociação automatizados e teste de estratégias de negociação
Bibliotecas: Relatório
fxsaber, 2018.12.11 12:28 pm.
Estou ficando cansado dos relatórios MT5 de passes únicos. Portanto, adicionar essas três linhas ao final de qualquer consultor MT5abrirá um relatório normal do Hedge-Tester no final de uma única passagem, que mostrará posições na forma normal e até mesmo derrapagens.
Tente fazer isso, por exemplo, com Experts\Examples\Moving Average\Moving Average.mq5.
Para entender imediatamente a aparência do relatório, basta executar este script em sua conta
Tudo é relevante para o MT4 também.
Você deveria ler este tópico para que eu não tenha que me repetir mais uma vez.
O ticket de uma posição MT4 fechada é igual ao ticket de uma negociação MT5 fechada, em resumo. Há vários motivos totalmente válidos para isso. Em particular, leia sobre isso no cabeçalho da biblioteca. Ou melhor, é claro, leia o tópico sobre esse assunto.
Para entender melhor, faça todos os tipos de operações de negociação complexas manualmente no MT5 e, em seguida, execute este script
Então, parece que ainda é impossível obter compatibilidade total entre o MT4 e o MT5? OK, obrigado pela dica, vou dar uma olhada nisso.
Acontece que ainda é impossível obter compatibilidade total MT4 -> MT5? OK, obrigado pela dica, vou dar uma olhada nisso.
Sim, o código MT4 incorreto nem sempre funcionará no MT5.
Sim, um código MT4 incorreto nem sempre funcionará no MT5.
Uma curva é aquela que calcula que o resultado do OrderSend do envio de uma ordem pendente permanecerá com o mesmo número depois que ela se tornar uma ordem a mercado, estou entendendo corretamente? )
Qual é a maneira mais fácil de resolver esse problema, sem retrabalhar a lógica do código original, você pode me dizer? Se eu mesmo não conseguir pensar em uma maneira mais rápida)
Em geral, esse comportamento não pode ser chamado de sistema de ordens MT4. Porque salvar tíquetes de ordem ao ativá-los no sistema MT4 é um de seus princípios básicos
A curva é aquela que calcula que o resultado do OrderSend do envio de uma ordem pendente permanecerá no mesmo número depois que ela se tornar negociável, estou entendendo corretamente? )
Quando a ordem for executada, o tíquete de posição permanecerá o mesmo no MT5. Mas, ao fechar, não.
A curva é o uso do SELECT_BY_TICKET. Especialmente quando se trata de rastrear o evento "se minha posição foi fechada" dessa forma.
Em geral, esse comportamento não pode mais ser chamado de sistema de ordens do MT4. Porque salvar tíquetes de ordens quando eles são ativados no sistema MT4 é um de seus fundamentos
Tudo é salvo. Você só precisa experimentar.
Quando uma ordem é executada, o tíquete de posição permanecerá o mesmo no MT5. Porém, no fechamento, ele não permanecerá.
A curva é o uso do SELECT_BY_TICKET. Especialmente quando se trata de rastrear o evento "se minha posição foi fechada" dessa forma.
Tudo é salvo. Você só precisa experimentar.
Bem, eu tentei. É claro que eu estava falando sobre o número do tíquete após o fechamento. Eles diferem bastante, ou seja, toda a numeração da ordem está flutuando. Eu abro a ordem número 59(o resultado do OrderSend), ativo e fecho, depois imprimo os números do histórico com o OrderPrint e obtenho números no histórico de 1 a 13. Infelizmente, isso não pode ser chamado de sistema MT4. Não há nada na documentação do MT4 que diga que SELECT_BY_TICKET não pode ser usado para rastrear o evento "se minha posição foi fechada", você já inventou isso. No MT4, isso era bastante normal (embora eu não discuta que não é o melhor estilo de programação, mas não escrevemos bibliotecas para um mundo perfeito, ou o que =)).
Além disso, não se trata de verificação de fechamento aqui, infelizmente isso seria fácil de corrigir. Trata-se do fato de que muitos sistemas organizam os pedidos em grupos com base em algum atributo e, em seguida, analisam o resultado para tomar outras decisões. E todo esse grupo de sistemas (nos quais lembrar os tíquetes e analisá-los no histórico é, em princípio, impossível) não funcionará com a sua biblioteca. Se você adicionar todos os outros sistemas que simplesmente "monitoram o evento de fechamento da minha posição" por meio de SELECT_BY_TICKET, obterá várias exceções.Bem, foi assim que tentei. É claro que eu estava falando sobre o número do tíquete após o fechamento. Eles diferem bastante, ou seja, toda a numeração dos pedidos está flutuando. Abri a ordem número 59 (resultado do OrderSend), ativei e fechei, depois imprimi os números do histórico com o OrderPrint e obtive números no histórico de 1 a 13. Infelizmente, isso não pode ser chamado de sistema MT4. Não há nada na documentação do MT4 que diga que o SELECT_BY_TICKET não pode ser usado para rastrear o evento "se minha posição foi fechada", você já inventou isso. No MT4, isso era bastante normal (embora eu não argumente que esse não é o melhor estilo de programação, mas não estamos escrevendo bibliotecas para um mundo perfeito, ou o que =)).
A preguiça de ler o tópico é familiar.
A preguiça de ler o tópico é familiar.
Por que ler o tópico? Eu já descobri tudo.
Imagine um EA criando várias grades de ordens simultâneas, cada uma com sua própria lógica, dependendo dos resultados de ordens anteriores da série. Seria muito mais fácil armazenar os tíquetes em uma matriz do que implementar qualquer outra lógica. Ao mesmo tempo, o único caso em que essa lógica não resistirá à "aplicação de combate" é uma queda de energia instantânea, e exatamente no momento em que o Expert Advisor deve gravar o resultado da próxima operação de negociação no arquivo com seus dados. Isso é praticamente impossível quando se negocia em um VPS (ou na presença de um no-break).
Por que ler a discussão, eu já tinha entendido tudo.
Imagine um EA criando várias grades de ordens simultâneas, cada uma com sua própria lógica, dependendo dos resultados de ordens anteriores da série. Seria muito mais fácil armazenar os tíquetes em uma matriz do que implementar qualquer outra lógica. Ao mesmo tempo, o único caso em que essa lógica não resistirá a uma "aplicação de combate" é....
Há muitos casos em que ela não resistirá a isso. Cada ordem de grade gerará dezenas de posições, e cada posição, fechada pelo mesmo TP, gerará dezenas de posições fechadas.
A biblioteca foi criada para aqueles que sabem como escrever EAs de combate no MT4, não para brinquedos de demonstração. Combate é entrar no OnTick do zero todas as vezes.
Não tenho argumentos para você, todos eles estão no fórum. Você discordará de mim, com certeza. Mas isso não é tão ruim quanto os consultores corruptos do MT4.
Talvez alguém intervenha nesse diálogo e aponte, com links ou pensamentos de voz, por que o mundo é tão real.