Como trabalhar corretamente em MT5 com OrderSend

 
Comentários não relacionados a "Discussão do artigo "Distribuições estatísticas em MQL5 - levando o melhor de R" foram movidos para este tópico.
 
Renat Fatkhullin:

Mas isso é fora de tópico, se você quiser discutir essas questões, faça-o nos fios nativos. Trata-se de R.

E a discussão de seus colegas simplesmente não está lá. Por exemplo, não há um único exemplo de como trabalhar corretamente no MT5 com OrderSend, para navegar em um histórico sincronizado.

A situação é a seguinte. O Consultor Especialista envia um OrderSend e depois lê imediatamente o histórico. Ele vê que não há nenhuma posição aberta e envia outro OrderSend. Onde está o exemplo na documentação onde isso não acontece?

A100 implica isto.

Fórum sobre comércio, sistemas automatizados de comércio e testes estratégicos

Erros, bugs, perguntas

fxsaber, 2016.10.08 12:13

Como copiar (com caminhos relativos salvos) todos os arquivos do projeto para uma pasta separada.

Aqui, por exemplo, eu quero compartilhar um código. Ele extrai uma dúzia de arquivos mqh de diferentes lugares.

Agora tenho que procurar estes arquivos manualmente, muitas vezes você não consegue encontrar todos eles ou levar algo desnecessário. Como automatizar este processo para poder compartilhar fontes?


Desculpem os offtops, mas não há resposta.

 

Fazemos uma enorme quantidade de trabalho. Mas não vamos alimentar nenhum problema de programação.

Tenha consciência e gaste seu tempo resolvendo suas idéias.
 
Renat Fatkhullin:

Fazemos uma enorme quantidade de trabalho. Mas não vamos alimentar nenhum problema de programação.

Tenha consciência e gaste seu tempo resolvendo suas próprias idéias.

Peço um exemplo de como trabalhar corretamente com a OrderSend. A documentação é enganosa. Os exemplos que vêm de você são semelhantes.

Algumas pessoas inventam muletas. Eles apresentam algumas hipóteses sobre o porquê de ser assim e não daquela maneira.

OrderSend é a principal função do idioma. Posso ter algum tempo para explicar como trabalhar com a função principal?

Tudo o que você faz, eu apoio com ambas as mãos. Mas existem verdadeiras questões comerciais.

 
fxsaber:

Peço um exemplo de como trabalhar corretamente com a OrderSend. A documentação é enganosa. Os exemplos que estão vindo de você são semelhantes.

Algumas pessoas inventam muletas. Eles apresentam algumas hipóteses quanto ao porquê de ser assim e não o contrário.

OrderSend é a principal função do idioma. Posso ter algum tempo para explicar como trabalhar com a função principal?

Tudo o que você faz, eu apoio com ambas as mãos. Mas existem verdadeiras questões comerciais.

Desculpe, mas OrderSend é uma função sincrônica - enviar e esperar por uma resposta...

O que mais poderia ser. Especialmente desde a construção 1395 mudou a forma como a OrderSend trabalha

 
prostotrader:

Desculpe, mas OrderSend é uma função sincrônica - enviar e esperar pela resposta...

O que mais poderia ser. Especialmente desde a construção da 1395 mudou a forma como a OrderSend trabalha.

Não síncrono

Fórum sobre comércio, sistemas automatizados de comércio e testes de estratégia comercial

Discutindo o artigo "Distribuições Estatísticas em MQL5 - Levando o Melhor do R".

Renat Fatkhullin, 2016.10.10 22:13

Você está confundindo processos assíncronos com o desejo de ver sincronicidade.

O trabalho da OrderSend é emitir o pedido e obter a confirmação o mais rápido possível. E o sistema lida muito bem com isso.

Mas obter a transação/transação concluída, colocá-la no histórico e depois emiti-la para você sob solicitação é um processo diferente e não tem o direito de retardar o OrderSend.

Então tudo está correto - a transação é executada rapidamente, e depois em um milissegundo (e na verdade mais cedo) no próximo pacote obter a atualização do bilhete e trabalhar com ele.


 
fxsaber:
Não síncrono

Você está confundindo um ORDEN com um comércio

Nem todo pedido enviado resultará em uma troca

 
fxsaber:
Não síncrono

Absolutamente síncrono.

Isto significa que a função espera por uma resposta circular completa a seu pedido. E recebe uma resposta de "sim, executado". O mais rápido possível.

Você entendeu completamente mal o ambiente e confundiu os conceitos. Você está tentando acrescentar à noção OrderSend o processo "deve obter a estrutura totalmente executada de uma negociação ou posição a partir do histórico de negociações ou posições abertas ".

 
prostotrader:

Você está confundindo um ORDEN com um comércio

Nem todo pedido enviado resultará em uma troca

Eu tenho comido meu próprio sangue neste aqui! A questão é que a OrderSend e o ambiente comercial estão fora de sincronia. O que leva a contratempos em contas reais, mesmo que você use SB.
 
Renat Fatkhullin:

Absolutamente síncrono.

Você entendeu completamente mal o ambiente e confundiu os conceitos.

Este já é um argumento terminológico. A situação ruim foi descrita em detalhes acima. As bibliotecas padrão nem mesmo levam isso em conta.
 
fxsaber:
Eu já estive lá! Trata-se de OrderSend e o ambiente comercial estar fora de sincronia. O que leva a contratempos em contas reais, mesmo que você use SB.

Você quer que eu o ajude a contornar estes contratempos (a partir de experiência pessoal de negociação com robôs MT5 em uma conta real)?

Adicionado

Absolutamente livre :)

Razão: