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
Instructions
- Utilisez
add.signal()pour créer un signalsigFormulaqui est vrai lorsquelongfilteretlongthresholdsont 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 = "___")