Cualquier pregunta de los recién llegados sobre MQL4 y MQL5, ayuda y discusión sobre algoritmos y códigos - página 779

 
volyal:

En esa variante, después de la primera señalalerton ==false significa que no habrá señal en la segunda fecha.

OK, no señala y no pone una flecha. Las garrapatas estaban en el intervalo especificado

Esta construcción no es lógica: ¿por qué necesitas un bucle si no sabes si la condición se cumplirá o no?

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());
           }
        }

Es al revés.

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 qué no pita? No puedo ni adivinar. Las condiciones son claras y deben funcionar.

 
Igor Makanu:

Esta construcción no es lógica, ¿por qué hacer un bucle si no se sabe si la condición se va a cumplir o no?

Es al revés.

¿Por qué no señala? Ni siquiera puedo adivinar que lo hace, las condiciones deben ser claras

Gracias, lo hace, pero pone flechas en todas las barras del historial, quiero que ponga sólo las fechas que están en las variables, por ejemplo, 23 de febrero y 5 de marzo a las 23:55

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

Perdón por no decirlo de inmediato.

 
volyal:

Gracias, lo hace, pero pone flechas en todas las barras del historial, quiero que ponga sólo las fechas que están en las variables, por ejemplo, 23 de febrero y 5 de marzo a las 23:55

Siento no habértelo dicho enseguida.

Puedes buscar fechas utilizando iBarShift() - te devolverá el número de compás donde quieres poner la flecha

 
Igor Makanu:

las fechas deben buscarse con iBarShift() - devolverá el número de la barra en la que se quiere colocar la flecha

Gracias
 
Alexey Viktorov:
Gracias por el cumplido, pero eres demasiado halagador. Me gradué en quinto grado en 1946. ¿Has nacido ya?

En el sesenta y seis, metíamos a los santurrones en los retretes.

Este no es lugar para la autopromoción, y eso no es lo que considera su dignidad. Sería mejor que demostraras tus conocimientos. Todos ustedes son bla, bla, bla...

 

Hola, tengo una línea, necesito que se mueva después del nuevo (precio calculado)

Necesito hacer que la línea horizontal se mueva después del nuevo precio cuando la variable sred obtenga un nuevo precio.

//--- расчет максимального значения закрытия\открытия  цены на кол-во выбранных последовательных барах(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:

Hola, tengo una línea, necesito que se mueva después del nuevo (precio calculado)

Necesito que cuando la variable sred obtenga un nuevo precio, la línea horizontal se mueva después de él.

Compruebe la función

ObjectMove

Cambia las coordenadas del punto de anclaje especificado del objeto.

boolMovimientoDeObjeto(
longchart_id,// ID del gráfico
stringname,// nombre del objeto
intpoint_index,// número de ancla
datetimehora,// hora
double price//precio
);

 
Aleksey Vyazmikin:

Familiarícese con la función

ObjectMove

Cambia las coordenadas del punto de anclaje especificado de un objeto.

boolMovimientoDeObjeto(
longchart_id,// ID del gráfico
stringname,// nombre del objeto
intpoint_index,// número de ancla
datetimehora,// hora
precio doble//precio
);

Aquí estoy ....... ¡Resulta tan fácil! Gracias!!!)
 
Taras Slobodyanik:

el indicador muestra una tabla de pares/períodos - usted hace clic en una celda - muestra el TF/símbolo correcto, con los patrones correctos (y escanea todo a la vez, todos los patrones en un indicador, en una ventana)
de todas formas no se miran los 10-14 gráficos a la vez

No está claro. El multiindicador (mi) sólo cambia de ventana, por lo que no hay problema con él en el terminal tal y como está. Si cuenta, entonces por la carga del procesador 1mi=14 no mi. Además, para volcar todos los gráficos de 14 TF en una sola ventana... ¿cómo es? Además, cada chat tiene su propio indicador que también cuenta y dibuja? Cargando 1 Mi+14 no Mi=28 no Mi. ¿No sería más fácil organizar el sonido adecuadamente?

Desde luego, no miro 14 gráficos a la vez, pero lo escucho enseguida):

 
Aleksey Vyazmikin:

Es una cuestión de peculiaridades cognitivas de la persona :)

Tal vez deberías trabajar como DJ en una discoteca en lugar de sentarte delante de un ordenador :)

Pero no entiendo, cuando dices que tienes que esperar mucho tiempo, las melodías son de corta duración, pero recibes muchas señales a la vez, ¿puede que muchas de ellas sean duplicadas?

¿O sólo describe una señal mediante un grupo de archivos de sonido Símbolo+periodo+evento, pero no son tan frecuentes?

Sí, un grupo de señales de sonido, de lo contrario se obtienen muchos archivos de sonido (ver #7763). Y la frecuencia, luego densa, luego vacía. El análisis principal llega en los primeros compases. No hay duplicados, por supuesto.

Y en general no son las melodías sino los mensajes. Los tonos no son informativos, los pájaros lo eran al principio, cuando se podían contar las señales con los dedos):