ComenzarEmpieza gratis

Combinando señales - II

En el ejercicio anterior, aproximaste una señal sigFormula comparando el valor de otras dos señales. En este ejercicio final, irás un paso más allá usando la función sigFormula() para generar una señal sigFormula.

El objetivo es sencillo: quieres abrir una posición cuando longfilter y longthreshold se vuelvan verdaderas a la vez. La idea es la siguiente: no quieres seguir entrando en una posición mientras las condiciones sigan siendo verdaderas, pero sí quieres mantener una posición cuando haya un retroceso en un entorno alcista.

Escribir una función sigFormula es tan simple como escribir el argumento de una "sentencia if" de R base dentro de la función formula(). En este caso, quieres crear una señal llamada longentry, que sea verdadera cuando tanto longfilter como longthreshold crucen a verdadero al mismo tiempo.

¡Cuando termines este ejercicio, tendrás una visión completa de cómo funcionan las señales en quantstrat!

Este ejercicio forma parte del curso

Trading financiero en R

Ver curso

Instrucciones del ejercicio

  • Usa add.signal() para crear una señal sigFormula que sea verdadera cuando tanto longfilter como longthreshold sean verdaderas.
  • Establece cross igual a TRUE.
  • Etiqueta esta nueva señal como longentry.

Ejercicio interactivo práctico

Prueba este ejercicio y completa el código de muestra.

# Add a sigFormula signal to your code specifying that both longfilter and longthreshold must be TRUE, label it longentry
add.signal(strategy.st, name = "___",
           
           # Specify that longfilter and longthreshold must be TRUE
           arguments = list(formula = "___ & ___", 
                            
                            # Specify that cross must be TRUE
                            cross = ___),
           
           # Label it longentry
           label = "___")
Editar y ejecutar código