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
Você ainda tem o Counter...
Veja o comentário de GumRai https://www.mql5.com/en/forum/151167/page2#954622
Obrigado por seus cargos.
Usei Open ao invés de Time porque uma vez que o Open de um bar ocorre, ele é fixo para sempre e nunca mudará. Não está procurando por duas barras consecutivas - é a mesma barra e está perguntando se a abertura da barra atual durante a qual o carrapato acaba de ocorrer é a mesma que o valor de Aberto armazenado no ThisBarOpen. Além disso, eu teria pensado que Open seria mais simples do que Time porque é uma simples consulta de dados, enquanto o Time poderia ter que fazer referência a outra coisa e possivelmente fazer algum tipo de cálculo.
Re Counter--; eu não mudei isso porque outro EA não seria capaz de fechar uma ordem porque o código verifica que tanto o MagicNumber quanto o Symbol() são o mesmo primeiro.
Certamente, tomo o ponto sobre um corte de energia limpando o conteúdo do BuyTicket, mas isso não aconteceu durante meus testes e meu código ainda está funcionando muito lentamente. Portanto, também não consigo ver como isso pode ser a causa.
Minha principal pergunta no momento é por que levou tanto tempo para remover os EAs das janelas do terminal que tinha posições abertas e sem tempo algum para removê-los do terminal que não tinha posições abertas. Coincidência talvez - mas todas as quatro janelas?
Não sei se isso é realmente relevante para seu problema, mas você limita sua negociação a 1 compra, 1 venda por EA, então por que fazer tudo isso?
Você já tem aqui o número do seu bilhete:
se você fizer disso uma int estática você pode fechar seu pedido explicitamente por esse número de bilhete sem arrastá-lo através do pool de pedidos para ele.
Obrigado por seus cargos.
Re Counter--; eu não mudei isso porque outra EA não poderia fechar um pedido porque o código verifica que tanto o MagicNumber quanto o Symbol() são o mesmo primeiro.
Minha principal pergunta no momento é por que demorou tanto tempo para remover os EA das janelas do terminal que tinha posições abertas e sem tempo algum para removê-los do terminal que não tinha posições abertas. Coincidência talvez - mas todas as quatro janelas?
Você entende como funcionam os loops?
Digamos que você tenha 3 ordens abertas
Na primeira passagem, counter==0, então a ordem com o índice 0 será selecionada
No final do loop você diminui o contador em 1, então counter== -1.
Antes que o laço execute novamente, o contador é aumentado em 1 como parte da função para a função. Portanto, contador ==0
Portanto, a próxima passagem pelo contador de laço==0 novamente!! e assim por diante e assim por diante.
Você está preso em um loop interminável que simplesmente continua verificando o índice de ordem 0
A única maneira de parar é se não houver ordens em aberto, porque então OrdensTotal - 1 será -1 e 0 não é <= -1