小白量化学习(1)准备环境

112 篇文章 44 订阅
106 篇文章 119 订阅

小白量化学习(1)准备环境


一、为什么使用Python做量化平台。
(1)Python系统免费,有丰富的资源库,且跨不同操作系统平台。
(2)Python语法简单,且吸收了很多计算机语言的优点。
(3)Python是解释型交互式语言。可以与Foxpro等语言比美。
(4)“阿法狗”就是采用Python开发的。Python是人工智能、大数据处理,网络爬虫的首选计算机语言。
(5)我们使用Python3.6及以上版本。Python不同版本有很大差异,Python3.6以上版本比较稳定,能更好地支持中文,且集成了Tkinter绘图工具包。

二、如果安装Python

1、操作系统最好是win7及以上版本,64位系统。可以网盘下在绿色Python。

绿色Python网盘下载链接如下:
https://pan.baidu.com/s/1jxSaB8JzOu6hNvFipqfGzQ
下载到任意盘符中,解压后,点击文件“py36.bat”运行。
我们提供的绿色版本Python3.6,除了集成了Windows 64位系统下的Python3.6、Spyder开发工具和丰富的科学计算包外,还集成了QUANTAXIS数据包、Tushare财经数据接口包、聚宽数据JQData股票数据包、OpenDataTools股票数据包等,用户可以直接使用这些免费的金融数据。而其他方法安装的Python环境,则需要用pip命令来安装这些金融数据包。
如果无法运行绿色Python,说明你的windows系统缺少必要系统文件。下载[微软常用运行库合集]工具软件进行安装。

2、如果是其他操作系统或win7_32位,需要通过Anaconda来安装Python。
Anaconda也支持不同操作系统平台,如Windows,MacOSX,Linux等操作系统。
Anaconda的下载网址: https://www.anaconda.com/download/

小白量化框架是跨平台的,任何平台都能使用,但是要安装必要的支持模块。

(1)安装必要的包。
pygame,matplotlib,mpl_finance,PILlow,jieba
requests,bs4,sklearn,keras
(2)金融数据包
tushare,jqdatasdk,quantaxis,opendatatools

按装好这些模块,我们的平台已经搭建好了。

建议申请聚宽免费帐户,可以获取期货数据.申请网址如下:
https://www.joinquant.com/default/index/sdk?channelId=11ab957b5b19ebc3302ee864cee476b

独狼荷蒲qq:2775205
通通python量化群:524949939
微信公众号:独狼股票分析

  • 5
    点赞
  • 31
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
小白量化学习-自创指标设计 一、准备工作 1、首先把“HP_formula.py”文件复制到自己的工程目录中。 2、在新文件开始增加下面4条语句。 import numpy as np import pandas as pd from HP_formula import * import tushare as ts 二、对数据预处理 我们采用与tushare旧股票数据格式。 #首先要对数据预处理 df = ts.get_k_data('600080',ktype='D') mydf=df.copy() CLOSE=mydf['close'] LOW=mydf['low'] HIGH=mydf['high'] OPEN=mydf['open'] VOL=mydf['volume'] C=mydf['close'] L=mydf['low'] H=mydf['high'] O=mydf['open'] V=mydf['volume'] 三、仿通达信或大智慧公式 通达信公式转为python公式的过程。 1.‘:=’为赋值语句,用程序替换‘:=’为python的赋值命令‘='。 2.‘:’为公式的赋值带输出画线命令,再替换‘:’为‘=’,‘:’前为输出变量,顺序写到return 返回参数中。 3.全部命令转为英文大写。 4.删除绘图格式命令。 5.删除掉每行未分号; 。 6.参数可写到函数参数表中.例如: def KDJ(N=9, M1=3, M2=3): 例如通达信 KDJ指标公式描述如下。 参数表 N:=9, M1:=3, M2:=3 RSV:=(CLOSE-LLV(LOW,N))/(HHV(HIGH,N)-LLV(LOW,N))*100; K:SMA(RSV,M1,1); D:SMA(K,M2,1); J:3*K-2*D; # Python的KDJ公式 def KDJ(N=9, M1=3, M2=3): RSV = (CLOSE - LLV(LOW, N)) / (HHV(HIGH, N) - LLV(LOW, N)) * 100 K = SMA(RSV,M1,1) D = SMA(K,M2,1) J = 3*K-2*D return K, D, J #----------------------------------- #根据上面原理,我们把大智慧RSI指标改 # 为Python代码,如下。 def RSI(N1=6, N2=12, N3=24): """ RSI 相对强弱指标 """ LC = REF(CLOSE, 1) RSI1 = SMA(MAX(CLOSE - LC, 0), N1, 1) / SMA(ABS(CLOSE - LC), N1, 1) * 100 RSI2 = SMA(MAX(CLOSE - LC, 0), N2, 1) / SMA(ABS(CLOSE - LC), N2, 1) * 100 RSI3 = SMA(MAX(CLOSE - LC, 0), N3, 1) / SMA(ABS(CLOSE - LC), N3, 1) * 100 return RSI1, RSI2, RSI3 四、使用公式并绘图 #假定我们使用RSI指标 r1,r2,r3=RSI() mydf = mydf.join(pd.Series( r1,name='RSI1')) mydf = mydf.join(pd.Series( r2,name='RSI2')) mydf = mydf.join(pd.Series( r3,name='RSI3')) mydf['S80']=80 #增加上轨80轨迹线 mydf['X20']=20 #增加下轨20轨迹线 mydf=mydf.tail(100) #显示最后100条数据线 #下面是绘线语句 mydf.S80.plot.line() mydf.X20.plot.line() mydf.RSI1.plot.line(legend=True) mydf.RSI2.plot.line(legend=True) mydf.RSI2.plot.line(legend=True) 不懂就看我的博客 https://blog.csdn.net/hepu8/article/details/93378543

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

荷蒲

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值