Binance Futures OI Alert Script
Budget: ₹1,500 – ₹12,500 INR
I’m building a lightweight Python tool that taps straight into the Binance USDT-M Futures API, grabs real-time and historical Open Interest for BTCUSDT (and any other pair I feed it), then tells me the moment percentage-based OI Change breaks my preset levels on the 1-minute chart.
Core flow
• Pull current and previous OI snapshots on a user-defined schedule (1 m, 5 m, etc.)
• Calculate OI Change % in memory, compare it with configurable upper and lower thresholds, and write both raw values and decisions to disk.
• Fire instant alerts through both Telegram and Email whenever the rule is hit.
Persistence & reporting
Every run should append neatly formatted rows to both CSV and Excel files while keeping a rolling log of issued alerts. I’ll also need a quick bar chart that visualises the latest OI Change readings so trends are obvious at a glance. No heavy dashboards—just a simple matplotlib or Plotly snippet is fine.
Deliverables & acceptance
1. Well-structured Python 3 script(s) with clear function separation and inline comments
2. README that covers environment setup, Binance API key placement, threshold editing, and how to point the alert module at my Telegram bot and SMTP details
3. Sample CSV / XLSX output plus the auto-generated bar chart image
4. Basic unit test or two proving the OI calculation and alert trigger work
If any external libraries beyond the usual suspects (requests, pandas, matplotlib/plotly, python-telegram-bot, smtplib) are required, please note them in requirements.txt. The cleaner and more modular the code the better; I’d like to extend it later for additional metrics.
Core flow
• Pull current and previous OI snapshots on a user-defined schedule (1 m, 5 m, etc.)
• Calculate OI Change % in memory, compare it with configurable upper and lower thresholds, and write both raw values and decisions to disk.
• Fire instant alerts through both Telegram and Email whenever the rule is hit.
Persistence & reporting
Every run should append neatly formatted rows to both CSV and Excel files while keeping a rolling log of issued alerts. I’ll also need a quick bar chart that visualises the latest OI Change readings so trends are obvious at a glance. No heavy dashboards—just a simple matplotlib or Plotly snippet is fine.
Deliverables & acceptance
1. Well-structured Python 3 script(s) with clear function separation and inline comments
2. README that covers environment setup, Binance API key placement, threshold editing, and how to point the alert module at my Telegram bot and SMTP details
3. Sample CSV / XLSX output plus the auto-generated bar chart image
4. Basic unit test or two proving the OI calculation and alert trigger work
If any external libraries beyond the usual suspects (requests, pandas, matplotlib/plotly, python-telegram-bot, smtplib) are required, please note them in requirements.txt. The cleaner and more modular the code the better; I’d like to extend it later for additional metrics.