97 Commits

Author SHA1 Message Date
chrisnov-it 8fb7bfe0c7 Add CLAUDE.md with project context and critical fix notes 2026-06-23 15:51:25 +08:00
chrisnov-it 24e66e39ae Add risk management: spread guard, break-even SL, ATR multiplier cap
- Spread guard: skip entry when spread > 60 pts (3x normal for XM)
- Break-even: auto-move SL to entry price when profit exceeds 1x ATR
- ATR multiplier cap: SL capped at max 5x ATR, TP at max 10x ATR
  (prevents absurd SL/TP from misconfigured bots)

Co-Authored-By: Claude <noreply@anthropic.com>
2026-06-23 15:39:44 +08:00
chrisnov-it 7b576d8a2c Fix symbol mapping bug + filling mode for XM broker
- find_mt5_symbol: broker-specific priority (XM/MetaQuotes/Exness/etc)
  was overwriting symbol_variants for ALL symbols, not just XAUUSD.
  EURUSD/GBPUSD/etc were being mapped to GOLD on XM broker.
  Fixed by guarding with base_symbol_cleaned == 'XAUUSD' check.
- place_trade: ORDER_FILLING_FOK → ORDER_FILLING_IOC for broker
  compatibility (XM and most forex brokers use IOC, not FOK).

Co-Authored-By: Claude <noreply@anthropic.com>
2026-06-23 15:32:33 +08:00
chrisnov-it f9e14b0e45 Improve strategy explanations with market context analysis
- MA Crossover: now shows trend direction+strength, price position vs MAs
- RSI Crossover: now shows RSI zone (overbought/neutral/oversold), gap from MA
- Bollinger Reversion: now shows BB width, price position within bands
- Turtle Breakout: now shows channel width, volatility assessment, price position

All strategies now explain WHY they're holding instead of just saying 'no signal'

Co-Authored-By: Claude <noreply@anthropic.com>
2026-06-23 15:07:27 +08:00
chrisnov-it 04ec887142 Fix health endpoint, bump MT5 dep, polish README
- Fix health check: mt5.isinitialize() → mt5.terminal_info() (was crashing)
- Bump MetaTrader5 5.0.5120 → >=5.0.5735 (old version removed from PyPI)
- README: add dev status note, restructure strategy table with 14 active
- README: Hybrid & Crypto reclassified as Intermediate (not Expert)

Co-Authored-By: Claude <noreply@anthropic.com>
2026-06-23 14:51:18 +08:00
chrisnov-it 574f50af02 Refine strategies: fix IndexBreakoutPro, lower score inflation, enhance base class
- Fix IndexBreakoutPro: added try/except for pandas_ta import (was crashing)
- Re-enable IndexBreakoutPro in strategy_map (was disabled 'temporarily' with import error)
- Lower inflated complexity scores: Hybrid 8→6, Crypto 12→7 (EXPERT→INTERMEDIATE)
- Enhance BaseStrategy with get_stop_loss(), get_take_profit(), validate() methods
- Fix mutable default arg (params: dict = {} → params: dict = None)

Co-Authored-By: Claude <noreply@anthropic.com>
2026-06-23 14:22:04 +08:00
chrisnov-it 6185ce862f Add broker preset backtest runner for XM and FBS 2026-05-19 20:15:42 +08:00
chrisnov-it 0c239418a6 Separate gross vs net backtest profit display 2026-05-19 19:41:49 +08:00
chrisnov-it 01504ac9e3 Ignore root backtest_data generated CSV files 2026-05-19 19:06:49 +08:00
chrisnov-it 0883d518a0 Normalize numpy scalar values in bot analysis logs 2026-05-19 19:02:31 +08:00
chrisnov-it bdc2fe4fa5 Fix backtest profit coloring and stop-out drawdown handling 2026-05-19 18:53:41 +08:00
chrisnov-it cf816de91f Disable CMC integration by default on main 2026-05-19 18:19:12 +08:00
chrisnov-it b3e84277a5 Document verified Python baseline and streamline changelog 2026-05-19 18:14:57 +08:00
chrisnov-it c075734379 Improve README first-run DB init and history-rewrite recovery 2026-05-19 18:08:05 +08:00
chrisnov-it 33da485768 Fix database init path to project root 2026-05-19 18:00:34 +08:00
chrisnov-it 8cdfc089b1 Ignore generated backtest datasets in lab 2026-05-19 17:52:44 +08:00
chrisnov-it 63d39cd98c Update GitHub clone URLs to chrisnov-it 2026-05-19 17:30:45 +08:00
chrisnov-it 383ae414b2 Ignore local session notes 2026-05-19 16:54:06 +08:00
chrisnov-it 5c441bd7d1 Remove obsolete Streamlit and Vercel demo files 2026-05-19 12:48:00 +08:00
chrisnov-it a9c3398de9 Consolidate MT5 README documentation 2026-05-19 12:43:19 +08:00
chrisnov-it 5bf46f5fe1 Keep main focused on MT5 platform 2026-05-19 12:38:30 +08:00
chrisnov-it 2715bfc8ef Clean public repo tracking rules 2026-05-19 12:32:59 +08:00
chrisnov-it dc668b0ba7 Fix Python 3.12 dependency and strategy imports 2026-05-19 12:27:21 +08:00
Reynov Christian e39d1e6a9d Merge branch 'main' of https://github.com/rebarakaz/quatumbotx 2025-12-01 22:06:39 +08:00
Reynov Christian b694f4e98d chore: cleanup repository - remove Vercel config and add binary file ignores 2025-12-01 20:51:41 +08:00
Reynov Christian 272f4ddde6 Delete vercel.json 2025-12-01 20:44:17 +08:00
Reynov Christian d5290643fb chore: remove Vercel configuration and cleanup dependencies 2025-11-21 18:11:34 +08:00
Reynov Christian 75090e704d Merge pull request #4 from rebarakaz/fix-vercel-json-syntax
Fix Vercel Deployment Errors
2025-11-02 14:55:05 +08:00
google-labs-jules[bot] b4921f6dca fix: Configure Vercel build and resolve deployment errors
This commit provides a comprehensive fix for the Vercel deployment, addressing multiple issues:

1.  **Added Build Configuration:**
    A `builds` section was added to `vercel.json` to explicitly instruct Vercel to use the `@vercel/python` builder for the `api/app.py` entry point. This resolves the 404 "NOT_FOUND" error.

2.  **Corrected `vercel.json` Syntax:**
    Fixed a syntax error by removing a duplicated `env` block and an extra closing bracket, which previously caused a JSON parsing failure.

3.  **Resolved Dependency Conflict:**
    Upgraded `numpy` to version `1.26.0` in `pyproject.toml` to satisfy the dependency requirements of `pandas`, resolving a package installation failure during the build process.
2025-11-02 06:52:07 +00:00
google-labs-jules[bot] 5695e9c079 fix: Resolve Vercel deployment errors
This commit addresses two issues that were causing Vercel deployments to fail:

1.  **Corrected `vercel.json` syntax:**
    Removed a duplicated `env` block and an extra closing bracket to resolve a JSON parsing error.

2.  **Resolved dependency conflict:**
    Upgraded `numpy` from version `1.23.5` to `1.26.0` in `pyproject.toml` to satisfy the version requirement for `pandas==2.3.1`.
2025-11-02 06:39:19 +00:00
Reynov Christian 649ad8affa Merge pull request #3 from rebarakaz/fix/remove-dynamic-version
Remove 'version' from dynamic list in pyproject.toml
2025-11-02 14:19:22 +08:00
Reynov Christian a596495ada Remove 'version' from dynamic list in pyproject.toml 2025-11-02 14:17:02 +08:00
Reynov Christian 45068003f3 Merge pull request #2 from rebarakaz/fix-vercel-json-syntax
Fix vercel.json Syntax Error
2025-11-02 12:45:55 +08:00
google-labs-jules[bot] acc37e7e44 Fix: Correct syntax in vercel.json
Removes a duplicated `env` block and an extra closing bracket that was causing a JSON parsing error during Vercel deployments.
2025-11-02 04:27:58 +00:00
Reynov Christian 720d52cb44 Added Dev Container Folder 2025-10-16 03:51:38 +08:00
Reynov Christian e25d4df56f chore(last_broker): update last_check timestamp for FBS broker
- Updated "last_check" from 2025-10-09 to 2025-10-16 to reflect the most recent verification time. This helps track the latest broker status update automatically.
2025-10-16 03:48:28 +08:00
Reynov Christian 443cd5a677 Merge branch 'main' of https://github.com/rebarakaz/quatumbotx 2025-10-16 02:25:13 +08:00
Reynov Christian 36d50e31a0 chore(authors): update author name and email
Update the project author and the associated email in pyproject.toml to reflect the current maintainer.
2025-10-16 02:23:17 +08:00
Reynov Christian 5b0350d1b7 remove runtime spec - let vercel auto-detect from pyproject.toml 2025-10-16 02:20:15 +08:00
Reynov Christian da7d5c77b9 add pyproject.toml with python version spec 2025-10-16 02:19:51 +08:00
Reynov Christian 296ef5929a pin gunicorn version 2025-10-16 02:11:30 +08:00
Reynov Christian eb073264df update python runtime to 3.11 2025-10-16 02:11:04 +08:00
Reynov Christian c79bc8fe19 fix vercel runtime syntax 2025-10-16 02:08:53 +08:00
Reynov Christian 7115cb7e36 fix vercel.json syntax and config 2025-10-16 02:00:15 +08:00
Reynov Christian 5e0214f914 add vercel.json for deployment 2025-10-16 01:59:19 +08:00
Reynov Christian 346f81bd41 Modify Vercel config to use app.py and Python 3.12
Updated the Vercel configuration to use app.py instead of index.py and set the Python runtime to 3.12.
2025-10-16 01:51:50 +08:00
Reynov Christian 5b41fdea95 feat: add i18n support and prepare for Vercel deployment
- Streamlined .env.example to include only essential Flask and MT5 configs for production environments
- Added .vercel directory to .gitignore for clean Vercel deployments
- Enabled internationalization by adding data-i18n attributes to strategy switcher UI elements
- Updated MT5 setup guide and roadmap documentation for clarity and current focus

This change simplifies configuration for server deployment while enhancing UI accessibility across languages.
2025-10-16 01:47:55 +08:00
Reynov Christian ddb2082a66 Add Vercel configuration for Python API 2025-10-16 01:00:39 +08:00
Reynov Christian a4a7467a5f Merge pull request #1 from rebarakaz/fix/ctrader-market-hours
fix(ctrader): Correct market open hours
2025-10-10 20:09:42 +08:00
google-labs-jules[bot] 589629e36d fix(ctrader): Correct market open hours
The is_market_open method in the cTrader broker now accurately reflects forex market hours (Sunday 22:00 UTC to Friday 22:00 UTC). The previous implementation was a naive check that didn't account for the specific open and close times.
2025-10-10 11:42:50 +00:00