1. 程式人生 > >振幅和成交量的關系

振幅和成交量的關系

n) valid () image 每日 .cn wid ros splay

用廣晟有色的歷史數據,用sklearn進行回歸,數據如下:

技術分享

假設每日振幅和成交量以及價格是有關系的,於是構造:

# coding=utf-8
from pandas import Series,DataFrame
import pandas as pd
import numpy as np
from datetime import datetime
import tushare as ts
from sklearn import datasets, linear_model

df=pd.read_csv(‘data.csv‘)
X=df[[‘open‘,‘volume‘]]
y=df[‘high‘]-df[‘low‘]

from sklearn.cross_validation import
train_test_split X_train, X_test, y_train, y_test = train_test_split(X, y, random_state=1) from sklearn.linear_model import LinearRegression linreg = LinearRegression() linreg.fit(X_train,y_train) print linreg.intercept_ print linreg.coef_ print "振幅=%f+%f價格+%f成交量"%(linreg.intercept_,linreg.coef_[0],linreg.coef_[1]) #模型擬合測試集 y_pred = linreg.predict(X_test) from sklearn import
metrics # 用scikit-learn計算MSE print "MSE:",metrics.mean_squared_error(y_test, y_pred) # 用scikit-learn計算RMSE print "RMSE:",np.sqrt(metrics.mean_squared_error(y_test, y_pred))

輸出:

-0.542840729241
[  2.91283661e-02   1.89720767e-05]
振幅=-0.542841+0.029128價格+0.000019成交量
MSE:
 
1.16361481737
RMSE:
 
1.07870979293

但是,按說應該跟成交量關系更大一些,等我把數據處理了繼續研究。

程序基本照抄http://www.cnblogs.com/pinard/p/6016029.html

原來打算只研究成交量和價格的關系,但報錯,原因好像是0.17版後,變量不能是一個維度啥的,所以把價格也加進來了。

振幅和成交量的關系