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


金字塔客服中心 - 专业程序化交易软件提供商金字塔软件金字塔软件问题提交 → 请问,为什么上述语句中的条件没有作用?

   

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


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

主题:请问,为什么上述语句中的条件没有作用?

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


加好友 发短信
等级:标准版用户 帖子:225 积分:0 威望:0 精华:0 注册:2016/4/18 14:50:33
请问,为什么上述语句中的条件没有作用?  发帖心情 Post By:2016/7/26 20:58:11 [显示全部帖子]

 IF HOLDING=0 THEN SECSTA:=STKINDI('','0T.SECST',0,6,0);

请问,为什么上述语句中的条件没有作用?

也就是,无论HOLDING的值是否为0,都会执行THEN 后面的STKINDI指令,为什么呢? 

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


加好友 发短信
等级:标准版用户 帖子:225 积分:0 威望:0 精华:0 注册:2016/4/18 14:50:33
  发帖心情 Post By:2016/7/27 11:34:14 [显示全部帖子]

我的用这个命令的本意是:已经开仓后的情况下,不要刷新读取SECSTA参数值。
但是,这个命令下,即使已开仓(即HOLDING不等0),公式仍然会读取最新的引用SECSTA值,,,
我怎么才能达到我的本意?

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


加好友 发短信
等级:标准版用户 帖子:225 积分:0 威望:0 精华:0 注册:2016/4/18 14:50:33
  发帖心情 Post By:2016/7/27 11:40:34 [显示全部帖子]

我是在实时盘中,观察公式运行时,发现在已开仓的情况下,SECSTA的值仍然会被刷新的。。。


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


加好友 发短信
等级:标准版用户 帖子:225 积分:0 威望:0 精华:0 注册:2016/4/18 14:50:33
  发帖心情 Post By:2016/7/27 13:49:07 [显示全部帖子]

是的,这个SECSTA变量值按说没有这句话的执行,它不应该刷新变化的。
三楼是我编写这个条件执行的用意说明,,,也许是我对函数的理解不到位,以致于无法做到条件控制。。。
但是,若能用别的方式达到这个目的,我是欣然接受的!

我的目的是:
已开仓的情况下,不要刷新读取变量值SECSTA;
在没有开仓的情况下,则保持同步引用STKINDI('','0T.SECST',0,6,0);

不知能否做到?

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


加好友 发短信
等级:标准版用户 帖子:225 积分:0 威望:0 精华:0 注册:2016/4/18 14:50:33
  发帖心情 Post By:2016/7/27 14:23:21 [显示全部帖子]

当公式已经持仓,有显示开仓信号及资金曲线变化,此时 HOLDING是不是非零状态?反之,公式无持仓,即为零状态,对否?

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


加好友 发短信
等级:标准版用户 帖子:225 积分:0 威望:0 精华:0 注册:2016/4/18 14:50:33
  发帖心情 Post By:2016/7/27 15:50:49 [显示全部帖子]

所以,我编写的语句有什么语法或逻辑上的错误吗?
我要怎么实现我的意图呢?

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


加好友 发短信
等级:标准版用户 帖子:225 积分:0 威望:0 精华:0 注册:2016/4/18 14:50:33
  发帖心情 Post By:2016/7/27 15:57:12 [显示全部帖子]

为什么在盘中时,无论HOLDING状态及TIME条件是否满足, SECSTA的值都会实时与引用的值同步,,,汗。。。
TIME条件是指我在原有的HOLDING条件外套上时间条件:
IF TIME=T0TOTIME(TIMETOT0(OPENTIME(2))+DTYPE*60) THEN BEGIN
IF HOLDING=0 THEN    SECSTA:=STKINDI('','0T.SECST',0,6,0);
END

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


加好友 发短信
等级:标准版用户 帖子:225 积分:0 威望:0 精华:0 注册:2016/4/18 14:50:33
  发帖心情 Post By:2016/7/27 16:06:18 [显示全部帖子]

刚才修正了一下,我是图表系统,应该用DEBUGFILE2函数,运行有结果如下:
2016-07-27 16:04:10.288    进入判断语句,holding=0.00
2016-07-27 16:04:10.444    进入判断语句,holding=0.00
2016-07-27 16:04:10.538    进入判断语句,holding=0.00
2016-07-27 16:04:10.632    进入判断语句,holding=0.00
2016-07-27 16:04:10.725    进入判断语句,holding=0.00
2016-07-27 16:04:10.819    进入判断语句,holding=0.00
2016-07-27 16:04:10.928    进入判断语句,holding=0.00
2016-07-27 16:04:11.022    进入判断语句,holding=0.00
2016-07-27 16:04:11.115    进入判断语句,holding=0.00
2016-07-27 16:04:11.224    进入判断语句,holding=0.00
2016-07-27 16:04:11.318    进入判断语句,holding=0.00
2016-07-27 16:04:11.427    进入判断语句,holding=0.00
2016-07-27 16:04:11.521    进入判断语句,holding=0.00
2016-07-27 16:04:11.630    进入判断语句,holding=0.00
2016-07-27 16:04:11.724    进入判断语句,holding=0.00

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


加好友 发短信
等级:标准版用户 帖子:225 积分:0 威望:0 精华:0 注册:2016/4/18 14:50:33
  发帖心情 Post By:2016/7/27 16:16:04 [显示全部帖子]

啊,我明白了,为什么会这样,也就是:在逐K模式下,之前任何满足TIME及HOLDING条件时,SECSTA都会刷新一次!!!
那么,我的控制意图要怎么实现呢?

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


加好友 发短信
等级:标准版用户 帖子:225 积分:0 威望:0 精华:0 注册:2016/4/18 14:50:33
  发帖心情 Post By:2016/7/27 16:21:11 [显示全部帖子]

是的,刚刚晃过神来。。。那么,我需要持仓中不读取刷新值,应该怎么办呢?

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