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


金字塔客服中心 - 专业程序化交易软件提供商金字塔软件金字塔软件问题提交 → 金字塔公式变量的初始化问题

   

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


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

主题:金字塔公式变量的初始化问题

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


加好友 发短信
等级:论坛游民 帖子:288 积分:1038 威望:0 精华:0 注册:2011/12/8 17:52:45
金字塔公式变量的初始化问题  发帖心情 Post By:2013/5/30 15:35:33 [只看该作者]

下面是测试公式:

===========================

runmode:0;//逐K线模式

a:=1;
if  C>O then  begin
a:=0;
b:=1;
end

aa:a;
bb:b;

===========================

 

按说 b 不应该始终是1啊. 最好是全部公式变量在开始全部初始化为0;

 

 

[此贴子已经被作者于2013-5-30 15:36:20编辑过]

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


加好友 发短信
等级:论坛游民 帖子:452 积分:2342 威望:0 精华:0 注册:2012/8/3 15:30:55
  发帖心情 Post By:2013/5/30 15:41:21 [只看该作者]

既然是初始化当然都是o哦

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


加好友 发短信
等级:论坛游民 帖子:288 积分:1038 威望:0 精华:0 注册:2011/12/8 17:52:45
  发帖心情 Post By:2013/5/30 15:45:28 [只看该作者]

但bb(=b) 应该在 C>O 的条件下才可能是1,其它情况应该是0 ;

但公式结果显示, 全部是1. 说明 条件里面的变量b最初没有初始化为=0,而是初始化为条件里面的=1.

 

我没有用最新的金字塔版本,不知道最新版是否也这样结果.


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


加好友 发短信
等级:罗宾汉 帖子:46311 积分:50819 威望:0 精华:2 注册:2011/3/23 8:50:25
  发帖心情 Post By:2013/5/30 16:06:18 [只看该作者]

记得以前说过是因为B没有初始的值,然后因为后面被赋值,最后自动对前面没有被赋值的序列进行了赋值



金字塔—专业程序化交易量化投资平台

客户服务部

----------------------------------------------------------- 欢迎您参加我公司的技术培训,具体培训需求请发邮件到service@weistock.com

您的宝贵建议或者投诉,请发往邮箱:weiwei@weistock.com

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


加好友 发短信
等级:论坛游民 帖子:288 积分:1038 威望:0 精华:0 注册:2011/12/8 17:52:45
  发帖心情 Post By:2013/5/30 16:28:12 [只看该作者]

以下是引用jinzhe在2013-5-30 16:06:18的发言:

记得以前说过是因为B没有初始的值,然后因为后面被赋值,最后自动对前面没有被赋值的序列进行了赋值

个人认为,这样的处理会造成失误, 还是把公式所有变量先初始化为0 更好.


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


加好友 发短信
等级:罗宾汉 帖子:46311 积分:50819 威望:0 精华:2 注册:2011/3/23 8:50:25
  发帖心情 Post By:2013/5/31 8:50:07 [只看该作者]

因为后面用BB:B给显示出来了,所以显示在k线上不能有空数值,因为又没有其他赋值,所以统一的被赋值为1,如果代码写成

runmode:0;//逐K线模式

a:=1;
if  C>O then  begin
a:=0;
b:=1;
end
if c<=o then b:=drawnull;
aa:a;
bb:b;

 

那么,就可以了


金字塔—专业程序化交易量化投资平台

客户服务部

----------------------------------------------------------- 欢迎您参加我公司的技术培训,具体培训需求请发邮件到service@weistock.com

您的宝贵建议或者投诉,请发往邮箱:weiwei@weistock.com

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


加好友 发短信
等级:论坛游民 帖子:288 积分:1038 威望:0 精华:0 注册:2011/12/8 17:52:45
  发帖心情 Post By:2013/5/31 12:29:01 [只看该作者]

以下是引用jinzhe在2013-5-31 8:50:07的发言:
因为后面用BB:B给显示出来了,所以显示在k线上不能有空数值,因为又没有其他赋值,所以统一的被赋值为1,如果代码写成

 

补救方法我知道, 这肯定是个问题,稍不留神就会出错,而且很难觉察.

我只是建议,看在以后版本中能否修正下.

 


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


加好友 发短信
等级:超级版主 帖子:3534 积分:10003 威望:0 精华:5 注册:2012/5/25 0:00:01
  发帖心情 Post By:2013/5/31 15:18:36 [只看该作者]

这个全局变量的定义   C# C++ JAVA  专业的编程软件都是这样处理的。

赋值  你从0——>1  从1——>0 这两个都是需要定义的。
若自动变成0其实是不合时宜的 
你现在只是1,0是容易,但当处理的东西多了就有缺陷了


金字塔—专业程序化交易量化投资平台

产品部

-----------------------------------------------------------

欢迎您参加我公司的技术培训,具体培训需求请发邮件到service@weistock.com

您的宝贵建议或者投诉,请发往邮箱:weiwei@weistock.com
 回到顶部
帅哥哟,离线,有人找我吗?
wd369
  9楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:论坛游民 帖子:288 积分:1038 威望:0 精华:0 注册:2011/12/8 17:52:45
  发帖心情 Post By:2013/5/31 17:10:45 [只看该作者]

以下是引用RogarZ在2013-5-31 15:18:36的发言:
这个全局变量的定义   C# C++ JAVA  专业的编程软件都是这样处理的。

赋值  你从0——>1  从1——>0 这两个都是需要定义的。
若自动变成0其实是不合时宜的 
你现在只是1,0是容易,但当处理的东西多了就有缺陷了

 

不会吧?   在C 或者 java 里面, 全局变量 如果没有初始化, 会被编译器赋缺省值的(或空 或0).

金字塔公式里面,即使最开始是在if 里面 出现的变量,其实也是按照全局变量来使用的.   

 

大智慧中对这种情况,是显示的空值(应该就是初始化为空值). 这样也不错,至少可以从结果中看出错漏来.

 

另: 我上面说的全局变量不是金字塔公式里面的GLOBALVARIABLE.


 回到顶部