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

 
Artyom Trishkin:
  1. Há um sinal para abrir uma posição de compra, por exemplo.
  2. Encontre na história do pedido o comércio mais recentemente fechado.
  3. ver seu tipo,
    1. Se for Vender, você pode abrir o site ---- > retornar(ORDER_TYPE_BUY);
    2. se for uma compra, então
  4. veja com que tipo de lucro esta posição de compra foi fechada.
    1. Se for negativo, podemos abrir uma Buy ----> return(ORDER_TYPE_BUY);
    2. Se for positivo, não podemos abrir uma nova Buy ----> return(WRONG_VALUE);
   double ma;
   int    res;
   bool nomber = OrdersHistoryTotal();
   bool tip=OrderType();
   if(OrderSelect(nomber,SELECT_BY_POS,MODE_HISTORY)==true)
   {
   tip=OrderType();
   }
   ma=iMA(NULL,0,MovingPeriod,120,MODE_SMA,PRICE_CLOSE,1);
   if(Bid<ma)
   if(tip!=OP_SELL)
   {
      res=OrderSend(Symbol(),OP_SELL,LotsOptimized(),Bid,3,0,Bid-TP*Point,"",MAGICMA,0,Red);
      return;
     }

Eu o escrevi aqui, mas ainda não funciona. O que está errado? Por favor, informe.

 

Boa tarde.

Como escrever a condição nos quatro: se a primeira sexta-feira do mês foi um touro, e

Asegunda segunda-feira é de baixa, depois abrimos um comércio de venda.

 
Darirunu: escrever a condição: se a primeira sexta-feira do mês foi em alta, e

a segunda segunda-feira é em baixa e depois abre um comércio de venda.

Agora este é um problema interessante: ele pode ser usado para mostrar a seqüência de passos para resolver qualquer problema
Determinar o mês MM atual e o ano YYYY. Pegue a data 1.MM.YYYY e determine o dia da semana para isso.
2. Pense em uma fórmula ou duas (para isso formamos duas tabelas de 7 fileiras) e use essas fórmulas para determinar as datas dos dias em que você está interessado
3. se a segunda data no futuro - saída.
4. Usando as datas, determinamos os números de barras correspondentes no gráfico diário
5. Determinar o número de barras por seus pertences aos touros - ursos.
6. Chegar a uma conclusão sobre a entrada no mercado

Совершение сделок - Торговые операции - Справка по MetaTrader 5
Совершение сделок - Торговые операции - Справка по MetaTrader 5
  • www.metatrader5.com
Торговая деятельность в платформе связана с формированием и отсылкой рыночных и отложенных ордеров для исполнения брокером, а также с управлением...
 
LRA:

Este é um problema interessante: ele pode ser usado para mostrar uma seqüência de passos para resolver qualquer problema
Determinar o mês MM atual e o ano YYYY. Pegue a data MM.YYYY e determine o dia da semana para isso.
2. Pense em uma fórmula ou duas (para isso formamos duas tabelas de 7 fileiras) e use essas fórmulas para determinar as datas dos dias em que você está interessado
3. se a segunda data no futuro - saída.
4. Usando as datas, determinamos os números de barras correspondentes no gráfico diário
5. Determinar o número de barras por seus pertences aos touros - ursos.
6. Chegar a uma conclusão sobre a entrada no mercado


Na verdade, eu ainda não vi a resposta na forma de um código ... O algoritmo é claro ...

 
Darirunu: Na verdade, ainda não vi a resposta na forma de um código... O algoritmo é claro...

Se o algoritmo for claro, escreva um programa... Se você tiver dificuldades, pergunte...

 
LRA:

Se o algoritmo for claro - escreva um programa... Se você tiver problemas - pergunte ...


Você deve ser um gênio)) Você acha que se eu soubesse eu perguntaria aqui? Basta escrever o dia da semana não é um problema ... A questão é como determinar em que semana do mês? O livro Mt4 não diz nada sobre isso.

Qualquer pergunta de novatos em MQL4, ajuda e discussão sobre algoritmos e códigos

 
Lowech:
   bool nomber = OrdersHistoryTotal();
   bool tip=OrderType();
   if(OrderSelect(nomber,SELECT_BY_POS,MODE_HISTORY)==true)
   {
   tip=OrderType();
   }

Aqui eu a pré-selecionei, mas ainda não funciona. O que está errado? Por favor, informe.

Vejamos esta parte. Na primeira linha, a variável nomber armazena o número de pedidos na história. Vamos colocar o cursor sobre OrderHistoryTotal() e pressionar F1. Aqui você pode ver:

intOrdensHistóriaTotal();


A função retorna um número inteiro. Mas um bool tem apenas dois valores. Bem, como um bool pode conter um valor do tipo int?

A segunda linha contém o mesmo erro e mais um. Você coloca o cursor em OrderType() e pressiona F1. Vemos: A ordem deve ser pré-selecionada usando a função OrderSelect().

A terceira linha contém uma situação horrível. 1) if(OrderSelect( - se uma ordem é selecionada, algo é executado. Mas e se ocorrer um erro aqui? Seu programa ainda está em execução. 2) Deve ser selecionado um pedido com o número de indicação. Mas existe um pedido com tal número? Qual é o número mínimo e máximo de pedidos se o número total for nominativo? 3) Ao invés de if(OrderSelect(nomber,SELECT_BY_POS,MODE_HISTORY)==verdadeiro) quase todos escreveriam simplesmente if(OrderSelect(nomber,SELECT_BY_POS,MODE_HISTORY)) e mais uma pequena coisa.

Meu conselho é este - comece a aprender a língua com elementos simples, escreva scripts simples e exiba o resultado. Verifique o resultado de cada linha

 
Darirunu: A questão é como você determina qual semana do mês é? Não há nada no livro Mt4 sobre

Por que você precisa saber em que semana do mês se trata? Não está em meu algoritmo. (só colocar um espaço após os pontos de pontuação)

 
LRA:

Por que eu preciso saber em que semana do mês se trata? Em meu algoritmo, não. (colocar um espaço somente após os pontos de pontuação)


Desculpe, você provavelmente não estava prestando atenção à pergunta.

Como você escreve a condição nos quatro: se a primeira sexta-feira do mês foi em alta e

a segunda segunda-feira é de baixa, então abrimos um comércio de venda.

DayOfWeek()==1 Segunda-feira é clara, mas qual segunda-feira do mês?)

 
Darirunu:

Na verdade, nunca vi uma resposta na forma de um código. O algoritmo é claro.

Você só precisa saber em que dia da semana foi o primeiro dia do mês. O restante é calculado.
Razão: