ordem nao executa no lugar correto

 

Olá, pessoal. Bom dia a todos.

Estou com um código em Python que envia ordens para o book do índice futuro. O código funciona corretamente ao colocar o stop loss e o stop gain, com um alvo de 300 pontos e um stop de 200 pontos. No entanto, ele não está saindo com 100 pontos. Em vez disso, ele sai com 95 pontos, 90 pontos, raro o dia em que atinge exatamente os 100 pontos.

Alguém tem alguma ideia do que pode estar causando isso?

request = {
                        "action": mt5.TRADE_ACTION_PENDING,
                        "symbol": symbol,
                        "volume": qtd,
                        "type": mt5.ORDER_TYPE_BUY_STOP,  # Ordem pendente
                        "price": price,
                        "sl": sl,
                        "tp": tp,
                        "deviation": 0,  
                        "magic": magic,
                        "comment": comment,
                        "type_time": mt5.ORDER_TIME_DAY,  
                        "type_filling": mt5.ORDER_FILLING_RETURN,  
                        "expiration": 0  
                    result = mt5.order_send(request)
Documentação sobre MQL5: Constantes, Enumeradores e Estruturas / Constantes de Negociação / Propriedades de uma Ordem
Documentação sobre MQL5: Constantes, Enumeradores e Estruturas / Constantes de Negociação / Propriedades de uma Ordem
  • www.mql5.com
As solicitações para executar operações de negociação são formalizadas como ordens. Cada ordem tem...
 
willian pereira:

Olá, pessoal. Bom dia a todos.

Estou com um código em Python que envia ordens para o book do índice futuro. O código funciona corretamente ao colocar o stop loss e o stop gain, com um alvo de 300 pontos e um stop de 200 pontos. No entanto, ele não está saindo com 100 pontos. Em vez disso, ele sai com 95 pontos, 90 pontos, raro o dia em que atinge exatamente os 100 pontos.

Alguém tem alguma ideia do que pode estar causando isso?

Liquidez do mercado. Mas ordem STOP curtinho assim, lembre-se que algumas corretoras no bater no preco mandam uma ordem limitada com limite de ate 100 pontos defasada pra garantir a execucao.
 
willian pereira:

Olá, pessoal. Bom dia a todos.

Estou com um código em Python que envia ordens para o book do índice futuro. O código funciona corretamente ao colocar o stop loss e o stop gain, com um alvo de 300 pontos e um stop de 200 pontos. No entanto, ele não está saindo com 100 pontos. Em vez disso, ele sai com 95 pontos, 90 pontos, raro o dia em que atinge exatamente os 100 pontos.

Alguém tem alguma ideia do que pode estar causando isso?

Você precisa entender o Spread.

Aperte F8 / Aba Mostrar / Ligue as linhas de Bid e ASK, pode ser que ajudem.