Resposta

[Preciso de ajuda!!!, não consigo mais negociar dessa forma, às vezes o SL/TP não é definido!

20 respostas

Karish

Customer, bbp_participant, community, sq-ultimate, 443 replies.

Perfil da visita

6 anos atrás #201579

Não consigo mais negociar dessa forma, às vezes o SL/TP não se ajusta!

como consertar essa maldita coisa?

 

Alguém tem algum código de substituição do "Retry" que comprovadamente funcione para que eu possa substituir a função OrderModify original?

 

alguma alternativa? obrigado...

0

Marca Fric

Administrador, sq-ultimate, 2 respostas.

Perfil da visita

6 anos atrás #201599

Você pode me dizer o que exatamente está acontecendo?

Às vezes, o SL/PT não é definido quando o pedido inicial é feito?

Vou dar uma olhada e adicionar algumas tentativas quando o SL/PT não for colocado, e publicarei isso ainda hoje ou amanhã.

 

 

Marcar
EstratégiaQuant arquiteto

0

Karish

Customer, bbp_participant, community, sq-ultimate, 443 replies.

Perfil da visita

6 anos atrás #201602

Você pode me dizer o que exatamente está acontecendo? O SL/PT às vezes não é definido quando a ordem inicial é colocada? Vou dar uma olhada nisso e adicionar algumas novas tentativas quando a SL/PT não for colocada, e publicarei isso ainda hoje ou amanhã.

Obrigado, Mark, por favor, isso acontece às vezes, não sei por quê,

uma função de repetição é OBRIGATÓRIA,

uma versão oficial de um código fixo de vocês será simplesmente incrível,

 

Aqui estão as coisas que notei, talvez eu esteja errado, mas isso aconteceu comigo:

- OrderSend - ele tenta novamente corretamente? (já existe uma função de repetição antes de enviar o ordersend [3 tentativas])

 

- OrderModify - aqui está a parte com muitos bugs (às vezes o SL/TP não é definido, às vezes o SL é definido, mas o TP não, e às vezes o TP é definido, mas o SL não, *a função de repetir algumas vezes é obrigatória! + Pelo que entendi, o cálculo do SL/TP está errado, especialmente quando se usa o ATR como SL/TP !!!)

 

- OrderClose - a função de repetição de algumas vezes é imprescindível!

 

- OrderClose - a função de repetição de algumas vezes é imprescindível!

 

 

*Existem algumas funções "OrderModify" para Modificar após OrderSend + Modificar para Trailing + Modificar para BreakEven + etc.

0

Karish

Customer, bbp_participant, community, sq-ultimate, 443 replies.

Perfil da visita

6 anos atrás #201605

- OrderClose - a função de repetição de algumas vezes é imprescindível!

 

Por acidente, escrevi "OrderClose" duas vezes,

deveria ser:

- OrderClose - a função de repetição de algumas vezes é imprescindível!

- OrderDelete - A função de repetir algumas vezes é imprescindível!

0

Marca Fric

Administrador, sq-ultimate, 2 respostas.

Perfil da visita

6 anos atrás #201606

Ok, fiz a correção. Ele tenta definir SL & PT 5 vezes e, se falhar, exclui a ordem.

 

Para que funcione, salve esse arquivo na pasta {SQ3}\code\Mql_MT4, substituindo o antigo.

 

Ainda não a liberei como uma atualização global, pois ela altera o funcionamento de algumas coisas, especialmente a exclusão da ordem se o SL não estiver definido.
Você acha que eu deveria lançá-lo como uma atualização automática para o SQ 3?

 

 

Marcar
EstratégiaQuant arquiteto

0

Karish

Customer, bbp_participant, community, sq-ultimate, 443 replies.

Perfil da visita

6 anos atrás #201609

Obrigado por seu tempo e esforço, Mark,

Acho que o fechamento/exclusão da ordem após algumas tentativas será muito ruim, porque os resultados do SQ para o MT4 não corresponderão à lógica,

 

Por favor, dê sua opinião sobre a minha função e a solução para isso, pois ainda não tentei todas as tentativas do "While loop retry",

Mas, quando atualizei meu código para usar "if(CheckTradeContext()>=0)" antes de cada OrderSend/OrderModify/OrderClose/OrderDelete, parece que o problema foi resolvido. Também adicionei "RefreshRates();" aqui e ali para ajudar no processo,

 

No entanto, ao retransmitir apenas em "if(CheckTradeContext()>=0)", ele pode retornar um erro e não terá outra chance de modificar a ordem novamente, portanto, é isso que causa o SL=0/TP=0 ou até mesmo ambos =0 e ele não tentará modificá-los novamente,

O mesmo vale para OrderClose e OrderDelete,

 

Então, recentemente, acabei de concluir o "retry", embora ainda não o tenha testado com as "retries",

No momento, o portfólio em meu VPS está usando apenas "if(CheckTradeContext()>=0)" antes de cada OrderSend/OrderModify/OrderClose/OrderDelete ,

parece estar funcionando bem, mas quando ele dá um erro ao tentar modificar/fechar/excluir uma ordem, ele não tenta novamente, porque eu ainda não atualizei os EAs no meu VPS para usar a versão "retry", então será triste ver isso, embora eu esteja esperando para ver se ele ainda funcionará bem como está agora sem as "retries".

 

 

De qualquer forma, dê uma opinião sobre minha solução para esse problema. O código da função está aqui:

https://paste.ofcode.org/36AZzdDnpypf4VQYgvAJ47d

 

o código completo do meu "MT4Functions.INC" com todas as funções corrigidas aqui:

https://paste.ofcode.org/38dDjfmXeVsGCE4wYUccXbD

 

*OBSERVE que este é o código da versão 3.8.1, NÃO da 3.8.2, pois ainda não atualizei,

 

Você poderia me fornecer o registro de alterações completo do que foi alterado na versão 3.8.2? e qual é o motivo dessa atualização?

Também vi uma nova função adicionada, chamada: "changePendingOrder"

 

Obrigado, aguardarei sua resposta.

0

Karish

Customer, bbp_participant, community, sq-ultimate, 443 replies.

Perfil da visita

6 anos atrás #201611

Também notei que, às vezes, as ordens pendentes não se apagam sozinhas, e o EA continua abrindo novas ordens pendentes sem remover a(s) ordem(ns) pendente(s) mais antiga(s), mesmo que a ordem já tenha sido convertida em uma ordem de mercado.

Vou tentar consertar isso de alguma forma, talvez eu deva atualizar os EAs em meu VPS para a versão mais recente com o loop "retrying"...

0

Karish

Customer, bbp_participant, community, sq-ultimate, 443 replies.

Perfil da visita

6 anos atrás #201613

Instalei a versão 3.8.2 mais recente com o novo código e tudo mais,

tentando fazer com que o sistema "Retry" funcione, mas sem sucesso.

 

Alguém poderia me ajudar? Mark, se você tiver tempo...?
Modifiquei as funções "OrderModify/OrderClose/OrderDelete",
*O "OrderSend" permaneceu o mesmo.

você pode usar o recurso CTRL+F dentro do código e ver o que foi alterado,

 

O que eu preciso é que todas as funções "OrderModify/OrderClose/OrderDelete" tenham um sistema de loop "Retry" totalmente funcional,

Isso significa que cada "OrderModify/OrderClose/OrderDelete" será repetido 100 vezes com uma pausa ("Sleep()") de 15 segundos ou mais entre cada repetição, de modo que NÃO haverá possibilidade de uma ordem que permaneça sem SL/TP ou ambos, ou uma ordem que deveria ter sido fechada/excluída e não o foi.

 

Como eu disse na postagem acima, aqui estão os problemas:

  • - OrderModify - aqui está a parte com muitos bugs (às vezes, o SL/TP não é definido, às vezes, o SL é definido, mas o TP não e, às vezes, o TP é definido, mas o SL não, *a função de repetir algumas vezes é obrigatória! + Pelo que entendi, o cálculo do SL/TP está errado, especialmente quando se usa o ATR como SL/TP!)
  • - OrderClose - a função de repetição de algumas vezes é imprescindível!
  • - OrderDelete - a função de repetição de algumas vezes é essencial!

 

Por favor, ajude e vamos criar uma versão atualizada do código, com sorte uma nova versão 3.8.3 com todos esses erros corrigidos.

Obrigado por seu tempo e esforço.

 

A EA:
https://paste.ofcode.org/8Zm8acSG3ZbjyMRYd3AZ23

 

BTW!* - Encontrei algo que pode nos ajudar aqui:

http://www.stevehopwoodforex.com/phpBB3/viewtopic.php?f=15&t=525&hilit=OrderReliable

 

0

FILIPE BONALDO ACERBI

Cliente, bbp_participante, comunidade, 27 respostas.

Perfil da visita

6 anos atrás #201617

Olá Karish

Tive o mesmo problema com a modificação/exclusão de ordens com minha corretora. A cada novo dia, recebo a mensagem "mercado ocupado" nos primeiros 2 minutos do dia e o EA não consegue alterar/excluir ordens. Tenho EAs em execução no período diário, portanto, se houver falha no início do dia, ele nunca alterará/excluirá ordens. Assim, implementei loops de repetição para todas as funções e não tenho mais problemas. Ele fará 60 tentativas a cada 30 segundos até alterar/excluir as ordens. Em geral, o EA tenta de 4 a 6 vezes para alterar a ordem com sucesso. Se você quiser, tente usar este "MT4Functions.inc" anexado.

Anexos:
Você deve ser logado para ver os arquivos anexos.

0

Karish

Customer, bbp_participant, community, sq-ultimate, 443 replies.

Perfil da visita

6 anos atrás #201620

Que bom, obrigado por sua contribuição para este tópico, Filipe!

Vou verificar isso imediatamente :), e informarei se esses problemas foram resolvidos

0

Karish

Customer, bbp_participant, community, sq-ultimate, 443 replies.

Perfil da visita

6 anos atrás #201626

Filipe! Obrigado, meu amigo, parece que isso resolveu completamente os erros do Backtesting,

Vou atualizar os arquivos EX4 do meu portfólio agora mesmo, vamos ver o que acontece, e postarei novamente com o resultado,

 

Obrigado novamente por compartilhar e me ajudar 🙂

0

Karish

Customer, bbp_participant, community, sq-ultimate, 443 replies.

Perfil da visita

6 anos atrás #201628

Mas continue recebendo os Erros,

Isso ocorreu mesmo antes das funções de loop de "repetição" que foram adicionadas:

 

Isso também acontece com você?

Anexos:
Você deve ser logado para ver os arquivos anexos.

0

FILIPE BONALDO ACERBI

Cliente, bbp_participante, comunidade, 27 respostas.

Perfil da visita

6 anos atrás #201650

Geralmente, o erro 1 ocorre quando o EA está tentando definir os mesmos valores de TP e ST que já foram definidos. Esse não é o caso?

0

Karish

Customer, bbp_participant, community, sq-ultimate, 443 replies.

Perfil da visita

6 anos atrás #201652

Estou com tempo livre agora, vou verificar o que posso fazer para consertar esse problema,

Obrigado por sua resposta, amigo.

0

mabi

Cliente, bbp_participant, comunidade, 261 respostas.

Perfil da visita

6 anos atrás #201653

Mark, seria bom se esse problema do MT4 pudesse ser resolvido de uma vez por todas para o SQ3 e também para o SQ4. Esse é um grande problema com a plataforma Mt4 e também é afetado por problemas de conexão e desempenho de núcleos compartilhados de VPS de baixa qualidade. De fato, esse é um problema e tem um impacto direto no desempenho das negociações ao vivo em comparação com o desempenho do backtesting para o mesmo período de análise.

0

Karish

Customer, bbp_participant, community, sq-ultimate, 443 replies.

Perfil da visita

6 anos atrás #201657

@mabi está certo, estou trabalhando corretamente para melhorar o código geral, encontrei alguns bugs aqui e ali, adicionando algumas coisas para corrigir esses problemas, se a equipe de desenvolvimento não liberar nenhuma correção para o código, publicarei as minhas, se estiver tudo bem,

Acho que devemos trabalhar juntos e resolver os erros dentro do código,

Abrirei um tópico sobre esse assunto assim que terminar de trabalhar no código, ainda hoje, de modo que o código publicado estará aberto para que todos possam melhorar os bugs excluídos (minimizados) em comparação com os bugs oficiais da versão 3.8.2.

0

Visualizando 15 respostas - 1 até 15 (de um total de 20)

1 2