支持向量机的R中基于财经新闻的股价预测

时间:2019-06-26 09:21:08

标签: r machine-learning svm prediction sentiment-analysis

我是R语言的新手,正在尝试借助支持向量机(svm)根据财经新闻预测S&P500股票的价格。我有2个数据集。一个是股票市场数据,另一个是清理的金融新闻语料库数据。我将语料库转换为文档术语矩阵,并对其进行了情感分析(一次使​​用SentimentAnalysis软件包,一次使用tidytext软件包)。现在,我迫不及待要运行这个模型。对于如何使用svm预测股票价格,我发现了不同的方法,但财经新闻无处可寻。或如何结合两个数据集来创建模型?我当前的代码和实际情况是这样的:

docs <- Corpus(DirSource(directory = "D:/Financial_News_Prediction/Edgar filings_full text/Form 8-K", recursive = TRUE))

# Cleaning steps are not shown here

# Creating DTM
dtm <- DocumentTermMatrix(docs)
dtm <- removeSparseTerms(dtm, 0.99)
dtm <- as.matrix(dtm)

# Sentiment analysis DTM
dtm.sent <- analyzeSentiment(dtm)

# Creating DTM Tidy Format
dtm.tidy <- DocumentTermMatrix(docs)
dtm.tidy <- tidy(dtm.tidy)

# Sentiment analysis Tidy DTM
sent.afinn <- dtm.tidy %>%
  inner_join(get_sentiments("afinn"), by = c(term = "word"))

sent.bing <- dtm.tidy %>%
  inner_join(get_sentiments("bing"), by = c(term = "word"))

sent.nrc <- dtm.tidy %>%
  inner_join(get_sentiments("nrc"), by = c(term = "word"))

# Dats Split
id_dtm <- sample(nrow(dtm),nrow(dtm)*0.70)
dtm.train = dtm[id_dtm,]
dtm.test = dtm[-id_dtm,]

id_sp500 <- sample(nrow(SP500.Data),nrow(SP500.Data)*0.70)
sp500.train = SP500.Data[id_sp500,]
sp500.test = SP500.Data[-id_sp500,]

那是我的现状。现在,我想基于上述两个数据集运行svm模型。但是我认为我需要做一些分类。我已经看到他们使用(-1 / +1)之类的东西。我的情绪分析为我提供了正面和负面类别的词汇。但是我只是不知道如何将这两个集合放在一起来构建模型。如果有人可以帮助我,我将非常高兴!提前非常感谢!

0 个答案:

没有答案
相关问题