파이썬 – Python과 판다를 야후 파이낸스 API 활용 예제 2 – 암호화폐등

Yahoo, python
Table of Contents

    yfinance 라이브러리는 주식 데이터를 분석하는 데 자주 사용되지만, 주식 외에도 다양한 분야에서 활용될 수 있습니다. 아래는 yfinance 라이브러리를 사용할 수 있는 몇 가지 분야와 그 예시들을 간단하게 구현 해 봤습니다.

    암호화폐(Cryptocurrency)

    라이브러리를 사용하여 암호화폐의 가격 데이터를 분석할 수 있습니다. 암호화폐 간의 상관관계 분석, 이동평균 및 변동성 분석을 통해 투자 전략을 수립할 수 있습니다.

    예제: 암호화폐 가격 데이터 분석

    import yfinance as yf
    import seaborn as sns
    import matplotlib.pyplot as plt
    plt.rcParams['font.family'] ='Malgun Gothic'
    plt.rcParams['axes.unicode_minus'] =False
    
    # 암호화폐 티커 목록
    tickers = ["BTC-USD", "ETH-USD", "LTC-USD"]
    
    # 지난 1년간의 일일 가격 데이터를 가져옵니다.
    data = yf.download(tickers, period="1y", interval="1d")["Adj Close"]
    
    # 각 암호화폐의 일일 수익률을 계산합니다.
    returns = data.pct_change()
    
    # 암호화폐 간의 상관관계 매트릭스를 계산합니다.
    corr_matrix = returns.corr()
    
    # 상관관계 매트릭스를 시각화합니다.
    plt.figure(figsize=(10, 8))
    sns.heatmap(corr_matrix, annot=True, cmap='coolwarm', linewidths=0.5)
    plt.title('암호화폐 간의 상관관계 매트릭스')
    plt.show()

    외환(Forex)

    를 사용하여 외환 시장의 통화 쌍 데이터를 분석할 수 있습니다. 주요 통화 쌍의 가격 변동, 상관관계 및 이동평균 분석을 통해 외환 거래 전략을 수립할 수 있습니다.

    예제: 통화 쌍 데이터 분석

    
    import yfinance as yf
    import seaborn as sns
    import matplotlib.pyplot as plt
    plt.rcParams['font.family'] ='Malgun Gothic'
    plt.rcParams['axes.unicode_minus'] =False
    
    # 통화 쌍 티커 목록
    tickers = ["EURUSD=X", "JPY=X", "GBPUSD=X",  "KRW=X",]
    
    # 지난 1년간의 일일 가격 데이터를 가져옵니다.
    data = yf.download(tickers, period="1y", interval="1d")["Adj Close"]
    
    # 각 통화 쌍의 일일 수익률을 계산합니다.
    returns = data.pct_change()
    
    # 통화 쌍 간의 상관관계 매트릭스를 계산합니다.
    corr_matrix = returns.corr()
    
    # 상관관계 매트릭스를 시각화합니다.
    plt.figure(figsize=(10, 8))
    sns.heatmap(corr_matrix, annot=True, cmap='coolwarm', linewidths=0.5)
    plt.title('통화 쌍 간의 상관관계 매트릭스')
    plt.show()

    원자재(Commodities)

    yfinance를 사용하여 원자재의 가격 데이터를 분석할 수 있습니다. 금, 은, 원유 등의 가격 변동 및 상관관계를 분석하여 투자 전략을 수립할 수 있습니다.

    예제: 원자재 가격 데이터 분석

    
    import yfinance as yf
    import seaborn as sns
    import matplotlib.pyplot as plt
    plt.rcParams['font.family'] ='Malgun Gothic'
    plt.rcParams['axes.unicode_minus'] =False
    
    # 원자재 티커 목록
    tickers = ["GC=F", "SI=F", "CL=F"]
    
    # 지난 1년간의 일일 가격 데이터를 가져옵니다.
    data = yf.download(tickers, period="1y", interval="1d")["Adj Close"]
    
    # 각 원자재의 일일 수익률을 계산합니다.
    returns = data.pct_change()
    
    # 원자재 간의 상관관계 매트릭스를 계산합니다.
    corr_matrix = returns.corr()
    
    # 상관관계 매트릭스를 시각화합니다.
    plt.figure(figsize=(10, 8))
    sns.heatmap(corr_matrix, annot=True, cmap='coolwarm', linewidths=0.5)
    plt.title('원자재 간의 상관관계 매트릭스')
    plt.show()

    상장지수펀드(ETFs)

    ETF의 성과를 분석하여 다양한 자산군에 대한 투자를 평가할 수 있습니다. ETF 간의 상관관계 및 수익률 분석을 통해 포트폴리오 다각화를 도울 수 있습니다.

    예제: ETF 데이터 분석

    
    import yfinance as yf
    import seaborn as sns
    import matplotlib.pyplot as plt
    plt.rcParams['font.family'] ='Malgun Gothic'
    plt.rcParams['axes.unicode_minus'] =False
    # ETF 티커 목록
    tickers = ["SPY", "QQQ", "EFA"]
    
    # 지난 1년간의 일일 가격 데이터를 가져옵니다.
    data = yf.download(tickers, period="1y", interval="1d")["Adj Close"]
    
    # 각 ETF의 일일 수익률을 계산합니다.
    returns = data.pct_change()
    
    # ETF 간의 상관관계 매트릭스를 계산합니다.
    corr_matrix = returns.corr()
    
    # 상관관계 매트릭스를 시각화합니다.
    plt.figure(figsize=(10, 8))
    sns.heatmap(corr_matrix, annot=True, cmap='coolwarm', linewidths=0.5)
    plt.title('ETF 간의 상관관계 매트릭스')
    plt.show()