Backtests, machine learning, and paper trading on real TASI data — with an AI co-pilot that explains every metric in plain language. And every evening at 6 PM AST, the Majlis opens — a free nightly ritual the whole community plays together.
For research, education, and strategy validation. Not investment advice. Tasilab is not licensed by the Saudi Capital Market Authority and does not provide regulated financial services.
AUC 0.497 is essentially noise. Your model isn't predicting better than a coin flip on this stock. That's actually useful — it tells you these features can't forecast next-day direction here, so don't waste a backtest on it. Try different features, or a different time window.
One question about how Saudi markets behaved before, every evening. Answer with your gut — then watch what the record actually did the next morning. Free for everyone, blind to tiers. Built so the whole community plays together.
A live look at what tonight's Maghrib question feels like inside the app. Real TASI data, sealed at 10 AM the next morning.
One question about market history opens every evening and seals at 10:00 the next morning. Answer with your gut — then see what the record actually did.
A dealt hand of pattern cards. Call each one higher or lower, then watch what history did. The crossing line into the Lab is a single tap.
Paste a claim circulating in your group chat. It's judged blind against the record, sealed, then shared as an uncroppable card with the verdict baked in.
Free for everyone · no plan gates · no signup hurdles · played every evening at 6 PM AST
Everything you need to go from strategy idea to logged experiment to live validation — all against real Saudi Exchange data.
One Python SDK. Backtests, ML, and paper trading share the same primitives — every run is reproducible by anyone with your run ID.
from tasilab import Client, SMA, Cross tasi = Client("tsl_live_…") # Five years of real Aramco bars bars = tasi.bars("2222", start="2020-01") # SMA 20/50 crossover, 1% stop loss strategy = Cross(SMA(20), SMA(50), sl=0.01) run = tasi.backtest(strategy, bars, fees="tasi") run.log(name="sma-cross-aramco", pin=True) >>> run.id → run_a3f7c2 >>> run.return_pct → +14.82 >>> run.url → tasilab.com/r/a3f7c2
One token, scoped per environment. Free tier gets 12 backtests / day.
Five years of daily TASI bars. Tickers like 2222, 1120, 7010 — all of Tadawul.
Indicator threshold, MA crossover, or your own sklearn classifier. Optional SL / TP.
Every run gets a permanent ID. Compare side by side. Publish to your profile when ready.
A backtest is only as honest as its assumptions. Tasilab models the parts that wreck naive results — fees, VAT, slippage, trading hours — exactly as Tadawul does.
Daily OHLCV for every listed equity, normalized for splits and dividends.
Modeled exactly per Tadawul's published fee schedule.
Orders only fill when the market is actually open. Sundays through Thursdays.
No real orders are placed. No real money at risk. Full reproducibility.
Start on Free. Upgrade only when you outgrow it. No tiers gating basic mechanics.
Place a paper trade, run a backtest, taste the AI co-pilot.
Real-time data, multi-wallet, AI analytics, parallel backtests.
The full parallel lab. WebSocket feed, unlimited history, deep AI analysis.
Multi-seat workspace with a shared strategy library. For prop desks + academic programs.
The nightly question, your card deck, and your paper portfolio — on iPhone and Android. One calm notification: the Maghrib reminder. Nothing else.
Same account, same ledger — pick up on your phone exactly where the web left off.