Características da linguagem mql5, subtilezas e técnicas - página 22

 
Andrey Dik:

Em primeiro lugar, porquê passar a história se a posição é a última?

Porque a ordem do histórico depende da ordenação na guia do histórico.
 
Combinador:
Então a ordem da história depende da ordenação na guia do histórico.
Acho que testei essa hipótese uma vez. Não provou ser verdade.
 
Combinador:
Então a ordem do histórico depende da ordenação na guia do histórico.
Não, não tem. Ontem eu estava a classificar e a mexer por aí para não perder.
 
Andrey Dik:

Em primeiro lugar, porquê passar à história se a posição é a última? Ninguém nunca procura, por exemplo, o "último" elemento de uma matriz.

Em segundo lugar, a questão era sobre como determinar se a posição era fechada por SL ou TP. No momento, a forma mais adequada e confiável é ler o comentário. Além disso, o argumento de que um corretor pode mudar o comentário relativo ao SL e/ou TP está no nível da ficção, eu não encontrei exemplos de tais corretores, nem pessoalmente, nem por boatos de ninguém. ou seja, alguém em algum lugar ouviu algo de alguém, mas ninguém viu pessoalmente o fato.

OnTradeTransaction() não é garantida, o que significa que pode ser usada como uma fonte de informação e nada mais. Não é uma ferramenta para a gestão e tomada de decisões em operações comerciais.

Mas ninguém pode afirmar que a última negociação na história da MT5 será certamente uma negociação de fechamento de posição. Especialmente se houver 2 Expert Advisors em uma conta.

E quanto ao comentário de ordem de posição, o argumento "fora do reino da ficção" ou "todos o fazem" são os argumentos mais pouco convincentes.
 
Alexey Viktorov:

Mas ninguém pode afirmar que na história do MT5 a última negociação será definitivamente uma negociação fechada. Especialmente se houver 2 EAs trabalhando na conta.

Isso mesmo, apenas os dados do SL/TP às vezes precisam passar pelo histórico. Eu não entendo o que a informação pode precisar saber se o último negócio foi fechado no SL/TP? Ou seja, por que precisaria ser pescado na OnTradeTransaction, embora o gatilho tenha sido publicado uma vez.

Mas, por exemplo, como pode ser necessário ter informações sobre SL/TP - eu entendo.

 
fxsaber:

Tudo verdade, exceto que os dados do SL/TP às vezes precisam passar pelo histórico. Eu não entendo o que a informação pode precisar saber se a última negociação SL/TP fechou? Ou seja, por que precisaria ser pescado na OnTradeTransaction, embora o gatilho tenha sido de alguma forma publicado.

Mas, por exemplo, eu entendo como podemos precisar de informações sobre SL/TP deslizantes.

É uma condição muito comum em várias estratégias.

Como exemplo: existe um sinal de compra - se a última posição fechada foi uma posição de compra, e foi fechada no take, então não abra mais nenhuma compra até que a condição "inicial" de espera pelo sinal tenha ocorrido (por exemplo - o preço deve cruzar um determinado valor primeiro, e só depois disso é que se deve reagir ao sinal de compra novamente). Se uma posição estiver fechada, mas não no Take-Through (por exemplo, na borda traseira), você também pode abrir uma posição Buy sem esperar pela condição de "partida".

Bem... há muitos usos diferentes para os quais as pessoas podem usar o conhecimento de que uma posição foi fechada por uma ordem de paragem.

 
Artyom Trishkin:

Esta é uma condição muito comum em diferentes estratégias.

Como exemplo: há um sinal de compra - se a última posição fechada foi uma posição de compra, e foi fechada no ponto de compra, então não abra outra compra ...

Eu não quero ofender ninguém, mas a condição é idiota. Talvez, freelancer não seja assim tão bom.
 
fxsaber:

Tudo verdade, exceto que os dados do SL/TP às vezes precisam passar pelo histórico. Eu não entendo o que a informação pode precisar saber se a última negociação SL/TP fechou? Ou seja, por que precisaria ser pescado na OnTradeTransaction, embora o gatilho tenha sido de alguma forma publicado.

E aqui, por exemplo, eu vejo como podemos precisar de informações sobre o deslizamento do SL/TP.

Puxar o histórico de ordens e negócios em um bilhete de posição não significa passar pelo histórico de ordens e negócios durante um período ou por todo o histórico em busca da última posição fechada.

Além disso, não entendo porque a posição fechou na TP ou SL, e o principal é com lucro ou com prejuízo. Afinal de contas, tudo se resume a isto. A decisão posterior é tomada de acordo com este mesmo fato, fechar por TP significa lucro. Mas às vezes não levamos em conta o fato de que também podemos ter lucro no SL.

Eu não olhei através deste gatilho mas não vi nenhuma verificação de DEAL_ENTRY_OUT. Afinal de contas, é esta troca que lhe diz para fechar a posição nas contas de hadge.

 
Artyom Trishkin:

Esta é uma condição muito comum em várias estratégias.

Por exemplo: há um sinal de compra - se a última posição fechada foi uma posição de compra, e foi fechada no take, então não abra outra posição de compra até que haja uma condição de "início" para esperar pelo sinal (por exemplo - o preço deve cruzar um determinado valor primeiro, e só depois disso deve reagir ao sinal de compra). Se uma posição estiver fechada, mas não no Take-Through (por exemplo, na borda traseira), você também pode abrir uma posição Buy sem esperar pela condição de "partida".

Bem... Eu posso pensar em muitas maneiras diferentes para as quais as pessoas usam o conhecimento de que uma posição foi fechada por uma ordem de paragem.

Embora raro, mas convincente. A questão é se é necessário encanar as profundezas da história?
 
Alexey Viktorov:
Embora raro, mas convincente. Toda a questão é se é necessário aprofundar a história da canalização?
Não, não tens. Você só precisa saber como a última posição foi fechada (e para isso, não há necessidade de se aprofundar muito na história - basta filtrar acordos "amigáveis") - o conhecimento até a última posição no fundo da história é mais estatístico do que operacional.
Razão: