CommencerCommencer gratuitement

Combiner des signaux - II

Dans l’exercice précédent, vous avez approximé un signal sigFormula en comparant la valeur de deux autres signaux. Dans cet exercice final, vous allez aller un peu plus loin en utilisant la fonction sigFormula() pour générer un signal sigFormula.

L’objectif est simple : vous souhaitez entrer en position lorsque longfilter et longthreshold deviennent vrais au même moment. L’idée est la suivante : vous ne voulez pas entrer sans cesse en position tant que les conditions restent vraies, mais vous voulez effectivement conserver une position lorsqu’il y a un repli dans un environnement haussier.

Écrire un sigFormula revient à écrire l’argument d’une « if statement » en R de base, à l’intérieur de la fonction formula(). Ici, vous voulez créer un signal nommé longentry, qui est vrai lorsque longfilter et longthreshold passent tous deux à vrai simultanément.

Une fois cet exercice terminé, vous aurez une vision complète du fonctionnement des signaux dans quantstrat !

Cet exercice fait partie du cours

Trading financier en R

Afficher le cours

Instructions

  • Utilisez add.signal() pour créer un signal sigFormula qui est vrai lorsque longfilter et longthreshold sont tous deux vrais.
  • Définissez cross égal à TRUE.
  • Nommez ce nouveau signal longentry.

Exercice interactif pratique

Essayez cet exercice en complétant cet exemple de code.

# 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 = "___")
Modifier et exécuter le code