How this allocation model works
Let V be the sum of current asset amounts and D the new cash. Normalize your accepted weights to sum to 1. Each target amount is weight × (V + D). In buy-and-sell mode, the unrounded trade is target amount minus current amount; the sum of trades is D.
In new-cash-only mode, calculate each positive gap as max(0, target amount − current amount). Allocate D in proportion to those gaps without selling. If all current assets are zero, allocate D by the normalized target weights. With no new cash, this mode makes no changes. A zero final total has no defined percentage allocation.
Example: Stock 8,000 and Bond 2,000, your targets 60% / 40%, and new cash 1,000. Allowing buys and sells gives targets 6,600 / 4,400 and trades −1,400 / +2,400. New cash only adds 0 / 1,000, leaving 8,000 / 3,000: about 72.73% / 27.27%, a deviation of +12.73 / −12.73 percentage points.
Hypothetical and educational only, not financial advice or a prediction. Targets are entirely yours; this tool does not recommend allocations, select assets or execute orders. It does not model taxes, fees, shares, prices, growth or inflation. Asset names and inputs remain in this page’s memory; refreshing restores the example.