以文本方式查看主题

-  金字塔客服中心 - 专业程序化交易软件提供商  (http://weistock.com/bbs/index.asp)
--  公式模型编写问题提交  (http://weistock.com/bbs/list.asp?boardid=4)
----  [求助]引用公式过多,无法计算两品种的相关系数  (http://weistock.com/bbs/dispbbs.asp?boardid=4&id=12400)

--  作者:yeyi
--  发布时间:2012/6/13 13:38:35
--  [求助]引用公式过多,无法计算两品种的相关系数

一个程序

 

为将对冲文本文件中各品种,在一公式中计算两品种的相关系数(求教:是在VBA编呢,还是在公式中直接编?)

 

 

if not(islastbar) then  exit;

FOR K=1 TO 863 DO
BEGIN 
//TCLINE从文本文件中为两个品种:如SH600104/SH600756

   TCFULLCODE1:=STRMID(TCLINE,1,8);  //品种1代码
   TCMARKET1:=STRMID(TCLINE,1,2);
   TCCODE1:=STRMID(TCLINE,3,6);
//JBSJ.SPJ为公式SPJ:CLOSE 就是引用收盘价

   TNCLOSE1:=STKINDI(TCFULLCODE1,\'JBSJ.SPJ\',0,6);//此处执行提示引用公式过多
   
   TCFULLCODE2:=STRMID(TCLINE,10,8); //品种2代码

   TCMARKET2:=STRMID(TCLINE,10,2);
   TCCODE2:=STRMID(TCLINE,12,6);
   TNCLOSE2:=STKINDI(TCFULLCODE2,\'JBSJ.SPJ\',0,6);//此处执行提示引用公式过多

  
 
END;


 

 

 

文本文件如下

 

SH600348/SZ000968(阳泉煤业/煤气化 )
SH600348/SH600395(阳泉煤业/盘江股份 )
SH600348/SH601101(阳泉煤业/昊华能源 )
SH600348/SZ000780(阳泉煤业/平庄能源 )
SH600348/SZ000933(阳泉煤业/神火股份 )
SH600348/SZ000937(阳泉煤业/冀中能源 )
SH600348/SZ000983(阳泉煤业/西山煤电 )
SH600348/SZ002128(阳泉煤业/露天煤业 )
SH600348/SH600123(阳泉煤业/兰花科创 )
SH600348/SH600188(阳泉煤业/兖州煤业 )
SH600348/SH600508(阳泉煤业/上海能源 )
SH600348/SH600997(阳泉煤业/开滦股份 )
SH600348/SH601001(阳泉煤业/大同煤业 )
SH600348/SH601088(阳泉煤业/中国神华 )
SH600348/SH601666(阳泉煤业/平煤股份 )
SH600348/SH601699(阳泉煤业/潞安环能 )
SH600348/SH601898(阳泉煤业/中煤能源 )
SZ000968/SH600395(煤气化/盘江股份 )
 


--  作者:jinzhe
--  发布时间:2012/6/13 13:50:06
--  
公式允许引用50次,你数数看公式里面是不是引用多了
--  作者:yeyi
--  发布时间:2012/6/13 15:44:12
--  

有其它好的办法吗


--  作者:jinzhe
--  发布时间:2012/6/13 15:58:28
--  
引用的数量是限定好的,减少引用的数量
--  作者:Leon
--  发布时间:2012/6/13 17:07:00
--  
这个也是为程序性能考虑的,楼主减少引用数量就好了。
--  作者:王锋
--  发布时间:2012/6/13 21:04:18
--  

Setting\\Option.ini文件,找到[Settings]组,增加一行

MaxCallStock=50

 

其中50就是限制数值,你任意更改一下即可