API REFERENCE
Build with
PRUVIQ data.
Free REST API for strategy backtesting, market data, and OHLCV candles. No API key required. Rate limit: 30 requests/minute.
Market Data
Health check. Returns API status, loaded coins count, and uptime.
cURL
curl https://api.pruviq.com/health Response Example
{
"status": "ok",
"version": "0.3.0",
"coins_loaded": 572,
"uptime_seconds": 415785.5
} Market overview: BTC/ETH prices, Fear & Greed Index, BTC dominance, top gainers/losers, extreme funding rates.
cURL
curl https://api.pruviq.com/market Response Example
{
"btc_price": 66658.4,
"btc_change_24h": -0.29,
"eth_price": 2054.17,
"eth_change_24h": -0.92,
"fear_greed_index": 9,
"fear_greed_label": "Extreme Fear",
"total_market_cap_b": 2377.4,
"btc_dominance": 56.1,
"total_volume_24h_b": 93.5,
"top_gainers": [ ... ],
"top_losers": [ ... ],
"extreme_funding": [ ... ]
} Aggregated crypto news from multiple RSS sources. Updated regularly.
cURL
curl https://api.pruviq.com/news Response Example
[
{
"title": "Bitcoin drops below $67K amid macro uncertainty",
"source": "CoinDesk",
"url": "https://...",
"published": "2026-04-03T10:30:00Z"
},
...
] Macro economic indicators, crypto derivatives data, and upcoming economic events.
cURL
curl https://api.pruviq.com/macro Response Example
{
"dxy": { "value": 104.2, "change": -0.3 },
"us10y": { "value": 4.25, "change": 0.02 },
"sp500": { "value": 5280, "change": -1.2 },
"open_interest": { ... },
"funding_rates": { ... },
"events": [ ... ]
} Data
List all available coins with data range and row count.
cURL
curl https://api.pruviq.com/coins Response Example
[
{
"symbol": "BTCUSDT",
"rows": 19800,
"date_from": "2023-12-30",
"date_to": "2026-04-03"
},
{
"symbol": "ETHUSDT",
"rows": 19800,
"date_from": "2023-12-30",
"date_to": "2026-04-03"
},
... // 572 coins total
] Pre-computed strategy stats for all coins. Includes price, volume, win rate, profit factor.
cURL
curl https://api.pruviq.com/coins/stats Response Example
[
{
"symbol": "BTCUSDT",
"price": 66658.4,
"volume_24h": 28500000000,
"win_rate": 68.6,
"profit_factor": 2.22,
"total_trades": 142
},
...
] OHLCV candle data with technical indicators (Bollinger Bands, EMA, Volume Ratio).
cURL
curl "https://api.pruviq.com/ohlcv/BTCUSDT?limit=168" Response Example
{
"symbol": "BTCUSDT",
"timeframe": "1H",
"total_bars": 168,
"data": [
{
"t": 1775178000,
"o": 66761.8,
"h": 66881.3,
"l": 66450.0,
"c": 66599.0,
"v": 4087.42,
"bb_upper": 67266.78,
"bb_lower": 66077.55,
"bb_mid": 66672.17,
"ema20": 66865.21,
"ema50": 67163.85,
"vol_ratio": 0.9
},
...
]
} List all available strategies with default parameters and status.
cURL
curl https://api.pruviq.com/strategies Response Example
[
{
"id": "bb-squeeze-short",
"name": "BB Squeeze SHORT",
"description": "Bollinger Band squeeze breakout. Enters short on volatility expansion after contraction.",
"default_params": {
"sl_pct": 10.0,
"tp_pct": 8.0,
"max_bars": 48,
"direction": "short",
"status": "verified"
}
},
...
] List available technical indicators for Strategy Builder with fields and default parameters.
cURL
curl https://api.pruviq.com/indicators Response Example
{
"bb": {
"name": "Bollinger Bands",
"fields": ["bb_upper", "bb_lower", "bb_mid", "bb_width", "is_squeeze", ...],
"default_params": { "period": 20, "std": 2.0 }
},
"ema": {
"name": "EMA Trend",
"fields": ["ema_fast", "ema_slow", "uptrend", "downtrend"],
"default_params": { "fast": 9, "slow": 21 }
},
...
} Rankings & Signals
Today's top-performing strategies ranked by profit factor. Updated daily at 00:30 UTC.
cURL
curl https://api.pruviq.com/rankings/daily Response Example
{
"date": "2026-04-03",
"generated_at": "2026-04-03T00:27:22Z",
"period": "30d",
"group": "top50",
"top3": [
{
"rank": 1,
"name_en": "Keltner Squeeze LONG 6H",
"strategy": "keltner-squeeze",
"direction": "long",
"win_rate": 54.17,
"profit_factor": 1.78,
"total_return": 0.58,
"total_trades": 24,
"sharpe": 3.19,
"max_drawdown": 0.34,
"rank_change": 0,
"streak": 3
},
...
]
} Real-time trading signals from all active strategies. Includes entry price, direction, SL/TP.
cURL
curl https://api.pruviq.com/signals/live Response Example
[
{
"strategy": "ma-cross",
"strategy_name": "MA Cross",
"coin": "ETHUSDT",
"direction": "short",
"signal_time": "2026-04-03T02:00:00",
"entry_price": 2049.44,
"status": "verified",
"sl_pct": 5,
"tp_pct": 10
},
{
"strategy": "heikin-ashi",
"strategy_name": "Heikin Ashi Trend",
"coin": "BEAMXUSDT",
"direction": "long",
"signal_time": "2026-04-03T02:00:00",
"entry_price": 0.00171,
"status": "research",
"sl_pct": 7,
"tp_pct": 8
},
...
] Hot strategies ranked by recent 30-day performance across top 50 coins.
cURL
curl https://api.pruviq.com/hot-strategies Response Example
{
"strategies": [
{
"strategy_id": "supertrend",
"strategy_name": "SuperTrend",
"direction": "short",
"status": "research",
"period": "30d",
"profit_factor": 4.11,
"win_rate": 60.0,
"total_trades": 5,
"total_return_pct": 5.9
},
...
]
} Simulation
/simulate Run a strategy simulation across multiple coins. Returns aggregate performance metrics and equity curve.
Request Body
{
"strategy": "bb-squeeze-short",
"sl_pct": 10.0,
"tp_pct": 8.0,
"max_bars": 48,
"market_type": "futures",
"top_n": 50
} cURL
curl -X POST https://api.pruviq.com/simulate \
-H "Content-Type: application/json" \
-d '{"strategy":"bb-squeeze-short","sl_pct":10,"tp_pct":8,"top_n":50}' Response Example
{
"strategy": "bb-squeeze-short",
"direction": "short",
"total_trades": 1247,
"win_rate": 68.6,
"profit_factor": 2.22,
"total_return_pct": 142.5,
"sharpe_ratio": 3.45,
"max_drawdown_pct": 8.2,
"avg_bars_held": 12.3,
"equity_curve": [ ... ]
} /simulate/coin Run simulation on a single coin. Returns individual trade details with entry/exit prices.
Request Body
{
"symbol": "BTCUSDT",
"sl_pct": 10.0,
"tp_pct": 8.0,
"max_bars": 48,
"direction": "short",
"market_type": "futures"
} cURL
curl -X POST https://api.pruviq.com/simulate/coin \
-H "Content-Type: application/json" \
-d '{"symbol":"BTCUSDT","sl_pct":10,"tp_pct":8,"max_bars":48,"direction":"short","market_type":"futures"}' Response Example
{
"symbol": "BTCUSDT",
"total_trades": 42,
"win_rate": 71.4,
"profit_factor": 2.85,
"trades": [
{
"entry_time": "2025-06-15T14:00:00",
"exit_time": "2025-06-16T02:00:00",
"entry_price": 67500.0,
"exit_price": 62100.0,
"pnl_pct": 8.0,
"result": "tp"
},
...
]
} /simulate/compare Compare all strategies under identical conditions (same SL/TP, same coins).
Request Body
{
"sl_pct": 10.0,
"tp_pct": 8.0,
"max_bars": 48,
"top_n": 50
} cURL
curl -X POST https://api.pruviq.com/simulate/compare \
-H "Content-Type: application/json" \
-d '{"sl_pct":10,"tp_pct":8,"max_bars":48,"top_n":50}' Response Example
{
"params": { "sl_pct": 10.0, "tp_pct": 8.0, "top_n": 50 },
"results": [
{
"strategy": "bb-squeeze-short",
"win_rate": 68.6,
"profit_factor": 2.22,
"total_trades": 1247,
"sharpe": 3.45
},
{
"strategy": "ma-cross-short",
"win_rate": 55.2,
"profit_factor": 1.45,
"total_trades": 890,
"sharpe": 1.82
},
...
]
} /simulate/validate Validate strategy configuration before running a full simulation.
Request Body
{
"strategy": "bb-squeeze-short",
"sl_pct": 10.0,
"tp_pct": 8.0
} cURL
curl -X POST https://api.pruviq.com/simulate/validate \
-H "Content-Type: application/json" \
-d '{"strategy":"bb-squeeze-short","sl_pct":10,"tp_pct":8}' Response Example
{
"valid": true,
"strategy": "bb-squeeze-short",
"warnings": []
} Strategy Builder
/backtest Run a custom strategy backtest using the condition engine. Full Strategy Builder support.
Request Body
{
"name": "My Strategy",
"direction": "short",
"indicators": { "bb": {}, "volume": {} },
"entry": {
"type": "AND",
"conditions": [
{ "field": "bb_squeeze", "op": "==", "value_bool": true },
{ "field": "vol_ratio", "op": ">", "value": 2.0 }
]
},
"sl_pct": 10.0,
"tp_pct": 8.0,
"max_bars": 48,
"top_n": 50
} cURL
curl -X POST https://api.pruviq.com/backtest \
-H "Content-Type: application/json" \
-d '{"name":"My Strategy","direction":"short","indicators":{"bb":{},"volume":{}},"entry":{"type":"AND","conditions":[{"field":"bb_squeeze","op":"==","value_bool":true},{"field":"vol_ratio","op":">","value":2.0}]},"sl_pct":10,"tp_pct":8,"top_n":50}' Response Example
{
"name": "My Strategy",
"direction": "short",
"total_trades": 856,
"win_rate": 62.3,
"profit_factor": 1.89,
"sharpe_ratio": 2.67,
"max_drawdown_pct": 11.4,
"equity_curve": [ ... ],
"per_coin": [ ... ]
} List preset strategy templates for Strategy Builder.
cURL
curl https://api.pruviq.com/builder/presets Response Example
[
{
"id": "bb-squeeze-short",
"name": "BB Squeeze SHORT",
"direction": "short",
"indicators": ["ema", "bb", "volume"],
"conditions_count": 7,
"sl_pct": 10.0,
"tp_pct": 8.0
},
{
"id": "bb-squeeze-long",
"name": "BB Squeeze LONG",
"direction": "long",
"indicators": ["ema", "bb", "volume"],
"conditions_count": 7,
"sl_pct": 7.0,
"tp_pct": 6.0
},
...
] Get full JSON definition of a preset strategy for editing.
cURL
curl https://api.pruviq.com/builder/presets/bb-squeeze-short Response Example
{
"id": "bb-squeeze-short",
"name": "BB Squeeze SHORT",
"direction": "short",
"indicators": { "bb": {}, "ema": {}, "volume": {} },
"entry": {
"type": "AND",
"conditions": [
{ "field": "bb_squeeze", "op": "==", "value_bool": true },
{ "field": "vol_ratio", "op": ">", "value": 2.0 },
...
]
},
"sl_pct": 10.0,
"tp_pct": 8.0,
"max_bars": 48
} List available technical indicators for Strategy Builder with fields and default parameters.
cURL
curl https://api.pruviq.com/builder/indicators Response Example
{
"bb": {
"name": "Bollinger Bands",
"fields": ["bb_upper", "bb_lower", "bb_mid", "bb_width", "is_squeeze", ...],
"default_params": { "period": 20, "std": 2.0 }
},
...
} Quick Start
Get started in seconds. No setup required.
import requests
# Get market overview
market = requests.get("https://api.pruviq.com/market").json()
print(f"BTC: {market['btc_price']:,.0f{'}'}")
print(f"Fear & Greed: {'{'}market['fear_greed_index']{'}'}")
# Simulate BB Squeeze SHORT on top 50 coins
result = requests.post("https://api.pruviq.com/simulate", json={
"strategy": "bb-squeeze-short",
"sl_pct": 10.0,
"tp_pct": 8.0,
"top_n": 50
}).json()
print(f"Win Rate: {'{'}result['win_rate']{'}'} %")
print(f"Profit Factor: {'{'}result['profit_factor']{'}'}")
print(f"Total Trades: {'{'}result['total_trades']{'}'}")
# Get OHLCV data for BTCUSDT (last 168 bars = 7 days)
ohlcv = requests.get("https://api.pruviq.com/ohlcv/BTCUSDT", params={"limit": 168}).json()
print(f"Bars: {'{'}ohlcv['total_bars']{'}'}") # Health check
curl https://api.pruviq.com/health
# Market overview
curl https://api.pruviq.com/market
# OHLCV data (last 168 bars)
curl "https://api.pruviq.com/ohlcv/ETHUSDT?limit=168"
# Today's strategy rankings
curl https://api.pruviq.com/rankings/daily
# Live signals
curl https://api.pruviq.com/signals/live
# Run simulation
curl -X POST https://api.pruviq.com/simulate \
-H "Content-Type: application/json" \
-d '{"strategy":"bb-squeeze-short","sl_pct":10,"tp_pct":8,"top_n":50}' // Fetch all available strategies
const strategies = await fetch("https://api.pruviq.com/strategies").then(r => r.json());
console.log(strategies.map(s => s.name));
// Get today's rankings
const rankings = await fetch("https://api.pruviq.com/rankings/daily").then(r => r.json());
console.log(`#1: ${rankings.top3[0].name_en} (PF: ${rankings.top3[0].profit_factor})`);
// Simulate single coin
const sim = await fetch("https://api.pruviq.com/simulate/coin", {
method: "POST",
headers: { "Content-Type": "application/json" },
body: JSON.stringify({
symbol: "SOLUSDT",
sl_pct: 10, tp_pct: 8, max_bars: 48,
direction: "short", market_type: "futures"
})
}).then(r => r.json());
console.log(`Trades: ${sim.total_trades}, WR: ${sim.win_rate}%`); Coming Soon
Python SDK and WebSocket feed are in development. Follow us on X for updates.