explaingit

markusmeyer1/whuffobot

0PythonAudience · developerComplexity · 4/5ActiveLicenseSetup · moderate

TLDR

Python trading bot for Hyperliquid perpetual futures. Runs a 4-hour trend strategy plus a 5-minute scalp, with fixed 2% stop and 4% target.

Mindmap

mindmap
  root((WhuffoBot))
    Inputs
      Hyperliquid API key
      Binance public OHLCV
      Funding and OI feeds
    Outputs
      Perpetual futures trades
      Telegram alerts
      Win rate stats
    Use Cases
      Run automated perp trading
      Backtest trend and scalp signals
      Paper trade strategies
    Tech Stack
      Python
      Hyperliquid
      Binance API
      Telegram

Things people build with this

USE CASE 1

Run an automated perpetual futures bot on Hyperliquid in paper mode

USE CASE 2

Backtest the 4-hour trend and 5-minute scalp signals against historical data

USE CASE 3

Plug in Telegram alerts for entries, exits, and drawdown stops

USE CASE 4

Tweak the amplifier and veto logic to fit a different risk profile

Tech stack

PythonHyperliquidBinanceTelegram

Getting it running

Difficulty · moderate Time to first run · 1h+

Needs Python 3.10+, a Hyperliquid API wallet, and you should start in PAPER mode before going LIVE because real money is at risk.

MIT license, you can use, modify, and ship it commercially as long as you keep the copyright notice. Not financial advice.

In plain English

WhuffoBot is an automated trading bot for the Hyperliquid decentralized exchange, written in Python. It opens perpetual futures positions on its own. Every 15 minutes it scans all available pairs on Hyperliquid, scores them, and acts on whichever one produces the strongest signal at the moment. The README also lists two backtests: a 2024 bull-run window that returned 84.6%, and a 90-day sideways or bear period that returned 13.6%. The bot runs two strategies at the same time. The primary one is a 4-hour trend strategy. It opens a long when a fast EMA crosses above a slow EMA, RSI is at least 50, and ADX is at least 25, and the mirror conditions for a short. The secondary one is a 5-minute scalp strategy that fires only on a tight combination of a Bollinger Band squeeze breakout, a volume spike, an extreme RSI reading, and price deviation from VWAP. On top of these, amplifiers (rising open interest, Bitcoin moving the same way, favorable funding, a nearby liquidation cascade, or the top five Hyperliquid whales positioned the same way) each bump the position multiplier by one step, with the multiplier ranging from 2x to 7x for trend trades and 5x to 10x for scalps. Veto conditions, such as adverse funding or a sharp Bitcoin move against the trade, cancel the signal outright. Risk management is fixed. Stop loss sits at 2%, take profit at 4%. When the first target hits, half the position closes, the stop moves to breakeven, and a trailing stop carries the rest. Scalps are force-closed after 60 minutes. A reverse EMA cross closes the rest of the trade. If account drawdown reaches 25%, the bot stops opening new positions. A regime detector watches Bitcoin's EMA200 and ADX to adjust position sizing and block shorts in bull runs, and a learner system tracks win rate per signal type and drops signals that have done poorly. Setup needs Python 3.10 or newer. You copy config.example.py to config.py, fill in a Hyperliquid API wallet key and your main address, and run python main.py. The README strongly suggests starting in PAPER mode before going LIVE. Public Binance endpoints supply OHLCV, open interest, and funding data, with no Binance account needed. Telegram alerts are optional, and launchd or systemd snippets cover auto-start. License is MIT, with a disclaimer that this is not financial advice and trading carries real risk.

Copy-paste prompts

Prompt 1
Walk me through how WhuffoBot picks one signal across all Hyperliquid pairs every 15 minutes
Prompt 2
Show me where the EMA, RSI, ADX, and Bollinger logic lives so I can swap indicators
Prompt 3
Help me run WhuffoBot in PAPER mode and verify it never sends a live order
Prompt 4
Explain how the amplifier multipliers and veto conditions combine to set position size
Open on GitHub → Explain another repo

Generated 2026-05-22 · Model: sonnet-4-6 · Verify against the repo before relying on details.