Advance Deep Learning/[Quant] 금융 파이썬 쿡북 6

시계열 모델링 - ARIMA

"금융 파이썬 쿡북 Ch3. 시계열 모델링 "의 내용을 기반으로 작성하였습니다. (실습 깃헙) 1. ARIMA 상세 ARIMA 모델의 내용은 본 책과 고려대 김성범 교수님의 유튜브 강의를 참고하였다. (좋은 내용 공유 감사드립니다.) https://www.youtube.com/watch?v=ma_L2YRWMHI ARIMA는 데이터의 자기 상관을 설명하는 방법을 사용한다. 이는 ARMA(Autoregressive Moving Average) 모델을 확장한 것이다. ARIMA의 구성요소에 대해 살펴보자. AR (Autoregressive) 모델 관측값과 지연값 사이의 관계를 사용 모멘텀과 평균 회귀 효과를 반영 I (Integration) 시계열의 차분을 의미, 이전 기간의 값을 현재 기간의 값에서 차감해 ..

시계열 모델링 - 지수 평활법

"금융 파이썬 쿡북 Ch3. 시계열 모델링 "의 내용을 기반으로 작성하였습니다. (실습 깃헙) 1. 지수 평활법 (Exponential Smoothing) 지수 평활법은 비정상 데이터(trend, seasonality를 띄는 데이터)에 사용하며 예측은 과거 관측값의 가중 평균을 사용한다는 점에서 지수 이동 평균과 유사하게 작동한다. 이 모델은 시간이 지나면서 가중치가 기하급수적으로 작아짐에 따라 최근 관측에 더 중점을 둔다. 이번 포스팅에서는 단순 지수 평활과 홀트 모델과 그 확장 모델에 대해 다뤄보겠다. 1-2. 단순 지수 평활 (SES, SImple Exponential Smoothing) 지수 평활의 가장 기본적인 모델이다. 이 모델은 고려 중인 시계열이 trend나 seasonality를 띄지 않..

시계열 정상성 검정 & 교정

"금융 파이썬 쿡북 Ch3. 시계열 모델링 "의 내용을 기반으로 작성하였습니다. (실습 깃헙) 1. 정상성 정상성(stationary) 시계열이란 평균, 분산, 공분산 등의 통계적 속성이 시간에 대해 일정한 시계열을 의미한다. 이런 정상성은 미래에 대한 모델링과 예측을 정확하게 해주므로 시계열에서의 바람직한 특성이다. 반대로 비정상성 데이터의 몇가지 단점은 다음과 같다. 모델의 분산이 잘못 지정될 수 있다. 모델의 적합화를 악화시킨다. 데이터의 시간 - 의존성이라는 귀중한 패턴을 활용할 수 없다. 2. 정상성 검정 정상성 검정을 위해서는 아래 세가지 방법을 활용 및 구현하였다. 데이터는 이전 '시계열 분해' 에서 사용한 데이터와 동일하다. https://needmorecaffeine.tistory.com..

시계열 분해

"금융 파이썬 쿡북 Ch3. 시계열 모델링 "의 내용을 기반으로 작성하였습니다. (실습 깃헙) 1. 시계열 분해 시계열 분해의 목표는 시계열을 여러 구성 요소로 나워 데이터에 대한 이해를 높이는 것이다. 이를 통해 모델링의 복잡성과 각 구성 요소를 정확하게 캡처하고 따랴아 하는 접근 방식에 대한 통찰력을 얻을 수 있다. 1-1. 시계열 구성 요소 이 때 언급되는 각 구성요소는 체계적과 비체계적인 두 가지 유형을 나눌 수 있다. 체계적 구성요소 Level : 계열의 평균값 Trend : 추세의 추정치, 즉 특정시점에서 연속 시점 사이의 값 변화. 시계열의 기울기와 연관됨. Seasonality : 단기 사이클로 반복되는 평균으로부터의 차이 비체계적 구성요소 Noise : 시계열 상의 랜덤 변화 1-2. 시..

볼린저 밴드 계산과 매수/매도 전략 테스트

"금융 파이썬 쿡북 Ch2. 파이썬에서의 기술적 분석 "의 내용을 기반으로 작성하였습니다. (실습 깃헙) 1. 볼린저 밴드 (Bollinger Band)란? 볼린저 밴드란 시간에 따른 특정 자산 가격과 변동성의 정보를 도출하는데 사용하는 통계적 방법이다. 볼린저 밴드를 구하려면 지정된 윈도우(일반적으로 20일)를 사용해 시계열 가격의 이동 평균과 표준편차를 계산해야 한다. 이후 상, 하한 밴드를 이동 평균 상, 하의 표준 편차의 K배(일반적으로 2배)로 설정한다. 이 때 밴드는 변동성이 증가하면 넓어지고 변동성이 감소하면 축소한다. 더욱 자세한 설명은 이 곳에서 확인 가능하다. https://wikidocs.net/87171 01) 볼린저밴드 (Bollinger Bands) 개념 [TOC] # 볼린저밴드..

단순이동평균(SMA)를 기반으로 전략 백테스팅

"금융 파이썬 쿡북 Ch2. 파이썬에서의 기술적 분석 "의 내용을 기반으로 작성하였습니다. (실습 깃헙) 1. 백테스팅이란? 과거데이터를 활용해 자신의 알고리즘, 투자전략 원칙을 검증하는 과정하는 것이다. 초기투자금액 설정, 시작일이나 종료일을 설정하거나 매매나 수익의 분석을 제공하는 등의 성과를 분석하여 어느 정도의 수익을 낼 수 있는 지를 확인하는 것이다. 즉, 과거의 데이터(Back)과 알고리즘을 테스트한다는 의미인 테스팅(testing)이 결합되어 사용된 용어이다. (Source : https://inshang.tistory.com/19) 2. 백테스트 프레임워크 backtrader 백테스트를 위해 사용하는 프레임워크는 다양한데 그 중에서도 backtrader를 사용해 보겠다. (https://w..