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


金字塔客服中心 - 专业程序化交易软件提供商金字塔软件公式模型编写问题提交 → 如何在图表交易系统里写跨周期调用指标,

   

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


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

主题:如何在图表交易系统里写跨周期调用指标,

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


加好友 发短信
等级:超级版主 帖子:18691 积分:0 威望:0 精华:0 注册:2013/7/15 9:22:16
如何在图表交易系统里写跨周期调用指标,  发帖心情 Post By:2017/12/15 8:43:27    Post IP:180.169.30.6[只看该作者]

如何在图表交易系统里写跨周期调用指标,

比如在1分钟图表里,如何写一分钟收盘价大于5 分钟上的20均,在此条件下启动买入信号,用跨周期引用的方式。

照着教程中的方式写,用在前述程序中不显示进场信号,不知道哪里错了;

DD:=MA ;
AA:”CA.DD#MIN8”;

IF C>AA THEN

BEGIN    

多开:BUY(1=1,ORDVOL,MARKET);

END


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


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

建议用这种方式引用,更灵活。不过你需要看下函数说明中的使用方法:

STKINDI('','MA.ma3',0,2,0);//MA是系统自带的一个均线指标,在技术指标-趋向指标下可查看源码  需要提前补充好5分钟的数据。



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


加好友 发短信
等级:新手上路 帖子:26 积分:0 威望:0 精华:0 注册:2017/12/13 16:29:19
  发帖心情 Post By:2017/12/15 10:29:40    Post IP:116.76.84.62[只看该作者]

非常感谢用心回复,困扰多天,如久旱甘雨,真的。本人比较菜鸟,还是没有解决我的困惑,能否再具体详细一点,把这几个步骤都写出来,1、在1分钟线上调用5 分钟均线,2、收盘价大于5 分钟上的20均,3、具备此条件启动买入信号。谢谢,否则我还是用不上。


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


加好友 发短信
等级:新手上路 帖子:26 积分:0 威望:0 精华:0 注册:2017/12/13 16:29:19
  发帖心情 Post By:2017/12/15 10:30:36    Post IP:116.76.84.62[只看该作者]

IF C>STKINDI('','MA.ma3',0,2,0) THEN

BEGIN    

多开:BUY(1=1,ORDVOL,MARKET);

END    这样写对吗?



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


加好友 发短信
等级:超级版主 帖子:16558 积分:0 威望:0 精华:0 注册:2017/6/1 10:24:09
  发帖心情 Post By:2017/12/15 10:39:35    Post IP:180.169.30.6[只看该作者]

运行周期为1分钟周期
     aa :STKINDI('','MA.ma3',0,2,0); //引用5分钟数据周期的ma3均线,码ma3均线为20周期均线
     if  close>  aa  then buy(holding=0,1,market);
          

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


加好友 发短信
等级:新手上路 帖子:26 积分:0 威望:0 精华:0 注册:2017/12/13 16:29:19
  发帖心情 Post By:2017/12/15 13:44:52    Post IP:116.76.84.62[只看该作者]

万分感激,但还是有问题。我根据金字塔移动止损模板修改的一个公式,相关部分如下:我计划用上周期的自适应移动均线来过滤开仓信号,然后再用其他条件BK8来开多单,按照您的指导写成如下这样,加上这一行,但开仓信号不见了。请问哪里有错?麻烦您了。
// 自适应均线

 DIR:=ABS(CLOSE-REF(CLOSE,21));
 VIR:=SUM(ABS(CLOSE-REF(CLOSE,1)),21);
 ER:=DIR/VIR;
 CS:=ER*(2/3-2/31)+2/31;
 CQ:=CS*CS;
 AMA:=DMA(CLOSE,CQ);

    aa :STKINDI('',' AMA.Ama',0,2,0);//该均线只有一根,这样写对吗?
//开多单
IF HOLDING=0 THEN BEGIN
 IF DUOKONG=1 OR DUOKONG=2 THEN BEGIN
 IF  close>  aa THEN BEGIN
  IF BK8 THEN BEGIN
   多开:BUY(1=1,ORDVOL,MARKET);
   HIGHPRICE:=ENTERPRICE;  //将开仓价保存到最高价
  END 
 END
END
END

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


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

ama是你自己定义的指标? aa在图表上有输出值吗?看下。



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


加好友 发短信
等级:新手上路 帖子:26 积分:0 威望:0 精华:0 注册:2017/12/13 16:29:19
  发帖心情 Post By:2017/12/15 15:07:59    Post IP:116.76.84.62[只看该作者]

金字塔里好像没找到自适应均线,AMA是自己写进去的自适应均线,并且只有一根线,这种情况应该如何解决,谢谢。

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


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

所以我让你看看AA的输出情况啊。 close>aa 这个是否触发了。如果你只是加了close>aa 就没有开仓信号了,那肯定是这个条件导致的。

 

你可以把你图表上的情况截图下比较直观点。



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


加好友 发短信
等级:新手上路 帖子:26 积分:0 威望:0 精华:0 注册:2017/12/13 16:29:19
  发帖心情 Post By:2017/12/15 15:27:33    Post IP:116.76.84.62[只看该作者]

只要加上这句 if  close>  aa  then BEGIN 就所有的买入信号都不见了, AA具体设定如前所述,主要是引用自编的自适应均线5分钟,您已经理解了我的问题,但我比较 白,不能明白您的指点,能否麻烦您就前各程序直接给以修正,以至达到预期效果,谢谢。

DIR:=ABS(CLOSE-REF(CLOSE,21));
 VIR:=SUM(ABS(CLOSE-REF(CLOSE,1)),21);
 ER:=DIR/VIR;
 CS:=ER*(2/3-2/31)+2/31;
 CQ:=CS*CS;
 AMA:=DMA(CLOSE,CQ);
// 以上为需要引用的自适应均线公式

    aa :STKINDI('',' AMA.Ama',0,2,0);//该均线只有一根,这样写对吗?
//开多单
IF HOLDING=0 THEN BEGIN
 IF DUOKONG=1 OR DUOKONG=2 THEN BEGIN
 IF  close>  aa THEN BEGIN
  IF BK8 THEN BEGIN
   多开:BUY(1=1,ORDVOL,MARKET);
   HIGHPRICE:=ENTERPRICE;  //将开仓价保存到最高价
  END 
 END
END
END

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