Use Case
Scalping Strategies
M1 and M5 indicators, real-time tick data, live spread monitoring, and sub-100ms response times — everything a scalper needs in a single API.
The Challenge
Scalping strategies live and die by milliseconds. You need indicators calculated on M1 and M5 candles refreshed every few seconds, real-time spread data to avoid getting eaten by costs, and tick-level granularity for precise entry timing. Most financial APIs are built for swing traders — they update too slowly, lack tick data, and do not expose spread information at all.
How TickAtlas Solves It
M1/M5 Indicators
All 42 indicators calculated on 1-minute and 5-minute candles. RSI(14) on M1 refreshes with every new bar.
Real-Time Tick Data
Raw bid/ask tick data via /v1/ticks. See every price movement for precise entry and exit timing.
Live Spread Monitoring
Current and average spread via /v1/spread. Avoid scalping during high-spread periods that destroy profitability.
Sub-100ms Response
Redis-cached data with 2-second TTL. Typical response times under 50ms for real-time endpoints.
Stochastic + RSI Confluence
Fetch multiple oscillators in one /v1/multi call to confirm scalp entries with indicator confluence.
600 req/min Rate Limit
Pro plan supports 10 requests per second — enough to poll indicators continuously across multiple pairs.
Key Endpoints
GET /v1/indicator?timeframe=M1&name=rsi 1-minute RSI for rapid overbought/oversold detection
GET /v1/ticks?symbol=EURUSD&limit=100 Latest 100 ticks with bid, ask, and timestamp
GET /v1/spread?symbol=EURUSD Current spread, average spread, and spread percentile
GET /v1/multi?symbols=EURUSD,GBPUSD&indicators=rsi,stochastic Batch multiple pairs and indicators in a single call
Scalping Bot Architecture
┌─────────────────────────────────────────────────────────┐
│ Scalping Bot │
│ ┌─────────────┐ ┌─────────────┐ ┌───────────────┐ │
│ │ Tick Monitor │ │ Indicator │ │ Spread Filter │ │
│ │ (100ms poll) │ │ Poller (2s) │ │ (threshold) │ │
│ └──────┬──────┘ └──────┬──────┘ └──────┬────────┘ │
│ │ │ │ │
│ └────────┬───────┴────────┬───────┘ │
│ ▼ │
│ ┌──────────────┐ │
│ │ Signal Engine │──▶ Execute via Broker API │
│ └──────────────┘ │
└─────────────────────────────────────────────────────────┘
│ ▲
▼ │
┌──────────────────────┐
│ TickAtlas API │
│ /v1/ticks │
│ /v1/indicator (M1) │
│ /v1/spread │
└──────────────────────┘ Code Example
import requests, time
API_KEY = "your_api_key"
BASE = "https://tickatlas.com/v1"
headers = {"X-API-Key": API_KEY}
SYMBOL = "EURUSD"
def check_scalp_entry():
# Check spread first — abort if too wide
spread = requests.get(f"{BASE}/spread",
headers=headers, params={"symbol": SYMBOL}).json()
if spread["data"]["current_spread_pips"] > 1.5:
return None # Spread too wide for scalping
# Get M1 RSI and Stochastic
rsi = requests.get(f"{BASE}/indicator", headers=headers,
params={"symbol": SYMBOL, "name": "rsi", "timeframe": "M1"}).json()
stoch = requests.get(f"{BASE}/indicator", headers=headers,
params={"symbol": SYMBOL, "name": "stochastic", "timeframe": "M1"}).json()
rsi_val = rsi["data"]["value"]
stoch_k = stoch["data"]["k"]
# Confluence: both oversold
if rsi_val < 30 and stoch_k < 20:
return "BUY"
# Confluence: both overbought
if rsi_val > 70 and stoch_k > 80:
return "SELL"
return None
# Poll every 2 seconds
while True:
signal = check_scalp_entry()
if signal:
print(f"SCALP SIGNAL: {signal} {SYMBOL}")
# Execute via broker API...
time.sleep(2) Recommended Plan
Pro Plan
$79/moScalping requires high request volumes. The Pro plan gives you 100,000 requests/day and 600 req/min — enough to continuously poll M1 indicators, spreads, and ticks across multiple pairs.
- ✓ /v1/ticks for tick-level precision
- ✓ /v1/spread for cost management
- ✓ M1/M5 indicators refreshed every bar
- ✓ 600 req/min = 10 requests per second
Build Your Scalping Edge
14-day free trial. Test M1 indicators, tick data, and spreads with zero commitment.