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


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

   

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


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

主题:跨周期程序的问题

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


加好友 发短信
等级:新手上路 帖子:28 积分:0 威望:0 精华:0 注册:2015/4/9 11:03:13
跨周期程序的问题  发帖心情 Post By:2018/8/7 9:57:05    Post IP:125.38.16.209[只看该作者]

老师您好:我写了个海龟交易的跨周期程序,只是做空部分,但是加载上去没有信号,您给看下哪里有问题:

先建一指标HGJY:

INPUT:N(20,1,200,1);
N周期高点:REF(HHV(H,N),1);
N周期低点:REF(LLV(L,N),1);


开多平空交叉:=CROSS(C,N周期高点);
开空平多交叉:=CROSS(N周期低点,C);
开多平空大于:=C>N周期高点;
开空平多小于:=C<N周期低点;

再写程序:

INPUT:N(20,1,200,1);
N周期高点:REF(HHV(H,N),1);
N周期低点:REF(LLV(L,N),1);
SS:=MAX(1,INTPART(30000/(C*10*0.16)));
手数:=SS;
开多平空交叉:=CROSS(C,N周期高点);
开空平多交叉:=CROSS(N周期低点,C);
开多平空大于:=C>N周期高点;
开空平多小于:=C<N周期低点;
开多平空交叉A:STKINDIEX('',"HGJY.开多平空交叉",0,21,112,1000);
开空平多交叉A:STKINDIEX('',"HGJY.开空平多交叉",0,21,112,1000);
开多平空大于A:STKINDIEX('',"HGJY.开多平空大于",0,21,112,1000);
开空平多小于A:STKINDIEX('',"HGJY.开空平多小于",0,21,112,1000);

if holding=0 and 开空平多小于 and 开空平多小于A then
begin

buyshort(holding=0 and 开空平多小于 and 开空平多小于A,手数);
end

if holding<0 and (开多平空交叉 or 开多平空交叉A) then
begin

sellshort(holding<0 and (开多平空交叉 or 开多平空交叉A),holding);
end


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


加好友 发短信
等级:超级版主 帖子:14496 积分:0 威望:0 精华:0 注册:2017/7/4 13:40:18
  发帖心情 Post By:2018/8/7 10:25:52    Post IP:180.169.30.6[只看该作者]

 1.代码有些小问题,
stkindex里面设置的数据量可能不够 STKINDIEX('',"HGJY.开多平空交叉",0,21,112,1000);   如果不好控制,就直接用stkind就可以了。
第二个参数:
"HGJY.开多平空交叉"  改成  'HGJY.开多平空交叉'  用单引号,测试的时候发现这2者是不一样的

2.被引用的变量的定义方式
用“:”定义 而不是 “:=” 去定义。

3.你的条件本身较难触发。我修改了引用的周期等才调试出了信号。


命数如织,当如磐石。
 回到顶部