본문 바로가기
잡스런 기쁨

CryptoSpikeBot 설치 및 사용법 가이드

by Maven S 2025. 9. 27.
반응형

vBot.py
0.05MB

CryptoSpikeBot은 바이낸스 선물 시장에서 거래량 급등 및 가격 변동을 실시간으로 감지하여 텔레그램을 통해 사용자에게 알림을 전송하는 파이썬 기반의 봇입니다. 이 봇은 바이낸스 웹소켓 API를 활용하여 5분봉 데이터를 실시간으로 분석하고, 사용자가 설정한 조건에 따라 거래량 또는 가격 변동이 특정 임계값을 초과할 때 알림을 제공합니다. 또한, 특정 텔레그램 채널의 멤버십을 기반으로 사용자 접근을 제한하며, 관리자 전용 명령어를 통해 사용자 관리를 지원합니다.

주요 기능:

  • 실시간 거래량 알림: 직전 2개 5분봉의 평균 거래량 대비 설정된 배율 이상의 거래량 급등을 감지.
  • 실시간 가격 알림: 이전 5분봉 종가를 기준으로 설정된 퍼센트 이상의 가격 변동을 감지.
  • 텔레그램 채널 멤버십 관리: 특정 채널 가입 여부에 따라 사용자 접근을 제어.
  • 관리자 기능: 승인된 사용자 목록 조회 및 관리.
  • 사용자 설정 관리: JSON 파일을 통해 사용자별 알림 설정을 저장 및 관리.

이 블로그에서는 CryptoSpikeBot의 설치 방법과 사용 방법을 자세히 안내합니다.


설치법

CryptoSpikeBot을 실행하려면 파이썬 환경과 필요한 의존성을 설치해야 합니다. 아래는 단계별 설치 가이드입니다.

1. 필수 요구사항

  • Python: 3.8 이상
  • 텔레그램 봇 토큰: BotFather를 통해 생성된 텔레그램 봇 토큰
  • 바이낸스 선물 API: 바이낸스 웹소켓 API를 사용하므로 별도의 API 키는 필요하지 않음
  • 운영 체제: Windows, macOS, Linux 지원

2. 의존성 설치

필요한 파이썬 패키지를 설치하기 위해 다음 명령어를 실행합니다:

pip install python-telegram-bot python-dotenv websocket-client httpx
  • python-telegram-bot: 텔레그램 API와 상호작용.
  • python-dotenv: 환경 변수 관리.
  • websocket-client: 바이낸스 웹소켓 연결.
  • httpx: 비동기 HTTP 요청.

3. 환경 변수 설정

  1. 프로젝트 디렉토리에 .env 파일을 생성합니다.
  2. 아래와 같이 필요한 환경 변수를 입력합니다:
TELEGRAM_BOT_TOKEN=your_bot_token_here
TELEGRAM_ADMIN_ID=your_admin_telegram_id
TELEGRAM_CHANNEL_USERNAME=@YourChannelUsername
  • TELEGRAM_BOT_TOKEN: 텔레그램 BotFather에서 발급받은 봇 토큰.
  • TELEGRAM_ADMIN_ID: 봇 관리자의 텔레그램 사용자 ID.
  • TELEGRAM_CHANNEL_USERNAME: 사용자 접근을 제한할 텔레그램 채널의 사용자 이름 (예: @MyChannel). 선택 사항이며, 설정하지 않으면 모든 사용자가 접근 가능.

4. 소스 코드 저장

  1. 제공된 소스 코드를 vBot.py 파일로 저장합니다.
  2. 동일한 디렉토리에 user_settings.json 파일이 자동 생성되므로, 별도로 생성할 필요는 없습니다.

5. 봇 실행

다음 명령어로 봇을 실행합니다:

python vBot.py

실행 후, 봇은 텔레그램 폴링을 시작하고 바이낸스 웹소켓에 연결하여 데이터를 수집합니다. 로그를 통해 연결 상태와 오류를 확인할 수 있습니다.


사용법

CryptoSpikeBot은 텔레그램을 통해 사용자와 상호작용하며, 사용자는 명령어를 통해 알림 설정을 관리할 수 있습니다. 아래는 주요 명령어와 사용 방법입니다.

1. 시작하기

  1. 텔레그램에서 봇을 추가하고 /start 명령어를 입력합니다.
  2. 봇이 설정된 채널의 멤버십을 확인합니다. 채널에 가입하지 않은 경우, 가입 링크가 포함된 안내 메시지를 받습니다.
  3. 채널 멤버인 경우, 기본 설정(BTCUSDT 및 ETHUSDT에 대한 거래량/가격 알림)이 자동 적용되며, 현재 설정과 사용 가능한 명령어가 안내됩니다.

2. 주요 명령어

/start

  • 설명: 봇을 초기화하고 현재 알림 설정을 확인합니다.
  • 예시 응답:
    🤖 *Crypto Spike Alert Bot* 🤖
    바이낸스 선물 급등락을 실시간 알람 봇
    
    🛰️ *현재 구독 설정*
    ─
     *거래량 알림:*
      - *BTCUSDT*: 3.6배 (15분)
      - *ETHUSDT*: 2.5배 (10분)
    ─
     *가격 알림:*
      - *BTCUSDT*: 0.35% (15분)
      - *ETHUSDT*: 0.45% (10분)
    
    *🔥 거래량 알림 설정* - 직전 2틱 평균 대비
    `/volume [종목] [배율(x)] [쿨타임(분)]`
    입력: `/volume BTCUSDT 4.5 15`
    삭제: `/volume BTCUSDT 0`
    
    *⚡️ 가격 변동 알림 설정* - 직전 5분봉 종가 대비
    `/price [종목] [등락값(%)] [쿨타임(분)]`
    입력: `/price ETHUSDT 0.36 10`
    삭제: `/price ETHUSDT 0`
    

/volume [종목] [배율] [쿨타임(분)]

  • 설명: 특정 종목의 거래량 급등 알림을 설정하거나 삭제합니다.
  • 매개변수:
    • 종목: 바이낸스 선물 시장의 심볼 (예: BTCUSDT).
    • 배율: 평균 거래량 대비 급등 배율 (최소 1.1배).
    • 쿨타임: 알림 후 재알림 대기 시간 (최소 5분). 생략 시 기존 설정 또는 기본값(15분) 사용.
    • 삭제하려면 배율을 0으로 설정.
  • 예시:
    • 설정: /volume BTCUSDT 4.5 15
      • 응답: 🛫 *BTCUSDT*가 4.5x 배율, 쿨다운 15분으로 설정되었습니다.
    • 삭제: /volume BTCUSDT 0
      • 응답: 🛬 *BTCUSDT* 거래량 알림이 삭제되었습니다.

/price [종목] [임계값(%)] [쿨타임(분)]

  • 설명: 특정 종목의 가격 변동 알림을 설정하거나 삭제합니다.
  • 매개변수:
    • 종목: 바이낸스 선물 시장의 심볼.
    • 임계값: 이전 5분봉 종가 대비 가격 변동 퍼센트 (최소 0.1%).
    • 쿨타임: 알림 후 재알림 대기 시간 (최소 5분). 생략 시 기존 설정 또는 기본값(15분) 사용.
    • 삭제하려면 임계값을 0으로 설정.
  • 예시:
    • 설정: /price ETHUSDT 0.3 10
      • 응답: 🛫 *ETHUSDT* 가격 알림이 0.3% 임계값, 쿨다운 10분으로 설정되었습니다.
    • 삭제: /price ETHUSDT 0
      • 응답: 🛬 *ETHUSDT* 가격 알림이 삭제되었습니다.

/users (관리자 전용)

  • 설명: 승인된 사용자 목록을 확인합니다.
  • 예시 응답:
    🐳 *모든 사용자 목록*
     (최대 사용자 수: *10*, 현재: *2*명)
    
    😄 *승인된 사용자 (채널 멤버)*:
    • `123456789`: John Doe (@JohnDoe)
    • `987654321`: Jane Smith (@JaneSmith)
    

3. 알림 예시

  • 거래량 알림:
    🔥 *BTCUSDT 거래량 급등!* 🔥
    현재 5분 거래량: 12,345K
    평균 거래량 (2개 봉): 3,456K
    감지된 급등: 3.57배
    가격 변동: 45,678.90 (+1.23%)
    알림 쿨타임: 15분
    
  • 가격 알림:
    🥑 *ETHUSDT 가격 변동!* 🥑
    현재 가격: 2,345.67
    가격 변동: 2,345.67 (+0.45%)
    기준 가격 (이전 5분봉 종가): 2,335.12
    알림 쿨타임: 10분
    

4. 주의사항

  • 채널 멤버십: 설정된 채널에서 탈퇴하면 사용자 설정이 자동 삭제되며, 재가입 후 /start로 다시 설정해야 합니다.
  • 종목 유효성: 바이낸스 선물 시장에 존재하지 않는 종목은 설정할 수 없습니다.
  • 쿨타임: 알림은 설정된 쿨타임 동안 중복 전송되지 않습니다.
  • 최대 사용자: 파일 설정에는 10명까지 지원되며 수정가능합니다. (현재 MAX_USERS = 10) 관리자는 이 제한을 초과할 수 있습니다.

결론

CryptoSpikeBot은 바이낸스 선물 시장의 급등락을 실시간으로 모니터링하고 텔레그램을 통해 알림을 제공하는 강력한 도구입니다. 간단한 설치와 직관적인 명령어를 통해 누구나 쉽게 사용할 수 있으며, 채널 멤버십 관리로 사용자 접근을 효과적으로 제어할 수 있습니다. 이 봇을 활용하여 시장의 중요한 변동을 놓치지 마세요!

샘플 봇 https://t.me/CryptoSpikeAlert_Bot

반응형