TPTBusiness
49a2c34c5c
test: add 10 tests (continuous gen, strategy builder, live trader, factor integration) — 632 total
2026-05-04 22:11:39 +02:00
TPTBusiness
71ceb9c809
fix: update WF test for new default (wf_rolling=True)
2026-05-04 22:04:05 +02:00
TPTBusiness
7f5acccfd9
test: add 15 tests (WF details, optuna, preflight, signal validation, IC bounds) — 622 total
2026-05-04 21:56:28 +02:00
TPTBusiness
a459518dfa
test: add 15 tests (perf bounds, chaining, multi-index, metric bounds, factor runner edges) — 607 total
2026-05-04 21:43:18 +02:00
TPTBusiness
41c231e418
test: add 16 headform tests (docker mocks, spread, rollover, regression, cross-system) — 592 total
2026-05-04 21:39:27 +02:00
TPTBusiness
5c93c786e7
test: add 7 robustness tests (slippage, latency, MC-reshuffle, OOS, weekend gaps) — 576 total
2026-05-04 21:06:53 +02:00
TPTBusiness
834cc686d1
fix: skip Kronos factor on GPUs < 20GB to avoid CUDA OOM (shared with llama-server)
2026-05-04 20:31:11 +02:00
TPTBusiness
c0ec1b39e1
feat: enable walk-forward OOS validation by default in backtest_signal_riskmgmt
2026-05-04 18:43:17 +02:00
TPTBusiness
f5e55d2dad
test: add 15 deepest tests (property-based, metamorphic, fuzzing, stress) — 569 total
2026-05-04 18:31:28 +02:00
TPTBusiness
b78b9dea8c
test: add 14 tests for final untested modules (runtime_info, repo_utils, json_loader) — 554 total
2026-05-04 18:21:31 +02:00
TPTBusiness
58a7ece3a9
fix(security): replace os.path.realpath with pathlib.resolve in safe_resolve_path to fix path-injection alerts
2026-05-04 18:05:09 +02:00
TPTBusiness
02083409e0
test: add 23 open-source tests (CLI, backtest edge cases, core utils, protections, env, log) — 540 total
2026-05-03 23:13:55 +02:00
TPTBusiness
33f6daf1d2
feat: continuous strategy generator (WF, MTF, stability, ML models, auto-ensemble)
2026-05-03 22:42:29 +02:00
TPTBusiness
1827c50344
feat: optimize strategy generator (cache OHLCV, min_sharpe 1.5, predix generate-strategies CLI)
2026-05-03 21:58:07 +02:00
TPTBusiness
06a5d5d92d
refactor: move strategy_orchestrator and optuna_optimizer to closed-source (local/)
2026-05-03 21:38:09 +02:00
TPTBusiness
7696a3aaa6
docs: update license section from MIT to AGPL-3.0
2026-05-03 21:20:41 +02:00
TPTBusiness
6d37f8956f
feat: add runtime backtest verification (10 invariant checks in <1ms) + 489 tests + README docs
2026-05-03 14:00:49 +02:00
TPTBusiness
020bc11742
test: add 8 cross-implementation validation tests (IC/Sharpe/MaxDD cross-check, buy-and-hold equality, IC invariance) — closes 5% gap, 477 total
2026-05-03 13:53:43 +02:00
TPTBusiness
0f7eb908b4
test: add 10 ground-truth verification tests (hand-computed metrics, mathematical invariants, trend directions) — 469 total
2026-05-03 13:47:35 +02:00
TPTBusiness
4d8b389b47
test: add 13 final tests (walk-forward, dedup, e2e, edge-cases, cross-check, legacy-vs-new) — 459 total, 0 failures
2026-05-03 13:37:33 +02:00
TPTBusiness
72b9a735c9
test: add 28 deep-detail tests (look-ahead shift, alignment, safe_float, trade_pnl, MC p-value) — 446 total, 0 failures
2026-05-03 12:35:39 +02:00
TPTBusiness
ce4a5b7b4f
fix: correct MaxDD to equity curve in strategy_builder; test: add 8 cross-validation tests for metric correctness
2026-05-03 12:28:09 +02:00
TPTBusiness
037f7ba7d2
fix: correct Sharpe/MaxDD/WinRate in direct factor eval (was computing on raw factor, now on strategy returns)
2026-05-03 12:17:27 +02:00
TPTBusiness
e31963713b
test: add 31 tests for remaining modules (log, loader, doc_reader, scripts, fx_validator) — 410 total, 0 failures
2026-05-03 12:00:54 +02:00
TPTBusiness
dc2a1a41f4
test: add 16 tests for eurusd, rl env, and all 379 tests now pass (0 failures)
2026-05-03 11:39:24 +02:00
TPTBusiness
c3ff9d5e63
chore: update pre-commit test count to ~360
2026-05-03 11:32:11 +02:00
TPTBusiness
1a530440c1
test: add 42 tests for remaining modules (conf, kb, interactor, fmt, llm_utils, graph)
2026-05-03 11:31:28 +02:00
TPTBusiness
b803d9fab5
chore: update pre-commit test count to ~315
2026-05-03 11:25:11 +02:00
TPTBusiness
13dbf27457
test: add 28 tests for LLM components, RL indicators, and model evaluators
2026-05-03 11:24:28 +02:00
TPTBusiness
49ebc19fd0
test: add 39 tests for fx_config, utils, predix_full_eval, exceptions, and log
2026-05-03 11:18:27 +02:00
TPTBusiness
58eb551898
test: add 4 tests for QuantTrace and QlibQuantHypothesis
2026-05-03 11:14:33 +02:00
TPTBusiness
2e18b7c104
test: add 24 tests for factor/model scenarios and experiments
2026-05-03 11:12:23 +02:00
TPTBusiness
28743eb043
test: add 33 tests for app config, strategy builder, and quant scenario
2026-05-03 11:09:55 +02:00
TPTBusiness
f6f5531427
test: expand pre-commit to run qlib+backtesting unit tests (160+ tests)
2026-05-03 11:05:39 +02:00
github-actions[bot]
bd9362e2f3
chore(master): release 1.4.2 ( #48 )
...
Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
2026-05-03 11:02:32 +02:00
TPTBusiness
a4d4266295
test: add 129 tests for critical untested code (core, CoSTEER, factor_coder, model_coder, qlib pipeline)
2026-05-03 10:59:24 +02:00
TPTBusiness
8f2ed4185f
fix: add missing sys import and fix undefined acc_rate in factor eval
2026-05-03 10:19:59 +02:00
github-actions[bot]
7f24af6f05
chore(master): release 1.4.1 ( #47 )
...
Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
2026-05-03 09:39:56 +02:00
TPTBusiness
aba88dd090
fix: 15 bug fixes across orchestrator, runner, backtest, and infrastructure
...
Critical:
- strategy_orchestrator: fix IndentationError that prevented import (line 764)
- factor_runner: fix literal 'sys.executable' string → variable (line 966)
High (path bugs causing wrong directories):
- backtest_engine: fix results_path depth (3→4 .parent hops)
- results_db: fix factors_dir/failed_dir depth (3→4 .parent hops)
- factor_runner: eliminate run_id variable shadowing (parallel_run_id/db_run_id)
- model_runner: fix DB connection leak on add_backtest exception
- optuna_optimizer: fix imported logger shadowed by module-level reassignment
Medium:
- env: handle non-UTF-8 Docker build output with errors='replace'
- env: guard conda env list parsing against empty lines
- factor_runner: add check=False + stderr logging for full-data subprocess
- strategy_orchestrator: log exec() exceptions at ERROR level with traceback
- strategy_orchestrator: warn on unreplaced {{template}} variables in prompts
Low:
- factor_runner: guard IC_max.index access against scalar (AttributeError)
- predix_parallel: close log file handle on Popen failure
- predix_rebacktest_strategies: replace 4 bare except: with except Exception:
2026-05-03 09:37:00 +02:00
TPTBusiness
28766c932e
test: add regression tests for background task path and env bugs
...
- Verify parallel runner project_root is repo root, not scripts/
- Verify .env loading from correct path
- Verify API key distribution (single key, multi-key comma-separated)
- Verify CLI project_root depth (3 .parent hops, not 4)
- Verify start_loop uses sys.executable and child_proc, not pkill
- Verify parallel_cli does not hardcode model=local
- Verify all referenced scripts exist at resolved paths
2026-05-03 08:57:56 +02:00
TPTBusiness
574e9d6c08
fix: correct project root paths and subprocess handling in parallel runner and CLI
...
- predix_parallel.py: fix project_root from scripts/ to repo root (parent.parent)
- predix_parallel.py: fix .env loading path and API key distribution logic
- cli.py: fix project_root depth from 4 to 3 .parent hops (7 locations)
- cli.py start_loop: use sys.executable instead of hardcoded python
- cli.py start_loop: replace broad pkill with targeted child process management
- cli.py parallel: remove hardcoded model=local
2026-05-03 08:49:18 +02:00
TPTBusiness
ce76da912a
fix: also catch ValueError in mean_variance for dimension mismatch
2026-05-03 00:39:22 +02:00
TPTBusiness
02ac3f7aae
test: add direct unit tests for _apply_riskmgmt_mask, safe_resolve_path, import_class, and _add_column_if_not_exists
2026-05-03 00:35:57 +02:00
TPTBusiness
39b49b1724
fix: filter NaN in max(), remove redundant ternary, handle non-finite vbt results
2026-05-03 00:25:58 +02:00
TPTBusiness
f1eb66cc8f
fix: fix type annotation, remove unused parameter, improve import_class errors
2026-05-03 00:22:16 +02:00
TPTBusiness
ca003cd0f2
fix: close log file handle, fix RiskMgmt equity double-count, remove bare except
2026-05-03 00:17:02 +02:00
TPTBusiness
4eeb724ac5
fix: resolve dead code, shell injection risk, mutable defaults, and other bugs
...
- strategy_orchestrator.py: remove unreachable dead 'if not factor_values' after early return
- strategy_orchestrator.py: eliminate duplicate OHLVC load in evaluate_strategy
- env.py: escape single-quotes in Docker entry to prevent shell injection (CWE-78)
- env.py: replace mutable default args with None pattern in DockerEnv subclasses
- factor_runner.py: move pandarallel.initialize() from import-time to lazy init
2026-05-02 23:21:38 +02:00
TPTBusiness
6c3bdb6ec1
fix: resolve unbound variable, logger shadowing, withdraw_loop edge case, and other bugs in main scripts
...
- quant.py: guard against empty orch_factors, move strategy_name before try block
- quant_proposal.py: fix __init__ return type Tuple[dict,bool] -> None
- strategy_orchestrator.py: remove dead rdagent_logger import shadowed by getLogger
- factor.py: replace unusual 'not x is None' with idiomatic 'x is not None'
- workflow/loop.py: withdraw_loop(0) raises RuntimeError instead of looking for folder -1
- workflow/tracking.py: replace crash-prone AssertionError with logger.warning + skip
- factor_from_report.py: fix misleading comment about loop_n/step_n dual use
2026-05-02 22:56:29 +02:00
github-actions[bot]
82633d328a
chore(master): release 1.4.0 ( #46 )
...
Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
2026-05-01 15:59:06 +02:00
TPTBusiness
c5d919f581
feat(optimizer): add max_positions parameter to Optuna search space
...
Add max_positions (1-5) as an optimizable hyperparameter across all
three Optuna search stages (coarse, fine, very fine). The parameter
scales effective position size as min(position_size_pct × max_positions,
1.0), allowing the optimizer to discover pyramiding strategies.
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com >
2026-05-01 15:58:01 +02:00