通過ricequant監測雪球輿情數據

import pandas as pd
import matplotlib
import matplotlib.pyplot as plt
import datetime

#general plot config
#print(plt.style.available)
matplotlib.style.use('classic')
matplotlib.style.use('seaborn')
plt.rcParams["font.family"] = "Microsoft YaHei"

#general trading date
date1 = get_previous_trading_date(datetime.date.today())
date2 = get_previous_trading_date(date1)
date3 = get_previous_trading_date(date2)
date4 = get_previous_trading_date(date3)
date5 = get_previous_trading_date(date4)
date6 = get_previous_trading_date(date5)

df = xueqiu.top_stocks('new_followers',date1 ,'1d',10)
df['symbol'] = [instruments(id).symbol for id in df['order_book_id']]
df = df.set_index('symbol');
prices = [get_price(id, date6, date1,fields='close') for id in df['order_book_id']]
df['1day'] = [100*(price[-1]/price[-2]-1) for price in prices]
df['5day'] = [100*(price[-1]/price[0]-1) for price in prices]
ax = df[['new_followers','1day','5day']].plot(kind = 'bar',secondary_y = ['1day','5day'],mark_right = True,title = '雪球 New Followers '+ str(date1))
ax.right_ax.set_ylabel('漲幅%')
ax.set_xlabel('')
ax.grid(True)
ax.right_ax.grid(False)
left_min,left_max = ax.get_ylim()
right_min,right_max = ax.right_ax.get_ylim()
ax.right_ax.set_ylim(right_min,right_max+10)
if right_min<0:
    ax.set_ylim([left_max * right_min/(right_max+10),left_max])
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章