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


金字塔客服中心 - 专业程序化交易软件提供商金字塔软件公式模型编写问题提交 → 我这个引用哪里出问题了?

   

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


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

主题:我这个引用哪里出问题了?

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


加好友 发短信
等级:新手上路 帖子:24 积分:0 威望:0 精华:0 注册:2015/1/5 13:36:16
  发帖心情 Post By:2015/1/16 11:06:17    Post IP:14.18.243.130[显示全部帖子]

我也有个问题,引用同一指标的两个不同变量,该指标是运算了一次还是两次?

D2:=stkindi('','YY01.CY1',0,-1);
D3:=stkindi('','YY01.CY2',0,-1);

D2,D3引用的是同一次YY01运算的值,还是D3引用时又算了一次?

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


加好友 发短信
等级:新手上路 帖子:24 积分:0 威望:0 精华:0 注册:2015/1/5 13:36:16
  发帖心情 Post By:2015/1/16 13:39:36    Post IP:202.101.230.138[显示全部帖子]

又一个问题:
调用指标中定义的数组,需要手动注销吗?

如果
D2:=stkindi('','YY01.CY1',0,-1);
中cy1是一个数组,需要在yy01结束时添加代码手动注销cy1吗?

因为数组声明的标识符与全局变量相同,都是variable,因此有此一问。

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


加好友 发短信
等级:新手上路 帖子:24 积分:0 威望:0 精华:0 注册:2015/1/5 13:36:16
  发帖心情 Post By:2015/1/16 13:43:30    Post IP:60.223.237.194[显示全部帖子]

同样的问题,在调用指标中定义的全局变量,当该调用结束时,它还存在吗?——即生存周期问题

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


加好友 发短信
等级:新手上路 帖子:24 积分:0 威望:0 精华:0 注册:2015/1/5 13:36:16
  发帖心情 Post By:2015/1/16 13:57:05    Post IP:14.18.243.130[显示全部帖子]

//指标yy01 开始

VARIABLE :cy1[5]=0;
VARIABLE :cy2=0;
.
.
.
//yy01 结束

//主程序
D2:=stkindi('','YY01.CY1',0,-1);
 //主程序结束

主程序运行完毕后,cy1,cy2作为全局变量存在在内存中吗?还是yy01结束后自动注销?

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


加好友 发短信
等级:新手上路 帖子:24 积分:0 威望:0 精华:0 注册:2015/1/5 13:36:16
  发帖心情 Post By:2015/1/16 14:18:21    Post IP:202.101.230.142[显示全部帖子]

手误
//主程序
VARIABLE :D2[]=0;
D2[]:=stkindi('','YY01.CY1',0,-1);
 //主程序结束

就可以了吧?

另外,我最关心的是cy1[]的生存问题。如果调用之后cy1[]仍然存在,那么其他代码就可能不用调用yy01而直接修改它的值……
譬如

//指标yy01 开始

VARIABLE :cy1[5]=0;
VARIABLE :cy2=0;
.
.
.
//yy01 结束

//主程序
VARIABLE :D2[]=0;
D2[]:=stkindi('','YY01.CY1',0,-1);
cy2:=1; //如果cy2在上次调用后还存在,那么在下次调用yy01之前,cy2就可能被外部修改了
D3:=stkindi('','YY01.CY2',0,-1);
 //主程序结束

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


加好友 发短信
等级:新手上路 帖子:24 积分:0 威望:0 精华:0 注册:2015/1/5 13:36:16
  发帖心情 Post By:2015/1/16 14:37:09    Post IP:202.101.230.138[显示全部帖子]

那如果我要使用cy1[5]的全部五个变量

D1:=stkindi('','YY01.CY1[1]',0,-1);
D2:=stkindi('','YY01.CY1[2]',0,-1);
D3:=stkindi('','YY01.CY1[3]',0,-1);
D4:=stkindi('','YY01.CY1[4]',0,-1);
D5:=stkindi('','YY01.CY1[5]',0,-1);

岂不是要运算5遍yy01?

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


加好友 发短信
等级:新手上路 帖子:24 积分:0 威望:0 精华:0 注册:2015/1/5 13:36:16
  发帖心情 Post By:2015/1/16 14:51:18    Post IP:60.223.237.194[显示全部帖子]

图片点击可在新窗口打开查看
虽然逻辑很雷人,不过还是多谢版主耐心解答图片点击可在新窗口打开查看

 回到顶部