Ordem verificada quanto à validade, mas ainda não aceite pelo corretor
ORDER_STATE_PLACED
Encomendar_estado_colocado
Envia-se um pedido comercial (OrderSend) - a sua correcção é verificada e, se estiver OK, a devolução é verdadeira. Ou seja, esta é uma resposta sobre a exactidão do pedido comercial. O servidor ainda não recebeu este pedido.
Além disso, quando o pedido for aceite pelo servidor, a resposta será devolvida: ORDER_STATE_PLACED - a ordem é estabelecida.
Não posso ter a certeza, mas é assim que funciona logicamente. Não conheço nenhuma armadilha.
Ordem verificada quanto à validade, mas ainda não aceite pelo corretor
ORDER_STATE_PLACED
Encomendar_estado_colocado
Enviar pedido de comércio (OrderSend) - a sua correcção é verificada e, se OK, retorna verdadeiro. Ou seja, é uma resposta que o pedido comercial está correcto. O servidor ainda não recebeu este pedido.
Além disso, quando o pedido for aceite pelo servidor, a resposta será devolvida: ORDER_STATE_PLACED - a ordem é estabelecida.
Não posso ter a certeza, mas é assim que funciona logicamente. Não sei o que evitar.
Descreveu a lógica de trabalhar com OrderSendAsync, e não OrderSend. Após o actual OrderSend, desejará apagar a encomenda, e é muito provável que não o consiga fazer, uma vez que as encomendas iniciadas não são apagadas.
Artyom Trishkin: Envia-se um pedido comercial (OrderSend) - a sua correcção é verificada e, se OK, volta a ser verdadeiro. Ou seja, esta é uma resposta de que o pedido comercial está correcto. O servidor ainda não recebeu este pedido.
Artyom Trishkin: Eu escrevi acima - apenas a minha ideia de lógica. Há muito tempo que trabalho há 4 anos. Por conseguinte, é pouco provável que eu responda a esta pergunta ;)
MQL5: Alteração do comportamento da função OrderSend ao colocar, modificar e retirar encomendas. O comportamento só é alterado quando se colocam ordens a sistemas comerciais externos. Anteriormente, o controlo da função OrderSend era devolvido após a colocação (processamento) bem sucedida de uma encomenda no servidor do corretor. Agora o controlo só é devolvido após o servidor do corretor receber uma notificação do sistema comercial externo de que a encomenda foi colocada com sucesso.
Abaixo encontra-se uma representação esquemática do comportamento anterior (seta vermelha) e actual da função:
Uma vez que, mesmo com a ordem Antes (no esquema), o envio só deveria ter sido devolvido quando Colocado. Especialmente porque os casos ocorrem em diferentes servidores de demonstração onde não existe um sistema externo.
Para que a minha EA trabalhe num bloco de recuperação de crash, preciso de saber quantas comissões, swaps e acréscimos foram feitos no último período. Como posso obter esta informação de forma programática?
E quando uma encomenda já é feita, algo é devolvido?
ORDEM_ESTADO_LOCALIZADO.
Identificador
Descrição
ORDER_STATE_STARTED
Ordem verificada quanto à validade, mas ainda não aceite pelo corretor
ORDER_STATE_PLACED
Encomendar_estado_colocado
Envia-se um pedido comercial (OrderSend) - a sua correcção é verificada e, se estiver OK, a devolução é verdadeira. Ou seja, esta é uma resposta sobre a exactidão do pedido comercial. O servidor ainda não recebeu este pedido.
Além disso, quando o pedido for aceite pelo servidor, a resposta será devolvida: ORDER_STATE_PLACED - a ordem é estabelecida.
Não posso ter a certeza, mas é assim que funciona logicamente. Não conheço nenhuma armadilha.
Bem, já está descrito:
Identificador
Descrição
ORDER_STATE_STARTED
Ordem verificada quanto à validade, mas ainda não aceite pelo corretor
ORDER_STATE_PLACED
Encomendar_estado_colocado
Enviar pedido de comércio (OrderSend) - a sua correcção é verificada e, se OK, retorna verdadeiro. Ou seja, é uma resposta que o pedido comercial está correcto. O servidor ainda não recebeu este pedido.
Além disso, quando o pedido for aceite pelo servidor, a resposta será devolvida: ORDER_STATE_PLACED - a ordem é estabelecida.
Não posso ter a certeza, mas é assim que funciona logicamente. Não sei o que evitar.
Envia-se um pedido comercial (OrderSend) - a sua correcção é verificada e, se OK, volta a ser verdadeiro. Ou seja, esta é uma resposta de que o pedido comercial está correcto. O servidor ainda não recebeu este pedido.
Então como é que a OrderSendAsync é diferente da OrderSendAsync (para além do nome) ?
Eu escrevi acima - apenas a minha ideia de lógica. Há muito tempo que trabalho há 4 anos. Por conseguinte, é pouco provável que eu responda a esta pergunta ;)
Veja o parágrafo 7 aqui https://www.mql5.com/ru/forum/23/page19#comment_2632240
Veja aqui https://www.mql5.com/ru/forum/23/page19#comment_2632240
A explicação para o caso descrito pode ser que o servidor na construção antiga
Fórum sobre comércio, sistemas de comércio automatizados e testes estratégicos
Alterações no MetaTrader 5 Client Terminal builds
MetaQuotes Software Corp., 2016.07.14 15:30
Abaixo encontra-se uma representação esquemática do comportamento anterior (seta vermelha) e actual da função:
A velha construção não tem nada a ver com isso.
Boa tarde a todos!
Para que a minha EA trabalhe num bloco de recuperação de crash, preciso de saber quantas comissões, swaps e acréscimos foram feitos no último período. Como posso obter esta informação de forma programática?