高频交易算法研发心得--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 今天假设有一个笨笨的大型机构投资人(共同基金,银行,退休基金....),他想要买进一只股票,但又不想挂市价买进,所以就在市场里面挂了一张要买进的大单.这时候所有市场 ...
随机推荐
- Linux多命令顺序运行
- Python 2.7.3的文件编码问题,print在控制台下面中文乱码问题,以及推荐做法
情况:文件乱码,在cmd上输出print也乱码.解决方案:统一为gbk的简体中文编码方式.步骤如下: 1.每个py文件使用[简体中文(GB2312)- 代码页 936]格式保存,行尾为[Windows ...
- hadoop搭建开发环境及编写Hello World
hadoop搭建开发环境及编写Hello World 本文地址:http://www.cnblogs.com/archimedes/p/hadoop-helloworld.html,转载请注明源地 ...
- NET Socket服务编程
smark https://github.com/IKende/ .NET Socket服务编程之-高效连接接入编 在.NET上编写网络服务深入都有2,3年了,而这些时间时如何在.NET里实现网络服务 ...
- jQueryRotate 转盘抽奖代码实现
代码如下: 例子兼容IE6,7,8 以及高版本浏览器,如有bug请回复! 1.html结构 <!doctype html> <html lang="en"> ...
- OAUTH协议简介
OAUTH协议简介 原文来自:http://blog.csdn.net/hereweare2009/article/details/3968582 分类: Open API2009-03-08 12: ...
- 一步一步实现基于Task的Promise库(四)无参数的WorkItem
接着上一篇我直接给出代码,现在支持了new Task(), then(), all(), any() 这些不传参的调用方式. (function(){ var isFunction = functio ...
- MVC中使用Unity Ioc Container
ASP.NET MVC中使用Unity Ioc Container 写在前面 安装Unity 添加服务层 IArticleRepository类型映射 服务注入到控制器 Global.asax初始 ...
- Jenkins中关于一些插件的使用方法
最近在为公司搭建CI平台过程中,以及在具体项目实施过程中使用过的一些插件的具体用法: 1. ant插件 这个插件可能是我们最为经常使用的,若构建脚本是使用build.xml的,那构建引擎肯定会选择an ...
- Net 4.0 之 Dynamic 动态类型
Net 4.0 之 Dynamic 动态类型 本文主要旨在与网友分享.Net4.0的Dynamic 对Duck Type 的支持. 一..net4.0主要新特性 .Net4.0在.Net3.5 ...