Publi

Publi

Resultados 1 al 8 de 8


  1. #1




    Reputación:
    Poder de reputación: 2

    Mensajes: 60
    Créditos: 0

    No sube la barra verde de testear EA al darle iniciar


    Publi
    Buenas a todos. Estoy intentando probar una estrategia, y cuando le doy al botón "iniciar" en "Prueba de Estrategia" no sube la barra verde. Puedo darle a detener, tal como si la estuviera probando, pero simplemente no la hace. No sube la barra verde y en el informe aparece una operación abierta y nada mas. ¿Alguien ha tenido alguna experiencia similar o sabe cómo resolver esto?
    Foro de Forex Trading United

     

  2.                         
    Publi
  3. #2
    Avatar de robertomar
    Heidelbergensis


    Reputación:
    Poder de reputación: 9

    Espana
    Mensajes: 905
    Créditos: 15.929

    Re: No sube la barra verde de testear EA al darle iniciar

    Compi, eso depende del EA, no de MT4. Lo más seguro es que el EA no salga cuando se den las condiciones contrarias a las entradas (o lleve opción para que salga o no salga y le tengas desactivada) y que tengas TP = 0 o bien SL = 0.

    Seguramente por eso, abre una operación y ya nunca la cierra.

    Si no fuese eso , sería cualquier problema que pudiera tener el EA.

    Espero que te sirva.

    Saludos y un abrazo,.
    Foro de Forex Trading United

     

  4. #3




    Reputación:
    Poder de reputación: 2

    Mensajes: 60
    Créditos: 0

    Re: No sube la barra verde de testear EA al darle iniciar

    Cita Iniciado por robertomar Ver mensaje
    Compi, eso depende del EA, no de MT4. Lo más seguro es que el EA no salga cuando se den las condiciones contrarias a las entradas (o lleve opción para que salga o no salga y le tengas desactivada) y que tengas TP = 0 o bien SL = 0.

    Seguramente por eso, abre una operación y ya nunca la cierra.

    Si no fuese eso , sería cualquier problema que pudiera tener el EA.

    Espero que te sirva.

    Saludos y un abrazo,.

    Gracias robertomar. Revisé y ví que tengo bien el SL y el TP. Te coloco el código:

    Código:
    void OnTick()
      {
          
       
       double contratos, SL, TP;
       contratos=0.01;
       SL=0.0030;
       TP=0.0030;
    //---
       
       if(OrdersTotal()==0)
          {
          RefreshRates();
          int ticket1=OrderSend(NULL, OP_BUY, contratos, Ask, 10, Bid-SL, Bid+TP, NULL, 0, 0, clrNONE);      
          Print(GetLastError());
          }
      }

    No veo nada malo en este, aunque no soy un experto en programación. Tal vez me ayudes a ver otra cosa. Coloqué a correr el código y coriió, pero es cuando intento hacerle el testeo que aparece el problema.

    Ya he probado cambiando las cantidades de contratos, el mercado en que hago la prueba, cambiado fechas, etc... Reviso las fechas en centro de historiales, y hago el testo en graficos de 5 minutos, viendo que tenga datos (para las fechas que coloco en la prueba) del de 1 minuto también. También he colocado hacer la prueba con modelo de cada tick, puntos de control y el de solo precios de apertura.

    He hecho pruebas que a veces me salen, pero no entiendo porque no me está haciendo el testeo ahorita. Hasta puse este código supersencillo a ver si se trataba del otro código, pero sigue sin hacer el testeo.

    Ahorita me sale este mensaje:
    GBPUSD,M5: 13219 tick events (14219 bars, 27435 bar states) processed within 16 ms (total time 3214 ms)

    Como ma pareció referirse a datos del históricos, me asegure de escoger hacer el testeo en datos que tengo, pero me sigue saliendo ese mensaje, así que supongo que se refiere a otra cosa.

    Muchas gracias. Espero alguien pueda ayudarme.
    Foro de Forex Trading United
    Última edición por trader0; 08-05-2015 a las 21:21

     

  5. #4
    Avatar de robertomar
    Heidelbergensis


    Reputación:
    Poder de reputación: 9

    Espana
    Mensajes: 905
    Créditos: 15.929

    Re: No sube la barra verde de testear EA al darle iniciar

    UUUffffff, quien ha hecho eso???.

    Lo primero, quieres que te abra una compra así como así sin más solo con que no tengas otra abierta sin ninguna otra condición???.

    Lo segundo, esa no es forma de ver si tienes órdenes abiertas.

    Lo tercero, si es broker ECN no se pueden mandar así las órdenes, sino que habría que mandarlas sin SL ni TP y luego modificar la orden para metérselos. Seguro que por ello es por lo que no te meterá el SL y el TP y como no se los mete, nunca cierra la primera orden y se queda abierta todo el backtest.

    Lo cuarto, hay que normalizar los valores del SL y el TP.

    Lo quinto, solo hay que imprimir el error si ha habido error, no siempre, lo cual se sabe si el ticket que te devuelve es < 0.

    Vamos, que está todo mal, habría que hacer el EA entero desde 0 para que funcione como Dios manda, jaja.

    Saludos y un abrazo.
    Foro de Forex Trading United

     

  6. #5




    Reputación:
    Poder de reputación: 2

    Mensajes: 60
    Créditos: 0

    Re: No sube la barra verde de testear EA al darle iniciar

    Cita Iniciado por robertomar Ver mensaje
    UUUffffff, quien ha hecho eso???.

    Lo primero, quieres que te abra una compra así como así sin más solo con que no tengas otra abierta sin ninguna otra condición???.

    Lo segundo, esa no es forma de ver si tienes órdenes abiertas.

    Lo tercero, si es broker ECN no se pueden mandar así las órdenes, sino que habría que mandarlas sin SL ni TP y luego modificar la orden para metérselos. Seguro que por ello es por lo que no te meterá el SL y el TP y como no se los mete, nunca cierra la primera orden y se queda abierta todo el backtest.

    Lo cuarto, hay que normalizar los valores del SL y el TP.

    Lo quinto, solo hay que imprimir el error si ha habido error, no siempre, lo cual se sabe si el ticket que te devuelve es < 0.

    Vamos, que está todo mal, habría que hacer el EA entero desde 0 para que funcione como Dios manda, jaja.

    Saludos y un abrazo.
    Hola robertomar. Sin querer contradecirte pues tu eres el experto. Pues me comentas que no va afuncionar pero si me funcionó. No me funcionaba en el Back Testing, pero cuando lo ponia a correr si funcionaba.

    Lo otro es que no veo por qué el código deba estar mal escrito pues solo dice abrir una posicion si no hay ouna abierta (por supuesto que es para probar si hay algo malo en el codigo o en el MT4).

    Algo mas que me llamó la atención es que el código no me hacia testeos, y hoy lo probe y si hizo el testeo. No he cambiado nada del código. ¿Alguien sabe a que se deba esto?
    Foro de Forex Trading United

     

  7. #6
    Avatar de robertomar
    Heidelbergensis


    Reputación:
    Poder de reputación: 9

    Espana
    Mensajes: 905
    Créditos: 15.929

    Re: No sube la barra verde de testear EA al darle iniciar

    Cita Iniciado por trader0 Ver mensaje
    Hola robertomar. Sin querer contradecirte pues tu eres el experto. Pues me comentas que no va afuncionar pero si me funcionó. No me funcionaba en el Back Testing, pero cuando lo ponia a correr si funcionaba.

    Lo otro es que no veo por qué el código deba estar mal escrito pues solo dice abrir una posicion si no hay ouna abierta (por supuesto que es para probar si hay algo malo en el codigo o en el MT4).

    Algo mas que me llamó la atención es que el código no me hacia testeos, y hoy lo probe y si hizo el testeo. No he cambiado nada del código. ¿Alguien sabe a que se deba esto?
    Compi, lo que tú digas, pero si te ha funcionado en algún sitio, es porque lo habrás puesto en un broker que sea Market Maker (en los cuales se suele poder mandar el SL y el Tp junto con la orden). Si lo pones en un broker ECN eso NO FUNCIONARA en genral (aunque actualmente hay algunos que aunque sean ECN ya permiten enviar SL y TP con la orden).

    También, tal como te dije, por seguridad, hay que normalizar siempre los valores del SL y el TP con los digitos que tenga el par donde tengas el EA, o si no, tendrás problemas, y muchas veces te devolverá , Error 130: Invalid Stops.

    Respecto a chequear si tienes órdenes abiertas, piensa que aparte de este EA puedes tener otros EAs funcionando en esa misma plataforma, así como órdenes manuales, etc etc etc, por lo que tendrías que buscar por Símbolo, por Magic Number, y por tipo de orden. Si solo pides que las OrdersTotal() sean 0, en cuanto tengas alguna abierta (aunque sea en otro par, o abierta por otro EA, o sea manual, lo que sea, en cuanto haya una sola orden abierta en la plataforma, aunque no tenga nada que ver con ese EA, ya no te abrirá otra).

    Puedes consultarle a cualquier programador del mundo. Yo solo quería echar una mano, pero vamos, que si crees que está todo correcto, tú mismo, jeje.

    Saludos y un abrazo.
    Foro de Forex Trading United

     

  8. #7




    Reputación:
    Poder de reputación: 2

    Mensajes: 60
    Créditos: 0

    Re: No sube la barra verde de testear EA al darle iniciar

    Cita Iniciado por robertomar Ver mensaje
    Compi, lo que tú digas, pero si te ha funcionado en algún sitio, es porque lo habrás puesto en un broker que sea Market Maker (en los cuales se suele poder mandar el SL y el Tp junto con la orden). Si lo pones en un broker ECN eso NO FUNCIONARA en genral (aunque actualmente hay algunos que aunque sean ECN ya permiten enviar SL y TP con la orden).

    También, tal como te dije, por seguridad, hay que normalizar siempre los valores del SL y el TP con los digitos que tenga el par donde tengas el EA, o si no, tendrás problemas, y muchas veces te devolverá , Error 130: Invalid Stops.

    Respecto a chequear si tienes órdenes abiertas, piensa que aparte de este EA puedes tener otros EAs funcionando en esa misma plataforma, así como órdenes manuales, etc etc etc, por lo que tendrías que buscar por Símbolo, por Magic Number, y por tipo de orden. Si solo pides que las OrdersTotal() sean 0, en cuanto tengas alguna abierta (aunque sea en otro par, o abierta por otro EA, o sea manual, lo que sea, en cuanto haya una sola orden abierta en la plataforma, aunque no tenga nada que ver con ese EA, ya no te abrirá otra).

    Puedes consultarle a cualquier programador del mundo. Yo solo quería echar una mano, pero vamos, que si crees que está todo correcto, tú mismo, jeje.

    Saludos y un abrazo.
    Hola robertomar. No se si es MM o ECN. Se tratad e una cuenta demo que baje de la misma Web de MT4. En la parte servidor dice "ADXX-Demo", lo que no se que significa por lo que no se si da información para concoer lo anterior.

    Lo de normalizar siempre los valores del SL y el TP con los digitos que tenga el par donde tenga el EA ¿lo hago según la cantidad de dígitos que aparece en los precios bid y ask cuando le doy a "nueva orden"? ¿Esa es la cantidad de dígitos? ¿Si el SL y el TP están basados en ATR, lo tomará automáticamente o será necesario utilizar la función de mql4 para escoger cantidad de dígitos?

    Gracias por tus respuestas.
    Foro de Forex Trading United

     

  9. #8
    Avatar de robertomar
    Heidelbergensis


    Reputación:
    Poder de reputación: 9

    Espana
    Mensajes: 905
    Créditos: 15.929

    Re: No sube la barra verde de testear EA al darle iniciar


    Publi
    Es conveniente normalizarlos siempre.

    En el caso de tu EA, se haría así:

    NormalizeDouble(Bid-SL, _Digits)

    y NormalizeDouble(Bid+TP, _Digits)

    Otra cosa que también te puede ocurrir es que ese broker no permita operar con microlotes. Por si acaso, en contratos ponle 0.1 o 1.0

    Saludos y un abrazo,.
    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