python量化開發(fā)1|在python中操作Oracle數(shù)據庫

今天是2017.1.5r。

實習的第三天,經過前兩天的迷之迷茫,今天開始去了解一點東西了。

帶自己的人發(fā)來的資料里有三部分:
1、量化投資全貌的了解;
2、公司財務相關知識,主要是從基本面進行分析,用于中長線(季度、年度報表)的分析;
3、交易員量價實戰(zhàn)技巧(主要是針對日交易行情數(shù)據去利用技術指標進行分析),用于短線分析。

關于長線和短線的數(shù)據,分別對應公司財務數(shù)據和行情數(shù)據,這兩部分數(shù)據在公司購買的聚源數(shù)據庫里均有,當然可以分析的數(shù)據不止聚源數(shù)據庫一個,比如Wind里面的數(shù)據也是比較權威的,但多少都大同小異,主要還是看怎樣去利用這些數(shù)據,挖掘其中的價值。


前期需要對數(shù)據進行處理和準備,所以要熟悉python中如何連接oracle數(shù)據庫,這里簡單做一下記錄。

因為用的是自己的電腦,數(shù)據庫訪問權限開通有點麻煩,所以以下的軟件都是通過連接遠程桌面直接安裝在服務器上的。
1、連接遠程桌面,cmd中輸入:mstsc
2、安裝軟件版本:pycharm(不限版本)+anaconda2.4,先把這兩個安裝好
3、再安裝連接oracle的庫cx_Oracle,直接先下載cx_Oracle庫后安裝

4、在pycharm中輸入import cx_Oracle,看是否提示錯誤,若無則表示安裝正常

接下來就是跟之前連接mysql數(shù)據庫一樣,開始使用語句去連接數(shù)據庫了。

cx_Oracle.connect("用戶名 /  密碼@ Oracle服務器IP  /  Oracle的SERVICE_NAME")

import cx_Oracle #引用模塊        
cx_Oracleconn=cx_Oracle.connect('load/123456@localhost/ora11g') #連接數(shù)據庫
c=conn.cursor() #獲取cursor
x=c.execute('select * from table') #使用cursor進行各種操作    
for result in x:
    print result
c.close() #關閉cursor
conn.close() #關閉連接

在python中操作時可能會出現(xiàn)這個問題:
cx_Oracle.InterfaceError:unable to acquire envirnoment handle
此時解決辦法如下:
1、下載一個64位的oracle_client并安裝
2、將 client安裝目錄下instantclient中所有的.dll文件全部copy到anaconda安裝目錄下的site-packages下,然后重啟pycharm就可以運行正常了。

更多詳細使用cx_Oracle庫操作Oracle的語法可以參考這篇文章:(http://blog.csdn.net/my2010sam/article/details/20724001


此外,做策略投資開發(fā)經常還用到的一些庫如下:
1 pip install tushare #通聯(lián)數(shù)據的免費數(shù)據接口

2 pip install pyalgotrade #策略回撤框架

3 pip install ta-lib #技術指標庫 需要安裝提取安裝 Microsoft Visual C++ Compiler for Python 2.7
或則 從http://www.lfd.uci.edu/~gohlke/pythonlibs/#ta-lib 下載 TA_Lib-0.4.10-cp27-cp27m-win_amd64.whl
然后 到下載目錄 運行 pip install TA_Lib-0.4.10-cp27-cp27m-win_amd64.whl

pip install pymssql #訪問SqlServer的包

pip install cx_Oracle #訪問oracle的包

pip install sqlalchemy #數(shù)據庫訪問包

conda install pymongo #mongodb

最后編輯于
?著作權歸作者所有,轉載或內容合作請聯(lián)系作者
【社區(qū)內容提示】社區(qū)部分內容疑似由AI輔助生成,瀏覽時請結合常識與多方信息審慎甄別。
平臺聲明:文章內容(如有圖片或視頻亦包括在內)由作者上傳并發(fā)布,文章內容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務。

相關閱讀更多精彩內容

友情鏈接更多精彩內容