This commit is contained in:
dsyoon
2024-11-17 16:43:47 +09:00
parent 189301da91
commit fd5e705862

View File

@@ -726,32 +726,19 @@ class Common:
return False
def buy_stock_ichimok(self, stock_daily):
# 어제의 저가는 선행 1과 2 사이에 있었는데, 오늘은 선행 1과 2 위로 올라왔다.
check_buy = False
if stock_daily['close'][0] < stock_daily['open'][0]:
return check_buy
for c in range(0, 4):
if stock_daily['ichimokucloud_leadingSpan1'][c] is None or stock_daily['ichimokucloud_leadingSpan2'][c] is None:
return check_buy
# 체크 1
if (stock_daily['ichimokucloud_leadingSpan1'][1] < stock_daily['close'][1] <= stock_daily['ichimokucloud_leadingSpan2'][1] and
stock_daily['ichimokucloud_leadingSpan1'][0] < stock_daily['ichimokucloud_leadingSpan2'][0] < stock_daily['close'][0]):
check_buy = True
# 체크 2
for c in range(0, 3):
if (
# 선행1 (상승) < 종가 혹은 시가 < 선행2 (하락) 였는데, 오늘은 선행1 (상승) < 선행2 (하락) < 종가 혹은 시가
(stock_daily['close'][(c+1)] <= max(stock_daily['ichimokucloud_leadingSpan1'][(c+1)], stock_daily['ichimokucloud_leadingSpan2'][(c+1)])) and
(max(stock_daily['ichimokucloud_leadingSpan1'][c], stock_daily['ichimokucloud_leadingSpan2'][c]) < stock_daily['close'][(c)])
):
### 주가가 구름대를 상향 돌파함
# 오늘: max(선행 1,2) < 시가 < 종가, 어제 종가 < 오늘 종가
if (max(stock_daily['leadingSpan1'].iloc[0], stock_daily['leadingSpan2'].iloc[0]) < stock_daily['open'].iloc[0] < stock_daily['close'].iloc[0]) and (stock_daily['close'].iloc[1] < stock_daily['close'].iloc[0]):
# 어제: 시가 < 종가 <= max(스팬1,2) 이거나
# 어제: 시가 < max(스팬1,2) < 종가 이거나
# 어제: 시가 < 종가 < max(스팬1,2) 임
if ((stock_daily['open'].iloc[1] < stock_daily['close'].iloc[1] <= max(stock_daily['leadingSpan1'].iloc[1], stock_daily['leadingSpan2'].iloc[1])) or
(stock_daily['open'].iloc[1] < max(stock_daily['leadingSpan1'].iloc[1], stock_daily['leadingSpan2'].iloc[1]) < stock_daily['close'].iloc[1]) or
(stock_daily['open'].iloc[1] < stock_daily['close'].iloc[1]) < max(stock_daily['leadingSpan1'].iloc[1], stock_daily['leadingSpan2'].iloc[1])):
check_buy = True
break
if stock_daily['close'][(c)] < stock_daily['ichimokucloud_leadingSpan1'][c]:
check_buy = False
break
return check_buy