摘要:將另存為格式時,文件將工作表中的單元格所顯示的文本和數值以逗號分離進行保存。方法此處使用模塊的函數讀取文件,函數以字典形式返回,字典的鍵則是這個單元格的標題即列頭,每一個單元格內容放在字典的值內。
前言
數據是進行量化交易的基礎和關鍵,目前國內做量化產品的金融機構大部分是從券商獲取高頻實時行情數據的,另外很多金融網站也提供了數據接口,可以調用接口方式獲取,也可以用爬蟲的方式獲取。文本講述一種更經濟便捷的方式來獲取數據,即通過同花順交易軟件來導出股票數據,并且將數據轉換為DataFrame 表格型的數據結構,以csv的格式存儲,便于后續進行量化交易分析。
1.打開同花順軟件,點擊“分析”欄,選擇“歷史成交”,此時會出現股票的日線交易數據。
2.點擊“右鍵”,選擇“數據導出”—>“導出所有數據”,選擇導出的類型為Excel,執行下一步直到完成,即得到了2004年至今的該股交易數據。
3.打開EXCEL文檔已經可以查看到導出的數據了,不過在量化領域中最常用使用的是CSV格式,這里將EXCEL另存為CSV格式。CSV文件是一種文本文件,用記事本就能打開。文件的數據列以半角逗號分隔,每一行數據都以回車符結束。它可以非常容易地被導入各種PC表格及數據庫中。將EXCEL另存為CSV格式時,CSV文件將EXCEL工作表中的單元格所顯示的文本和數值以逗號分離進行保存。
注:如果單元格中包含逗號,則該單元格中的內容以雙引號引起。
在Python中,pandas是數據處理方面功能最為強大的擴展模塊了,包含了高級的數據結構Series和DataFrame,使得在Python中處理數據變得非常方便、快速和簡單,后續我們在應用中會深有體會。
方法1:通過pandas模塊自帶的read_csv函數可直接得到DataFrame格式數據,注意編碼格式為“GB2132”,否則控制臺會將中文解析為亂碼。
df_csvload = pd.read_csv("C:programPYCSV_RWdata_ForNewFileDataChange.csv",parse_dates=True,index_col=0,encoding="gb2312")
方法2:此處使用CSV模塊的DictReader函數讀取CSV文件,DictReader函數以字典形式返回,字典的鍵則是這個單元格的標題(即列頭),每一個單元格內容放在字典的值內。DataFrame的創建方式有numpy二維數組、列表、Series序列以及字典方式等,此處DictReader函數返回的字典形式數據可直接創建,字典中的keys就是DataFrame里面的columns,但是沒有index的值,默認是從零開始計數。
f=codecs.open("C:programPYCSV_RWdata_ForNewFileDataChange.csv","rb","gb2312")#GB2312編碼 reader = csv.DictReader(f) rows = [row for row in reader] df = pd.DataFrame(rows) f.close()
該方法需要增加額外的處理,將“時間”列作為index索引,同時將日期信息去除星期幾
df.rename(columns={ "時間":"time" },inplace=True)#替換為英文columns for index,colstr in enumerate(df["time"]): colstr = colstr.split(",",1)#去除日期中的星期幾 df.loc[index, "time"] = colstr[0] df.index = df["time"].tolist()#time作為index del df["time"]#數據中刪除time列
數據處理后使用pandas模塊自帶的to_csv可將數據直接存儲為CSV。
df.to_csv("C:programPYCSV_RWdata_ForNewFileDataCheck.csv",columns=df.columns,index=True)
更多python量化交易內容互動請加微信公眾號:PythonQT-YuanXiao
歡迎訂閱量化交易課程:鏈接地址
文章版權歸作者所有,未經允許請勿轉載,若此文章存在違規行為,您可以聯系管理員刪除。
轉載請注明本文地址:http://m.specialneedsforspecialkids.com/yun/41160.html
摘要:前言庫提供了專門從財經網站獲取金融數據的接口,可作為量化交易股票數據獲取的另一種途徑,該接口在庫基礎上實現了以客戶端身份訪問網站的股票數據。第三四個參數為股票數據的起始時間斷。遍歷每個交易日后將符合跳空缺口條件的交易日增加缺口數值。 前言 Pandas庫提供了專門從財經網站獲取金融數據的API接口,可作為量化交易股票數據獲取的另一種途徑,該接口在urllib3庫基礎上實現了以客戶端身份...
摘要:問題來源今天與同學聊天,得知他有個任務是抓取同花順網站上的股票數據,有點興趣,便做了相關實驗。由于時間關系,以上代碼只是把數據所在的網頁抓取到本地,沒有進行解析。 問題來源 今天與同學聊天,得知他有個任務是抓取同花順網站上的股票數據,有點興趣,便做了相關實驗。 介紹 網站地址:http://q.10jqka.com.cn/ 網站界面:showImg(https://segmentf...
摘要:月日,各項競賽的排名將決定最終的成績排名。選手通過訓練模型,對虛擬股票走勢進行預測。冠軍將獲得萬元人民幣的獎勵。 showImg(https://segmentfault.com/img/bVUzA7?w=477&h=317); 2017年9月4日,AI challenger全球AI挑戰賽正式開賽,來自世界各地的AI高手,將展開為期三個多月的比拼,獲勝團隊將分享總額超過200萬人民幣的...
摘要:那么我們改變概率這個因子,將它放大到,我們邀請個人參與局看下效果看來結果還不錯,只要增加盈利的概率,就可以在市場中獲得收益,這就是量化交易的魅力管理概率理性交易。 在《Python實戰-構建基于股票的量化交易系統》小冊子中,我們以股票為交易標的講解量化交易的學習,主要原因是股票的風險和收益介于期貨和基金之間。期貨一方面加了杠桿,另一方面走勢變化非常迅速,稍有不慎有可能血本無歸,這不太適...
閱讀 3563·2021-11-25 09:43
閱讀 3142·2021-10-08 10:04
閱讀 1633·2019-08-26 12:20
閱讀 2062·2019-08-26 12:09
閱讀 604·2019-08-23 18:25
閱讀 3579·2019-08-23 17:54
閱讀 2333·2019-08-23 17:50
閱讀 811·2019-08-23 14:33