1. 학습
  2. /
  3. 강의
  4. /
  5. Python으로 배우는 시계열 분석

Connected

연습 문제

드리프트 포함 랜덤 워크

이전 연습 문제에서는 랜덤 워크를 따르는 주가를 시뮬레이션했어요. 이번에는 두 가지를 확장해 보겠습니다.

  • 드리프트가 있는 랜덤 워크를 살펴보겠습니다. 주가처럼 많은 시계열은 랜덤 워크이지만 시간이 지나면서 위로 조금씩 이동(드리프트)하는 경향이 있어요.
  • 이전 연습 문제에서는 랜덤 워크의 잡음이 가법적이었어요. 즉, 무작위 정규 분포의 가격 변화가 이전 가격에 더해졌죠. 하지만 이렇게 더하면 이론적으로 가격이 음수가 될 수 있어요. 이제는 잡음을 곱셈형으로 바꿔 보겠습니다. 무작위 정규 분포의 변화를 총수익률이 되도록 1을 더한 뒤, 이를 이전 가격에 곱해요.

지침

100 XP
  • 평균 0.1%, 표준편차 1%인 정규분포에서 500개의 곱셈형 "steps"(수익률)를 np.random.normal()로 생성하고, 총수익률을 얻기 위해 1을 더하세요.
  • 주가 P를 시뮬레이션하세요:
    • numpy의 .cumprod() 메서드로 steps의 누적곱을 구하세요.
    • 총수익률의 누적곱에 100을 곱해 시작값이 100이 되도록 하세요.
  • 드리프트가 있는 랜덤 워크를 그래프로 그리세요.