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
E, nesse caso, não há como trabalhar com o limitador. Ou existe uma maneira?
Eu fecho as posições definindo um takeout no preço atual. Mas o takeout nem sempre vem na forma de um limite (depende do software da corretora). É por isso que essa solução nem sempre é adequada.
Se for necessário ser exato com um limitador. Eu defino um limitador e, no caso de um hedge, fecho as posições opostas por meio do OrderCloseBy.
Presumo que o take seja escolhido para que, no caso de hedging, você possa enviar uma solicitação de take para o servidor em vez de duas solicitações separadas de limit e CloseBy? E para a compensação não faz diferença.
A propósito, pelo que me lembro, na bolsa de valores não era possível colocar um take ou stop loss diretamente no preço atual; deveria haver um recuo.
Presumo que o take seja escolhido para que, no caso de hedging, você possa enviar uma solicitação de take para o servidor em vez de dois limit e CloseBy separados? E para a compensação não faz nenhuma diferença.
A operação CloseBy não é uma negociação, portanto, não há muita diferença.
Mostrarei a peculiaridade de usar o estilo MT5 e o estilo MT4 juntos usando essa função como exemplo.
Leve isso em consideração se você trabalhar com HistorySelect+MT4Orders.
Há vários locais onde ocorre a seleção da ordem de posição. Com o comentário
// Durante a pesquisa, o número de pedidos pode mudaré verificado que o número de ordens pode mudar. Mas, a rigor, pode haver uma situação em que o número de ordens não tenha mudado, mas as próprias ordens tenham mudado, como 1 fechada e 1 nova aberta. E então a numeração no meio do caso pode mudar. Essa situação nunca aconteceu durante todo o tempo de uso? A falta de verificações mais rigorosas é um bug ou uma ignorância deliberada de uma situação improvável para não complicar muito o código? Ou eu dei uma olhada em algo e não há nenhum bug aqui?
Há vários locais onde ocorre a seleção da ordem de posição. Com comentários
é verificado que o número de ordens pode mudar. Mas, a rigor, pode haver uma situação em que o número de ordens não tenha mudado, mas as próprias ordens tenham mudado, como 1 fechada e 1 nova aberta. E então a numeração no meio do caso pode mudar. Essa situação nunca aconteceu durante todo o tempo de uso? A falta de verificações mais rigorosas é um bug ou uma ignorância deliberada de uma situação improvável para não complicar muito o código? Ou eu dei uma olhada em algo e não há nenhum bug aqui?
Não me lembro. Só sei que fiz muitos testes de estresse para verificar todas as situações.
ORDER_TIME_SETUP(_MSC) para o horário de execução da primeira (talvez penúltima) operação. Ou seja, será impossível determinar, a partir do histórico, quando, por exemplo, a BuyLimit foi colocada.
Como consequência, uma posição de hedge pode ter um preço de abertura fracionário, como pode ser observado com frequência na compensação.
Nessa situação, via MT4Orders, OrderOpenPrice/OrderOpenTime dessa posição MT4 será igual aos valores correspondentes da primeira negociação MT5.
Ou seja, infelizmente, não haverá preço fracionário para abrir uma posição. Essa é uma situação rara, mas acontece.
Fórum sobre negociação, sistemas de negociação automatizados e teste de estratégias de negociação
Bibliotecas: MT4Orders
fxsaber, 2020.03.18 03:47
Rejeição de empate.
Essa situação pode ocorrer com frequência:
O MT4Orders não mostra essas ordens MT5 em tais situações de um teejk re-jack, bem como nos casos em que a ordem de take foi parcialmente executada e depois cancelada. E é isso mesmo!
Última versão MT5 2361 usando MT4Orders, real, hedge. Vários EAs, diferentes magias. Situação de um dos Expert Advisors.
Foi colocada uma ordem de COMPRA, ticket 216684. Depois de algum tempo, era hora de fechar a posição, um limite de VENDA foi colocado para fechá-la e outro limite de VENDA para abrir uma posição inversa, tickets 216975 e 216978. Todas as ordens têm o mesmo tamanho de lote. Quando o limite 216978 foi acionado, o 216684 e o 216978 foram recolhidos via CloseBy e apenas o 216975 permaneceu.
Parte do registro do Journal
Parte do registro do Expert Advisor
Ou seja, podemos ver que havia 3 ordens. Mas no processo de colapso de duas delas e de mudança para o mercado da terceira, a lista de ordens ficou vazia, embora uma devesse ter permanecido. Essa situação pode levar à abertura dupla de uma posição.
Eu recebo ordens por meio do seguinte código
E então inseri uma verificação, caso o número mudasse durante a enumeração. Mas ela parece estar faltando. Isso é um bug, um recurso ou entrei em uma área inacabada?
a lista de ordens acabou ficando vazia, embora 1 devesse ter permanecido. A situação pode levar à abertura de posições duplas.
Esse é um bug do MT5.
Fórum sobre negociação, sistemas de negociação automatizados e teste de estratégias de negociação.
Bibliotecas: MT4Orders
fxsaber, 2019.11.19 07:26 AM.
O tópico é grande, abaixo está uma lista de postagens de interesse.
https://www.mql5.com/ru/forum/93352/page11#comment_4071950
SO