diff --git a/stock/analysis/AnalyzerSqlite.py b/stock/analysis/AnalyzerSqlite.py index c4f0c96..82533c9 100644 --- a/stock/analysis/AnalyzerSqlite.py +++ b/stock/analysis/AnalyzerSqlite.py @@ -543,20 +543,27 @@ class AnalyzerSqlite: location = (max(stock_daily['close'][1:c_index]) - stock_daily['close'][0]) / max(stock_daily['close'][1:c_index]) if location > 0.6: - dir_code = "15" - dir_name = "daily_낙폭과대" - final_status_count += 1 - status = "{:.2f}".format(location) + "_" + status - self.writeFile(dir_code, dir_name, CODE, NAME, top, stock_daily, status) + if stock_daily['close'][1] < stock_daily['avg5'][1] and stock_daily['avg5'][0] < stock_daily['close'][0]: + dir_code = "15" + dir_name = "daily_낙폭과대" + final_status_count += 1 + status = "{:.2f}".format(location) + "_" + status + self.writeFile(dir_code, dir_name, CODE, NAME, top, stock_daily, status) if len(stock_daily['volume']) > 5: if stock_daily['envelope_lower'][0] is not None and stock_daily['envelope_lower'][1] is not None: # BB 하단에 부딪힘 - if stock_daily['close'][1] < stock_daily['envelope_lower'][1] and stock_daily['envelope_lower'][0] < stock_daily['close'][0]: - dir_code = "16" - dir_name = "daily_EV하단_내려옴" - final_status_count += 1 - self.writeFile(dir_code, dir_name, CODE, NAME, top, stock_daily, status) + if stock_daily['close'][1] < stock_daily['avg5'][1] and stock_daily['avg5'][0] < stock_daily['close'][0]: + check = False + for c in range(1, 4): + if stock_daily['close'][c] < stock_daily['envelope_lower'][c]: + check = True + break + if check: + dir_code = "16" + dir_name = "daily_EV하단_내려옴" + final_status_count += 1 + self.writeFile(dir_code, dir_name, CODE, NAME, top, stock_daily, status) if final_status_count >= 5: dir_code = "0"