ESTRATEGIA SIN LA ORDEN “QUIT”
Forums › ProRealTime foro Español › Soporte ProOrder › ESTRATEGIA SIN LA ORDEN “QUIT”
- This topic has 10 replies, 3 voices, and was last updated 2 years ago by TempusFugit.
-
-
12/18/2021 at 4:23 PM #183561
Buenas tardes a todos:
He desarrollado esta sencilla estrategia, que si la probáis con el DOW JONES da bastantes buenos resultados positivos.
A ver si me podéis ayudar a mejorarla un poco, programando correctamente la salida de un “trade” sin utilizar la orden QUIT, sino que el sistema cierre (y no pare la estrategia) automáticamente todas las operaciones, cuando el beneficio de un “trade” sea superior a 200 puntos.
Aquí os dejo el código para que lo probéis y lo podáis mejorar.
GRACIAS
COMPRAVENTA - CLOSE123456789101112131415161718192021222324252627282930313233343536DEFPARAM PRELOADBARS = 10000DEFPARAM CUMULATEORDERS = FALSEPeriod = 71inner = 2*weightedaverage[round(Period/2)](CLOSE)-weightedaverage[Period](CLOSE)MMH = weightedaverage[round(sqrt(Period))](inner)V = 431IF CLOSE[0] = CLOSE[V] AND MMH[0] > MMH[V] THENBUY AT MARKETENDIFIF CLOSE[0] = CLOSE[V] AND MMH[0] < MMH[V] THENSELLSHORT AT MARKETENDIF/////////////////////////////////////////////////////////TempProfit = PositionPerf * PositionPrice / PipSize * PipvaluePROFI = StrategyProfit + TempProfitIF PROFI >= 200 THENSET TARGET pPROFIT 200ENDIF//IF PROFI <= -200 THEN//QUIT//ENDIF///////////////////////// Stops y objetivos:SET STOP pLOSS 200////SET TARGET pPROFIT 20012/18/2021 at 4:47 PM #183562Esto funcionará:
123456789101112131415161718192021222324252627282930313233343536DEFPARAM PRELOADBARS = 10000DEFPARAM CUMULATEORDERS = FALSEPeriod = 71inner = 2*weightedaverage[round(Period/2)](CLOSE)-weightedaverage[Period](CLOSE)MMH = weightedaverage[round(sqrt(Period))](inner)V = 431IF CLOSE[0] = CLOSE[V] AND MMH[0] > MMH[V] THENBUY AT MARKETENDIFIF CLOSE[0] = CLOSE[V] AND MMH[0] < MMH[V] THENSELLSHORT AT MARKETENDIF///////////////////////////////////////////////////////////TempProfit = PositionPerf * PositionPrice / PipSize * Pipvalue//PROFI = StrategyProfit + TempProfit//IF PROFI >= 200 THENSET TARGET pPROFIT 200//ENDIF//IF PROFI <= -200 THEN//QUIT//ENDIF///////////////////////// Stops y objetivos:SET STOP pLOSS 200////SET TARGET pPROFIT 200Sin embargo, las líneas 10 y 14 parecen tener condiciones muy estrictas, ya que comprobar que el CLOSE actual es igual a algunos períodos atrás es extremadamente raro.
12/20/2021 at 1:11 AM #183609Buenos días Roberto:
Gracias por responder tan rápido. Si pruebas esta estrategia con el DOW JONES en el “time frame” 1 min. Verás que cuando haces un Backtest con 100.000 barras (3 meses más o menos), el grafico de liquidez es siempre ascendente, con una ganancia global del 60% aprox.
A mí lo que me gustaría conseguir es, que dentro de la misma estrategia, que puede durar 3 meses o más perfectamente, las operaciones que se vayan ejecutando tengan una ganancia/pérdida total de 200 puntos (sumando los diferentes trades que se puedan abrir en la misma operación).
Utilizando solo el “SET TARGET PPROFIT 200”, por ejemplo, solo consigues un beneficio de 200 puntos sobre el ultimo “Trade”, pero si en el “trade” anterior has tenido una pérdida de 90 puntos, por ejemplo, la ganancia de esa operación en concreto solo será de 110 puntos.
Utilizando una combinación correcta del “Strategyprofit”, creo que se podría conseguir que la suma total de esa operación fuera de 200 puntos en total y sin tener que cerrar la estrategia con la orden QUIT. Es decir que permaneciera en espera hasta la próxima operación, en que volvieran a coincidir los dos “CLOSE” e iniciáramos otra nueva operación de 200 puntos totales de ganancias o pérdidas.
Yo no tengo tantos conocimientos de programación, pero creo que utilizando órdenes tipo “ONCE” u ordenes bucle tipo “FOR” se puede llegar a conseguir esta idea que estoy proponiendo para todo el Foro.
Gracias por responder y Un Saludo,
ALBERT
12/20/2021 at 4:47 AM #183614¿Quiere poner fin a la estrategia cuando alcance una ganancia total de 200 puntos? Si es así, ¿tiene que salir con QUIT o cómo desea reiniciarlo?
12/20/2021 at 9:24 AM #183621Buenos días Roberto:
Esa era mi consulta, si el sistema se podía ir reiniciando cada 200 puntos sin necesidad de tener que detenerlo por completo con la instrucción “QUIT”.
Crees que puede haber alguna manera de poder conseguirlo, utilizando instrucciones más complejas?????
Gracias de nuevo y Un Saludo,
ALBERT
12/20/2021 at 9:57 AM #183622Cuando alcances 200 puntos en total, querrás detenerlo. Está bien, se puede hacer. Para que se reanude, puede esperar N barras, o N días, o N señales de entrada (sin entrar), o después de una gran caída del precio o una gran subida. Solo tiene que decidir qué solución le conviene más.
12/20/2021 at 11:37 AM #183626Hola Albert,
interesante idea para un sistema. Lo he probado en 1M de velas y como puedes ver en la imagen adjunta el resultado no es tan bueno antes de estos últimos meses, precaución porque puede haber algo de sobreoptimización para esos meses
Buena caza!
12/20/2021 at 2:34 PM #183635Disculpa Tempus, con la plataforma de que broker has probado el sistema???.
Ya me dirás.
Un Saludo,
ALBERT
12/20/2021 at 10:57 PM #183661Yo trabajo con IG, la plataforma es PRT claro, sino no estaría en esta web;)
01/04/2022 at 12:59 AM #184469Buenas noches Tempus:
Gracias por tus respuestas y colaboración. Yo también estoy con IG, y te quería preguntar como haces para poder hacer Backtest de 1 Millón de barras en el time frame 1 minuto, yo he intentando todas las combinaciones posibles y solo consigo cargar 100.000 barras en el time frame 1 minuto.
¿¿¿¿¿¿Quizás es que utilizas otra versión o alguna configuración especial??????
Si por favor me puedes explicar cómo haces para cargar 1 Millón de barras, me harías un gran favor, para poder probar mis estrategias con periodos más largos, que siempre puedes tener mejor visión de las estrategias.
Muchas Gracias de antemano por tu ayuda.
Un Saludo,
ALBERT
01/04/2022 at 8:06 PM #184532Hola Albert,
Lo de poder ver 1 millon de velas creo que es por tener la cuenta premium, puedes ver si la tienes en la esquina izquierda de la barra de menús como aparece en la imagen adjunta. Para tener ese tipo de cuenta creo lo solicité a PRT por correo pero fue hace ya varios años y no estoy seguro
https://trading.prorealtime.com/en/brokerage/cfd-forex-trading.
En este enlace (se pueden poner enlaces externos??) creo que podías solicitar una cuenta premium directamente con IG, o una “IG account sponsored by PRT” como parece que la llaman también.
Si ya tienes una cuenta abierta con IG y quieres convertirla a Premium yo preguntaría tanto a IG como a PRT por ello, aunque creo que fue a PRT a quién se lo solicité no lo recuerdo seguro.
Buena suerte y espero que te haya ayudado algo
-
AuthorPosts