Use Case

Swing Trading

Multi-indicator confluence on H4 and D1 timeframes, rule-based market summaries with trend bias, and historical data for backtesting your swing strategies.

The Challenge

Swing traders hold positions for days to weeks. You need reliable H4 and D1 indicators, the ability to confirm setups with multiple indicators simultaneously, and a way to quickly assess overall market sentiment. Manually checking RSI, MACD, Bollinger Bands, and ADX across a watchlist of 20+ pairs is tedious and error-prone — and calculating these indicators yourself introduces implementation bugs that can cost real money.

How TickAtlas Solves It

H4/D1 Indicator Suite

All 42 indicators on H4 and D1 timeframes. EMA crossovers, RSI divergence, MACD histogram shifts — all pre-calculated.

Multi-Indicator Confluence

Fetch RSI + MACD + ADX + Bollinger Bands in a single /v1/multi call. Confirm setups with 3-4 indicator agreement.

Market Summary

/v1/summary gives you a natural-language market assessment with bullish/bearish bias and confidence percentage.

Historical Data for Backtesting

Up to 1000 candles of historical OHLCV and indicator values. Test your swing strategy against real data before going live.

Key Endpoints

Swing Trading System Architecture

architecture
┌─────────────────────────────────────────────────────────────┐
│                   Swing Trading System                      │
│                                                             │
│  ┌──────────────┐    ┌──────────────┐    ┌──────────────┐   │
│  │ Daily Scan   │    │ Confluence   │    │ Position     │   │
│  │ /v1/screener │───▶│ /v1/multi    │───▶│ Manager      │   │
│  │ (D1 + H4)   │    │ (RSI+MACD+  │    │ (Entry/Exit) │   │
│  └──────────────┘    │  ADX+BB)    │    └──────┬───────┘   │
│                      └──────────────┘           │           │
│  ┌──────────────┐                               ▼           │
│  │ Summary      │───────────────────▶  Trade Decision      │
│  │ /v1/summary  │    Sentiment                  │           │
│  └──────────────┘    Confirmation               ▼           │
│                                          Broker Order API   │
└─────────────────────────────────────────────────────────────┘

Code Example

python
import requests

API_KEY = "your_api_key"
BASE = "https://tickatlas.com/v1"
headers = {"X-API-Key": API_KEY}

def analyze_swing_setup(symbol):
    # Get the rule-based summary for overall bias. /v1/summary defaults to H1,
    # so ask for D1 explicitly to match the confluence check below.
    summary = requests.get(f"{BASE}/summary", headers=headers,
        params={"symbol": symbol, "timeframe": "D1"}).json()

    # Multi-indicator confluence on D1. /v1/multi nests the per-symbol map
    # under data.data, and every indicator is a bare float keyed by its
    # canonical name (RSI_14, MACD_hist, ADX ...).
    multi = requests.get(f"{BASE}/multi", headers=headers,
        params={
            "symbols": symbol,
            "indicators": "RSI_14,MACD_hist,ADX",
            "timeframe": "D1"
        }).json()

    indicators = multi["data"]["data"][symbol]
    rsi = indicators["RSI_14"]
    macd_hist = indicators["MACD_hist"]
    adx = indicators["ADX"]

    # Band position comes from the summary's key_values, which carry bid
    # alongside bb_upper / bb_lower on the summary timeframe.
    kv = summary["data"]["key_values"]
    bb_position = ((kv["bid"] - kv["bb_lower"])
                   / (kv["bb_upper"] - kv["bb_lower"]))

    # Confluence scoring
    bullish_signals = 0
    if rsi > 50 and rsi < 70: bullish_signals += 1
    if macd_hist > 0: bullish_signals += 1
    if adx > 25: bullish_signals += 1  # Strong trend
    if bb_position < 0.5: bullish_signals += 1  # Room to run

    bias = summary["data"]["bias"]
    confidence = summary["data"]["confidence"]

    return {
        "symbol": symbol,
        "bias": bias,
        "confidence": confidence,
        "bullish_signals": bullish_signals,
        "trade": bullish_signals >= 3 and bias == "bullish"
    }

# Scan watchlist
watchlist = ["EURUSD", "GBPUSD", "AUDUSD", "USDJPY", "XAUUSD"]
for sym in watchlist:
    result = analyze_swing_setup(sym)
    if result["trade"]:
        print(f"SWING SETUP: {sym} ({result['bullish_signals']}/4 conditions, bias: {result['bias']})")

Recommended Plan

Starter Plan

$29/mo

Swing trading does not require high-frequency polling. 10,000 requests/day is more than enough for daily scans across a 50-pair watchlist with multi-indicator checks.

  • ✓ Every endpoint but raw ticks, including /v1/summary and /v1/screener
  • ✓ Indicator history and OHLCV for backtesting (same depth on every plan)
  • ✓ 3 API keys for dev, staging, prod
View all plans →

Find Your Next Swing Trade

Start free with $2.50 of API credit. Scan for confluence setups with a rule-based trend bias.