利用tushare獲取股票數據

2021-02-21 Stata and Python數據分析

本文作者:方   言,中南財經政法大學金融學院

本文編輯:王子一

技術總編:張馨月

  爬蟲俱樂部於2020年暑期在線上舉辦的Stata與Python編程技術訓練營和Stata數據分析法律與制度專題訓練營在不久前已經圓滿結束啦~應廣大學員需求,我們的課程現已在騰訊課堂全面上線,且繼續提供答疑服務。現在關注公眾號並在朋友圈轉發推文《來騰訊課堂學Stata和Python啦》或《8月Stata數據分析法律與制度專場來啦!》,即可獲得600元課程優惠券,集贊50個再領200元課程優惠券!(截圖發至本公眾號後臺領取)原價2400元的課程,現在只要1600元!   想要獲取股票交易數據的你,還在各種交易平臺上機械的點擊滑鼠進行下載嗎?如果你恰好是這種情況,那麼恭喜你,在看完這篇推文以後就可以輕鬆獲取股票交易數據啦~在Stata中,我們可以使用爬蟲俱樂部開發的cnstock和cntrade等命令來輕鬆獲取股票數據,今天我們介紹Python中獲取數據的方法——tushare。tushare不僅僅可以獲取有關股票的交易數據,很多金融數據在這個庫中都能夠獲取,下面我們來一起看看它的基本使用。
一、初識tusharetushare是一個免費、開源的Python財經數據接口包。主要實現對股票等金融數據從數據採集、清洗、加工到存儲的過程,能夠為金融分析人員提供全面、整潔的數據,並保存為DataFrame類型,便於導出為我們常用的Excel格式。tushare現已升級到tushare pro版本,新版本在數據穩定性和獲取速率上實現了大幅提升。tushare pro已經將股票、期貨、數字貨幣、行業大數據、外匯等金融市場全部納入到一個接口中,相比於原來的tushare接口,這次的升級可謂是飛躍式的。二、安裝Tushare以及配置pro版本

下載方式1

由於Python下載需要訪問外網,因此獲取tushare時如果沒有強大的網絡支持,可能無法下載成功,因此在安裝網絡超時的情況下,可嘗試國內的pip源,如
pip install tushare -i https:

下載方式2

訪問https://pypi.python.org/pypi/tushare/ 進行下載安裝 ,執行 python setup.py install

下載方式3

訪問https://github.com/waditu/tushare, 將項目下載或者複製到本地,進入到項目的目錄下,執行:python setup.py install接下來,我們來看一下tushare pro的註冊與安裝。與原有pip install tushare不同的是,這次的pro版本需要進行註冊。註冊網址:https://tushare.pro/ ,點擊右上角的註冊,在註冊完成後,我們可以在個人主頁中獲取接口Token,只有利用Token才能夠通過tushare獲取相關數據。

在獲取Token以後,我們還需要對其進行初始化配置:
import tushare as tsts.set_token('Your Token')   pro = ts.pro_api()    

設置完成以後我們就可以利用tushare的pro接口獲取股票的交易數據啦,為了讓大家更直觀地了解tushare的用法,我們通過幾個案例來進一步了解吧~三、舉例

1.獲取股票的基本信息

tushare中的金融數據非常多,它可以提供的基本信息主要包括如下參數:

想要獲取上述基本信息,可以通過pro.stock_basic接口進行獲取,stock_basic能夠獲取股票代碼、股票名稱、所在地域、所屬行業以及上市日期。鍵入以下命令:
pool = pro.stock_basic()print(pool)

pro.stock_basic接口也能夠通過fields選項選擇自己需要的參數,如我們需要獲取股票的英文名稱和交易貨幣,那麼我們可以通過fields選項下的參數enname和curr_type進行獲取:
data = pro.stock_basic(fields='enname,curr_type')print(data)

2.獲取日線行情數據get_today_all()或pro.daily

(1)get_today_all()

get_today_all()可以一次性獲取當前交易所有股票的行情數據(如果是節假日,即為上一交易日),基本使用方法如下:
import tushare as tsts.get_today_all()

上述結果變量名從左至右分別表示代碼、名稱、漲跌幅、現價、開盤價、最高價、最低價、收盤價、成交量、換手率、成交額、市盈率、市淨率、總市值、流通市值。

(2)pro.daily

使用pro.daily同樣可以獲取日線數據,方法如下:
pro = ts.pro_api()df = pro.daily()print(df)

從左至右分別表示代碼、交易日期、開盤價、最高價、最低價、收盤價、昨日收盤價、漲跌額、漲跌幅、成交量(手)、成交額(千元)。

(3)二者區別

與get_today_all()接口不同的是,daily接口可以選擇獲取單只股票或多隻股票:
pro = ts.pro_api()df = pro.daily(ts_code='000001.SZ', start_date='20180701', end_date='20180718')  df = pro.daily(ts_code='000001.SZ,600000.SH', start_date='20180701', end_date='20180718')

需要注意的是,tushare pro接口規定基礎積分每分鐘內最多調取500次,每次5000條數據,相當於23年歷史,用戶獲得超過5000積分正常調取無頻次限制。今天的介紹就到這裡,在之後的推文中我們將會繼續分析tushare的基本使用及其可視化,大家敬請期待~

微信公眾號「Stata and Python數據分析」分享實用的stata、python等軟體的數據處理知識,歡迎轉載、打賞。我們是由李春濤教授領導下的研究生及本科生組成的大數據處理和分析團隊。

此外,歡迎大家踴躍投稿,介紹一些關於stata和python的數據處理和分析技巧。投稿郵箱:statatraining@163.com
投稿要求:
1)必須原創,禁止抄襲;
2)必須準確,詳細,有例子,有截圖;
注意事項:
1)所有投稿都會經過本公眾號運營團隊成員的審核,審核通過才可錄用,一經錄用,會在該推文裡為作者署名,並有賞金分成。
2)郵件請註明投稿,郵件名稱為「投稿+推文名稱」。
3)應廣大讀者要求,現開通有償問答服務,如果大家遇到有關數據處理、分析等問題,可以在公眾號中提出,只需支付少量賞金,我們會在後期的推文裡給予解答。

相關焦點

  • 利用tushare獲取股票數據及實現可視化
    在上周的推文《利用tushare獲取股票數據》中,我們介紹了tushare的安裝以及如何獲取股票交易的數據和數據,今天我們將繼續介紹tushare的用法並實現數據的可視化,一起往下看吧~一、獲取實時分筆數據:get_realtime_quotes()在tushare中,可以使用get_realtime_quotes()實時獲取股票當前報價和成交信息,從而實現實時的監測交易量和價格的變化。
  • 金融數據獲取之tushare
    高質量的結構化數據可以為quant節約大量時間。tushare作為一個免費Python財經數據接口,為想要探索量化領域的學習者打開了一扇方便的大門。今天我們就來介紹一下tushare中主要函數的用法。-28','2017-09-03')]1.1 歷史數據# get_k_data 函數獲取歷史數據# 將多個時間段的數據拼接# 出於性能的考慮,一次性請求數據的時間長度最好不超過3年,需要獲取更長時間的歷史數據就需要將多個數據表拼接# ktype 的可用選項:D=日k線 W=周 M=月 5=5分鐘 15=15分鐘 30=30分鐘 60=60分鐘,默認為D
  • 【python量化】期貨ML策略(一)數據獲取
    未來一段時間裡,我將會利用所學的知識開發一個期貨上的ML策略。策略思路如下:交易時間內每分鐘從主力合約(可以理解為交易活躍的股票)中選取未來幾分鐘內極大可能有較大的漲幅或跌幅的合約,對他們進行做多或做空。非常像我之前做的股票策略一樣,挑一隻未來很大可能上漲的股票對它進行買入操作(送你一份年化100%+的策略)。那我需要如何實現這個策略呢。
  • Python學習第94課-通過第三方接口獲得數據並導入Python繪圖
    上節課我們學習了導入外部文件數據並繪圖。這節課我們學習通過第三方接口獲得數據並導入Python進行繪圖。我們的數據接口使用Tushare,Tushare是一個免費、開源的python財經數據接口包。Tushare的網址是:http://tushare.org/。我們需要先下載安裝Tushare。
  • Python 與金融數據|股票數據的獲取與可視化
    pandas_datareaderpandas_datareader庫提供了專門從財經網站獲取金融數據的API接口,可作為量化交易股票數據獲取的另一種途徑,該接口在urllib3庫基礎上實現了以客戶端身份訪問網站的股票數據。
  • 基於CNN預測股票漲跌幅
    Tensorflow2.0 深度學習實踐基於TensorFlow 2 的 Fashion MNIST數據集分類問題一、數據準備對於股票等數據的獲取,大家可以使用以下幾種常見的渠道。(1)證券寶www.baostock.com是一個免費、開源的證券數據平臺(無需註冊)。提供大量準確、完整的證券歷史行情數據、上市公司財務數據等。通過python API獲取證券數據信息,滿足量化交易投資者、數量金融愛好者、計量經濟從業者數據需求。
  • VBA利用QueryTables提取某隻股票歷史交易信息數據
    大家好,我們今日講解「VBA信息獲取與處理」教程中第十個專題「利用QueryTables抓取網絡數據」的第三節「利用QueryTables提取某支股票歷史交易信息數據」,這個專題是非常有用的知識點,希望大家掌握。
  • 量化分析入門第一步——獲取股票基本面數據
    為了學習這些指標,也專門找了本書進行學習,書中介紹基本面分析的指標的定義和用途,並找了同行業的兩隻股票進行對比分析,整體來說還是比較適合我這種小白的。紙上談來終覺淺,絕知此事要數據。我們能從券商 APP 或公司財報中獲取某個公司的基本面指標,但要同時收集同一行業的多家公司,就有點繁瑣了。
  • 5分鐘學會用Python獲取美股股票數據
    在以前幾篇對股票數據做分析和預測的文章後,很多讀者對如何獲取股票數據很有興趣。下面就介紹下美股的歷史數據獲取api來回饋讀者。美股的歷史數據獲取api眾所周知,Yahoo財經廢掉了他們的歷史數據api,導致許多依賴它的程序也遭遇了危機。但不用怕!新的股票歷史數據引擎來了。
  • 從哪裡獲取數據?
    今天要解決的問題是從哪裡獲取數據?首先說明一點,公開數據可以免費引用,但是最好有標明來處,一個好的習慣是非常有必要的。但是非法獲取他人數據屬於犯罪行為,見相關法律。360趨勢https://trends.so.com 以360產品海量用戶數據為基礎的大數據展示平臺,可通過搜索關鍵詞,快速獲取熱度趨勢、理解用戶真實需求、了解關鍵字搜索的人群屬性。
  • 利用Python預測股票價格
    獲取股票數據股票數據通常可從新浪股票、雅虎股票等網頁上獲取,此外還有一些炒股軟體,如同花順、通達信等都提供了非常清楚的股票數據展示和圖表呈現。如果要獲得實時的股票數據,可以考慮使用新浪股票提供的接口獲取數據。
  • 男子利用木馬病毒獲取基金內幕信息獲利一百多萬元  二審開庭
    近日,遼寧省高級人民法院公開開庭審理了最高人民法院指定遼寧管轄的被告人朱某海非法獲取計算機信息系統數據、非法控制計算機信息系統罪、內幕交易罪抗訴、上訴一案。被告人朱某海及其辯護人到庭參加訴訟。葫蘆島市中級人民法院一審經審理查明:2004年至2016年間,被告人朱某海違反國家規定,製作並使用木馬病毒非法侵入、控制他人計算機信息系統,非法獲取相關計算機信息系統存儲的數據
  • EXCEL函數公式大全之利用VLOOKUP函數IF函數數據驗證自動獲取價格
    EXCEL函數公式大全之利用VLOOKUP函數、IF函數、數據驗證,通過下拉框自動獲取產品價格。excel函數與公式在工作中使用非常的頻繁,會不會使用公式直接決定了我們的工作效率,今天我們來學習一下提高我們工作效率的函數VLOOKUP函數、IF函數和數據驗證,選擇產品編碼自動獲取產品價格。
  • 用Exce爬數據炒股票,老闆還以為你在認真工作
    ,圖表等…… 但你可能不懂Excel怎麼獲取網頁上的數據!對於輕量級連接外部數據,這個函數方法還是挺方便的。除了可以翻譯之外,用這個函數還可以輔助你炒股!正在上班,不方便使用手機或看財經網頁,但又想關注股票的實時價格,怎麼破?
  • 主持人被罰1個億 利用微博博客公開評價推薦股票
    主持人被罰1個億 利用微博博客公開評價推薦股票 證監會公布的行政處罰決定書顯示,廖英強利用其知名證券節目主持人的影響力,在其微博、博客上公開評價、推薦股票,在推薦前使用其控制的帳戶組買入相關股票,並在薦股後的下午或次日集中賣出。
  • 金融大數據:紐約證券交易所股票數據分析
    目的:分析2010-2016年紐約證券交易所的股票價格、成交量變化趨勢,從而為股票持有者提供買進或賣出的建議。摘要:本文通過分析紐約證券交易所的股票數據得出以下結論:紐約證券交易所2010年的股票成交量最大,2014年的成交量最小。