From d9b7f1b4fd1aaca6fcf6b31eb2b74a848ab21871 Mon Sep 17 00:00:00 2001 From: dsyoon Date: Wed, 13 Oct 2021 00:33:10 +0900 Subject: [PATCH] init --- hts/HTS.py | 32 ++++++++++++++++---------------- 1 file changed, 16 insertions(+), 16 deletions(-) diff --git a/hts/HTS.py b/hts/HTS.py index 39836c0..c43b9cd 100644 --- a/hts/HTS.py +++ b/hts/HTS.py @@ -989,7 +989,7 @@ class HTS: def buyRealTime(self, stock_code, given_day): PREVIOUS_PRICE = 0 - BUY_COUNT = 100 + BUY_COUNT = 130 logFp = open(given_day+".log", "w") @@ -1029,16 +1029,16 @@ class HTS: if bs_buy_price > 0: if PREVIOUS_PRICE > 0: if PREVIOUS_PRICE > bs_buy_price: - if BUY_COUNT > 140: - BUY_COUNT = 140 - if BUY_COUNT <= 40: - BUY_COUNT = 40 + if BUY_COUNT > 170: + BUY_COUNT = 170 + if BUY_COUNT < 70: + BUY_COUNT = 70 BUY_COUNT += 10 elif PREVIOUS_PRICE < bs_buy_price: - if BUY_COUNT > 150: - BUY_COUNT = 160 - if BUY_COUNT <= 50: - BUY_COUNT = 60 + if BUY_COUNT > 180: + BUY_COUNT = 180 + if BUY_COUNT < 90: + BUY_COUNT = 90 BUY_COUNT -= 10 PREVIOUS_PRICE = bs_buy_price @@ -1046,7 +1046,7 @@ class HTS: # 매수 주문 # 현재까지 매입금액이 7백만원 이하일 때만 매수를 한다. if TOTAL_BUY_AMT < 7000000: - orderNum = self.requestOrder("2", stock_code, BUY_COUNT , bs_buy_price) + self.requestOrder("2", stock_code, BUY_COUNT , bs_buy_price) print("BUY", second, bs_buy_price) logFp.write("%s,%s, %d\n" % ("BUY", second, bs_buy_price)) @@ -1062,7 +1062,7 @@ class HTS: for code in jangoDic: TOTAL_BUY_AMT = jangoDic[code]['매입금액'] if jangoDic[code]['매도가능'] > 0: - orderNum = self.requestOrder("1", stock_code, jangoDic[code]['매도가능'], bs_sell_price) + self.requestOrder("1", stock_code, jangoDic[code]['매도가능'], bs_sell_price) timecheck[second] = True else: @@ -1071,7 +1071,7 @@ class HTS: logFp.flush() if datetime.strptime(given_day + " 151500", '%Y%m%d %H%M%S') < datetime.now(): - # 15:15:00 이후라면 모든 매수/매도 주문 취소하고 현재가-5원으로 매도한다. + # 15:15:00 이후라면 모든 미체결 취소 self.cancelOrderList() # 만약 잔고가 있으면 장부가보다 5원 높게 매도한다. @@ -1081,7 +1081,7 @@ class HTS: if jangoDic[code]['매도가능'] > 0: if final_price > jangoDic[code]['장부가'] + 5: - orderNum = self.requestOrder("1", stock_code, jangoDic[code]['매도가능'], final_price) + self.requestOrder("1", stock_code, jangoDic[code]['매도가능'], final_price) else: # 장부가 가격의 마지막 자리를 0으로 만든다. (2090 -> 2090, 2092 -> 2090, 2098 -> 2090) sell_price = int(jangoDic[code]['장부가'] / 10) * 10 @@ -1089,13 +1089,13 @@ class HTS: last_number = int(jangoDic[code]['장부가']) % 10 if last_number in [0, 1, 2]: # 장부가의 마지막 자리수가 0,1,2 라면 (2090, 2091, 2092 -> 2095 에 매도) - orderNum = self.requestOrder("1", stock_code, jangoDic[code]['매도가능'], sell_price + 5) + self.requestOrder("1", stock_code, jangoDic[code]['매도가능'], sell_price + 5) elif last_number in [3, 4, 5, 6]: # 장부가의 마지막 자리수가 3,4,5,6 라면 (2093, 2094, 2095, 2096 -> 2100 에 매도) - orderNum = self.requestOrder("1", stock_code, jangoDic[code]['매도가능'], sell_price + 10) + self.requestOrder("1", stock_code, jangoDic[code]['매도가능'], sell_price + 10) else: # 장부가의 마지막 자리수가 7,8,9 라면 (2097, 2098, 2099 -> 2105 에 매도) - orderNum = self.requestOrder("1", stock_code, jangoDic[code]['매도가능'], sell_price + 15) + self.requestOrder("1", stock_code, jangoDic[code]['매도가능'], sell_price + 15) break time.sleep(0.9)