搜索
查看: 34741|回复: 36

跨周期引用的新MACD

[复制链接]

签到天数: 3171 天

发表于 2010-11-1 08:38 | 显示全部楼层

跨周期引用的新MACD

来自:MACD论坛(bbs.shudaoyoufang.com) 作者:奉然 浏览:34741 回复:36

马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。

您需要 登录 才可以下载或查看,没有帐号?立即注册

x
应21693朋友的提议:


“可否做每五个交易日滚动统计一次的周macd”
平常周macd是每周一个数值,周线上是连续的曲线,换成日线上看就是每周一个数值,不是周末,数值还不确定,感觉很别扭,我希望得到一个非自然周的周macd,从当前倒推每5个交易日为一周,这样每天都有唯一确定的周macd,看看效果。
找您求助。


此提议很好,是跨周期引用的优化版#*22*# ,或许有实用价值。试编了一个指标,请感兴趣的朋友改进,#*19*#

源码如下:
ZF:="MACD.DIFF#WEEK";
ZC:=ZF>REF(ZF , 1) OR ZF<REF(ZF , 1);
ZCZ:=COUNT(ZC ,0 );
ZTX:=BARSCOUNT( C)/ZCZ;
{A:=BARSLAST(ZC=1 )+1;}
RF := EMA(CLOSE,12*ZTX) - EMA(CLOSE,26*ZTX);
RA  := EMA(RF,9*ZTX);
RD := 2*(RF-RA){, COLORSTICK};
ZDIFF:MA(IF(WEEKDAY=5 ,ZF ,ZF+(RF-REF(RF , 1)) ) ,3 );
ZDEA:EMA(ZDIFF,9*ZTX);
ZMACD : 2*(ZDIFF-ZDEA), COLORSTICK;

01.gif

02.gif



[ 本帖最后由 奉然 于 2010-11-1 09:19 编辑 ]
03.gif
参与人数 2奖励 +44 热心 +8 金币 +1 时间 理由
pkkey + 8 + 3 2014-6-22 19:50 MACD有楼主更精彩!
LPH969 + 36 + 5 + 1 2010-11-1 09:12 感谢楼主分享,收藏并加分支持!

查看全部评分

金币:
奖励:
热心:
注册时间:
2006-5-3

回复 使用道具 举报

发表于 2010-11-1 08:50 | 显示全部楼层
不知道通信达能用不,尽然是沙发
金币:
奖励:
热心:
注册时间:
2010-9-17

回复 使用道具 举报

签到天数: 4 天

发表于 2010-11-1 08:58 | 显示全部楼层
奉版功力非同凡响!
金币:
奖励:
热心:
注册时间:
2007-6-20

回复 使用道具 举报

签到天数: 1 天

发表于 2010-11-1 09:12 | 显示全部楼层
#*)*# #bb# #*19*#
金币:
奖励:
热心:
注册时间:
2006-4-15

回复 使用道具 举报

签到天数: 221 天

发表于 2010-11-1 09:24 | 显示全部楼层
#*d1*# #bb#
很好!谢谢!
金币:
奖励:
热心:
注册时间:
2001-6-27

回复 使用道具 举报

签到天数: 3171 天

 楼主| 发表于 2010-11-1 09:26 | 显示全部楼层
一楼首发指标存在漂移,现已重新编辑修正#*19*#
金币:
奖励:
热心:
注册时间:
2006-5-3

回复 使用道具 举报

发表于 2010-11-1 13:38 | 显示全部楼层
学习了#*19*#
金币:
奖励:
热心:
注册时间:
2007-11-3

回复 使用道具 举报

指标公式及程序化交易股市捉妖记艾略特波浪看盘无影无棕学术交流家园

发表于 2010-11-1 20:13 | 显示全部楼层
谢谢斑竹!
我用的是飞狐,提示“行6,操作数类型错误”,如何修改?
谁能帮忙转换一下?

DIF:EMA(CLOSE,S)-EMA(CLOSE,L);
难点在于CLOSE取值,您看这样如何?
CLOSE=(从今天倒推每5天的收盘价);
可否?

谢谢
金币:
奖励:
热心:
注册时间:
2001-12-17

回复 使用道具 举报

签到天数: 3171 天

 楼主| 发表于 2010-11-1 20:37 | 显示全部楼层
原帖由 21693 于 2010-11-1 20:13 发表
谢谢斑竹!
我用的是飞狐,提示“行6,操作数类型错误”,如何修改?
谁能帮忙转换一下?

DIF:EMA(CLOSE,S)-EMA(CLOSE,L);
难点在于CLOSE取值,您看这样如何?
CLOSE=(从今天倒推每5天的收盘价);
可否 ...



一楼的分析家指标源码,飞狐通不过是因为两个软件的函数有所不同。

用以下源码飞狐能通过

周线:="MACD.DIFF#WEEK";
模拟周线 := EMA(CLOSE,12*4.7) - EMA(CLOSE,26*4.7);
DIFF:MA(IF(WEEKDAY=5 ,周线 ,周线+(模拟周线-REF(模拟周线 , 1)) ) ,3 );
DEA:EMA(DIFF,9*4.7);
MACD : 2*(DIFF-DEA), COLORSTICK;

你的思路我还没弄清楚,详细说说我们再探讨#*19*#

[ 本帖最后由 奉然 于 2010-11-2 07:17 编辑 ]
金币:
奖励:
热心:
注册时间:
2006-5-3

回复 使用道具 举报

指标公式及程序化交易股市捉妖记艾略特波浪看盘无影无棕学术交流家园

发表于 2010-11-2 22:10 | 显示全部楼层
谢谢变换飞狐

模拟周线 := EMA(CLOSE,12*4.7) - EMA(CLOSE,26*4.7);

我设想CLOSE是提取一组日线,每隔5日的收盘价,ref(c,5*n)

可否?
金币:
奖励:
热心:
注册时间:
2001-12-17

回复 使用道具 举报

签到天数: 3171 天

 楼主| 发表于 2010-11-3 06:59 | 显示全部楼层
原帖由 21693 于 2010-11-2 22:10 发表
谢谢变换飞狐

模拟周线 := EMA(CLOSE,12*4.7) - EMA(CLOSE,26*4.7);

我设想CLOSE是提取一组日线,每隔5日的收盘价,ref(c,5*n)

可否?


由于存在节假日休市.停牌等原因,使周K线的起始时间和天数变的没有规律,(不全是周一始,周五止),如简单用ref(c,5*n)模拟周线,时间长了,会面目全非,达不到你的原意,为此,必须引入一个周线基准信号。
直接用日线编辑周线,是很复杂的,不值得。
金币:
奖励:
热心:
注册时间:
2006-5-3

回复 使用道具 举报

指标公式及程序化交易股市捉妖记艾略特波浪看盘无影无棕学术交流家园

发表于 2010-11-3 16:15 | 显示全部楼层
是的,完全一致不可能。
不断修正,力求近似。
请问向前每隔5日的收盘价应该如何表达?
谢谢
金币:
奖励:
热心:
注册时间:
2001-12-17

回复 使用道具 举报

签到天数: 3171 天

 楼主| 发表于 2010-11-3 18:11 | 显示全部楼层
原帖由 21693 于 2010-11-3 16:15 发表
是的,完全一致不可能。
不断修正,力求近似。
请问向前每隔5日的收盘价应该如何表达?
谢谢


REF(c ,5 );
金币:
奖励:
热心:
注册时间:
2006-5-3

回复 使用道具 举报

指标公式及程序化交易股市捉妖记艾略特波浪看盘无影无棕学术交流家园

发表于 2010-11-3 19:37 | 显示全部楼层
REF(c ,5 );
是5日前,
我是想表达
REF(c ,5*0 );REF(c ,5*1 );REF(c ,5*2 );....
这样一个函数。
请问应该如何做?
金币:
奖励:
热心:
注册时间:
2001-12-17

回复 使用道具 举报

签到天数: 3171 天

 楼主| 发表于 2010-11-3 22:36 | 显示全部楼层
原帖由 21693 于 2010-11-3 19:37 发表
REF(c ,5 );
是5日前,
我是想表达
REF(c ,5*0 );REF(c ,5*1 );REF(c ,5*2 );....
这样一个函数。
请问应该如何做?


不清楚需要表达什么#*31*#
金币:
奖励:
热心:
注册时间:
2006-5-3

回复 使用道具 举报

签到天数: 1 天

发表于 2010-11-4 06:47 | 显示全部楼层
非同凡响!
金币:
奖励:
热心:
注册时间:
2008-11-10

回复 使用道具 举报

指标公式及程序化交易股市捉妖记艾略特波浪看盘无影无棕学术交流家园

发表于 2010-11-4 19:42 | 显示全部楼层
可能我表达的不够明确,

我是需要函数表达

c ; REF(c ,5*1 ); REF(c ,5*2 );....REF(c ,5*n );
其中 n 取值是0,1,2,3......这样的自然数列。

这样清楚吗
金币:
奖励:
热心:
注册时间:
2001-12-17

回复 使用道具 举报

签到天数: 157 天

发表于 2010-11-4 23:04 | 显示全部楼层
谢谢提供,好像数值不符,无法体现周线MACD
金币:
奖励:
热心:
注册时间:
2004-10-31

回复 使用道具 举报

签到天数: 3171 天

 楼主| 发表于 2010-11-5 10:18 | 显示全部楼层
原帖由 21693 于 2010-11-4 19:42 发表
可能我表达的不够明确,

我是需要函数表达

c ; REF(c ,5*1 ); REF(c ,5*2 );....REF(c ,5*n );
其中 n 取值是0,1,2,3......这样的自然数列。

这样清楚吗


还是不清楚,#*31*#
先用文字说明意图,再用函数对应表述。
要一步一步的按顺序逐步进行。
金币:
奖励:
热心:
注册时间:
2006-5-3

回复 使用道具 举报

发表于 2010-12-11 10:09 | 显示全部楼层
我的是通达信软件,不能用好像。
金币:
奖励:
热心:
注册时间:
2009-8-1

回复 使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

本站声明:MACD仅提供交流平台,请交流人员遵守法律法规。
值班电话:18209240771   微信:35550268

举报|意见反馈|手机版|MACD俱乐部

GMT+8, 2025-4-14 23:33 , Processed in 0.053837 second(s), 15 queries , Redis On.

Powered by Discuz! X3.4

© 2001-2017 Comsenz Inc.

快速回复 返回顶部 返回列表