def volval(): lm = pd.read_csv( "/Users/s1830409/Google ドライブ/outputData/minashi-learn.csv") lm.set_index('コード', inplace=True) nk225 = n225.DfNk225() # 株価水準 val = nk225.data.mean() # 日次リターン nk225.data = nk225.data.pct_change() nk225.data.fillna(0, inplace=True) # ボラティリティ vol = nk225.data.std() * np.sqrt(250) volval = vol * val # err比率 rat = lm['100000'] / lm['answer'] plt.scatter(rat, volval[1:]) plt.yscale('log') plt.xscale('log') plt.show()
def val(): lm = pd.read_csv( "/Users/s1830409/Google ドライブ/outputData/minashi-learn.csv") lm.set_index('コード', inplace=True) nk225 = n225.DfNk225() # 株価水準 val = nk225.data.mean() # err比率 rat = lm['100000'] / lm['answer'] plt.scatter(rat, val[1:]) plt.yscale('log') plt.xscale('log') plt.show()
def track(): # load learned minashi filePath = "/Users/s1830409/Google ドライブ/outputData/minashi-learn.csv" minashiDf = pd.read_csv(filePath) minashiDf.set_index('コード', inplace=True) sDate = '2018/10/01' eDate = '2019/03/15' # make225sim nk = n225.DfNk225() ansData = nk.makeOrigin225(sDate, eDate, minashiDf['answer'].values) s100Data = nk.makeOrigin225(sDate, eDate, minashiDf['100'].values) s1000Data = nk.makeOrigin225(sDate, eDate, minashiDf['1000'].values) s10000Data = nk.makeOrigin225(sDate, eDate, minashiDf['10000'].values) s100000Data = nk.makeOrigin225(sDate, eDate, minashiDf['100000'].values) plt.plot(ansData['NK'], label="answer") plt.plot(s100Data['NK'], label="100") plt.plot(s1000Data['NK'], label="1000") plt.plot(s10000Data['NK'], label="10000") plt.plot(s100000Data['NK'], label="100000") plt.legend() #plt.show() plt.savefig("/Users/s1830409/Google ドライブ/outputData/ori225.png") oData = pd.DataFrame({ 'answer': ansData['NK'], '100': s100Data['NK'], '1000': s1000Data['NK'], '10000': s10000Data['NK'], '100000': s100000Data['NK'], }) oData.to_csv("/Users/s1830409/Google ドライブ/outputData/ori225.csv")
import nk225data as n225 import pandas as pd import tensorflow as tf if __name__ == '__main__': data = n225.DfNk225() # 除数を学習 # 除数 vD = tf.Variable(225, dtype=tf.float64) # 株価 hPrice = tf.placeholder(tf.float64, [len(data.minashiF)]) # モデル構築 model = hPrice * tf.convert_to_tensor(data.minashiF) model = tf.reduce_sum(model) / vD # Minimize hAnswer = tf.placeholder(tf.float64) loss = tf.reduce_mean(tf.square(model - hAnswer)) optimizer = tf.train.GradientDescentOptimizer(0.000001) train = optimizer.minimize(loss) # Before starting, initialize the variables. We will 'run' this firs init = tf.global_variables_initializer() # Launch the graph. sess = tf.Session() sess.run(init) for step in range(100):