神经网络预测股价走势

import pandas as pd
import numpy as np
from sklearn.neural_network import MLPRegressor
import matplotlib.pyplot as plt

data = pd.read_excel("idx.xlsx")
data

在这里插入图片描述

date = data.iloc[2:242,1]
train = data.iloc[2:242,2:]
train

在这里插入图片描述

# 构建数据集
x_train = []
y_train = []
for i in range(220):
    x_train.append(np.array(train.values[i:i+20].tolist()).reshape(1,-1)[0])
    y_train.append(np.array(train.values[i+20,-1]))
clf = MLPRegressor(random_state=420)
clf.fit(x_train[:180], y_train[:180])
p = clf.predict(x_train[180:190])

score = clf.score(X = x_train[180:190], y = y_train[180:190])
score

output:-0.159274

画个图看看:
在这里插入图片描述然而,换线性回归:

t = pd.DataFrame(x_train[:180])
t_p = pd.DataFrame(y_train[:180])
model = LinearRegression().fit(t,t_p)
pp = model.predict(x_train[180:190])
sco = model.score(x_train[180:190],y_train[180:190])
sco

output:0.402906

在这里插入图片描述
对比:都是裸跑,没有调参,很明显,线性回归拟合效果比神经网络好。

缺少业务知识,构建数据集可能不科学,也算模型精度的原因之一。

thank you!

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
MATLAB神经络在股价预测方面具有广泛应用。通过使用神经络,可以对股价的未来走势进行预测,提供投资者参考和决策依据。 首先,使用MATLAB神经络工具箱,可以方便地构建和训练神经络。通过提供股价的历史数据作为输入,将来期望的股价作为目标输出,可以建立起一个适合股价预测的神经络模型。 然后,通过对股价数据进行预处理,可以保证神经络的训练效果。例如,可以通过归一化技术将股价数据转换为0到1之间的范围,以避免不同数量级的数据对神经络训练造成的影响。 接下来,在训练神经络之前,需要合理选择神经络的结构和参数。可以尝试不同的隐藏层节点数量、激活函数、学习速率等,以找到最佳的络结构。 训练神经络时,可以使用已有的股价数据集进行训练,利用反向传播算法不断调整络参数,提高预测准确度。同时,可采用交叉验证技术,将数据集分为训练集和测试集,评估络模型的泛化能力。 最后,训练完成后,使用训练好的神经络模型进行股价预测。将最新的股价数据输入神经络,即可得到对未来股价的预测结果。 需要注意的是,虽然MATLAB神经络在股价预测中具有一定的准确性,但仍然存在一定的不确定性和风险。因此,在实际应用中,还需要结合其他因素和指标进行综合分析,以做出更准确的决策。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值