Skip to content

rizalcodes/nft_floor_tracker

Folders and files

NameName
Last commit message
Last commit date

Latest commit

Β 

History

2 Commits
Β 
Β 
Β 
Β 

Repository files navigation

πŸ–ΌοΈ NFT Floor Price Tracker

Monitor NFT collection floor prices & get real-time Telegram alerts on pumps/dumps β€” powered by OpenSea API v2 + CoinGecko.

Python OpenSea Telegram Ethereum License


πŸ” What is NFT Floor Tracking?

NFT floor tracking monitors the lowest listed price of an NFT collection in real-time β€” helping traders catch early signals of pumps, dumps, and volume spikes before the market reacts.

This bot tracks collections using:

  • 🌊 OpenSea API v2 β€” floor price, volume, sales & collection stats
  • πŸ’° CoinGecko API β€” ETH/USD price conversion
  • πŸ€– Telegram Bot β€” real-time alerts & interactive commands

✨ Features

  • πŸ’Ž Floor Price Tracking β€” real-time floor in ETH & USD
  • πŸ“ˆ Pump/Dump Alerts β€” notify when floor moves >10% or >20%
  • πŸ“Š Volume Spike Alerts β€” notify when 24h volume spikes >50%
  • πŸ›’ Recent Sales β€” latest sales per collection
  • πŸ† Top Collections β€” top NFTs by 24h volume
  • πŸ” Collection Search β€” find collections by name
  • πŸ‘€ Watchlist β€” monitor multiple collections simultaneously
  • πŸ“‘ Auto Monitor β€” background polling every 5 minutes
  • πŸ€– Telegram Bot β€” 9 interactive commands

πŸš€ Quick Start

1. Install dependencies

pip install requests

2. Get OpenSea API Key

  1. Go to opensea.io/developers
  2. Sign up & generate free API key
  3. Free tier: 4 req/sec

3. Set API keys

Open nft_floor_tracker.py and configure:

OPENSEA_API_KEY  = "your_opensea_api_key"
TELEGRAM_TOKEN   = "your_telegram_bot_token"
TELEGRAM_CHAT_ID = "your_chat_id"

4. Run as Telegram Bot

python nft_floor_tracker.py

5. Quick CLI check (one-time)

python nft_floor_tracker.py check pudgypenguins

πŸ€– Telegram Commands

Command Description
/floor <slug> Get current floor price
/add <slug> Add collection to watchlist
/remove <slug> Remove from watchlist
/list Show tracked collections
/sales <slug> Recent sales
/top Top collections by 24h volume
/search <name> Search collection by name
/monitor on/off Toggle auto monitoring
/known Show known collection slugs

πŸ“Š Sample Output

πŸ–ΌοΈ CryptoPunks
━━━━━━━━━━━━━━━━━━━━━━
πŸ’Ž Floor      : 30.4900 ETH (~$61,560.83)
πŸ“Š Vol 24h    : 0.00 ETH
πŸ“… Vol 7d     : 0.00 ETH
πŸ›’ Sales 24h  : 0
πŸ‘₯ Owners     : 3,847 / 0 (0% unique)

⏰ 2026-05-31T07:32:45

🚨 Alert System

Alert Trigger Severity
πŸ“‰ Floor Drop Floor decreases >10% MEDIUM
πŸ“‰ Floor Drop Floor decreases >20% HIGH πŸ”΄
πŸ“ˆ Floor Pump Floor increases >20% MEDIUM
πŸ“ˆ Floor Pump Floor increases >50% HIGH 🟒
πŸ“Š Volume Spike 24h volume increases >50% MEDIUM 🟑

πŸ—οΈ Architecture

nft_floor_tracker.py
β”œβ”€β”€ OpenSeaClient       β†’ OpenSea API v2 integration
β”‚   β”œβ”€β”€ get_collection()      β†’ floor price, volume, stats
β”‚   β”œβ”€β”€ get_recent_sales()    β†’ latest sales events
β”‚   β”œβ”€β”€ get_top_collections() β†’ top by 24h volume
β”‚   β”œβ”€β”€ search_collection()   β†’ find by name/slug
β”‚   └── _get_eth_price()      β†’ ETH/USD via CoinGecko
β”œβ”€β”€ NFTFloorTracker     β†’ Core tracking engine
β”‚   β”œβ”€β”€ add_collection()      β†’ add to watchlist
β”‚   β”œβ”€β”€ remove_collection()   β†’ remove from watchlist
β”‚   β”œβ”€β”€ refresh()             β†’ refresh + detect alerts
β”‚   β”œβ”€β”€ refresh_all()         β†’ scan all watchlist
β”‚   └── get_price_change()    β†’ session change %
└── NFTFloorBot         β†’ Telegram bot with 9 commands
    └── _monitor_loop()       β†’ background polling thread

πŸ“‘ Data Sources

Source Usage
OpenSea API v2 Floor price, volume, sales, collections
CoinGecko API ETH/USD price conversion

πŸ“‹ Known Collection Slugs

Collection Slug
Bored Ape Yacht Club boredapeyachtclub
CryptoPunks cryptopunks
Mutant Ape Yacht Club mutant-ape-yacht-club
Azuki azuki
Pudgy Penguins pudgypenguins
Clone X clonex
Milady Maker milady
DeGods degods

βš™οΈ Configuration

Variable Default Description
FLOOR_DROP_ALERT 10% Minimum drop % to trigger alert
FLOOR_PUMP_ALERT 20% Minimum pump % to trigger alert
VOLUME_SPIKE_ALERT 50% Minimum volume spike % to trigger alert
POLL_INTERVAL 300s How often to check (5 minutes)

⚠️ Disclaimer

This tool is for informational purposes only. NFT markets are highly volatile. Always do your own research.


πŸ”§ Requirements

requests>=2.28.0

No Web3.py required β€” uses REST APIs only!


πŸ‘€ Author

Rizal β€” @rizalcodes

Building Web3 tools with Python πŸβ›“οΈ


πŸ“„ License

MIT License β€” free to use, modify, and distribute.

About

πŸ–ΌοΈ NFT Floor Price Tracker for Ethereum β€” Monitor floor prices, volume & sales alerts from OpenSea API. Get Telegram alerts on pumps/dumps. Built with Python & OpenSea API v2.

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors

Languages