Leilão

 

Começando agora no mundo do MT5 e já me surgiu um problema/dúvida, é possível jogar ordem com MT5 no leilão de fechamento?

Pergunto pois se, por exemplo, uma posição minha não foi fechada até ele, precisaria desfaze-la no leilão para não terminar o dia posicionado, como faço normalmente em uma operação manual. 

Percebi que em backtest não tem candle depois de 16:54, sendo assim, meus testes falham...

Estou fazendo algo errado? 

 

Desde já,

Obrigado. 

 
lgarrido:

Começando agora no mundo do MT5 e já me surgiu um problema/dúvida, é possível jogar ordem com MT5 no leilão de fechamento?

Pergunto pois se, por exemplo, uma posição minha não foi fechada até ele, precisaria desfaze-la no leilão para não terminar o dia posicionado, como faço normalmente em uma operação manual. 

Percebi que em backtest não tem candle depois de 16:54, sendo assim, meus testes falham...

Estou fazendo algo errado? 

 

Desde já,

Obrigado. 

Olá lgarrido,

É sim possível, caso você utilize a função de manipulação de eventos correta (como por exemplo OnTimer). Entretanto, apesar de teoricamente possível, não é tecnicamente aconselhável, uma vez que várias informações relevantes para operar em leilões não estão disponíveis (ainda) no terminal MetaTrader, como por exemplo o preço teórico do leilão.

Abraços,
Malacarne 

 
Rodrigo Malacarne:

Olá lgarrido,

É sim possível, caso você utilize a função de manipulação de eventos correta (como por exemplo OnTimer). Entretanto, apesar de teoricamente possível, não é tecnicamente aconselhável, uma vez que várias informações relevantes para operar em leilões não estão disponíveis (ainda) no terminal MetaTrader, como por exemplo o preço teórico do leilão.

Abraços,
Malacarne 

 

Então Malacarne,

Estou usando no OnInit() um EventSetTimer(1).

Dentro do OnTimer(), tenho minhas checagens de horário usando o TimeTradeServer().

Colocando dentro do horário que havia mencionado, tudo funciona ok. Mas a parte onde checa se estou posicionado após 16:55, não funciona em Backtest. Acredito que se eu tiver rodando ele no horário do pregão, o que não testei, talvez funcione... Acho que vou até aproveitar pra testar agora já que está perto do horário. De qualquer forma, por Backtest não funcionou e acredito ser por não me dar o Candle de fechamento. Como estou começando agora no MT5, não sei se é erro meu procurar por esse candle e se eu teria que tratar o leilão de outra forma.

 Obrigado pela atenção.

 Abraços,

Luiz Garrido 

 

Sim rodou, fiz o teste com mercado rolando mas em conta demo... A função executou mas com erro, não conseguiu vender, preciso verificar o que houve, mas pelo menos passou por ela agora. Percebi também que o candle do leilão não existe. Acabei de entrar na conta real e tem o Candle, na Demo não, acho que encontrei meu problema... Pelo visto terei dificuldade em fazer backtest.

Poderia assumir que uma ordem jogada depois de 16h55 e antes de 17h, em um valor que ela seria executada com certeza (no XPPRO por exmplo), ela será executada normalmente no MT5?

 

E só para constar, mas ainda não debuguei, o erro foi:

"Error 4756, retcode = 10013"


 

Abraços,

LG  

 
Este post é meio antigo mas pode ser que alguém consiga responder minha pergunta, preciso que meu robô consiga identificar quando que uma ação entra em leilão (no fim do dia), alguma sugestão? Desde já, obrigado.
 

Também gostaria de saber se existe algum indicador e/ou script para resolver essa falta de suporte a Leiloes no metatrader....


É só no Brasil que tem leiloes de abertura e fechamento?

 
vinicius marini:

Também gostaria de saber se existe algum indicador e/ou script para resolver essa falta de suporte a Leiloes no metatrader....


É só no Brasil que tem leiloes de abertura e fechamento?

Os horários de leilão de abertura e de fechamento vc pode encontrar no site da B3, e assim saber se está em leilão com base na hora corrente.

Às vezes ocorrem leilões inesperados no meio do pregão (geralmente quando há um movimento muito forte no preço). Nesses casos, uma forma de descobrir que está em leilão é verificar a condição BID >= ASK

 
Trader_Patinhas:

Os horários de leilão de abertura e de fechamento vc pode encontrar no site da B3, e assim saber se está em leilão com base na hora corrente.

Às vezes ocorrem leilões inesperados no meio do pregão (geralmente quando há um movimento muito forte no preço). Nesses casos, uma forma de descobrir que está em leilão é verificar a condição BID >= ASK

Ótima dica man! Resultou na melhoria de meu código! Obrigado!

[ ]'s

Razão: