IT/Python

[Python] 파이썬을 이용한 주식 데이터 분석

멋진 선배 2025. 1. 21. 16:51
반응형

파이썬을 이용한 주식 데이터 분석에 대해서 알아보도록 하겠습니다. 주식 투자에 관심이 있거나 데이터 분석을 배우고 싶으신 분들에게 유용한 정보가 될 거예요.

파이썬으로 주식데이터 분석하기

파이썬은 데이터 분석에 매우 적합한 프로그래밍 언어 입니다. 특히 주식 데이터 분석에 있어서 강력한 도구가 될 수 있죠. 그럼 어떻게 파이썬을 이용해 주식 데이터를 분석할 수 있는지 단계별로 알아보겠습니다.

1.필요한 라이브러리 설치하기

먼저, 주식 데이터 분석에 필요한 파이썬 라이브러리들을 설치해야 합니다. 주로 사용되는 라이브러리는 다음과 같아요.

pandas :데이터 처리와 분석을 위한 라이브러리

numpy : 수치 계산을 위한 라이브러리

matplotlib : 데이터 시각화를 위한 라이브러리

FinanceDataReader : 금융 데이터를 쉽게 가져올 수 있는 라이브러리

이 라이브러리들은 pip 명령어를 사용해 쉽게 설치할 수 있습니다. 예를 들어, FinanceDataReader를 설치하면 다음과 같이 입력하면 돼요.

pip install finance-datareader

2.주식 데이터 가져오기

이제 실제 수직 데이터를 가져와 볼까요? FinanceDataReader를 사용하면 아주 간단하게 할 수 있습니다. 예를 들어 카카오 뱅크 주식 데이터를 가져오는 코드는 다음과 같아요.

import FinanceDataReader as fdr

# 카카오뱅크 주식 코드: 323410
df = fdr.DataReader('323410')
print(df.head())

이 코드를 실행하면 카카오뱅크의 주식 데이터가 데이터프레임 형태로 출력됩니다. 시가, 고가, 저가, 종가, 거래량 등의 정보를 볼 수 있어요.

3.데이터 전처리하기

데이터를 가져왔다면 이제 분석하기 좋은 형태로 전처리해야 합니다. 예를 들어, 날짜를 인덱스로 설정하거나, 필요한 컬럼만 선택하는 등의 작업을 할 수 있어요.

# 날짜를 인덱스로 설정
df.set_index('Date', inplace=True)

# 종가 데이터만 선택
close_prices = df['Close']

4.데이터 분석하기

이제 본격적으로 데이터를 분석해 볼까요? 주식 데이터 분석에서 자주 사용되는 기법들을 살펴보겠습니다.

 

이동평균 계산하기

이동평균은 주가의 추세를 파악하는 유용한 지표 입니다. pandas를 사용하면 쉽게 계산할 수 있어요.

# 20일 이동평균 계산
df['MA20'] = df['Close'].rolling(window=20).mean()

 

수익률 계산하기

일별 수익률이나 누적 수익률을 계산하는 것도 중요한 분석 과정 입니다.

# 일별 수익률 계산
df['Daily_Return'] = df['Close'].pct_change()

# 누적 수익률 계산
df['Cumulative_Return'] = (1 + df['Daily_Return']).cumprod()

5.데이터 시각화하기

분석한 결과를 시각화하면 더 직관적으로 이해할 수 있습니다. matplotlib을 사용해 그래프를 그려볼까요?

import matplotlib.pyplot as plt

plt.figure(figsize=(12, 6))
plt.plot(df.index, df['Close'], label='종가')
plt.plot(df.index, df['MA20'], label='20일 이동평균')
plt.legend()
plt.title('카카오뱅크 주가 추이')
plt.show()

이렇게 하면 카카오뱅크의 주가 추이와 20일 이동평균선을 한눈에 볼 수 있는 그래프가 그려 집니다.

 

6.전체 코드

import FinanceDataReader as fdr
import pandas as pd
import matplotlib.pyplot as plt

# 1. 주식 데이터 가져오기 (카카오뱅크: 323410)
df = fdr.DataReader('323410')

# 2. 데이터 전처리
df.set_index('Date', inplace=True)

# 3. 이동평균 계산 (20일)
df['MA20'] = df['Close'].rolling(window=20).mean()

# 4. 수익률 계산
df['Daily_Return'] = df['Close'].pct_change()
df['Cumulative_Return'] = (1 + df['Daily_Return']).cumprod()

# 5. 데이터 시각화
plt.figure(figsize=(12, 6))
plt.plot(df.index, df['Close'], label='종가')
plt.plot(df.index, df['MA20'], label='20일 이동평균')
plt.legend()
plt.title('카카오뱅크 주가 분석')
plt.show()

마치며

지금까지 파이썬을 이용한 주식 데이터 분석의 기본적인 과정을 알아보았습니다. 이 외에도 다양한 분석 기법과 지표들이있어요. 예를 들어, 상관관계 분석, 변동성 분석, 기술적 지표 계산 등을 추가로 학습하면 더 깊이 있는 분석이 가능할 거예요.

 

파이썬을 이용한 주식 데이터 분석은 초보자도 쉽게 시작할 수 있지만, 동시에 고급 사용자들도 복잡한 분석을 수행할수 있는 강력한 도구 입니다. 여러분도 이 글을 시작으로 주식 데이터 분석의 세계에 발을 드려보는 건 어떨까요?

 

 

반응형