Signal Pilot
🟡 Intermediate • Lesson 47 of 82 ~17 min

Portfolio Construction: Building an Edge-Based System

Your edge isn't in ONE great trade—it's in how you allocate capital across HUNDREDS of trades.

0%
You're making progress!
Keep reading to mark this lesson complete

Professional traders don't just find good setups. They build portfolios that maximize expected returns while controlling risk. This lesson teaches you how to construct a portfolio like an institutional fund manager.

🎯 What You'll Learn

By the end of this lesson, you'll be able to:

  • Calculate Kelly Criterion position size for any trading strategy
  • Understand why full Kelly is dangerous (and what fractional Kelly to use)
  • Build multi-strategy portfolios with proper correlation adjustments
  • Implement dynamic position sizing based on equity curve performance
  • Use Signal Pilot tools to validate edge and optimize allocations
⚡ Quick Wins for Tomorrow (Click to expand)

Start with these 3 actions:

  1. Calculate Kelly % for your best strategy. Need 3 numbers: (1) Win rate (wins ÷ total), (2) Avg winner, (3) Avg loser. Formula: Kelly % = (WR × (AvgW ÷ AvgL) - (1-WR)) ÷ (AvgW ÷ AvgL). Example: 58.3% WR, $360 avg win, $200 avg loss = 35.1% full Kelly. Use 1/4 Kelly = 8.8% per trade. Ed Thorp used Kelly to turn $10K into $800M.
  2. Implement equity curve position sizing. Calculate 20-day MA of equity. Above MA = increase size 25% (hot streak). Below MA = decrease 50% (cold streak). Prevents revenge trading, maximizes winners. Paul Tudor Jones: "Risk more when winning, less when losing."
  3. Run Kelly stress test on worst losing streak. Find worst consecutive losses (say 7). Calculate: 2% risk = -14% DD. Full Kelly 20% = -79% DD (account destroyed). Quarter Kelly 5% = -30% DD (recoverable). Full Kelly WILL destroy you. Use quarter Kelly.

💰 How Kelly Criterion Saved a $500K Account

Prop trader: 58% WR, $450 avg win, $300 avg loss. Old (2% fixed): +$140K/year, Sharpe 1.2, 15% DD. Optimization: Kelly = 29.7%, used half Kelly (3% per trade). New (3% Kelly): +$238K/year (+70% more), Sharpe 1.4, 18% DD. Kelly optimizes sizing based on edge: 70% more profit for only 3% more drawdown.

📉 CASE STUDY: Lisa's $91,000 Full Kelly Disaster

Setup: Lisa Chang, options trader with 68% WR credit spreads (avg win $840, avg loss $400, 2.1:1 R:R). Calculated full Kelly = 16.8% per trade. $185K account, Apr-Jun 2024.

The disaster: Weeks 1-2: +$7.5K profit using full Kelly. Week 3: Hit 6-trade losing streak (0.1% probability). Each loss -16.8% compounding = -62% drawdown. Account dropped $192K → $72K in ONE WEEK. Final: $94K (-$91K, -49% total loss in 3 months).

Recovery: Switched to 1/4 Kelly (4.2% per trade). Results: $94K → $147K (+56%) in 6 months, max DD -12% (vs -62%). Same edge, survivable variance.

Lesson: Full Kelly = theoretical optimum, catastrophic variance. Use 1/4 Kelly for 95% of growth with 12% drawdowns instead of 62%. Calculate full Kelly, then USE 25-50% of that number. Growth means nothing if variance destroys you first.

Case Study Quiz: Lisa had a profitable strategy (68% win rate, 2.1:1 R:R) and calculated her optimal Kelly Criterion as 16.8% per trade. She used FULL Kelly and lost $91K (-49%) in 3 months despite having positive edge. What was her fatal mistake?

A) Her win rate calculation was wrong—68% was overestimated from small sample size
B) She should have calculated Kelly differently—the 16.8% number was incorrect
C) Full Kelly is mathematically optimal for growth but causes catastrophic variance—a 6-trade losing streak (0.1% probability) caused -62% drawdown, wiping out her edge
D) She should have diversified across multiple strategies instead of using one strategy
Correct: C. Full Kelly trap: Lisa's math was correct (16.8% optimal), but full Kelly assumes infinite bankroll + no emotions + stable edge forever. Reality: 6-trade losing streak (0.32^6 = 0.1% probability) caused -62% DD in one week ($192K → $72K). Full Kelly causes 40-70% drawdowns even with positive edge. Switched to 1/4 Kelly (4.2%), recovered $94K → $147K in 6 months, max DD -12%. Same 6-loss streak at 1/4 Kelly = -22.7% DD ($192K → $148K), saving $84K. Use 1/4 Kelly for 95% of growth with survivable variance. Kelly shows theoretical max, not practical optimum.
Part 1: Why Most Traders Build Portfolios Wrong

The Single-Strategy Trap

Most retail traders optimize for ONE perfect setup. They spend months backtesting a breakout strategy, achieve 55% win rate with 2:1 R:R, and think they've "made it."

The problem: Single-strategy traders are one market regime change away from blowing up.

📉 Real Example: The Breakout Trader Who Lost 32% in One Month

Setup: Trader had a proven momentum breakout system. 2022 results: 58% win rate, $580 avg win, $320 avg loss. Made $47K on $150K account (+31% return).

January 2023: Fed pivots hawkish. Market shifts from trending (breakouts work) to choppy range-bound (breakouts fail).

Result: Win rate dropped from 58% to 38% in 4 weeks. Lost -$48K (-32% of account) because he had ZERO mean-reversion strategies to capitalize on the new regime.

Lesson: One strategy = one point of failure. Institutions run 5-15 uncorrelated strategies to survive regime changes.

The Three Pillars of Portfolio Construction

Professional portfolio construction rests on three pillars:

Pillar Retail Approach Institutional Approach
1. Diversification One "perfect" strategy 5-10 strategies across regimes (trend, mean-reversion, volatility, correlation)
2. Position Sizing Fixed 1-2% per trade (ignores edge) Kelly Criterion adjusted for edge strength (5-15% for proven edges)
3. Correlation Management Ignored (all strategies correlated) Reduce allocation to correlated strategies (avoid doubling down on same bet)

Edge-Based Allocation vs Equal Weighting

Equal weighting: Allocate same % to each strategy (e.g., 3 strategies = 33% each)

Edge-based allocation (Kelly): Allocate MORE to strategies with stronger edge, LESS to weaker edges

Example: Why Equal Weighting Leaves Money on the Table

3 strategies: A (65% WR, Kelly 26.7%), B (52% WR, Kelly 14.4%), C (48% WR, Kelly 8.5%). Equal weight: 33% each = over-allocate to weak C, under-allocate to strong A. Result: +18.2% return, 22% DD. Kelly weight: 26.7%/14.4%/8.5% = optimal allocation by edge. Result: +26.8% return (+47% more!), 19% DD. Allocate based on edge, not equality.

Building for Regime Resilience

Markets cycle through four primary regimes. Your portfolio should have strategies for each:

Regime Characteristics Strategy Types That Work
Trending Bull Higher highs, low volatility, QE environment Momentum breakouts, pullback buying, BTFD strategies
Trending Bear Lower lows, rising volatility, QT environment Breakdown shorts, rally fades, put spreads
Range-Bound Choppy, oscillating between support/resistance Mean reversion, support/resistance trades, theta decay (options selling)
High Volatility VIX > 25, whipsaw moves, uncertainty Volatility selling (after spikes), wide stop strategies, reduced size

💡 Pro Tip: The "2-2-1" Portfolio Structure

Institutions often use a "2-2-1" diversification model:

  • 2 Trend strategies (long bias and short bias) — capitalize on directional moves
  • 2 Mean-reversion strategies (support bounces and resistance fades) — profit from ranges
  • 1 Volatility strategy (VIX spike trading or premium selling) — hedge against chaos

This ensures you have exposure to multiple regimes simultaneously. When trends die, mean-reversion activates. When volatility explodes, volatility strategy hedges the others.

Part 2: Kelly Criterion—The Math of Optimal Sizing

What Is Kelly Criterion?

The Kelly Criterion is a mathematical formula that answers one question: "Given my edge (win rate and reward/risk ratio), what percentage of my account should I risk per trade to maximize long-term compound growth?"

Developed by John Kelly Jr. at Bell Labs in 1956, it's been used by:

  • Ed Thorp: Beat blackjack casinos, then turned $10K into $800M hedge fund (Princeton Newport Partners)
  • Warren Buffett & Charlie Munger: Use Kelly to size Berkshire Hathaway positions
  • Renaissance Technologies: Jim Simons' $130B quant fund uses Kelly-based position sizing

The Kelly Formula (Simplified)

Kelly % = (Win Rate × Avg Win - Loss Rate × Avg Loss) / Avg Win

Or, in mathematical notation:

f* = (p × b - q) / b

Where:

  • f* = Optimal fraction of capital to risk (Kelly %)
  • p = Win rate (probability of winning)
  • q = Loss rate (1 - p)
  • b = Win/Loss ratio (Avg Win / Avg Loss)

Step-by-Step Kelly Calculation

Example: 60% win rate, $500 avg win, $300 avg loss. Variables: p = 0.60, q = 0.40, b = $500/$300 = 1.67. Formula: f* = (0.60 × 1.67 - 0.40) / 1.67 = 0.60 / 1.67 = 0.359 = 35.9% full Kelly. Use Quarter Kelly: 35.9% / 4 = 9% per trade.

✅ What This Means in Practice

With a $100,000 account and this 60% win rate system:

  • Full Kelly (35.9%): Risk $35,900 per trade — suicidal (one bad week destroys account)
  • Quarter Kelly (9%): Risk $9,000 per trade — optimal balance of growth and survival
  • Typical 1-2% sizing: Risk $1,000-$2,000 per trade — safe but leaves massive edge on the table

Key insight: If you have a PROVEN 60% win rate with 1.67:1 R:R, risking only 1-2% is under-utilizing your edge. Kelly says you can safely risk 8-9% and achieve far higher compound growth.

Why Full Kelly Is Dangerous (The Variance Problem)

Full Kelly optimizes for maximum geometric growth but ignores psychological survival.

The math problem: Even with a 60% win rate, you WILL hit losing streaks. Probability of 5 consecutive losses:

0.40^5 = 0.01024 = 1.024%

Translation: With 100 trades per year, you'll hit a 5-trade losing streak roughly once per year.

Kelly Fraction Risk Per Trade Loss After 5-Trade Streak Recovery Needed
Full Kelly (35.9%) $35,900 -81.7% (account at $18,300) +546% to break even (impossible)
Half Kelly (18%) $18,000 -59.8% (account at $40,200) +149% to break even (very hard)
Quarter Kelly (9%) $9,000 -37.2% (account at $62,800) +59% to break even (achievable)
Fixed 2% $2,000 -9.6% (account at $90,400) +11% to break even (easy, but slow growth)

Conclusion: Quarter Kelly gives you 75% of optimal growth with manageable drawdowns. Full Kelly gives you maximum growth with account-destroying drawdowns.

Why Ed Thorp Used Fractional Kelly

Ed Thorp (mathematician who beat blackjack, 20% annual return for 30 years): "Full Kelly maximizes growth but causes very large drawdowns. Half Kelly or less gave nearly the same growth with much smaller swings. Psychological benefit of smaller drawdowns far outweighed tiny loss in compound growth." Rule: Use 25-50% of Kelly for real trading.

Part 3: Applying Kelly to Multiple Strategies

Multi-Strategy Portfolio Allocation

Real portfolios don't have just one strategy. You might run momentum breakouts, mean-reversion trades, and options income simultaneously.

The question: How do you allocate capital across multiple strategies with different edges?

Step 1: Calculate Kelly % for Each Strategy Independently

Example portfolio with 3 strategies:

Strategy Win Rate Avg Win Avg Loss Win/Loss Ratio Full Kelly % Quarter Kelly %
A: Breakouts 45% $600 $200 3.0 26.7% 6.7%
B: Mean Rev 65% $300 $250 1.2 35.8% 8.95%
C: Volatility 55% $450 $350 1.29 20.2% 5.05%

Total allocation (if strategies were independent): 6.7% + 8.95% + 5.05% = 20.7%

Step 2: Adjust for Correlation

The problem: If your strategies are correlated (win/lose together), you're effectively making the same bet multiple times.

Correlation coefficient ranges from -1 to +1:

  • +1.0: Perfect correlation (always move together) — same strategy, don't double allocation
  • +0.6 to +0.8: High correlation (often move together) — reduce allocation by 30-50%
  • +0.2 to +0.4: Low correlation (somewhat independent) — reduce allocation by 10-20%
  • 0.0: No correlation (truly independent) — no adjustment needed
  • -0.5 to -1.0: Negative correlation (move opposite) — can increase total allocation (hedged)
How to Calculate Strategy Correlation (Excel/Python)

Excel: Export daily P&L to columns (Date, Strategy A, Strategy B). Use =CORREL(B:B, C:C) for correlation coefficient.

Python: df[['Strategy_A', 'Strategy_B']].corr() gives correlation matrix.

Interpretation: 0.15 = nearly independent ✅. 0.60 = high overlap ⚠️ (reduce allocation). 0.05 = independent ✅.

Step 3: Apply Correlation Adjustment

Continuing our 3-strategy example, assume these correlations:

  • Strategy A & B: 0.15 (low correlation)
  • Strategy B & C: 0.60 (high correlation) ⚠️
  • Strategy A & C: 0.05 (independent)

Adjustment rule: Reduce allocation to correlated pairs by 30% (for 0.60 correlation)

Strategy Quarter Kelly % Correlation Issue Adjusted Allocation
A: Breakouts 6.7% None (independent) 6.7% (no change)
B: Mean Rev 8.95% 0.60 with C 8.95% × 0.70 = 6.27%
C: Volatility 5.05% 0.60 with B 5.05% × 0.70 = 3.54%

New total allocation: 6.7% + 6.27% + 3.54% = 16.51%

Result: Reduced from 20.7% to 16.51% to account for B-C correlation. This prevents over-concentration when those two strategies lose together.

⚠️ The "Diversification Illusion" Trap

Many traders think they're diversified because they trade "stocks, crypto, and forex" — but all three are risk-on assets that crash together during Fed hawkishness.

Example: December 2021 - January 2022

  • Fed signals tapering (QT begins)
  • SPY drops -12%, BTC drops -50%, EUR/USD drops -7%
  • Trader with "diversified" long portfolio lost 20%+ across ALL positions same month

True diversification = strategies that profit in DIFFERENT market conditions:

  • Long breakouts (profit in QE bull markets)
  • Short fades (profit in QT bear markets)
  • Mean reversion (profit in choppy ranges)
  • Volatility selling (profit when VIX spikes then collapses)

Step 4: Set Portfolio Heat Limits

Portfolio heat = Total risk across all open positions simultaneously

Institutional standard: Never exceed 10-15% total portfolio heat

Example:

  • Strategy A: 6.7% allocation, currently have 1 trade open → 6.7% heat
  • Strategy B: 6.27% allocation, currently have 2 trades open → 12.54% heat
  • Strategy C: 3.54% allocation, currently have 1 trade open → 3.54% heat

Total portfolio heat: 6.7% + 12.54% + 3.54% = 22.78% ⚠️ TOO HIGH!

Action required: Don't take new trades until portfolio heat drops below 15%. Close or scale out of positions to reduce exposure.

💡 Pro Tip: The "Portfolio Heat Dashboard"

Create a simple spreadsheet that calculates real-time portfolio heat:

Strategy Kelly % Open Positions Current Heat
Breakouts 6.7% 1 6.7%
Mean Rev 6.27% 0 0%
Volatility 3.54% 1 3.54%
Total Portfolio Heat 10.24% ✅

Rule: Before entering any new trade, check this dashboard. If adding the trade would push heat above 15%, wait for an existing position to close first.

Part 4: Dynamic Position Sizing

Fixed-Fraction vs Dynamic Kelly

Fixed-Fraction: Always risk same % (e.g., 1% per trade)

Dynamic Kelly: Adjust size based on recent performance

Equity Curve Trading

Concept: Increase size when winning, decrease when losing

Method:

  • Calculate 20-day moving average of equity curve
  • If equity > MA: Increase position size by 25% (edge working)
  • If equity < MA: Decrease position size by 50% (edge broken or regime shift)

Benefit: Automatically scales risk to match performance (compound winners, limit losers)

Example: Equity Curve Position Adjustment

Baseline: $100K account, 1% risk = $1,000/trade. Hot streak (equity > MA): $108K account, 1.25% risk = $1,350/trade. Cold streak (equity < MA): $97K account, 0.5% risk = $485/trade. Risk more when winning, less when losing.

Part 5: Using Signal Pilot for Portfolio Construction

Janus Atlas: Multi-Strategy Overlay

Feature: Visualize all active strategies on same chart (identify correlation)

Use case: If all your setups trigger on same day → high correlation → reduce total size

Pentarch Pilot Line: Edge Validation

Feature: Compare your entries vs institutional flow

Signal: If Pilot Line confirms your setup (institutional flow aligned) → increase size to Kelly %

Warning: If Pilot Line contradicts setup (institutions selling, you buying) → reduce size to 0.5× Kelly

Harmonic Oscillator: Regime Detection for Sizing

Feature: Identify trending vs mean-reverting regimes

Application: Increase potential breakout strategy allocation in trending regime, increase mean-reversion allocation in ranging regime

💡 Pro Tip: The "Correlation Audit" Every Quarter

Most traders blow up from hidden correlation. March 2023 SVB collapse: Trader had 4 "uncorrelated" strategies (banks, tech, credit spreads, vol selling). Historical correlation 0.2-0.3. Crisis correlation spiked to 0.95 → all lost money same day, -22% in one session. Audit: If Fed raises 0.5%, which strategies lose? If VIX spikes to 40, how many stops hit? If >60% fail same scenario, over-concentrated.

🎯 Practice Exercise: Build Your Kelly Portfolio

Scenario: Your Three Trading Strategies

You have $100,000 capital and three proven strategies. Calculate optimal Kelly allocation for each:

Strategy Win Rate Avg Win Avg Loss Trades/Month
Strategy A: Momentum Breakouts 45% $600 $200 8
Strategy B: Mean Reversion 65% $300 $250 12
Strategy C: Options Income 70% $200 $400 15

Additional Info:

  • Correlation between Strategy A & B: 0.15 (nearly independent)
  • Correlation between Strategy B & C: 0.6 (moderately correlated)
  • Correlation between Strategy A & C: 0.05 (independent)

Your Tasks:

Task 1: Calculate full Kelly % for each strategy

Formula: Kelly % = (Win Rate × (Avg Win / Avg Loss) - (1 - Win Rate)) / (Avg Win / Avg Loss)

Task 2: Which fractional Kelly should you use? (Full, Half, or Quarter?)

Task 3: Adjust allocations for correlation. Which strategies need reduced sizing?

Task 4: Calculate dollar amount to risk per trade for each strategy

📋 Solution (Try First!)

Click to Reveal Solution

Task 1: Full Kelly: A = 26.7% (45% WR, 3.0 b), B = 35.8% (65% WR, 1.2 b), C = 10.0% (70% WR, 0.5 b).

Task 2: Use quarter Kelly (10-15% DDs vs 40-70% at full). Result: A = 6.7%, B = 9.0%, C = 2.5%.

Task 3: B & C have 0.6 correlation. Reduce both by 25%: A = 6.7%, B = 6.75%, C = 1.9%. Total = 15.35%.

Task 4: $100K account: A = $6,700/trade, B = $6,750/trade, C = $1,900/trade. Expected 18-24% CAGR, 12-16% max DD.

📝 Knowledge Check

Test your understanding of Kelly Criterion and portfolio construction:

Your trading system shows: 60% win rate, $400 average win, $200 average loss. What's the correct Kelly % and what should you actually risk per trade?

A) Full Kelly = 40%, so risk 40% per trade (maximize growth)
B) Full Kelly = 40%, but use Quarter Kelly = 10% per trade (balance growth and survival)
C) Kelly doesn't apply here, stick with fixed 1% per trade
Correct: B. Kelly calculation: p=0.6, q=0.4, b=$400/$200=2.0. Formula: f* = (0.6 × 2.0 - 0.4) / 2.0 = 0.8 / 2.0 = 0.4 = 40% full Kelly. But full Kelly = 92% DD on 5-loss streak (0.60^5 leaves 7.8% of account). Quarter Kelly (10%) = 41% DD on same streak (0.90^5 leaves 59%), survivable. Full Kelly: $40K risk/trade, 5 losses = $7,800 left. Quarter Kelly: $10K risk/trade, 5 losses = $59K left. Quarter Kelly captures 50% of growth with 10-20% DDs vs 70%+ at full Kelly.

You have 3 trading strategies with these full Kelly %: Strategy A = 20%, Strategy B = 25%, Strategy C = 30%. Average correlation between them is 0.80. What's your total portfolio allocation?

A) 75% total (20% + 25% + 30% = 75%)
B) 37.5% total (use quarter Kelly for each: 5% + 6.25% + 7.5%)
C) ~25-30% total (use quarter Kelly PLUS correlation adjustment: reduce by 30-40%)
Correct: C. Correlation trap: Raw Kelly = 75% total (20+25+30). Quarter Kelly = 18.75% (5+6.25+7.5). But 0.80 correlation = HIGH overlap (strategies win/lose together). At 0.80 correlation, 3 strategies act like ~1.5 independent bets, not 3. Correlation adjustment: Reduce by 30-40%. Result: 5% × 0.65 = 3.25%, 6.25% × 0.65 = 4.06%, 7.5% × 0.65 = 4.88%. Total = 12-13% (or 10% if more conservative). Real example: Trader used 18.75% without adjustment, lost 18.75% in one day when all 3 hit stops together. Correlation-adjusted to 10-12% = half the damage.

Your account equity curve has dropped below its 20-day moving average for the first time in 3 months. Your standard position size is 2% per trade. What should you do?

A) Nothing—equity curve trading is pseudoscience, stick to fixed 2% per trade
B) Reduce position size to 1% per trade (50% reduction) until equity crosses back above 20-day MA
C) Stop trading entirely until equity recovers—this is a losing streak
Correct: B. Equity below 20-day MA = below-average performance. Could be variance, regime shift, or poor execution. All require same response: REDUCE RISK. Cut size 50% (2% → 1%) until equity crosses back above MA. Larry Williams study: Equity curve traders had 40% lower max DD vs fixed-size with same edge. Example: 10-loss streak. Fixed 2%: loses 20% ($100K → $80K). Equity curve: reduces to 1% after 2-3 losses, loses ~10-12% total ($100K → $88-90K). Same streak, 50% less damage. Rule: Below MA = halve size. Above MA = normal size. Well above MA = boost 25%.

Portfolio Construction Workflow:

  • Backtest each strategy: Calculate win rate, win/loss ratio
  • Calculate Kelly % for each strategy (use quarter or half Kelly)
  • Identify correlation between strategies (do they win/lose together?)
  • Reduce allocation to highly correlated strategies (correlation >0.6)
  • Cap total portfolio allocation at 100% (or your risk tolerance)
  • Implement equity curve tracking (20-day MA)
  • Adjust sizing based on equity vs MA (increase when above, decrease when below)

Pre-Trade Kelly Check:

  • Identify which strategy this setup belongs to
  • Check remaining allocation for that strategy (have you hit Kelly limit?)
  • Check portfolio heat: Total risk across all positions < 10%?
  • Use Signal Pilot Pentarch Pilot Line to confirm edge (institutional flow aligned?)
  • If edge confirmed, use full (quarter/half) Kelly. If not, use 0.5× Kelly or skip

Key Takeaways

  • Kelly Criterion mathematically optimizes sizing based on edge (win rate × win/loss ratio)
  • Never use full Kelly (too volatile) — use 0.25-0.5× Kelly
  • Correlation matters: Reduce allocation to correlated strategies (they're the same bet)
  • Dynamic sizing: Increase when equity > MA, decrease when < MA
  • Portfolio heat cap: Total risk across all positions should never exceed 10%
  • Overconfidence kills: 60% WR + 2:1 R:R = 20% full Kelly. 7-loss streak (~1.6% probability) loses 22% at full Kelly vs 4-5% at quarter Kelly. Always fractional Kelly.

Kelly criterion provides the math, fractional Kelly provides survival. Build portfolios that grow steadily without ruin risk.

Related Lessons

Intermediate #46

Advanced Risk Management

Foundation for Kelly-based portfolio construction.

Read Lesson →
Beginner #20

Swing Trading Framework

Apply Kelly sizing to swing trading strategies.

Read Lesson →
Advanced #66

Quantitative Strategy Design

Advanced quantitative methods for portfolio optimization.

Read Lesson →

⏭️ Coming Up Next

Lesson #48: Institutional Order Flow — Enter the Advanced track and learn how institutions execute large orders without moving markets.

Educational only. Trading involves substantial risk of loss. Past performance does not guarantee future results.

💬 Discussion (0 comments)

0/1000

Loading comments...

← Previous Lesson Next Lesson →