By Stefano Starkel · Standing page · Policy pack v2026.09.2, effective 5 July 2026

This is the rule set, published. Most portfolio advice tells you what to think about. This page tells you exactly what the Incomestead engine does, with every threshold it uses, so you can check it, argue with it, or build your own version of it.

What this is, and what it is not

This is the rule set the Incomestead engine applies to a portfolio every week: the margin zones, the persistence rule, the Margin Coverage Ratio bands, the order in which breaches are ranked, and the exact shape of every recommendation it may make. It is generated directly from the versioned policy file the engine reads, so the numbers here are the numbers the engine uses — not a description of them.

The engine is deterministic: identical inputs produce a byte-identical report, every time. Nothing here is a model, a forecast or a score tuned by hand. Every threshold is data in a versioned policy pack; the engine's code contains none.

What it is not. It is not advice, and it is not a portfolio. It is the rule set itself — which is the part worth reusing. The case for running a book on written rules at all is made in what portfolio governance is.

The margin zones

Margin utilisation is the margin loan divided by the gross value of the securities in the account. It is the only input to the zone. Each zone owns its lower bound: a reading exactly on a boundary belongs to the higher zone.

ZoneUtilisation
Clearbelow 30%
Harvest30% to below 35%
Freeze35% to below 40%
Forced40% and above

Worked example. A $300,000 margin loan against $1,000,000 of securities is 30% utilisation. That reading sits exactly on a boundary, so it belongs to the zone above it: Harvest.

The persistence rule

A breach in a persistence-gated zone must hold across this snapshot and the previous one before it may drive a recommendation. One bad reading is recorded and shown; it is not yet acted on. The gated zone is: Freeze.

Forced is deliberately not gated. Above the top boundary the engine acts on the first reading: a book that jumps straight into forced reduction cannot afford to wait a week for confirmation.

The same rule governs allocation. A holding outside its band is flagged the week it happens; a rebalance is recommended only when the breach holds across this snapshot and the previous one. In the first week the report says so, rather than staying silent: the breach is shown, and the recommendation reads that no rebalance is made yet.

A Margin Coverage Ratio breach follows the same rule: it is flagged the week coverage falls below the floor, and action is recommended only when it holds across this snapshot and the previous one.

An options capacity breach is the other deliberate exception. It pauses new option writing from the first reading, because pausing adds no risk and waiting a week would mean adding exposure the book has no room for.

Persistence gates how severe a finding is and when a rebalance or a coverage action is recommended, never whether the book may add risk. In a stress zone the engine will not recommend increasing a risk asset, from the first reading.

The Margin Coverage Ratio

The Margin Coverage Ratio is a year's dividend income divided by the annual cost of carrying the account: margin interest plus account fees. Option premium is not counted. At 1.0 or more, income pays the cost; below it, the cost is being paid from capital. Only a band that cannot cover the interest raises a breach — the bands above it are shown so a thinning buffer is visible before it becomes one.

BandRatioRaises a breach?
Strong1.5 and aboveNo
Acceptable1.2 to below 1.5No
Thin1.0 to below 1.2No
Unacceptablebelow 1.0Yes

Worked example. $13,000 of dividend income against $10,000 of annual interest and fees is a ratio of 1.3: Acceptable. Each band's lower edge is inclusive.

Precedence

When several rules breach in the same week, the policy ranks them in this order:

  1. Margin
  2. Allocation
  3. Options capacity
  4. Income coverage (the Margin Coverage Ratio)

Margin comes first because it is the only breach that can end the strategy for you — a lender can sell without asking. The order ranks the recommendations; it never prescribes the order you carry them out in. Each recommendation stands on its own. An income-coverage breach is reported as an action in its own right rather than as a ranked trade.

The recommendation contracts

Margin reduction. One high-level line stating how far the loan must come down — naming outside cash as the preferred route, because it clears the zone without selling anything — then the top 3 eligible sell options, ranked by how much each one improves the margin position. The reduction targets 34.9% utilisation, just below the 35% boundary where Freeze begins, so clearing a stress zone does not leave the book sitting on its edge.

Rebalancing. Once a breach has persisted (see the persistence rule), a position outside its band is brought back to the midpoint between its target and the band edge it crossed — not all the way to target:

CaseRebalance to
Overweight (above the upper band)(target + upper band) ÷ 2
Underweight (below the lower band)(target + lower band) ÷ 2

Precedence still applies: in a stress zone an underweight risk asset is held, not increased, and the engine will not recommend trimming a position it would refuse to sell.

Multiple recommendations are independent. The engine never executes anything and never tells you what to do first.

Where a band sits is one question; how often to act on it is another, answered in how often to rebalance.

The allocation band rule

Every allocation band is proportional to its target. With the default relative width of 30%:

EdgeFormula
Lower bandtarget × 0.7
Upper bandtarget × 1.3

A small allocation gets a small band and a large one gets a large band, so a one-point move in a 5% position is treated as seriously as a six-point move in a 30% one. A fixed ±5-point band cannot do that.

Worked example. A 20% target has a band of 14% to 26%. Above 26% it is overweight and rebalances to 23%; below 14% it is underweight and rebalances to 17%.

Measuring the gap between a holding and its band, week after week, is allocation drift.

An allocation breach is flagged from the first reading. The rebalancing recommendation is made only once the breach holds across this snapshot and the previous one.

Version and changes

This page is policy pack v2026.09.2, effective 5 July 2026. The engine stamps the policy version on every weekly snapshot, and a past week is always re-evaluated under the version it was governed by — a rule change never rewrites history.

The page is regenerated from the policy file itself, and a check in the repository refuses any change that would let the two disagree. If the version above changes, the rules on this page changed with it.

Using this specification

This specification is licensed under Creative Commons Attribution 4.0 International. You may quote, cite, adapt and implement it, in whole or in part, with attribution to https://www.incomestead.com/governance-specification/. If you build something on it, cite the version you built against.

Incomestead recommends. You decide.