macd java 源代码_MACD交易系统原理、用法及源代码
MACD系统原理
MACD称为指数平滑移动平均线,是从双指数移动平均线发展而来的,由快的指数移动平均线(EMA12)减去慢的指数移动平均线(EMA26)得到快线DIF,再用2×(快线DIF-DIF的9日加权移动均线DEA)得到MACD柱。
MACD的意义和双移动平均线基本相同,即由快、慢均线的离散、聚合表征当前的多空状态和股价可能的发展变化趋势,但阅读起来更方便。当MACD从负数转向正数,是买的信号。当MACD从正数转向负数,是卖的信号。当MACD以大角度变化,表示快的移动平均线和慢的移动平均线的差距非常迅速的拉开,代表了一个市场大趋势的转变。
MACD在应用上应先行计算出快速(一般选12日)移动平均值与慢速(一般选26日)移动平均值。以这两个数值作为测量两者(快速与慢速线)间的“差离值”依据。所谓“差离值”(DIF),即12日EMA数值减去26日EMA数值。因此,在持续的涨势中,12日EMA在26日EMA之上。其间的正差离值(+DIF)会愈来愈大。反之在跌势中,差离值可能变负(-DIF),也愈来愈大。至于行情开始回转,正或负差离值要缩小到一定的程度,才真正是行情反转的信号。MACD的反转信号界定为“差离值”的9日移动平均值(9日EMA)。 在MACD的指数平滑移动平均线计算公式中,都分别加T+1交易日的份量权值,以现在流行的参数12和26为例,其公式如下:
12日EMA的计算:EMA(12) = 过去12日收盘价之和/12
26日EMA的计算:EMA(26) = 过去26日收盘价之和/26
差离值(DIF)的计算:DIF = EMA(12) - EMA(26)
根据差离值计算其9日的DIF平均值,即离差平均值,是所求的MACD值。为了不与指标原名相混淆,此值又名DEA或DEM。
今日DEA = (前一日DEA X 8/10 + 今日DIF X 2/10)
DIF-DEA)*2即为MACD柱状图。
故MACD指标是由两线一柱组合起来形成,快速线为DIF,慢速线为DEA,柱状图为MACD。在各类投资中,有以下方法供投资者参考:
1.当DIF和MACD均大于0(即在图形上表示为它们处于零线以上)并向上移动时,一般表示为行情处于多头行情中,可以买入开仓或多头持仓;
2.当DIF和MACD均小于0(即在图形上表示为它们处于零线以下)并向下移动时,一般表示为行情处于空头行情中,可以卖出开仓或观望。
3.当DIF和MACD均大于0(即在图形上表示为它们处于零线以上)但都向下移动时,一般表示为行情处于下跌阶段,可以卖出开仓和观望;
4.当DIF和MACD均小于0时(即在图形上表示为它们处于零线以下)但向上移动时,一般表示为行情即将上涨,股票将上涨,可以买入开仓或多头持仓。
MACD系统源代码:
DIFF= EMA(CLOSE,SHORT) - EMA(CLOSE,LONG);
DEA = EMA(DIFF,m);
IF(Long>short)
IF (CROSS(diff,dea)) BUY;
IF (CROSS(dea,diff)) SELL;
MACD系统图形详解如下图:
图1.MACD系统
图2.MACD系统
图3.MACD系统
MACD系统用法说明:
分析MACD柱状线,由绿变红(负变正),买入信号。DIFF与DEA形成金叉时为买入信号。
分析MACD柱状线,由红变绿(正变负),卖出信号。DEA与DIFF形成死叉时为卖出信号。
参数:LONG、SHORT、M 天数,计算MACD时用,一般26、12、9。
macd java 源代码_MACD交易系统原理、用法及源代码相关推荐
- Java 中的 XML:Java 文档模型的用法
Java 中的 XML:Java 文档模型的用法 英文原文 内容: 代码对比 DOM JDOM dom4j Electric XML XPP 结束语 下一次... 参考资料 关于作者 对本文的评价 相 ...
- java中include标签的用法_原 ng-include用法分析以及多标签页面的简单实现方式
在平时的项目开发中,应该会经常遇到上图所示的需求,就是在一个页面中有多个标签,被选中的标签颜色会高亮显示,切换不同标签显示相应的不同内容.如果内容代码过多则写在同一个html文件就会显得特别乱,所以这 ...
- 用影片《记忆碎片》解释Java注解的工作原理
注解于我们而言并不陌生,遗憾的是,大多数人对于注解的认识,都只停留在使用的层面上,对其背后的原理则知之甚少. 在享受注解所带来的便利的同时,你是否也曾发出过这样的疑问,即: 小小的一个注解,是怎么帮我 ...
- java高级----Java动态代理的原理
Java动态代理机制的出现,使得 Java 开发人员不用手工编写代理类,只要简单地指定一组接口及委托类对象,便能动态地获得代理类.代理类会负责将所有的方法调用分派到委托对象上反射执行,在分派执行的过程 ...
- Java 线程池的原理与实现
最近在学习线程池.内存控制等关于提高程序运行性能方面的编程技术,在网上看到有一哥们写得不错,故和大家一起分享. [分享]Java 线程池的原理与实现 这几天主要是狂看源程序,在弥补了一些以前知识空白的 ...
- 【转】Java 枚举7常见种用法
原文网址:http://softbeta.iteye.com/blog/1185573 Java 枚举7常见种用法 博客分类: java java枚举enmu 原创地址:http://blog.li ...
- java 字节码增强原理_深入浅出Java探针技术1--基于java agent的字节码增强案例
Java agent又叫做Java 探针,本文将从以下四个问题出发来深入浅出了解下Java agent 一.什么是java agent? Java agent是在JDK1.5引入的,是一种可以动态修改 ...
- Java HashMap的工作原理 及各种Map区别
2019独角兽企业重金招聘Python工程师标准>>> 一.Java HashMap的工作原理 jdk1.7下HashMap数据结构:数组加链表,链表长度没有8的限制: jdk1.8 ...
- java原理教程,java基础之运行原理(一),java基础运行原理
java基础之运行原理(一),java基础运行原理 java的核心配置:JDK JDK主要包括三个部分 1.Jre:java的运行环境 2.Java的工具:java的编译器(java.c.exe). ...
最新文章
- 你真的会玩SQL吗?Case的用法(转)
- Leetcode 58.最后一个单词的长度 (每日一题 20210705)
- [转载]数据结构笔试题基础
- 程序猿 自己所擅长的还是码代码 请远离 业务。
- 2019-11-07 检查gcc交叉编译器预定义宏(ARM32/ARM64/X86-64)以及对浮点数的支持情况
- 计算机网络管理员高级操作技能考核试卷,高级计算机维修工操作技能考核试卷...
- fastdfs 集群 java,第四套:FastDFS 分布式文件系统集群与应用(视频)
- java定时任务插件_jfinal定时调度任务插件QuartzPlugin
- 谷歌浏览器Chrome离线安装包下载地址
- zte中兴客户端掉线的一种解决办法
- abp Cannot access a disposed object. A common cause of this error is disposing
- matlab显示tiff为全白_Matlab读写TIFF图像
- 靠写代码登上胡润富豪榜花半年写得Python基础 入门必看
- html5锚点平滑,使用锚点定位不改变url同时平滑的滑动到锚点位置,不会生硬的直接到锚点位置...
- 是时候来一发炸裂的开场了!
- 清华计算机系科学博士毕业论文要求,博士可以不发SCI毕业?清华取消博士论文发表强制要求...
- 蓝牙认证测试调试记录
- 网站字体颜色大小php代码,html字体颜色的设置方法
- SpringBoot2.x 监听器详解
- mmyolo训练yolov5~ppyoloe
热门文章
- 9-Qt6 QString和QChar
- python显示1000以内的斐波拉契数列_python实现斐波那契数列
- linux面向连接的协议,linuxTCP协议.ppt
- ie对java的设置字体_关于IE6幽灵字体 - JavaSwing的个人空间 - OSCHINA - 中文开源技术交流社区...
- python入门题目及答案_Python基础自测题答案和基础知识梳理
- 三维列表转换成数组时,维度却只有二维
- mysql show schema_快速入门 · xiaoboluo768/mysql-system-schema Wiki · GitHub
- 停车场计费算法 php,停车场收费算法,思路卡住了求补完!该如何处理
- python红色的颜色表达式_50行Python代码实现视频中物体颜色识别和跟踪(必须以红色为例)...
- ant指定servlet版本_Spring工具 - AntPathMatcherUrlPathHelper(针对URL进行处理)