연결 중…
연결 중…
전체 보기
특이점이 온다
Telegram · @kkda8282

import python_bithumb

게시
2025.11.11 09:07
조회
83
포워드
6

import getpass # 시크릿 키를 안전하게 입력받기 위함
import sys
import pprint # 결과를 예쁘게 출력하기 위함

def main():
# 1. API 키 및 시크릿 키 입력받기
try:
access_key = input("Bithumb Access Key를 입력하세요: ")
secret_key = getpass.getpass("Bithumb Secret Key를 입력하세요 (입력 시 보이지 않습니다): ")
except KeyboardInterrupt:
print("\n입력이 중단되었습니다. 프로그램을 종료합니다.")
sys.exit()

if not access_key or not secret_key:
print("API 키가 입력되지 않았습니다. 프로그램을 종료합니다.")
sys.exit()

# 2. Bithumb 객체 생성
try:
bithumb = python_bithumb.Bithumb(access_key, secret_key)
except Exception as e:
print(f"Bithumb 객체 생성 중 오류 발생: {e}")
sys.exit()

market = "KRW-BTC"
pp = pprint.PrettyPrinter(indent=4)

# 3. 주문 가능 정보 조회 (최소 주문 금액 확인)
print(f"\n{market} 마켓의 주문 가능 정보를 조회합니다...")
try:
chance_info = bithumb.get_order_chance(market)
# pp.pprint(chance_info) # 전체 응답 확인용

# 시장가 매수(bid)의 최소 주문 금액(min_total) 추출
min_total_krw = float(chance_info['market']['bid']['min_total'])
print(f"✅ {market} 시장가 매수 최소 주문 금액: {min_total_krw:,.0f} KRW")

except Exception as e:
print(f"❌ 주문 가능 정보 조회 실패: {e}")
print("API 키가 유효한지, '거래' 권한이 있는지 확인하세요.")
sys.exit()

# 4. 사용자에게 매수 확인
print("-" * 30)
try:
confirm = input(f"정말로 {min_total_krw:,.0f} KRW 만큼 시장가 매수를 진행하시겠습니까? (y/n): ")
except KeyboardInterrupt:
print("\n주문이 취소되었습니다. 프로그램을 종료합니다.")
sys.exit()

if confirm.lower() != 'y':
print("주문을 취소했습니다. 프로그램을 종료합니다.")
sys.exit()

# 5. 시장가 매수 주문 실행
print(f"\n{min_total_krw} KRW 만큼 시장가 매수를 시도합니다...")
try:
order_info = bithumb.buy_market_order(market, min_total_krw)
print("✅ --- 매수 주문 성공 ---")
pp.pprint(order_info)

except Exception as e:
print(f"❌ 매수 주문 실패: {e}")
print("계좌 잔액(KRW)이 최소 주문 금액보다 많은지 확인하세요.")

if name == "main":
main()

스크립트 전문입니다.
해킹 툴 없으니 안심하고 사용하세요. 😁

조회83포워드6텔레그램에서 보기