Skip to content

Latest commit

 

History

2 Commits

Folders and files

NameName
Last commit message
Last commit date
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Pons Volume Bot

Inventory-aware volume and liquidity bot for pons tokens on Robinhood Chain (4663).

The bot monitors Uniswap V3 pools, derives a fair price, publishes bid/ask quotes, and executes bounded swaps through the official pons router. Trades, inventory, gas, and PnL are persisted in SQLite.

Repository: github.com/SoladLabs/pons-volume-bot

For education, testing, research, and authorized liquidity provision only. This is not financial advice. Newly launched tokens are volatile and illiquid. Never commit private keys or fund a wallet you cannot afford to lose.

Features

  • Launch detection — register a target token or watch pons factories for new launches
  • Pool monitoring — read Uniswap V3 swaps, spot price, and buy/sell volume
  • Fair-price engine — moving-average reference price with a configurable window
  • Inventory-aware quotes — bid/ask spread that widens with volatility and inventory
  • Bounded execution — swaps via the official router with Quoter V2 and slippage limits
  • Risk controls — position caps, trade cooldown, liquidity floor, daily-loss halt
  • Analytics — realized/unrealized PnL, gas spend, and volume in SQLite
  • Safety-first runtime — dry-run by default; live trading requires explicit confirmation
  • Operator dashboard — periodic console snapshot of quotes, inventory, and PnL

Architecture

Robinhood Chain RPC
        |
        v
Launch Detection --> Token Registry
        |
        v
Pool Monitor --> Price Engine --> Quote Engine
        |              |               |
        +--------------+---------------+
                       |
                       v
              Inventory + Risk
                       |
                       v
              Trade Executor (Swap Router)
                       |
                       v
              Reconciliation + SQLite

Official pons contracts (docs):

Contract Address
Active factory 0xA5aAb3F0c6EeadF30Ef1D3Eb997108E976351feB
Swap router 0xCaf681a66D020601342297493863E78C959E5cb2
Quoter V2 0x33e885eD0Ec9bF04EcfB19341582aADCb4c8A9E7
WETH 0x0Bd7D308f8E1639FAb988df18A8011f41EAcAD73

Requirements

  • Python 3.11+
  • Network access to Robinhood Chain RPC
  • For live trading only: a funded wallet (ETH for gas, WETH for buys)

Installation

git clone https://github.com/SoladLabs/pons-volume-bot.git
cd pons-volume-bot
python -m venv .venv

Activate the virtual environment:

# Linux / macOS
source .venv/bin/activate

# Windows PowerShell
.\.venv\Scripts\Activate.ps1

# Windows Command Prompt
.\.venv\Scripts\activate.bat

On Windows, if python is not found, use the launcher instead: py -m venv .venv and py main.py ....

pip install -r requirements.txt
cp .env.example .env

Leave .env in dry-run mode for the first run. A private key is not required until you enable live trading.

Usage

Verify RPC connectivity:

python main.py --connect
Command Purpose
python main.py --reference Dry-run against the official PONS reference token
python main.py --token 0xYourToken Target a specific pons token
python main.py Auto-detect new launches
python main.py --scan-only Discover launches without trade decisions
python main.py --config path/to.yaml Load an alternate config file

Stop the process with Ctrl+C.

In dry-run, intended swaps are logged as [DRY RUN] and no transactions are submitted.

Configuration

Strategy and chain settings live in config/default.yaml. Environment variables in .env override selected fields at runtime.

Strategy

Parameter Default Description
strategy.base_spread 0.025 Base bid/ask spread (2.5%)
strategy.price_window 10 Recent spot samples used for fair price and volatility
strategy.max_inventory_tokens 10000 Maximum token inventory
strategy.max_trade_eth 0.005 Maximum WETH per buy
strategy.trade_cooldown_s 60 Minimum seconds between trades
risk.max_daily_loss_eth 0.1 Halt if realized daily loss reaches this amount
execution.max_slippage 0.02 Maximum acceptable slippage

Environment

Variable Purpose
RH_RPC_URL RPC endpoint
PRIVATE_KEY Trading wallet (live only)
DRY_RUN true / false
CONFIRM_LIVE_TRADING Must be YES to send live transactions
TARGET_TOKEN Token address override
BOT_ENABLED Emergency stop (false halts trading)

Live Trading Safety

Live execution requires all three:

  1. DRY_RUN=false
  2. CONFIRM_LIVE_TRADING=YES
  3. PRIVATE_KEY set in .env

If any condition is missing, the bot logs intended actions only. BOT_ENABLED=false is an immediate kill switch.

Project Structure

├── main.py                 CLI entry point
├── config/default.yaml     Strategy and chain configuration
├── bot/
│   ├── engine.py           Main loop
│   ├── blockchain/         Web3 client
│   ├── pons/               Launch detection and pool monitoring
│   ├── market/             Price, quotes, and liquidity
│   ├── trading/            Executor, risk, inventory, slippage
│   ├── analytics/          PnL and volume
│   └── storage/            SQLite persistence
└── tests/

Testing

pytest tests/ -v

Resources

Contact

Telegram: @vladmeer

About

Robinhood Pons volume bot for Robinhood Chain. This Robinhood Pons volume bot trades Pons tokens on Robinhood, monitors Robinhood Pons pools, and runs a Pons volume bot on Robinhood. Pons volume bot for Robinhood Pons launches. Robinhood volume bot. Pons volume bot. Robinhood Pons volume bot on Robinhood Chain Pons. Live Robinhood Pons volume bots.

Topics

Resources

Stars

3 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages