Características da linguagem mql5, subtilezas e técnicas - página 19
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
Como posso determinar a hora de abertura da última posição e a hora de fechamento da última posição?
Em geral, gostaria de conhecer os princípios gerais e algoritmos de obtenção de informações sobre posições abertas/fechadas em mql5.
O que deve ser considerado, que peculiaridades existem neste momento?
A questão é que estou usando a sintaxe MQL4, que é 1000 vezes mais fácil e compreensível do que a sintaxe MQL5 para trabalhar com a parte de negociação.
Você sabe muito bem como é fácil e clara a sua tarefa pode ser resolvida em três linhas na MQL4. É por isso que é exactamente assim que eu faço.
Para respostas a todas as perguntas relativas à MQL5, estou a pesquisar o código fonte da biblioteca. Todas as nuances que eu conheço foram consideradas lá.
Neste momento podemos afirmar que as posições de Hedge e Netting são muito diferentes. Por exemplo, em Netting você pode sempre ter apenas uma posição por meses, enquanto você está constantemente negociando. Portanto, a posição de Netting no entendimento MT5 normal é algo mal concebido e, consequentemente, inconveniente. Assim, para esta Rede, podemos criar a nossa própria essência de posição. No MT4 você também pode ter posições de Netting, mas com uma interação muito mais clara.
Abra uma posição para 1 lote. Depois feche a 0,99, e deposite a mesma quantia. E assim por diante, várias vezes.
Hedge é conveniente não porque você pode ter posições multidirecionais, mas porque você pode ter várias posições em um símbolo de UMA direção. É exactamente assim que eu vejo o trabalho confortável com posições em sistemas de Netting. Não como no MT5.
Idealmente, quando se trabalha com contas Netting, deve-se ter sempre uma tabela que corresponda totalmente às contas MT4. Porque só estas tabelas lhe dão uma compreensão instantânea do que aconteceu e como aconteceu na conta de negociação. Não as estatísticas do MT5.
Quanto ao MT5-Hedge, tudo é simples. Por pouco, no entanto, ainda não desenterrei. Portanto, não sei.
Nem sempre é possível conhecer os níveis de SL/TP de uma posição fechada.
Agora, isto é interessante... Preciso de ter a certeza de que a última posição fechada foi fechada com lucro.
Há alguma maneira de ter a certeza?
Agora, isto é interessante... Estou enfrentando a necessidade de saber com certeza que a última posição fechada foi fechada com lucro.
Há alguma maneira de saber isto com certeza?
Estou a fazer o que me aconselham:
Estou a fazer o que me aconselham.
OK, como sei se a última troca causou o fechamento ou a reversão de uma posição?
Se a posição é fechada ou invertida, então faz sentido verificar os seus dados, que serão necessários para a lógica do conselheiro: volume, facto de fechar no take ou stop, etc...
Caso contrário, se o fato de fechar na tomada foi detectado na última negociação, mas a posição permaneceu, então não faz sentido verificar os dados sobre a última posição fechada (ainda existe).
Em geral, é claro, é difícil mudar rapidamente para a lógica do sistema de ordem MT5 depois das quatro - tantas perguntas surgem quando se pensa na lógica de comportamento da EA, que depende dos dados da última posição fechada - nas quatro é tudo transparente - a posição tem o seu próprio tipo, e é a última - é adequada - pegar nos dados e usá-los. Mas aqui... cobertura, rede ... e nós precisamos do mesmo resultado... e depois começamos a pensar de uma forma diferente...
OK, então como você sabe se a última negociação levou a um fechamento ou a uma inversão de posição?
1. Se a posição for fechada ou invertida, então faz sentido verificar os seus dados, que serão necessários para a lógica do Expert Advisor: o volume, o facto de fechar no take ou stop, etc...
Caso contrário, se o facto de fechar na posição de take profit foi detectado na última posição, mas a posição permaneceu, então não faz sentido verificar os dados da última posição fechada (ainda existe).
Em geral, é claro, é difícil mudar rapidamente para a lógica do sistema de ordem MT5 depois das quatro - tantas perguntas surgem quando se pensa na lógica do comportamento do conselheiro, que está ligada aos dados da última posição fechada - nas quatro é tudo transparente - a posição tem o seu próprio tipo, e é a última - cabe, pegamos os dados e os usamos. Mas aqui... cobertura, rede ... e nós precisamos do mesmo resultado... e depois começamos a pensar por todo o lado...
1. Verificar tipo de transação, IN, OUT ou IN/OUT
2. Se uma posição já foi fechada por SL ou TP, já está fechada, não é necessário verificar o tipo de negócio.
1. Verificar o tipo de transação, IN, OUT ou IN/OUT
2. Se a posição é fechada por SL ou TP, não está mais lá, está fechada, você não precisa verificar o tipo de comércio.
É verdade para a rede? Ou também é verdade para a cobertura? Não pode haver várias posições em uma direção em uma conta de hedge? Ou é uma posição, e ....? O que é "e"? ... Merda... Eu não sei o que é "e"... Muitas perguntas, ainda sem respostas.
Para a sebe também.
Ao longo dos anos o meu cérebro tem sido afiado para a rede. Ordem->Transacção->Posição. Pode haver muitos negócios em uma posição (em uma cobertura há apenas um negócio, me corrija se eu estiver errado), você pode dizer o que aconteceu com a posição pelo tipo de negócio.
Em uma sebe é claro que é mais fácil de entender, mas mais difícil de acompanhar. Claro, esta é a minha opinião pessoal.
Para uma sebe também.
Ao longo dos anos o meu cérebro tem sido afiado para a rede. Ordem->Transacção->Posição. Pode haver muitos negócios em uma posição (em uma cobertura há apenas um negócio, me corrija se eu estiver errado), você pode dizer o que aconteceu com a posição pelo tipo de negócio.
Em uma sebe é claro que é mais fácil de entender, mas mais difícil de acompanhar. IMHO, claro.
Agora, isto é interessante... Preciso de ter a certeza de que a última posição fechada foi fechada com lucro.
Há alguma maneira de saber isto com certeza?
Quando você encontrar o último negócio DEAL_ENTRY_OUT e selecionar todo o histórico da posição HistorySelectByPosition nesta lista, há 2 negócios e 2 ordens, abrindo uma posição e fechando-a. A ordem com base na qual o fechamento ocorreu contém ORDER_PRICE_OPEN. Em seguida, você verifica o tipo de posição e o tipo de ordem que foi usada para fechá-la. Se o tipo de ordem é o oposto, significa que foi um fechamento. Assim, o preço da ordem é o preço que devemos procurar, com uma pequena correcção: se o lucro da ordem é > 0, então este é o preço do TP, se for < 0, então a posição fechou no SL.
Se levarmos em conta o comentário ao pedido, não devemos confiar nele.
Quando você encontrar a última negociação DEAL_ENTRY_OUT e selecionar todo o histórico da posição HistorySelectByPosition nesta lista há, para contas hadge 2 negociações e 2 ordens, abrindo uma posição e fechando-a. A ordem com base na qual o fechamento ocorreu contém ORDER_PRICE_OPEN. Em seguida, você verifica o tipo de posição e o tipo de ordem que foi usada para fechá-la. Se o tipo de ordem é o oposto, significa que foi um fechamento. Assim, o preço da ordem é o preço que devemos procurar, com uma pequena correcção: se o lucro da ordem é > 0, então este é o preço do TP, se for < 0, então a posição fechou no SL.
Se confiássemos no comentário à ordem, eu não o faria.