Discussão do artigo "Quase-construtor para criar um Expert Advisor" - página 3

 
O artigo é bom, de alta qualidade. Obrigado, ele facilita muito a compreensão de como criar um EA.
 
vjqgfhjkm #:
O artigo é bom, de alta qualidade. Obrigado, ele facilita muito a compreensão de como criar um EA.

Entendo, eu só estava confuso com o nome dos sinais. Em geral, se estiver interessado no artigo, faça perguntas e compartilhe seu código.

 

Olá!


Você pode me dizer como posso usar seu construtor para definir stop e take não em pontos fixos, mas no preço de que preciso? E também não está muito claro no artigo como colocar uma ordem pendente (por exemplo, ordem de limite) no preço de que preciso. Onde exatamente o preço é definido?

 
Viktor Kudriavtsev ordem pendente (por exemplo, uma ordem de limite) pelo preço de que preciso. Onde exatamente o preço é definido?

No final do bloco de sinais, há linhas comentadas para trabalhar com ordens pendentes:

//---
   /*if(InpPendingOnlyOne)
 if(IsPendingOrdersExists())
 return(true);
 if(InpPendingClosePrevious)
 m_need_delete_all=true;
 int size_need_pending=ArraySize(SPending);
 ArrayResize(SPending,size_need_pending+1);
 if(!InpPendingReverse)
 SPending[size_needed_pending].pending_type=ORDER_TYPE_BUY_STOP;
 else
 SPending[size_needed_pending].pending_type=ORDER_TYPE_SELL_STOP;
 SPending[size_needed_pending].indent=m_pending_indent;
 if(InpPendingExpiration>0)
 SPending[size_needed_pending].expiration=(long)(InpPendingExpiration*60);
 if(InpPrintLog)
 Print(__FILE__," ",__FUNCTION__,", OK: ", "Signal BUY STOP");*/
//---
   return(true);
  }
 
suhas jetithor #:
Realmente, senhor, o software que o senhor desenvolveu é excelente e muito útil para novos operadores. Fiquei muito feliz quando vi meu valor aumentando a cada dia.
Mas vocês não instalaram a opção de saque para os clientes, pois a empresa está enganando os clientes pobres
Também estou sofrendo com o seu software. Ganhei US$ 577, mas a empresa não responde ao meu telefone ou e-mail. Portanto, meu dinheiro ficou preso em seu software.
Portanto, ao dar autoridade às empresas que lidam com software, sugira que elas não enganem os clientes pobres.
Atenciosamente
Espero que tudo corra bem
 
suhas jetithor #:
Realmente, senhor, o software que o senhor desenvolveu é excelente e muito útil para novos operadores. Fiquei muito feliz quando vi meu valor aumentando a cada dia.
Mas vocês não instalaram a opção de saque para os clientes, pois a empresa está enganando os clientes pobres
Também estou sofrendo com o seu software. Ganhei US$ 577, mas a empresa não responde ao meu telefone e e-mail. Portanto, meu dinheiro ficou preso em seu software.
Portanto, ao dar autoridade às empresas que lidam com software, sugira que elas não enganem os clientes pobres.
Atenciosamente
Espero o melhor

Seu dinheiro não está preso no software, mas na conta de negociação de sua corretora.

Você deve entrar em contato com a corretora e com a autoridade reguladora para ajudá-lo.

Não confunda a MQL5.com com sua corretora, pois são duas coisas diferentes.

 
Caro Vladimir Karputov, Obrigado pelas novas ideias sobre codificação e compartilhamento do EA; Feliz Ano Novo!
 
Obrigado por compartilhar, bom trabalho
 

Prezado Vladimir Karputov,

Muito obrigado por seu trabalho e seu envolvimento com a comunidade.

Há um erro no código.
Na função PendingOrder , se um volume personalizado for definido para uma ordem pendente, o ea não a abrirá porque o cálculo de free_margin_check é ruim porque check_order_type = -1

   ENUM_ORDER_TYPE check_order_type=-1;
   double check_price=0.0;
   if(SPending[index].volume>0.0)
      check_lot=SPending[index].volume;
   else
     {
      //--- verificar o volume antes do OrderSend para evitar o erro "not enough money" (CTrade)
      switch(SPending[index].pending_type)
        {
         case  ORDER_TYPE_BUY:
            check_order_type=ORDER_TYPE_BUY;
            break;
         case ORDER_TYPE_SELL:
            check_order_type=ORDER_TYPE_SELL;
            break;
         case ORDER_TYPE_BUY_LIMIT:
            check_order_type=ORDER_TYPE_BUY;
            break;
         case ORDER_TYPE_SELL_LIMIT:
            check_order_type=ORDER_TYPE_SELL;
            break;
         case ORDER_TYPE_BUY_STOP:
            check_order_type=ORDER_TYPE_BUY;
            break;
         case ORDER_TYPE_SELL_STOP:
            check_order_type=ORDER_TYPE_SELL;
            break;
         default:
            return(false);
            break;
        }
      //--- 
      //...
     }
//...
//--- verificar o volume antes do OrderSend para evitar o erro "not enough money" (CTrade)
   double free_margin_check=m_account.FreeMarginCheck(m_symbol.Name(),
                            check_order_type,check_lot,check_price);


A chave deve estar do lado de fora.

De qualquer forma, obrigado por compartilhar essa ferramenta


 
Mike Pascal Plavonil ordem pendente, o ea não a abrirá porque o cálculo de free_margin_check é ruim porque check_order_type = -1


A chave deve estar do lado de fora.

De qualquer forma, obrigado por compartilhar essa ferramenta


Obrigado, foram feitas alterações no código do mecanismo de negociação 4 (versão "4.012").