Ordens com valor fixo limitado

 
Boa tarde,

É possível enviar uma ordem que seja executada apenas no valor que enviei?

Por exemplo, quero comprar 5000 ações da VALE5 a R$ 30,00. Porém, normalmente, uma ordem "maiorzinha" ao ser executada é quebrada em várias partes conforme a oferta e procura, podendo ser executada um pouco fora desse preço ou muito fora do preço, dependendo da liquidez. Dependendo da estratégia, isso pode comer o lucro. Assim, eu quero que esta ordem seja executada exatamente a R$ 30,00 não importa quantos lotes sejam consumidos, se forem só 200, tudo bem, é isso mesmo que espero.

É possível fazer isso pela bote do MT5? E por programação?

Valeu!
 
Gustavo Hennemann:
Boa tarde,

É possível enviar uma ordem que seja executada apenas no valor que enviei?

Por exemplo, quero comprar 5000 ações da VALE5 a R$ 30,00. Porém, normalmente, uma ordem "maiorzinha" ao ser executada é quebrada em várias partes conforme a oferta e procura, podendo ser executada um pouco fora desse preço ou muito fora do preço, dependendo da liquidez. Dependendo da estratégia, isso pode comer o lucro. Assim, eu quero que esta ordem seja executada exatamente a R$ 30,00 não importa quantos lotes sejam consumidos, se forem só 200, tudo bem, é isso mesmo que espero.

É possível fazer isso pela bote do MT5? E por programação?

Valeu!

Olá Gustavo Hennemann,

Para que você não corra o risco de slippage na execução de sua ordem, você tem, basicamente, duas alternativas:

1) colocar uma ordem limite com preço especificado em 30 reais; a ordem pode não ser executada em sua totalidade, mas você não irá pagar mais caro que isso; entretanto, a questão de "quebrar" sua ordem em lotes menores, infelizmente você não terá controle sobre isso, uma vez que depende do mercado e da posição das ordens disponíveis no book.

2) colocar uma ordem do tipo FOK (fill or kill); nesse caso você vai executar sua ordem no preço pré-estabelecido, mas o próprio tipo da ordem se encarrega de verificar se existe volume disponível naquele nível de preço que você deseja; o tipo da ordem diz tudo: ela será preenchida, ou, na eventualidade de restrições de volume/preço, a ordem será automaticamente cancelada.

Abraços,
Malacarne 

 
Rodrigo Malacarne:

Olá Gustavo Hennemann,

Para que você não corra o risco de slippage na execução de sua ordem, você tem, basicamente, duas alternativas:

1) colocar uma ordem limite com preço especificado em 30 reais; a ordem pode não ser executada em sua totalidade, mas você não irá pagar mais caro que isso; entretanto, a questão de "quebrar" sua ordem em lotes menores, infelizmente você não terá controle sobre isso, uma vez que depende do mercado e da posição das ordens disponíveis no book.

2) colocar uma ordem do tipo FOK (fill or kill); nesse caso você vai executar sua ordem no preço pré-estabelecido, mas o próprio tipo da ordem se encarrega de verificar se existe volume disponível naquele nível de preço que você deseja; o tipo da ordem diz tudo: ela será preenchida, ou, na eventualidade de restrições de volume/preço, a ordem será automaticamente cancelada.

Abraços,
Malacarne 

Olá @Rodrigo Malacarne,

A primeira opção é o que quero executar, priorizando o preço.

Como eu configuro esta ordem (qual o tipo e como configuro a requisição)? Já existe algum tópico com estes detalhes?

Obrigado novamente
 
Gustavo Hennemann:
Olá @Rodrigo Malacarne,

A primeira opção é o que quero executar, priorizando o preço.

Como eu configuro esta ordem (qual o tipo e como configuro a requisição)? Já existe algum tópico com estes detalhes?

Obrigado novamente

Olá Gustavo Hennemann,

Você precisa entender então como utilizar ordens do tipo LIMIT.

Por favor dê uma olhada no seguinte link (especificamente a parte de ordens pendentes): https://www.metatrader5.com/pt/terminal/help/trading/general_concept

Abraços,
Malacarne 

 
Rodrigo Malacarne:

Olá Gustavo Hennemann,

Você precisa entender então como utilizar ordens do tipo LIMIT.

Por favor dê uma olhada no seguinte link (especificamente a parte de ordens pendentes): https://www.metatrader5.com/pt/terminal/help/trading/general_concept

Abraços,
Malacarne 

Quanto aos tipos de ordens, estão entendidos. Me parece que a questão é a política de execução, que para garantir o preço, eu teria que escolher Tudo/Parcial (Immediate or Cancel).

Aí, não importa se a ordem é a mercado ou pendente, a política será priorizar o preço em detrimento do volume.

Assim, a requisição fica:


request.deviation = 0; //sem desvio do preço
request.type_filling = ORDER_FILLING_IOC;


É isso?

Obrigado

Razão: