Usando add.rule() para implementar uma regra de entrada
Excelente! Você dominou todos os elementos do processo de construção de regras no quantstrat. Até aqui você adicionou regras passo a passo; agora é hora de juntar tudo e ver o quanto conseguiu absorver deste capítulo.
O oposto de uma regra de saída é uma regra de entrada. Em regras de entrada, orderqty não pode ser definido como "all" porque não existe uma posição inicial sobre a qual atuar. Neste exercício, você vai implementar uma regra de entrada que referencia o sinal longentry na sua estratégia e comprará uma ação de um ativo.
Este exercício faz parte do curso
Negociação financeira em R
Instruções do exercício
- Especifique os argumentos em
add.rule()para implementar sua nova regra de entrada. - Sua regra deve ser acionada quando o sinal
longentryfor igual aTRUE. - Sua regra deve comprar
1ação de um ativo como uma ordem de"market". - O lado da sua regra deve ser
longe replace deve serFALSE. - Sua regra deve comprar na abertura (
Open) do dia seguinte após observar um sinal.
Exercício interativo prático
Experimente este exercício completando este código de exemplo.
# 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 = "___")