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


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

   

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


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

主题:编写求助

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


加好友 发短信
等级:论坛游侠 帖子:236 积分:0 威望:0 精华:0 注册:2017/7/20 10:49:07
编写求助  发帖心情 Post By:2017/7/24 9:59:41    Post IP:183.160.73.55[只看该作者]

请问我在图表程序化运行中,用type(1)<>3来过滤连续开空的信号,为什么还是出现连续开空的情况呢?请帮忙看下,谢谢!!!

 

代码:

VARIABLE:dzsATR=0,kzsATR=0;

ma20:ref(ma(c,20),1);
hh:=HHV(ref(h,1),200);
ll:llv(ref(l,1),200);
aa:=ref(c,1)<ma20;

TR1:= MAX(MAX((HIGH-LOW),ABS(REF(CLOSE,1)-HIGH)),ABS(REF(CLOSE,1)-LOW));
ATR:= ref(MA(TR1,20),1);

//“ATR止损”赋值
if type(1)<>1 and type(1)<>3 then BEGIN
 dzsATR:=0;
 kzsATR:=0;
 end
 
 
 //开多
 if type(1)<>1 and h>hh and o<=hh then BEGIN
  buy(1 ,20%,MARKET);
  dzsATR:=hh-ATR;
  end


 
 //平多
 //ATR止损 
 if l<dzsATR then BEGIN
  sell(1,ENTERVOL,market);
  
  end
  
 //原价止损 
 if l<ENTERPRICE and enterbars>4 then BEGIN
  sell(1,entervol,market);
  end
  
 //m20止损
 if aa and type(1)=1 then BEGIN
  sell(1 ,entervol,market);
   
  end  
      
 //开空
 if type(1)<>3 and l<ll and o>=ll then BEGIN
  BUYSHORT(1,20%,market);
  kzsATR:=ll+ATR;
  end
 
  
 //平空
 if h>kzsATR then BEGIN
  SELLSHORT(1,entervol,market);
  
  end
  
 if h>ENTERPRICE and  enterbars>4 then BEGIN
 SELLSHORT(1,ENTERVOL,market);
 end
 
 
 if aa=0 and type(1)=3 then BEGIN
  sellshort(1,entervol,market);
  
  end


持仓:holding,linethick0;
资产:asset,noaxis,COLORBROWN;
可用现金:cash(0),linethick0;


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


加好友 发短信
等级:超级版主 帖子:8439 积分:0 威望:0 精华:0 注册:2014/7/14 13:43:36
  发帖心情 Post By:2017/7/24 10:08:07    Post IP:180.169.30.6[只看该作者]

过滤连续开多连续开空要再开多和开空条件里分别加上holding=0的限制


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


加好友 发短信
等级:论坛游侠 帖子:236 积分:0 威望:0 精华:0 注册:2017/7/20 10:49:07
  发帖心情 Post By:2017/7/24 10:18:27    Post IP:183.160.73.55[只看该作者]

以下是引用pyd在2017/7/24 10:08:07的发言:

过滤连续开多连续开空要再开多和开空条件里分别加上holding=0的限制

我图表运行了多个品种,用holding函数会不会出现干扰?


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


加好友 发短信
等级:管理员 帖子:26631 积分:0 威望:0 精华:7 注册:2015/4/9 14:59:07
  发帖心情 Post By:2017/7/24 10:20:26    Post IP:180.169.30.6[只看该作者]

你说的是这种情况?你这种情况开平在同一根k上。


图片点击可在新窗口打开查看此主题相关图片如下:2.png
图片点击可在新窗口打开查看

 

并且//平空

下面这个语句在有开空的同时肯定平,h>0    kzsATR恒为0啊
 if h>kzsATR then BEGIN
  SELLSHORT(1,entervol,market);
 
  end



编程无捷径,技巧靠积累。
 回到顶部
帅哥哟,离线,有人找我吗?
2017gogogoo
  5楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:论坛游侠 帖子:236 积分:0 威望:0 精华:0 注册:2017/7/20 10:49:07
  发帖心情 Post By:2017/7/24 10:51:33    Post IP:183.160.73.55[只看该作者]

以下是引用wenarm在2017/7/24 10:20:26的发言:

你说的是这种情况?你这种情况开平在同一根k上。


图片点击可在新窗口打开查看此主题相关图片如下:2.png
图片点击可在新窗口打开查看

 

并且//平空

下面这个语句在有开空的同时肯定平,h>0    kzsATR恒为0啊
 if h>kzsATR then BEGIN
  SELLSHORT(1,entervol,market);
 
  end

谢谢你费心帮我运行代码,我刚接触金字塔,主观交易的老手,但是是程序化的菜鸟,请帮忙耐心解答。

kzsATR的设计思路是记录开仓那一刻突破价-ATR的值(以作空为例),开空以后kzsATR就已经被赋值的,所以不恒为0.

//开空
 if type(1)<>3 and l<ll and o>=ll then BEGIN
  BUYSHORT(1,20%,market);
  kzsATR:=ll+ATR;
  end

 

整个代码是会开平出现在同一根K线上,这种情况没有办法回测的,这个我很清楚,但我感觉下单应该不会出现问题,所以这个模型是单纯用来下单用的,回测我是改动之后另外进行的。但今天运行的结果是出现连续开空的情况,而且到了止损位没有平仓,所以我现在很乱了,不知道问题出在哪里?


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


加好友 发短信
等级:论坛游侠 帖子:236 积分:0 威望:0 精华:0 注册:2017/7/20 10:49:07
  发帖心情 Post By:2017/7/24 10:58:13    Post IP:183.160.73.55[只看该作者]

其实我的思路很简单,以做空为例,运行在5分钟K线上,突破200根K线最低价市价追空,有三个平仓条件,

①反向突破(信号价+ATR)市价平仓;

②5根K线(包括入场K线)后最新价<开仓价市价平仓;

③收盘价站上m20市价平仓。

 

做多反过来就可以了,就这么简单,您觉得我应该怎么改?万分感谢!!!!!!!!!!!!!

[此贴子已经被作者于2017/7/24 10:58:56编辑过]

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


加好友 发短信
等级:论坛游侠 帖子:236 积分:0 威望:0 精华:0 注册:2017/7/20 10:49:07
  发帖心情 Post By:2017/7/24 11:06:30    Post IP:183.160.73.55[只看该作者]

上面写错了

 

②5根K线(包括入场K线)后最新价>开仓价市价平仓;


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


加好友 发短信
等级:论坛游侠 帖子:236 积分:0 威望:0 精华:0 注册:2017/7/20 10:49:07
  发帖心情 Post By:2017/7/24 13:40:09    Post IP:183.160.73.55[只看该作者]

请帮忙解答下,谢谢谢谢!!


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


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

1,突破前200根k先最低价写法是:l<ref(llv(l,200),1)

2,过滤连续开多开空信号 在开仓条件里限制holding=0 才开仓。

3,不止损可以输出条件看下是不是没有满足止损条件

调试技巧:http://www.weistock.com/bbs/dispbbs.asp?boardid=4&id=1246

 


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


加好友 发短信
等级:论坛游侠 帖子:236 积分:0 威望:0 精华:0 注册:2017/7/20 10:49:07
  发帖心情 Post By:2017/7/24 14:15:27    Post IP:183.160.73.55[只看该作者]

以下是引用pyd在2017/7/24 13:53:22的发言:

1,突破前200根k先最低价写法是:l<ref(llv(l,200),1)

2,过滤连续开多开空信号 在开仓条件里限制holding=0 才开仓。

3,不止损可以输出条件看下是不是没有满足止损条件

调试技巧:http://www.weistock.com/bbs/dispbbs.asp?boardid=4&id=1246

 

你没有回答我的问题,我图表运行了多个品种,用holding函数会不会出现干扰?


 回到顶部
总数 13 1 2 下一页