SDK
import { Client } from '@solana-tracker/data-api';
const client = new Client({ apiKey: 'YOUR_API_KEY' });
const data = await client.getWalletChart('FbMxP3GVq8TQ36nbYgx4NP9iygMpwAwFWJwW81ioCiSF');curl --request GET \
--url https://data.solanatracker.io/wallet/{owner}/chart \
--header 'x-api-key: <api-key>'import requests
url = "https://data.solanatracker.io/wallet/{owner}/chart"
headers = {"x-api-key": "<api-key>"}
response = requests.get(url, headers=headers)
print(response.text)const options = {method: 'GET', headers: {'x-api-key': '<api-key>'}};
fetch('https://data.solanatracker.io/wallet/{owner}/chart', 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://data.solanatracker.io/wallet/{owner}/chart",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "GET",
CURLOPT_HTTPHEADER => [
"x-api-key: <api-key>"
],
]);
$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://data.solanatracker.io/wallet/{owner}/chart"
req, _ := http.NewRequest("GET", url, nil)
req.Header.Add("x-api-key", "<api-key>")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.get("https://data.solanatracker.io/wallet/{owner}/chart")
.header("x-api-key", "<api-key>")
.asString();require 'uri'
require 'net/http'
url = URI("https://data.solanatracker.io/wallet/{owner}/chart")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Get.new(url)
request["x-api-key"] = '<api-key>'
response = http.request(request)
puts response.read_body{
"chartData": [
{
"date": "2025-06-30",
"value": 2230.19,
"timestamp": 1751290300000,
"pnlPercentage": 0
},
{
"date": "2025-07-01",
"value": 169373.55,
"timestamp": 1751405078000,
"pnlPercentage": 7494.58
},
{
"date": "2025-07-02",
"value": 313650.72,
"timestamp": 1751489834000,
"pnlPercentage": 85.18
},
{
"date": "2025-08-08",
"value": 933.22,
"timestamp": 1754678416000,
"pnlPercentage": -99.7
},
{
"date": "2025-08-09",
"value": 1165.19,
"timestamp": 1754697787000,
"pnlPercentage": 24.86
},
{
"date": "2025-08-10",
"value": 1760.46,
"timestamp": 1754866476000,
"pnlPercentage": 51.09
},
{
"date": "2025-08-11",
"value": 2442.98,
"timestamp": 1754906226000,
"pnlPercentage": 38.77
},
{
"date": "2025-08-12",
"value": 2201.56,
"timestamp": 1754966622000,
"pnlPercentage": -9.88
},
{
"date": "2025-08-13",
"value": 3252.33,
"timestamp": 1755103555000,
"pnlPercentage": 47.73
},
{
"date": "2025-08-14",
"value": 3318.54,
"timestamp": 1755140737000,
"pnlPercentage": 2.04
},
{
"date": "2025-08-15",
"value": 1193.59,
"timestamp": 1755260328000,
"pnlPercentage": -64.03
},
{
"date": "2025-08-16",
"value": 533.61,
"timestamp": 1755363640000,
"pnlPercentage": -55.29
},
{
"date": "2025-08-17",
"value": 1032.38,
"timestamp": 1755419335000,
"pnlPercentage": 93.47
},
{
"date": "2025-08-20",
"value": 1085.76,
"timestamp": 1755679761000,
"pnlPercentage": 5.17
},
{
"date": "2025-08-22",
"value": 2144.13,
"timestamp": 1755872884000,
"pnlPercentage": 97.48
},
{
"date": "2025-08-23",
"value": 2770.56,
"timestamp": 1755957763000,
"pnlPercentage": 29.22
},
{
"date": "2025-08-24",
"value": 2949.83,
"timestamp": 1756069593000,
"pnlPercentage": 6.47
},
{
"date": "2025-08-25",
"value": 3133.98,
"timestamp": 1756153222000,
"pnlPercentage": 6.24
},
{
"date": "2025-08-26",
"value": 3072.97,
"timestamp": 1756242724000,
"pnlPercentage": -1.95
},
{
"date": "2025-08-27",
"value": 4837.43,
"timestamp": 1756335845000,
"pnlPercentage": 57.42
},
{
"date": "2025-08-28",
"value": 5936.48,
"timestamp": 1756384328000,
"pnlPercentage": 22.72
},
{
"date": "2025-08-29",
"value": 90530.28,
"timestamp": 1756455223000,
"pnlPercentage": 1424.98
},
{
"date": "2025-09-01",
"value": 440307.8,
"timestamp": 1756767240000,
"pnlPercentage": 386.37
},
{
"date": "2025-09-02",
"value": 471632.06,
"timestamp": 1756817213000,
"pnlPercentage": 7.11
},
{
"date": "2025-09-03",
"value": 2582.97,
"timestamp": 1756862176000,
"pnlPercentage": -99.45
},
{
"date": "2025-09-04",
"value": 2480.41,
"timestamp": 1756998362000,
"pnlPercentage": -3.97
},
{
"date": "2025-10-12",
"value": 55.3,
"timestamp": 1760281678000,
"pnlPercentage": -97.77
}
],
"pnl": {
"24h": {
"value": 0,
"percentage": 0
},
"30d": {
"value": -2425.11,
"percentage": -97.77
}
},
"statistics": {
"dailyOutliersRemoved": 0,
"chartOutliersRemoved": 1,
"totalDataPoints": 27
}
}{
"error": "Error fetching wallet chart data"
}Wallet
API de gráfico de valor de cartera de wallets de Solana
Valor histórico en USD de una wallet con porcentajes de PnL por periodo. Para gráficos de PnL basados en trades, usa PnL V2. GET /wallet//chart.
GET
/
wallet
/
{owner}
/
chart
SDK
import { Client } from '@solana-tracker/data-api';
const client = new Client({ apiKey: 'YOUR_API_KEY' });
const data = await client.getWalletChart('FbMxP3GVq8TQ36nbYgx4NP9iygMpwAwFWJwW81ioCiSF');curl --request GET \
--url https://data.solanatracker.io/wallet/{owner}/chart \
--header 'x-api-key: <api-key>'import requests
url = "https://data.solanatracker.io/wallet/{owner}/chart"
headers = {"x-api-key": "<api-key>"}
response = requests.get(url, headers=headers)
print(response.text)const options = {method: 'GET', headers: {'x-api-key': '<api-key>'}};
fetch('https://data.solanatracker.io/wallet/{owner}/chart', 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://data.solanatracker.io/wallet/{owner}/chart",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "GET",
CURLOPT_HTTPHEADER => [
"x-api-key: <api-key>"
],
]);
$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://data.solanatracker.io/wallet/{owner}/chart"
req, _ := http.NewRequest("GET", url, nil)
req.Header.Add("x-api-key", "<api-key>")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.get("https://data.solanatracker.io/wallet/{owner}/chart")
.header("x-api-key", "<api-key>")
.asString();require 'uri'
require 'net/http'
url = URI("https://data.solanatracker.io/wallet/{owner}/chart")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Get.new(url)
request["x-api-key"] = '<api-key>'
response = http.request(request)
puts response.read_body{
"chartData": [
{
"date": "2025-06-30",
"value": 2230.19,
"timestamp": 1751290300000,
"pnlPercentage": 0
},
{
"date": "2025-07-01",
"value": 169373.55,
"timestamp": 1751405078000,
"pnlPercentage": 7494.58
},
{
"date": "2025-07-02",
"value": 313650.72,
"timestamp": 1751489834000,
"pnlPercentage": 85.18
},
{
"date": "2025-08-08",
"value": 933.22,
"timestamp": 1754678416000,
"pnlPercentage": -99.7
},
{
"date": "2025-08-09",
"value": 1165.19,
"timestamp": 1754697787000,
"pnlPercentage": 24.86
},
{
"date": "2025-08-10",
"value": 1760.46,
"timestamp": 1754866476000,
"pnlPercentage": 51.09
},
{
"date": "2025-08-11",
"value": 2442.98,
"timestamp": 1754906226000,
"pnlPercentage": 38.77
},
{
"date": "2025-08-12",
"value": 2201.56,
"timestamp": 1754966622000,
"pnlPercentage": -9.88
},
{
"date": "2025-08-13",
"value": 3252.33,
"timestamp": 1755103555000,
"pnlPercentage": 47.73
},
{
"date": "2025-08-14",
"value": 3318.54,
"timestamp": 1755140737000,
"pnlPercentage": 2.04
},
{
"date": "2025-08-15",
"value": 1193.59,
"timestamp": 1755260328000,
"pnlPercentage": -64.03
},
{
"date": "2025-08-16",
"value": 533.61,
"timestamp": 1755363640000,
"pnlPercentage": -55.29
},
{
"date": "2025-08-17",
"value": 1032.38,
"timestamp": 1755419335000,
"pnlPercentage": 93.47
},
{
"date": "2025-08-20",
"value": 1085.76,
"timestamp": 1755679761000,
"pnlPercentage": 5.17
},
{
"date": "2025-08-22",
"value": 2144.13,
"timestamp": 1755872884000,
"pnlPercentage": 97.48
},
{
"date": "2025-08-23",
"value": 2770.56,
"timestamp": 1755957763000,
"pnlPercentage": 29.22
},
{
"date": "2025-08-24",
"value": 2949.83,
"timestamp": 1756069593000,
"pnlPercentage": 6.47
},
{
"date": "2025-08-25",
"value": 3133.98,
"timestamp": 1756153222000,
"pnlPercentage": 6.24
},
{
"date": "2025-08-26",
"value": 3072.97,
"timestamp": 1756242724000,
"pnlPercentage": -1.95
},
{
"date": "2025-08-27",
"value": 4837.43,
"timestamp": 1756335845000,
"pnlPercentage": 57.42
},
{
"date": "2025-08-28",
"value": 5936.48,
"timestamp": 1756384328000,
"pnlPercentage": 22.72
},
{
"date": "2025-08-29",
"value": 90530.28,
"timestamp": 1756455223000,
"pnlPercentage": 1424.98
},
{
"date": "2025-09-01",
"value": 440307.8,
"timestamp": 1756767240000,
"pnlPercentage": 386.37
},
{
"date": "2025-09-02",
"value": 471632.06,
"timestamp": 1756817213000,
"pnlPercentage": 7.11
},
{
"date": "2025-09-03",
"value": 2582.97,
"timestamp": 1756862176000,
"pnlPercentage": -99.45
},
{
"date": "2025-09-04",
"value": 2480.41,
"timestamp": 1756998362000,
"pnlPercentage": -3.97
},
{
"date": "2025-10-12",
"value": 55.3,
"timestamp": 1760281678000,
"pnlPercentage": -97.77
}
],
"pnl": {
"24h": {
"value": 0,
"percentage": 0
},
"30d": {
"value": -2425.11,
"percentage": -97.77
}
},
"statistics": {
"dailyOutliersRemoved": 0,
"chartOutliersRemoved": 1,
"totalDataPoints": 27
}
}{
"error": "Error fetching wallet chart data"
}Gráfico heredado de valor de cartera (serie histórica del valor en USD de la wallet, con porcentajes de PnL por periodo). No equivale a los gráficos de trades y rendimiento de PnL V2.
Para series temporales de PnL basadas en trades, usa preferentemente
GET /v2/pnl/wallets/{wallet}/chart (PnL V2).
Si no se pueden generar los datos del gráfico para la wallet, el endpoint puede devolver HTTP 400 con { "error": "Error fetching wallet chart data" }. Es un resultado vacío o no disponible del gráfico heredado, y no sigue el mismo contrato que PnL V2.
SDK Example
import { Client } from '@solana-tracker/data-api';
const client = new Client({ apiKey: 'YOUR_API_KEY' });
const data = await client.getWalletChart('FbMxP3GVq8TQ36nbYgx4NP9iygMpwAwFWJwW81ioCiSF');
¿Esta página le ayudó?