python 量化分析 入门_量化入门-小白到菜鸟的学习路线

小白到菜鸟的入门学习路线,不要盲目以为多看策略就能学会,要注意学习方法。

本文的主要目的

很多新人面对多如牛毛的策略不知从何下手,在很多较难的帖子下面留言一些最基础的问题。小白不知道该先学什么,后学什么,所以想着写些东西帮下小白。

如果想要看懂论坛中的大神帖,一定的python和证券知识的基础是必备的。其中证券基础知识不在本文讨论范围之中,我默认来学习量化的一定是对股票感兴趣的朋友。

1、python学习:一定要读至少一本python基础书或完成在线课程。

需要了解一下内容:

1、基本语法

2、变量赋值

3、运算符

4、条件语句

5、循环语句

6、数据类型:列表、字典、元组、字符串

7、函数

8、模块

OK,上述内容足够了,正则表达式、文件读写方法等等这类不需要掌握,至少暂时不需要。

相信我,看以上内容很快,2个小时足矣,各位可以去网上搜索python+在线教程,有很多在线学习,关键是练习,一定要多练习,一定要出错,只有错误会让你印象深刻。

如果想要自己能写出代码,还是需要完成一个完整的课程。python内容学习:2小时阅读+4小时以上练习。

2、数据分析包学习

数据分析报主要是pandas这个最最重要的库,numpy稍微了解一下就行。

这个内容,建议看下新手专栏里的:

如果你要速成,上面2个足够了,如果想要更深入学习的,有一本书是pandas的作者写的,叫《利用python进行数据分析》,pdf资源很多,自行百度去把。量化分析十分依赖这个库,但是这个库的难度其实并不大。关键还是对着教材自己练习一下。

至于numpy,可以遇到不懂的问题再去百度,不用刻意学习。pandas学习:2小时

3、优矿API、CAL函数与数据

当你完成以上2项内容,那么恭喜你,已经完成几乎九成的工作了,接下去是优矿内的一些知识学习。

API就是优矿的接口,通过输入一定的参数,从优矿导出你想要的数据。你可以通过优矿的帮助文件了解优矿的一些量化写法和API使用方法,优矿API文档。由于每个人的研究方向不同,策略不同,所以使用的API、研究数据也很不一样,建议略读一遍研究数据所提供的热门数据都有哪些,然后看一下帮助文件的内容,不要求熟练,只要求知道帮助文件写了些什么内容,以后遇到的时候再去查询。

然后你就去找一篇你觉得写的好的策略或者和你的思路实现方法类似的文章,克隆下来,一小段一小段分析。因为你已经有了python和pandas的基础,剩下的一些优矿API的调用,需要的时候翻看一下帮助文件。给代码标上注释。

写完第一篇注释后,你就了解了一个策略究竟是如何实现的。当然不同的策略差异很大,代码结构也因不同的作者而各有不同,但是如果你能看着代码梳理出作者的交易逻辑,那么你就真的入门成功了。接下去就是更多的注释代码,更多的写代码,更多的看代码的过程,代码虐你千百遍,还是要带她如初恋。当你学习了3-5个策略之后,你发现,量化其实很简单啊。优矿API和研究数据学习:1个小时

4、后续方向

在你学会了如果实现一个策略之后,之后所能做的就是如何想到更牛逼的策略,更牛逼的技巧。

阅读券商研报是一个获得策略思路的不错的方式。在优矿交流群上,有很多券商研报的文件,或者从别的渠道获取券商研报,然后从简单的开始看。单个券商研报的策略一般都价值不大,都是已经过时的或者仅仅是思路层面的内容。你需要结合不同的研报,找到一个交叉点。比如我曾写过一个根据因子贡献度的机器学习策略,先不谈策略的收益好坏,但是在我思维很枯竭的时候,看到因子贡献度那篇研报,我突然发现之前机器学习一直不能克服的挑选因子的方法其实如此简单。

数据可视化也是一个方向,可以更好的帮助你找到一些数据的特性,目前主要用的是matplotlib库,可以通过导入seaborn更好的呈现,感觉目前社区的图表用的都是@call 大神的模板,看过几个call大神的帖子,你也会爱上他的图表。

另一个方向是机器学习,但是机器学习这个方向对专业要求太高,如果不是这方面的科班出身,学习这块比较费时。如果你有一个比较牛的机器学习老师,可以让你事半功倍。

以上的知识建议一定按顺序学习,可以极大的提高学习效率,少走弯路。

  • 3
    点赞
  • 20
    收藏
    觉得还不错? 一键收藏
  • 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
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值