Publi

Publi

Resultados 1 al 10 de 10


  1. #1

    antecessor


    Reputación:
    Poder de reputación: 8

    Venezuela
    Mensajes: 597
    Créditos: 2.154

    ¿Hay alguna función en mql4 para revisar si se cumple una misma condición en varias velas?


    Publi
    Saludos.

    Lo que me gustaría saber es como hago referencia a una misma condición de varias velas anteriores, sin colocar la condición una a una (ya que se trata de la misma condición). Es decir: si quiero saber si las últimas 4 velas han cerrado por encima de su apertura, o de una SMA, etc...

    como hago para no decir, con cada una. Por ejemplo, en vez de escribir:

    if (close4>open4 && close3>open3 && close2>open2 && close1>open1)

    colcoar algo como

    if "desde" close4 hasta close 1, todas cerradas por encima de su apertura (o de una SMa, etc..)


    Saludos, ygracias de antemano
    Foro de Forex Trading United

     

  2.                         
    Publi
  3. #2
    Avatar de Ciclo
    Heidelbergensis


    Reputación:
    Poder de reputación: 14

    Espana
    Mensajes: 2.431
    Créditos: 19.921

    Re: ¿Hay alguna función en mql4 para revisar si se cumple una misma condición en varias velas?

    Cita Iniciado por trader201 Ver mensaje
    Saludos.

    Lo que me gustaría saber es como hago referencia a una misma condición de varias velas anteriores, sin colocar la condición una a una (ya que se trata de la misma condición). Es decir: si quiero saber si las últimas 4 velas han cerrado por encima de su apertura, o de una SMA, etc...

    como hago para no decir, con cada una. Por ejemplo, en vez de escribir:

    if (close4>open4 && close3>open3 && close2>open2 && close1>open1)

    colcoar algo como

    if "desde" close4 hasta close 1, todas cerradas por encima de su apertura (o de una SMa, etc..)


    Saludos, ygracias de antemano
    Yo creo que no lo hay.
    De todos modos, que mas te da, ¿que ganas con eso?. Decir if (close4>open4 && close3>open3 && close2>open2 && close1>open1) esta bien.

    Bueno, si es un indicador seria if (close[i+3]>open[i+3] && close[i+2]>open[i+2] && close[i+1]>open[i+1] && close[i]>open[i])

    Si el bucle for empieza con i=1

    Pero no soy un experto.

    Saludos.
    Foro de Forex Trading United

     

  4. #3
    Avatar de Wolfman
    Heidelbergensis


    Reputación:
    Poder de reputación: 15

    Mensajes: 2.052
    Créditos: 7.617

    Re: ¿Hay alguna función en mql4 para revisar si se cumple una misma condición en varias velas?

    Cita Iniciado por Ciclo Ver mensaje
    Yo creo que no lo hay.
    De todos modos, que mas te da, ¿que ganas con eso?. Decir if (close4>open4 && close3>open3 && close2>open2 && close1>open1) esta bien.

    Bueno, si es un indicador seria if (close[i+3]>open[i+3] && close[i+2]>open[i+2] && close[i+1]>open[i+1] && close[i]>open[i])

    Si el bucle for empieza con i=1

    Pero no soy un experto.

    Saludos.
    Igual que Ciclo no soy experto pero te doy mi idea, si lo que quieres es ahorrar trabajo de escritura lo ideal seria definir las variables con primero con esas condiciones, para luego utilizar las variables como condiciones en toda la logica del algoritmo mas si este las utiliza de diferentes manera.

    Saludos
    Foro de Forex Trading United



    "La mente es como un paracaídas, sólo funciona si se abre. Albert Einstein

  5. #4
    Avatar de robertomar
    Heidelbergensis


    Reputación:
    Poder de reputación: 9

    Espana
    Mensajes: 905
    Créditos: 15.929

    Re: ¿Hay alguna función en mql4 para revisar si se cumple una misma condición en varias velas?

    Si son muchas las velas en las que lo quieres comprobar, puedes hacer un bucle de tipo "for" por ejemplo si quieres comprobarlo en 100 velas y darle la condición y entonces te lo comprobará en todas. Por ejemplo:

    for (int i =0; i< 100; i++) {

    if (Close[i] > Open[i]) ....... y aqui lo que quieres que te haga en cada una de las velas que se cumpla eso.

    } // esta llave, si quereis incluir luego lo de abajo, no abría que cerrarla aquí, sino abajo donde lo indico.


    Te lo comprobará vela a vela, y cada vez que en una vela de las últimas 100 velas se cumpla eso, te hará lo otro.

    Si quieres que algo se tenga que cumplir en todas a la fuerza, le pones un contador:
    int counter = 0; // esto tiene que ir antes de empezar el bucle for
    if (Close [i] > Open[i]) counter++; // esto va dentro del bucle for
    Aquí se cerraría la llave (no se cerraría arriba), si quereis incluir esto de comprobarlo que se cumple siempre en todas.
    }
    Y al final, la condición de que la variable counter sea igual al número de velas que has chequeado:

    if (counter == 100) ...... aqui pones lo que quieres que te haga // esto ya fuera de la llave.

    (Date cuenta que si la variable counter llega hasta 100 entonces es que eso se ha cumplido en todas ellas).

    Más o menos se podría hacer así.

    Espero que te sirva.

    Saludos y abrazos.


    Edito para poner comentarios adicionales, por si quereis probarlo. Todo lo adicional lo he puesto en rojo.
    Foro de Forex Trading United
    Última edición por robertomar; 19-07-2014 a las 22:35 Razón: Edito para poner comentarios adicionales por si quereis probar esto

     

  6. #5




    Reputación:
    Poder de reputación: 4

    Mensajes: 164
    Créditos: 494

    Re: ¿Hay alguna función en mql4 para revisar si se cumple una misma condición en varias velas?

    Cita Iniciado por robertomar Ver mensaje
    Si son muchas las velas en las que lo quieres comprobar, puedes hacer un bucle de tipo "for" por ejemplo si quieres comprobarlo en 100 velas y darle la condición y entonces te lo comprobará en todas. Por ejemplo:

    for (int i >=0; i< 100; i++) {

    if (Close[i] > Open[i]) ....... y aqui lo que quieres que te haga en cada una de las velas que se cumpla eso.
    }

    Te lo comprobará vela a vela, y cada vez que en una vela de las últimas 100 velas se cumpla eso, te hará lo otro.

    Si quieres que algo se tenga que cumplir en todas a la fuerza, le pones un contador:
    int counter = 0;
    if (Close [i] > Open[i]) counter++;

    Y al final, la condición de que la variable counter sea igual al número de velas que has chequeado:

    if (counter == 100) ...... aqui pones lo que quieres que te haga

    (Date cuenta que si la variable counter llega hasta 100 entonces es que eso se ha cumplido en todas ellas).

    Más o menos se podría hacer así.

    Espero que te sirva.

    Saludos y abrazos.
    Confirma si funciona pero por si acaso, reputacion
    Foro de Forex Trading United

     

  7. #6

    antecessor


    Reputación:
    Poder de reputación: 8

    Venezuela
    Mensajes: 597
    Créditos: 2.154

    Re: ¿Hay alguna función en mql4 para revisar si se cumple una misma condición en varias velas?

    Cita Iniciado por dojitraderfx Ver mensaje
    Confirma si funciona pero por si acaso, reputacion
    hubiera preferido no decir publicamente, pero ya que lo mencionas: estaba esperando confirmar primero que funcione para dársela (que supongo que claro que funcionará), tal como hice con la respuesta que me dio yokinfx (por fa leela).

    Saludos
    Foro de Forex Trading United

     

  8. #7
    Avatar de robertomar
    Heidelbergensis


    Reputación:
    Poder de reputación: 9

    Espana
    Mensajes: 905
    Créditos: 15.929

    Re: ¿Hay alguna función en mql4 para revisar si se cumple una misma condición en varias velas?

    Bueno, solo era para transmitir un poco la idea.

    Pero si quereis probar el codigo exactamente, imagino que se sobreentendía dónde tenían que ir las llaves , qué tenía que ir dentro y fuera de ellas, etc en caso de incluir lo del counter o de no incluirlo, pero por si acaso, he editado el post de arriba, por si alguien se hace un lío,jajjajaja.

    Incluyendo lo del contador para exigir que esa condición se cumpla siempre, quedaría así exactamente:

    int counter = 0; // esto tiene que ir antes de empezar el bucle for

    for (int i =0; i< 100; i++) {

    if (Close [i] > Open[i]) counter++; // esto va dentro del bucle for

    }


    if (counter == 100) // ...... aqui pones lo que quieres que te haga esto ya fuera de la llave.


    También se podrían chequear las 100 velas e incluir que por ejemplo eso se tenga que cumplir en 80 velas (un 80% de las veces). Entonces habría que poner:

    if (counter >= 80) /
    / es decir, si en esas 100 velas previas (incluyendo la actual, que es la vela 0) se ha cumplido eso en al menos 80 de ellas, entonces, que me haga lo que se quiera.


    Si se quiere que solo compruebe desde la vela anterior (vela cerrada) habría que poner el buble empezando desde 1:

    for (int i = 1; i< 101; i++)

    Etc.




    Abrazos.
    Foro de Forex Trading United
    Última edición por robertomar; 19-07-2014 a las 22:51

     

  9. #8

    antecessor


    Reputación:
    Poder de reputación: 8

    Venezuela
    Mensajes: 597
    Créditos: 2.154

    Re: ¿Hay alguna función en mql4 para revisar si se cumple una misma condición en varias velas?

    Cita Iniciado por robertomar Ver mensaje
    Bueno, solo era para transmitir un poco la idea...
    Lo hiciste. Y gracias de nuevo por responder.

    Cita Iniciado por robertomar Ver mensaje
    ...Pero si quereis probar el codigo exactamente, imagino que se sobreentendía dónde tenían que ir las llaves , qué tenía que ir dentro y fuera de ellas, ...
    Pues... en mi caso particular entendí donde colocar las llaves. Solo que yo las he colocado tipo esquema porque no he aprendido aún como colocarlas de seguidas como he visto que lo hacen ustedes (como estoy apenas aprendiendo mql4, en algún momento supongo aprenderé).



    Lo del mensaje de esperar confirmar para dar reputación es porque me gusta la idea de ese botón. No encontré donde fué que vi una vez la explicación de su función, mas si mal no recuerdo es una herramienta para facilitar, por ejemplo, una persona recién llega, al hacer una pregunta y obtener distintas repuestas, ver la reputación que le han dado otros usuarios a estos que le respondieron (algo que no tienen otros foros y que vale sobre todo para los que están llegando). En ese sentido, aunque sea solo un botón, me gusta como fue concebido (si es que la idea original era esa; o es esa). Se le pierde ese sentido al botón cuando se pide o se da reputación por cualquier cosa; y pues no vayas a pensar que lo digo porque tu me la hayas pedido pues no lo has hecho, aunque desde mi punto de vista tu respuesta es para dar reputación. Solo para expresar algo. De hecho creo que sería hasta mejor si se pudiera dar por temas: mercado y sistemas, gestión monetaria, psicología, trading automatizado. Facilita aún mas su función.

    Pero bueno. Quizá es solo un botón, pero a mi me gustó la idea, y en general creo que ya la cumple si se sigue usando de esta manera.

    Gracias por agregar lo de el contador y la opción para colocarle la opción de los porcentajes (y por supuesto por la respuesta inicial).
    Ahí te mando reputación.
    Recibe un saludo.

    Foro de Forex Trading United
    Última edición por trader201; 20-07-2014 a las 07:29

     

  10. #9

    antecessor


    Reputación:
    Poder de reputación: 8

    Venezuela
    Mensajes: 597
    Créditos: 2.154

    Re: ¿Hay alguna función en mql4 para revisar si se cumple una misma condición en varias velas?

    dojitraderfx, casi olvido decir , que tampoco lo digo por lo que comentaste pues para mi su respuesta la merece, y tu comentario solo me hizo recordar el tema que mencioné. Solo en caso de que hiciera falta aclarar pues es que a veces cuando no se está habando "face to face" sino por escrito, uno puede estar interpretando algo diferente a la intención o a lo que la persona quiso decir. Recuerdo que en una oportunidad trabajando con mucha comunicación online con clientes, una de las cosas que vimos es la utilidad de usar emoticons para evitar alguna mala interpretación.

    Recibe un saludo.
    Foro de Forex Trading United

     

  11. #10
    Avatar de Ciclo
    Heidelbergensis


    Reputación:
    Poder de reputación: 14

    Espana
    Mensajes: 2.431
    Créditos: 19.921

    Re: ¿Hay alguna función en mql4 para revisar si se cumple una misma condición en varias velas?


    Publi


    Hola amigos.

    Para verificar una condicion en una vela, 2 velas o incluso 4 velas, se puede hacer como dije, logicamnete si la condición es para 100 velas habria que hacer un bucle for como ha indicado robertomar.

    Saludos.

    Foro de Forex Trading United

     

Publi
Publi


Aviso Legal
Ley Orgánica 15/1999, de 13 de diciembre, de Protección de Datos de Carácter Personal