高频交易算法研发心得--RSI指标及应用
高频交易算法研发心得--RSI指标及应用
前面文章中我们提到了MA均线(包括EMA,SMA)、MACD以及SAR指标,这三类指标存在一个共同特点,即:从固定周期的价格作为判读的指导思想,并将价格进行平滑处理,然后得到可参考的判读结果。
今天我们变换思维,并从市场的角度来考量问题,同时,来聊聊RSI指标。
1. 指标定义
RSI:相对强弱指数(Relative Strength Index),是根据一定时期内上涨点数和涨跌点数之和的比率制作出的一种技术曲线。能够反映出市场在一定时期内的景气程度。其N日的伪函数定义如下:
Double RSI(int N)
{
//1.首先计算N日的总涨价格
Double totalUp = GetTotalUp(N);
//2.然后计算N日的总跌价格(其值为绝对值)
Double totalDown = GetTotalDown(N);
//2.计算RSI,即:总涨幅占总变化价格的比例
Double rsi = (totalUp) / (totalUp + totalDown);
return rsi;
}
注意:上面公式计算的结果与大家在常见软件中看到的值不一样,常见软件中显示的结果会乘以100,以便结果的显示区间为:[0~100]。
通过上面的公式描述,看官们不难发现,其实RSI指标是应用了菜市场买白菜的原理,即:
- 如果价格上涨的数量占总变化的比例比较小(大多数情况下降),那随后可能会涨价。
- 如果价格上涨的数量占总变化的比例比较大(大多数情况上涨),那随后可能会降价。
- 由于计算是通过占比方式来实现的,其值范围是[0,1],因此适用于编程量化。
2. 应用方式
通常情况下RSI可以从以下两方面进行判读:
- 短周期线的上下边界
无论看官们是否是做软件的,您都会明白一个道理,一台计算机的CPU的使用率过高,一定不是正常状态,要小心CPU会不会烧了;如果CPU使用率过低的话(服务器),你会考虑,我是不是花钱花多了。
同样的道理,持续的上涨比例过高或过低,都代表了当前市场处于高温或低温的不稳定状态。参考了百度百科,一般认定[70%~80%]为卖出的上限参考点,[20%~30%]为买入的下限参考点,而处于中间比例时,为不明确点,可以进行观望,具体如下:
|
操作 |
RSI区间 |
|
超买(买入) |
极端情况:[0%~10%] |
|
正常情况:[10%~20%] |
|
|
观望 |
[30%~70%] |
|
超卖(卖出) |
正常情况:[80%~90%] |
|
极端情况:[90%~100%] |
其应用的典型特征如下图所示:


- 通过长短周期相互穿越进行判定
此方式与MA均线穿越的判读方式相同,即:
当短周期均线下穿长周期线的时候,说明整体趋势正在下降,可以卖出。
当短周期均线上穿长周期线的时候,说明整体趋势正在上长,可以买入。
其典型的特征如下图所示:


- 3. 总结
通过观察上面的几个图,看官很容易发现RSI的短周期线波动会非常大,因此,最好不要将RSI做为主要的判读指标。
本文中只是描述了RSI的伪算法,用户可以通过调用Warensoft Stock Service来实现该算法,在2017.1.12版本的客户端驱动中,已经添加了该算法的调用接口,欢迎大家进行测试并反馈意见。
作者:科学家
Email:warensoft@163.com
微信:43175692
高频交易算法研发心得--RSI指标及应用的更多相关文章
- 高频交易算法研发心得--WAVT指标(Warensoft交易量趋势指标)算法及应用
高频交易算法研发心得--WAVT指标(Warensoft交易量趋势指标)算法及应用 注:WAVT指标由Warensoft(王宇)原创. 前面聊了一系列的常见应用指标,包括短线.长线的指标,并且也无耐的 ...
- 高频交易算法研发心得--MACD指标算法及应用
凤鸾宝帐景非常,尽是泥金巧样妆. 曲曲远山飞翠色:翩翩舞袖映霞裳. 梨花带雨争娇艳:芍药笼烟骋媚妆. 但得妖娆能举动,取回长乐侍君王. [摘自<封神演义>纣王在女娲宫上香时题的诗] 一首定 ...
- AI大厂算法测试心得:人脸识别关键指标有哪些?
仅仅在几年前,程序员要开发一款人脸识别应用,就必须精通算法的编写.但现在,随着成熟算法的对外开放,越来越多开发者只需专注于开发垂直行业的产品即可. 由调查机构发布的<中国AI产业地图研究> ...
- 高频交易:Solarflare组建超低延迟网络
10Gb以太网适配器制.网卡造商Solarflare目前正在将自己的网卡系列产品转变为服务器产品.其产品在金融领域有着广泛的应用. Solarflare首先将现场可编程门阵列(FPGA)放入网络适配器 ...
- 以股票RSI指标为例,学习Python发送邮件功能(含RSI指标确定卖点策略)
本人之前写过若干“给程序员加财商”的系列文,目的是通过股票案例讲述Python知识点,让大家在学习Python的同时还能掌握相关的股票知识,所谓一举两得. 在之前的系列文里,大家能看到K线,均线,成交 ...
- 商品期货高频交易策略Tick框架
原帖地址:https://www.fmz.com/bbs-topic/1184在商品期货高频交易策略中, Tick行情的接收速度对策略的盈利结果有着决定性的影响,但市面上大多数交易框架,都是采用回调模 ...
- Java才是世界上最好的语言,Java在高频交易中替代C++
高频交易 高频交易是指从那些人们无法利用的极为短暂的市场变化中寻求获利的计算机化交易,比如,某种证券买入价和卖出价差价的微小变化,或者某只股票在不同交易所之间的微小价差.在高频交易中,自动化应用程序每 ...
- 高频交易[z]
著作权归作者所有.商业转载请联系作者获得授权,非商业转载请注明出处.作者:袁浩瀚链接:https://www.zhihu.com/question/21789812/answer/22178178来源 ...
- 高频交易策略之Penny Jump[z]
高频交易策略之Penny Jump 今天假设有一个笨笨的大型机构投资人(共同基金,银行,退休基金....),他想要买进一只股票,但又不想挂市价买进,所以就在市场里面挂了一张要买进的大单.这时候所有市场 ...
随机推荐
- Yii2中如何使用CodeCeption
Yii2和CodeCeption CodeCeption是一个全栈的PHP测试框架,关于CodeCeption的介绍见:CodeCeption官方文档. Yii2官方增加了对CodeCeption的支 ...
- Node.js连接MySQL数据库及构造JSON的正确姿势
做一下整理,以前也很随意的引入包链接数据库,后来发现常常连接出问题,异常退出,后来使用在网上一个方法解决问题,网址由于书签丢失,抱歉不能引用了.再有就是简单的模块化下,使得目录合理点,再有就是说明一下 ...
- jmeter参数化之CSV Data Set Config
在jmeter中,可以用CSV Data Set Config实现参数化. 1.准备参数化数据
- C# 解析bt种子
using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.C ...
- HDU 2064 汉诺塔III
汉诺塔III Time Limit: 1000/1000 MS (Java/Others) Memory Limit: 32768/32768 K (Java/Others) Total Submis ...
- VS代码生成工具ReSharper发布8.1版本
ReSharper是一个著名的VS代码生成工具,能帮助VS成为一个更佳的IDE.JetBrains公司今天发布了ReSharper最新版本8.1. 本次新版本更新涉及到打印稿.与VS2013集成.代码 ...
- MVC 用扩展方法执行自定义视图,替代 UIHint
MVC 用扩展方法执行自定义视图,替代 UIHint 项目中用了 Bootstrap , 这样就不用写太多的CSS了,省去很多事情.但是这个业务系统需要输入的地方很多,每个表都有100多个字段,每个页 ...
- 配置Sublime Text 2 的Python运行环境
Sublime Text 2作为一款轻量级的编辑器,特点鲜明,方便使用,愈发受到普罗大众的喜爱,我个人最近也开始用了起来.同时,我近段时间还在学习Python的相关东西,所以开始用ST2来写Pytho ...
- Effective C++(17) 以独立语句将newed对象置入智能指针
问题聚焦: 使用了资源管理对象(如智能指针),就一定是安全的吗?显然不是. 资源泄露发生可能在于,在“资源被创建”和“资源被转换为资源管理对象”两个时间点之间有可能发生异常干扰. 看下 ...
- 2014.3.11-C语言学习小结
文件操作: 知识点: 持久化 1.文本文件的读写 2.二进制文件的读写 3.缓冲文件系统 1.打开文件 2.读写文件 3.保存 4.关闭文件 ============================= ...