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


金字塔客服中心 - 专业程序化交易软件提供商金字塔软件公式模型编写问题提交 → 请求编写,自编的信号无法显示

   

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


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

主题:请求编写,自编的信号无法显示

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


加好友 发短信
等级:新手上路 帖子:50 积分:56 威望:0 精华:0 注册:2011/7/19 12:16:48
请求编写,自编的信号无法显示  发帖心情 Post By:2015/10/10 1:36:14    Post IP:120.33.87.233[只看该作者]

思路如下,就是引用5分钟和60分钟的KDJ的k和d,
当60分钟的kd有金叉时候,就开始执行5分钟的kd金叉做多,只做多,平仓条件为5分钟kd死叉。同理,死叉的系统也是类似。
简单的说,就是当长周期满足金叉时候,就启动短周期kd金叉做多系统,如果长周期满足死叉时候,就停止运行短周期kd金叉做多系统,而是启动运行短周期kd死叉做空系统。



我自己编写代码如下,但是信号却不是我想要的效果,比如套用股指上面,本来在10月9日60分钟图上,已有金叉,那么短周期5分钟周期也是执行金叉做多系统,但是只显示了一个做多的信号,不是想要的结果,想要的结果应该是短周期5分钟上面kd金叉条件满足后的那几个做多的信号。应该如何编写会比较合理简单有效,请求帮忙下。

X:=STKINDI(stklabel,'KDJ.K',0,5);//引用60分钟的kdj的k值
Y:=STKINDI(stklabel,'KDJ.D',0,5);//引用60分钟的kdj的d值
XY:=CROSS(X,Y);
XY0:=CROSS(Y,X);

X1:=STKINDI(stklabel,'KDJ.K',0,2);//引用5分钟的kdj的k值
Y1:=STKINDI(stklabel,'KDJ.D',0,2);//引用5分钟的kdj的d值
XY1:=CROSS(X1,Y1);
XY2:=CROSS(Y1,X1);

KD0:=XY1 ;//开多条件
PD0:=XY2; //平多条件

IF XY THEN BEGIN

KD:BUY(KD0 and holding=0,1,THISCLOSE);
PD:SELL(PD0 and holding,1,THISCLOSE);

END

KK0:=XY1 ;//开空条件
PK0:=XY2; //平空条件

IF XY0 THEN BEGIN

KK:SELLSHORT(KK0 and holding=0,1,THISCLOSE);
PK:BUYSHORT(PK0 and holding,1,THISCLOSE);

END





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


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

variable:bj=0;

....这里引用5分钟和60分钟的金叉

 

if 60分钟金叉 then bj:=1;

if 60分钟死叉 then bj:=2;

 

if bj=1 and 5分钟金叉 then begin..........

 

end

 

if bj=2 and 5分钟死叉 then begin........

 

end

 

把你的5分钟金叉死叉策略写进上面用省略号省略的地方



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

客户服务部

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

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

 回到顶部