Utiliser add.rule() pour implémenter une règle d’entrée
Excellent ! Vous maîtrisez désormais toutes les étapes de la construction de règles dans quantstrat. Jusqu’ici, vous avez ajouté les règles pas à pas ; il est maintenant temps de tout rassembler pour vérifier ce que vous avez retenu dans ce chapitre.
L’inverse d’une règle de sortie est une règle d’entrée. Pour les règles d’entrée, orderqty ne peut pas être défini à "all" car il n’existe pas encore de position sur laquelle agir. Dans cet exercice, vous allez implémenter une règle d’entrée qui se réfère au signal longentry dans votre stratégie et achètera une action d’un actif.
Cet exercice fait partie du cours
Trading financier en R
Instructions
- Spécifiez les arguments de
add.rule()pour implémenter votre nouvelle règle d’entrée. - Votre règle doit se déclencher lorsque le signal
longentryest égal àTRUE. - Votre règle doit acheter
1action d’un actif via un ordre"market". - Le côté de votre règle doit être
longet replace doit êtreFALSE. - Votre règle doit acheter à l’
Opendu jour suivant après l’observation du signal.
Exercice interactif pratique
Essayez cet exercice en complétant cet exemple de code.
# Create an entry rule of 1 share when all conditions line up to enter into a position
add.rule(strategy.st, name = "ruleSignal",
# Use the longentry column as the sigcol
arguments=list(sigcol = "___",
# Set sigval to TRUE
sigval = ___,
# Set orderqty to 1
orderqty = ___,
# Use a market type of order
ordertype = "___",
# Take the long orderside
orderside = "___",
# Do not replace other signals
replace = ___,
# Buy at the next day's opening price
prefer = "___"),
# This is an enter type rule, not an exit
type = "___")