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
Deve ser esclarecido:
TRADE_RETCODE_PLACED for OrderSend é a resposta do servidor.
TRADE_RETCODE_PLACED for OrderSendAsync é a resposta terminal.
Embora os códigos sejam idênticos, eles têm um significado bastante diferente. É muito provável que os criadores resolvam esta ambiguidade.
É por isso que o deve compreender:
deve ser compreendido no contexto apropriado.
OrderSend pode receber uma resposta tanto do servidor como do terminal (em caso de falha dos filtros do terminal).
OrderSendAsync recebe sempre resposta apenas do terminal. Para receber resposta do servidor, é necessário apanhar os eventos apropriados no onTrade.
OrderSend pode receber uma resposta tanto do servidor como do terminal (em caso de falha dos filtros do terminal).
Se compreendo correctamente a seguinte ideia:
O terminal verificou o pedido da OrderSend e enviou-o com sucesso para o servidor, com o código retcode a receber um valor intermédio de TRADE_RETCODE_PLACED. Neste ponto a ligação é interrompida e tudo o que a OrderSend pode devolver é o código TRADE_RETCODE_PLACED preso no campo retcode? Seria este o exemplo onde OrderSend devolve TRADE_RETCODE_PLACED?
Tive a seguinte ideia correcta:
O terminal verificou o pedido da OrderSend e enviou-o com sucesso para o servidor, com o retcode a receber o valor intermédio TRADE_RETCODE_PLACED. Neste ponto a ligação é interrompida e tudo o que a OrderSend pode devolver é o código TRADE_RETCODE_PLACED preso no campo retcode? Será este o exemplo quando a OrderSend devolver TRADE_RETCODE_PLACED?
Talvez, mas duvido que assim seja. Muito provavelmente seria TRADE_RETCODE_TIMEOUT via TimeOut-time para uma tal interrupção na comunicação.
Honestamente, não compreendo para que serve esta treta no caso de OrderSend. Talvez os programadores expliquem mais na ajuda.
P.S. Eu não escrevi uma única linha em MQL5. Por conseguinte, todos os meus pensamentos sobre o assunto podem ser ignorados.
...Ainda assim, isso é um disparate. O Guia do Utilizador do Terminal do Cliente (Janeiro de 2012) diz que uma das fases da encomenda é a fase "set(placed) - dealer accepted order".
Isto é, de acordo com o manual, a ordem está a sinalizar a fase de vida de um pedido comercial, quando já chegou com sucesso ao servidor. E a descrição da função OrderSendAsync() diz exactamente o contrário: o código TRADE_RETCODE_PLACED não depende da chegada ao servidor.
Honestamente, não vejo porque é que esta nerdidade é necessária no caso de OrderSend.
Em geral, qualquer pessoa pode escrever uma série MyOrderSend via OrderSendAsync:
Com esta implementação, MyOrderSend será totalmente idêntico ao OrderSend normal (que pode ser simplesmente eliminado do API através da implementação via OrderSendAsync na biblioteca normal).
Com esta implementação, MyOrderSend será completamente idêntico ao OrderSend normal (que pode ser simplesmente eliminado do API implementando OrderSendAsync na biblioteca normal).
Geralmente, a entrada da OrderSendAsync é um acontecimento histórico para a Metatrader. Em todo o tempo o API comercial existiu (a começar pelo Metatrader3 (não vi nenhum anterior)) Metatrader, embora implementado através da sua própria língua, permaneceu praticamente inalterado na sua essência. OrderSendAsync é a primeira alteração substantiva ao API de negociação a partir de Metaquotes.
Felicito sinceramente os criadores por este evento e desejo trazer o modelo assíncrono para uma funcionalidade adequada!
Mensagem técnica. Reunindo declarações interessantes num só fio.
Note-se que há e haverá limites para o número de ordens simultâneas na fila de execução de uma conta. Neste momento são 16 candidaturas, se não estou enganado.
As operações assíncronas funcionarão cuidadosamente com a "janela do número de ordens admissíveis", aguardando que parte do lote anterior seja executada antes de enviar o lote seguinte. Além disso, haverá protecções contra inundações estúpidas/de teste. Até agora, é recebido um erro quando o número de pedidos permitidos transborda.
O novo método de operações assíncronas através do OrderSendAsync resolve o problema principal - permite fazer uma dúzia de operações instantaneamente. Esta é uma ferramenta muito poderosa e deve ser utilizada com cuidado e sempre com vista à possibilidade de uma proibição pelo servidor e corretor.