init
This commit is contained in:
@@ -285,8 +285,8 @@ class Stock2Vector(HTS):
|
||||
Y = np.asarray(Y, dtype='int64')
|
||||
return X, Y
|
||||
|
||||
def getVectorData(self, data, VECTOR_SIZE = 32):
|
||||
return self.getVectorData_2(data, VECTOR_SIZE)
|
||||
def getVectorData(self, data, VECTOR_SIZE = 32, H_VECTOR_SIZE = 32, W_VECTOR_SIZE = 200):
|
||||
return self.getVectorData_2(data, H_VECTOR_SIZE, W_VECTOR_SIZE)
|
||||
|
||||
def getVectorData_1(self, data, VECTOR_SIZE):
|
||||
df = self.buySellChecker.analyze(data)
|
||||
@@ -329,37 +329,81 @@ class Stock2Vector(HTS):
|
||||
batch_Y = np.asarray(batch_Y, dtype='int64')
|
||||
return batch_X, batch_Y
|
||||
|
||||
def getVectorData_2(self, data, VECTOR_SIZE = 32):
|
||||
def getVectorData_2(self, data, H_VECTOR_SIZE = 32, W_VECTOR_SIZE = 200):
|
||||
df = self.buySellChecker.analyze(data)
|
||||
|
||||
# avg10, 볼린져밴드 상단과 하단의 차이, rsi, avg3만 이용한다.
|
||||
# channel1: avg10, channel2: diff_upper_lower, channel3: abs_avg_2, channel4: abs_avg_3
|
||||
avg3 = df['avg3'].tolist()
|
||||
avg9 = df['avg9'].tolist()
|
||||
avg12 = df['avg9'].tolist()
|
||||
avg24 = df['avg9'].tolist()
|
||||
|
||||
diff_upper_lower = df['diff_upper_lower'].tolist()
|
||||
macd = df['macd'].tolist()
|
||||
diff_avg27 = df['diff_avg27'].tolist()
|
||||
diff_avg3_avg27 = df['diff_avg3_avg27'].tolist()
|
||||
diff_avg3_avg54 = df['diff_avg3_avg54'].tolist()
|
||||
diff_avg6_avg27 = df['diff_avg6_avg27'].tolist()
|
||||
diff_avg6_avg54 = df['diff_avg6_avg54'].tolist()
|
||||
diff_avg9_avg27 = df['diff_avg9_avg27'].tolist()
|
||||
diff_avg9_avg54 = df['diff_avg9_avg54'].tolist()
|
||||
diff_avg12_avg27 = df['diff_avg12_avg27'].tolist()
|
||||
diff_avg12_avg54 = df['diff_avg12_avg54'].tolist()
|
||||
diff_change_lead1 = df['diff_change_lead1'].tolist()
|
||||
diff_open_lead1 = df['diff_open_lead1'].tolist()
|
||||
diff_close_lead1 = df['diff_close_lead1'].tolist()
|
||||
diff_high_lead1 = df['diff_high_lead1'].tolist()
|
||||
diff_low_lead1 = df['diff_low_lead1'].tolist()
|
||||
rsi = df['rsi'].tolist()
|
||||
rsis = df['rsis'].tolist()
|
||||
diff_avg54 = df['diff_avg54'].tolist()
|
||||
diff_change_base = df['diff_change_base'].tolist()
|
||||
diff_base_lead1 = df['diff_base_lead1'].tolist()
|
||||
diff_open_base = df['diff_open_base'].tolist()
|
||||
diff_close_base = df['diff_close_base'].tolist()
|
||||
diff_high_base = df['diff_high_base'].tolist()
|
||||
diff_low_base = df['diff_low_base'].tolist()
|
||||
abs_avg_1 = df['abs_avg_1'].tolist()
|
||||
abs_avg_2 = df['abs_avg_2'].tolist()
|
||||
abs_avg_3 = df['abs_avg_3'].tolist()
|
||||
|
||||
size = len(avg10)
|
||||
batch_X, batch_Y = [], []
|
||||
X = np.zeros((4, VECTOR_SIZE, VECTOR_SIZE))
|
||||
abs_avg_4 = df['abs_avg_4'].tolist()
|
||||
abs_avg_5 = df['abs_avg_5'].tolist()
|
||||
diff_upper_lower = df['diff_upper_lower'].tolist()
|
||||
diff_open_lower = df['diff_open_lower'].tolist()
|
||||
diff_close_upper = df['diff_close_upper'].tolist()
|
||||
label = df['label'].tolist()
|
||||
for i in range(VECTOR_SIZE * VECTOR_SIZE - 1, size):
|
||||
w, h = 0, 0
|
||||
for j in range(i - VECTOR_SIZE * VECTOR_SIZE + 1, i + 1):
|
||||
X[0, h, w] = avg10[j]
|
||||
X[1, h, w] = diff_upper_lower[j]
|
||||
X[2, h, w] = abs_avg_3[j]
|
||||
X[3, h, w] = rsi[j]
|
||||
w += 1
|
||||
if w >= VECTOR_SIZE:
|
||||
w = 0
|
||||
h += 1
|
||||
if h >= VECTOR_SIZE:
|
||||
h = 0
|
||||
|
||||
size = len(label)
|
||||
batch_X, batch_Y = [], []
|
||||
X = np.zeros((H_VECTOR_SIZE, W_VECTOR_SIZE))
|
||||
for i in range(W_VECTOR_SIZE - 1, size):
|
||||
for w in range(i - W_VECTOR_SIZE + 1, i + 1):
|
||||
X[0, w] = macd[w]
|
||||
X[1, w] = diff_avg27[w]
|
||||
X[2, w] = diff_avg3_avg27[w]
|
||||
X[3, w] = diff_avg3_avg54[w]
|
||||
X[4, w] = diff_avg6_avg27[w]
|
||||
X[5, w] = diff_avg6_avg54[w]
|
||||
X[6, w] = diff_avg9_avg27[w]
|
||||
X[7, w] = diff_avg9_avg54[w]
|
||||
X[8, w] = diff_avg12_avg27[w]
|
||||
X[9, w] = diff_avg12_avg54[w]
|
||||
X[10, w] = diff_change_lead1[w]
|
||||
X[11, w] = diff_open_lead1[w]
|
||||
X[12, w] = diff_close_lead1[w]
|
||||
X[13, w] = diff_high_lead1[w]
|
||||
X[14, w] = diff_low_lead1[w]
|
||||
X[15, w] = rsi[w]
|
||||
X[16, w] = rsis[w]
|
||||
X[17, w] = diff_avg54[w]
|
||||
X[18, w] = diff_change_base[w]
|
||||
X[19, w] = diff_base_lead1[w]
|
||||
X[20, w] = diff_open_base[w]
|
||||
X[21, w] = diff_close_base[w]
|
||||
X[22, w] = diff_high_base[w]
|
||||
X[23, w] = diff_low_base[w]
|
||||
X[24, w] = abs_avg_1[w]
|
||||
X[25, w] = abs_avg_2[w]
|
||||
X[26, w] = abs_avg_3[w]
|
||||
X[27, w] = abs_avg_4[w]
|
||||
X[28, w] = abs_avg_5[w]
|
||||
X[29, w] = diff_upper_lower[w]
|
||||
X[30, w] = diff_open_lower[w]
|
||||
X[31, w] = diff_close_upper[w]
|
||||
|
||||
batch_X.append(X)
|
||||
batch_Y.append(label[i])
|
||||
|
||||
@@ -407,7 +451,7 @@ if __name__ == "__main__":
|
||||
stock_codes = {
|
||||
# 252670
|
||||
# 122630
|
||||
"252670": ['20220729'],
|
||||
"252670": ['20220801', '20220802', '20220803', '20220804', '20220805']
|
||||
}
|
||||
|
||||
for stock_code in stock_codes:
|
||||
|
||||
Reference in New Issue
Block a user