Files
PolymarketBTC15mAssistant/README.md
T

204 lines
5.0 KiB
Markdown
Raw Normal View History

2026-01-29 22:13:37 +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
2026-01-29 22:21:18 +02:00
- Node.js **18+** (https://nodejs.org/en)
2026-01-29 22:13:37 +02:00
- npm (comes with Node)
2026-01-29 22:16:38 +02:00
## Run from terminal (step-by-step)
### 1) Clone the repository
```bash
git clone https://github.com/FrondEnt/PolymarketBTC15mAssistant.git
```
2026-01-29 22:23:30 +02:00
Alternative (no git):
- Click the green `<> Code` button on GitHub
- Choose `Download ZIP`
- Extract the ZIP
- Open a terminal in the extracted project folder
2026-01-29 22:16:38 +02:00
Then open a terminal in the project folder.
### 2) Install dependencies
```bash
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)
```powershell
$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:
```powershell
$env:POLYMARKET_AUTO_SELECT_LATEST = "true"
# $env:POLYMARKET_SLUG = "btc-updown-15m-..." # pin a specific market
```
#### Windows CMD (current terminal session)
```cmd
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:
```cmd
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.
2026-01-29 22:13:37 +02:00
## 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 on Polygon (fallback)
- `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)
2026-01-30 00:22:45 +02:00
### 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:
```powershell
$env:HTTPS_PROXY = "http://127.0.0.1:8080"
# or
$env:ALL_PROXY = "socks5://127.0.0.1:1080"
```
CMD:
```cmd
set HTTPS_PROXY=http://127.0.0.1:8080
REM or
set ALL_PROXY=socks5://127.0.0.1:1080
```
2026-01-30 00:25:30 +02:00
#### 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`
3) Set it in the terminal and run the bot.
PowerShell:
```powershell
$env:HTTPS_PROXY = "http://USERNAME:PASSWORD@HOST:PORT"
npm start
```
CMD:
```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`
2026-01-29 22:13:37 +02:00
## Run
```bash
npm start
```
2026-01-29 22:16:38 +02:00
### Stop
Press `Ctrl + C` in the terminal.
### Update to latest version
```bash
git pull
npm install
npm start
```
2026-01-29 22:13:37 +02:00
## 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