GET
/indicator/vwma
Volume Weighted Moving Average
Category: Trend
Volume Weighted Moving Average weights each price by its corresponding volume, giving more influence to prices traded with higher volume.
Common parameters
All indicator requests share these parameters. See Single Indicator for details.
| Name | Type | Required | Default | Description |
|---|---|---|---|---|
exchange | string | Yes | — | Exchange identifier, e.g. binance, bybit. |
symbol | string | Yes | — | Trading pair, e.g. BTCUSDT. |
timeframe | string | Yes | — | Candle interval: 1m, 5m, 15m, 1h, 4h, 1d, 1w. |
results | integer | No | 1 | Number of historical values. Use max for all available. |
backtrack | integer | No | 0 | Candles to skip from most recent. |
Indicator parameters
| Name | Type | Required | Default | Description |
|---|---|---|---|---|
period | number | No | — | period |
Example
curl -G https://v2.taapi.io/indicator/vwma \ -H "Authorization: Bearer YOUR_API_KEY" \ --data-urlencode "exchange=binance" \ --data-urlencode "symbol=BTCUSDT" \ --data-urlencode "timeframe=1h"
const res = await fetch(
'https://v2.taapi.io/indicator/vwma?exchange=binance&symbol=BTCUSDT&timeframe=1h',
{ headers: { Authorization: 'Bearer YOUR_API_KEY' } }
);
const data = await res.json();
import requests
resp = requests.get(
'https://v2.taapi.io/indicator/vwma',
headers={'Authorization': 'Bearer YOUR_API_KEY'},
params={'exchange': 'binance', 'symbol': 'BTCUSDT', 'timeframe': '1h'}
)
print(resp.json())
Response
Results are always wrapped in arrays, even when only one value is returned.
200 OK
{
"vwma": [0.0],
"timestamp": [1708300800]
}
Errors
Response
{
"vwma": [0.0],
"timestamp": [1708300800]
}Data is being fetched. Retry after 1–2 seconds.
Response
{ "pending": true, "key": "ta:binance:BTCUSDT:1h:vwma:..." }Response
{ "error": "Missing required: exchange, symbol, timeframe" }Response
{ "error": "Invalid or missing API key." }Response
{ "error": "Rate limit exceeded. Your plan allows 30 requests per 15 seconds." }