前面三次都一步一步完善和探索,在最終系統展示上使用的K線圖必須要符合中國證券交易的習慣,紅色表示上漲,綠色表示下跌。
在最終系統實現上是寫成函數形式進行調用的。
函數如下
#path是數據的路徑,K表示的最後存儲文件名
def Drawmpf1(path,k):
#數據處理
df= pd.read_csv(path)
df.columns = ['Date','Open','Close','High', 'Low','Volume',"Money"]
df.head()
df =df.set_index(["Date"])
df.index = pd.DatetimeIndex(df.index)# 可直接多索引進行操作
open1=df['Open']
high2=df['High']
low3=df['Low']
close4=df['Close']
volume5=df['Volume']
money6=df['Money']
data=pd.concat([open1,high2,low3,close4,volume5,money6],keys=['Open', 'High','Low' ,'Close','Volume',"Money"],axis=1)
#圖像繪制
apds = [mpf.make_addplot((df["Money"][-120:-1]),panel='lower',color='b',linestyle='dotted')]
save = dict(fname=k+".jpg",dpi=120,pad_inches=0)
#紅色上漲,綠色下跌
mc = mpf.make_marketcolors(up='r',down='g',edge='inherit',
wick={
'up':'r','down':'g'},
volume='cornflowerblue',
ohlc='i'
)
s = mpf.make_mpf_style(marketcolors=mc)
mpf.plot(data.iloc[-120:-1],addplot=apds,figscale=1,mav=(5,10,20),volume=True,figratio=(17,7),type='candle', style=s,savefig=save)
#
調用函數
1.直接調用
Drawmpf1(path,'SAVE')
圖片會存在對應的目錄下。
2.循環調用
一次處理多個文件
#文件夾目錄
l=["ETF/"]
for i in l:
for k in os.listdir(i):
path=i+k
#輸出對應路徑
print(path)
Drawmpf2(path,k)
使用mplfinance繪制K線圖結束,比較之前使用的確實簡單和方便了很多。