Skip to content

Commit fb8045d

Browse files
committed
Update README with current features and supported tickers
1 parent 995aede commit fb8045d

1 file changed

Lines changed: 33 additions & 14 deletions

File tree

README.md

Lines changed: 33 additions & 14 deletions
Original file line numberDiff line numberDiff line change
@@ -5,25 +5,27 @@ Discord bot for tracking cryptocurrency and asset prices with beautiful charts.
55
## Features
66

77
- Multiple independent bot instances, one per ticker
8-
- Real-time price updates via Pyth Network, Yahoo Finance, and GoldSilver.ai
9-
- Discord nicknames display ticker + current price
8+
- Real-time price updates via Pyth Network and Yahoo Finance
9+
- Discord nicknames display ticker and current price
1010
- Status cycles through BTC/ETH/SOL conversions and 1h change
1111
- Historical price charts with high/low markers
1212
- Detailed price embeds with 24h/7d/30d percentage changes
1313
- PostgreSQL for persistent price history
14-
- Lightweight Alpine-based Docker image (~266MB)
14+
- 5-year data retention with tiered aggregation (raw, 5m, hourly, daily, weekly)
15+
- Lightweight Alpine-based Docker image
1516

1617
## Quick Start
1718

1819
```bash
1920
cp .env.example .env
20-
# Edit .env with your Discord bot tokens
21+
# Edit .env with your Discord bot tokens and Pyth feed IDs
2122
docker-compose up -d --build
2223
```
2324

2425
## Slash Commands
2526

2627
### /chart price
28+
2729
Generate a price chart with high/low markers and percentage change.
2830

2931
```
@@ -35,6 +37,7 @@ Generate a price chart with high/low markers and percentage change.
3537
| timeframe | 24h | 1h, 6h, 12h, 24h, 48h, 1w, 2w, 30d, 3m |
3638

3739
### /price current
40+
3841
Display current price with conversions and percentage changes.
3942

4043
```
@@ -48,22 +51,26 @@ Shows USD price, 24h/7d/30d changes, and BTC/ETH/SOL conversions.
4851

4952
| Ticker | Source |
5053
|--------|--------|
51-
| BTC, ETH, SOL, and other Pyth feeds | Pyth Network |
54+
| BTC, ETH, SOL, WIF, FARTCOIN, GOLD, SILVER, MSTR, JLP, SEI, SUI, AVAX, BNB, PUMP, XPL, HOOD, SBET, 2Z, ASTER, DOGE, EURO, VOO, OIL | Pyth Network |
5255
| DXY | Yahoo Finance |
53-
| SSILVER | GoldSilver.ai |
5456

5557
## Environment Variables
5658

5759
```bash
58-
# Bot tokens - one per ticker
60+
# Price update interval (default: 12 seconds)
61+
UPDATE_INTERVAL_SECONDS=12
62+
63+
# Discord Bot Tokens - one per ticker
5964
DISCORD_TOKEN_BTC=your_token
6065
DISCORD_TOKEN_ETH=your_token
66+
DISCORD_TOKEN_SOL=your_token
67+
# ... etc
6168

62-
# Pyth feed IDs
69+
# Pyth Network Feed IDs (comma-separated)
6370
CRYPTO_FEEDS=BTC:feed_id,ETH:feed_id,SOL:feed_id
6471

65-
# Optional
66-
UPDATE_INTERVAL_SECONDS=12
72+
# Database
73+
DATABASE_URL=postgresql://user:password@postgres:5432/pricebot
6774
```
6875

6976
## Tech Stack
@@ -78,11 +85,23 @@ UPDATE_INTERVAL_SECONDS=12
7885
## Project Structure
7986

8087
```
81-
├── bot.py # Main bot, commands, status cycling
82-
├── database.py # PostgreSQL operations
83-
├── price_service.py # Price fetching
88+
├── bot.py # Main bot, commands, status cycling
89+
├── database.py # PostgreSQL operations and aggregation
90+
├── price_service.py # Price fetching (Pyth + Yahoo)
8491
├── chart_service.py # Chart generation
8592
├── docker-compose.yml
8693
├── Dockerfile
87-
└── requirements.txt
94+
├── requirements.txt
95+
└── .env.example
8896
```
97+
98+
## Data Retention
99+
100+
- Raw prices: last 24 hours
101+
- 5-minute aggregates: 7 days
102+
- Hourly aggregates: 30 days
103+
- Daily aggregates: 1 year
104+
- Weekly aggregates: 5 years
105+
- Older data: auto-deleted
106+
107+
Chart queries automatically select the appropriate aggregation level.

0 commit comments

Comments
 (0)