Mejorar la entrada en sistema con corte de medias WMA
Forums › ProRealTime foro Español › Soporte ProOrder › Mejorar la entrada en sistema con corte de medias WMA
- This topic has 3 replies, 2 voices, and was last updated 2 years ago by robertogozzi.
-
-
04/05/2022 at 7:25 AM #191206
Buenas a tod@ssss
Estoy utilizado un sistema sencillo de cruce de medias para encontrar puntos de entrada.
Concretamente, dos medias ponderadas de 4 y 100. Dejo código:
123456789101112131415161718192021222324252627282930313233343536DEFPARAM CumulateOrders = false // Acumulación de posiciones desactivadaz = 50w = 40// Condiciones para entrada de posiciones largasindicator1 = WeightedAverage[4](totalPrice)indicator2 = WeightedAverage[160](totalPrice)c1 = (indicator1 > indicator2)c2 = (indicator1 > indicator2 + z)c3 = (indicator1 < indicator2)C4 = (indicator1 < indicator2 - Z)c7 = (indicator1 < indicator2 - w)C8 = (indicator1 > indicator2 + w)IF c1 and C2 THENBUY 1 CONTRACT AT MARKETENDIF// Condiciones de salida de posiciones largasIF c3 and C7 THENSELL AT MARKETENDIF// Condiciones de entrada de posiciones cortasIF c3 and C4 THENSELLSHORT 1 CONTRACT AT MARKETENDIF// Condiciones de salida de posiciones cortasIF c1 and C8 THENEXITSHORT AT MARKETENDIFLo que me gustaría es poder mejorar las posiciones de entrada. Es decir, en posiciones largas por ejemplo, en lugar de comprar al precio que se encuentre cuando mis medias se cruzan ( y se cumplen el parámetro Z), que la compra se realice cuando el precio esté a 80 puntos por encima de la WMA(160) que denomino como “indicator2”.
Dicho de otra manera, que el corte de medias WMA, sea como un activador del sistema, para que cuando se dé mi condición Z se coloque una orden de compra a 80 puntos por encima de la WMA(160) que dure hasta que se den mis condiciones de “SELL AT MARKET”.
Igualmente para los cortos, que se coloque una orden de entrada corta a -80 puntos de la WMA(160) cuando la WMA(4) se encuentre a Z puntos por debajo de la WMA(160).
Muchas gracias de antemano por vuestra ayuda.
Saludos
04/05/2022 at 3:52 PM #191248Reemplace las líneas 17 y 28 con estas:
12BUY 1 CONTRACT AT indicator2 + 80*PipSize STOPSELLSHORT 1 CONTRACT AT indicator2 - 80*PipSize STOP04/05/2022 at 5:28 PM #191256Muchas gracias por el código, pero no funciona correctamente. Creo que no me he explicado bien 🙁
Sustituyendo estas líneas, conseguimos una entrada en el mercado inmediatamente después del corte de medias + Z, aunque el precio en ese momento esté por encima de 80 puntos de la WMA 160.
Solo funciona correctamente si, cuando las medias cortan, el precio en ese momento está por debajo de los 80 puntos del indicador2 , entonces sí que el sistema emite orden para comprar cuando alcance los 80 puntos. Pero si cuando las medias cortan y el indicador1 es mayor que indicador2 +Z (tal y como condiciona el código) el sistema emite orden de compra aunque el precio sea superior a indicador2 + 80 puntos.
En largos, busco que una vez las medias se corten y el indicador1 sea igual o mayor al indicador2 +Z puntos, el sistema espere a que el precio se encuentre a un máximo de 80 puntos por encima de WMA 160 para ejecutar la orden de compra. Es decir entre la WMA 160 y la WMA 160 + 80 puntos y no por encima de los 80 puntos de la WMA 160.
Muchas gracias de antemano por toda tu ayuda.
04/06/2022 at 9:06 AM #191308¿Quizás te refieres a esto?
123456789101112131415161718192021222324252627282930313233343536DEFPARAM CumulateOrders = false // Acumulación de posiciones desactivadaz = 50w = 40// Condiciones para entrada de posiciones largasindicator1 = WeightedAverage[4](totalPrice)indicator2 = WeightedAverage[160](totalPrice)c1 = (indicator1 > indicator2)c2 = (indicator1 > indicator2 + z)c3 = (indicator1 < indicator2)C4 = (indicator1 < indicator2 - Z)c7 = (indicator1 < indicator2 - w)C8 = (indicator1 > indicator2 + w)IF c1 and C2 AND (close < (indicator2 + 80*PipSize)) THENBUY 1 CONTRACT AT indicator2 + 80*PipSize STOPENDIF// Condiciones de salida de posiciones largasIF c3 and C7 THENSELL AT MARKETENDIF// Condiciones de entrada de posiciones cortasIF c3 and C4 AND (close > (indicator2 - 80*PipSize)) THENSELLSHORT 1 CONTRACT AT indicator2 - 80*PipSize STOPENDIF// Condiciones de salida de posiciones cortasIF c1 and C8 THENEXITSHORT AT MARKETENDIF -
AuthorPosts
Find exclusive trading pro-tools on