From 869a010a805db92d2f2ed862fc1b081ea05a14eb Mon Sep 17 00:00:00 2001 From: dsyoon Date: Thu, 7 Aug 2025 02:31:19 +0900 Subject: [PATCH] init --- stock_monitor.py | 32 +++++++++++++++++--------------- 1 file changed, 17 insertions(+), 15 deletions(-) diff --git a/stock_monitor.py b/stock_monitor.py index 2726fad..baf0153 100644 --- a/stock_monitor.py +++ b/stock_monitor.py @@ -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() \ No newline at end of file