
[英]Python / Pandas Reading Data with pandas-datareader from Yahoo Issue
[英]Python: Trouble making separate plots using plot_drawdown_underwater from pyfolio and get_data_yahoo from pandas-datareader to plot stock drawdown
我有这个代码:
from pandas_datareader import data as pdr
import pyfolio as pf
myStartDate = "2019-1-1" # (Format: Year-Month-Day)
myEndDate = "2020-11-11" # (Format: Year-Month-Day)
myTickers = ["AAPL", "MSFT"]
myData = pdr.get_data_yahoo(myTickers, myStartDate, myEndDate)
myDailyAdjustedClose = myData[['Adj Close']]
returns = myDailyAdjustedClose.pct_change()
pf.plot_drawdown_underwater(returns)
问题是苹果和微软都绘制在同一个图上。 相反,我想要 2 个单独的图。
而不是“pf.plot_drawdown_underwater(returns)”我也试过:
for x in range(returns.shape[1]):
columnData = returns.iloc[:, x]
pf.plot_drawdown_underwater(columnData)
但我还是得到了同样的结果。
这有效:
from pandas_datareader import data as pdr
import pyfolio as pf
import matplotlib.pyplot as plt
myStartDate = "2019-1-1" # (Format: Year-Month-Day)
myEndDate = "2020-11-11" # (Format: Year-Month-Day)
myTickers = ["AAPL", "MSFT"]
myData = pdr.get_data_yahoo(myTickers, myStartDate, myEndDate)
myDailyAdjustedClose = myData[['Adj Close']]
returns = myDailyAdjustedClose.pct_change()
returnsColumnCount = returns.shape[1]
fig, ax = plt.subplots(returnsColumnCount, 1, figsize=(10, 10))
fig.tight_layout(pad=5)
for x in range(returnsColumnCount):
columnData = returns.iloc[:, x]
pf.plot_drawdown_underwater(columnData, ax=ax[x])
plt.show();
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.