In this invented example, 100 USD total room is tighter than 300 USD daily. If you track two fixed floors on one equity number, you compare your next loss to both gaps.
A Reddit thread discusses daily drawdown or a consistency rule (daily drawdown or consistency rule discussion). This piece does not answer consistency rules. It is only an arithmetic illustration motivated by that drawdown discussion.
The numbers
Equity is the account value including open trades. Here it is 9,600 USD. The case sets a fixed total floor at 9,500 USD and a fixed daily floor at 9,300 USD on that same equity basis.
| Equity USD | Total floor USD | Daily floor USD |
|---|---|---|
| 9,600 | 9,500 | 9,300 |
Total room is 100 USD. Daily room is 300 USD. A loss must stay above both floors at once, so the smaller positive room sets how far the next loss can go before it crosses a line.
You can see it in two subtractions. 9,600 minus 9,500 leaves 100 USD. 9,600 minus 9,300 leaves 300 USD. Now subtract the next loss from equity first. Then compare that new equity with each floor. A 120 USD loss leaves 9,480 USD. That is below 9,500 USD and above 9,300 USD. So the daily gap alone would have missed the breach. The total gap decides here because it is smaller.
300 USD daily room covers a 120 USD loss. 100 USD total room is exceeded at 9,480 USD, 20 USD below the total floor and 180 USD above the daily floor. I never use the larger buffer alone.
Python check
This function does pure subtraction and returns both gaps plus a position tag. It places no trade and opens no broker connection. It only subtracts numbers you type in. Three arithmetic checks passed.
def rooms(equity, total_floor, daily_floor):
return {
"total": equity - total_floor,
"daily": equity - daily_floor,
}
def position(equity, floor):
if equity > floor:
return "above"
if equity == floor:
return "at_floor_check_rule"
return "below"
assert rooms(9600, 9500, 9300) == {"total": 100, "daily": 300}
assert 9600 - 120 == 9480
assert (position(9480, 9500), position(9480, 9300)) == ("below", "above")
Equality returns a tag that asks for the written rule. The code does not call that tag safe.
I put the two floors side by side before I judge room. I take both numbers from written rules. I put them on the same equity basis. Then I subtract each floor from current equity. The smaller positive result is the tighter gap. That is the gap I check first in this invented case.
Cases near the total floor
Start again from 9,600 USD and test three hypothetical losses against the 9,500 USD total floor. A 99 USD loss leaves 9,501 USD, above the floor. A 100 USD loss leaves 9,500 USD, exactly on the floor and allowed only if your firm wording permits equality. A 101 USD loss leaves 9,499 USD, below the floor. Equality is not automatically safe. Your written rules decide if touching the floor counts as a breach.
Your rules
This case uses fixed floors only. Fixed means the floors stay at 9,500 USD and 9,300 USD in this case. They do not follow equity up or down. A trailing floor moves with the account under its own written rule and needs its own peak in the account. Do not reuse these fixed numbers for it.
Room left is not allowed risk. Commissions, slippage and changing equity can shrink room before or during the next loss. This is no sizing instruction. Fees, floating P/L, resets and equality come from your actual written rules. I write both floors down first. Write both floors from your rules on the same equity basis and compare the smaller room.
The optional free Pre-Check, the free Prop Rule Guard, can help organise the written rules.
This invented case is not firm terms, not live broker records and not a pass test.

Top comments (0)