NEW · AI EXPLAINS EVERY RUN

Trade with
intelligence.

Backtests, machine learning, and paper trading on real TASI data — with an AI co-pilot that explains every metric in plain language. No PhD required.

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.

Start free $ pip install tasilab
No credit card AI explanations included Full Python SDK
Market closed · All TASI symbols · 5y of bars
Example ML · LOGREG 2222 · 3Y
run_a3f7c2
Out-of-sample (test set)
Accuracy
53.3%
AUC
0.497
Baseline
52.2%
Test rows
182
ROC curve
1 FPR TPR AUC 0.497
Confusion matrix
Pred ↑Pred ↓
Actual ↑
3
1.6%
84
46.2%
Actual ↓
1
0.5%
94
51.6%
Feature importance
return_lag_1
57.7%
rsi_14
17.5%
volume_ratio_20
14.6%
return_lag_5
8.8%
gap
1.4%
AI explains · in plain language

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.

Ask a follow-up about this model… ASK AI
What you get

Build, test, and validate.

Everything you need to go from strategy idea to logged experiment to live validation — all against real Saudi Exchange data.

RUNS · 142
RunEquityReturnAcc
ML LogReg · Aramco (2222) +14.82% 54.2%
IND SMA 20/50 · STC (7010) +4.18%
IND RSI 14 · SABIC (2010) −1.24%
ML RandomForest · Al Rajhi +8.41% 52.1%
IND MACD · Maaden (1211) +2.97%
ML XGBoost · Index ETF +11.05% 53.6%
01

Experiment tracking

Every backtest — indicator or ML — logged with parameters, metrics, and trades. Filter by type, pin highlights, and compare runs side by side.

Runs dashboardIndicator + ML typesHighlights
ML Predictions · 2222 54.2% acc
Mon
62%
Tue
71%
Wed
34%
Thu
58%
Fri
79%
Sat
45%
Sun
68%
P(down)0.50P(up)
02

ML backtests

Train a scikit-learn classifier offline, run it against real TASI bars, and log predictions with out-of-sample accuracy as a first-class experiment.

sklearn compatibleTrain / test splitLogReg starter
IND SMA 20/50 · Cross strategy
SMA 20 SMA 50 Price +4.18%
03

Indicator backtests

Seven pure-numpy indicators, threshold or moving-average-crossover strategies, optional stop-loss and take-profit. Every run benchmarked against buy-and-hold.

SMA · EMA · RSIMACD · BollingerATR · Stochastic
FILLED 14:32:07 AST
BUY · Market
100 × 2222 @ 27.45
Notional2,745.00
Commission (0.155%)4.255
VAT (15%)0.638
Total cost2,749.89
2222 · L2 · 15m delay LIVE
27.5012,400
27.488,200
27.463,100
27.45+0.18 (0.66%)
27.445,400
27.429,100
27.4014,800
04

Paper trading

Market and limit orders against live Saudi Exchange quotes. Real TASI fees, real slippage by volume, real trading hours. Telegram alerts when your orders fill.

0.155% + 15% VATMarket + limitTelegram fills
How it works

From idea to logged experiment in four lines.

One Python SDK. Backtests, ML, and paper trading share the same primitives — every run is reproducible by anyone with your run ID.

backtest_aramco.py ● python 3.12
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
01

Authenticate

One token, scoped per environment. Free tier gets 12 backtests / day.

02

Pick a symbol + window

Five years of daily TASI bars. Tickers like 2222, 1120, 7010 — all of Tadawul.

03

Define a strategy

Indicator threshold, MA crossover, or your own sklearn classifier. Optional SL / TP.

04

Run, log, share

Every run gets a permanent ID. Compare side by side. Publish to your profile when ready.

Built on real data

Real bars. Real fees.
Real consequences.

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.

5y
Historical TASI bars

Daily OHLCV for every listed equity, normalized for splits and dividends.

0.155%
Commission + 15% VAT

Modeled exactly per Tadawul's published fee schedule.

10–15h AST
Tadawul trading hours

Orders only fill when the market is actually open. Sundays through Thursdays.

100%
Sim-only

No real orders are placed. No real money at risk. Full reproducibility.

Tasilab is a simulation-only paper-trading environment. No real orders are placed on the Saudi Exchange. Tasilab is not licensed by the Capital Market Authority and does not provide investment advice.
Pricing

Transparent pricing.

Start on Free. Upgrade only when you outgrow it. No tiers gating basic mechanics.

Free

Place a paper trade, run a backtest, feel the product.

SAR 0 forever
.
  • SAR 100,000 paper wallet
  • 15-min delayed quotes
  • 1 year of history
  • 3 strategy runs
  • 100 API requests / day
Start free
Starter

Real-time data, no commitment. For hobbyists and students.

SAR 79 / month
or 790 SAR/yr · 2 months free
  • Real-time TASI quotes
  • 3 years of history
  • Market + limit orders
  • Unlimited strategy runs
  • 500 API / day · CSV export
Start trial
Pro

The full parallel lab. 5 wallets, 5 concurrent backtests, unlimited history.

SAR 249 / month
or 2,490 SAR/yr · 2 months free
  • 5 wallets · unlimited positions
  • 5 concurrent backtests
  • Unlimited history + intraday
  • WebSocket + STOP/OCO orders
  • 100 AI analytics / month
Start trial