吾爱破解 - 52pojie.cn

 找回密码
 注册[Register]

QQ登录

只需一步,快速开始

查看: 1589|回复: 10
收起左侧

[经验求助] 用Python写股票预测价格项目

  [复制链接]
Laburado 发表于 2023-5-25 17:27
25吾爱币
有没有大佬能写一下呀!预测股票价格项目
项目背景本项目要求结合历史股票的数据预测股票市场的未来价格及成交量
数据说明gzpa_train.csv中存放着训练数据, gzpa_test.csv为测试数据,根据训练数据预测测试数据中未来的开盘价,收盘价,最高价,最低价及成交量。数据可从下述链接获取链接:https://pan.baidu.com/s/1e-id7O0VwbeRxsxhN57o9A?pwd=x5dn提取码:x5dn
算法要求要求至少使用种机器学习算法,(若使用RNN或LSTM,则需给出模型参数文件由于本项目是回归问题,模型评价指标使用R2、MAE和MSE
提交数据要求程序代码及结果(电子版):完整的代码,文件名为“项目一+班级+姓名.ipynb正确运行代码后要求能产生预测结果,文件名为项目一+submit+姓名.csv”。该结果文件中需要包含六列,第1列标题为date,内容同gzpa_test.csv中的date,排序也一定要相同,不然预测评分值会很低;第2列标题为open,内容为预测的开盘价,第3列标题为high,内容为预测的最高价;第4列标题为low,内容为预测的最低价;第5列标题为close,内容为预测的收盘价;第6列标题为volume,内容为预测的成交量。

最佳答案

查看完整内容

你这币确实太少,估计没人花大量时间在你这个问题上。但我可以帮你问问gpt-4,至于对不对我也不懂。如果没有帮助那我就先说声抱歉浪费了你的时间。 以下是gpt-4的原回答: 这是一个时间序列预测问题,你可以使用LSTM,这是一种循环神经网络,非常适合处理时间序列数据。 以下是一个Python环境下使用Keras库的LSTM的基本代码框架。这个代码框架旨在将数据预处理为LSTM可以接受的格式,并建立一个基本的LSTM模型。 [mw_shl_cod ...

发帖前要善用论坛搜索功能,那里可能会有你要找的答案或者已经有人发布过相同内容了,请勿重复发帖。

fzhhn 发表于 2023-5-25 17:27
你这币确实太少,估计没人花大量时间在你这个问题上。但我可以帮你问问gpt-4,至于对不对我也不懂。如果没有帮助那我就先说声抱歉浪费了你的时间。
以下是gpt-4的原回答:

这是一个时间序列预测问题,你可以使用LSTM,这是一种循环神经网络,非常适合处理时间序列数据。
以下是一个Python环境下使用Keras库的LSTM的基本代码框架。这个代码框架旨在将数据预处理为LSTM可以接受的格式,并建立一个基本的LSTM模型。
[Python] 纯文本查看 复制代码
import pandas as pd
import numpy as np
from keras.models import Sequential
from keras.layers import LSTM, Dense
from sklearn.metrics import mean_squared_error
from sklearn.preprocessing import MinMaxScaler
from keras.models import load_model

# 数据加载
train = pd.read_csv('gzpa_train.csv')
test = pd.read_csv('gzpa_test.csv')

# 数据预处理
scaler = MinMaxScaler(feature_range=(0, 1))
scaled_data = scaler.fit_transform(train.iloc[:,1:6])

# 数据转换为LSTM需要的格式
def create_dataset(dataset, look_back=1):
    X, Y = [], []
    for i in range(len(dataset)-look_back-1):
        a = dataset[i:(i+look_back), :]
        X.append(a)
        Y.append(dataset[i + look_back, :])
    return np.array(X), np.array(Y)

look_back = 1
X_train, Y_train = create_dataset(scaled_data, look_back)

# LSTM模型建立
model = Sequential()
model.add(LSTM(50, input_shape=(X_train.shape[1], X_train.shape[2])))
model.add(Dense(5))
model.compile(loss='mean_squared_error', optimizer='adam')

# 模型训练
model.fit(X_train, Y_train, epochs=100, batch_size=1, verbose=2)

# 保存模型
model.save('LSTM_model.h5')

# 模型预测
train_predict = model.predict(X_train)

# 预测结果反归一化
train_predict = scaler.inverse_transform(train_predict)

以上代码的主要步骤是:
  • 加载数据
  • 数据预处理,归一化数据到0-1之间
  • 转换数据为LSTM可以接受的3D格式
  • 建立LSTM模型,并进行训练
  • 保存训练好的模型
  • 使用模型进行预测,并将预测结果反归一化到原来的范围
需要注意的是,这是一个基本的LSTM模型,对于实际问题,你可能需要对模型结构进行调整,比如增加隐藏层的数量,改变LSTM神经元的数量,改变epoch等。而且,这里只进行了训练集的预测,你还需要处理测试集的数据,并对其进行预测。

最后,根据要求,你需要将预测结果保存为csv文件。可以使用pandas的DataFrame和to_csv函数来实现。例如:
[Python] 纯文本查看 复制代码
result = pd.DataFrame(train_predict, columns=['open', 'high', 'low', 'close', 'volume'])
result['date'] = test['date']
result = result[['date', 'open', 'high', 'low', 'close', 'volume']]
result.to_csv("项目一+submit+姓名.csv", index=False)

这将会在当前目录下生成一个名为"项目一+submit+姓名.csv"的文件,其中包含了预测的股票信息。
此外,模型的评估可以使用sklearn的mean_absolute_error,mean_squared_error,和r2_score等函数。例如:
[Python] 纯文本查看 复制代码
from sklearn.metrics import mean_absolute_error, mean_squared_error, r2_score
mae = mean_absolute_error(Y_test, test_predict)
mse = mean_squared_error(Y_test, test_predict)
r2 = r2_score(Y_test, test_predict)
print('Test Mean Absolute Error:', mae)
print('Test Mean Squared Error:', mse)
print('Test R2 Score:', r2)

其中,Y_test是测试集的真实值,test_predict是测试集的预测值。

如果你对它的回答还有什么问题,可以回复我,我会继续跟进你对gpt-4的提问。
py学徒 发表于 2023-5-25 19:42
Guo-Guo 发表于 2023-5-25 20:10
本帖最后由 Guo-Guo 于 2023-5-25 20:12 编辑

哈哈哈,这币也太少了,淘宝250RMB估计都没人做
heign 发表于 2023-5-25 21:04
牵涉到机器学习的单子都不便宜,已经不是吾爱币的问题了,而是RMB
 楼主| Laburado 发表于 2023-5-25 22:49
py学徒 发表于 2023-5-25 19:42
这种需求,25个币就能搞定?哈哈~

哈哈哈,这样嘛,我是第一次提问,了解了了解了,谢谢
 楼主| Laburado 发表于 2023-5-25 22:51
Guo-Guo 发表于 2023-5-25 20:10
哈哈哈,这币也太少了,淘宝250RMB估计都没人做

哈哈哈,这样嘛,我是第一次提问,了解了了解了,谢谢
 楼主| Laburado 发表于 2023-5-25 22:52
heign 发表于 2023-5-25 21:04
牵涉到机器学习的单子都不便宜,已经不是吾爱币的问题了,而是RMB

原来如此
Guo-Guo 发表于 2023-5-26 09:57
Laburado 发表于 2023-5-25 22:51
哈哈哈,这样嘛,我是第一次提问,了解了了解了,谢谢

看看楼上GPT4写的代码吧,GPT4这么强啊,感觉看起来不错的样子, GPT4能写的话25个币肯定够了
lewin8 发表于 2023-5-26 10:09
这种写出来的怕是吾爱币不会卖,反正我是不会。
您需要登录后才可以回帖 登录 | 注册[Register]

本版积分规则

返回列表

RSS订阅|小黑屋|处罚记录|联系我们|吾爱破解 - LCG - LSG ( 京ICP备16042023号 | 京公网安备 11010502030087号 )

GMT+8, 2024-11-24 14:43

Powered by Discuz!

Copyright © 2001-2020, Tencent Cloud.

快速回复 返回顶部 返回列表