gavindiaz c264ba4d47 Wire watcher into CONFIG + load env in npm scripts
- npm start / watch:telegram: add --env-file=env so TELEGRAM_* and HTTPS_PROXY from nv reach process.env
- watcher: import CONFIG.candleWindowMinutes from src/config.js so the per-window latch stays in sync with the bot
- watcher: replace prevSide/cooldown latch with lastSentWindowId keyed on floor(ts/WINDOW_MS); one alert per window, NO_TRADE rows no longer reset state
2026-07-22 07:29:42 +08:00
2026-01-30 00:25:30 +02:00

Polymarket BTC 15m Assistant

A real-time console trading assistant for Polymarket "Bitcoin Up or Down" 15-minute markets.

It combines:

  • Polymarket market selection + UP/DOWN prices + liquidity
  • Polymarket live WS Chainlink BTC/USD CURRENT PRICE (same feed shown on the Polymarket UI)
  • Fallback to on-chain Chainlink (Polygon) via HTTP/WSS RPC
  • Binance spot price for reference
  • Short-term TA snapshot (Heiken Ashi, RSI, MACD, VWAP, Delta 1/3m)
  • A simple live Predict (LONG/SHORT %) derived from the assistants current TA scoring

Requirements

Run from terminal (step-by-step)

1) Clone the repository

git clone https://github.com/FrondEnt/PolymarketBTC15mAssistant.git

Alternative (no git):

  • Click the green <> Code button on GitHub
  • Choose Download ZIP
  • Extract the ZIP
  • Open a terminal in the extracted project folder

Then open a terminal in the project folder.

2) Install dependencies

npm install

3) (Optional) Set environment variables

You can run without extra config (defaults are included), but for more stable Chainlink fallback its recommended to set at least one Polygon RPC.

Windows PowerShell (current terminal session)

$env:POLYGON_RPC_URL = "https://polygon-rpc.com"
$env:POLYGON_RPC_URLS = "https://polygon-rpc.com,https://rpc.ankr.com/polygon"
$env:POLYGON_WSS_URLS = "wss://polygon-bor-rpc.publicnode.com"

Optional Polymarket settings:

$env:POLYMARKET_AUTO_SELECT_LATEST = "true"
# $env:POLYMARKET_SLUG = "btc-updown-15m-..."   # pin a specific market

Windows CMD (current terminal session)

set POLYGON_RPC_URL=https://polygon-rpc.com
set POLYGON_RPC_URLS=https://polygon-rpc.com,https://rpc.ankr.com/polygon
set POLYGON_WSS_URLS=wss://polygon-bor-rpc.publicnode.com

Optional Polymarket settings:

set POLYMARKET_AUTO_SELECT_LATEST=true
REM set POLYMARKET_SLUG=btc-updown-15m-...

Notes:

  • These environment variables apply only to the current terminal window.
  • If you want permanent env vars, set them via Windows System Environment Variables or use a .env loader of your choice.

Configuration

This project reads configuration from environment variables.

You can set them in your shell, or create a .env file and load it using your preferred method.

Polymarket

  • POLYMARKET_AUTO_SELECT_LATEST (default: true)
    • When true, automatically picks the latest 15m market.
  • POLYMARKET_SERIES_ID (default: 10192)
  • POLYMARKET_SERIES_SLUG (default: btc-up-or-down-15m)
  • POLYMARKET_SLUG (optional)
    • If set, the assistant will target a specific market slug.
  • POLYMARKET_LIVE_WS_URL (default: wss://ws-live-data.polymarket.com)
  • CHAINLINK_BTC_USD_AGGREGATOR
    • Default: 0xc907E116054Ad103354f2D350FD2514433D57F6f

HTTP RPC:

  • POLYGON_RPC_URL (default: https://polygon-rpc.com)
  • POLYGON_RPC_URLS (optional, comma-separated)
    • Example: https://polygon-rpc.com,https://rpc.ankr.com/polygon

WSS RPC (optional but recommended for more real-time fallback):

  • POLYGON_WSS_URL (optional)
  • POLYGON_WSS_URLS (optional, comma-separated)

Proxy support

The bot supports HTTP(S) proxies for both HTTP requests (fetch) and WebSocket connections.

Supported env vars (standard):

  • HTTPS_PROXY / https_proxy
  • HTTP_PROXY / http_proxy
  • ALL_PROXY / all_proxy

Examples:

PowerShell:

$env:HTTPS_PROXY = "http://127.0.0.1:8080"
# or
$env:ALL_PROXY = "socks5://127.0.0.1:1080"

CMD:

set HTTPS_PROXY=http://127.0.0.1:8080
REM or
set ALL_PROXY=socks5://127.0.0.1:1080

Proxy with username + password (simple guide)

  1. Take your proxy host and port (example: 1.2.3.4:8080).

  2. Add your login and password in the URL:

  • HTTP/HTTPS proxy:
    • http://USERNAME:PASSWORD@HOST:PORT
  • SOCKS5 proxy:
    • socks5://USERNAME:PASSWORD@HOST:PORT
  1. Set it in the terminal and run the bot.

PowerShell:

$env:HTTPS_PROXY = "http://USERNAME:PASSWORD@HOST:PORT"
npm start

CMD:

set HTTPS_PROXY=http://USERNAME:PASSWORD@HOST:PORT
npm start

Important: if your password contains special characters like @ or : you must URL-encode it.

Example:

  • password: p@ss:word
  • encoded: p%40ss%3Aword
  • proxy URL: http://user:p%40ss%3Aword@1.2.3.4:8080

Run

npm start

Stop

Press Ctrl + C in the terminal.

Update to latest version

git pull
npm install
npm start

Notes / Troubleshooting

  • If you see no Chainlink updates:
    • Polymarket WS might be temporarily unavailable. The bot falls back to Chainlink on-chain price via Polygon RPC.
    • Ensure at least one working Polygon RPC URL is configured.
  • If the console looks like it “spams” lines:
    • The renderer uses readline.cursorTo + clearScreenDown for a stable, static screen, but some terminals may still behave differently.

Safety

This is not financial advice. Use at your own risk.

created by @krajekis

S
Description
Real-time Polymarket BTC 15m trading assistant for every trader! created by @krajekis
Readme 733 KiB
Languages
JavaScript 96.8%
Shell 3.2%