股票价格涨跌预测—基于KNN分类器

时间:2023-03-09 00:38:39
股票价格涨跌预测—基于KNN分类器

code{white-space: pre;}

pre:not([class]) {
background-color: white;
}

.main-container {
max-width: 940px;
margin-left: auto;
margin-right: auto;
}
code {
color: inherit;
background-color: rgba(0, 0, 0, 0.04);
}
img {
max-width:100%;
height: auto;
}

股票价格涨跌预测—基于KNN分类器

K最近邻(kNN,k-NearestNeighbor)分类算法是数据挖掘分类技术中最简单的方法。所谓K最近邻,就是k个最近的邻居的意思,说的是每个样本都可以用它最接近的k个邻居来代表。kNN算法的核心思想是如果一个样本在特征空间相邻的样本中的大多数属中的k个最于某一个类别,则该样本也属于这个类别,并具有这个类别上样本的特性。该方法在确定分类决策上只依据最邻近的一个或者几个样本的类别来决定待分样本所属的类别。 kNN方法在类别决策时,只与极少量的相邻样本有关。由于kNN方法主要靠周围有限的邻近的样本,而不是靠判别类域的方法来确定所属类别的,因此对于类域的交叉或重叠较多的待分样本集来说,kNN方法较其他方法更为适合。 —— 百度百科

kNN算法属于非参方法,即不需要假设数据服从某种分布。

kNN算法R语言实现

  1. 载入程序包&读入数据
library(class)
library(dplyr)
library(lubridate)
library(scatterplot3d) stocks <- read.csv(file.choose())
  1. 数据查看
head(stocks)
##         Date  Apple Google  MSFT Increase
## 1 2010-01-04 214.01 626.75 30.95 TRUE
## 2 2010-01-05 214.38 623.99 30.96 TRUE
## 3 2010-01-06 210.97 608.26 30.77 FALSE
## 4 2010-01-07 210.58 594.10 30.45 FALSE
## 5 2010-01-08 211.98 602.02 30.66 TRUE
## 6 2010-01-11 210.11 601.11 30.27 FALSE
summary(stocks[,-1])
##      Apple            Google            MSFT        Increase
## Min. : 90.28 Min. : 436.1 Min. :23.01 Mode :logical
## 1st Qu.:202.55 1st Qu.: 546.0 1st Qu.:27.06 FALSE:697
## Median :359.18 Median : 595.1 Median :30.68 TRUE :764
## Mean :355.49 Mean : 657.6 Mean :33.42 NA's :0
## 3rd Qu.:516.68 3rd Qu.: 694.1 3rd Qu.:40.32
## Max. :702.10 Max. :1220.2 Max. :49.61
cl <- stocks$Increase #已知涨跌
colors <- 3-cl
scatterplot3d(stocks[,2:4],color=colors, col.axis=5,
col.grid="lightblue", main="scatterplot3d - stocks", pch=20)

aaarticlea/png;base64,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" title alt width="672" />

数据包由Date、Apple、Google、MSFT、Increase五列数据构成,Increase列表示的是苹果股价当日的涨跌情况。 3D散点图中,红色表示股价上涨,绿色表示下跌。

  1. 数据集划分
stocks$Date <- ymd(stocks$Date)
stocksTrain <- year(stocks$Date) < 2014
predictors <- cbind(lag(stocks$Apple, default = 210.73),
lag(stocks$Google, default = 619.98),
lag(stocks$MSFT, default = 30.48))
colnames(predictors)=c("Apple","Google","MSFT")
train <- predictors[stocksTrain, ] #2014年以前的数据为训练数据
test <- predictors[!stocksTrain, ] #2014年以后的数据为测试数据 par(mfrow=c(3,2))

acf(stocks\(Apple)#查看自相关图
pacf(stocks\)Apple)#查看偏相关图

acf(stocks\(Google)
pacf(stocks\)Google)

acf(stocks\(MSFT)
pacf(stocks\)MSFT)

aaarticlea/png;base64,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" title alt width="672" />

  1. 进行KNN算法分类
cl <- stocks$Increase[stocksTrain] #已知涨跌
prediction <- knn(train, test, cl, k = 1) #建立kNN预测模型
table(prediction, stocks$Increase[!stocksTrain]) #查看预测情况
##
## prediction FALSE TRUE
## FALSE 29 32
## TRUE 192 202
mean(prediction == stocks$Increase[!stocksTrain])  #计算准确率
## [1] 0.5076923

k=1时,基于KNN分类器的苹果股票价格预测准确率只有50.8%,略强于抛硬币。

  1. 通过蒙特卡洛模拟选出最好的k值
accuracy <- rep(0, 10)
k <- 1:10
for(x in k){
prediction <- knn(predictors[stocksTrain, ], predictors[!stocksTrain, ],
stocks$Increase[stocksTrain], k = x)
accuracy[x] <- mean(prediction == stocks$Increase[!stocksTrain])
} plot(k, accuracy, type = 'b', col=125,lwd=3)

aaarticlea/png;base64,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*7pdnp5X2agO6/Vh47ta6BN2cfzOs8lrM6Qzi4wDcnLu5/+8lT+IFdKLd5y+4w6/A1e2XZ4frS/97vdu337zzYTb447psPrZru7pF9vHX+3//vAa6//fzH8turIBONJyezXoDc9jO79v1bt9+nbLmyy9HFwFd2UQeLrx8H7yJNJjP/R8LnlEI6AyblS5d3o574R8rPO4+7Fa3Jrv28bt+hWvs7aGXg4AO1jWX780vTUDT7U8b1nnx7LgT7jdtxQE9btrpNp+1buLxNPf3wT9X5zKg3z//a8FfFwKabn1Xlj6c1tYrDuhhA7c1bnsp6fOOu1X2cxjQ4dW0oieGApqs7LWWot5PcNcd0P/Zwe28mxXfBfoloJ/RFNAQ9v1c64F3vjax3oCeTt6PG1n6xsGCPm+kX9sl0JO7AS242wpoot2KFy6b901beUDfr78UvnGwnM37Nh42dpVbaAUa15r7+dHN9Qb0EJeP6y8rvRtt8Ithu87PCghoWJt17pFHn7fUrTugH28ArvSWpss7e9a4BPUufFCHc6KVXjZ7Gz6V4WSNcbm4g2KlAR0uxNb5q3AQ0J37QOM4fAp3jUfcuy4COvhEroBG5ZNIIa32TYd3XQR0eA/FSq+BXp7Cr3ET//VZ+ID2U7Xqfg6sc91y8vH0ntXej7Z7Gb6JtMZNHJ6sexpTECv9ZX7TmgN6fn7k8T7QVS6yP27VGt6ztSrDgHoeaBC7y/Pb1QbmYM0BHV6pWOkNFYNn7q9zEy/eLvJE+hA+v2ZGQIPbrTouB5+fhV/nJvpOpHiG34gkoMFtiq9XSvvy2PaV+XLDkm/lBIhEQAESCShAIgEFSCSgAIkEFCCRgAIkElCARAIKkEhAARIJKEAiAQVIJKAAiQQUIJGAAiQSUIBEAgqQSEABEgkoQCIBBUgkoACJBBQgkYACJBJQgEQCCpBIQAESCShAIgEFSCSgAIkEFCCRgAIkElCARAIKkEhAARIJKEAiAQVIJKAAiQQUIJGAAiQSUIBEAgqQSEABEgkoQCIBBUgkoACJBBQgkYACJBJQgEQCCpBIQAESCShAIgEFSCSgAIkEFCCRgBLZzz9ffvtP7UHQLwElMgGlKgElMgGlKgElMgGlKgElMgGlKgElMgGlKgElso+A/vvXy8vvtUdDdwSUyM4B1U+qEFAiew+oflKHgBLZKaD6SSUCSmSngG70kzoElMiOAdVPahFQIjsE9H+9vPz6T+2B0CcBJbJ9QI+sQKlCQInsGND/tv9/vtceCV0SUCI7BPT3t52TeOoQUCJ7vw/U20jUIaBE9h7QH9+cxFODgBLZ+aOc2xcPFaECASWy4Wfh/6g9GPojoET28TSm/Un8L3/XHg3dEVAi+3weqJN4KhBQIvsM6OGGJifxFCagAIkEFCCRgAIkElCARAIKkEhAARIJKEAiAQVIJKAAiQQUIJGAAiQSUIBEAgqQSEABEgkoQCIBBUgkoACJBBQgkYACJBJQgEQCCpBIQAESCShAIgEFSCSgAIkEFCCRgAIkElCARAIKkEhAARIJKEAiAQVIJKAAiQQUIJGAAiQSUIBEAgqQSEABEgkoQCIBBUgkoACJBBQgkYACJBJQgEQCCpBIQAESCShAIgEFSCSgAIn+P9roQOPjxO54AAAAAElFTkSuQmCC" title alt width="672" />

通过模拟可以发现,当k = 5时,模型的准确率达到了52.5%。此外,我还用BP神经网络做了对比测试,BP神经网络模型的预测准确率只有51.5%,可见,基于KNN分类器的股票价格预测模型既简单又实用。

反馈与建议