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


金字塔客服中心 - 专业程序化交易软件提供商金字塔软件公式模型编写问题提交 → 这是HANS日内交易策略,能帮我改成外盘交易的吗?

   

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


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

主题:这是HANS日内交易策略,能帮我改成外盘交易的吗?

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


加好友 发短信
等级:超级版主 帖子:18691 积分:0 威望:0 精华:0 注册:2013/7/15 9:22:16
这是HANS日内交易策略,能帮我改成外盘交易的吗?  发帖心情 Post By:2017/10/27 11:10:40    Post IP:180.169.30.6[只看该作者]

//准备中间变量
INPUT:SS(1,1,10000,1),NMIN1(30,1,1000,1),NMIN2(10,1,100,1),N1(0,0,100,1);
N:=BARSLAST(DATE<>REF(DATE,1))+1;
开盘30分钟最高价:=VALUEWHEN(TIME<=090000+NMIN1*100,HHV(H,N));
开盘30分钟最低价:=VALUEWHEN(TIME<=090000+NMIN1*100,LLV(L,N));
手数:=SS; 
上轨:开盘30分钟最高价+N1*MINDIFF;
下轨:开盘30分钟最低价-N1*MINDIFF;
//条件
开多条件:=C>上轨;
开空条件:=C<下轨;
//交易系统
IF TIME>090000+NMIN1*100 AND TIME<150000-10*100 THEN BEGIN
开多:BUY(开多条件 AND HOLDING=0,手数,MARKET);
开空:BUYSHORT(开空条件 AND HOLDING=0,手数,MARKET);
END
//平仓
IF TIME>=150000-NMIN2*100 THEN BEGIN
收盘平多:SELL(1,手数,MARKET);
收盘平空:SELLSHORT(1,手数,MARKET);
END

当前持仓:HOLDING,COLORGRAY,LINETHICK0;
当前资产:ASSET,NOAXIS,COLORGRAY;//输出当前资产,但不影响坐标最高最低值

这是HANS日内交易策略,能帮我改成外盘交易的吗?

时间上,开盘前半个小时,改程开盘6点到9点,3个小时的高低点,另外,上下轨道,

可以用这3个小时的高低点划成固定的吗?

为什么在图上的时候上下轨是不停变化的。

我的操作时间是,6点到9点,取3个小时高低点划上下轨,9点后,突破上轨做多,突破下轨做空,到凌晨4点40分强制平仓。

谢谢了,帮我改编一下

[此贴子已经被作者于2017/10/27 13:23:54编辑过]

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


加好友 发短信
等级:新手上路 帖子:36 积分:0 威望:0 精华:0 注册:2017/10/9 23:55:15
  发帖心情 Post By:2017/10/27 14:36:45    Post IP:113.139.191.34[只看该作者]

怎么没有人回复呢?图片点击可在新窗口打开查看

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


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

VARIABLE:m:=0,hh:=0,ll:=0;
if time=060000 then m:=1;else if time<>060000 then m:=0;
hh:=if(time=100000,hhv(h,BARSLAST(m=1)),0);//开盘6点到9点最高价
ll:=if(time=100000,llv(l,BARSLAST(m=1)),0);//开盘6点到9点最低价


if time>=044000 then  sell(holding>0,holding,MARKET);//到点强平

 

 

主要部分就在这,你可以直接替换进去修改下。日内的话,那个上下轨本身就是固定的,只是每日肯定会刷新的。另外你在什么周期上运行啊。

[此贴子已经被作者于2017/10/27 15:16:31编辑过]


命数如织,当如磐石。
 回到顶部
帅哥哟,离线,有人找我吗?
winheroking
  4楼 | QQ | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:新手上路 帖子:36 积分:0 威望:0 精华:0 注册:2017/10/9 23:55:15
  发帖心情 Post By:2017/10/31 15:20:38    Post IP:113.139.191.222[只看该作者]

运行不了啊 ,能给个完整的代码吗?

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


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

以下是引用winheroking在2017/10/31 15:20:38的发言:
运行不了啊 ,能给个完整的代码吗?

你不是把我写的那部分直接拿去运行了吧。。 那个要修改到原先的那个代码里面去的。还有啊 你运行周期多少啊。下面用到了time函数这个时间和周期选择有关系 的。要是对应不上运行也是会挂的。

 

INPUT:SS(1,1,10000,1),NMIN1(30,1,1000,1),NMIN2(10,1,100,1),N1(0,0,100,1);

VARIABLE:m:=0,hh:=0,ll:=0;
N:=BARSLAST(DATE<>REF(DATE,1))+1;
if time=060000 then m:=1;else if time<>060000 then m:=0;
hh:=if(time=090000,hhv(h,BARSLAST(m=1)),0);//开盘6点到9点最高价
ll:=if(time=090000,llv(l,BARSLAST(m=1)),0);//开盘6点到9点最低价
手数:=SS; 
上轨:hh+N1*MINDIFF;
下轨:ll-N1*MINDIFF;
//条件
开多条件:=C>上轨;
开空条件:=C<下轨;
//交易系统
IF TIME>090000+NMIN1*100 AND TIME<150000-10*100 THEN BEGIN
开多:BUY(开多条件 AND HOLDING=0,手数,MARKET);
开空:BUYSHORT(开空条件 AND HOLDING=0,手数,MARKET);
END
//平仓
IF TIME>=150000-NMIN2*100 THEN BEGIN
收盘平多:SELL(1,手数,MARKET);
收盘平空:SELLSHORT(1,手数,MARKET);
END


if time>=044000 then  sell(holding>0,holding,MARKET);//到点强平
当前持仓:HOLDING,COLORGRAY,LINETHICK0;
当前资产:ASSET,NOAXIS,COLORGRAY;//输出当前资产,但不影响坐标最高最低值



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