1. 학습
  2. /
  3. 강의
  4. /
  5. R로 배우는 금융 트레이딩

Connected

연습 문제

전략 실행하기

quantstrat에서 전략을 만들어 주셨네요. 축하합니다! 정리하면, 이 전략은 서로 다른 지표 3개와 시그널 5개를 사용합니다. 전략은 DVO_2_126 지표의 임계값이 20 미만이고 SMA50이 SMA200보다 커야 매수합니다. 매도는 DVO_2_126이 80을 상향 돌파하거나 SMA50이 SMA200 아래로 하향 돌파할 때 발생합니다.

이 전략이 제대로 작동하려면 다음의 다섯 가지 시그널을 지정해야 합니다:

  1. SMA50이 SMA200보다 큰지 확인하는 sigComparison;
  2. cross를 FALSE로 설정하고 DVO_2_126이 20 미만일 때의 sigThreshold;
  3. 두 조건을 결합하고 cross를 TRUE로 설정하는 sigFormula;
  4. SMA50이 SMA200보다 작은 경우의 sigCrossover;
  5. cross를 TRUE로 설정하고 DVO_2_126이 80을 초과할 때의 sigThreshold.

전략은 각 거래에 $100,000(여러분의 initeq)를 투자하며, DVO_2_126이 20 부근에서 진동하면 소폭의 달러 코스트 평균 효과가 있을 수 있습니다(다만 초기 배분에 비해 영향은 대체로 미미합니다).

이 마지막 장에서는 포트폴리오의 실제 결과를 확인하는 방법을 배웁니다. 하지만 그 전에 결과를 생성하려면 전략을 실행하고, quantstrat가 모든 내역을 기록하도록 기본 코드를 몇 줄 더 작성해야 합니다. 이번 연습 문제의 코드는 앞으로도 복사해 붙여 넣어 사용할 가능성이 높습니다.

지침

100 XP
  • applyStrategy()를 사용해 여러분의 전략(strategy.st)을 포트폴리오(portfolio.st)에 적용하세요. 결과는 객체 out에 저장하세요.
  • 전략 결과를 기록하려면 필요한 함수를 실행하세요. updatePortf()를 사용하고 daterange를 설정한 뒤, updateAcct()와 updateEndEq()도 실행합니다.
  • 이 정보를 바탕으로 마지막 거래가 이루어진 날짜를 찾아보세요.