LiquidMind Academy

ICT/SMC concept library with interactive charts

Risk Guard Protocol/

Progressive Profit Factor System

RiskSystemAlgorithmSizing

TL;DR

The Progressive Profit Factor (PPF) System is LiquidMind's adaptive risk engine. Instead of risking the same fixed percentage on every trade, the system continuously evaluates its own recent performance across the last 20 closed positions and dynamically scales position size up or down. The result: risk automatically shrinks during losing streaks and expands during winning phases — without any manual intervention.

Grade → Risk Multiplier Overview

Progressive Profit Factor System
A+
x2.5
A
x2.0
B
x1.4
C
x1.0
D
x0.6
E
x0.3
Grades update dynamically based on your last 20 closed trades. Hover to inspect each tier.
How The PPF Engine Calculates Your Grade — Step by Step
📊

Step 01

Rolling 20-Trade Window

The system queries the last 20 closed positions ordered by closed_at DESC. Only positions with a real PnL and a valid SL distance are included. Open, cancelled, or positions lacking SL data are ignored.

SELECT * FROM closed_orders WHERE user_id = $1 ORDER BY closed_at DESC LIMIT 20
Grade Band Reference Table — Exact System Thresholds
GradePF Score RangeMultiplierEffective Risk (base 1%)System Behaviour
A+≥ 1.75×2.52.5%Outstanding – scale up aggressively
A1.40 – 1.74×2.02.0%Very strong – full green flag
B1.10 – 1.39×1.41.4%Solid – slight boost
C0.85 – 1.09×1.01.0%Baseline – trade at base risk
D0.60 – 0.84×0.60.6%Weak – reduce size
E< 0.59×0.30.3%Critical – minimum exposure
Cold start: fewer than 5 closed trades → defaults to Grade C (×1.0). Recalculated on each position close.
PPF Grade Simulator — What Would My System Score?
Win Rate (last 20 trades)55%
Average R:R1 : 1.80
Base Risk Per Trade1%

PF Score

0.990

55% WR × 1.80 R:R

System Grade

C

×1.0 multiplier

Baseline – trade at base risk

Effective Risk

1.000%

1% base × 1x = 1.000% actual

LiquidMind AI Context

The database function `calculate_ppf_multiplier(user_id)` queries the `closed_orders` table, retrieves the last 20 closed positions ordered by `closed_at DESC`, computes win_rate and avg_rr, multiplies them into the PF score, and maps the result to the appropriate grade. The multiplier is then applied to `risk_per_trade` inside `calculate_position_size()` before the position quantity is sent to the exchange. This means your actual risk exposure changes after every single closed trade — seamlessly and without any action required from you.

System monitors this pattern in real-time