This commit is contained in:
dsyoon
2025-08-07 02:31:19 +09:00
parent 55db3e6302
commit 869a010a80

View File

@@ -74,14 +74,14 @@ def send_coin_telegram_message(message_list, header):
return
def buy_ticker(symbole, data):
def buy_ticker(symbol, data):
try:
# 매수 금지 시간 확인 (20분)
current_time = datetime.now()
if symbole in buy_cooldown:
time_diff = current_time - buy_cooldown[symbole]
if symbol in buy_cooldown:
time_diff = current_time - buy_cooldown[symbol]
if time_diff.total_seconds() < 1200: # 20분 = 1200초
print(f"{symbole}: 매수 금지 중 (남은 시간: {1200 - time_diff.total_seconds():.0f}초)")
print(f"{symbol}: 매수 금지 중 (남은 시간: {1200 - time_diff.total_seconds():.0f}초)")
return False
BUY_AMOUNT = 6000
@@ -93,16 +93,23 @@ def buy_ticker(symbole, data):
elif data['buy_signal'].iloc[-1] == 'deviation240':
BUY_AMOUNT = 6000
_ = hts.buyCoinMarket(symbole, BUY_AMOUNT)
_ = hts.buyCoinMarket(symbol, BUY_AMOUNT)
# 매수 성공 시 금지 시간 설정 및 파일에 저장
buy_cooldown[symbole] = current_time
buy_cooldown[symbol] = current_time
save_buy_cooldown(buy_cooldown)
print(f"{symbole}: 매수 완료, 20분간 매수 금지 시작")
print(f"{KR_COINS[symbol]} ({symbol}): {data['Close'].iloc[-1]:.2f}: 매수 완료, 20분간 매수 금지 시작")
try:
pool = Pool(12)
pool.map(send_coin_msg, ["[KRW-COIN]" + "\n" + format_message('COIN', symbol, KR_COINS[symbol], data['Close'].iloc[-1], data['buy_signal'].iloc[-1])])
except Exception as e:
print(f"Error sending Telegram message: {str(e)}")
return True
except Exception as e:
print(f"Error buying {symbole}: {str(e)}")
print(f"Error buying {symbol}: {str(e)}")
return False
return
@@ -497,12 +504,6 @@ def monitor_coins():
recent_data = check_buy_point(data) # Changed to check_buy_point
if recent_data['buy_point'].iloc[-1] != 1:
continue
print(f" - {KR_COINS[symbol]} ({symbol}): {recent_data['Close'].iloc[-1]:.2f}")
try:
pool = Pool(12)
pool.map(send_coin_msg, ["[KRW-COIN]" + "\n" + format_message('COIN', symbol, KR_COINS[symbol], recent_data['Close'].iloc[-1], recent_data['buy_signal'].iloc[-1])])
except Exception as e:
print(f"Error sending Telegram message: {str(e)}")
# buy
buy_success = buy_ticker(symbol, recent_data)
@@ -541,4 +542,5 @@ def run_schedule():
if __name__ == "__main__":
run_schedule()
#run_schedule()
monitor_coins()