Quaisquer perguntas de recém-chegados sobre MQL4 e MQL5, ajuda e discussão sobre algoritmos e códigos - página 718

 
Artyom Trishkin:

O erro 1 não é um erro, mas o resultado é desconhecido. A questão é que você está tentando modificar a parada para o mesmo preço ao qual ela já está definida. Antes de modificá-lo, compare o preço da parada com o preço ao qual você deseja ajustá-lo. Se já está a esse preço, não há nada a modificar.

Existe tal coisa, ou há algo errado?

 
Andrey Sokolov:

Existe tal coisa, ou há algo errado?

Não existe tal coisa aí. Então pergunta: você escreveu ...

Realiza uma função que quando uma ordem atinge ... ... ...

... por que você está perguntando se ele está lá ou não? Se você mesmo fez isso, você deve saber exatamente o que fez. Ou o quê? Mal posso imaginar fazer algo sem saber o que estou fazendo...

 
Artyom Trishkin:

Não está lá. Então a pergunta é: você escreveu...

... então por que você está perguntando se ele está lá ou não? Se você mesmo fez isso, você deve saber exatamente o que fez. Ou o quê? Mal posso imaginar fazer algo sem saber o que estou fazendo...

 if (OrderStopLoss()!=OrderOpenPrice()

Necessidade de mover a lâmina para o preço de abertura, aqui, verificando se não está lá. O que está errado?

 
Andrey Sokolov:

Necessidade de mover a lâmina para o preço de abertura, aqui, verificando se não está lá. O que está errado?

O preço de abertura do pedido é o preço de parada?

 
Artyom Trishkin:

O preço de abertura do pedido é o preço de parada?

Então, se modificarmos a lâmina para o preço aberto, não é?

 
Andrey Sokolov:

Então, se a modificação transfere a lâmina para o preço de abertura, não é?

O que acontece da próxima vez?

 
Artyom Trishkin:

O que acontece da próxima vez?

E da próxima vez não seráOrderStopLoss()!=OrderOpenPrice()

não?

 
coldunprofi:

Olá, como fazer a EA abrir uma posição com um volume específico de pedidos individuais de ambas as posições, por exemplo

O volume de um único pedido é de 1,35 lotes, o volume total das posições abertas é de 500 lotes. A EA abre um pedido de compra de 1,35 lotes, e depois abre um pedido de venda de 1,35 lotes,

e depois repete até que 500 lotes de compra e 500 lotes de venda sejam abertos, e como o número de lotes não é múltiplo de 1,35, o último pedido deve ser inferior a 1,35

Pegue qualquer painel no CodeBase, lide com o código fonte e agora quando ele aparecer/variáveis externas, deixe-o fazer as mesmas ações que para os botões. Ele apenas sondará periodicamente as variáveis (por exemplo, no temporizador) e emulará as pressões dos botões
 
coldunprofi:

Olá, como fazer uma EA abrir uma posição com um volume especificado de uma única ordem de ambas as posições de acordo com variáveis externas, por exemplo

Definimos o volume de um único pedido = 1,35 lote, o volume total de posições abertas é de 500 lotes, o Expert Advisor abre um pedido de compra de 1,35 lote, depois abre um pedido de venda de 1,35 lote,

e depois repetir até que 500 lotes de compra e 500 lotes de venda sejam abertos, e como o número de lotes não é múltiplo de 1,35, o último pedido deve ser inferior a 1,35

Olá. Não seria mais fácil fazê-lo desta forma

MathMin(Lot,500-(общий лот уже открытых ордеров))
onde Lote, por exemplo, será 1,35
 
Andrey Sokolov:

E da próxima vez não seráOrderStopLoss()!=OrderOpenPrice()

não será?

Antes de OrderModify() imprimir os valores do preço de abertura e o novo preço de parada.

E mantenha seu desrespeitoso "não?" para si mesmo se você quiser ajuda. No entanto, coloquei um modelo totalmente funcional para qualquer rede de arrasto nesta linha - você pode pesquisar.

Razão: