|
| 1 | +import pandas as pd |
| 2 | +import mplfinance as mpf |
| 3 | +from matplotlib.widgets import MultiCursor |
| 4 | + |
| 5 | +idf = pd.read_csv('../data/SPY_20110701_20120630_Bollinger.csv',index_col=0,parse_dates=True) |
| 6 | +df = idf.loc['2011-07-01':'2011-12-30',:] |
| 7 | + |
| 8 | + |
| 9 | +exp12 = df['Close'].ewm(span=12, adjust=False).mean() |
| 10 | +exp26 = df['Close'].ewm(span=26, adjust=False).mean() |
| 11 | + |
| 12 | +macd = exp12 - exp26 |
| 13 | + |
| 14 | +signal = macd.ewm(span=9, adjust=False).mean() |
| 15 | +histogram = macd - signal |
| 16 | + |
| 17 | +apds = [mpf.make_addplot(exp12,color='lime'), |
| 18 | + mpf.make_addplot(exp26,color='c'), |
| 19 | + mpf.make_addplot(histogram,type='bar',width=0.7,panel=1, |
| 20 | + color='dimgray',alpha=1,secondary_y=False), |
| 21 | + mpf.make_addplot(macd,panel=1,color='fuchsia',secondary_y=True), |
| 22 | + mpf.make_addplot(signal,panel=1,color='b',secondary_y=True), |
| 23 | + ] |
| 24 | + |
| 25 | +fig, axlist = mpf.plot(df,type='candle',addplot=apds,figscale=1.1,figratio=(8,5),title='\nMACD', |
| 26 | + style='blueskies',volume=True,volume_panel=2,panel_ratios=(6,3,2),returnfig=True) |
| 27 | + |
| 28 | +multi = MultiCursor(fig.canvas, axlist, color='r',lw=1.2) |
| 29 | +mpf.show() |
0 commit comments