This commit is contained in:
dosangyoon
2022-07-30 16:08:37 +09:00
parent d230a51652
commit cddcdf4f35
6 changed files with 321 additions and 165 deletions

View File

@@ -10,6 +10,7 @@ class BuySellChecker:
common = None
stochastic = None
rsi = None
macd = None
ichimokuCloud = None
def __init__(self):
@@ -752,7 +753,7 @@ class BuySellChecker:
def analyze(self, result):
def analyzeByRule(self, result):
open = result["open"]
close = result["close"]
high = result["high"]
@@ -835,24 +836,44 @@ class BuySellChecker:
return data
def checkTransaction(self, data, stock_code):
size = len(data["close"])
def checkTransaction(self, data, stock_code, type=True):
# 4일치 중에서 앞에 2일은 제거한다.
date = data['date'].dt.date.unique().tolist()
data = data[data['date'].dt.date != date[0]]
data = data[data['date'].dt.date != date[1]]
# 어제 오늘 데이터로 분석
bsLine = {}
bsLine['buy'] = [-1 for i in range(size)]
bsLine['weight'] = [-1 for i in range(size)]
bsLine['sell'] = [-1 for i in range(size)]
size = len(data["close"])
if type:
last_index = size - 1
for i in range(size):
if stock_code == "252670":
sell, weight = self.getSellPriceAndWeight_3000(data, i)
buy, weight = self.getBuyPriceAndWeight_3000(data, i)
sell, weight = self.getSellPriceAndWeight_3000(data, last_index)
buy, weight = self.getBuyPriceAndWeight_3000(data, last_index)
else:
sell, weight = self.getSellPriceAndWeight_15000(data, i)
buy, weight = self.getBuyPriceAndWeight_15000(data, i)
sell, weight = self.getSellPriceAndWeight_15000(data, last_index)
buy, weight = self.getBuyPriceAndWeight_15000(data, last_index)
bsLine['buy'][i] = buy
bsLine['weight'][i] = weight
bsLine['sell'][i] = sell
bsLine['buy'] = buy
bsLine['buy_weight'] = weight
bsLine['sell'] = sell
bsLine['sell_weight'] = weight
else:
bsLine['buy'] = [-1 for i in range(size)]
bsLine['weight'] = [-1 for i in range(size)]
bsLine['sell'] = [-1 for i in range(size)]
return bsLine
for i in range(size):
if stock_code == "252670":
sell, weight = self.getSellPriceAndWeight_3000(data, i)
buy, weight = self.getBuyPriceAndWeight_3000(data, i)
else:
sell, weight = self.getSellPriceAndWeight_15000(data, i)
buy, weight = self.getBuyPriceAndWeight_15000(data, i)
bsLine['buy'][i] = buy
bsLine['weight'][i] = weight
bsLine['sell'][i] = sell
return bsLine, data