이전 게시물에서 저는 Python 스크립트 내에서 직접 Quandl을 통해 자동차 데이터를 쿼리 할 수있는 방법을 보여주었습니다.
이 게시물에서는 Python으로 Quandl에서 플래티넘 및 팔라듐 교환 가격을 쿼리하는 방법을 문서화합니다. 데이터는 런던 팔라듐 및 플래티넘 시장 (http://www.lppm.com)에서 검증되었습니다.
아래 코드에서 Quandl에서 플래티넘 가격으로 데이터 세트를 검색합니다.
import quandl # API 키 설정 quandl.ApiConfig.api_key = "your key here" import numpy import pandas # quandl에서 numpy 형식으로 데이터를 검색 한 다음 pandas DataFrame으로 변환 data = pandas.DataFrame(quandl.get('LPPM/PLAT', returns="numpy"))
얻은 데이터 세트에는 전 세계 금속 거래소의 일일 개장 및 종가가 포함됩니다. 얻은 데이터 프레임의 헤더를 살펴볼 수 있습니다.
data.head()
Date | USD AM | EUR AM | GBP AM | USD PM | EUR PM | GBP PM | |
---|---|---|---|---|---|---|---|
0 | 1990-04-02 | 471.00 | NaN | 289.65 | 470.50 | NaN | NaN |
1 | 1990-04-03 | 475.80 | NaN | 291.35 | 477.25 | NaN | NaN |
2 | 1990-04-04 | 475.70 | NaN | 289.95 | 476.75 | NaN | NaN |
3 | 1990-04-05 | 481.75 | NaN | 292.60 | 481.85 | NaN | NaN |
4 | 1990-04-06 | 481.00 | NaN | 293.10 | 480.25 | NaN | NaN |
보시다시피 일일 개장 및 종가는 USD, EUR 및 GBP로 표시됩니다. 그러나 일부 열은 비어 있습니다. 검색된 데이터 프레임의 꼬리도 확인하여 이것이 초기 항목의 경우에만 해당되는지 살펴 보겠습니다.
data.tail()
Date | USD AM | EUR AM | GBP AM | USD PM | EUR PM | GBP PM | |
---|---|---|---|---|---|---|---|
7574 | 2020-03-30 | 721.0 | 650.43 | 581.45 | 726.0 | 658.80 | 585.25 |
7575 | 2020-03-31 | 723.0 | 657.87 | 586.61 | 727.0 | 662.72 | 586.53 |
7576 | 2020-04-01 | 723.0 | 660.27 | 585.19 | 714.0 | 653.25 | 576.04 |
7577 | 2020-04-02 | 727.0 | 665.75 | 585.35 | 727.0 | 668.20 | 585.82 |
7578 | 2020-04-03 | 719.0 | 666.05 | 584.55 | 714.0 | 662.34 | 582.62 |
최근에는 모든 통화에 대한 가격이 나열되었습니다. 개장 및 종가가 1990 년과 2020 년 모두 USD로 상장되었으므로 저는 USD 가격에만 집중하기로 결정했습니다.
아래 코드에서는 matplotlib를 사용하여 플래티넘 종가 기록을 USD로 표시합니다.
import matplotlib.pyplot as plt plt.figure(figsize = (10,10)) plt.plot(data["Date"], data["USD PM"],color = "red") plt.title("Daily platinum closing prices",size=26) plt.ylabel("closing price [USD]",size = 16) plt.xlabel("date", size = 16)
Text(0.5, 0, 'date')
아래 코드에서 팔라듐 가격 기록에 대해 위의 워크 플로를 반복합니다.
먼저 Quandl에서 데이터를 쿼리합니다.
data = pandas.DataFrame(quandl.get('LPPM/PALL', returns="numpy"))
다음으로 데이터 프레임의 헤더를 검토합니다.
data.head()
Date | USD AM | EUR AM | GBP AM | USD PM | EUR PM | GBP PM | |
---|---|---|---|---|---|---|---|
0 | 1990-04-02 | 128.00 | NaN | 78.70 | 127.65 | NaN | 78.55 |
1 | 1990-04-03 | 128.35 | NaN | 78.60 | 128.50 | NaN | 78.75 |
2 | 1990-04-04 | 128.35 | NaN | 78.25 | 128.00 | NaN | 77.90 |
3 | 1990-04-05 | 128.40 | NaN | 78.00 | 127.75 | NaN | 77.65 |
4 | 1990-04-06 | 128.75 | NaN | 78.45 | 128.50 | NaN | 78.40 |
그리고 데이터 프레임의 꼬리도 검토합니다.
data.tail()
Date | USD AM | EUR AM | GBP AM | USD PM | EUR PM | GBP PM | |
---|---|---|---|---|---|---|---|
7574 | 2020-03-30 | 2236.0 | 2017.14 | 1803.23 | 2242.0 | 2034.48 | 1807.34 |
7575 | 2020-03-31 | 2317.0 | 2108.28 | 1879.92 | 2307.0 | 2103.01 | 1861.23 |
7576 | 2020-04-01 | 2314.0 | 2113.24 | 1872.93 | 2236.0 | 2045.75 | 1803.95 |
7577 | 2020-04-02 | 2288.0 | 2095.24 | 1842.19 | 2123.0 | 1951.29 | 1710.72 |
7578 | 2020-04-03 | 2234.0 | 2069.48 | 1816.26 | 2140.0 | 1985.16 | 1746.23 |
다시 말하지만, 저는 USD의 종가에 초점을 맞추 었습니다. Python에서 matplotlib를 사용하여 아래 가격 기록을 플로팅합니다.
plt.figure(figsize = (10,10)) plt.plot(data["Date"], data["USD PM"],color = "red") plt.title("Daily palladium closing prices",size=26) plt.ylabel("closing price [USD]",size = 16) plt.xlabel("date", size = 16)
Text(0.5, 0, 'date')
최적화 및 시뮬레이션을 전문으로하는 산업 엔지니어 (R, Python, SQL, VBA)
Leave a Reply