init
This commit is contained in:
@@ -1,4 +1,5 @@
|
||||
import os
|
||||
import csv
|
||||
import copy
|
||||
import sqlite3
|
||||
import numpy as np
|
||||
@@ -158,8 +159,8 @@ class Stock2Vector(HTS):
|
||||
conn = sqlite3.connect(os.path.join(self.RESOURCE_PATH, "hts.db"))
|
||||
cursor = conn.cursor()
|
||||
|
||||
#cursor.execute('SELECT ymd, hms, open, high, low, close, volume, label FROM ' + tableName + ' WHERE CODE=? and (ymd >= ? and ymd <= ?) order by ymd desc, hms ', (stock_code, "20220721", "20220731"))
|
||||
cursor.execute('SELECT ymd, hms, open, high, low, close, volume, label FROM ' + tableName + ' WHERE CODE=? order by ymd desc, hms ', (stock_code,))
|
||||
cursor.execute('SELECT ymd, hms, open, high, low, close, volume, label FROM ' + tableName + ' WHERE CODE=? and (ymd >= ? and ymd <= ?) order by ymd desc, hms ', (stock_code, "20220701", "20220731"))
|
||||
#cursor.execute('SELECT ymd, hms, open, high, low, close, volume, label FROM ' + tableName + ' WHERE CODE=? order by ymd desc, hms ', (stock_code,))
|
||||
db_result = cursor.fetchall()
|
||||
temp_result = []
|
||||
for rows in db_result:
|
||||
@@ -245,7 +246,7 @@ class Stock2Vector(HTS):
|
||||
|
||||
return np.asarray(vector)
|
||||
|
||||
def getDataset2D(self, stock_code, VECTOR_SIZE = 224):
|
||||
def getDataset2D(self, stock_code, VECTOR_SIZE = 381):
|
||||
result = self.getTrainData(stock_code)
|
||||
df, minmax_df = self.preprocessData(result)
|
||||
|
||||
@@ -266,17 +267,30 @@ class Stock2Vector(HTS):
|
||||
for j in range(SIZE_HEIGHT):
|
||||
temp_X[j][0:VECTOR_SIZE] = TOTAL_X[j][i-VECTOR_SIZE:i]
|
||||
X.append(temp_X)
|
||||
if int(TOTAL_Y[0][i]) == 0:
|
||||
Y.append([1, 0, 0])
|
||||
elif int(TOTAL_Y[0][i]) == 0.5:
|
||||
Y.append([0, 1, 0])
|
||||
if TOTAL_Y[0][i] == 0:
|
||||
#Y.append([1, 0, 0])
|
||||
Y.append([0])
|
||||
elif TOTAL_Y[0][i] == 0.5:
|
||||
#Y.append([0, 1, 0])
|
||||
Y.append([1])
|
||||
else:
|
||||
Y.append([0, 0, 1])
|
||||
#Y.append([0, 0, 1])
|
||||
Y.append([2])
|
||||
|
||||
X = np.asarray(X)
|
||||
Y = np.asarray(Y)
|
||||
return X, Y
|
||||
|
||||
def makeDataset2D(self, stock_code, outFileName=None):
|
||||
X, Y = self.getDataset2D(stock_code)
|
||||
|
||||
#reX = X.reshape(X.shape[0], (X.shape[1] * X.shape[2]))
|
||||
#df = pd.DataFrame(np.hstack((reX, Y)))
|
||||
#df.to_csv(outFileName, index=False, header=False)
|
||||
|
||||
|
||||
return X, Y
|
||||
|
||||
def getDataset3D(self, stock_code, VECTOR_SIZE = 299):
|
||||
result = self.getTrainData(stock_code)
|
||||
df, minmax_df = self.preprocessData(result)
|
||||
@@ -324,9 +338,10 @@ if __name__ == "__main__":
|
||||
for stock_code in stock_codes:
|
||||
stock2Vector = Stock2Vector(RESOURCE_PATH)
|
||||
|
||||
for given_day in stock_codes[stock_code]:
|
||||
X, Y = stock2Vector.getDataset2D(stock_code)
|
||||
# X, Y = stock2Vector.getDataset2D(stock_code)
|
||||
stock2Vector.makeDataset2D(stock_code, outFileName=os.path.join(RESOURCE_PATH, "tmp", "stock_features.csv"))
|
||||
|
||||
for given_day in stock_codes[stock_code]:
|
||||
data, minmax_data = stock2Vector.makeData(given_day, stock_code)
|
||||
vector = stock2Vector.vectorize(data)
|
||||
minmax_vector = stock2Vector.vectorize(minmax_data)
|
||||
|
||||
Reference in New Issue
Block a user