Variable de vela anterior

Forums ProRealTime foro Español Soporte ProBuilder Variable de vela anterior

Viewing 7 posts - 1 through 7 (of 7 total)
  • #148081

    Hola a todos.

    Tengo un problema cuando uso la sencilla instrucción VARMOVIL=VARMOVIL[1]

    El problema aparece cuando en la primera vela se ejecuta esa igualdad, ya que es como si se quedara sin informar y a partir de aquí, ya no puedo preguntar por ella, por ejemplo IF VARMOVIL=0. Ya que no se cumple ninguna igualdad.

    He probado a preguntar por el barindex = 1 ó barindex = 0 para que no se ejecute VARMOVIL=VARMOVIL[1] en esas primeras velas, pero no me funciona.

    ¿Alguna ayuda por favor?

    Gracias

    #148101

    Alturron,

    No estoy seguro de entender bien tu duda sin ver más de tu código. Puede ser que mientras que la variable VARMOVIL no ha recibido ningún valor la condición VARMOVIL=VARMOVIL[1] se cumpla siempre puesto que su valor no ha cambiado?

    Si ese es el problema puedes probar con:

    Buena suerte!

    #148108

    Gracias TempusFugit.

    No creo que me valga. Te pego el código:

    Lo que necesito es que una variable se informe por primera vez en la vela de las 9:00 y se vaya arrastrando en el tiempo. En el código que ves, está esto que digo. La variable en alguna parte más del programa, (que no pongo por razones de tamaño exclusivamente), se informa con otros valores, a partir de esa primera vez.

    El problema, es que el código que ves, no devuelve nada. Si quito o comento, la linea VARMOVIL=VARMOVIL[1] del else más interno, funciona, pero mal, ya que devuelve el valor de varmovil con valor cero desde el primer día en la vela de las 9 y durante un día completo hasta la siguiente vela de las 9 que devuelve el valor correspondiente al ATR durante otro día completo y de nuevo cero y así sucesivamente. Por otra parte, si también comento o quito VARMOVIL=VARMOVIL[1] del else más externo, devuelve en la vela de las 9 el valor correspondiente y en el resto de velas 0. En este caso, si que en la primera vela de las 9 del primer día, ya devuelve el valor del ATR correspondiente, a diferencia del supuesto anterior, que en la vela de las 9 del primer día, devuelve cero.

    No se si me habré hecho entender. Espero que si. Llevo mucho tiempo con este asunto y no consigo solucionarlo. Gracias de nuevo.

     

    #148111

    Hola, hay la vela anterior, y tambien dentro del “if operar=1” la necesidad de haber 14 velas, por eso podemos intentar con “if barindex>14 then” antes de la linea 11 para que “varmovil” aparezca

    #148112

    Si pones VARMOVIL=0 al principio del código ese es el valor con el que se va a reiniciar en cada vela. Quizás esto es lo que buscas…

     

    #148117

    hola y gracias a los 2.

    No es ese el problema. Por un lado, hay más de 14 velas cargadas antes que se ejecute. Y en cuanto a la segunda respuesta con once he probado y tampoco.

    Intento simplicarlo más con el siguiente código. Ese código que pongo ahora, devuelve en todas las velas a partir de las 9 del primer día, el valor “5”. La pregunta es, porque la primera vez no se cumple el if IF VARMOVIL[1] = 0 ???

    Como decía antes, el código es algo más complejo, pero el problema lo tengo detectado ahí. Tened en cuenta que antes que se ejecute el IF que digo, se han ejecutado otras velas antes (las anteriores a las 9 de la mañana) por lo tanto el programa ejecuta la línea VARMOVIL=VARMOVIL[1] en velas que tan solo ejecutan esa línea, ya que no entra en la condición operar = 1.

    Para mi, el problema está ahí, en informar una variable “X” con su “X[1]” cuando lo único que se ha hecho con ella es informarla a cero, pero no se ha usado. El tema, es que necesito hacerlo o algo similar, pero no se como.

     

    #148121

    Prueba:

Viewing 7 posts - 1 through 7 (of 7 total)

Create your free account now and post your request to benefit from the help of the community
Register or Login