Discussão do artigo "Agora a plataforma MetaTrader 5 possui um sistema de cobertura de registro de posições" - página 7

 
rosomah:

Eu queria abrir uma nova conta demo no terminal MQL5. (Já tenho uma conta de demonstração de compensação) Ao abrir uma conta, o botão "Use hedging in trading" não é ativado.

Pergunta: Posso ter contas de forex de cobertura e de compensação no mesmo terminal? Ou devo reinstalar o terminal?

Há uma dependência do servidor de negociação no qual você faz login. Conecte-se à MetaQuotes-Demo
 
Vladimir Karputov:
Há uma dependência do servidor de negociação no qual você faz login. Conecte-se à MetaQuotes-Demo.
Funcionou no MetaQuotes-Demo. Obrigado.
 
Ajude quem sabe, não consigo encontrar as informações por conta própria. A corretora tem contas de hedge. Meu robô foi criado para contas sem hedge. Como posso fechar uma posição em uma conta de cobertura usando MQL5? Não existe a função OrderClose() em MQL5. A posição oposta, como em uma conta de compensação, não fecha a posição aberta.
 
Sergiy Riehl:
Ajude quem sabe, não consigo encontrar as informações por conta própria. A corretora tem contas de hedge. Meu robô foi criado para contas sem hedge. Como posso fechar uma posição em uma conta de cobertura usando MQL5? Não existe a função OrderClose() em MQL5. A posição oposta, como em uma conta de compensação, não fecha a posição aberta.

Talvez TRADE_ACTION_CLOSE_BY deva ser definido na solicitação de negociação em uma conta de cobertura ?

Ou existe uma solução mais correta?

 
Sergiy Riehl:
Ajude quem sabe, não consigo encontrar as informações por conta própria. A corretora tem contas de hedge. Meu robô foi criado para contas sem hedge. Como posso fechar uma posição em uma conta de cobertura usando MQL5? Não existe a função OrderClose() em MQL5. A posição oposta, como em uma conta de compensação, não fecha a posição aberta.

Use o código universal para a passagem de posição - ele funciona tanto em contas de compensação quanto em contas de cobertura. Exemplo no código GalacticExplosion - função CloseAllPositions

//+------------------------------------------------------------------+
//| Fechar todas as posições|
//+------------------------------------------------------------------+
void CloseAllPositions()
  {
   for(int i=PositionsTotal()-1;i>=0;i--) // retorna o número de posições atuais
      if(m_position.SelectByIndex(i))     // seleciona a posição por índice para acesso posterior às suas propriedades
         if(m_position.Symbol()==m_symbol.Name() && m_position.Magic()==m_magic)
            m_trade.PositionClose(m_position.Ticket()); // fechar uma posição com o símbolo especificado
  }
 
Carl Schreiber:

E quanto à comissão?

Se eu tiver duas posições abertas, uma de compra e outra de venda, e fechar a "venda" pela "compra", terei pago o dobro da comissão. Mas eu teria pago apenas uma vez a comissão se eu fechasse apenas a compra, não é mesmo?

Mas e se o corretor não estiver pedindo uma comissão, mas tiver aumentado o spread? Não pagarei o spread duas vezes também?

E quanto à preocupação do Carl sobre pagar a comissão duas vezes? Alguma resposta da MetaQuotes, alguma experiência, por favor?