Discussão do artigo "Eventos de negociação no MetaTrader 5" - página 2

 
Rosh:
O artigo diz que a verificação inicial é realizada no terminal. OrderCheck() também funciona no terminal, nada é enviado ao servidor.
Aqui está outro: "solicitação inválida não passa na verificação inicial no lado do servidor".
 
Yedelkin:

O artigo diz: "depois que a solicitação é enviada, ela chega ao servidor e passa pela validação inicial".

Ele diz literalmente o seguinte:

Importante: cada solicitação é pré-verificada quanto à exatidão no próprio terminal do cliente antes de ser enviada ao servidor de negociação. Solicitações plausivelmente incorretas (comprar um milhão de lotes ou comprar a um preço negativo) não passam para fora do terminal. Isso é feito para proteger os servidores de negociação de solicitações incorretas em massa no caso de um erro no programa mql5.

Depois de enviar uma solicitação, ela chega ao servidor de negociação e passa pela verificação inicial:

 
Rosh:
Você também me confundiu. Removi a referência da combinação "verificação inicial".
:) Estou apenas relendo o artigo. Peço desculpas se algo estiver errado. Mas eu já forneci dois links diretamente do artigo sobre a verificação inicial do lado do servidor.
 
Yedelkin:
Então você está dizendo que a função OrderSend() retorna true somente depois que o servidor aceita (coloca) o pedido?
Isso significa que a solicitação foi aceita. Além disso, ela pode ser rejeitada pelo dealer, pela plataforma de negociação e assim por diante.
 
Rosh:

Ele diz literalmente o seguinte:

Importante: cada solicitação é pré-verificada quanto à exatidão no próprio terminal do cliente antes de ser enviada ao servidor de negociação. Solicitações plausivelmente incorretas (comprar um milhão de lotes ou comprar a um preço negativo) não passam para fora do terminal. Isso é feito para proteger os servidores de negociação de solicitações incorretas em massa no caso de um erro no programa mql5.

Depois de enviar uma solicitação, ela chega ao servidor de negociação e passa pela verificação inicial:

Em seguida, é necessário dividi-la em três verificações:

1) verificação aproximada pelo terminal;

2) verificação no lado do terminal usando a função OrderCheck()$

3) verificação no lado do servidor.

Ainda não está claro a que se refere o conceito de "verificação primária".

 

Rosh:
Это означает, что запрос принят. Дальше он может быть отвергнут дилером, торговой площадкой и так далее.

ESTÁ BEM. Não me importo com o destino posterior do pedido. Com base em suas palavras, concluo (pergunta 2) que a função OrderSend() não pode retornar true imediatamente após verificar se a solicitação está correta. true é retornado somente depois que o servidor aceita o pedido. Isso está correto? Então, verifica-se que a informação de que "no caso de uma verificação bem-sucedida da estrutura básica, true é retornado" não está totalmente correta no livro de referência.
 
Yedelkin:
ESTÁ BEM. Não me importo com o destino posterior do pedido. Com base em suas palavras, concluo (pergunta 2) que a função OrderSend() não pode retornar true imediatamente após verificar se a solicitação está correta. true é retornado somente depois que o servidor aceita o pedido. Isso está correto? Então, verifica-se que a informação de que "no caso de uma verificação básica bem-sucedida das estruturas, true é retornado" não está totalmente correta no livro de referência.
Verificação básica ≡ Verificação primária no lado do servidor
 
Rosh:
Verificação básica ≡ Verificação primária do lado do servidor

Já escrevi acima, ao formular a pergunta 2, que "pode haver situações em que uma solicitação já tenha sido verificada quanto à exatidão, mas ainda não tenha sido aceita pelo corretor". Ninguém parece argumentar contra essa afirmação. Por isso, vou reformular um pouco a pergunta 2, levando em conta suas definições:

Em que momento exato a função OrderSend() retorna true - imediatamente após a verificação básica (verificação inicial no lado do servidor) da correção da solicitação ou somente depois que a ordem é aceita pelo servidor?

Na verdade, estou interessado na seguinte pergunta: em que estágio exato (do terminal para o servidor) a função OrderSend() sinaliza verdadeiro quando o pedido é aceito? "Verificação básica" ou "Verificação básica + aceitação (colocação) do pedido"? Ou é impossível tirar a conclusão necessária somente com o recebimento de true ?

 
Yedelkin:

Já escrevi acima, ao formular a pergunta 2, que "pode haver situações em que uma solicitação já tenha sido verificada quanto à exatidão, mas ainda não tenha sido aceita pelo corretor". Ninguém parece contestar essa afirmação. Portanto, reformularei um pouco a pergunta 2 levando em conta suas definições:

Em que momento exato a função OrderSend() retorna true - imediatamente após a verificação básica (verificação primária no lado do servidor) da correção da solicitação ou somente depois que a ordem é aceita pelo servidor?

Obviamente, depois que o servidor o aceita - isso é óbvio. Além disso, a função é chamada OrderSEND.
[Excluído]  
Yedelkin:

Na verdade, estou interessado na seguinte pergunta: qual estágio (do terminal para o servidor) da função OrderSend() é sinalizado por true ? "Verificação básica" ou "Verificação básica + aceitação (colocação) do pedido"? Ou é impossível tirar a conclusão necessária somente com o recebimento do true ?
Na minha opinião, você não deve tirar conclusões apenas com base no true, é preciso analisar também o código de resposta do servidor (e este último é mais importante, ao que me parece)...