Symbol
BTC/USDT ETH/USDT AAPL EUR/USD
Time & Style
Dimensions
Indicators
Options
Hide Toolbars
Hide Legend
AI Enhancement
Optimize for AI Vision Analysis
Preview

Configure options and click Generate

Generating...

API URL

Your API Keys

Name Key Status Last Used Requests Actions
No API keys yet. Create one to get started.
Free
$0/month
Perfect for testing and small projects
  • 50 charts/month
  • 10 requests/minute
  • Standard resolution
Enterprise
$99/month
For high-volume applications
  • Unlimited charts
  • 300 requests/minute
  • 4K resolution
  • Priority support

Authentication

All API requests require authentication via an API key. You can provide your key in two ways:

MethodExample
Header (recommended)x-api-key: your_api_key
Query Parameter?api_key=your_api_key
curl -H "x-api-key: YOUR_API_KEY" \
  "https://your-domain.run.app/v1/tradingview/advanced-chart?symbol=BINANCE:BTCUSDT"

🤖 AI Enhancement

⚠️ Breaking Change: AI enhancement is now enabled by default on all endpoints. Charts are automatically optimized for AI vision models (GPT-4V, Claude Vision, etc.). To get raw screenshots, set enhance=false.

All chart endpoints apply AI-optimized image post-processing by default to enhance clarity, contrast, and readability for vision models. The enhancement uses Sharp.js to apply histogram normalization, contrast adjustment, edge sharpening, and brightness optimization.

Enhancement Presets

PresetOptimized ForDescription
vision-llm DEFAULT GPT-4V, Claude Vision, Gemini 1.3x contrast boost, edge enhancement, sharpening (sigma: 1.2). Best for general AI vision analysis.
pattern-detection Candlestick patterns, chart formations 1.5x contrast, 1.3x saturation, strong edge detection. Emphasizes candle patterns, support/resistance.
technical-analysis Indicators, oscillators, trend lines 1.4x contrast, 2.0x sharpening. Ultra-sharp for reading RSI, MACD crossovers, and indicator values.
default General purpose 1.2x contrast, moderate sharpening (sigma: 1.0). Balanced enhancement for mixed use cases.
ai-trading SMC/ICT analysis, trading bots 1.45x contrast, gamma correction, CLAHE local contrast, OCR optimization. Best for automated trading systems.
machine-vision NEW GPT-4o, Claude 3.5, ML models 3-layer AI optimization: Retina rendering (3x scale, 4K output), neon candles (#00FF00/#FF0000) on black, OpenCV sharpening kernel. Best for object detection & segmentation.
minimal No processing Returns raw TradingView screenshot with zero post-processing. Same as enhance=false.

Theme-Aware Processing

Enhancement automatically adapts to chart theme:

  • Dark theme: Full contrast boost (1.0x multiplier) - improves candle visibility against dark background
  • Light theme: Reduced contrast boost (0.9x multiplier) - baseline contrast already high, prevents over-saturation
  • Both themes: Equal sharpening and edge enhancement for crisp patterns

Performance Impact

Enhancement adds 200-400ms to response time. Total response time: 3.5-5.5s (screenshot: 3-5s + enhancement: 0.2-0.4s). Set enhance=false to disable and reduce latency.

Usage Examples

Default (auto-enhanced with vision-llm):

curl -H "x-api-key: YOUR_KEY" \
  "https://your-domain.run.app/v1/tradingview/advanced-chart?\
symbol=BINANCE:BTCUSDT&interval=D" \
  -o chart.png

# AI enhancement applied automatically (vision-llm preset)

Pattern detection (high contrast for candlestick analysis):

curl -H "x-api-key: YOUR_KEY" \
  "https://your-domain.run.app/v1/tradingview/advanced-chart?\
symbol=NASDAQ:AAPL&enhance_preset=pattern-detection&studies=BB,Volume" \
  -o patterns.png

Technical analysis (ultra-sharp for indicator readings):

curl -H "x-api-key: YOUR_KEY" \
  "https://your-domain.run.app/v1/tradingview/advanced-chart?\
symbol=BINANCE:BTCUSDT&enhance_preset=technical-analysis&studies=RSI,MACD" \
  -o technical.png

🆕 Machine Vision (best for GPT-4o/Claude 3.5):

curl -H "x-api-key: YOUR_KEY" \
  "https://your-domain.run.app/v1/tradingview/advanced-chart?\
symbol=BINANCE:BTCUSDT&enhance=true&enhance_preset=machine-vision" \
  -o ai_optimized.png

# Output: 3840x2160 (4K) with:
# - Pure black background (#000000)
# - Neon green/red candles (#00FF00/#FF0000)
# - OpenCV sharpening for edge detection
# - OCR-optimized axis labels

Opt-out (disable enhancement for raw screenshots):

curl -H "x-api-key: YOUR_KEY" \
  "https://your-domain.run.app/v1/tradingview/advanced-chart?\
symbol=BINANCE:BTCUSDT&enhance=false" \
  -o raw.png

# Or use minimal preset:
# &enhance_preset=minimal

Benefits for AI Analysis

FeatureRaw (enhance=false)vision-llmmachine-vision
ResolutionCustomCustom3840×2160 (4K)
Candle colorsTradingView defaultTradingView defaultNeon #00FF00/#FF0000
BackgroundTheme-basedTheme-basedPure black #000000
Edge sharpnessSoftSharp (σ=1.2)OpenCV kernel
Best forHuman viewingGeneral AI analysisObject detection, ML training

💡 Tip: Use enhance_preset=machine-vision for the best GPT-4o/Claude 3.5 analysis accuracy. Use enhance=false to minimize latency if post-processing in your own pipeline.

GET /v1/tradingview/advanced-chart

Full-featured TradingView chart with indicators and customization options.

Parameters

ParameterTypeDefaultDescription
symbolstringBINANCE:BTCUSDTTrading pair (e.g., NASDAQ:AAPL, FX:EURUSD)
intervalstringD1, 5, 15, 30, 60, 120, 240, D, W, M
themestringdarkdark, light
stylestring1Chart style: 1=Candles, 2=Line, 3=Area, 4=Bars, 5=Heikin Ashi, 6=Hollow Candles, 7=Baseline, 8=High-Low, 9=Line w/ Markers
widthinteger800Image width in pixels (100-4096)
heightinteger600Image height in pixels (100-4096)
timezonestringEtc/UTCTimezone (e.g., America/New_York)
studiesstringComma-separated: RSI, MACD, BB, MA, EMA, VWAP, ATR, StochRSI, IchimokuCloud, Volume
hide_top_toolbarstringtrueHide top toolbar (true/false)
hide_side_toolbarstringtrueHide side toolbar (true/false)
hide_legendstringtrueHide legend (true/false)
show_gridstringtrueShow grid lines (true/false)
scale_positionstringrightPrice scale: left, right, no
scale_modestring00=Normal, 1=Percentage, 2=Indexed to 100, 3=Logarithmic
formatstringpngOutput format: png, jpeg
enhancebooleantrueAI enhancement ON by default. Set to false to disable.
enhance_presetstringvision-llmPreset: minimal, default, vision-llm, pattern-detection, technical-analysis, ai-trading, machine-vision

⚠️ Breaking Change: AI enhancement is now enabled by default. To get raw screenshots, set enhance=false.

Example

curl -H "x-api-key: YOUR_API_KEY" \
  "https://your-domain.run.app/v1/tradingview/advanced-chart?\
symbol=BINANCE:BTCUSDT&interval=240&theme=dark&\
width=1200&height=800&studies=RSI,MACD,BB" \
  -o chart.png

GET /v1/tradingview/mini-chart

Simple, compact price chart for embedding or quick views.

Parameters

ParameterTypeDefaultDescription
symbolstringBINANCE:BTCUSDTTrading pair
intervalstring1DDate range: 1D, 1W, 1M, 3M, 12M, 60M, ALL
themestringdarkdark, light
widthinteger400Image width (100-2000)
heightinteger300Image height (100-2000)
formatstringpngpng, jpeg
enhancebooleantrueAI enhancement (set false to disable)
enhance_presetstringvision-llmEnhancement preset

⚠️ Breaking Change: AI enhancement is now enabled by default. To get raw screenshots, set enhance=false.

Example

curl -H "x-api-key: YOUR_API_KEY" \
  "https://your-domain.run.app/v1/tradingview/mini-chart?\
symbol=NASDAQ:AAPL&interval=1M&theme=light" \
  -o mini.png

GET /v1/tradingview/symbol-overview

Symbol information card with price, change percentage, and mini chart.

Parameters

ParameterTypeDefaultDescription
symbolstringBINANCE:BTCUSDTTrading pair
themestringdarkdark, light
widthinteger400Image width (100-2000)
heightinteger200Image height (100-2000)
formatstringpngpng, jpeg
enhancebooleantrueAI enhancement (set false to disable)
enhance_presetstringvision-llmEnhancement preset

⚠️ Breaking Change: AI enhancement is now enabled by default. To get raw screenshots, set enhance=false.

POST /v2/tradingview/layout-chart/:layoutId

Capture your saved TradingView chart layouts. Requires TradingView Pro session cookies.

Headers

HeaderRequiredDescription
x-api-keyYesYour API key
tradingview-session-idYesTradingView session cookie
tradingview-session-id-signYesTradingView session signature

Body Parameters (JSON)

ParameterTypeDefaultDescription
symbolstring-Override symbol (optional)
intervalstring-Override interval (optional)
widthinteger1200Image width
heightinteger800Image height
formatstringpngpng, jpeg

Symbol Reference

Symbols use the format EXCHANGE:SYMBOL. Here are common examples:

ExchangeExample Symbols
BinanceBINANCE:BTCUSDT, BINANCE:ETHUSDT, BINANCE:SOLUSDT
CoinbaseCOINBASE:BTCUSD, COINBASE:ETHUSD
NASDAQNASDAQ:AAPL, NASDAQ:GOOGL, NASDAQ:MSFT, NASDAQ:TSLA, NASDAQ:NVDA
NYSENYSE:IBM, NYSE:KO, NYSE:DIS, NYSE:BA
AMEX (ETFs)AMEX:SPY, AMEX:QQQ, AMEX:IWM, AMEX:GLD
ForexFX:EURUSD, FX:GBPUSD, FX:USDJPY, FX:AUDUSD
Crypto IndexCRYPTOCAP:BTC.D, CRYPTOCAP:TOTAL, CRYPTOCAP:TOTAL2
FuturesCME:ES1!, CME:NQ1!, CME:GC1!, NYMEX:CL1!
IndicesTVC:DXY, TVC:US10Y, TVC:VIX, SP:SPX

Technical Indicators

Pass indicators as a comma-separated list in the studies parameter.

StudyDescription
RSIRelative Strength Index - momentum oscillator (0-100)
MACDMoving Average Convergence Divergence - trend/momentum
BBBollinger Bands - volatility bands around price
MASimple Moving Average
EMAExponential Moving Average
VWAPVolume Weighted Average Price
ATRAverage True Range - volatility indicator
StochRSIStochastic RSI - momentum oscillator
IchimokuCloudIchimoku Cloud - support/resistance system
VolumeVolume bars
?studies=RSI,MACD,BB,Volume

Code Examples

Python

import requests

API_KEY = "your_api_key"
BASE_URL = "https://your-domain.run.app"

response = requests.get(
    f"{BASE_URL}/v1/tradingview/advanced-chart",
    headers={"x-api-key": API_KEY},
    params={
        "symbol": "BINANCE:BTCUSDT",
        "interval": "240",
        "theme": "dark",
        "studies": "RSI,MACD",
        "width": 1200,
        "height": 800
    }
)

with open("chart.png", "wb") as f:
    f.write(response.content)

JavaScript / Node.js

const fs = require('fs');

const API_KEY = 'your_api_key';
const BASE_URL = 'https://your-domain.run.app';

const params = new URLSearchParams({
  symbol: 'BINANCE:BTCUSDT',
  interval: '240',
  theme: 'dark',
  studies: 'RSI,MACD',
  width: 1200,
  height: 800
});

fetch(`${BASE_URL}/v1/tradingview/advanced-chart?${params}`, {
  headers: { 'x-api-key': API_KEY }
})
  .then(res => res.arrayBuffer())
  .then(buf => fs.writeFileSync('chart.png', Buffer.from(buf)));

cURL Examples

# BTC 4-hour chart with indicators
curl -H "x-api-key: YOUR_API_KEY" \
  "https://your-domain.run.app/v1/tradingview/advanced-chart?\
symbol=BINANCE:BTCUSDT&interval=240&studies=RSI,MACD,BB&width=1600&height=900" \
  -o btc_4h.png

# Stock chart (Apple daily)
curl -H "x-api-key: YOUR_API_KEY" \
  "https://your-domain.run.app/v1/tradingview/advanced-chart?\
symbol=NASDAQ:AAPL&interval=D&theme=light&studies=Volume,MA" \
  -o aapl.png

# Forex line chart
curl -H "x-api-key: YOUR_API_KEY" \
  "https://your-domain.run.app/v1/tradingview/advanced-chart?\
symbol=FX:EURUSD&interval=60&style=2" \
  -o eurusd.png

# AI-optimized for trading automation (no grid, high contrast, OCR-optimized)
curl -H "x-api-key: YOUR_API_KEY" \
  "https://your-domain.run.app/v1/tradingview/advanced-chart?\
symbol=BINANCE:BTCUSDT&enhance=true&enhance_preset=ai-trading" \
  -o btc_ai.png

Error Responses

StatusErrorDescription
401MISSING_API_KEYNo API key provided
403INVALID_API_KEYAPI key is invalid or expired
400Validation ErrorInvalid parameter value
429Rate LimitToo many requests
500Chart Generation ErrorFailed to render chart
// Example error response
{
  "error": "Validation Error",
  "messages": [
    "\"interval\" must be one of [1, 5, 15, 30, 60, 120, 240, D, W, M]"
  ]
}