prostotrader: Não importa qual ordem e qual é o volume
O esquema é o seguinte:
Você define uma ordem pendente, define o volume da ordem na variável m_volume
Quando TRADE_TRANSACTION_DEAL_ADD é recebido, compare o volume da posição com a variável m_volume e verifique se a ordem inicial ainda está lá (talvez tenha sido uma execução parcial e você tenha adicionado o volume manualmente).
Você define uma ordem pendente, define o volume da ordem na variável m_volume
Quando TRADE_TRANSACTION_DEAL_ADD é recebido, compare o volume da posição com a variável m_volume e verifique se a ordem inicial ainda está pendurada (talvez tenha sido uma execução parcial e você adicionou o volume manualmente).
Karputov Vladimir como dançar com pandeiro I (aproximadamente) sabe....
Então você não precisa do exemplo - todas as etapas de execução das ordens comerciais estão claramente explicitadas lá fora. Você ainda nem sequer olhou para ele:
MqlTradeTransaction: TRADE_TRANSACTION_DEAL_ADD deal #6945344DEAL_TYPE_BUY Si-6.161.00 lot (MOEX deal=185290434)
Portanto, você não precisa do exemplo - ele esclarece claramente todas as etapas de execução das ordens comerciais. Você ainda nem sequer olhou para ele:
Você ainda nem olhou!!!
MQ Alexander 2016.08.0318:00# EN
Что касается ордеров, позиций и сделок.
Как написано в хелпе - последовательность поступления транзакций не гарантирована - транзакция переноса ордера в историю может быть получена раньше, чем транзакция сделки.
Изменение позиции в терминале происходит строго в результате получения сделочной транзакции, соответственно её получение является гарантией того что позиция поменялась.
Получение транзакции переноса ордера в историю, гарантирует только то, что ордер перестал быть активным (открытым) и был перенесён в историю ордеров.
Кроме того, транзакции могут потеряться при доставке от сервера к терминалу.
Что касается этой фразы.
Судя по всему - она осталась из документации к одной из начальных версий терминала с асинхронной торговли. В ближайшее время уберём. Виновные будут расстреляны.
TRADE_TRANSACTION_DEAL_ADD é todo seu. Até que você obtenha este evento - as informações de posição podem ser falsas. Tudo o resto é apenas sua idéia de como funciona. Deseja, em outras palavras.
Aguarde por TRADE_TRANSACTION_DEAL_ADD, depois obtenha informações de posição. É isso aí.
TRADE_TRANSACTION_DEAL_ADD é tudo para você. Até que você receba este evento - as informações de posição podem ser falsas. Tudo o resto é apenas sua idéia de como funciona. Deseja, em outras palavras.
Aguarde por TRADE_TRANSACTION_DEAL_ADD, depois obtenha informações de posição. É isso aí.
Eu já lhe disse:
Como dançar com o pandeiro I (mais ou menos) sabe.
Não importa qual ordem e qual é o volume
O esquema é o seguinte:
Hi!
A situação é a seguinte MT5, construção 1375
Em seu trabalho, ao negociar futuros, o robô usa a função OrderSendAsync().
Suponha que haja uma posição aberta com um volume de 2 contratos.
Como devo efetuar o registro para informar os desenvolvedores sobre o erro?
Há um exemplo de um oscilador que ouve os eventos TradeTransaction no artigo "Onde começar ao criar um robô comercial para o MOEX da Bolsa de Moscou ".
Tente executá-lo e veja os registros das negociações executadas. Não deve haver dúvidas.
Um exemplo de como este "ouvinte" funciona:
No artigo Onde começar ao criar um robô comercial para o MOEX da Bolsa de Moscou há um exemplo de uma coruja que escuta os eventos da TradeTransaction
Tente executá-lo e veja os logs das operações comerciais. Qualquer dúvida deve ir embora.
Muito obrigado.
Só quero saber a essência do assunto:
Você vai consertar isso?
O esquema é o seguinte:
prostotrader:
Somente, eu gostaria de uma resposta substantiva:
Você corrigirá o erro?
Desculpe entrar de novo... mas deixe-me perguntar-lhe, qual é o erro?
Muito obrigado.
Somente, eu gostaria de uma resposta substantiva:
Você corrigirá o erro?
Então você não precisa do exemplo - todas as etapas de execução das ordens comerciais estão claramente explicitadas lá fora. Você ainda nem sequer olhou para ele:
Portanto, você não precisa do exemplo - ele esclarece claramente todas as etapas de execução das ordens comerciais. Você ainda nem sequer olhou para ele:
Você ainda nem olhou!!!
Você ainda nem olhou para ele!!!
TRADE_TRANSACTION_DEAL_ADD é todo seu. Até que você obtenha este evento - as informações de posição podem ser falsas. Tudo o resto é apenas sua idéia de como funciona. Deseja, em outras palavras.
Aguarde por TRADE_TRANSACTION_DEAL_ADD, depois obtenha informações de posição. É isso aí.
TRADE_TRANSACTION_DEAL_ADD é tudo para você. Até que você receba este evento - as informações de posição podem ser falsas. Tudo o resto é apenas sua idéia de como funciona. Deseja, em outras palavras.
Aguarde por TRADE_TRANSACTION_DEAL_ADD, depois obtenha informações de posição. É isso aí.
Eu já lhe disse:
Como dançar com o pandeiro I (mais ou menos) sabe.