Lewati ke konten utama

Backtesting Your Trailing Bot

Learn how to test your trailing stop strategy against historical data before risking real money. Backtesting is your first line of defense against unprofitable strategies.

What is Backtesting?

Backtesting is the process of running your trading strategy against historical market data to see how it would have performed in the past.

Think of it like:

Time Machine for Trading:
- Rewind to 6 months ago
- Start with $10,000
- Run your strategy
- See what happens
- All in seconds, zero risk

What You Learn:

  • Would you have made or lost money?
  • How many trades would you have taken?
  • What was your win rate?
  • How big were your drawdowns?
  • Is the strategy viable?

Why Backtest Your Trailing Bot?

Critical Benefits

1. Validate Your Configuration

Before backtest: "I think 5% trailing will work"
After backtest: "5% trailing made 47 trades with 62% win rate"

2. Avoid Costly Mistakes

Bad Strategy (discovered in backtest):
Win Rate: 32%
ROI: -18%
Result: Didn't deploy, saved money

Good Strategy (discovered in backtest):
Win Rate: 68%
ROI: +43%
Result: Deployed with confidence

3. Optimize Parameters

Test A: 3% trailing → ROI: +15% (too tight, whipsaws)
Test B: 5% trailing → ROI: +38% (optimal)
Test C: 10% trailing → ROI: +22% (too loose, gives back gains)

Conclusion: 5% is optimal for this asset

4. Set Realistic Expectations

Before: "I'll make 200% per month!"
After backtest: "Realistic target is 3-5% per month"

5. Understand Behavior

Backtest reveals:
- How bot reacts to volatility
- Typical hold times
- Common exit scenarios
- Drawdown patterns

What Backtesting Cannot Do

Guarantee Future Results

  • Past performance ≠ future results
  • Market conditions change
  • Black swan events can't be predicted

Account for Everything

  • Slippage may vary
  • Extreme volatility not in data
  • Liquidity crunches
  • Exchange downtime

Replace Paper Trading

  • Historical data is cleaner
  • Real-time has more variables
  • Always paper trade after backtesting

Bottom Line:

Backtesting is essential but not sufficient. Use it as step 1 of 3 (Backtest → Paper → Live).


How to Backtest Your Trailing Bot

Step 1: Create or Select Your Bot

Option A: Custom Bot

  1. Configure all parameters in "Getting Started"
  2. Save as draft
  3. Proceed to backtest

Option B: Preset Strategy

  1. Select from marketplace
  2. Customize if desired
  3. Proceed to backtest

Step 2: Access Backtest Feature

From Bot Dashboard:

  1. Navigate to your bot
  2. Click "Backtest" tab or button
  3. Backtest configuration panel opens

From Creation:

  1. After saving bot configuration
  2. Click "Run Backtest" instead of "Deploy"
  3. Opens directly to backtest settings

Step 3: Configure Backtest Parameters

A. Date Range

Start Date:

  • How far back to test
  • More data = more reliable results

End Date:

  • When to stop the test
  • Usually "today" or recent date

Recommendations:

Minimum Testing Period:

3 months minimum
- Captures various market conditions
- Sufficient trade sample
- Seasonal variations

Optimal Testing Period:

6-12 months recommended
- Multiple market cycles
- Bull and bear periods
- High confidence results

Extended Testing:

1-2 years (if available)
- Maximum confidence
- All market conditions
- Long-term viability check

Example Configurations:

Short Test (Quick Validation):
Start: 3 months ago
End: Today
Use: Initial screening

Standard Test (Main Evaluation):
Start: 6 months ago
End: Today
Use: Primary decision maker

Long Test (Thorough Validation):
Start: 1 year ago
End: Today
Use: Final confirmation

Multi-Market Test:
Start: 2 years ago (includes bull + bear)
End: Today
Use: Strategy robustness check

B. Timeframe Selection

What is Timeframe? The candlestick interval your bot will trade on.

Available Options:

  • 1 minute (1m)
  • 5 minutes (5m)
  • 15 minutes (15m)
  • 30 minutes (30m)
  • 1 hour (1h)
  • 4 hours (4h)
  • 1 day (1d)

How to Choose:

Scalping (Minutes):

Timeframes: 1m, 5m, 15m
- Very short-term
- Many trades
- High frequency
- Requires tight stops
- Active monitoring needed

Day Trading (Hours):

Timeframes: 15m, 30m, 1h
- Intraday positions
- Multiple trades per day
- Moderate frequency
- Balanced approach
- Regular monitoring

Swing Trading (Hours/Days):

Timeframes: 4h, 1d
- Multi-day positions
- Fewer trades
- Lower frequency
- Wider stops
- Less monitoring needed

Your Choice Depends On:

FactorShorter TimeframesLonger Timeframes
Time CommitmentHigh (active)Low (passive)
TradesManyFew
Hold DurationMinutes to hoursDays to weeks
NoiseMore false signalsLess noise
Profit per TradeSmallerLarger
Stress LevelHigherLower

Recommendation for Trailing Bots:

Best Results: 4h or 1d timeframes
- Trailing stops need room to work
- Shorter timeframes cause whipsaws
- Longer trends develop on bigger candles

C. Initial Capital

What to Enter: The starting capital for the backtest simulation.

Recommendations:

Use Your Intended Live Capital:
If planning to deploy $5,000 → Test with $5,000
If planning to deploy $10,000 → Test with $10,000

Why?
- Order sizes will match reality
- Percentage returns are realistic
- Fee impact is accurate

Examples:

Test Capital: $1,000
Results:
- 50 trades
- Profit: $420
- ROI: 42%

If you deploy with $10,000:
Expected Profit: ~$4,200
(assuming linear scaling)

Step 4: Run the Backtest

Execute:

  1. Review all parameters
  2. Click "Run Backtest" button
  3. Wait for simulation (usually 10-60 seconds)
  4. Results appear

Processing Time:

  • Depends on date range
  • Depends on timeframe
  • More data = longer processing
  • Usually completes in under a minute

Understanding Backtest Results

Performance Summary

Overall Metrics

1. Final Portfolio Value

Starting Capital: $10,000
Final Value: $14,720

What it means:

  • Your ending balance after all trades
  • Includes realized profits/losses
  • Shows total strategy performance

2. Total Return (ROI %)

ROI = ((Final Value - Starting Capital) / Starting Capital) × 100

Example:
Starting: $10,000
Final: $14,720
ROI: ($14,720 - $10,000) / $10,000 × 100 = 47.2%

What it means:

  • Percentage gain or loss
  • Industry standard metric
  • Easy comparison

3. Annualized Return (APR %)

APR = (ROI / Days) × 365

Example:
ROI: 47.2%
Period: 180 days (6 months)
APR: (47.2% / 180) × 365 = 95.6%

What it means:

  • Projects returns over one year
  • Useful for comparing strategies
  • Accounts for time period

4. Total Profit/Loss ($)

Total P&L: $4,720

What it means:

  • Absolute dollar amount gained/lost
  • Easy to understand
  • Real money impact

Trade Statistics

1. Number of Trades

Total Trades: 42

What it means:

  • How many complete trade cycles
  • Buy → Sell = 1 trade
  • More trades = more data points

Evaluation:

Too Few Trades (<10):
⚠️ Insufficient data
⚠️ Results may be luck
⚠️ Extend test period

Good Sample (20-50):
✅ Decent confidence
✅ Pattern emerging
✅ Reliable-ish results

Large Sample (50+):
✅ High confidence
✅ Clear patterns
✅ Reliable results

2. Win Rate (%)

Winning Trades: 26
Losing Trades: 16
Win Rate: 26 / 42 = 61.9%

What it means:

  • Percentage of profitable trades
  • Not profit amount, just count
  • Psychological metric

Evaluation:

Excellent: 65%+
- Most trades profitable
- Strategy very reliable

Good: 55-65%
- More wins than losses
- Solid strategy

Acceptable: 50-55%
- Slightly more wins
- Depends on profit sizes

Concerning: <50%
- More losses than wins
- Must have large winners to compensate

Important Note:

High win rate doesn't guarantee profitability! One huge loss can wipe out many small wins.

3. Average Profit Per Trade

Total Profit: $4,720
Number of Trades: 42
Avg Profit: $4,720 / 42 = $112.38

What it means:

  • Typical profit per trade cycle
  • Includes winners and losers
  • Should exceed fees significantly

Evaluation:

After Fees:
If avg fee per trade = $15
Avg profit = $112.38
Net profit = $112.38 - $15 = $97.38

✅ Profitable after fees

4. Best Trade / Worst Trade

Best Trade: +$840 (+28.5%)
Worst Trade: -$320 (-4.8%)

What it means:

  • Your biggest win
  • Your biggest loss
  • Range of outcomes

Evaluation:

Good Sign:
Best > abs(Worst)
$840 > $320 ✅

Bad Sign:
Best < abs(Worst)
Means losses bigger than wins

Risk Metrics

1. Maximum Drawdown

Max Drawdown: -$1,450 (-14.5%)

What it means:

  • Largest peak-to-trough decline
  • Worst losing streak
  • How much you'd be down at worst point

Example:

Portfolio Timeline:
$10,000 → $12,000 (peak) → $10,550 (trough)
Drawdown: $12,000 - $10,550 = $1,450 (14.5%)

Evaluation:

Conservative: <15% drawdown
Moderate: 15-25% drawdown
Aggressive: 25-40% drawdown
Dangerous: >40% drawdown

Why It Matters:

Drawdown = Pain Tolerance
- Can you handle being down 20%?
- Will you panic and exit?
- Is your risk tolerance high enough?

2. Sharpe Ratio

Sharpe Ratio: 1.8

What it means:

  • Risk-adjusted returns
  • Higher = better returns per unit of risk
  • Academic metric

Evaluation:

< 1.0  = Not great (high risk for returns)
1.0-2.0 = Good (decent risk/reward)
> 2.0 = Excellent (low risk, high returns)
> 3.0 = Exceptional (rare)

3. Profit Factor

Total Winning Trades: $7,200
Total Losing Trades: $2,480
Profit Factor: $7,200 / $2,480 = 2.9

What it means:

  • How much you make per dollar lost
  • Gross profit / Gross loss

Evaluation:

< 1.0  = Losing strategy
1.0-1.5 = Barely profitable
1.5-2.0 = Good
2.0-3.0 = Very good
> 3.0 = Excellent

Detailed Trade Log

Individual Trade Entries:

Trade #1:
Entry: $50,250 at 2024-08-01 14:00
Exit: $54,100 at 2024-08-05 09:30
P&L: +$770 (+7.7%)
Reason: Trailing stop triggered
Duration: 3 days 19.5 hours

Trade #2:
Entry: $53,800 at 2024-08-05 10:00
Exit: $51,100 at 2024-08-07 16:30
P&L: -$270 (-5.0%)
Reason: Initial stop loss hit
Duration: 2 days 6.5 hours

What to Look For:

  • Typical hold duration
  • Common exit reasons
  • Profit/loss patterns
  • Entry/exit prices

Visual Charts

1. Equity Curve

Graph showing portfolio value over time
- Should trend upward
- Drawdowns visible
- Growth pattern clear

2. Trade Distribution

Histogram of profit/loss per trade
- Shows profit distribution
- Identifies outliers
- Pattern recognition

3. Monthly Returns

Bar chart of monthly performance
- Consistency check
- Seasonal patterns
- Good months vs bad months

Analyzing Backtest Results

Is This Strategy Good?

Ask These Questions:

1. Is it Profitable?

✅ Total ROI > 0
✅ After fees, still positive
✅ Beats buy-and-hold (HODL)

2. Is it Consistent?

✅ Win rate > 50%
✅ Profit factor > 1.5
✅ No single trade dominates results
✅ Multiple profitable months

3. Is the Risk Acceptable?

✅ Max drawdown < your tolerance
✅ Worst trade doesn't wipe out account
✅ Sharpe ratio > 1.0

4. Is Sample Size Sufficient?

✅ At least 20+ trades
✅ Test period 6+ months
✅ Multiple market conditions included

5. Do Results Make Sense?

✅ No unrealistic returns (1000%+ APR)
✅ Trade frequency seems reasonable
✅ Logic matches observed behavior

Decision Framework

Deploy if:

✅ ROI > 20% per year
✅ Win rate > 55%
✅ Profit factor > 1.8
✅ Max drawdown < 25%
✅ 30+ trades in test
✅ Consistent across months

Optimize and Retest if:

⚠️ Close to threshold but not quite
⚠️ One parameter seems off
⚠️ Mixed signals

Don't Deploy if:

❌ ROI negative or very low
❌ Win rate < 50%
❌ Max drawdown > 40%
❌ Too few trades
❌ Results seem unrealistic

Testing on Various Conditions

Why Test Multiple Scenarios?

Single backtest is not enough:

Test on 6 months of bull market:
ROI: 80%! Amazing!

But what about bear markets?
Test on 6 months of bear market:
ROI: -30% Ouch!

Overall Viability: Questionable

1. Multiple Time Periods

Test A: Last 6 months (current conditions)
Test B: 6-12 months ago (different phase)
Test C: 1-2 years ago (full cycle)

Compare results:
- If similar → robust strategy
- If wildly different → market-specific strategy

2. Multiple Timeframes

Test Same Strategy On:
- 1h timeframe
- 4h timeframe
- 1d timeframe

Find optimal:
- Which timeframe works best?
- Are results consistent?
- Trade frequency differences

3. Bull vs Bear Markets

Bull Market Period:
- Rising prices
- Strong trends
- Test trailing effectiveness

Bear Market Period:
- Falling prices
- Downtrends
- Test stop losses

Ranging Market Period:
- Sideways price
- Choppy action
- Test whipsaw resistance

4. High vs Low Volatility

High Volatility Period:
- Large price swings
- Wide ranges
- Test stop tightness

Low Volatility Period:
- Small price movements
- Narrow ranges
- Test activation levels

Comparison Matrix Example

┌─────────────────┬────────────┬────────────┬────────────┐
│ Test Scenario │ ROI │ Win Rate │ Drawdown │
├─────────────────┼────────────┼────────────┼────────────┤
│ Bull (6mo) │ +52% │ 71% │ -12% │
│ Bear (6mo) │ +18% │ 58% │ -23% │
│ Range (6mo) │ +8% │ 52% │ -15% │
│ High Vol (3mo) │ +31% │ 64% │ -19% │
│ Low Vol (3mo) │ +12% │ 61% │ -8% │
├─────────────────┼────────────┼────────────┼────────────┤
│ Average │ +24.2% │ 61.2% │ -15.4% │
└─────────────────┴────────────┴────────────┴────────────┘

Conclusion: Strategy is robust, profitable in all conditions

Testing Both Custom and Marketplace Bots

Custom Bots You Created

Always Backtest:

You designed it → You must validate it
- Test initial configuration
- Optimize parameters
- Verify logic works
- Build confidence

Process:

  1. Create bot with best-guess parameters
  2. Run initial backtest
  3. Analyze results
  4. Adjust parameters
  5. Backtest again
  6. Repeat until satisfied
  7. Paper trade

Marketplace Preset Strategies

Should You Backtest These Too? YES! Always.

Why:

✅ Verify they work for YOUR capital size
✅ Confirm results in current market
✅ Check if historical data matches claims
✅ Understand the strategy before deploying
✅ Different exchange/fees may affect results

Process:

  1. Select preset strategy
  2. Backtest with YOUR parameters:
    • Your capital amount
    • Your preferred timeframe
    • Current market period
  3. Compare to published results
  4. If similar → good sign
  5. If very different → investigate why

Important:

Preset strategies show historical results,
but YOUR results may vary based on:
- When you deploy (market timing)
- Your capital size
- Your exchange
- Current market conditions

Always validate with your own backtest

Common Backtesting Mistakes

Mistake 1: Only Testing Bull Markets

Wrong:

Test: Last 6 months (all bull market)
Result: 80% ROI
Conclusion: "This is amazing!"
Reality: Doesn't work in bear markets

Right:

Test: Last 18 months (bull + bear + range)
Result: 30% ROI average across all
Conclusion: "This is realistic and robust"

Mistake 2: Curve Fitting

Wrong:

Keep adjusting parameters until backtest perfect
Trailing: 5.3782%
Activation: 12.8291%
Initial Stop: 5.9183%

Result: 150% ROI in backtest
Reality: Overfitted to historical data, won't work forward

Right:

Use simple, round parameters
Trailing: 5%
Activation: 10%
Initial Stop: 5%

Result: 40% ROI in backtest
Reality: Simple strategy, more likely to work forward

Mistake 3: Insufficient Trade Sample

Wrong:

Test Period: 1 month
Trades: 3
Conclusion: "100% win rate, amazing!"
Reality: Not enough data, could be luck

Right:

Test Period: 6+ months
Trades: 30+
Conclusion: "65% win rate across 30 trades"
Reality: Statistically significant sample

Mistake 4: Ignoring Fees

Wrong:

Backtest doesn't include fees
Result: 50% ROI
Reality: After fees → 35% ROI

Right:

Include realistic fee structure
Trading fee: 0.1% per trade
Result: 35% ROI (after fees)
Reality: Accurate representation

Mistake 5: Unrealistic Expectations

Wrong:

Backtest: 200% ROI in 3 months
Thought: "I'll be rich!"
Reality: Probably overfitted or lucky period

Right:

Backtest: 40% ROI in 6 months
Thought: "Solid returns if it continues"
Reality: Realistic, achievable target

Optimization Through Backtesting

Parameter Testing

Systematic Approach:

Test trailing percentage:

Run 5 backtests:
Test A: 3% trailing
Test B: 5% trailing
Test C: 7% trailing
Test D: 10% trailing
Test E: 12% trailing

Compare ROI and drawdown
Choose optimal

Test activation profit:

Keep trailing at 5% (optimal from above)
Now test:
Test A: 5% activation
Test B: 10% activation
Test C: 15% activation
Test D: 20% activation

Find best activation level

Test initial stop:

Keep previous optimal settings
Test:
Test A: 3% initial stop
Test B: 5% initial stop
Test C: 7% initial stop

Balance risk vs return

Finding the Sweet Spot

Example Optimization:

Initial guess:
Trailing: 5%
Activation: 10%
Stop: 5%
Result: +35% ROI, -18% drawdown

After testing:
Trailing: 6% (reduced whipsaws)
Activation: 12% (better confirmation)
Stop: 5% (unchanged, worked well)
Result: +42% ROI, -15% drawdown

Improvement: +7% ROI, -3% drawdown

Next Steps After Backtesting

If Results Are Good:

1. Paper Trade

✓ Backtest successful → Deploy to paper account
✓ Test with virtual money
✓ Real-time conditions
✓ Verify backtest translates to real trading

2. Monitor Closely

✓ Watch first 5-10 trades
✓ Compare to backtest expectations
✓ Document any differences
✓ Adjust if needed

3. Go Live (Eventually)

✓ After successful paper trading
✓ Start with small capital
✓ Scale up as confidence grows

If Results Are Poor:

1. Analyze Why

- Win rate too low?
- Drawdown too high?
- Not enough trades?
- Wrong market conditions?

2. Optimize

- Adjust parameters
- Change timeframe
- Test different periods
- Backtest again

3. Consider Alternatives

- Try preset strategies
- Different bot type (Grid Bot?)
- Different asset
- Wait for better conditions

Backtest Checklist

Before deploying, verify:

  • Tested on 6+ months of data
  • At least 20+ trades executed
  • Positive ROI after fees
  • Win rate > 55%
  • Max drawdown acceptable to you
  • Tested on multiple market conditions
  • Tested on your intended timeframe
  • Results are consistent across tests
  • No obvious curve fitting
  • Expectations are realistic

Only proceed to paper trading if all checks pass!


Resources

Next Steps:

Remember:

Backtest → Paper Trade → Live Deploy Never skip steps. Each one protects your capital.