This commit is contained in:
dosangyoon
2022-08-12 03:14:55 +09:00
parent 95f68cab7b
commit a1d8bb10f3
4 changed files with 128 additions and 98 deletions

View File

@@ -49,9 +49,10 @@ class Simulation (HTS):
'close': 'int', 'close': 'int',
'volume': 'int', 'volume': 'int',
'avg3': 'float', 'avg3': 'float',
'avg5': 'float', 'avg6': 'float',
'avg10': 'float', 'avg9': 'float',
'avg20': 'float', 'avg12': 'float',
'avg24': 'float',
'avg30': 'float', 'avg30': 'float',
'avg60': 'float', 'avg60': 'float',
'fast_k': 'float', 'fast_k': 'float',
@@ -69,7 +70,7 @@ class Simulation (HTS):
buy_line[i] = nan buy_line[i] = nan
buy_size.append(0) buy_size.append(0)
else: else:
buy_colors.append("#00ced1") buy_colors.append("#D87D0F")
buy_size.append(10 + (5 * buy_weight_line[i])) buy_size.append(10 + (5 * buy_weight_line[i]))
sell_colors = [] sell_colors = []
@@ -78,7 +79,7 @@ class Simulation (HTS):
sell_colors.append("#ffffff") sell_colors.append("#ffffff")
sell_line[i] = nan sell_line[i] = nan
else: else:
sell_colors.append("#D87D0F") sell_colors.append("#00ced1")
# 그래프를 설정한다. # 그래프를 설정한다.
buy_check = go.Scatter(x=data['date'], y=buy_line, mode='markers', name="buy", marker=dict(size=buy_size, color=buy_colors, line_width=0)) buy_check = go.Scatter(x=data['date'], y=buy_line, mode='markers', name="buy", marker=dict(size=buy_size, color=buy_colors, line_width=0))
@@ -86,11 +87,11 @@ class Simulation (HTS):
upper = go.Scatter(x=data['date'], y=data["upper"], name="upper", line_color='#000000') upper = go.Scatter(x=data['date'], y=data["upper"], name="upper", line_color='#000000')
lower = go.Scatter(x=data['date'], y=data["lower"], name="lower", line_color='#000000') lower = go.Scatter(x=data['date'], y=data["lower"], name="lower", line_color='#000000')
avg3 = go.Scatter(x=data['date'], y=data["avg3"], name="avg3", line_color='#8F8203') avg3 = go.Scatter(x=data['date'], y=data["avg3"], name="avg3", line_color='#8F8203')
avg5 = go.Scatter(x=data['date'], y=data["avg5"], name="avg5", line_color='#089B5B') avg6 = go.Scatter(x=data['date'], y=data["avg6"], name="avg6", line_color='#089B5B')
avg10 = go.Scatter(x=data['date'], y=data["avg10"], name="avg10", line_color='#ff00ff') avg9 = go.Scatter(x=data['date'], y=data["avg9"], name="avg9", line_color='#ff00ff')
avg20 = go.Scatter(x=data['date'], y=data["avg20"], name="avg20", line_color='#1469F4') avg12 = go.Scatter(x=data['date'], y=data["avg12"], name="avg12", line_color='#1469F4')
avg30 = go.Scatter(x=data['date'], y=data["avg30"], name="avg30", line_color='#000000') avg24 = go.Scatter(x=data['date'], y=data["avg24"], name="avg24", line_color='#000000')
avg60 = go.Scatter(x=data['date'], y=data["avg60"], name="avg60", line_color='#008000') avg30 = go.Scatter(x=data['date'], y=data["avg30"], name="avg30", line_color='#008000')
candle_stick = go.Candlestick(x=data['date'], open=data['open'], high=data['high'], low=data['low'], close=data['close'], increasing_line_color='red', decreasing_line_color='blue') candle_stick = go.Candlestick(x=data['date'], open=data['open'], high=data['high'], low=data['low'], close=data['close'], increasing_line_color='red', decreasing_line_color='blue')
volume_line = go.Scatter(x=data['date'], y=data["volume"], mode='lines', name='volume') volume_line = go.Scatter(x=data['date'], y=data["volume"], mode='lines', name='volume')
@@ -106,7 +107,7 @@ class Simulation (HTS):
rsi_line = go.Scatter(x=data['date'], y=data["rsi"], mode='lines', name='rsi') rsi_line = go.Scatter(x=data['date'], y=data["rsi"], mode='lines', name='rsi')
rsis_line = go.Scatter(x=data['date'], y=data["rsis"], mode='lines', name='rsis') rsis_line = go.Scatter(x=data['date'], y=data["rsis"], mode='lines', name='rsis')
candle_data = [candle_stick, upper, lower, avg3, avg5, avg10, avg20, avg30, avg60, buy_check, sell_check] candle_data = [candle_stick, upper, lower, avg3, avg6, avg9, avg12, avg24, avg30, buy_check, sell_check]
volume_data = [volume_line] volume_data = [volume_line]
macd_data = [macd_line, macd_s_line, macd_o_line] macd_data = [macd_line, macd_s_line, macd_o_line]
stochastic_data = [slow_k_line, slow_d_line] stochastic_data = [slow_k_line, slow_d_line]
@@ -180,7 +181,7 @@ if __name__ == "__main__":
# to check bying # to check bying
stock_codes = { stock_codes = {
"252670": ['20220801', '20220802', '20220803', '20220804', '20220805', '20220808', '20220809', '20220810', '20220811'], "252670": ['20220801', '20220802', '20220803', '20220804', '20220805', '20220808', '20220809', '20220810', '20220811'],
#"122630": ['20220810'], "122630": ['20220801', '20220802', '20220803', '20220804', '20220805', '20220808', '20220809', '20220810', '20220811'],
} }
method = "rule" # "rule", "ml", "answer" method = "rule" # "rule", "ml", "answer"

View File

@@ -1,4 +1,5 @@
import pandas as pd import pandas as pd
import numpy as np
from stock.analysis.Common import Common from stock.analysis.Common import Common
from stock.analysis.Stochastic import Stochastic from stock.analysis.Stochastic import Stochastic
from stock.analysis.RSI import RSI from stock.analysis.RSI import RSI
@@ -195,57 +196,52 @@ class BuySellChecker:
if i > START_TIME_INDEX: if i > START_TIME_INDEX:
# 매수 분석 # 매수 분석
if i > 740: if i > 710:
# "15:00" 까지만 매수 # "14:30" 까지만 매수
return buy, weight return buy, weight
if i > 380 + 30 and data["macd"][i] < -25: if i > 380 + 30 and data["macd"][i] < -25:
if data["avg3"][i] > min(data["avg5"][i], data["avg10"][i], data["avg20"][i]): if data["avg3"][i] > min(data["avg6"][i], data["avg9"][i], data["avg12"][i]):
buy = data["high"][i] buy = data["high"][i]
if i < 381 + 30: if i < 381 + 40:
weight = 1 weight = 1
else: else:
weight = 5 weight = 5
return buy, weight return buy, weight
if i > 380 + 30 and data["macd"][i] < -5 and data["rsi"][i] < 30: if i > 380 + 30 and data["macd"][i] < -5 and data["rsi"][i] < 30:
if data["avg3"][i] > min(data["avg5"][i], data["avg10"][i], data["avg20"][i]): if data["avg3"][i] > min(data["avg6"][i], data["avg9"][i], data["avg12"][i]):
buy = int((data["open"][i] + data["close"][i]) / 2) buy = int((data["open"][i] + data["close"][i]) / 2)
weight = 2 weight = 2
return buy, weight return buy, weight
if i > 380 + 30 and data["slow_k"][i] < 10 and data["rsi"][i] < 30: if i > 380 + 30 and data["slow_k"][i] < 10 and data["rsi"][i] < 30:
if data["slow_k"][i - 1] < min(data["slow_k"][i - 2], data["slow_k"][i]): if data["slow_k"][i - 1] < min(data["slow_k"][i - 2], data["slow_k"][i]):
if data["avg3"][i] > min(data["avg5"][i], data["avg10"][i], data["avg20"][i]): if data["avg3"][i] > min(data["avg6"][i], data["avg9"][i], data["avg12"][i]):
buy = int((data["open"][i] + data["close"][i]) / 2) buy = int((data["open"][i] + data["close"][i]) / 2)
weight = 2 weight = 2
return buy, weight return buy, weight
# 3분선이 5분선이 돌파가 이전보다 높은 경우 매수
if data["slow_k"][i] < 20 and data["avg3"][i - 1] < data["avg5"][i - 1] and data["avg3"][i] > data["avg5"][i]:
buy = int((data["open"][i] + data["close"][i]) / 2)
weight = 1
return buy, weight
# 3분선이 5분선이 돌파가 이전보다 높은 경우 매수 # 3분선이 5분선이 돌파가 이전보다 높은 경우 매수
if data["slow_k"][i] < 70 and data["avg3"][i - 1] < data["avg5"][i - 1] and data["avg3"][i] > data["avg5"][i]: if data["slow_k"][i] < 70 and data["avg3"][i - 1] < data["avg6"][i - 1] and data["avg3"][i] > data["avg6"][i]:
max_avg3 = 0 max_avg3 = 0
p_avg3 = 999999 p_avg3 = 999999
for c in range(1, 50): for c in range(1, 50):
if max_avg3 < data["avg5"][i - c]: if max_avg3 < data["avg6"][i - c]:
max_avg3 = data["avg5"][i - c] max_avg3 = data["avg6"][i - c]
if data["avg3"][i-c-1] < data["avg5"][i-c-1] and data["avg3"][i-c] > data["avg5"][i-c]: if data["avg3"][i-c-2] < data["avg6"][i-c-2] and data["avg3"][i-c-1] <= data["avg6"][i-c-1] and data["avg3"][i-c] > data["avg6"][i-c]:
p_avg3 = data["avg3"][i-c] p_avg3 = data["avg3"][i-c]
break break
if data["avg3"][i] > p_avg3 and max_avg3 < data["avg3"][i]: if data["avg3"][i] > p_avg3 and max_avg3 < data["avg3"][i]:
if max(data["avg3"][i-3], data["avg3"][i-2], data["avg3"][i-1]) - min(data["avg3"][i-3], data["avg3"][i-2], data["avg3"][i-1]) > 1: #if data["avg6"][i-10] > data["avg6"][i]:
if i == 382 or i == 383: if i == 382 or i == 383:
if data["close"][i] != data["high"][i]: if data["close"][i] != data["high"][i]:
return -1, -1 return -1, -1
#buy = int((data["open"][i] + data["close"][i]) / 2) buy = data["low"][i]
buy = data["low"][i] weight = 1
weight = 1 return buy, weight
return buy, weight
""" """
# 3분선이 10분 이상 7분선 아래에 있다가 7분선 위로 올라옴 # 3분선이 10분 이상 7분선 아래에 있다가 7분선 위로 올라옴
@@ -451,25 +447,25 @@ class BuySellChecker:
# 매도 분석 # 매도 분석
# 10분선 위에서 3분선이 5분선을 하향 돌파 하는 경우 매도 # 10분선 위에서 3분선이 5분선을 하향 돌파 하는 경우 매도
if data["slow_k"][i - 1] > 60 and data["avg3"][i - 1] >= data["avg5"][i - 1] and data["avg3"][i] < data["avg5"][i]: if data["slow_k"][i - 1] > 70 and data["avg3"][i - 1] >= data["avg6"][i - 1] and data["avg3"][i] < data["avg6"][i]:
if max(data["avg3"][i], data["avg5"][i]) < data["avg10"][i]: if max(data["avg3"][i], data["avg6"][i]) < data["avg9"][i]:
sell = int((data["high"][i] + data["low"][i]) / 2) sell = int((data["open"][i] + data["close"][i]) / 2)
weight = 1 weight = 1
return sell, weight return sell, weight
"""
# 3분선이 5분 이상 5분선 위에 있다가 5분선 아래로 내려옴 # 3분선이 5분 이상 5분선 위에 있다가 5분선 아래로 내려옴
if i >= 381 + 5: if i >= 381 + 5:
vaild = True vaild = True
for c in range(1, 6): for c in range(1, 11):
if data["avg3"][i - c] < data["avg5"][i - c]: if data["avg3"][i - c] < data["avg6"][i - c]:
vaild = False vaild = False
break break
if vaild: if vaild:
if data["avg3"][i] < data["avg5"][i]: if data["avg3"][i] < data["avg6"][i]:
sell = int(data["avg3"][i] - data["avg3"][i]%5) sell = int(data["avg3"][i] - data["avg3"][i]%5)
weight = 1 weight = 1
return sell, weight return sell, weight
"""
""" """
# 3분 선이 40분 전부터 게속 20분선 위에 있다가 아래로 내려오면 매도함 # 3분 선이 40분 전부터 게속 20분선 위에 있다가 아래로 내려오면 매도함
if data["avg3"][i] < data["avg20"][i]: if data["avg3"][i] < data["avg20"][i]:
@@ -553,44 +549,51 @@ class BuySellChecker:
if i >= START_TIME_INDEX: if i >= START_TIME_INDEX:
# 매수 분석 # 매수 분석
if i > 740: if i > 710:
# "15:00" 까지만 매수 # "14:30" 까지만 매수
return buy, weight return buy, weight
if i > 380 + 30 and data["macd"][i] < -25: if i > 380 + 30 and data["macd"][i] < -25:
if data["avg3"][i] > min(data["avg5"][i], data["avg10"][i], data["avg20"][i]): if data["avg3"][i] > min(data["avg6"][i], data["avg9"][i], data["avg12"][i]):
buy = data["high"][i] buy = data["high"][i]
if i < 381 + 30: if i < 381 + 40:
weight = 1 weight = 1
else: else:
weight = 5 weight = 5
return buy, weight return buy, weight
if i > 380 + 30 and data["macd"][i] < -5 and data["rsi"][i] < 30: if i > 380 + 30 and data["macd"][i] < -5 and data["rsi"][i] < 30:
if data["avg3"][i] > min(data["avg5"][i], data["avg10"][i], data["avg20"][i]): if data["avg3"][i] > min(data["avg6"][i], data["avg9"][i], data["avg12"][i]):
buy = int((data["open"][i] + data["close"][i]) / 2) buy = int((data["open"][i] + data["close"][i]) / 2)
weight = 2 weight = 2
return buy, weight return buy, weight
if i > 380 + 30 and data["slow_k"][i] < 10 and data["rsi"][i] < 30: if i > 380 + 30 and data["slow_k"][i] < 10 and data["rsi"][i] < 30:
if data["slow_k"][i - 1] < min(data["slow_k"][i - 2], data["slow_k"][i]): if data["slow_k"][i - 1] < min(data["slow_k"][i - 2], data["slow_k"][i]):
if data["avg3"][i] > min(data["avg5"][i], data["avg10"][i], data["avg20"][i]): if data["avg3"][i] > min(data["avg6"][i], data["avg9"][i], data["avg12"][i]):
buy = int((data["open"][i] + data["close"][i]) / 2) buy = int((data["open"][i] + data["close"][i]) / 2)
weight = 2 weight = 2
return buy, weight return buy, weight
# 3분선이 5분선이 돌파가 이전보다 높은 경우 매수 # 3분선이 5분선이 돌파가 이전보다 높은 경우 매수
if data["avg3"][i - 1] < data["avg5"][i - 1] and data["avg3"][i] > data["avg5"][i]: if (data["avg3"][i - 1] < data["avg9"][i - 1] and data["avg3"][i] > data["avg9"][i] or
data["avg3"][i - 2] < data["avg9"][i - 2] and data["avg3"][i - 1] > data["avg9"][i - 1] and data["avg3"][i] > data["avg9"][i]):
max_avg3 = 0
p_avg3 = 999999 p_avg3 = 999999
for c in range(1, 50): for c in range(2, 50):
if data["avg3"][i-c-1] < data["avg5"][i-c-1] and data["avg3"][i-c] > data["avg5"][i-c]: if max_avg3 < data["avg9"][i - c]:
p_avg3 = data["avg3"][i-c] max_avg3 = data["avg9"][i - c]
if data["avg3"][i - c - 2] < data["avg9"][i - c - 2] and data["avg3"][i - c - 1] <= data["avg9"][i - c - 1] and data["avg3"][i - c] > data["avg9"][i - c]:
p_avg3 = data["avg3"][i - c]
break break
if data["avg3"][i] > p_avg3: if data["avg3"][i] > p_avg3+3 and max_avg3 < data["avg3"][i]:
if data["slow_k"][i] < 30 or i < 381 + 10: # if data["avg6"][i-10] > data["avg6"][i]:
buy = int((data["open"][i] + data["close"][i]) / 2) if i == 382 or i == 383:
weight = 1 if data["close"][i] != data["high"][i]:
return buy, weight return -1, -1
buy = data["low"][i]
weight = 1
return buy, weight
""" """
# 3분선이 10분 이상 7분선 아래에 있다가 7분선 위로 올라옴 # 3분선이 10분 이상 7분선 아래에 있다가 7분선 위로 올라옴
if i >= 381 + 10: if i >= 381 + 10:
@@ -796,26 +799,25 @@ class BuySellChecker:
# 매도 분석 # 매도 분석
# 10분선 위에서 3분선이 5분선을 하향 돌파 하는 경우 매도 # 10분선 위에서 3분선이 5분선을 하향 돌파 하는 경우 매도
if data["avg3"][i - 1] >= data["avg5"][i - 1] and data["avg3"][i] < data["avg5"][i]: if data["slow_k"][i - 1] > 70 and data["avg3"][i - 1] >= data["avg6"][i - 1] and data["avg3"][i] < data["avg6"][i]:
if min(data["avg3"][i], data["avg5"][i]) > data["avg10"][i]: if max(data["avg3"][i], data["avg6"][i]) < data["avg9"][i]:
if data["slow_k"][i] > 80: sell = int((data["open"][i] + data["close"][i]) / 2)
sell = int((data["high"][i] + data["low"][i]) / 2) weight = 1
weight = 1 return sell, weight
return sell, weight
""" # 3분선이 10분 이상 6분선 위에 있다가 5분선 아래로 내려옴
# 3분선이 5분 이상 5분선 위에 있다가 5분선 아래로 내려옴
if i >= 381 + 5: if i >= 381 + 5:
vaild = True vaild = True
for c in range(1, 6): for c in range(1, 11):
if data["avg3"][i - c] < data["avg5"][i - c]: if data["avg3"][i - c] < data["avg6"][i - c]:
vaild = False vaild = False
break break
if vaild: if vaild:
if data["avg3"][i] < data["avg5"][i]: if data["avg3"][i] < data["avg6"][i]:
sell = int(data["avg3"][i] - data["avg3"][i]%5) sell = int(data["avg3"][i] - data["avg3"][i]%5)
weight = 1 weight = 1
return sell, weight return sell, weight
"""
""" """
# 3분 선이 40분 전부터 게속 20분선 위에 있다가 아래로 내려오면 매도함 # 3분 선이 40분 전부터 게속 20분선 위에 있다가 아래로 내려오면 매도함
if data["avg3"][i] < data["avg20"][i]: if data["avg3"][i] < data["avg20"][i]:
@@ -892,14 +894,14 @@ class BuySellChecker:
close_df = pd.DataFrame(close) close_df = pd.DataFrame(close)
avg3_list = close_df.rolling(window=3).mean().fillna(close[0]).values.tolist() avg3_list = close_df.rolling(window=3).mean().fillna(close[0]).values.tolist()
avg3 = [item[0] for item in avg3_list] avg3 = [item[0] for item in avg3_list]
avg5_list = close_df.rolling(window=5).mean().fillna(close[0]).values.tolist() avg6_list = close_df.rolling(window=6).mean().fillna(close[0]).values.tolist()
avg5 = [item[0] for item in avg5_list] avg6 = [item[0] for item in avg6_list]
avg7_list = close_df.rolling(window=7).mean().fillna(close[0]).values.tolist() avg9_list = close_df.rolling(window=9).mean().fillna(close[0]).values.tolist()
avg7 = [item[0] for item in avg7_list] avg9 = [item[0] for item in avg9_list]
avg10_list = close_df.rolling(window=10).mean().fillna(close[0]).values.tolist() avg12_list = close_df.rolling(window=12).mean().fillna(close[0]).values.tolist()
avg10 = [item[0] for item in avg10_list] avg12 = [item[0] for item in avg12_list]
avg20_list = close_df.rolling(window=20).mean().fillna(close[0]).values.tolist() avg24_list = close_df.rolling(window=24).mean().fillna(close[0]).values.tolist()
avg20 = [item[0] for item in avg20_list] avg24 = [item[0] for item in avg24_list]
avg30_list = close_df.rolling(window=30).mean().fillna(close[0]).values.tolist() avg30_list = close_df.rolling(window=30).mean().fillna(close[0]).values.tolist()
avg30 = [item[0] for item in avg30_list] avg30 = [item[0] for item in avg30_list]
avg60_list = close_df.rolling(window=60).mean().fillna(close[0]).values.tolist() avg60_list = close_df.rolling(window=60).mean().fillna(close[0]).values.tolist()
@@ -925,7 +927,7 @@ class BuySellChecker:
STOCK = [] STOCK = []
for i in range(len(open)): for i in range(len(open)):
STOCK.append({'volume': vol[i], 'close': close[i], 'open': open[i], 'high': high[i], 'low': low[i], STOCK.append({'volume': vol[i], 'close': close[i], 'open': open[i], 'high': high[i], 'low': low[i],
'avg3': avg3[i], 'avg5': avg5[i], 'avg7': avg7[i],'avg10': avg10[i],'avg20': avg20[i],'avg30': avg30[i],'avg60': avg60[i]}) 'avg3': avg3[i], 'avg6': avg6[i], 'avg9': avg9[i], 'avg12': avg12[i],'avg24': avg24[i],'avg30': avg30[i],'avg60': avg60[i]})
# stochastic 계산 # stochastic 계산
stochastic_df = self.stochastic.apply(STOCK, n=30, m=5, t=5) stochastic_df = self.stochastic.apply(STOCK, n=30, m=5, t=5)
@@ -957,7 +959,7 @@ class BuySellChecker:
temp = {"date": point_temp, temp = {"date": point_temp,
"open": open, "high": high, "low": low, "close": close, "volume": vol, "upper": upper, "lower": lower, "open": open, "high": high, "low": low, "close": close, "volume": vol, "upper": upper, "lower": lower,
"avg3": avg3, "avg7": avg7, "avg5": avg5, "avg10": avg10, "avg20": avg20, "avg30": avg30, "avg60": avg60, "avg3": avg3, "avg6": avg6, "avg9": avg9, "avg12": avg12, "avg24": avg24, "avg30": avg30, "avg60": avg60,
"macd": macd, "macds": macds, "macdo": macdo, "macd": macd, "macds": macds, "macdo": macdo,
"fast_k": fast_k, "slow_k": slow_k, "slow_d": slow_d, "fast_k": fast_k, "slow_k": slow_k, "slow_d": slow_d,
"rsi": rsi, "rsis": rsis} "rsi": rsi, "rsis": rsis}
@@ -1309,8 +1311,8 @@ class BuySellChecker:
sell, weight = self.getSellPriceAndWeight_3000(data, last_index) sell, weight = self.getSellPriceAndWeight_3000(data, last_index)
buy, weight = self.getBuyPriceAndWeight_3000(data, last_index) buy, weight = self.getBuyPriceAndWeight_3000(data, last_index)
else: else:
sell, weight = self.getBuyPriceAndWeight_3000(data, last_index) sell, weight = self.getSellPriceAndWeight_15000(data, last_index)
buy, weight = self.getBuyPriceAndWeight_3000(data, last_index) buy, weight = self.getBuyPriceAndWeight_15000(data, last_index)
bsLine['buy'] = [buy] bsLine['buy'] = [buy]
bsLine['buy_weight'] = [weight] bsLine['buy_weight'] = [weight]

Binary file not shown.

View File

@@ -289,24 +289,51 @@ if __name__ == "__main__":
labelMaker = LabelMaker(RESOURCE_PATH) labelMaker = LabelMaker(RESOURCE_PATH)
view = True view = True
stock_code = "252670" stock_code = "122630"
ymd = "20220809" ymd = "20220811"
if view: if view:
labelMaker.makeLabel(db_filename, "252670", "20220809", "0930", 1) labelMaker.makeLabel(db_filename, "122630", "20220811", "0905", 2)
labelMaker.makeLabel(db_filename, "252670", "20220809", "0931", 1) labelMaker.makeLabel(db_filename, "122630", "20220811", "0910", 2)
labelMaker.makeLabel(db_filename, "252670", "20220809", "0951", 1) labelMaker.makeLabel(db_filename, "122630", "20220811", "0911", 2)
labelMaker.makeLabel(db_filename, "252670", "20220809", "0953", 1) labelMaker.makeLabel(db_filename, "122630", "20220811", "1030", 2)
labelMaker.makeLabel(db_filename, "252670", "20220809", "0954", 1) labelMaker.makeLabel(db_filename, "122630", "20220811", "1034", 2)
labelMaker.makeLabel(db_filename, "252670", "20220809", "0955", 1) labelMaker.makeLabel(db_filename, "122630", "20220811", "1109", 2)
labelMaker.makeLabel(db_filename, "252670", "20220809", "0956", 1) labelMaker.makeLabel(db_filename, "122630", "20220811", "1110", 2)
labelMaker.makeLabel(db_filename, "252670", "20220809", "0959", 1) labelMaker.makeLabel(db_filename, "122630", "20220811", "1111", 2)
labelMaker.makeLabel(db_filename, "252670", "20220809", "1509", 1) labelMaker.makeLabel(db_filename, "122630", "20220811", "1207", 2)
labelMaker.makeLabel(db_filename, "252670", "20220809", "1515", 1) labelMaker.makeLabel(db_filename, "122630", "20220811", "1211", 2)
labelMaker.makeLabel(db_filename, "252670", "20220809", "1516", 1) labelMaker.makeLabel(db_filename, "122630", "20220811", "1228", 2)
labelMaker.makeLabel(db_filename, "252670", "20220809", "1518", 1) labelMaker.makeLabel(db_filename, "122630", "20220811", "1229", 2)
labelMaker.makeLabel(db_filename, "252670", "20220809", "1519", 1) labelMaker.makeLabel(db_filename, "122630", "20220811", "1230", 2)
labelMaker.makeLabel(db_filename, "252670", "20220809", "1520", 1) labelMaker.makeLabel(db_filename, "122630", "20220811", "1231", 2)
labelMaker.makeLabel(db_filename, "122630", "20220811", "1232", 2)
labelMaker.makeLabel(db_filename, "122630", "20220811", "1249", 2)
labelMaker.makeLabel(db_filename, "122630", "20220811", "1303", 2)
labelMaker.makeLabel(db_filename, "122630", "20220811", "1304", 2)
labelMaker.makeLabel(db_filename, "122630", "20220811", "1420", 2)
labelMaker.makeLabel(db_filename, "122630", "20220811", "1421", 2)
labelMaker.makeLabel(db_filename, "122630", "20220811", "1436", 2)
labelMaker.makeLabel(db_filename, "122630", "20220811", "1437", 2)
labelMaker.makeLabel(db_filename, "122630", "20220811", "1438", 2)
labelMaker.makeLabel(db_filename, "122630", "20220811", "0949", 1)
labelMaker.makeLabel(db_filename, "122630", "20220811", "1000", 1)
labelMaker.makeLabel(db_filename, "122630", "20220811", "1001", 1)
labelMaker.makeLabel(db_filename, "122630", "20220811", "1016", 1)
labelMaker.makeLabel(db_filename, "122630", "20220811", "1017", 1)
labelMaker.makeLabel(db_filename, "122630", "20220811", "1045", 1)
labelMaker.makeLabel(db_filename, "122630", "20220811", "1049", 1)
labelMaker.makeLabel(db_filename, "122630", "20220811", "1126", 1)
labelMaker.makeLabel(db_filename, "122630", "20220811", "1127", 1)
labelMaker.makeLabel(db_filename, "122630", "20220811", "1315", 1)
labelMaker.makeLabel(db_filename, "122630", "20220811", "1316", 1)
labelMaker.makeLabel(db_filename, "122630", "20220811", "1317", 1)
labelMaker.makeLabel(db_filename, "122630", "20220811", "1458", 1)
labelMaker.makeLabel(db_filename, "122630", "20220811", "1459", 1)
labelMaker.makeLabel(db_filename, "122630", "20220811", "1500", 1)
labelMaker.makeLabel(db_filename, "122630", "20220811", "1501", 1)
labelMaker.showLabels(stock_code, ymd) labelMaker.showLabels(stock_code, ymd)
else: else: