curl --request GET \
--url https://api.dexpaprika.com/networks/{network}/pools/{pool_address}/indicators/macdimport requests
url = "https://api.dexpaprika.com/networks/{network}/pools/{pool_address}/indicators/macd"
response = requests.get(url)
print(response.text)const options = {method: 'GET'};
fetch('https://api.dexpaprika.com/networks/{network}/pools/{pool_address}/indicators/macd', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));<?php
$curl = curl_init();
curl_setopt_array($curl, [
CURLOPT_URL => "https://api.dexpaprika.com/networks/{network}/pools/{pool_address}/indicators/macd",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "GET",
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}package main
import (
"fmt"
"net/http"
"io"
)
func main() {
url := "https://api.dexpaprika.com/networks/{network}/pools/{pool_address}/indicators/macd"
req, _ := http.NewRequest("GET", url, nil)
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.get("https://api.dexpaprika.com/networks/{network}/pools/{pool_address}/indicators/macd")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.dexpaprika.com/networks/{network}/pools/{pool_address}/indicators/macd")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Get.new(url)
response = http.request(request)
puts response.read_body{
"network": "ethereum",
"pool_address": "0xc7bbec68d12a0d1830360f8ec58fa599ba1b0e9b",
"indicator": "macd",
"interval": "1h",
"parameters": {
"fast_period": 12,
"slow_period": 26,
"signal_period": 9
},
"data": [
{
"timestamp": "2026-10-07T10:00:00Z",
"macd": 1.42,
"signal": 0.97,
"histogram": 0.45
}
],
"has_next_page": false,
"next_cursor": ""
}Get MACD for a pool.
Moving average convergence divergence of candle closes. histogram is macd minus signal.
Computed from completed pool OHLCV candles.
Keyless callers and free keys get candles of 10m and up and the
last 7 days of history. A finer interval, or a start, end or
cursor before that window, gets 403. A range that only partly
overlaps the window, such as the default range without start, is
cut to the window. Dev, Pro and Enterprise have no limits.
Without start the response holds the last limit candles. When
limit cuts the range, next_cursor holds the start of the next page.
curl --request GET \
--url https://api.dexpaprika.com/networks/{network}/pools/{pool_address}/indicators/macdimport requests
url = "https://api.dexpaprika.com/networks/{network}/pools/{pool_address}/indicators/macd"
response = requests.get(url)
print(response.text)const options = {method: 'GET'};
fetch('https://api.dexpaprika.com/networks/{network}/pools/{pool_address}/indicators/macd', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));<?php
$curl = curl_init();
curl_setopt_array($curl, [
CURLOPT_URL => "https://api.dexpaprika.com/networks/{network}/pools/{pool_address}/indicators/macd",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "GET",
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}package main
import (
"fmt"
"net/http"
"io"
)
func main() {
url := "https://api.dexpaprika.com/networks/{network}/pools/{pool_address}/indicators/macd"
req, _ := http.NewRequest("GET", url, nil)
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.get("https://api.dexpaprika.com/networks/{network}/pools/{pool_address}/indicators/macd")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.dexpaprika.com/networks/{network}/pools/{pool_address}/indicators/macd")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Get.new(url)
response = http.request(request)
puts response.read_body{
"network": "ethereum",
"pool_address": "0xc7bbec68d12a0d1830360f8ec58fa599ba1b0e9b",
"indicator": "macd",
"interval": "1h",
"parameters": {
"fast_period": 12,
"slow_period": 26,
"signal_period": 9
},
"data": [
{
"timestamp": "2026-10-07T10:00:00Z",
"macd": 1.42,
"signal": 0.97,
"histogram": 0.45
}
],
"has_next_page": false,
"next_cursor": ""
}Path Parameters
Unique pool address or identifier. Such as 0xc7bbec68d12a0d1830360f8ec58fa599ba1b0e9b for WETH / USDT on ethereum.
Query Parameters
Candle interval the indicator is computed on. 1d is the same as 24h.
1m, 5m, 10m, 15m, 30m, 1h, 6h, 12h, 24h, 1d Maximum number of values to return.
1 <= x <= 1000First candle to return. Unix seconds, a relative offset from now such as -24h with units s, m, h, d, RFC3339 or a date at 00:00 UTC. Defaults to limit candles before end, cut to the last 7 days for keyless callers and free keys.
End of the range, exclusive. Same formats as start. Must not be in the future. Defaults to now.
The next_cursor of the previous page. Cannot be combined with start.
Fast EMA window in candles. Must be below slow_period.
1 <= x <= 200Slow EMA window in candles.
2 <= x <= 200Signal EMA window in candles.
1 <= x <= 200Response
MACD values, oldest first.
Set on pool indicators.
Set on token indicators.
rsi, ema, macd, bbands, vwap Indicator parameters used, defaults included.
Show child attributes
Show child attributes
Pass as cursor to get the next page. Empty on the last page.
Was this page helpful?