高频交易算法研发心得--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均线穿越的判读方式相同,即:

当短周期均线下穿长周期线的时候,说明整体趋势正在下降,可以卖出。

当短周期均线上穿长周期线的时候,说明整体趋势正在上长,可以买入。

其典型的特征如下图所示:

  1. 3.       总结

通过观察上面的几个图,看官很容易发现RSI的短周期线波动会非常大,因此,最好不要将RSI做为主要的判读指标。

本文中只是描述了RSI的伪算法,用户可以通过调用Warensoft Stock Service来实现该算法,在2017.1.12版本的客户端驱动中,已经添加了该算法的调用接口,欢迎大家进行测试并反馈意见。

作者:科学家

Email:warensoft@163.com

微信:43175692

高频交易算法研发心得--RSI指标及应用的更多相关文章

  1. 高频交易算法研发心得--WAVT指标(Warensoft交易量趋势指标)算法及应用

    高频交易算法研发心得--WAVT指标(Warensoft交易量趋势指标)算法及应用 注:WAVT指标由Warensoft(王宇)原创. 前面聊了一系列的常见应用指标,包括短线.长线的指标,并且也无耐的 ...

  2. 高频交易算法研发心得--MACD指标算法及应用

    凤鸾宝帐景非常,尽是泥金巧样妆. 曲曲远山飞翠色:翩翩舞袖映霞裳. 梨花带雨争娇艳:芍药笼烟骋媚妆. 但得妖娆能举动,取回长乐侍君王. [摘自<封神演义>纣王在女娲宫上香时题的诗] 一首定 ...

  3. AI大厂算法测试心得:人脸识别关键指标有哪些?

    仅仅在几年前,程序员要开发一款人脸识别应用,就必须精通算法的编写.但现在,随着成熟算法的对外开放,越来越多开发者只需专注于开发垂直行业的产品即可. 由调查机构发布的<中国AI产业地图研究> ...

  4. 高频交易:Solarflare组建超低延迟网络

    10Gb以太网适配器制.网卡造商Solarflare目前正在将自己的网卡系列产品转变为服务器产品.其产品在金融领域有着广泛的应用. Solarflare首先将现场可编程门阵列(FPGA)放入网络适配器 ...

  5. 以股票RSI指标为例,学习Python发送邮件功能(含RSI指标确定卖点策略)

    本人之前写过若干“给程序员加财商”的系列文,目的是通过股票案例讲述Python知识点,让大家在学习Python的同时还能掌握相关的股票知识,所谓一举两得. 在之前的系列文里,大家能看到K线,均线,成交 ...

  6. 商品期货高频交易策略Tick框架

    原帖地址:https://www.fmz.com/bbs-topic/1184在商品期货高频交易策略中, Tick行情的接收速度对策略的盈利结果有着决定性的影响,但市面上大多数交易框架,都是采用回调模 ...

  7. Java才是世界上最好的语言,Java在高频交易中替代C++

    高频交易 高频交易是指从那些人们无法利用的极为短暂的市场变化中寻求获利的计算机化交易,比如,某种证券买入价和卖出价差价的微小变化,或者某只股票在不同交易所之间的微小价差.在高频交易中,自动化应用程序每 ...

  8. 高频交易[z]

    著作权归作者所有.商业转载请联系作者获得授权,非商业转载请注明出处.作者:袁浩瀚链接:https://www.zhihu.com/question/21789812/answer/22178178来源 ...

  9. 高频交易策略之Penny Jump[z]

    高频交易策略之Penny Jump 今天假设有一个笨笨的大型机构投资人(共同基金,银行,退休基金....),他想要买进一只股票,但又不想挂市价买进,所以就在市场里面挂了一张要买进的大单.这时候所有市场 ...

随机推荐

  1. CSS3实战开发: 纯CSS实现图片过滤分类显示特效

    原文:CSS3实战开发: 纯CSS实现图片过滤分类显示特效 各位网友大家好,今天我要带领大家开发一个纯CSS的图片分类显示的网址导航,单纯看标题大家可能有些困惑,依照以往惯例,我先给大家演示一下实际运 ...

  2. CSS背景图片定位

    原文:CSS背景图片定位 在网页开发中我们经常需要对图片进行分割(如下图)来使用,而不是分别提供单独的图片来调用,常见的如页面背景,按钮图标等,这样做的好处就是减少请求次数,节省时间和带宽. 对背景图 ...

  3. SQL点滴1—SET QUOTED_IDENTIFIER OFF语句的作用

    原文:SQL点滴1-SET QUOTED_IDENTIFIER OFF语句的作用 先看下面几个sql语句 代码   SELECT * FROM [USER]    WHERE a= 'netasp' ...

  4. openwrt补丁

    http://wiki.openwrt.org/doc/devel/patches 中文文档:http://andelf.diandian.com/post/2013-05-22/4005067737 ...

  5. [译]Java 设计模式之组合

    (文章翻译自Java Design Pattern: Composite) 组合模式相对来说是比较简单的,但是它在很多设计中被用到,比如SWT.Eclipse工作空间等等.它创建了一个可以通过唯一的方 ...

  6. Machine Learning - XI. Machine Learning System Design机器学习系统的设计(Week 6)

    http://blog.csdn.net/pipisorry/article/details/44119187 机器学习Machine Learning - Andrew NG courses学习笔记 ...

  7. POJ Big Christmas Tree(最短的基础)

    Big Christmas Tree 题目分析: 叫你构造一颗圣诞树,使得 (sum of weights of all descendant nodes) × (unit price of the ...

  8. SQL Server查看表结构及视图,适合开发者使用,简单易用

    SELECT * FROM INFORMATION_SCHEMA.TABLES SELECT * FROM INFORMATION_SCHEMA.COLUMNS 查看执行结果

  9. 解决nexus下载maven索引的问题

    解决nexus下载maven索引的问题 (2011-10-12 17:48:46) 转载▼ 标签: it 分类: java 转自 http://www.colorfuldays.org/program ...

  10. Smarty注释代码

    所有的smarty模板标签都被加上了定界符. 默认情况下是 { 和},但它们是可被改变的. 例如,我们假定你在使用默认定界符. 在smarty里,所有定界符以外的内容都是静态输出的,或者称之为不可改变 ...