金字塔决策交易系统

 找回密码
 

微信登录

微信扫一扫,快速登录

搜索
查看: 137|回复: 1

股票池内相关系数计算以及筛选问题

[复制链接]

43

主题

72

帖子

82

积分

Rank: 4

等级: 专业版

注册:
2022-1-11
曾用名:
发表于 2025-7-31 08:57 来自手机 | 显示全部楼层 |阅读模式
老师好,我需要计算一下现有已持仓的品种与股票池内其他品种的相关系数,请问如何实现?

我的想法是股票池内的品种实时计算20周期和已持仓的品种的相关系数,如果相关度达到0.7以上则该品种不开仓。求教,谢谢!
回复

使用道具 举报

2

主题

5243

帖子

5243

积分

Rank: 8Rank: 8

等级: 超级版主

注册:
2021-5-24
曾用名:
发表于 2025-7-31 09:05 | 显示全部楼层
相关系数用RELATE函数计算。

然后你如果是要股票池中和账户栏每个品种都做对比。那只能用循环变量账户栏了。

[PEL] 复制代码
zh:='';//账户

con:=1;//是否允许下单

//遍历账户栏
for i=1 to tholdcount(zh) do 
begin 
hlabel:=tholdindexlabel(i,zh);//第I个账户栏持仓品种
C1:CALLSTOCK(hlabel,vtCLOSE,-1,0);//账户栏品种的收盘价

R:=RELATE(C,C1,20);

if r>=0.7 then 
begin 
con:=0;
BREAK;//和任意一个品种相关达到0.7 直接跳出循环
end 

end
      
result:con;//满足则开仓,否则不开


能做,但是我想提醒的是如果你股票池里品种非常多,那会执行非常多次数的循环。很可能会非常卡的。我建议你这个判断放到最后,也就是筛选完其他条件后再来判断。否则计算量会大幅上涨。
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 微信登录

本版积分规则

手机版|小黑屋|上海金之塔信息技术有限公司 ( 沪ICP备13035422号 )

GMT+8, 2025-8-13 23:56 , Processed in 0.131683 second(s), 21 queries .

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

快速回复 返回顶部 返回列表