Skip to main content
GET
/
api
/
v1
/
analysis
/
signals
Get Trading Signals
curl --request GET \
  --url https://api.example.com/api/v1/analysis/signals
{
  "signals": [
    {
      "symbol": "BTC/USDT",
      "exchange": "binance",
      "signal_type": "BUY",
      "strength": "STRONG",
      "price": 43250.50,
      "reason": "RSI indicates oversold conditions; Price above moving averages (bullish trend); Price near lower Bollinger Band",
      "confidence": 0.85,
      "timestamp": "2026-03-03T10:30:00Z",
      "indicators_used": ["RSI", "SMA", "Bollinger Bands"]
    },
    {
      "symbol": "ETH/USDT",
      "exchange": "binance",
      "signal_type": "HOLD",
      "strength": "WEAK",
      "price": 2350.75,
      "reason": "Neutral market conditions",
      "confidence": 0.5,
      "timestamp": "2026-03-03T10:30:00Z",
      "indicators_used": ["RSI", "SMA"]
    }
  ],
  "count": 2,
  "timestamp": "2026-03-03T10:30:05Z"
}

Overview

The trading signals endpoint analyzes market data using multiple technical indicators to generate actionable BUY, SELL, or HOLD signals. Signals are generated by combining RSI, Moving Averages, MACD, and Bollinger Bands analysis.

Query Parameters

symbol
string
The trading pair symbol to analyze (e.g., “BTC/USDT”). If omitted, returns signals for all active trading pairs.Example: BTC/USDT
exchange
string
The exchange name where the symbol is traded (e.g., “binance”). Required if symbol is specified.Example: binance
timeframe
string
default:"1h"
The candlestick timeframe for analysis. Common values include:
  • 1m - 1 minute
  • 5m - 5 minutes
  • 15m - 15 minutes
  • 1h - 1 hour (default)
  • 4h - 4 hours
  • 1d - 1 day
min_confidence
number
default:"0.6"
Minimum confidence threshold for signals (0.0 to 1.0). Only signals with confidence at or above this threshold will be returned.Example: 0.7 for higher quality signals

Response

signals
TradingSignal[]
Array of trading signals generated from technical analysis.
count
integer
required
The number of signals returned in the response.
timestamp
string
required
ISO 8601 timestamp when the response was generated.

Signal Generation Logic

Signals are generated by analyzing multiple technical indicators:RSI Analysis:
  • RSI < 30: Oversold (BUY signal)
  • RSI > 70: Overbought (SELL signal)
Moving Average Analysis:
  • Price > SMA20 > SMA50: Bullish trend (BUY)
  • Price < SMA20 < SMA50: Bearish trend (SELL)
Bollinger Bands:
  • Price near lower band: Potential bounce (BUY)
  • Price near upper band: Potential reversal (SELL)
The final signal aggregates these indicators with weighted confidence scoring.

Examples

curl -X GET "https://api.neuratrade.com/api/v1/analysis/signals?symbol=BTC/USDT&exchange=binance&timeframe=1h" \
  -H "Authorization: Bearer YOUR_API_KEY"
{
  "signals": [
    {
      "symbol": "BTC/USDT",
      "exchange": "binance",
      "signal_type": "BUY",
      "strength": "STRONG",
      "price": 43250.50,
      "reason": "RSI indicates oversold conditions; Price above moving averages (bullish trend); Price near lower Bollinger Band",
      "confidence": 0.85,
      "timestamp": "2026-03-03T10:30:00Z",
      "indicators_used": ["RSI", "SMA", "Bollinger Bands"]
    },
    {
      "symbol": "ETH/USDT",
      "exchange": "binance",
      "signal_type": "HOLD",
      "strength": "WEAK",
      "price": 2350.75,
      "reason": "Neutral market conditions",
      "confidence": 0.5,
      "timestamp": "2026-03-03T10:30:00Z",
      "indicators_used": ["RSI", "SMA"]
    }
  ],
  "count": 2,
  "timestamp": "2026-03-03T10:30:05Z"
}

Error Responses

error
string
Error message describing what went wrong.
{
  "error": "symbol parameter is required"
}

Best Practices

Trading Signals Are Not Financial AdviceThese signals are generated by automated technical analysis and should not be considered financial advice. Always:
  • Perform your own research
  • Consider multiple data sources
  • Implement proper risk management
  • Never trade more than you can afford to lose
Optimal Usage
  • Use min_confidence=0.7 or higher for higher quality signals
  • Combine multiple timeframes for better confirmation
  • Monitor signal changes over time rather than acting on single signals
  • Consider signal strength in addition to signal type

Build docs developers (and LLMs) love