用 线性回归 预测股票的涨跌
2017-07-22 16:45
796 查看
1、数据介绍
网易财经上获得的上证指数的历史数据,爬取了20年的上证指数数据
2、实验目的
根据给出当前时间前150天的历史数据,预测当天上证指数的涨跌
代码:
输出:
网易财经上获得的上证指数的历史数据,爬取了20年的上证指数数据
2、实验目的
根据给出当前时间前150天的历史数据,预测当天上证指数的涨跌
代码:
import pandas as pd import numpy as np from sklearn import svm from sklearn import cross_validation data=pd.read_csv('000777.csv',encoding='gbk',parse_dates=[0],index_col=0) data.sort_index(0,ascending=True,inplace=True) //data.shape[0]-dayfeature意思是因为我们要用150天数据做训练,对于条目为200条的数据,只有50条数 据是有前150天的数据来训练的,所以训练集的大小就是200-150, 对于每一条数据,他的特征是前150 天的所有特征数据,即150*5,+1是将当天的开盘价引入作为一条特征数据 dayfeature=150 featurenum=5*dayfeature x=np.zeros((data.shape[0]-dayfeature,featurenum+1)) y=np.zeros((data.shape[0]-dayfeature)) for i in range(0,data.shape[0]-dayfeature): x[i,0:featurenum]=np.array(data[i:i+dayfeature] \ [[u'收盘价',u'最高价',u'最低价',u'开盘价',u'成交量']]).reshape((1,featurenum)) //最后一列记录当日的开盘价 x[i,featurenum]=data.ix[i+dayfeature][u'开盘价'] for i in range(0,data.shape[0]-dayfeature): if data.ix[i+dayfeature][u'收盘价'] >= data.ix[i+dayfeature][u'开盘价']: //如果当天收盘价高于开盘价,y[i]=1代表涨,0代表跌 y[i]=1 else: y[i]=0 clf=svm.SVC(kernel='sigmoid') result = [] for i in range(5): x_train, x_test, y_train, y_test = \ cross_validation.train_test_split(x, y, test_size = 0.2) clf.fit(x_train, y_train) result.append(np.mean(y_test == clf.predict(x_test))) print("svm classifier accuacy:") print(result)
输出:
svm classifier accuacy: [0.51465798045602607, 0.51682953311617807, 0.55700325732899025, 0.56026058631921827, 0.55483170466883824]
相关文章推荐
- 用 线性回归 预测股票的涨跌
- 逻辑回归模型预测股票涨跌
- 《BI那点儿事》Microsoft 逻辑回归算法——预测股票的涨跌
- 《BI那点儿事》Microsoft 逻辑回归算法——预测股票的涨跌
- 线性回归分析及预测
- 在PostgreSQL中用线性回归分析linear regression做预测 - 例子2, 预测未来数日某股收盘价
- 线性回归、预测回归、一般回归
- 【线性回归】波斯顿房价预测
- 用SVM预测股票涨跌
- 线性回归:预测数值型数据
- 用贝叶斯判别分析再次预测股票涨跌情况
- 利用LSTM对股票的收盘价进行回归预测
- python 线性回归 预测数据
- 线性回归的应用——容量预测
- 分别用普通线性回归、岭回归、Lasso回归对boston房价进行预测,比较效果
- 【数据挖掘与R语言笔记】预测海藻数量(二)线性模型和回归树模型
- 多元线性回归的预测
- 逻辑回归模型预测股票涨跌
- 机器学习实战---线性回归提高篇之乐高玩具套件二手价预测
- 机器学习教程 二.在股票上的回归预测