欢迎使用金字塔普通技术服务论坛,您可以在相关区域发表技术支持贴。
我司技术服务人员将优先处理 VIP客服论坛 服务贴,普通区问题处理速度慢,请耐心等待。谢谢您对我们的支持与理解。


金字塔客服中心 - 专业程序化交易软件提供商金字塔软件公式模型编写问题提交 → 类EMA算法实现问题

   

欢迎使用金字塔普通技术服务论坛,您可以在相关区域发表技术支持贴。
我司技术服务人员将优先处理 VIP客服论坛 服务贴,普通区问题处理速度慢,请耐心等待。谢谢您对我们的支持与理解。    


  共有4980人关注过本帖树形打印复制链接

主题:类EMA算法实现问题

帅哥哟,离线,有人找我吗?
luoxlt
  1楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:新手上路 帖子:76 积分:0 威望:0 精华:0 注册:2017/3/24 10:01:13
类EMA算法实现问题  发帖心情 Post By:2019/4/17 11:34:41    Post IP:180.169.30.6[显示全部帖子]

AA:=CONSTANT*CLOSE +(1-CONSTANT)*昨天的AA;

请问这个该怎么表达?其中CONSTANT是一个平滑系数;如果要一个初始值的话。那就从第20根k线开始,初始值等于第二十根k线的CLOSE;

 回到顶部
帅哥哟,离线,有人找我吗?
luoxlt
  2楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:新手上路 帖子:76 积分:0 威望:0 精华:0 注册:2017/3/24 10:01:13
  发帖心情 Post By:2019/4/17 15:11:10    Post IP:120.239.40.152[显示全部帖子]

嗯,这里应该要用上循环语句吧?想要得到整个结果。也就是当前的AA。不好意思,刚刚才看到。

 回到顶部
帅哥哟,离线,有人找我吗?
luoxlt
  3楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:新手上路 帖子:76 积分:0 威望:0 精华:0 注册:2017/3/24 10:01:13
  发帖心情 Post By:2019/4/17 15:54:14    Post IP:120.239.40.152[显示全部帖子]

好的,谢谢。

 回到顶部
帅哥哟,离线,有人找我吗?
luoxlt
  4楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:新手上路 帖子:76 积分:0 威望:0 精华:0 注册:2017/3/24 10:01:13
  发帖心情 Post By:2019/4/17 16:28:19    Post IP:120.239.40.152[显示全部帖子]

找到一个连接。实际上就是想实现这里面的这条均线。

为了方便翻译,我把前面部分代码写了一下。
input:p(16,2,1000,2);
n1:=(ref(hhv(h,p/2),p/2)-ref(llv(l,p/2),p/2))/(p/2);
n2:=(hhv(h,p/2)-llv(l,p/2))/(p/2);
n3:=(hhv(h,p)-llv(l,p))/p;
D:=(Log(n1+n2)-Log(n3))/Log(2);
α:=EXP(-4.6*(D-1));
//FRAMA=α*Price +(1-α)*昨天的FRAMA

就是最后这句,我参考考夫曼的写法。能拼凑出类似的均线。整体效果如下。但是毕竟不是这样的写法。
input:p(16,2,1000,2);
n1:=(ref(hhv(h,p/2),p/2)-ref(llv(l,p/2),p/2))/(p/2);
n2:=(hhv(h,p/2)-llv(l,p/2))/(p/2);
n3:=(hhv(h,p)-llv(l,p))/p;
D:=(Log(n1+n2)-Log(n3))/Log(2);
α:=EXP(-4.6*(D-1));
//FRAMA=α*Price +(1-α)*昨天的FRAMA
CC:=CLOSE;
IF DATACOUNT > p THEN
DD[p]:=CC[(p + 1)];
FOR I=p + 1 to DATACOUNT DO
DD[I]:=(DD[(I - 1)] + (α[I] * (CC[I] - DD[(I - 1)])));
FRAMA:(DD),LINETHICK2;


为了方便理解,再附另外一个连接和代码。最后的这个连接和代码。我也不会这里面的语言。但是整体上大概能理解这上面的意思。

N1(i) = N(Length,i)
N2(i) = N(Length,i + Length)
N3(i) = N(2 * Length,i)
D = (LOG(N1 + N2) - LOG(N3))/LOG(2)
A(i) = EXP(-4.6 * (D(i) - 1))
FRAMA(i) = A(i) * Price(i) + (1 - A(i)) * FRAMA(i-1)


麻烦你了,非常感谢。

 回到顶部
帅哥哟,离线,有人找我吗?
luoxlt
  5楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:新手上路 帖子:76 积分:0 威望:0 精华:0 注册:2017/3/24 10:01:13
  发帖心情 Post By:2019/4/17 16:49:40    Post IP:120.239.40.152[显示全部帖子]

就剩最后这句的实现。
input:p(16,2,1000,2);
n1:=(ref(hhv(h,p/2),p/2)-ref(llv(l,p/2),p/2))/(p/2);
n2:=(hhv(h,p/2)-llv(l,p/2))/(p/2);
n3:=(hhv(h,p)-llv(l,p))/p;
D:=(Log(n1+n2)-Log(n3))/Log(2);
α:=EXP(-4.6*(D-1));
FRAMA=α*Price +(1-α)*昨天的FRAMA//最后这句

 回到顶部
帅哥哟,离线,有人找我吗?
luoxlt
  6楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:新手上路 帖子:76 积分:0 威望:0 精华:0 注册:2017/3/24 10:01:13
  发帖心情 Post By:2019/4/17 17:30:15    Post IP:120.239.40.152[显示全部帖子]

FRAMA的初始值可以定为p+1的收盘价。(这里还是参考了考夫曼的做法,不知道是否恰当,但是应该也不会有别的大问题了)。非常感谢。看来有戏哦。我折腾了不少时间,但是目前没有完成这个任务。

 回到顶部
帅哥哟,离线,有人找我吗?
luoxlt
  7楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:新手上路 帖子:76 积分:0 威望:0 精华:0 注册:2017/3/24 10:01:13
  发帖心情 Post By:2019/4/18 11:17:04    Post IP:120.239.40.152[显示全部帖子]

嗯,第P+1个周期的 收盘价;Price:=(h+l)/2;

 回到顶部
帅哥哟,离线,有人找我吗?
luoxlt
  8楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:新手上路 帖子:76 积分:0 威望:0 精华:0 注册:2017/3/24 10:01:13
  发帖心情 Post By:2019/4/18 16:50:59    Post IP:120.239.40.152[显示全部帖子]

非常感谢。刚刚看一下网页,竟然出现了。图片点击可在新窗口打开查看图片点击可在新窗口打开查看图片点击可在新窗口打开查看图片点击可在新窗口打开查看图片点击可在新窗口打开查看图片点击可在新窗口打开查看图片点击可在新窗口打开查看图片点击可在新窗口打开查看

 回到顶部
帅哥哟,离线,有人找我吗?
luoxlt
  9楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:新手上路 帖子:76 积分:0 威望:0 精华:0 注册:2017/3/24 10:01:13
  发帖心情 Post By:2019/4/18 16:51:55    Post IP:120.239.40.152[显示全部帖子]

感谢FireScript的辛苦付出,辛苦了。

 回到顶部