[¡Archivo!] Cualquier pregunta de novato, para no saturar el foro. Profesionales, no pasen de largo. No puedo ir a ningún sitio sin ti - 4. - página 50

 
IgorM:

Ya me he devanado los sesos, no encuentro una solución óptima para los cálculos en el indicador:

¿Cómo encontrar el número de barra en la TF inferior donde comienza el día (o 4 horas) y donde termina el día (o 4 horas)?


¿Y iBarShift() no ayuda?
 

Ayúdame a obtener los símbolos de la moneda en un cálculo. Hice esto (abajo), iClose y iBar devuelven ceros, entiendo el problema en symbn="symb" + j. Pero symbn devuelve lo que necesito symb1 por ejemplo.

¿Qué estoy haciendo mal? ¿Cómo buscar correctamente las monedas en la lista?

        int nSymb = 2;
        symb0="EURUSD";
        symb1="GBPUSD";
        
        for (j=0; j<nSymb; j++){
        for (i=0; i<Bars; i++){
                // получаем полуночный бар
                symbn = "symb" + j;
                str = TimeYear(Time[i])+"."+TimeMonth(Time[i])+"."+TimeDay(Time[i]);
                time0 = StrToTime(str);
                bar0=iBarShift(symbn, 0, time0);
                // берем цену закрытия предыдущего дня
                pc=iClose("symb"+j, 0, bar0+1); Content[j][0]=0;
                if (pc!=0) Content[j][0]=(iClose(symbn,0, i )  *100)/pc-100;
 
Vinin:¿Ya no sirve iBarShift()?

Conozco iBarShift(), pero lo uso para determinar el inicio y el final del día:

int start(){
   int    i,limit,counted_bars;
   counted_bars=IndicatorCounted();
   if(counted_bars>0) counted_bars--;
   limit=Bars-counted_bars-1;
   for(i=limit; i>=0; i--){
      if(TimeDay(Time[i]) != TimeDay(Time[i+1])){
            // начался новый день, обнуляю все что нужно
      }else{
            // продолжается текущий день, считаю все что нужно
      }
   }
return(0);
}
El código funciona en principio, pero se pierde la universalidad - se pueden introducir condiciones para una semana/mes a calcular, para una nueva hora también, pero para un nuevo H4 ya es difícil, me gustaría algo de univrsalidad


 
Kondratiev_A_A:

Ayúdame a obtener los símbolos de la moneda en un cálculo. Hice esto (abajo), iClose y iBar devuelven ceros, entiendo el problema en symbn="symb" + j. Pero symbn devuelve lo que necesito symb1 por ejemplo.

¿Qué estoy haciendo mal? ¿Cómo puedo hacer que la lista de monedas pase correctamente?

Diferentes tipos.

        int nSymb = 2;
        symb0="EURUSD";
        symb1="GBPUSD";
        
        for (j=0; j<nSymb; j++){
        for (i=0; i<Bars; i++){
                // получаем полуночный бар
                symbn = "symb" + j;
                str = TimeYear(Time[i])+"."+TimeMonth(Time[i])+"."+TimeDay(Time[i]);
                time0 = StrToTime(str);
                bar0=iBarShift(symbn, 0, time0);
                // берем цену закрытия предыдущего дня
                pc=iClose("symb"+j, 0, bar0+1); Content[j][0]=0;
                if (pc!=0) Content[j][0]=(iClose(symbn,0, i )  *100)/pc-100;
 
Kondratiev_A_A: ¿Cómo se hace una enumeración correcta de las monedas en una lista?

Tienes que usar arrays, así:

#define nSymb  2

string symb[nSymb];

symb[0] = "EURUSD";
symb[1] = "GBPUSD";
//................
int start(){
      for (j=0; j<nSymb; j++){
            //................
            bar0=iBarShift(symb[j], 0, time0);
            // берем цену закрытия предыдущего дня
            pc=iClose(symb[j], 0, bar0+1); Content[j][0]=0;
            //................
      }//for
//................
return(0);
}// start()
 
¡¡¡Gracias a todos por vuestra ayuda, me estoy haciendo con él)!!!
 
El internet se cae a menudo, ¿no hay forma de automatizarlo programáticamente para que vuelva a funcionar? ¿O qué se sabe en este sentido? ¿Hay alguna forma de alimentar dos o más ISP al mismo tiempo, es decir, en paralelo? Gracias de antemano.
 
yosuf:
El internet se cae a menudo, ¿no hay forma de automatizarlo programáticamente para que vuelva a funcionar? ¿O qué se sabe en este sentido? ¿Hay alguna forma de alimentar dos o más ISP al mismo tiempo, es decir, en paralelo? Gracias de antemano.
Es posible alimentar desde dos ISP. Uno podría ser un operador de telefonía móvil, por ejemplo.
 
yosuf:
El internet se cae a menudo, ¿no hay forma de automatizarlo programáticamente para que vuelva a funcionar? ¿O qué se sabe en este sentido? ¿Hay alguna forma de alimentar dos o más ISP al mismo tiempo, es decir, en paralelo? Gracias de antemano.
En cualquier caso -VPS es correcto (y no es correcto - un router con 2 puertosWAN y no digas que es caro) (de la página web del fabricante - Por defecto, el TL-R470T+ tiene sólo dos puertos configurados para el modo WAN: el puerto 1 y el puerto 2 están en modo WAN, mientras que los puertos 3-5 están configurados para el modo LAN).
 

yosuf


Hazte un archivo bat que compruebe la conexión y, si falla, la restablezca