Get Symbols Summary
curl --request GET \
--url https://api.example.com/api/symbols/summaryimport requests
url = "https://api.example.com/api/symbols/summary"
response = requests.get(url)
print(response.text)const options = {method: 'GET'};
fetch('https://api.example.com/api/symbols/summary', 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.example.com/api/symbols/summary",
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.example.com/api/symbols/summary"
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.example.com/api/symbols/summary")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.example.com/api/symbols/summary")
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{
"success": true,
"symbols": [
{
"symbol": "<string>",
"total_trades": 123,
"trading_profit_loss": 123,
"winning_trades": 123,
"win_rate_percentage": 123,
"avg_profit_loss": 123,
"avg_return_percentage": 123,
"total_volume": 123,
"total_dividend_payments": 123,
"total_dividends": 123,
"total_return": 123,
"first_trade_date": "<string>",
"last_trade_date": "<string>",
"first_dividend_date": "<string>",
"last_dividend_date": "<string>",
"current_shares_held": 123,
"has_open_position": true
}
],
"data_source": "<string>"
}Symbols
Get Symbols Summary
Retrieves comprehensive summary data for all traded symbols including trading stats, dividends, and open positions
GET
/
api
/
symbols
/
summary
Get Symbols Summary
curl --request GET \
--url https://api.example.com/api/symbols/summaryimport requests
url = "https://api.example.com/api/symbols/summary"
response = requests.get(url)
print(response.text)const options = {method: 'GET'};
fetch('https://api.example.com/api/symbols/summary', 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.example.com/api/symbols/summary",
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.example.com/api/symbols/summary"
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.example.com/api/symbols/summary")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.example.com/api/symbols/summary")
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{
"success": true,
"symbols": [
{
"symbol": "<string>",
"total_trades": 123,
"trading_profit_loss": 123,
"winning_trades": 123,
"win_rate_percentage": 123,
"avg_profit_loss": 123,
"avg_return_percentage": 123,
"total_volume": 123,
"total_dividend_payments": 123,
"total_dividends": 123,
"total_return": 123,
"first_trade_date": "<string>",
"last_trade_date": "<string>",
"first_dividend_date": "<string>",
"last_dividend_date": "<string>",
"current_shares_held": 123,
"has_open_position": true
}
],
"data_source": "<string>"
}Endpoint
GET /api/symbols/summary
Authentication
Requires OAuth 2.0 authentication via session cookies.Parameters
NoneResponse
boolean
required
Indicates if the request was successful
array
required
List of symbol summary objects with comprehensive trading statistics
Show Symbol Summary Object
Show Symbol Summary Object
string
Stock ticker symbol
number
Total number of completed trades
number
Total P&L from trades
number
Number of profitable trades
number
Win rate percentage
number
Average profit/loss per trade
number
Average return percentage
number
Total shares traded
number
Number of dividend payments received
number
Total dividend income
number
Combined trading P&L and dividends
string
Date of first trade (YYYY-MM-DD)
string
Date of most recent trade (YYYY-MM-DD)
string
Date of first dividend
string
Date of most recent dividend
number
Number of shares currently held
boolean
Whether user has an open position
string
required
Database source (always “postgresql”)
Example
curl -X GET https://performance.miningwood.com/api/symbols/summary \
-H "Cookie: session=your_session_cookie"
const response = await fetch('/api/symbols/summary');
const data = await response.json();
if (data.success) {
data.symbols.forEach(symbol => {
console.log(`${symbol.symbol}: ${symbol.total_trades} trades, ${symbol.win_rate_percentage}% win rate`);
});
}
import requests
response = requests.get('https://performance.miningwood.com/api/symbols/summary')
data = response.json()
if data['success']:
for symbol in data['symbols']:
print(f"{symbol['symbol']}: ${symbol['trading_profit_loss']:.2f} P&L")
Response Example
{
"success": true,
"symbols": [
{
"symbol": "AAPL",
"total_trades": 25,
"trading_profit_loss": 3450.50,
"winning_trades": 18,
"win_rate_percentage": 72.0,
"avg_profit_loss": 138.02,
"avg_return_percentage": 2.15,
"total_volume": 2500,
"total_dividend_payments": 8,
"total_dividends": 320.00,
"total_return": 3770.50,
"first_trade_date": "2024-01-15",
"last_trade_date": "2024-08-30",
"first_dividend_date": "2024-02-15",
"last_dividend_date": "2024-08-15",
"current_shares_held": 100,
"has_open_position": true
}
],
"data_source": "postgresql"
}
Use Cases
- Performance comparison across different stocks
- Identifying best and worst performing symbols
- Portfolio allocation decisions based on historical performance
- Risk analysis across different holdings
Related Endpoints
Symbol Details
Get detailed trade-by-trade information for a specific symbol
Get Symbols
Get list of all traded symbols
Was this page helpful?
⌘I