首页 > 解决方案 > 更新:我预测哪些数据可以通过改变收盘价来获得未来的预测?

问题描述

我编写了一个 Python 代码,它使用统计、机器学习和深度学习模型进行预测。但是,如果您在预测股票的未来价格时指出我的以下想法中的问题,我将不胜感激。

  1. 下载历史数据。
  2. 添加技术指标作为特征。
  3. 通过将“调整后的收盘价”价格向后移动要预测的天数来创建目标列,例如“days_to_predict”,从而在空单元格中获得 NaN。
  4. 删除“音量”、“调整关闭”、“关闭”、“低”、“打开”和“高”列。
  5. 将特征数组中对应于 NaN 的最后“days_to_predict”行复制到另一个名为“X_forecast”的变量中。
  6. 从特征中删除这些行以及目标列中的 NaN。
  7. 将特征和目标数组拆分为训练和测试集。
  8. 进行特征/训练集缩放。
  9. 使用训练集训练模型。
  10. 使用测试集测试模型的性能。
  11. 使用模型预测 X_forcast。

虽然,我为此付出了很多努力,但我没有得到准确的结果。我的问题是:我抓错了 X_forecast 吗?请告诉我我的算法出了什么问题,或者,更好的是,还有其他方法可以获取我不知道的 X_forecast 吗?

以下是前一天的示例代码:

import pandas_datareader as web
import numpy as np
from datetime import datetime, date, timedelta

start_date = '01/01/2004'
end_date = date.today()
ticker = 'TSLA'
data_source = 'yahoo' 
days_into_the_future = 1
test_size = 0.25

df = web.DataReader(ticker, data_source, start_date, end_date)
data = {}
data['df'] = df.copy()
data['df']['target'] = data['df']['Adj Close'].shift(-days_into_the_future)
data['df'] = data['df'].drop(['Volume','Adj Close','Close'],1)
data['X_forecast'] = data['df'].iloc[-days_into_the_future:,:-1]
data['df'] = data['df'].dropna()
data['feature'] = data['df'].drop(['target'],1)
data['target'] = data['df'].iloc[:,-1]

X = np.array(data['feature'])
y = np.array(data['target'])
timefeatures = data['feature'].index  

# split the dataset into training & testing sets by date
train_samples = int((1 - test_size) * len(X))
data["X_train"] = X[:train_samples]
data["y_train"] = y[:train_samples]
data["X_test"]  = X[train_samples:]
data["y_test"]  = y[train_samples:]
data["dates_train"] = timefeatures[:train_samples] # Extract the dates of train and test set dates
data["dates_test"] = timefeatures[train_samples:]

from sklearn.linear_model import LinearRegression
model = LinearRegression()
history = model.fit(data['X_train'],data['y_train']) 

predictionlineReg = history.predict(data['X_test'])  # Linear regression
predictionlineRegfuture = history.predict(data['X_forecast'])[0] # For tomorrow's prediction

标签: pythonmodelstatisticsforecastingquantitative-finance

解决方案


推荐阅读