add.rule()로 진입 규칙 구현하기
훌륭해요! 이제 quantstrat에서 규칙을 만드는 모든 요소를 익히셨습니다. 지금까지는 규칙을 단계별로 추가했지만, 이제는 모두 종합해 보며 이 장의 내용을 얼마나 잘 이해했는지 확인해 보겠습니다.
청산(Exit) 규칙의 반대는 진입(Enter) 규칙입니다. 진입 규칙에서는 초기 포지션이 없기 때문에 orderqty를 "all"로 설정할 수 없습니다. 이 연습 문제에서는 전략의 longentry 시그널을 참조하여 자산 1주를 매수하는 진입 규칙을 구현해 보겠습니다.
이 연습은 강의의 일부입니다
R로 배우는 금융 트레이딩
연습 안내
- 새로운 진입 규칙을 구현하도록
add.rule()의 인자를 지정하세요. longentry시그널이TRUE일 때 규칙이 발동되어야 합니다.- 규칙은
"market"주문으로 자산1주를 매수해야 합니다. - 규칙의 side는
long, replace는FALSE여야 합니다. - 시그널이 관측된 다음 날의
Open에 매수하도록 설정하세요.
실습형 인터랙티브 연습
이 예제를 이 샘플 코드를 완성하여 풀어보세요.
# 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 = "___")