[AVISO FECHADO!] Qualquer pergunta de novato, para não desorganizar o fórum. Profissionais, não passem por aqui. Não posso ir a lugar algum sem você. - página 216
![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
Isto é possível? DoC oferece para fechar um pedido a um preço melhor???? Esta é a primeira vez que ouço falar de uma empresa de corretagem ficando tão descuidada.
O robô não era estúpido, por definição não pode ser estúpido.
É necessário simplesmente corrigir o código, se você quiser pode colocá-lo aqui e pode ajudar aqui, você pode escrever em sua mensagem pessoal e certamente também irá ajudar.
1. Sim, isso aconteceu - está claro no registro.
2. Eu usei a palavra "estúpido" em sentido figurativo, o que significa que algo estava errado no código.
3. Aqui está o código de encerramento da pose:
Mas a pose nem sempre fecha, e não é um erro, é considerada normal, uma mensagem como esta vem do servidor:
2009.09.08 00:44:42 '64766': requote 1.51893 / 1.51933 para pedido #11573500 vender 1.80 EURCHF fechando em 1.51914
Como você sabe, isto significa que o preço mudou a curto prazo enquanto o pedido de fechamento foi para o servidor.
E o servidor sugere um novo preço de fechamento. O servidor tem tempo para responder - 3 segundos. E aqui está o problema - o servidor se recusa a fechar o pedido pelo novo preço!
Como isso acontece não está claro... Ajude-me a entender, por favor.
Pessoal, por favor, expliquem o significado do ponto de exclamação(!ExistPosição).
if(cnt > 0 && !ExistPosition(OP_BUY) && Ask <= price - PipsForOpenMore * Point)
Pessoal, por favor, expliquem o significado do ponto de exclamação(!ExistPosição).
if(cnt > 0 && !ExistPosition(OP_BUY) && Ask <= price - PipsForOpenMore * Point)
A tradução literal desta linha será
se cnt é MAIS que 0 e a função ExistPosition(OP_BUY) retorna FALSO e Ask é MENOR ou igual ao preço - PipsForOpenMore * Point, then....
O "!" é uma negação. Se não fosse, a condição se suporia que a função ExistPosition(OP_BUY) deveria retornar VERDADEIRO.
Olá, você poderia, por favor, aconselhar como pegar e manusear em uma EA o evento de fechar um negócio no stoploss ou takeprofit. >> Obrigado.
Você quer que algo seja executado antes de fechar em stop/profit?
Você quer que algo seja executado antes de fechar em stop/profit?
Não, logo após o fechamento.
OrdensTotal() - retornará 0 assim que a ordem for fechada.
Assim, se OrderTotal() retorna 0, então você faz o processamento...
Este é o caso quando apenas um pedido está aberto.
Se você descrever sua situação com mais detalhes, o que você quer fazer depois que o pedido for fechado, então eu poderei lhe dar uma resposta melhor :)
Eu não entendo a lógica.
Você pode explicar isso com mais precisão, a partir de um exemplo?
3. Aqui está o código para fechar a posição:
Aumente o valor de escorregamento para 50, você tem 5 dígitos, então 0,3 pips não funciona.
Olá, você poderia me dizer como captar e lidar no meu EA o evento de fechar um negócio em Stop Loss ou Take Profit. >> Obrigado.
Veja a última ordem na história, determine o tipo de ordem.
Por exemplo, para uma posição longa:
Se o pedido fechou a um preço igual ou inferior ao stop loss, então foi um stop loss.
Se ao preço igual ou superior ao TakeProfit - TakeProfit.