feat: finalize portfolio system and quantitative validation- Finalized MA_Crossover(30,100) and TrendFiltered_MA(30,100,ADX=15)

- Implemented portfolio engine with risk-based allocation (50/50)
- Added equity-based metrics for system-level evaluation
- Validated portfolio against standalone strategies
- Reduced max drawdown and volatility at system level
- Quantitative decision closed before paper trading phase
This commit is contained in:
DaM
2026-02-02 14:38:05 +01:00
parent c569170fcc
commit f85c522f22
53 changed files with 2389 additions and 104 deletions

View File

@@ -9,8 +9,8 @@ from datetime import datetime, timedelta
from src.utils.logger import log
from src.data.storage import StorageManager
from src.backtest.engine import BacktestEngine
from src.backtest.metrics import print_backtest_report, calculate_all_metrics
from src.core.engine import Engine
from src.core.metrics import print_backtest_report, calculate_all_metrics
from src.strategies import MovingAverageCrossover, BuyAndHold, RSIStrategy
def setup_environment():
@@ -76,7 +76,7 @@ def run_backtest_demo():
)
# Crear motor de backtesting
engine = BacktestEngine(
engine = Engine(
strategy=strategy,
initial_capital=10000,
commission=0.001, # 0.1%
@@ -172,7 +172,7 @@ def compare_strategies_demo():
for name, strategy in strategies:
log.info(f"\n🧪 Testeando: {name}")
engine = BacktestEngine(
engine = Engine(
strategy=strategy,
initial_capital=10000,
commission=0.001,
@@ -187,7 +187,7 @@ def compare_strategies_demo():
log.info(f" Win Rate: {results['win_rate_pct']:.2f}%")
# Comparar resultados
from src.backtest.metrics import compare_strategies
from src.core.metrics import compare_strategies
compare_strategies(all_results)
storage.close()