Candlery extracts trading signals from corporate filings.

Deterministic translation layers bridging unstructured events and zero-hallucination trade execution.

Or review the API documentation
Candlery Cockpit (Session)
PnL+$1,452.80
Win Rate65.8%
Avg Latency4.2ms
ingestion_firewall.log
LIVE STREAM
HOW IT WORKS

The Execution Pipeline

How we process unstructured reality into definitive execution signals.

Raw Ingestion

Sub-millisecond scraping

NLP Parsing

Semantic extraction

Risk Firewall

Rule-based filtering

Execution Compiler

Automated routing

STAGE 1 OPERATIONS

1. Raw Ingestion

Distributed AWS Lambda clusters poll SEC EDGAR and Indian BSE/NSE feeds. We intercept announcements within 50ms of the raw document hitting the Exchange servers, discarding non-material disclosures instantly.

SYSTEM METRICS / TELEMETRY
Latency42ms average
Sources monitoredEDGAR, NSE, BSE
Format supportPDF, HTML, XBRL, Plain Text
Throughput180+ events/sec
RADICAL SYSTEM SAFETY

The Risk Firewall

Preventing hallucination risk using hard-coded parameters, drawdown checks, and historical analogs.

Firewall Gatekeeper

Test how signals get filtered

Select a scenario payload to run through the firewall validator:

RULE_01Drawdown Cap
PENDING

Evaluates prospective trade size against active portfolio drawdown limit (<2.5%).

exposure_limit <= portfolio.max_drawdown
RULE_02NLP Confidence Threshold
PENDING

Rejects any NLP parsed intent with confidence metrics below the hard boundary.

signal.nlp_confidence >= 0.95
RULE_03Spread Liquidity Bounds
PENDING

Validates target asset bid-ask spreads to prevent slip damage during market orders.

asset.avg_spread <= MAX_SLIPPAGE_TOLERANCE
RULE_04Precedence Matcher
PENDING

Verifies the extracted signal against historical corporate announcement outcomes.

db.find_historical_analog(signal.type, signal.intent)
RULE_05Volatility Circuit Breaker
PENDING

Hhalts routing if target asset trading volatility is in top 1% standard deviations.

asset.volatility < asset.volatility_rolling_avg * 2.5
RULE_06Slippage Friction Cap
PENDING

Cancels trade if combined transaction taxes + brokerage exceeds alpha expectation.

alpha_expected > transaction.estimated_friction

Backtest Performance

Empirical walk-forward returns vs Benchmark (Nifty 50)

SHARPE RATIO:2.42
CAGR:38.6%
202120222023202420252026
YEAR2026
CANDLERY EVENT-DRIFT
+412%
NIFTY 50 INDEX
+82%
* Simulated walk-forward returns after accounting for transaction taxes (STT), slippage margins, and exchange execution fees.
LIVE ANNOUNCEMENTS

Asset & Event Scanner

Real-time extraction grid monitoring regulatory releases and mapping approved derivatives targets.

TICKERSECTORFILING TYPENLP POLARITYFIREWALLTARGET EXECUTION CONTRACT
RELIANCEEnergy10-Q+0.78PASSRELIANCE_FUT [LONG]
HDFCBANKBanking & Finance10-K+0.62PASSHDFCBANK_FUT [LONG]
INFOSYSIT & Tech8-K-0.84HALTBLOCKED_CONFIDENCE
TATAMOTORSAuto & Manufacturing8-K-0.45PASSTATAMOTORS_950_PUT
TCSIT & Tech10-Q+0.12PASSTCS_FUT [LONG]
ICICIBANKBanking & Finance10-Q-0.68PASSICICIBANK_1120_PUT
WIPROIT & Tech10-K-0.22HALTBLOCKED_CONFIDENCE
MARUTIAuto & Manufacturing10-Q+0.55PASSMARUTI_FUT [LONG]
DEVELOPER PLAYGROUND

API Sandbox

Connect your trading models in minutes. Designed for quantitative developers.

123
curl -X GET "https://api.candlery.in/v1/signals?ticker=RELIANCE" \
  -H "Authorization: Bearer sk_live_8f7b...9e" \
  -H "Accept: application/json"
TERMINAL OUTPUT

Click "Execute" above to send the handshake request and inspect the response payload.

REAL-TIME MONITORING

System Telemetry

Active tracking of pipeline metrics, average latency, and API node operational status.

INGESTED DISCLOSURES
148,204
Cumulative parsed today
P50 INGESTION LATENCY
41.8msLIVE
RISK FIREWALL UPTIME
99.998%
Active circuit breakers: 0
ACTIVE CLIENT ENDPOINTS
18 / 20
Bandwidth allocations: 100%

Our first system lost money. We published the audit.

Most AI startups hide their failures. We documented ours in the "Null Result" paper. We rebuilt the infrastructure from scratch to enforce radical quantitative honesty.

Read the Null Result Research
validation_firewall.py
"token-keyword">def validate_signal(signal_data):
    """
    Ensures signal passes the Null Result criteria.
    """
    "token-keyword">if signal_data.confidence < 0.95:
        "token-keyword">raise HallucinationError("Confidence too low")
        
    "token-keyword">if "token-keyword">not verify_historical_precedence(signal_data):
        "token-keyword">raise PrecedenceError("No historical analog")
        
    "token-keyword">return execution_compiler.build(signal_data)