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
Cretino.
Eu pensei que você se referia a você.
O que aconteceu com"Ele vai descobrir se quiser". "?
É mais fácil para mim responder em um posto do que fazer dezenas com "recomendações".
Se ele quiser, ele vai descobrir.
Era uma vez um tempo em que eu queria... Mas seu código é algo fora deste mundo.
Neste caso, você só precisa de um pouco de conhecimento de MT4/5.
Neste caso, você só precisa de um pouco de conhecimento de MT4/5.
Infelizmente eu sei um pouco mais do que um pouco.
Já lhe disse uma vez, você enfia seu código para dentro e para fora como um plugue de bunda em cada barril. Aqueles que precisam dele já o utilizam há muito tempo e alguns até o anunciam. Mas impor isso onde não é muito necessário é simplesmente indecente. Especialmente quando uma pessoa quer entender e entrar na programação em mql5, não através de truques.
Infelizmente eu sei pouco mais do que um pouco.
Eu já lhe disse uma vez, você enfia seu código em cada barril para os negócios e sem nenhuma razão. Aqueles que precisam dele já o utilizam há muito tempo e alguns até o anunciam. Mas impor isso onde não é muito necessário é simplesmente indecente. Especialmente quando uma pessoa quer entender e entrar na programação em mql5, não através de truques.
Fórum sobre comércio, sistemas automatizados de comércio e testes de estratégia comercial
Processamento OnTradeTransaction
fxsaber, 2019.02.08 13:24
Mostre-me a solução para o problema do autor do ramo.
Quando você faz algumas afirmações, é uma boa idéia apoiá-las de alguma forma na prática. Em algumas páginas, nenhuma solução da OnTradeTransaction apareceu. E se houver, rapidamente ficará claro por que a solução dada é do jeito que é e não o contrário. A solução deve mostrar a lógica, não o inferno fora dela. Se eu remover o plug-in, o código fonte não perderá um pouco de sua lógica. E você só precisa entender a lógica (idéia), nada mais.
Eu concordo com esta declaração. Uma vez entendida a lógica, vai jogar fora todos os includes e criar os seus próprios. É exatamente assim que é proposto: não dominar os nichos, mas mostrar por código e não assustar como a tarefa cuja solução é necessária pode funcionar.
Aqui eu volto à fonte do problema. E as questões surgem:
Fórum sobre comércio, sistemas automatizados de comércio e testes de estratégia comercial
Processamento OnTradeTransaction
Ilya Child, 2019.02.07 20:08
Boa noite.
Rapazes, por favor, ajudem a resolver isso. O problema provavelmente não é novo, mas eu não encontrei nenhuma solução inequívoca (nem na prática, nem nos fóruns).
Estou executando 2 robôs diferentes no terminal em 2 instrumentos diferentes. As magias são diferentes em todos os lugares. O robô coloca limites pendentes e o procedimento OnTradeTransaction me permite detectar uma transação e colocar ordens de parada pendentes usando esta transação.
Abaixo está o código para a transação comercial
Este é o código da função que verifica se o negócio pertence a um robô
Este é o código do procedimento para ordens de parada pendentes
Este é o código da função de busca de uma ordem na história e fora da história
Eu emitiria as informações sobre as transações recebidas nos arquivos de registro na ordem em que são recebidas no terminal. Agora eu tenho um problema que enfrentei ao negociar em uma conta de demonstração:
s vezes as transações vêm na seguinte ordem TRADE_TRANSACTION_ORDER_DELETE, depois TRADE_TRANSACTION_DEAL_ADD, depois TRADE_TRANSACTION_HISTORY_ADD. Neste caso, as ordens de parada não são frequentemente colocadas após uma negociação ter sido executada. Suponho que isso aconteça porque a ordem já foi apagada, mas ainda não foi acrescentada à história. Isso significa que não podemos encontrar a ordem do negócio nem na história nem no terminal. Embora seja duvidoso, o fato é que nenhuma ordem de parada é colocada porque o robô não a encontra depois de procurar a ordem em todas as dimensões(isFindOrder=false). A ordem das transações pode estar correta, mas a ordem ainda não foi encontrada em nenhum lugar. Em todos os casos, o robô detecta a transação corretamente, mas não chega a fazer pedidos.No entanto, ocasionalmente também funciona corretamente e os pedidos são feitos.
Eu tentei abordagens diferentes, nada funciona. Estou pensando agora em acrescentar um intervalo de 1 segundo no início do procedimento de colocação de pedidos pendentes. Não sei onde mais cavar.
Por favor, compartilhe suas experiências e idéias.
Como posso conciliar a frase destacada com a seguinte:
Fórum sobre comércio, sistemas automatizados de comércio e testes estratégicos
Processamento OnTradeTransaction
Ilya Child, 2019.02.07 20:20
Esqueci de acrescentar que o modo é de rede. A posição é a mesma para todos os robôs. Ou seja, um robô comprou uma posição, o segundo a comprou, os eventos TRADE_TRANSACTION_DEAL_ADD vieram em ordem inversa e eventualmente o primeiro robô não a viu.
Sim e, logicamente, preciso obter um comentário sobre o pedido do ofício, a posição não é de grande ajuda aqui.Não vamos prestar atenção à gralha, um comprou o outro comprou... O principal é que parece que dois EAs trabalham em um símbolo com rede do tipo conta. Ou talvez eu não entenda alguma coisa?
Não vamos prestar atenção à gralha, um comprou o outro comprou... O principal é que parece que dois EAs estão trabalhando no mesmo instrumento com a rede do tipo conta... Ou talvez eu não entenda alguma coisa?
É normal ter vários EAs em um só símbolo de rede. Por exemplo, as de rede. Portanto, é bem possível que a posição da rede seja zero, mas existem dois SL e dois TP. O problema está claramente formulado acima.
Os EAs múltiplos são a norma em um único símbolo de rede. Por exemplo, as posições de rede. Portanto, é bem possível que a posição da rede seja zero, mas existem dois SLs e dois TPs. O problema está claramente formulado acima.
Podemos adivinhar o que quisermos. Eu gostaria de ouvir o "Chefe de Transporte". Afinal de contas, citei seus cargos.
Podemos compensar tudo o que quisermos. Eu gostaria de ouvir do gerente de transportes. Eu estava citando-o.
Acho que o chefe tem sido tão "intimidado" que não voltará a aparecer :)
Eu não o sigo muito bem. Aqui está o processamento da minha transação
Sobre o status da ordem na transação. Você percebe que eu mesmo não estou inventando isso. Em todas as transações de deal_add este é o status do pedido. Observe que é uma ordem de mercado e que costumava ser uma ordem pendente.
Agora temos outra parcela de incompreensão. Uma transação de acordo_add voou e não apareceu nenhuma posição e nenhuma posição pendente foi colocada em uma posição inexistente.
Adicionado.
A transação Deal_add é enviada, mas a posição não foi colocada e uma ordem pendente para a posição inexistente foi colocada. O tipo de negócio é Vender, o tipo de pedido é Comprar. Embora inicialmente o limite era Sell_limit
Aparentemente, ou as informações antigas não são limpas em algum lugar, ou as informações não inicializadas são tomadas.
Se eu tenho um acordo_add, a ordem normalmente já está na história, ou já foi apagada, mas ainda não apareceu na história.
Embora também aconteça que o pedido ainda está lá, e depois está no estado colocado.
Mas dificilmente poderá ser neste momento.
Verifique onde uma ordem ou história é selecionada que eles _são_ realmente selecionados.