Resposta

Tenho muitos terminais e EAs funcionando no meu VPS, mas às vezes o SL+TP não é definido no pedido... Por quê?

24 respostas

Karish

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

Perfil da visita

8 anos atrás #114929

Tenho muitos terminais e EAs funcionando no meu VPS, mas às vezes o SL+TP não é definido no pedido... Por quê?

 

É por causa do atraso do meu VPS ou há algo errado com o código mql4? meu VPS está usando muito a CPU e a memória regularmente por causa dos muitos terminais e EAs em funcionamento,

talvez por causa disso...

 

é muito raro, mas já aconteceu comigo pela terceira vez...

 

 

Isso também aconteceu com alguém aqui? obrigado.

0

mikeyc

Cliente, bbp_participant, comunidade, 877 respostas.

Perfil da visita

8 anos atrás #136043

O SL e o TP são muito pequenos (próximos ao preço de abertura da ordem)? Nesse caso, em um VPS sobrecarregado, no momento em que a modificação da ordem for recebida pelo corretor, o preço poderá estar abaixo ou acima do SL/TP.

 

Qual é o erro no registro do terminal?

0

Karish

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

Perfil da visita

8 anos atrás #136045

.

0

Karish

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

Perfil da visita

8 anos atrás #136078

O SL e o TP são muito pequenos (próximos ao preço de abertura da ordem)? Nesse caso, em um VPS sobrecarregado, no momento em que a modificação da ordem for recebida pelo corretor, o preço poderá estar abaixo ou acima do SL/TP.

 

Qual é o erro no registro do terminal?

*EDIT, encontrei o erro: "trade context is busy", depois que reduzi a cpu/ram do MT4s, continuo recebendo esse erro O_O, ordens sendo executadas sem a modificação do SL + TP, isso é a coisa mais insegura que existe..., o que devo fazer?, devo adicionar algo ao código do mql4?, ou devo adicionar mais CPU/RAM ao meu VPS? mas não consigo ver que é problema do VPS se a CPU/RAM estiver abaixo de 50%...

 

Por favor, ajude!

 

O principal aqui é que acho que esse é um problema de código do mql4, porque quando o contexto fica disponível após o erro, a ordem ainda não recebe nenhuma modificação e permanece nua sem SL + TP....

 

Talvez Mark possa responder a isso...?

0

Karish

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

Perfil da visita

8 anos atrás #136084

Será que só eu estou tendo esse problema?

É um erro de código do mql4 que, quando há um O erro "contexto de negociação está ocupado" e o SL+TP não foi modificado para a ordem, por que não há nova tentativa depois?

 

ou devo simplesmente trocar meu VPS?

RAM 2048 ÃÅ"B

2 x Xeon E5-2640 (1500 MHz)

SSD DE 30 GB

Windows Server 2008/2012 (64 bits)

 

por favor, comente o mais rápido possível...

0

mikeyc

Cliente, bbp_participant, comunidade, 877 respostas.

Perfil da visita

8 anos atrás #136086

Quantos EAs você tem em execução nesse único terminal?

 

Acredito que haja 8 threads disponíveis para cada terminal para processar pedidos.

0

Karish

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

Perfil da visita

8 anos atrás #136087

2 MT4s em execução, um com 12 EAs, o segundo com 16, o de 16 apresenta esses problemas, o de 12 nem sequer uma vez..,

Você acha que é um problema do VPS?

 

Existe alguma maneira de aprimorar o código do mql4 para que, se não houver SL + TP definidos para uma ordem quando ela for executada e receber esse erro de "contexto ocupado", seja necessário tentar novamente e modificar a ordem novamente,

dessa forma, ele resolverá esse problema IMO...

0

mikeyc

Cliente, bbp_participant, comunidade, 877 respostas.

Perfil da visita

8 anos atrás #136089

Há apenas um número limitado de threads (acho que são 8) por instância de terminal. Portanto, se você tiver 16 e mais da metade estiver tentando colocar ou modificar ordens na mesma abertura de barra, você possivelmente receberá um erro de contexto de negociação ocupado. 

 

Enviei a Mark uma biblioteca MQL4 há muitos meses, chamada OrderReliable, que tem uma lógica muito melhor de tratamento de erros e de repetição, mas ela nunca chegou a ser incluída no modelo SQ EA.

 

Com qual corretor esse erro de contexto ocupado está ocorrendo?

0

Karish

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

Perfil da visita

8 anos atrás #136092

Obrigado por sua resposta, espero que isso seja corrigido no SQ4,

Estou usando o ActivTrades Live & Demo, no Demo há 16 janelas com EAs e os problemas só aparecem lá...

o Live em execução 12 janelas, mas nenhuma mensagem de erro.

 

O que você acha que eu deveria fazer...?

0

Karish

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

Perfil da visita

8 anos atrás #136093

Você poderia colar o código do tratamento de pedidos que mencionou, por favor?

cole-o aqui: http://paste.ofcode.org/

então copie o link da URL e cole-o aqui. Vou dar uma olhada, obrigado.

0

Karish

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

Perfil da visita

8 anos atrás #136095

Talvez eu tenha resolvido o problema definitivamente com a função "sqIsTradeAllowed",

não foi esquecido de ser colocado antes de modificar um pedido,

 

Atenção, Mark, se você vir isso...

 

 

Atualizarei esta postagem se o problema foi resolvido ou não em algumas horas, mas espero que tenha sido resolvido.

0

mikeyc

Cliente, bbp_participant, comunidade, 877 respostas.

Perfil da visita

8 anos atrás #136098

A ActivTrades é um formador de mercado (eles operam contra você). Você ganha, eles perdem dinheiro, você perde dinheiro, eles ganham dinheiro. Agora, como eles controlam o spread e a execução, você consegue ver um conflito de interesses? A primeira dica é o contexto ocupado, ou seja, "achamos que você pode ganhar essa operação, isso nunca vai acontecer, meu velho".

 

Nunca vi um contexto ocupado com uma corretora ECN. No entanto, já vi o erro várias vezes com corretores formadores de mercado...

 

Algo para se pensar.

0

Patrick

Cliente, bbp_participante, comunidade, 424 respostas.

Perfil da visita

8 anos atrás #136100

A ActivTrades é um formador de mercado (eles operam contra você). Você ganha, eles perdem dinheiro, você perde dinheiro, eles ganham dinheiro. Agora, como eles controlam o spread e a execução, você consegue ver um conflito de interesses? A primeira dica é o contexto ocupado, ou seja, "achamos que você pode ganhar essa operação, isso nunca vai acontecer, meu velho".

 

Nunca vi um contexto ocupado com uma corretora ECN. No entanto, já vi o erro várias vezes com corretores formadores de mercado...

 

Algo para se pensar.

Concordo, tive o mesmo problema com o MM, mas o ECN funciona bem

0

Karish

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

Perfil da visita

8 anos atrás #136101

A ActivTrades é um formador de mercado (eles operam contra você). Você ganha, eles perdem dinheiro, você perde dinheiro, eles ganham dinheiro. Agora, como eles controlam o spread e a execução, você consegue ver um conflito de interesses? A primeira dica é o contexto ocupado, ou seja, "achamos que você pode ganhar essa operação, isso nunca vai acontecer, meu velho".

 

Nunca vi um contexto ocupado com uma corretora ECN. No entanto, já vi o erro várias vezes com corretores formadores de mercado...

 

Algo para se pensar.

 

Concordo, tive o mesmo problema com o MM, mas o ECN funciona bem

 

Muito obrigado pelas informações, vou levar isso em consideração,

No entanto, fiz algumas modificações no lado do mql4,

Eu adicionei e editei a função "sqIsTradeAllowed" antes de qualquer OrderSend/OrderDelete/OrderModify/OrderClose/OrderCloseBy,

deve solucionar o problema; caso contrário, provavelmente é o corretor. Obrigado por suas informações, pessoal, agradeço muito 🙂

0

Patrick

Cliente, bbp_participante, comunidade, 424 respostas.

Perfil da visita

8 anos atrás #136119

Acho que o mm broker recusa a ordem SL e TP, isso acontece quando você negocia manualmente com muita frequência.

0

mikeyc

Cliente, bbp_participant, comunidade, 877 respostas.

Perfil da visita

8 anos atrás #136120

Se a modificação da ordem estiver falhando, deve haver algo no diário do MT4.

 

Veja um exemplo:

 

2016.04.01 09:13:54.325 '983257': modificação da ordem #115394117 comprar 0,12 GBPUSD a 1,43665 sl: 1,42594 tp: 0,00000 -> sl: 1,42595 tp: 0,00000 falhou [Erro comum]

2016.04.01 09:08:45.168 '983257': modificação da ordem #115394117 comprar 0,12 GBPUSD a 1,43665 sl: 1,42593 tp: 0,00000 -> sl: 1,42594 tp: 0,00000 falhou [Tempo limite da negociação]
 

etc.

 

A parte no final lhe dirá o porquê.

0

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

1 2