Quaisquer perguntas de recém-chegados sobre MQL4 e MQL5, ajuda e discussão sobre algoritmos e códigos - página 774

 
Alexander Layzerevich:

Você pode me dizer como substituí-lo na MQL5 ?

datetime  TimeCurrent(
   MqlDateTime&  dt_struct      // переменная типа структуры
   );


E depois leia o conteúdo da estrutura. Funciona da mesma forma em mql5 e em mql4

struct MqlDateTime
  {
   int year;           // год
   int mon;            // месяц
   int day;            // день
   int hour;           // час
   int min;            // минуты
   int sec;            // секунды
   int day_of_week;    // день недели (0-воскресенье, 1-понедельник, ... ,6-суббота)
   int day_of_year;    // порядковый номер в году (1 января имеет номер 0)
  };
 
Igor Makanu:

este artigo lhe ajudaráhttps://www.mql5.com/ru/articles/81

Obrigado.

 

Devido à limitação do número de posições em aberto no corretor, tive que dividir a carteira em 2 contas a fim de abrir toda a carteira. Você poderia me aconselhar como organizar uma arrasto da posição agregada das duas contas?

Agradecemos antecipadamente.

 
Você pode aconselhar um novato... eu baixei um indicador.... grátis do Market... eu o anexei a um gráfico... quando eu mudo de um período para outro, o indicador é exibido com um grande atraso (ou seja, ele abranda)... qual poderia ser o problema? Obrigado...
 
net150:
Por favor, avise um iniciante... eu baixei o indicador grátis.... do Market... quando eu mudo de um tempo para outro, o indicador é exibido com um grande atraso (ou seja, ele abranda)... qual poderia ser o problema? Obrigado...

Demasiados dados para calcular, ou o indicador não é escrito de forma ideal. Isso acontece.

 
Como escrever uma função para o robô rolar em caso de perda. Por exemplo, entrou em menos 20 p. e virou, e se novamente em menos, então novamente virou. Por favor, me ajude.
 
Ivan Kopchuk:
Como escrever uma função para o robô rolar no caso de uma perda. Por exemplo, entrou em menos 20 pontos e virou e novamente em menos novamente virou. Por favor, me ajude.

Você fecha uma posição assim que ela alcança - algo e imediatamente a abre na direção oposta à fechada.

0 Você recebe todos os pedidos (OrdersTotal), olhe através deles (OrderSelect), para ver, se já existe uma posição em aberto neste TS
1.1 Se já houver uma posição aberta, anote o bilhete de pedido (OrderTicket)
1.2 Se não - você abre uma posição (OrderSend), salve o bilhete desta posição em uma variável, defina pontos de take e stop, se necessário (OrderModify)
2 Verifique o lucro atual (diferença entre OrderOpenPrice e Bid or Ask), até que uma das seguintes condições seja atendida
2.1 Se o lucro tiver atingido o prejuízo fixado - fechar a posição (OrderClose) e abrir uma nova na outra direção, lembrar o bilhete, então continuar com o ponto 2
2.2 Se o lucro atingir o valor requerido, feche a posição, zere o ticket, abra uma nova posição pelas regras de entrada do TS, salve o ticket desta posição na variável e vá para o ponto 2

https://docs.mql4.com/ru/trading

 
Ilya Prozumentov:

Você fecha a posição assim que ela vai para -alguma coisa e a abre imediatamente na direção oposta da posição fechada.

0 Você recebe todos os pedidos (OrdersTotal), olhe através deles (OrderSelect), para ver se já existe uma posição aberta para este TS
1.1 Se já houver uma posição aberta, anote o bilhete de pedido (OrderTicket)
1.2 Se não - você abre uma posição (OrderSend), salve o bilhete desta posição em uma variável, defina pontos de take e stop, se necessário (OrderModify)
2 Verifique o lucro atual (diferença entre OrderOpenPrice e Bid or Ask), até que uma das seguintes condições seja atendida
2.1 Se o lucro tiver atingido o prejuízo fixado - fechar a posição (OrderClose) e abrir uma nova na outra direção, memorizar o bilhete, continuar com o ponto 2
2.2 Se o lucro atingir o valor requerido, feche a posição, zere o ticket, abra uma nova posição pelas regras de entrada do TS, salve o ticket desta posição na variável e vá para o ponto 2

https://docs.mql4.com/ru/trading

Obrigado.

 

Saudações. Você poderia me dar uma dica?

Como a condição se mantém quando uma variável com um valor negativo(soma)>= uma variável(lucro) igual a zero?

summ=(double)(H_SellMinProfit()+BuyProfit()-SpreadCost());
      if(summ>=profit)
         CloseOll();st=1;max_level=level;min_level=level;  Print("st=1", "  H_SellMinProfit() ", H_SellMinProfit(), "  BuyProfit() ", BuyProfit(), "  SpreadCost() ", SpreadCost(), "  ++- ", H_SellMinProfit()+BuyProfit()-SpreadCost(), "  summ ", summ, "  profit ", profit);


Código inteiro,

Arquivos anexados:
Ivanov4.mq4  20 kb
 
Andrey Sokolov:

Saudações. Você poderia me dar uma dica?

Como a condição se mantém quando uma variável com um valor negativo(soma)>= uma variável(lucro) igual a zero?

Código inteiro,

summ=(double)(H_SellMinProfit()+BuyProfit()-SpreadCost());
  if(summ>=profit) {
    CloseOll();
    st=1;max_level=level;min_level=level;
    Print("st=1", "  H_SellMinProfit() ", H_SellMinProfit(), "  BuyProfit() ", BuyProfit(), "  SpreadCost() ", SpreadCost(), "  ++- ", H_SellMinProfit()+BuyProfit()-SpreadCost(), "  summ ", summ, "  profit ", profit);
  }
Razão: