今天是2017.1.5r。
实习的第三天,经过前两天的迷之迷茫,今天开始去了解一点东西了。
带自己的人发来的资料里有三部分:
1、量化投资全貌的了解;
2、公司财务相关知识,主要是从基本面进行分析,用于中长线(季度、年度报表)的分析;
3、交易员量价实战技巧(主要是针对日交易行情数据去利用技术指标进行分析),用于短线分析。
关于长线和短线的数据,分别对应公司财务数据和行情数据,这两部分数据在公司购买的聚源数据库里均有,当然可以分析的数据不止聚源数据库一个,比如Wind里面的数据也是比较权威的,但多少都大同小异,主要还是看怎样去利用这些数据,挖掘其中的价值。
前期需要对数据进行处理和准备,所以要熟悉python中如何连接oracle数据库,这里简单做一下记录。
因为用的是自己的电脑,数据库访问权限开通有点麻烦,所以以下的软件都是通过连接远程桌面直接安装在服务器上的。
1、连接远程桌面,cmd中输入:mstsc
2、安装软件版本:pycharm(不限版本)+anaconda2.4,先把这两个安装好
3、再安装连接oracle的库cx_Oracle,直接先下载cx_Oracle库后安装
- (cx_Oracle下载地址
http://sourceforge.net/projects/cx-oracle/files/5.1.2/
选择对应的系统位数,windows最好下载msi格式的,直接执行。)
4、在pycharm中输入import cx_Oracle,看是否提示错误,若无则表示安装正常
接下来就是跟之前连接mysql数据库一样,开始使用语句去连接数据库了。
cx_Oracle.connect("用户名 / 密码@ Oracle服务器IP / Oracle的SERVICE_NAME")
import cx_Oracle #引用模块
cx_Oracleconn=cx_Oracle.connect('load/123456@localhost/ora11g') #连接数据库
c=conn.cursor() #获取cursor
x=c.execute('select * from table') #使用cursor进行各种操作
for result in x:
print result
c.close() #关闭cursor
conn.close() #关闭连接
在python中操作时可能会出现这个问题:
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)
此外,做策略投资开发经常还用到的一些库如下:
1 pip install tushare #通联数据的免费数据接口
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 #数据库访问包
conda install pymongo #mongodb