题目背景:
许多金融标的都有其内在的关联,如何从量价数据找到这种关联是一个有趣的
问题。例如在万得的“煤焦钢矿”板块中,有螺纹钢、铁矿石、不锈钢、热轧卷板、
硅铁、焦煤、焦炭、锰硅、线材 9 个品种。这些品种有些是上下游关系,例如一定数量的焦煤焦炭和铁矿石可以生产出螺纹钢等。如何从价格挖掘出不同产品之间的关系一直是投资者感兴趣的问题。请从这些产品的日线价格中找出产品之间潜在的关系。
日线是任何一天的开盘价\收盘价\最高价\最低价所划出的一根中间粗一些,两端细一些的线。日线是每天一根的K线。
问题1:构建算法从日线建立这些品种的线性关系,并对这些线性关系进行建模。
思路提要:首先从题目列出的网址下载相应的数据并做数据整理与预处理,日线数据涉及开盘价\收盘价\最高价\最低价。可以通过简单的相关系数计算以及热力图来初步判断线性关系,然后通过最小二乘、多元线性回归等方法进一步挖掘这些品种之间的线性关系。
数据查看
cor = data.corr(method='pearson')
import seaborn as sns
import matplotlib.pyplot as plt
plt.figure(figsize=(10, 5))
sns.set(font_scale=0.8) # 设置字体大小
sns.heatmap(cor,
annot=True, # 显示相关系数的数据
center=0.5