Before you spin up a miner in Subnet 73 (SN73), ask yourself:
💰 Do I want to sell OTC α-tokens from other subnets?
Mining SN73 only makes sense if you hold surplus α-tokens from other subnets that you wish to liquidate at a discount instead of impacting their on-chain liquidity pools.
✅ If YES → Proceed with this guide!
❌ If NO → Mining SN73 won't add value for you.
Each epoch (~1 hour // 361 blocks x 12s) an on-chain auction distributes 148 SN73 α-tokens to miners, proportional to the total τ-value of α-tokens they supply from other subnets.
- 🪙 You bid with α-tokens from any subnet except 73
- 📊 Your share of the 148 prize tokens is proportional to your τ-value at auction close
- 🏁 The effective discount you get depends entirely on competition; more bidders → smaller discount
💰 payout = (your τ-value / total τ-value) × 148 SN73 α
- 🎯 Decide which subnet's α you want to sell
- 📥 Install the MetaHash tooling and dependencies
- 📝 Register your miner (one-time per
coldkey) - 💰 Fund the same
coldkeywith the α you intend to bid - 🎲 Bid manually or automate with the provided scripts
- Subtensor lite node with
--pruning=2000configured (this is needed for leaderboard or use Archive node (--network archive)) - Python 3.10+ installed
- pip/venv for isolated environment
# 📂 Clone & install
git clone https://github.com/fx-integral/metahash.git && cd metahash
python3 -m venv .venv && source .venv/bin/activate
pip install uv && uv pip install -e .
#Install btcli followng https://docs.learnbittensor.org/getting-started/install-btcli
uv pip install bittensor-cli # Use latest or desired version
# 🔐 One-time miner registration
btcli subnets register \
--netuid 73 \
--wallet.name YOUR_WALLET \
--wallet.hotkey YOUR_HOTKEY| 🛠️ Tool | 📋 Purpose | 💻 Example |
|---|---|---|
| 📊 Leaderboard | Monitor current and historical winners | python scripts/miner/leaderboard.py --meta-netuid 73 --wallet.name YOUR_WALLET --wallet.hotkey YOUR_HOTKEY --network archive |
| 🤖 Auto-Bidder | Automatically watch auctions and place incremental bids while respecting a minimum discount | python scripts/miner/auction_watch.py --netuid SOURCE_SUBNET_ID --source-hotkey SOURCE_HOTKEY_ADDRESS --wallet.name YOUR_WALLET --wallet.hotkey YOUR_HOTKEY --max-alpha 100 --step-alpha 5 --max-discount 8 |
- Leaderboard:
python scripts/miner/leaderboard.py --meta-netuid 73 --wallet.name YOUR_WALLET --wallet.hotkey YOUR_HOTKEY --network archive- Automatic Bidder
python scripts/miner/auction_watch.py --netuid SOURCE_SUBNET_ID --source-hotkey SOURCE_HOTKEY_ADDRESS --wallet.name YOUR_WALLET --wallet.hotkey YOUR_HOTKEY --max-alpha 100 --step-alpha 5 --max-discount 8NOTE: "WALLET_PASSWORD" is an environment variable that can be used to automate wallet operations. ▶️ Starts bidding when a new auction opens- 📈 Increases bids in step-alpha increments until reaching max-alpha or max-discount
- 🛑 Stops automatically when the discount becomes unattractive
- ⏰ Frequency: Every 361 blocks (~1 hour)
- 🏆 Prize Pool: 148 SN73 α-tokens
- ✅ Eligibility: Any miner registered on SN73
- ⚖️ Weighting: Payouts proportional to each miner's τ-contribution
| 📈 Metric | 💰 Value |
|---|---|
| Total τ-value | 100 α |
| Your bid | 20 α |
| Your share | 20% × 148 = 29.6 SN73 α |
| ✅ Allowed | ❌ Forbidden |
|---|---|
| 🪙 α-tokens from any subnet except 73 | 🚫 Sending SN73 α back into the auction |
| 🔄 Multiple concurrent auctions | 🚫 More than one registration per coldkey |
| 🤖 Automation and custom scripts | — |
🎯 Goal: Maximise the τ-value you send while paying the lowest discount.
- 🚀 Bid early to lock higher discounts
- 🤖 Automate to stay ahead of manual competitors
- 🎯 Define a minimum acceptable discount and step-alpha to avoid over-bidding
- 👀 Monitor the leaderboard before each auction to gauge competition
- 💡 Only bid surplus α to avoid harming your main subnet
- 🛑 Abort when an auction becomes over-subscribed—late bids can dilute everyone's discount
- 📊 Track your ROI across multiple epochs; refine parameters gradually
- 🐣 Start small; scale after several successful runs
| 🎯 Scenario | 🔍 Indicators | 📈 Outcome |
|---|---|---|
| 🟢 Low Competition | 👥 Few miners, thin τ-value | 💰 Deep discount, high returns |
| 🟡 Moderate Competition | 👥👥 Several miners, rising τ-value | 📊 Reduced but still positive discount |
| 🔴 Over-Subscribed | 👥👥👥 Many miners join late | 💸 Discount collapses; you may earn nothing |
- 🪙 Acquire α-tokens on other subnets
- 👛 Prepare a wallet (wallet.name) and hotkey (wallet.hotkey)
- 📝 Register on SN73 once
- 👀 Observe several auctions via the leaderboard
- ⚙️ Configure and dry-run the auto-bidder
- 📈 Scale up bids as confidence grows
- 🐍 Python ≥ 3.10
- 👛 btcli wallet set up
- 🪙 α-tokens from subnets other than 73
- 🧠 Basic understanding of Dutch/weighted auctions
- 📁 GitHub: https://github.com/fx-integral/metahash/
- 📚 Bittensor Docs: https://docs.bittensor.com/
- 🔐 Coldkey and Hotkey Workstation Security: https://docs.learnbittensor.org/getting-started/coldkey-hotkey-security/