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


金字塔客服中心 - 专业程序化交易软件提供商金字塔软件策略编写求助区 → 求MACD顶背开单(有底背代码请修改 )

   

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


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

主题:求MACD顶背开单(有底背代码请修改 )

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


加好友 发短信
等级:新手上路 帖子:47 积分:0 威望:0 精华:0 注册:2017/1/20 15:28:02
求MACD顶背开单(有底背代码请修改 )  发帖心情 Post By:2017/11/27 10:58:33 [只看该作者]

老师您好,以下底背离开单代码,麻烦帮我换成顶背离开空单的,谢谢!



//MACD指标背离
DIFF := EMA(CLOSE,12) - EMA(CLOSE,26);
DEA  := EMA(DIFF,9);
MACD := 2*(DIFF-DEA), COLORSTICK; //MACD原来的
gnum:=barslast(ref(macd>0,1) and macd<0);//红转绿
bnum:=barslast(ref(macd<0,1) and macd>0);//绿转红
if ref(macd,1)>0 and macd<0 then 
begin
 gsum:=0;    //绿柱开始,清0
 glong:=0;    //绿柱开始,清0
 glow:=low;  //绿柱开始,初始化
end
if macd<0 then 
begin
 gsum:=gsum+macd;                                    //累加
 if abs(macd)>abs(glong) then glong:=macd;//如果绿柱更长,则记录
 if low<glow then glow:=low;                         //如果价格更低,则记录
end
 numb:=max(gnum,bnum)+1;
con1:=abs(gsum)<abs(ref(gsum,numb));//面积小于前一波--面积没创新低
con2:=abs(glong)<abs(ref(glong,numb));//柱子长度小于前一波----长度没创新低
con3:=glow<ref(glow,numb);//价格小于前一波-----价格创新低
 {//当绿柱开始收缩时(熊市即将结束,可能反转向上(或低位盘整)),如果出现低背离,则少量建仓
if all(macd<0,3) and ref(macd,1)<macd and ref(macd,1)<ref(macd,2) then
begin
 if con1 and con2 and con3 then buy(1,1,market);//低背离,面积没创新低,长度没创新低,价格创新低
end}
 //绿柱消失、红柱开始放出时(下跌行情(或低位盘整)已经结束),如果出现低背离,则加仓
if ref(macd<0,1) and macd>0 then
begin
    if con1 and con2 and con3  then M背加:buy(1,1,market);//低背离,面积没创新低,长度没创新低,价格创新低
end


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


加好友 发短信
等级:新手上路 帖子:47 积分:0 威望:0 精华:0 注册:2017/1/20 15:28:02
  发帖心情 Post By:2017/11/28 8:41:17 [只看该作者]

图片点击可在新窗口打开查看图片点击可在新窗口打开查看

 回到顶部
美女呀,离线,留言给我吧!
pyd
  3楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:超级版主 帖子:8439 积分:0 威望:0 精华:0 注册:2014/7/14 13:43:36
  发帖心情 Post By:2017/12/8 15:28:21 [只看该作者]

//MACD指标背离
DIFF := EMA(CLOSE,12) - EMA(CLOSE,26);
DEA  := EMA(DIFF,9);
MACD := 2*(DIFF-DEA), COLORSTICK; //MACD原来的
gnum:barslast(ref(macd>0,1) and macd<0);//红转绿   后到当前的数量
bnum:barslast(ref(macd<0,1) and macd>0);//绿转红   后到当前的数量
if ref(macd,1)<0 and macd>0 then
begin
 ssum:=0;    //红柱开始,清0
 slong:=0;    //红柱开始,清0
 shigh:=high;  //红柱开始,初始化
end
if macd>0 then
begin
ssum:=ssum+macd; //累加红柱
if abs(macd)>abs(slong) then slong:=macd; //如果红柱更惨,则记录红柱
if high>shigh then shigh:=high;      //如果价格更高,则记录最高价
end
nums:=max(gnum,bnum)+1;
con4:abs(ssum)<abs(ref(ssum,nums)); //面积小于前一波--面积没创新低
con5:abs(slong)<abs(ref(slong,nums));//柱子长度小于前一波----长度没创新低
con6:shigh>ref(shigh,nums);     //价格大于前一波-----价格创新高
if ref(macd>0,1) and macd<0 then
begin
    if con4 and con5 and con6  then buyshort(1,1,market);//低背离,面积没创新低,长度没创新低,价格创新低
end

 


 回到顶部