← 返回
开发者工具 中文

Stock Prices

Query real-time stock prices and market data using the Stock Prices API. Responses are in TOON format—decode with @toon-format/toon. Use when fetching stock...
使用股票价格API查询实时股价与市场数据。响应为TOON格式,需使用@toon-format/toon解码。适用于获取股票...
anthonylee1994
开发者工具 clawhub v1.0.1 1 版本 99823.8 Key: 无需
★ 0
Stars
📥 3,965
下载
💾 440
安装
1
版本
#latest

概述

Stock Prices API Skill

This skill helps you work with the Stock Prices API to fetch real-time market data and stock quotes.

API Endpoint

Base URL: https://stock-prices.on99.app

Primary Endpoint: /quotes?symbols={SYMBOLS}

Quick Start

Fetch stock quotes for one or more symbols (responses are in TOON format):

curl "https://stock-prices.on99.app/quotes?symbols=NVDA"
curl "https://stock-prices.on99.app/quotes?symbols=AAPL,GOOGL,MSFT"

Install the TOON decoder for parsing: pnpm add @toon-format/toon

Response Format

The API returns TOON (Token-Oriented Object Notation) format—a compact, human-readable encoding that uses ~40% fewer tokens than JSON. This makes it ideal for LLM prompts and streaming.

TOON Response Example

quotes[1]{symbol,currentPrice,change,percentChange,highPrice,lowPrice,openPrice,previousClosePrice,preMarketPrice,preMarketChange,preMarketTime,preMarketChangePercent,...}:
  NVDA,188.54,-1.5,-0.789308,192.48,188.12,191.405,190.04,191.8799,3.3399048,2026-02-11T13:49:16.000Z,1.771457,...

Decoding TOON Responses

Use @toon-format/toon to parse responses back to JavaScript/JSON:

import { decode } from "@toon-format/toon";

const response = await fetch("https://stock-prices.on99.app/quotes?symbols=NVDA");
const toonText = await response.text();
const data = decode(toonText);

// data.quotes is an array of quote objects
const quote = data.quotes[0];
console.log(`${quote.symbol}: $${quote.currentPrice}`);

The decoded structure matches JSON—same objects, arrays, and primitives.

Available Data Fields

FieldTypeDescription
------------------------------------------------------------------------------
symbolstringStock ticker symbol
currentPricenumberCurrent trading price
changenumberPrice change from previous close
percentChangenumberPercentage change from previous close
highPricenumberDay's high price
lowPricenumberDay's low price
openPricenumberOpening price
previousClosePricenumberPrevious day's closing price
preMarketPricenumberPre-market trading price
preMarketChangenumberPre-market price change
preMarketTimestring (ISO 8601)Pre-market data timestamp
preMarketChangePercentnumberPre-market percentage change

Usage Guidelines

Multiple Symbols

Query multiple stocks by separating symbols with commas (max 50):

curl "https://stock-prices.on99.app/quotes?symbols=AAPL,GOOGL,MSFT,TSLA,AMZN"

Error Handling

Always check for valid responses. Decode TOON before accessing data:

import { decode } from "@toon-format/toon";

const response = await fetch("https://stock-prices.on99.app/quotes?symbols=NVDA");
const data = decode(await response.text());

if (data.quotes && data.quotes.length > 0) {
    const quote = data.quotes[0];
    console.log(`${quote.symbol}: $${quote.currentPrice}`);
}

Price Analysis

Calculate common metrics:

// Determine if stock is up or down
const isUp = quote.change > 0;
const direction = isUp ? "📈" : "📉";

// Calculate day's range percentage
const rangePct = ((quote.highPrice - quote.lowPrice) / quote.lowPrice) * 100;

// Compare current to open
const vsOpen = quote.currentPrice - quote.openPrice;

Common Use Cases

1. Price Monitoring

import { decode } from "@toon-format/toon";

async function checkPrice(symbol: string) {
    const res = await fetch(`https://stock-prices.on99.app/quotes?symbols=${symbol}`);
    const data = decode(await res.text());
    const quote = data.quotes[0];

    return {
        price: quote.currentPrice,
        change: quote.change,
        changePercent: quote.percentChange,
    };
}

2. Portfolio Tracking

import { decode } from "@toon-format/toon";

async function getPortfolio(symbols: string[]) {
    const symbolString = symbols.join(",");
    const res = await fetch(`https://stock-prices.on99.app/quotes?symbols=${symbolString}`);
    const data = decode(await res.text());

    return data.quotes.map(q => ({
        symbol: q.symbol,
        value: q.currentPrice,
        dailyChange: q.percentChange,
    }));
}

3. Market Summary

import { decode } from "@toon-format/toon";

async function marketSummary(symbols: string[]) {
    const res = await fetch(`https://stock-prices.on99.app/quotes?symbols=${symbols.join(",")}`);
    const data = decode(await res.text());

    const gainers = data.quotes.filter(q => q.change > 0);
    const losers = data.quotes.filter(q => q.change < 0);

    return {
        totalStocks: data.quotes.length,
        gainers: gainers.length,
        losers: losers.length,
        avgChange: data.quotes.reduce((sum, q) => sum + q.percentChange, 0) / data.quotes.length,
    };
}

Popular Stock Symbols

Tech Giants (FAANG+)

  • AAPL - Apple
  • GOOGL - Alphabet (Google)
  • META - Meta (Facebook)
  • AMZN - Amazon
  • NFLX - Netflix
  • MSFT - Microsoft

High-Profile Stocks

  • NVDA - NVIDIA
  • TSLA - Tesla
  • AMD - Advanced Micro Devices
  • INTC - Intel
  • ORCL - Oracle

Indices

  • ^GSPC - S&P 500
  • ^DJI - Dow Jones
  • ^IXIC - NASDAQ

Notes

  • Response format: API returns TOON, not JSON. Use decode() from @toon-format/toon to parse.
  • All prices are in USD
  • Data updates in real-time during market hours
  • Pre-market and after-hours data is available
  • Timestamps are in ISO 8601 format (UTC)
  • Maximum 50 symbols per request

版本历史

共 1 个版本

  • v1.0.1 当前
    2026-03-28 12:14 安全 安全

安全检测

腾讯云安全 (Keen)

安全,无风险
查看报告

腾讯云安全 (Sanbu)

安全,无风险
查看报告

🔗 相关推荐

developer-tools

Agent Browser

matrixy
专为AI智能体优化的无头浏览器自动化CLI,支持无障碍树快照和基于引用的元素选择。
★ 427 📥 118,295
developer-tools

CodeConductor.ai

larsonreever
AI驱动平台,提供快速全栈开发、智能体、工作流自动化及低代码AI集成的可扩展产品创建。
★ 68 📥 180,329
developer-tools

Github

steipete
使用 `gh` CLI 与 GitHub 交互,通过 `gh issue`、`gh pr`、`gh run` 和 `gh api` 管理议题、PR、CI 运行及高级查询。
★ 671 📥 324,337