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


金字塔客服中心 - 专业程序化交易软件提供商金字塔软件公式模型编写问题提交 → 如何编写出信号后回抽到五日线买入?

   

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


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

主题:如何编写出信号后回抽到五日线买入?

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


加好友 发短信
等级:论坛游侠 帖子:449 积分:0 威望:0 精华:0 注册:2016/9/9 19:10:49
  发帖心情 Post By:2016/11/24 11:41:35    Post IP:221.176.177.58[只看该作者]

现在基本可以了   刚才忘了mm=0 了

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


加好友 发短信
等级:论坛游侠 帖子:449 积分:0 威望:0 精华:0 注册:2016/9/9 19:10:49
  发帖心情 Post By:2016/11/24 13:07:40    Post IP:221.176.177.58[只看该作者]

为啥我用if mm>=4 then mm:=0;
反而不行呢,为何?看上去也没啥错误啊  求学习
 
以下是引用jinzhe在2016-11-24 11:14:56的发言:
variable:mm:=0;

 
IF ref(BJ=1,1) and ref(HB,1) and ref(A,1) and ref(ISUP,1) and mm=0 and ref(CLOSE>REF(L+(H-L)*2/3,1),1) AND ref(SS>0 ,1) and holding=0 THEN begin
  开多m:BUY(1,1,LIMITR,CLOSE);  //开多
mm:=mm+1;
end
 
if barslast(cross(mm,0.5))>4 then mm:=0;
 
这就能让开多m后4根k线没有开多m


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


加好友 发短信
等级:罗宾汉 帖子:46311 积分:50819 威望:0 精华:2 注册:2011/3/23 8:50:25
  发帖心情 Post By:2016/11/24 13:19:14    Post IP:180.173.193.42[只看该作者]

因为你代码里面是

 

if ......mm=0.... then begin

   开多m:buy(.....);

   mm:=mm+1;

end

 

这就导致了只会在mm=0的时候mm自加1,然后就不加了,只计算一次,mm到不了4



金字塔—专业程序化交易量化投资平台

客户服务部

----------------------------------------------------------- 欢迎您参加我公司的技术培训,具体培训需求请发邮件到service@weistock.com

您的宝贵建议或者投诉,请发往邮箱:weiwei@weistock.com

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


加好友 发短信
等级:罗宾汉 帖子:46311 积分:50819 威望:0 精华:2 注册:2011/3/23 8:50:25
  发帖心情 Post By:2016/11/24 13:19:38    Post IP:180.173.193.42[只看该作者]

这个问题我前面讲过的


金字塔—专业程序化交易量化投资平台

客户服务部

----------------------------------------------------------- 欢迎您参加我公司的技术培训,具体培训需求请发邮件到service@weistock.com

您的宝贵建议或者投诉,请发往邮箱:weiwei@weistock.com

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


加好友 发短信
等级:论坛游侠 帖子:449 积分:0 威望:0 精华:0 注册:2016/9/9 19:10:49
  发帖心情 Post By:2016/11/24 13:29:36    Post IP:221.176.177.58[只看该作者]

m的出现弄好了  但是我镶嵌在m3里面却没有出现想要的效果   下面是我镶嵌的代码

 

IF ref(BJ=1,1) and ref(HB,1) and ref(A,1) and ref(ISUP,1) and ref(CLOSE>REF(L+(H-L)*2/3,1),1) AND ref(SS>0 ,1) and  HOLDING<0 THEN
  平空m:SELLshort(1,HOLDING,LIMITR,CLOSE);  //平空


mm11:=(bj=1  and ttt and hb and a  and isup and ss>0 and CLOSE>REF(L+(H-L)*2/3,1)and  holding=0 );

 nnmm3:=barslast(mm11 and mm=0 );

if nnmm3>=1 and nnmm3<=4 and bjmm3=0 and holding=0  and ttt and  l-0.035<=ma5 then begin
 开多m_3:buy(1,1,market);
 bjmm3:=1;
 end

mm:=mm+1;

if barslast(cross(mm,0.5))>4 then mm:=0;


if nnmm3>=5 then bjmm3:=0,mm=0;


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


加好友 发短信
等级:论坛游侠 帖子:449 积分:0 威望:0 精华:0 注册:2016/9/9 19:10:49
  发帖心情 Post By:2016/11/24 13:32:48    Post IP:221.176.177.58[只看该作者]

你写的也是这样的啊  只有最后面的更改了
以下是引用jinzhe在2016-11-24 13:19:14的发言:

因为你代码里面是

 

if ......mm=0.... then begin

   开多m:buy(.....);

   mm:=mm+1;

end

 

这就导致了只会在mm=0的时候mm自加1,然后就不加了,只计算一次,mm到不了4


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


加好友 发短信
等级:论坛游侠 帖子:449 积分:0 威望:0 精华:0 注册:2016/9/9 19:10:49
  发帖心情 Post By:2016/11/24 13:39:27    Post IP:221.176.177.58[只看该作者]

你的代码为何会一直加到4  ,好疑问啊   前面代码都一样的啊

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


加好友 发短信
等级:罗宾汉 帖子:46311 积分:50819 威望:0 精华:2 注册:2011/3/23 8:50:25
  发帖心情 Post By:2016/11/24 13:48:32    Post IP:180.169.30.6[只看该作者]

以下是引用xiangquzi在2016-11-24 13:32:48的发言:
以下是引用jinzhe在2016-11-24 13:19:14的发言:

因为你代码里面是

 

if ......mm=0.... then begin

   开多m:buy(.....);

   mm:=mm+1;

end

 

这就导致了只会在mm=0的时候mm自加1,然后就不加了,只计算一次,mm到不了4

我又没让mm到4,是barslast(cross(mm,0.5))到4



金字塔—专业程序化交易量化投资平台

客户服务部

----------------------------------------------------------- 欢迎您参加我公司的技术培训,具体培训需求请发邮件到service@weistock.com

您的宝贵建议或者投诉,请发往邮箱:weiwei@weistock.com

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


加好友 发短信
等级:罗宾汉 帖子:46311 积分:50819 威望:0 精华:2 注册:2011/3/23 8:50:25
  发帖心情 Post By:2016/11/24 13:55:13    Post IP:180.169.30.6[只看该作者]

variable:mm:=0;

 
IF ref(BJ=1,1) and ref(HB,1) and ref(A,1) and ref(ISUP,1) and mm=0 and ref(CLOSE>REF(L+(H-L)*2/3,1),1) AND ref(SS>0 ,1)  THEN begin
  //开多m:BUY(1,1,LIMITR,CLOSE);  //开多
mm:=mm+1;
end
 

if barslast(cross(mm,0.5))>1 and barslast(cross(mm,0.5))<=4 and bjmm3=0 and holding=0  and ttt and  l-0.035<=ma5 then begin
 开多m_3:buy(1,1,market);
 bjmm3:=1;
 end

if barslast(cross(mm,0.5))>4 then mm:=0;


金字塔—专业程序化交易量化投资平台

客户服务部

----------------------------------------------------------- 欢迎您参加我公司的技术培训,具体培训需求请发邮件到service@weistock.com

您的宝贵建议或者投诉,请发往邮箱:weiwei@weistock.com

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


加好友 发短信
等级:论坛游侠 帖子:449 积分:0 威望:0 精华:0 注册:2016/9/9 19:10:49
  发帖心情 Post By:2016/11/24 13:55:17    Post IP:221.176.177.58[只看该作者]

这个用变量mm=0 控制的m,之后5个交易日内第一次回调到5日线只开多一次
看来不好写啊,比以前的那些回调更复杂了  感觉超级难
 
 
以下是引用jinzhe在2016-11-24 11:14:56的发言:
variable:mm:=0;

 
IF ref(BJ=1,1) and ref(HB,1) and ref(A,1) and ref(ISUP,1) and mm=0 and ref(CLOSE>REF(L+(H-L)*2/3,1),1) AND ref(SS>0 ,1) and holding=0 THEN begin
  开多m:BUY(1,1,LIMITR,CLOSE);  //开多
mm:=mm+1;
end
 
if barslast(cross(mm,0.5))>4 then mm:=0;
 
这就能让开多m后4根k线没有开多m


 回到顶部