Problema com o MT4 Abrindo um negócio, depois fechando-o de novo imediatamente - página 6

 
peterc005:


MT4\Experts\Logs folder:

17:28:48 FapTurbo50 EURUSDFXF,M5: abrir #2662451 comprar 0.20 EURUSDFXF a 1.2909 ok

17:28:49 FapTurbo50 EURUSDFXF,M5: modificar #2662451 comprar 0.20 EURUSDFXF a 1.2909 sl: 1.2407 tp: 1.2929 ok


Quais são as próximas linhas neste tronco? Todas as linhas agradecem e não "filtradas" pelo que você considera importante ou não, apenas entradas de troncos brutos. Especialmente todas aquelas com o mesmo ou quase o mesmo timestamp em todos os outros terminais também.


Talvez também um estranho automatismo FIFO em curso? Eu já vi corretores movendo automaticamente os stoplosses existentes sem aviso prévio, talvez alguns estejam até mesmo fechando negócios existentes quando outros negócios são abertos? Neste caso, você teria que agradecer às autoridades reguladoras por "proteger" com sucesso seu dinheiro.


E como estão seus níveis de margem livre quando isto acontece? em algum lugar próximo a perigosamente baixo?

 
Ainda não está conclusivamente provado, mas suspeito que o problema é a Probabilidade EA

Aqui estão as razões:

1) Eu desliguei a Probability EA e algumas vezes em várias contas, as vezes que a Probability EA estava em execução parecem corresponder com as vezes que eu tive todos esses negócios fechados incorretamente.

2) Eu notei que o FAP Turbo escreve registros de Abertura e Fechamento para o Log de Especialistas normalmente (obrigado pela sugestão de 7bit).

3) Notei que os 50 negócios do FAP Turbo que fecharam após alguns segundos tinham um registro Aberto, mas nenhum registro Fechado no Registro de Especialistas.

4) Observo que a Probabilidade EA parece não escrever para o Diário de Peritos.

5) Isto implica que a FAP Turbo abriu as transações ok, escrevendo um registro no registro do Expert. A Probabilidade EA então fechou o negócio, mas não escreveu nada no registro de Perito. Com base no sinal, a FAP Turbo então abriu outro negócio, repetindo o loop muitas vezes.

As provas estão crescendo, mas ainda é muito cedo para tirar conclusões. Contatei o fornecedor da Probability EA para obter mais informações. Também descompilarei a EA para ver se há algum erro lógico óbvio.

 

As setas vermelhas (triângulos ou setas que apontam para a esquerda) aparecem no gráfico Probabilidade-EA nos momentos em que a FAP negocia?

Quando você passa o mouse sobre estas setas no gráfico ProbabilityEA de modo que a pequena janela de dicas amarela apareça, os números das passagens nestas dicas correspondem às negociações FAP fechadas erroneamente? (por exemplo, no gráfico da captura de tela que você postou no fórum do FF)

 
peterc005: Eu também descompilarei a EA para ver se há algum erro lógico óbvio.

Insira uma Print() antes de cada OrderClose() e OrderCloseBy(), compile o código modificado e execute-o no lugar do original.


Procure a presença (ou ausência) de uma chamada para OrderMagicNumber() perto de qualquer OrderClose() ou OrderCloseBy() no código.

Procure também qualquer coisa entre a verificação e o fechamento que possa alterar a ordem atualmente selecionada (como por exemplo, outro loop sobre todas as ordens para encontrar uma ordem compensatória ou de outra forma relacionada, isto mudaria a seleção atual para algo completamente imprevisível e um OrderClose(OrderTicket(),...) seguinte iria então inevitavelmente causar estragos na conta). Toda ordem deve ser comparada com o número mágico antes de ser fechada. Não fazer esta verificação ou fazê-lo de forma errada provocará este tipo de erro porque cada EA tem sempre acesso a todas as negociações da conta e é responsável por filtrá-las cuidadosamente.

Não existe nenhum mecanismo de filtro implícito pelo MT4 que de alguma forma protegeria automaticamente uma EA de outras negociações em outros gráficos, cada EA deve implementar isto completamente por conta própria (e pode falhar miseravelmente).

 
7bit:

Insira uma Print() antes de cada OrderClose() e OrderCloseBy(), compile o código modificado e execute-o no lugar do original.


Procure a presença (ou ausência) de uma chamada para OrderMagicNumber() perto de qualquer OrderClose() ou OrderCloseBy() no código.

Procure também qualquer coisa entre a verificação e o fechamento que possa alterar a ordem atualmente selecionada (como por exemplo, outro loop sobre todas as ordens para encontrar uma ordem compensatória ou de outra forma relacionada, isto mudaria a seleção atual para algo completamente imprevisível e um OrderClose(OrderTicket(),...) seguinte iria então inevitavelmente causar estragos na conta). Toda ordem deve ser comparada com o número mágico antes de ser fechada. Não fazer esta verificação ou fazê-lo de forma errada provocará este tipo de erro porque cada EA tem sempre acesso a todas as negociações da conta e é responsável por filtrá-las cuidadosamente.

Não existe nenhum mecanismo de filtro implícito pelo MT4 que de alguma forma protegeria automaticamente uma EA de outras negociações em outros gráficos, cada EA deve implementar isto completamente por conta própria (e pode falhar miseravelmente).

Olá 7bit,

Parece uma boa idéia, vou tentar.

Cumprimentos

Peter

 

Com relação a algumas perguntas anteriores:

1) Não acho que o uso de um corretor ECN (especificamente GoMarkets) faça a diferença com este problema. Tive o mesmo problema com o forex.com. Em geral, eu gosto do GoMarkets e acho que eles são bons.

2) Eu não acho que tenha sido relacionado a margem ou equidade. A razão para isto é "s/o" é acrescentada aos comentários quando um negócio é fechado por causa de uma equidade insuficiente.

Peter

 

Acontece que o problema estava na versão 7.1 da Probability EA. Aqui está a resposta do fornecedor:

peterc005,

Esta questão foi resolvida com a v7.1.1 (em oposição à v7.1). Inicialmente diminuí o Número Mágico em 1 cada vez que um ciclo era fechado (o que notificou a EA para fechar o ciclo). Isto funciona bem se a EA for a única em execução, mas quando as pessoas quiseram usar esta EA além de outras EA, modifiquei o código para que o Número Mágico permanecesse constante, e a EA usa outras formas de fechar o ciclo.

Vou enviar uma cópia da v7.1.1 e me avisar se você ainda estiver tendo o problema.

Michael

Agradeço a honestidade e franqueza dos vendedores, mas este problema com a EA me custou cerca de US$ 5.000 e destruiu 3 contas durante alguns meses.

 

"Inicialmente diminuí o Número Mágico em 1 cada vez que um ciclo era fechado"

Parece que o desenvolvedor deste EA não sabe qual é a finalidade dos números mágicos. Isto significa que ele está em seus estágios iniciais de experimentação, mas já está vendendo seu código de iniciante defeituoso e buggy por dinheiro. Isto confirma totalmente tudo o que eu disse sobre a qualidade do código destes EA comerciais. Eu não confiaria nestas coisas nenhum dinheiro.


A lição a ser aprendida aqui deve ser: Não confie em nenhum EAs de código fechado. A indisponibilidade da fonte garante a má qualidade do código.

 

Prezado Peterc005

Tive um problema semelhante em meu VPS, ele mostra que outra instância de metatrader do mesmo diretório foi aberta na retaguarda e fechou os negócios abertos pelo primeiro metatrader.

Tente fechar todos os MetaTraders e depois opte pelo TaskManager e verifique se há alguma instância no Terminal.exe runnig, se assim for reinicie sua máquina e o problema será resolvido.

Você pode procurar pelo detector de fantasmas no google para saber mais sobre este problema.