Especialistas: Yesterday Today - página 2

 
pokrovsky-my #:
Não me referia a uma ordem pendente, mas à capacidade de fechar uma ordem de mercado no prazo, mesmo que esteja perdendo.

Código:

//+------------------------------------------------------------------+
//| Posições de fechamento|
//+------------------------------------------------------------------+
void ClosePosition(const ENUM_POSITION_TYPE pos_type)
  {
     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)
          if(m_position.PositionType()==pos_type) // obtém o tipo de posição
            if(Hour()>TimeClose)
               m_trade.PositionClose(m_position.Ticket()); // fechar uma posição com o símbolo especificado
  }


Добавил условие if(Hour()>TimeClose), в переменных прописал input double   TimeClose         = 21; вставил int Hour()
{
   MqlDateTime tm;
   TimeCurrent(tm);
   return(tm.hour);
}
int Minute()
{
   MqlDateTime tm;
   TimeCurrent(tm);
   return(tm.min);
}



O Expert Advisor compila sem erros, mas a ordem não é fechada no horário especificado

 

Por precaução: ( Princípios gerais - Operações de negociação )

Antes de começar a estudar as funções de negociação da plataforma, é necessário criar um entendimento claro dos termos básicos: ordem, transação e posição.

  • Uma ordem é uma instrução dada a uma corretora para comprar ou vender um instrumento financeiro. Há doistipos principaisde ordens: a mercado e pendente. Além delas, há ordens especiaisTake Profit e Stop Loss.
  • Transação é o fato de comprar ou vender um instrumento financeiro. A compra (Buy) ocorre pelo preço de oferta (Ask) e a venda (Sell), pelo preço de oferta (Bid). Uma transação pode ser feita como resultado da execução de uma ordem de mercado ou do acionamento de uma ordem pendente. Deve-se levar em conta que, em alguns casos, o resultado da execução da ordem pode ser várias transações ao mesmo tempo.
  • Posição é um compromisso de mercado, o número de contratos comprados ou vendidos em um instrumento financeiro. Uma posição longa (Long) é um instrumento financeiro comprado na expectativa de aumento de preço, enquanto uma posição curta (Short) é um compromisso de entrega na expectativa de queda de preço no futuro.

Em outras palavras, uma ordem é uma ordem, um comando para abrir uma transação (uma transação gera uma POSIÇÃO) ou para colocar uma ordem pendente.


Para trabalhar com o tempo, recomendo ler o artigo Almost a constructor for creating an Expert Advisor (Quase um construtor para criar um Expert Advisor ) e procurar no arquivo"Trading engine 4.mq5" o grupo de parâmetros de entrada"Time control"(Controle de tempo):

input group             "Time control"
input bool                 InpTimeControl          = true;           // Use o controle de tempo
input uchar                InpStartHour            = 10;             // Hora de início
input uchar                InpStartMinute          = 01;             // Minuto inicial
input uchar                InpEndHour              = 15;             // Hora de término
input uchar                InpEndMinute            = 02;             // Fim do minuto
Общие принципы - Торговые операции - Справка по MetaTrader 5
Общие принципы - Торговые операции - Справка по MetaTrader 5
  • www.metatrader5.com
Перед тем как приступить к изучению торговых функций платформы, необходимо создать четкое представление об основных терминах: ордер, сделка и...
 
Vladimir Karputov #:

Por precaução: ( Princípios gerais - Operações de negociação )

Antes de começar a estudar as funções de negociação da plataforma, é necessário criar um entendimento claro dos termos básicos: ordem, transação e posição.

  • Uma ordem é uma instrução dada a uma corretora para comprar ou vender um instrumento financeiro. Há doistipos principaisde ordens: a mercado e pendente. Além delas, há ordens especiaisTake Profit e Stop Loss.
  • Transação é o fato de comprar ou vender um instrumento financeiro. A compra (Buy) ocorre pelo preço de oferta (Ask) e a venda (Sell), pelo preço de oferta (Bid). Uma transação pode ser feita como resultado da execução de uma ordem de mercado ou do acionamento de uma ordem pendente. Deve-se levar em conta que, em alguns casos, o resultado da execução da ordem pode ser várias transações ao mesmo tempo.
  • Posição é um compromisso de mercado, o número de contratos comprados ou vendidos em um instrumento financeiro. Posição longa (Long) é um instrumento financeiro comprado na expectativa de aumento de preço; posição curta (Short) é um compromisso de entrega na expectativa de redução de preço no futuro.

Ou seja, uma ordem é um pedido, um comando para abrir uma transação (uma transação gera uma POSIÇÃO) ou para colocar uma ordem pendente.


Para trabalhar com o tempo, recomendo ler o artigo Almost a constructor for creating an Expert Advisor (Quase um construtor para criar um Expert Advisor ) e procurar no arquivo"Trading engine 4.mq5" o grupo de parâmetros de entrada"Time control"(Controle de tempo):

É necessário que uma posição aberta seja forçada a fechar em um determinado momento

 
pokrovsky-my #:

É necessário que uma posição aberta seja fechada à força em um determinado momento

Você leu o artigo? Você pode modificar o código?

 
Vladimir Karputov #:

Você leu o artigo? Você pode modificar o código?

Eu li o artigo, mas é uma floresta escura para mim.

 
pokrovsky-my #:

Assisti ao artigo, mas é uma floresta escura para mim.

Ok, vou colocar isso em minha agenda para amanhã.

 
pokrovsky-my #:


Nova versão do Yesterday Today New

Yesterday Today New
Yesterday Today New
  • www.mql5.com
Торговля основана на анализе OHLC вчерашнего дня и текущего.
 
Vladimir Karputov #:

Nova versão do Yesterday Today New

Vladimir, obrigado por seu trabalho. É bom quando há especialistas que ajudam os usuários.