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

 
volyal:

Nessa variante, após o primeiro sinalde alerta ==falso significa que não haverá sinal na segunda data.

OK, ele não sinaliza e não coloca uma seta. Os carrapatos estavam no intervalo especificado

Esta construção não é lógica - por que você precisaria de um loop se você não sabe se a condição será cumprida ou não?

for(int i=limit; i>=0; i--) 
        {
        datetime t = TimeCurrent();
         if( (t >= Input1 && t < Input1 +60)  || ( t >= Input2 && t < Input2+60 ) || ( t >= Input3 && t < Input3+60) )
           {
            BufferUP[i]=low[i]-10*Point;//

            Alert("__",TimeCurrent());
           }
        }

É o contrário.

datetime t = TimeCurrent();
if( (t >= Input1 && t < Input1 +60)  || ( t >= Input2 && t < Input2+60 ) || ( t >= Input3 && t < Input3+60) )
  {
  Alert("__",TimeCurrent());
  for(int i=limit; i>=0; i--) 
   {
    BufferUP[i]=low[i]-10*Point;//
   }
 }

Por que não está apitando? Nem consigo adivinhar. As condições são claras e devem funcionar.

 
Igor Makanu:

Esta construção não é lógica, por que fazer um loop se você não sabe se a condição será cumprida ou não?

É o contrário.

Por que não sinaliza? Não posso nem supor que sim, as condições devem ser claras.

Obrigado, mas coloca setas em cada barra da história. Quero que coloque apenas as datas que estão nas variáveis, por exemplo, 23 de fevereiro e 5 de março às 23h55.

input datetime Input1=D'23.02.2019 23:55';
input datetime Input2=D'05.03.2019 23:55';

Desculpe por não dizer logo de imediato.

 
volyal:

Obrigado, mas coloca setas em cada barra da história. Quero que coloque apenas as datas que estão nas variáveis, por exemplo, 23 de fevereiro e 5 de março às 23h55.

Desculpe por não lhe ter dito logo.

Você pode procurar por datas usando iBarShift() - ele retornará o número da barra onde você quer colocar a seta

 
Igor Makanu:

As datas devem ser pesquisadas com iBarShift() - ele retornará o número da barra onde você quer colocar a seta

Obrigado
 
Alexey Viktorov:
Obrigado pelo elogio, mas você é muito lisonjeador. Eu me formei na quinta série em 1946. Você já nasceu?

Em sessenta e seis, costumávamos colocar os auto-retratos nos banheiros.

Este não é um lugar para a autopromoção, e não é isso que você considera sua dignidade. Seria melhor que você demonstrasse seus conhecimentos. Vocês são todos blá, blá, blá...

 

Oi, eu tenho uma linha, preciso fazer com que ela se mova depois do novo (preço calculado)

Preciso fazer a linha Horizontal se mover após o novo preço, quando a variável "sred" recebe um novo preço.

//--- расчет максимального значения закрытия\открытия  цены на кол-во выбранных последовательных барах(max)

   int high_in=iHighest(NULL,0,MODE_OPEN,max);
   int high_in2= iHighest(NULL,0,MODE_CLOSE,max);
   bigs=Open[high_in];
   big2=Close[high_in2];
   if (big2>=bigs) big_g=big2;
   else big_g=bigs;
   
//--- расчет минимального значения закрытия\открытия  цены на кол-во выбранных последовательных барах(min)
   
   int small_in= iLowest(NULL,0,MODE_OPEN,min);
   int small_in2= iLowest(NULL,0,MODE_CLOSE,min);
   small=Open[small_in];
   small2=Close[small_in2];
   if (small<=small2) small_g=small;//Проверка если цена открытия меньше цены закрытия, то действие будет выполняться по открытию.
   else small_g=small2;// или если нет то по закрытию
  
  sred=(big_g-small_g)/2+small_g;
  
  ObjectCreate("HLine",OBJ_HLINE,0,0,sred);
 
anatoliy.r:

Oi, eu tenho uma linha, preciso fazer com que ela se mova depois do novo (preço calculado)

Preciso que quando o vermelho variável receber um novo preço, a linha Horizontal se mova atrás dele.

Confira a função

ObjectMove

Muda as coordenadas do ponto de ancoragem especificado do objeto.

boolObjectMove(
longchart_id,// ID do gráfico
nome da cadeia,// nome do objeto
intpoint_index,// número da âncora
data/hora,// hora
preço duplo//preço
);

 
Aleksey Vyazmikin:

Familiarize-se com a função

ObjectMove

Muda as coordenadas do ponto de ancoragem especificado de um objeto.

boolObjectMove(
longchart_id,// ID do gráfico
nome da cadeia,// nome do objeto
intpoint_index,// número da âncora
data/hora,// hora
preço duplo//preço
);

Aqui estou ....... Afinal de contas, é tão fácil! Obrigado!!!)
 
Taras Slobodyanik:

o indicador mostra uma tabela de pares/períodos - você clica em uma célula - ele mostra o TF/símbolo certo, com os padrões certos (e varre tudo de uma só vez, todos os padrões em um indicador, em uma janela)
você não olha para todos os gráficos 10-14 de uma só vez de qualquer maneira

Não está claro. O multiindicador (mi) apenas muda de janela, portanto não há problema com ele no terminal como ele é. Se conta, então por carga de processador 1mi=14 não mi. Além disso, para despejar todos os gráficos do 14 TF em uma janela ... como é isso? Além disso, cada chat tem seu próprio indicador que também conta e saca? Carregando 1 Mi+14 não Mi=28 não Mi. Não seria mais fácil organizar o som adequadamente?

Certamente não olho para 14 gráficos de uma só vez, mas ouço isso imediatamente):

 
Aleksey Vyazmikin:

É uma questão de peculiaridades cognitivas de uma pessoa :)

Talvez você devesse trabalhar como DJ em uma discoteca ao invés de sentar-se em frente ao computador :)

Mas eu não entendo, quando você diz que tem que esperar muito tempo, as melodias são de curta duração, mas você recebe muitos sinais ao mesmo tempo - pode ser que muitos deles sejam duplicados?

Ou você apenas descreve um sinal por um grupo de arquivos de som Symbol+period+event, mas eles não são tão freqüentes?

Sim, um grupo de sinais sonoros, caso contrário você recebe muitos arquivos de som (ver nº 7763). E a freqüência, depois densa, depois vazia. A análise principal vem nas barras de abertura. Não há duplicatas, é claro.

E em geral não são as melodias, mas as mensagens. Os tons não são informativos, os pássaros estavam no início, quando se podia contar sinais nos dedos):