diff --git a/GEMINI.md b/GEMINI.md index 8fa7976..61e080a 100644 --- a/GEMINI.md +++ b/GEMINI.md @@ -21,7 +21,7 @@ This project implements the "Touch & Turn" scalping strategy for the Trading212 ## Risk & Capital Management * **Virtual Balance Simulation:** In demo mode, subtracts £4,750 from total equity to simulate a realistic £250 starting point. -* **1% Risk Rule:** Risks exactly 1% of the Virtual Balance per trade. +* **5% Risk Rule:** Risks exactly 5% of the Virtual Balance per trade. * **Capital Partitioning:** Divides total available capital (£250) and risk budget equally among all active ticker threads for the day (max 3). * **Precision & Minimums:** Automatically detects "precision-mismatch" or "min-quantity-exceeded" errors from T212 and retries with corrected values. diff --git a/README.md b/README.md index 8a86eeb..e7f003f 100644 --- a/README.md +++ b/README.md @@ -48,8 +48,8 @@ The strategy capitalizes on the initial liquidity and volatility of the US marke The bot uses dynamic **Risk-Based Position Sizing** to ensure consistent exposure. -- **1% Risk Rule:** By default, the bot risks **1% of your account balance** per trade. -- **Virtual Balance simulation:** If you are testing on a demo account with a large balance (e.g., £5,000) but plan to trade live with £250, the bot can maintain perspective. It automatically calculates a "Virtual Balance" by subtracting £4,750 from your actual total, ensuring your risk amount is exactly what it will be in the real world. +- **5% Risk Rule:** By default, the bot risks **5% of your account balance** per trade. +- **Virtual Balance simulation:** If you are testing on a demo account with a large balance (e.g., £5,000) but plan to trade live with £250, the bot can maintain perspective. It automatically calculates a "Virtual Balance" by subtracting £4,750 from your actual total, ensuring your risk amount is exactly what it will be in the real world. (e.g. £12.50 risk on a £250 virtual balance). - **Leverage Adjusted:** For Inverse ETPs (3x leverage), the bot adjusts the quantity and bracket percentages to ensure the monetary risk remains identical to a standard 1x stock trade. --- diff --git a/main.py b/main.py index 42f07e6..2287f33 100644 --- a/main.py +++ b/main.py @@ -82,7 +82,7 @@ def run_ticker_lifecycle(client, yf_ticker, t212_ticker, tz, num_tickers): logger.info(f"Bot thread started for {yf_ticker} ({t212_ticker}).") # Initialize variables outside the retry loop to prevent UnboundLocalError - risk_share = 2.50 / num_tickers + risk_share = 12.50 / num_tickers capital_share = 250.0 / num_tickers try: @@ -127,7 +127,8 @@ def run_ticker_lifecycle(client, yf_ticker, t212_ticker, tz, num_tickers): actual_balance = float(account_info.get('totalValue', 5000.0)) virtual_balance = max(0, actual_balance - 4750.0) - risk_share = (virtual_balance * 0.01) / num_tickers + # Risk 5% of this adjusted virtual balance + risk_share = (virtual_balance * 0.05) / num_tickers capital_share = virtual_balance / num_tickers logger.info(f"Account: {actual_balance:.2f} | Virtual: {virtual_balance:.2f} | Share: {capital_share:.2f}")