반응형
1. 이동평균선이란?
종가기준 1320원 1300원 1300원 이렇게 3가지 행의 이동평균선은 ? -> 다 더해서 3으로 나누면 된다.
평균과 비슷한 개념이고
얼마나 이동했느냐 (얼마나 시간이 흘렀는지) 에 대한 평균이라고 보면 된다.
주로 트렌드를 이해할때 쓰이며 이평선이라고 부르기도 한다.
상향세에 있는지 ? 하향세에 있는지와 같은 분석을 진행할수 있다.
2. 이동평균선을 SQL에서 구하는 방법
window functions.를 이용해서 구할수 있다.
윈도우 함수를 사용하는 쿼리를 사용할 수 있다.
예를 들어, 3의 슬라이딩 윈도우 크기를 가진 SQL의 예시를 보면
SELECT id,
value,
AVG(value) OVER (ORDER BY id ROWS BETWEEN 2 PRECEDING AND CURRENT ROW) as 이동평균선
FROM data
의 결과로
id | value | moving_avg
---+-------+-----------
1 | 10 | 15.000000
2 | 20 | 15.000000
3 | 30 | 20.000000
4 | 40 | 30.000000
5 | 50 | 40.000000
위와 같은 결과를 얻을 수 있다.
참고로 ORDER BY 구문은 행이 처리되어야하는 순서를 지정하고,
ROWS BETWEEN 2 PRECEDING AND CURRENT ROW는 윈도우 크기를 지정한다.
AVG 함수는 각 윈도우에 대한 평균을 계산한다
이동 평균 값은 현재 행과 2개의 앞 행의 값을 기반으로 각 행마다 계산된다.
2 PRECEDING -> 2개 앞 으로 !
BETWEEN 2 PRECEDING AND CURRENT ROW -> 2개 앞으로 부터 현재까지 라는 뜻
반응형
댓글