Skip to content

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

1 Commit
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

🔵 POLYETH 15 — Polymarket ETH 15-minute binary options bot

POLYETH 15 trades Polymarket's Ethereum "Up or Down" 15-minute binary markets — every quarter hour, a fresh market pays $1.00 per share if ETH ends the period higher (Up) or lower (Down), and $0.00 for the losing side. The bot polls the order book every second, enters on momentum-confirmed value, and manages the position through a 7-priority exit chain until resolution. It ships with a neon-blue C# WinForms dashboard showing live P/L, positions, and trade history.

ETH is the primary asset here: ETH market discovery is mandatory (the bot refuses to run without it) and the canonical 15-minute period clock is derived from the ETH market's slug timestamp. BTC/SOL/XRP markets are monitored only.

Part of a four-bot family — same engine, different primary asset: polybit-15 (BTC) · polysol-15 (SOL) · polybit-15-pro (XRP). All four are independent processes and can run side-by-side.

🔑 Bring your own Polymarket API — nothing is bundled

The repo ships no credentials. Copy the template and plug in your own:

cp config.example.json config.json     # config.json is gitignored — it never leaves your machine
Field What it is Where to get it
private_key Your Polygon wallet's private key (hex) The wallet you use with Polymarket
api_key / api_secret / api_passphrase Polymarket CLOB L2 API credentials Derived from your wallet — Polymarket API settings or py-clob-client's create_or_derive_api_creds()

Fund the wallet with USDC on Polygon before going live. Treat config.json like a wallet seed.

Strategy

Entry — momentum-gated dip buying on ETH

  • Waits a few minutes into each period, then buys the ETH Up token when its ask sits in the configured value zone (default ≤ $0.55).
  • A rolling linear regression on the ETH Up ask supplies a direction signal; when R² clears the confidence threshold the bot may pay up to momentum_max_buy_price (default $0.60).
  • No entries in the final seconds; spread and depth guards filter bad books.

Exit — 7-priority chain, checked every tick

1. TIME HOLD     mid ≥ 85¢, < 5 min left        → ride to $1.00 resolution
2. PROFIT LOCK   tiered partial sells (85¢/90¢) → bank 25% per tier, let rest run
3. TIME CUT      mid < 50¢ with > 10 min left   → cut a loser early
4. LATE CUT      mid < 45¢ with > 5 min left    → cut before decay
5. FINAL EXIT    mid < 45¢ in the last 5 min    → salvage vs $0 resolution
6. STOP LOSS     hard floor                     → sell all
7. RESOLVED      period ends                    → $1.00 or $0.00

All thresholds live in config.example.json — tune without recompiling.

Simulation first, live when ready

Defaults to simulation: every would-be trade is tracked in local JSON files against real market prices, no orders placed. When your simulated P/L satisfies you:

polyeth-15-bot.exe --no-simulation      # real orders, real money

Architecture

src/main.rs       entry point, market discovery (ETH mandatory, others soft-fail)
src/monitor.rs    1-second polling loop; ETH slug timestamp = canonical period clock
src/detector.rs   price detection + linear-regression momentum on ETH Up ask
src/trader.rs     buy execution, the 7-priority exit chain, resolution handling
src/simulation.rs simulated fills, P/L accounting, trade records
src/api.rs        Polymarket CLOB + Gamma API client (EIP-712 order signing)
src/config.rs     config loading, CLI flags (--simulation / --no-simulation)
src/bin/          research binaries: backtester, limit-order experiments, test tools
dashboard/        C# WinForms dashboard (.NET 8), neon-blue Ethereum theme
docs/             architecture deep-dive + strategy design notes

Dashboard: live stat cards (P/L, win rate, open positions), trade grids fed by a file watcher on the bot's output, process detection with START/STOP (launches the bot hidden, no terminal window), and optional trade sounds (drop .wav files into sounds/ beside the exe — silent if absent).

Build & run

cargo build --release                                                # bot → target/release/polyeth-15-bot.exe
cd dashboard && dotnet build BtcDashboard/BtcDashboard.csproj -c Release   # dashboard (Windows)

Run the bot from the repo root (reads config.json, writes runtime files there).

⚠️ Disclaimer

Real-money trading software. It can and will lose money; 15-minute binaries are fast and unforgiving. Not financial advice. Simulation results don't guarantee live results. Check Polymarket's legality in your jurisdiction. Use at your own risk.

About

Polymarket ETH 15-minute binary options trading bot (Rust) + WinForms dashboard. Momentum entry, 7-priority exit chain, simulation mode. Bring your own Polymarket API.

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages