← Back to Learn
IV ExpertWeek 10 • Lesson 30Duration: 45 min

REG Regulatory Frameworks

The rules of the game — Basel, MiFID, and prop firm compliance

Learning Objectives

  • Know the key financial regulations affecting algorithmic trading
  • Understand the difference between institutional and prop firm requirements
  • See how compliance shapes system design
  • Map prop firm phases to system parameters

Explain Like I'm 5

There are rules for trading. Some are laws (jail time). Some are exchange rules (you get banned). Some are prop firm rules (you lose your account). Understanding the rules isn't optional — it's the framework within which everything operates.

Think of It This Way

Traffic laws. You can drive without following them, but eventually you crash or get pulled over. The best race drivers know every rule and push right to the limit. Same with trading.

1Institutional Regulations — The Big Picture

Even if you're not trading institutionally, understanding these helps you see why markets behave certain ways. Basel III/IV (banking): • Minimum capital requirements • VaR → Expected Shortfall transition • Liquidity coverage ratios MiFID II (European markets): • Algo trading registration requirements • Mandatory risk controls and kill switches • Order-to-trade ratio limits • Pre- and post-trade transparency Reg NMS / Reg SHO (US markets): • Best execution requirements • Short selling restrictions • Market data distribution rules Most of these don't apply directly to retail or prop firm trading. But understanding them helps you anticipate regulatory-driven market moves and build systems that could scale to institutional requirements later.

2Prop Firm Phase Requirements

For algo trading on funded accounts, the prop firm rules are your regulatory framework. Challenge phase: • 10% profit target, 30-day limit • 5% daily loss limit, 10% total loss limit • Minimum 4 trading days Verification phase: • 5% profit target, 60-day limit • Same loss limits • Minimum 4 trading days Funded account: • No profit target, no time limit • Same loss limits (these never go away) • 70/30 profit split (trader gets 70%) The loss limits are the binding constraint. Design around not breaching, and let profits handle themselves.

3Phase Requirements Compared

The challenge is the hardest — 10% in 30 days. Verification is easier (5% in 60 days). Once funded, there's no target. Design priority: survive the challenge, coast through verification, then compound on the funded account.

Prop Firm Phase Requirements

4How Rules Shape System Design

These constraints directly influence how you build: • Consistent returns over home runs — 3–5% monthly, not one big month followed by a crash • DD protection is non-negotiable — one bad day ends a funded account • Real-time daily risk monitoring — must-have, not nice-to-have • Every position needs a defined stop — no "hoping for recovery" • Minimum trading days — can't just get lucky on one trade The constraint of "consistent returns with hard DD limits" is actually good. It forces you to build a real system instead of gambling. The best traders in the world would pass these challenges easily — not because of huge returns, but because they never blow up.

5Time to Pass Each Phase

This shows how long each phase takes at different monthly return rates. At ~4% monthly, the challenge takes about 2.5 months and verification about 1.3. Going from 3% to 5% monthly nearly halves the time. Going from 5% to 8%? Risky — higher returns usually mean higher volatility and more breach risk. The sweet spot is 4–5% where speed and safety balance.

Months to Pass vs Monthly Return

Key Formulas

Time to Target

Months to reach profit target. At 4% monthly return: Challenge (10%) ≈ 2.5 months, Verification (5%) ≈ 1.25 months. Simple division, but assumes consistent returns.

Hands-On Code

Challenge Phase Simulator

python
import numpy as np

def simulate_challenge(monthly_r, monthly_std, n_sims=10000):
    """Simulate prop firm challenge outcomes."""
    daily_r = monthly_r / 22
    daily_std = monthly_std / np.sqrt(22)
    
    results = {'pass': 0, 'breach': 0, 'timeout': 0}
    
    for _ in range(n_sims):
        balance = 1.0
        for day in range(66):  # 3 months max
            ret = np.random.normal(daily_r, daily_std)
            balance *= (1 + ret)
            
            if ret < -0.05:    # daily limit
                results['breach'] += 1; break
            if balance < 0.90:  # total limit
                results['breach'] += 1; break
            if balance >= 1.10:  # target reached
                results['pass'] += 1; break
        else:
            results['timeout'] += 1
    
    for k, v in results.items():
        print(f"  {k}: {v/n_sims:.1%}")

simulate_challenge(0.04, 0.02)

A well-tuned system should show > 90% pass rate with < 5% breach rate. If those numbers don't look right, adjust risk per trade until they do.

Knowledge Check

Q1.During a funded account, what's the daily loss limit?

Assignment

Simulate 10,000 challenge attempts with your strategy's expected return and volatility. What's the pass rate? Breach rate? Adjust risk per trade and find the level that maximizes pass rate while keeping breach rate below 5%.