ComenzarEmpieza gratis

Implementar un indicador - I

Ha llegado el momento de entrar en la mecánica de implementar un indicador dentro del alcance de la biblioteca quantstrat. En este ejercicio aprenderás a añadir un indicador a tu estrategia. Para este ejercicio usarás la estrategia que creaste en ejercicios anteriores, strategy.st. Como primer indicador, añadirás una media móvil simple de 200 días.

Para añadir un indicador a tu estrategia, utilizarás add.indicator(). Establece strategy igual al nombre de tu estrategia, name al nombre de una función entre comillas, y arguments a los argumentos de la función indicada en forma de lista. Por ejemplo, si el nombre de tu función fuera SMA, el argumento arguments contendrá los argumentos de la función SMA:

add.indicator(strategy = strategy.st, 
              name = "SMA", 
              arguments = list(x = quote(Cl(mktdata)), n = 500), 
              label = "SMA500")

Al referenciar datos de mercado dinámicos en tu llamada a add.indicator(), incluye mktdata dentro de la función quote() porque se crea dentro de quantstrat y cambiará según el instrumento que el paquete esté usando en ese momento. quote() garantiza que los datos puedan cambiar dinámicamente durante la ejecución de tu estrategia.

En este ejercicio, añadirás una SMA de 200 días a tu estrategia existente strategy.st. Los paquetes quantstrat y quantmod también están cargados para ti.

Este ejercicio forma parte del curso

Trading financiero en R

Ver curso

Instrucciones del ejercicio

  • Usa add.indicator() sobre tu estrategia existente strategy.st. Sigue de cerca el código de ejemplo.
  • Proporciona la función SMA como argumento name.
  • Especifica los argumentos necesarios de SMA, usando el precio de cierre de mktdata y un periodo de retroceso n de 200 días.
  • Etiqueta tu indicador como "SMA200".

Ejercicio interactivo práctico

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

# Add a 200-day SMA indicator to strategy.st
add.indicator(strategy = ___, 
              
              # Add the SMA function
              name = ___, 
              
              # Create a lookback period
              arguments = list(___), 
              
              # Label your indicator SMA200
              label = ___)
Editar y ejecutar código