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


金字塔客服中心 - 专业程序化交易软件提供商金字塔软件公式模型编写问题提交 → [求助]减少回撤

   

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


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

主题:[求助]减少回撤

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


加好友 发短信
等级:论坛游民 帖子:124 积分:0 威望:0 精华:0 注册:2016/5/20 23:55:21
[求助]减少回撤  发帖心情 Post By:2017/3/17 10:15:52    Post IP:120.33.65.198[显示全部帖子]

老师,请问你一下,以下为开平仓条件,我想设置如果是亏损单的话,则平仓后反向开仓,并设5点止损和5点止赢,而且这个平仓条件不能作为其他单子的平仓条件,只是为了减少回撤使用,该怎么设置

if c>UPPER   and macd1>ref(macd1,1)  and holding=0 and bjd=0 then   buy(holding=0,ss,marketr);

if  c<enterprice-5    and holding>0 then sell(1,holding,marketr);

if c<LOWER  and macd1<ref(macd1,1) a  and holding=0 and bjk=0    then

   buyshort(holding=0,ss,marketr);

if  c>enterprice+5  and holding<0  then sellshort(1,holding,marketr);


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


加好友 发短信
等级:论坛游民 帖子:124 积分:0 威望:0 精华:0 注册:2016/5/20 23:55:21
  发帖心情 Post By:2017/3/17 14:20:39    Post IP:120.33.65.198[显示全部帖子]

测了一下,还是对盈利的单子有影响,倒是对亏损的单子没反应,麻烦老师再帮我看看

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


加好友 发短信
等级:论坛游民 帖子:124 积分:0 威望:0 精华:0 注册:2016/5/20 23:55:21
  发帖心情 Post By:2017/3/17 14:21:11    Post IP:120.33.65.198[显示全部帖子]

我是图表的

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


加好友 发短信
等级:论坛游民 帖子:124 积分:0 威望:0 精华:0 注册:2016/5/20 23:55:21
  发帖心情 Post By:2017/3/17 14:46:37    Post IP:120.33.65.198[显示全部帖子]

截图不懂得发,您帮我看一下,下面这些代码有没有什么问题
DIFF := EMA(CLOSE,12) - EMA(CLOSE,26);
DEA  := EMA(DIFF,9);
MACD := 2*(DIFF-DEA), COLORSTICK;
abb:=(timetot0(dynainfo(207))>=time0-2) or not(islastbar);
if   DEA>0  and macd>0 and macd>ref(macd,1)   and abb  then buy(holding=0,20,marketr);
if      macd<0  and abb   and holding>0 then sell(1,0,marketr);
if   DEA<0   and macd<0 and macd<ref(macd,1)   and abb  then buyshort(holding=0,20,marketr);
if     macd>0  and abb  and holding<0  then sellshort(1,0,marketr);
variable:bj=0;
if  c>enterprice+5  and holding<0 and bj=0 then begin
   sellshort(1,holding,marketr);
   buy(1,1,marketr);
   bj:=1;
end
 
if  c<enterprice-5    and holding>0  and bj=0 then begin
    sell(1,holding,marketr);
    buyshort(1,1,marketr);
    bj:=1;
end
 
if bj=1 and holding>0 and c>enterprice+5 then begin
    sell(1,0,marketr);
    bj:=0;
end
 
if bj=1 and holding>0 and c<enterprice-5 then begin
    sell(1,0,marketr);
    bj:=0;
end
 
if bj=1 and holding<0 and c<enterprice-5 then begin
    sellshort(1,0,marketr);
    bj:=0;
end
 
if bj=1 and holding<0 and c>enterprice+5 then begin
   sellshort(1,0,marketr);
   bj:=0;
end


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


加好友 发短信
等级:论坛游民 帖子:124 积分:0 威望:0 精华:0 注册:2016/5/20 23:55:21
  发帖心情 Post By:2017/3/17 14:59:42    Post IP:120.33.65.198[显示全部帖子]

就是会出现开仓盈利5个点就平仓了,亏损没有达到5个点的就不会反向开仓的情况

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


加好友 发短信
等级:论坛游民 帖子:124 积分:0 威望:0 精华:0 注册:2016/5/20 23:55:21
  发帖心情 Post By:2017/3/17 15:11:16    Post IP:120.33.65.198[显示全部帖子]

可以了,老师太厉害图片点击可在新窗口打开查看

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


加好友 发短信
等级:论坛游民 帖子:124 积分:0 威望:0 精华:0 注册:2016/5/20 23:55:21
  发帖心情 Post By:2017/3/17 16:46:42    Post IP:120.33.65.198[显示全部帖子]

老师,我想在反向开仓加入限制条件,却无法通过,该如何解决
DIFF := EMA(CLOSE,12) - EMA(CLOSE,26);

DEA  := EMA(DIFF,9);
MACD := 2*(DIFF-DEA), COLORSTICK;
variable:bj=0;
abb:=(timetot0(dynainfo(207))>=time0-2) or not(islastbar);
if   DEA>0  and macd>0 and macd>ref(macd,1)   and abb  then buy(holding=0,20,marketr);
if      macd<0  and abb   and holding>0 then begin
       sell(1,0,marketr);
       if numprofit(1)<0 and dea>ref(dea,1) and bj=0 and holding=0 then begin
             buyshort(holding=0,1,marketr);
             bj:=1;
       end
end
if   DEA<0   and macd<0 and macd<ref(macd,1)   and abb  then buyshort(holding=0,20,marketr);
if     macd>0  and abb  and holding<0  then begin
        sellshort(1,0,marketr);
       if numprofit(1)<0 and dea<ref(dea,1) and bj=0 and holding=0 then begin
            buy(holding=0,1,market);
            bj:=1;
       end
end
 
 
 
 
if bj=1 and holding>0 and c>enterprice+5 then begin
    sell(1,0,marketr);
    bj:=0;
end
 
if bj=1 and holding>0 and c<enterprice-5 then begin
    sell(1,0,marketr);
    bj:=0;
end
 
if bj=1 and holding<0 and c<enterprice-5 then begin
    sellshort(1,0,marketr);
    bj:=0;
end
 
if bj=1 and holding<0 and c>enterprice+5 then begin
   sellshort(1,0,marketr);
   bj:=0;
end


 回到顶部