SimpleRebalance
Rules-based target-weight rebalancing.
Java 21 · Interactive Brokers · live for ~5 years
Runs in Docker against the Interactive Brokers TWS API, manages real and paper accounts, and has been placing real orders unattended on a daily cron for ~5 years.
Framing: rules-based. No prediction, no discretionary calls, no returns or performance claims. The signal is engineering and operational rigor — a live system I run.
POST /api/asset_prices_bulk_update,
POST /api/portfolio_assets_bulk_update).Mechanical and rule-driven — no AI in the signal path.
Rules-based target-weight rebalancing.
Trend-based signal.
The thesis the engine implements: start from the broad index, treat leverage as capital efficiency rather than speculation, split that exposure across All Seasons-style buckets, and let the rebalancer hold the targets. Mechanical, not predictive — no calls on direction, no discretionary overrides.
Starts from the broad index as the baseline, uses 3x leverage as capital efficiency instead of stock-picking, buckets exposure across All Seasons categories (growth, stability, crypto), and lets a quarterly rebalance hold the targets.
Why most strategies try to predict the market and this one doesn't — target weights, the drift problem, trading bands around each target, the sell-high / buy-low triggers, the tight-vs-wide band knob, and the time-based force rebalance every ninety days regardless of drift.
Per-asset target allocations with deviation triggers and live drift charts — how the rules look in FamilyFund, which is the book of record that DS Trader feeds.
DS Trader is one half of a two-app platform: it feeds FamilyFund, a Laravel portfolio app my family actually uses. End-to-end ownership across Java, PHP, Python, data modeling, API design, and operations.
Built and operated solo. — jdtogni@gmail.com · GitHub · back to home