# 필요한 라이브러리를 임포트한다
    import numpy as np
    import pandas as pd
    from pandas_datareader import data as web
    import matplotlib.pyplot as plt
    import matplotlib as mpl
    
    # 다섯 개 종목(애플, 페이스북, 아마존, 제너럴일렉트릭, 테슬라)을 갖고 비중을 무수히 바꿔 포트폴리오를 만들 것이다
    tickers = [ 'AAPL', 'F', 'AMZN', 'GE', 'TSLA' ]
    
    # 수정주가를 저장할 데이터프레임 변수(adjClose)를 미리 만들어둔다
    pxclose = pd.DataFrame( )
    
    # for 루프로 다섯 개 종목을 반복하면서 반복 중에 pandas.datareader를 이용해 야후 파이낸스에서 일간 주가 데이터를 가져온다
    for t in tickers:
        pxclose[t] = web.DataReader( t, data_source='yahoo', start='01-01-2019', end='31-12-2019' )[ 'Adj Close' ]

    참고

    for 루프를 마치면 다음과 같이 수정주가를 가져온다. pxclose.head()를 실행하면 다음과 같이 pxclose의 앞부분을 보여준다.

     

    AAPL

    F

    AMZN

    GE

    TSLA

    Date

     

     

     

     

    2019-01-02

    155.21

    7.28

    1539.13

    7.70

    310.11

    2019-01-03

    139.75

    7.17

    1500.28

    7.71

    300.35

    2019-01-04

    145.71

    7.45

    1575.39

    7.87

    317.69

    2019-01-07

    145.39

    7.64

    1629.51

    8.36

    334.95

    2019-01-08

    148.16

    7.71

    1656.57

    8.18

    335.35

    반대로 데이터프레임 끝부분을 보려면 tail() 함수를 사용한다. pxclose.tail()을 실행하면 다음과 같다.

     

    AAPL

    F

    AMZN

    GE

    TSLA

    Date

     

     

     

     

     

    2019-12-24

    283.59

    9.31

    1789.20

    11.178899

    425.25

    2019-12-26

    289.22

    9.29

    1868.77

    11.218859

    430.94

    2019-12-27

    289.11

    9.20

    1869.80

    11.168909

    430.38

    2019-12-30

    290.82

    9.09

    1846.89

    11.06

    414.70

    2019-12-31

    292.95

    9.14

    1847.83

    11.14

    418.32

    신간 소식 구독하기
    뉴스레터에 가입하시고 이메일로 신간 소식을 받아 보세요.