Deriv Bot — Build a Trading Bot Without Code (2026)
Want to run an automated trading bot on Volatility 75 Index without writing a single line of code? Deriv Bot is the drag-and-drop builder that lets you do exactly that. This guide takes you from zero to a working RSI bot in under 30 minutes, with proper risk management baked in from the start.
🇿🇦 Why This Matters for SA Traders
Deriv operates under FSCA FSP licence 50885 — fully authorised to provide financial services to South African residents. You get an actual regulated broker, not an offshore unknown. ZAR conversions throughout this guide use ~R18.50/USD.
What You’ll Build
By the end of this tutorial, you’ll have a running bot that:
- Trades Volatility 75 Index (24/7, no weekend gaps)
- Uses RSI indicator to identify oversold/overbought zones
- Risks only 2% per trade (auto-calculated)
- Stops automatically if daily loss hits 5%
- Pauses after 3 consecutive losses (cooldown)
- Logs every trade for analysis
What You Need Before Starting
- Free Deriv account (demo is enough to follow this guide)
- 30 minutes of uninterrupted time
- A web browser (Chrome, Firefox, Safari, Edge — all work)
- Basic understanding of what RSI is (we explain below if you don’t)
Don’t have a Deriv account yet? Open one in 60 seconds (free). You’ll get $10,000 virtual (~R185,000) to test with.
Step 1: Access Deriv Bot
Log into Deriv
Go to app.deriv.com and log in. On Trader’s Hub, click “Deriv Bot” under platforms. The bot builder opens in a new tab.
Switch to Demo Account
Top right corner shows your account. Make sure you’re on Demo, not Real. Look for “Demo $10,000” balance. Never test new bots on real money.
Open Blank Workspace
Click “Build new bot” or the “+” tab. You’ll see an empty workspace with a sidebar of blocks on the left.
Step 2: Trade Parameters Block
This block defines what you trade and how.
Drag “Trade Parameters” Block
From sidebar → “Trade Parameters” category → drag the main block to workspace. It’s the largest block.
Configure Market & Asset
Inside the block:
• Market: Synthetic Indices → Continuous Indices
• Trade Type: Up/Down → Rise/Fall
• Asset: Volatility 75 Index
• Default Currency: USD (we’ll convert mentally to ZAR)
Set Contract Type
• Contract type: Both (allows BUY and SELL)
• Default contract: Rise/Fall
• Both: Yes
Step 3: Purchase Conditions
Set Duration
Inside Purchase Conditions block:
• Duration unit: Ticks
• Duration value: 5 (5-tick trades, ~10 seconds each)
Stake (2% Rule)
This is critical. Instead of fixed stake:
• Drag “Math” → “Multiplication” block
• First value: Balance (variable from “Account” section)
• Second value: 0.02 (= 2%)
Result: stake auto-adjusts as balance changes.
Step 4: Strategy Logic (RSI Signals)
This is where the trading logic lives.
Add RSI Indicator
From “Indicators” → drag “RSI” block into “Before Purchase” condition.
• Period: 14 (standard RSI period)
• Field: Close prices
BUY Signal Condition
Drag “If” block:
• Condition: RSI < 30 (oversold)
• Then: Buy “CALL” (Rise) contract
Meaning: when RSI dips below 30, bot buys CALL.
SELL Signal Condition
Add second “If” block:
• Condition: RSI > 70 (overbought)
• Then: Buy “PUT” (Fall) contract
Meaning: when RSI exceeds 70, bot buys PUT.
Step 5: Risk Management (THE MOST IMPORTANT PART)
⛔ Do Not Skip This Section
A bot without risk management is a fast path to a zero balance. Every successful bot has stop conditions. We’re adding three: daily loss limit, max trades per day, and cooldown after consecutive losses.
Daily Loss Limit (5%)
In “Restart Conditions” block:
• Stop bot if: Total profit/loss
• Threshold: -50 (= 5% of $1,000 starting demo)
For real balance, this auto-adjusts if you connect it to the Balance variable.
Max Trades Per Day
Add “Total runs” condition:
• Stop bot after: 8 trades
Quality over quantity. 8 high-conviction trades beat 50 random ones.
Cooldown After Losing Streak
Add custom variable consecutive_losses:
• If loss → increment by 1
• If win → reset to 0
• If consecutive_losses >= 3 → pause 60 minutes
This is the safety net that saves accounts during bad streaks.
Step 6: Save and Test
Save Bot
Click “Save” in top right. Choose:
• Local (download .xml file to your PC)
• Google Drive (cloud backup)
Name it: V75-RSI-2pct-IATraderPro. Save both ways — having backup matters.
Run Bot
Click big green “Run” button. Bot starts. Watch the workspace — it shows live trade signals as RSI crosses levels. First trade may take 5-15 minutes depending on market.
Monitor for First Hour
Watch the bot live for at least 60 minutes the first time. You should see:
• RSI calculating in real-time
• Trades only when conditions are met (might skip 20+ minutes between trades)
• Stake auto-adjusting based on balance
• Risk limits enforced if you simulate hitting them
How RSI Works (5-Second Version)
RSI (Relative Strength Index) is a momentum indicator scored 0-100:
- Above 70 = “overbought” → price probably will fall back. Bot buys PUT.
- Below 30 = “oversold” → price probably will bounce up. Bot buys CALL.
- Between 30-70 = neutral → bot waits.
This is mean-reversion strategy. On Volatility 75 it works well because synthetic prices oscillate around a midline. On forex with strong trends, RSI mean-reversion fails — but V75 is built for this.
Expected Performance
Based on our 30-day real test of this exact strategy:
| Metric | Value | What It Means |
|---|---|---|
| Win Rate | 70.1% | 7 out of 10 trades won |
| Total Trades | 67 | ~2-3 per trading day |
| Net Return | +18.4% | $1,000 → $1,184 (R18,500 → R21,900) |
| Max Drawdown | -6.2% | Worst peak-to-trough drop |
| Profit Factor | 2.34 | Wins were 2.3x bigger than losses |
⚠️ Live vs Demo
Live performance is typically 70-85% of demo due to slippage, psychology, and execution differences. Expect ~60-63% win rate live (vs 70% demo). Plan for this gap.
Step 7: Demo for 30 Days Before Live
🛑 The Most Common Mistake
People build a bot, run it for 2 days on demo, see profit, switch to real money — then blow the account in week 1. Always demo for 30+ days minimum. Markets have regimes; what works in choppy conditions fails in trending ones, and vice versa. 30 days catches multiple regimes.
Going Live (When Ready)
After 30 successful demo days:
- Verify KYC on Deriv (passport/ID, proof of address)
- Deposit minimum $10 (~R185) — start small
- Switch bot to Real account dropdown
- Run bot — same .xml works, just connected to real money
- Halve the stake for first week (1% instead of 2%) to test execution
- Track every trade in a spreadsheet
- If first 30 live days remain profitable, scale to 2%
Common Mistakes to Avoid
❌ Top 7 Bot-Killing Mistakes
1. Skipping risk management — no daily loss limit = blown account waiting
2. Martingale (doubling stake after loss) — mathematically impossible long-term, see why
3. Trading 24/7 without breaks — bot needs maintenance windows
4. Modifying strategy mid-test — locks in losses, invalidates results
5. Real money without 30 demo days — biggest cause of failure
6. Multiple bots simultaneously — confusing P/L attribution
7. Stakes above 2% — drawdowns become unsurvivable
Customising the Strategy
Once base bot works, you can extend it. Popular modifications:
- Add EMA filter: only buy if EMA(9) > EMA(21) for BUY signals — reduces false signals 30-40%
- Time-of-day filter: only trade during high-volume hours (SAST 14:00-21:00 = London + NY overlap)
- Volatility filter: skip trades when ATR < threshold (sideways markets)
- Multi-timeframe: check H1 trend before M5 entry
Detailed customisation: AI Prompts for Trading shows how to ask ChatGPT/Claude for these mods.
Troubleshooting
🔧 Common Issues & Fixes
Bot doesn’t trade: RSI hasn’t crossed threshold yet — be patient. Or check market hours (V75 should always be open).
“Insufficient balance” error: stake is too large for current balance. Reduce risk % from 2% to 1%.
Bot stops randomly: daily loss limit was hit. Check stats panel. This is the safety working, not a bug.
Workspace lags: too many blocks. Simplify, save, refresh page.
Trades execute but lose immediately: RSI threshold might be wrong. Verify RSI < 30 for CALL (not the other way around).
South African Tax Notes
📋 SARS Reporting
Bot profits are taxable income in South Africa. Keep:
• Annual statement from Deriv (download from account)
• Spreadsheet of every trade (date, asset, P/L)
• Bank deposits/withdrawals (Deriv ↔ FNB/Standard/ABSA/Nedbank/Capitec)
Frequent trading may be classified as income rather than capital gains. Consult a SARS-registered tax practitioner. Read our Disclaimer for context.
Free Bot Template (Download)
To save time, you can download our pre-built RSI bot template (.xml file) and import it into Deriv Bot:
- Open Deriv Bot workspace
- Click “Open” → “Local”
- Select our template .xml file (link in our Tools page)
- Customise parameters as needed
The template includes everything from this tutorial plus the EMA filter modification mentioned above.
What’s Next After This Bot
Once you have this bot running profitably on demo, the natural progression is:
- Backtest different strategies — backtesting guide
- Build a second bot with different logic (Bollinger Bands, MACD)
- Learn Pine Script with AI — ChatGPT & Claude tutorial
- Move to Python for full control — Python + Deriv API
- Try MT5 Expert Advisors — MQL5 tutorial
🚀 Ready to build? Open your free Deriv demo (no deposit needed):
Open Free Demo AccountRelated Reading
- Deriv Review 2026 (FSCA Status)
- Volatility 75 Index Deep Dive
- Risk Management — 10 Principles
- Real 30-Day Test Results
- Why Martingale Doesn’t Work
