]>
Piment Noir Git Repositories - freqai-strategies.git/log
Jérôme Benoit [Tue, 16 Dec 2025 12:04:39 +0000 (13:04 +0100)]
refactor(qav3): cleanup extrema weighting hybrid strategy logic
Signed-off-by: Jérôme Benoit <jerome.benoit@piment-noir.org>
Jérôme Benoit [Tue, 16 Dec 2025 10:13:32 +0000 (11:13 +0100)]
refactor(ReforceXY): factor out reward tunable defaults
Signed-off-by: Jérôme Benoit <jerome.benoit@piment-noir.org>
Jérôme Benoit [Mon, 15 Dec 2025 21:08:46 +0000 (22:08 +0100)]
refactor(ReforceXY): factor out reward factor computations
Signed-off-by: Jérôme Benoit <jerome.benoit@piment-noir.org>
Jérôme Benoit [Mon, 15 Dec 2025 18:53:53 +0000 (19:53 +0100)]
chore(qav3): bump strategy version to 3.3.183
Jérôme Benoit [Mon, 15 Dec 2025 18:46:10 +0000 (19:46 +0100)]
fix(qav3): plot extrema bars with normalized weights
Jérôme Benoit [Mon, 15 Dec 2025 13:14:28 +0000 (14:14 +0100)]
perf(qav3): make extrema weights computation fully numpy-based
Signed-off-by: Jérôme Benoit <jerome.benoit@piment-noir.org>
renovate[bot] [Mon, 15 Dec 2025 11:29:18 +0000 (12:29 +0100)]
chore(deps): lock file maintenance (#21)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
Jérôme Benoit [Sun, 14 Dec 2025 16:22:43 +0000 (17:22 +0100)]
docs: refine README.md formatting
Signed-off-by: Jérôme Benoit <jerome.benoit@piment-noir.org>
Jérôme Benoit [Sun, 14 Dec 2025 14:09:33 +0000 (15:09 +0100)]
refactor(qav3): better handling of 0 weights in extrema weighting
Signed-off-by: Jérôme Benoit <jerome.benoit@piment-noir.org>
Jérôme Benoit [Sun, 14 Dec 2025 14:01:17 +0000 (15:01 +0100)]
refactor(qav3): align fallbacks un extrema weights handling
Signed-off-by: Jérôme Benoit <jerome.benoit@piment-noir.org>
Jérôme Benoit [Sun, 14 Dec 2025 13:35:44 +0000 (14:35 +0100)]
fix(qav3): geometric_mean computation in hybrid extrema weighting
+ nan-aware computations
Signed-off-by: Jérôme Benoit <jerome.benoit@piment-noir.org>
Jérôme Benoit [Sat, 13 Dec 2025 23:14:28 +0000 (00:14 +0100)]
refactor(qav3): namespace alignment
Signed-off-by: Jérôme Benoit <jerome.benoit@piment-noir.org>
Jérôme Benoit [Sat, 13 Dec 2025 21:52:29 +0000 (22:52 +0100)]
docs(qav3): refine configuration template
Signed-off-by: Jérôme Benoit <jerome.benoit@piment-noir.org>
Jérôme Benoit [Sat, 13 Dec 2025 21:41:14 +0000 (22:41 +0100)]
docs: add code comment
Signed-off-by: Jérôme Benoit <jerome.benoit@piment-noir.org>
Jérôme Benoit [Sat, 13 Dec 2025 21:26:34 +0000 (22:26 +0100)]
docs(qav3): refine extrema weighting docs
Signed-off-by: Jérôme Benoit <jerome.benoit@piment-noir.org>
Jérôme Benoit [Sat, 13 Dec 2025 21:09:33 +0000 (22:09 +0100)]
chore(qav3): bump versions
Signed-off-by: Jérôme Benoit <jerome.benoit@piment-noir.org>
Jérôme Benoit [Sat, 13 Dec 2025 20:10:56 +0000 (21:10 +0100)]
feat(qav3): add hybrid extrema weighting strategy
Signed-off-by: Jérôme Benoit <jerome.benoit@piment-noir.org>
Jérôme Benoit [Sat, 13 Dec 2025 11:51:50 +0000 (12:51 +0100)]
fix(qav3): handle NaN with imputation in extrema weighting computation pipeline
When normalizing extrema weights, NaN values can lead to issues in
Signed-off-by: Jérôme Benoit <jerome.benoit@piment-noir.org>
Jérôme Benoit [Sat, 13 Dec 2025 02:32:59 +0000 (03:32 +0100)]
docs: refine README.md description of extrema selection methods
Signed-off-by: Jérôme Benoit <jerome.benoit@piment-noir.org>
Jérôme Benoit [Sat, 13 Dec 2025 02:12:34 +0000 (03:12 +0100)]
feat(qav3): add extrema weighting by swing efficiency ratio and speed
Signed-off-by: Jérôme Benoit <jerome.benoit@piment-noir.org>
Jérôme Benoit [Sat, 13 Dec 2025 00:45:01 +0000 (01:45 +0100)]
feat(qav3): properly integrate volume extrema weighting, take 2
Signed-off-by: Jérôme Benoit <jerome.benoit@piment-noir.org>
Jérôme Benoit [Sat, 13 Dec 2025 00:04:21 +0000 (01:04 +0100)]
refactor: add pivot volumes calculation in zigzag function
Signed-off-by: Jérôme Benoit <jerome.benoit@piment-noir.org>
Jérôme Benoit [Fri, 12 Dec 2025 22:34:08 +0000 (23:34 +0100)]
fix(qav3): ensure extrema weighting computation properly handle NaN
Signed-off-by: Jérôme Benoit <jerome.benoit@piment-noir.org>
Jérôme Benoit [Thu, 11 Dec 2025 16:03:53 +0000 (17:03 +0100)]
docs: improve tunables description
Signed-off-by: Jérôme Benoit <jerome.benoit@piment-noir.org>
Jérôme Benoit [Thu, 11 Dec 2025 15:58:18 +0000 (16:58 +0100)]
chore(qav3): bump versions
Signed-off-by: Jérôme Benoit <jerome.benoit@piment-noir.org>
Jérôme Benoit [Thu, 11 Dec 2025 15:56:18 +0000 (16:56 +0100)]
docs: improve tunables description
Signed-off-by: Jérôme Benoit <jerome.benoit@piment-noir.org>
Jérôme Benoit [Thu, 11 Dec 2025 15:52:06 +0000 (16:52 +0100)]
docs: improve tunables description
Signed-off-by: Jérôme Benoit <jerome.benoit@piment-noir.org>
Jérôme Benoit [Thu, 11 Dec 2025 15:40:32 +0000 (16:40 +0100)]
docs: improve README.md configuration tunables description
Signed-off-by: Jérôme Benoit <jerome.benoit@piment-noir.org>
Jérôme Benoit [Thu, 11 Dec 2025 15:30:01 +0000 (16:30 +0100)]
feat(qav3): Add volume-weighted amplitude extrema weighting strategy
Signed-off-by: Jérôme Benoit <jerome.benoit@piment-noir.org>
Jérôme Benoit [Wed, 10 Dec 2025 16:47:52 +0000 (17:47 +0100)]
chore(qav3): propose a performant configuration template
It's to show what can be achieved by understanding the various tunables
and their interactions.
Signed-off-by: Jérôme Benoit <jerome.benoit@piment-noir.org>
Jérôme Benoit [Tue, 9 Dec 2025 13:25:27 +0000 (14:25 +0100)]
refactor(qav3): remove unneeded intermediate variables
Signed-off-by: Jérôme Benoit <jerome.benoit@piment-noir.org>
Jérôme Benoit [Mon, 8 Dec 2025 23:57:11 +0000 (00:57 +0100)]
refactor(qav3): align robust standardization namespace
Signed-off-by: Jérôme Benoit <jerome.benoit@piment-noir.org>
Jérôme Benoit [Mon, 8 Dec 2025 23:43:51 +0000 (00:43 +0100)]
feat(qav3): add MMAD standardization for extrema weighting
Signed-off-by: Jérôme Benoit <jerome.benoit@piment-noir.org>
Jérôme Benoit [Mon, 8 Dec 2025 21:09:01 +0000 (22:09 +0100)]
refactor(qav3): namespace alignment
Signed-off-by: Jérôme Benoit <jerome.benoit@piment-noir.org>
Jérôme Benoit [Mon, 8 Dec 2025 21:05:44 +0000 (22:05 +0100)]
refactor(qav3): rename savgol params helper
Signed-off-by: Jérôme Benoit <jerome.benoit@piment-noir.org>
Jérôme Benoit [Mon, 8 Dec 2025 20:54:00 +0000 (21:54 +0100)]
chore(qav3): bump QuickAdapterRegressorV3 and QuickAdapterV3 to 3.7.125 and 3.3.175 respectively
Signed-off-by: Jérôme Benoit <jerome.benoit@piment-noir.org>
Jérôme Benoit [Mon, 8 Dec 2025 20:52:33 +0000 (21:52 +0100)]
feat(qav3): add 2 extrema smoothing methods: Savitzky–Golay and Nadaraya-Watson
Signed-off-by: Jérôme Benoit <jerome.benoit@piment-noir.org>
Jérôme Benoit [Mon, 8 Dec 2025 15:41:15 +0000 (16:41 +0100)]
fix(qav3): ensure symetry at extrema smoothing
Signed-off-by: Jérôme Benoit <jerome.benoit@piment-noir.org>
Jérôme Benoit [Mon, 8 Dec 2025 13:10:06 +0000 (14:10 +0100)]
perf(qav3): sensibler defaults for reversal confirmation
Signed-off-by: Jérôme Benoit <jerome.benoit@piment-noir.org>
Jérôme Benoit [Mon, 8 Dec 2025 11:24:41 +0000 (12:24 +0100)]
docs(README.md): fix minmax_range type in extrema_weighting config table
Signed-off-by: Jérôme Benoit <jerome.benoit@piment-noir.org>
renovate[bot] [Mon, 8 Dec 2025 10:40:23 +0000 (11:40 +0100)]
chore(deps): lock file maintenance (#20)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
Jérôme Benoit [Sun, 7 Dec 2025 22:19:37 +0000 (23:19 +0100)]
refactor(qav3): decouple extrema weighting standardization and normalization
Signed-off-by: Jérôme Benoit <jerome.benoit@piment-noir.org>
Jérôme Benoit [Sun, 7 Dec 2025 15:32:52 +0000 (16:32 +0100)]
perf(qav3): adjust default max_natr_ratio_percent to 0.05
Signed-off-by: Jérôme Benoit <jerome.benoit@piment-noir.org>
Jérôme Benoit [Mon, 1 Dec 2025 13:13:03 +0000 (14:13 +0100)]
feat(qav3): add configuration section for protections
Signed-off-by: Jérôme Benoit <jerome.benoit@piment-noir.org>
renovate[bot] [Mon, 1 Dec 2025 11:52:27 +0000 (12:52 +0100)]
chore(deps): lock file maintenance (#19)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
Jérôme Benoit [Sun, 30 Nov 2025 16:44:19 +0000 (17:44 +0100)]
refactor(qav3): factor out optuna MO metrics list
Signed-off-by: Jérôme Benoit <jerome.benoit@piment-noir.org>
Jérôme Benoit [Sat, 29 Nov 2025 23:35:50 +0000 (00:35 +0100)]
refactor: propagate github token to devcontainers
Signed-off-by: Jérôme Benoit <jerome.benoit@piment-noir.org>
Jérôme Benoit [Sat, 29 Nov 2025 23:12:00 +0000 (00:12 +0100)]
fix: sensible defaults for gh cli devcontainer feature
Signed-off-by: Jérôme Benoit <jerome.benoit@piment-noir.org>
Jérôme Benoit [Sat, 29 Nov 2025 22:47:53 +0000 (23:47 +0100)]
chore: add gh cli feature to devcontainers
Signed-off-by: Jérôme Benoit <jerome.benoit@piment-noir.org>
Jérôme Benoit [Sat, 29 Nov 2025 17:18:00 +0000 (18:18 +0100)]
fix: workaround nix feature packages installation issue
Signed-off-by: Jérôme Benoit <jerome.benoit@piment-noir.org>
Jérôme Benoit [Sat, 29 Nov 2025 15:22:13 +0000 (16:22 +0100)]
fix: packages is a comma separated list
Signed-off-by: Jérôme Benoit <jerome.benoit@piment-noir.org>
Jérôme Benoit [Fri, 28 Nov 2025 20:24:07 +0000 (21:24 +0100)]
perf(qav3): refine default config
Signed-off-by: Jérôme Benoit <jerome.benoit@piment-noir.org>
Jérôme Benoit [Wed, 26 Nov 2025 06:37:26 +0000 (07:37 +0100)]
chore(devcontainers): enable attribute path is nix feature
Signed-off-by: Jérôme Benoit <jerome.benoit@piment-noir.org>
Jérôme Benoit [Tue, 25 Nov 2025 20:23:40 +0000 (21:23 +0100)]
chore(devcontainer): handle properly symlinks in workspace
Signed-off-by: Jérôme Benoit <jerome.benoit@piment-noir.org>
Jérôme Benoit [Tue, 25 Nov 2025 19:37:26 +0000 (20:37 +0100)]
chore(devcontainers): optimize devcontainer configurations
Signed-off-by: Jérôme Benoit <jerome.benoit@piment-noir.org>
Jérôme Benoit [Tue, 25 Nov 2025 18:10:52 +0000 (19:10 +0100)]
perf: add cached properties for extrema parameters validation
Signed-off-by: Jérôme Benoit <jerome.benoit@piment-noir.org>
Jérôme Benoit [Tue, 25 Nov 2025 16:45:13 +0000 (17:45 +0100)]
perf(qav3): refine protections default configuration
Signed-off-by: Jérôme Benoit <jerome.benoit@piment-noir.org>
Jérôme Benoit [Tue, 25 Nov 2025 13:51:11 +0000 (14:51 +0100)]
refactor: rename amplitude_excess -> amplitude_threshold_ratio and update docs
renovate[bot] [Tue, 25 Nov 2025 10:14:31 +0000 (11:14 +0100)]
chore(deps): lock file maintenance (#18)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
Jérôme Benoit [Mon, 24 Nov 2025 23:28:44 +0000 (00:28 +0100)]
fix(devcontainer): opencode usage on macOS
Signed-off-by: Jérôme Benoit <jerome.benoit@piment-noir.org>
Jérôme Benoit [Mon, 24 Nov 2025 22:30:54 +0000 (23:30 +0100)]
docs: correct default label_weights
Signed-off-by: Jérôme Benoit <jerome.benoit@piment-noir.org>
Jérôme Benoit [Mon, 24 Nov 2025 22:04:04 +0000 (23:04 +0100)]
chore: add docker-in-docker support to devcontainer
Signed-off-by: Jérôme Benoit <jerome.benoit@piment-noir.org>
Jérôme Benoit [Mon, 24 Nov 2025 21:31:47 +0000 (22:31 +0100)]
chore(devcontainer): move dev tools installation to container start command
Signed-off-by: Jérôme Benoit <jerome.benoit@piment-noir.org>
Jérôme Benoit [Mon, 24 Nov 2025 17:47:09 +0000 (18:47 +0100)]
perf(qav3): sensbile reversal confirmation defaults
Signed-off-by: Jérôme Benoit <jerome.benoit@piment-noir.org>
Jérôme Benoit [Sun, 23 Nov 2025 23:12:01 +0000 (00:12 +0100)]
refactor(ReforceXY): remove unnecessary import
Signed-off-by: Jérôme Benoit <jerome.benoit@piment-noir.org>
Jérôme Benoit [Sun, 23 Nov 2025 21:59:46 +0000 (22:59 +0100)]
refactor: improve type hints
Signed-off-by: Jérôme Benoit <jerome.benoit@piment-noir.org>
Jérôme Benoit [Sun, 23 Nov 2025 19:52:16 +0000 (20:52 +0100)]
chore: refine devcontainer configuration
Signed-off-by: Jérôme Benoit <jerome.benoit@piment-noir.org>
Jérôme Benoit [Sun, 23 Nov 2025 18:38:15 +0000 (19:38 +0100)]
refactor(qav3): improve type hints and variable declarations
Signed-off-by: Jérôme Benoit <jerome.benoit@piment-noir.org>
Jérôme Benoit [Sun, 23 Nov 2025 17:36:56 +0000 (18:36 +0100)]
chore: add opencode vscode plugin to devcontainers
Signed-off-by: Jérôme Benoit <jerome.benoit@piment-noir.org>
Jérôme Benoit [Sun, 23 Nov 2025 17:28:22 +0000 (18:28 +0100)]
chore: update devcontainer and Dockerfile for ReforceXY and QuickAdapter
Signed-off-by: Jérôme Benoit <jerome.benoit@piment-noir.org>
Jérôme Benoit [Sun, 23 Nov 2025 14:26:11 +0000 (15:26 +0100)]
chore: refine devcontainers configuration
Signed-off-by: Jérôme Benoit <jerome.benoit@piment-noir.org>
Jérôme Benoit [Sun, 23 Nov 2025 14:05:11 +0000 (15:05 +0100)]
chore: add devcontainers configuration
Signed-off-by: Jérôme Benoit <jerome.benoit@piment-noir.org>
Jérôme Benoit [Sat, 22 Nov 2025 22:48:27 +0000 (23:48 +0100)]
refactor(reforcexy): use proper types
Signed-off-by: Jérôme Benoit <jerome.benoit@piment-noir.org>
Jérôme Benoit [Sat, 22 Nov 2025 20:48:43 +0000 (21:48 +0100)]
refactor(qav3): reuse existing implementation when possible
Signed-off-by: Jérôme Benoit <jerome.benoit@piment-noir.org>
Jérôme Benoit [Sat, 22 Nov 2025 19:39:14 +0000 (20:39 +0100)]
fix(qav3): fix prediction extrema partition method
Signed-off-by: Jérôme Benoit <jerome.benoit@piment-noir.org>
Jérôme Benoit [Sat, 22 Nov 2025 15:08:51 +0000 (16:08 +0100)]
docs: refine wording
Signed-off-by: Jérôme Benoit <jerome.benoit@piment-noir.org>
Jérôme Benoit [Sat, 22 Nov 2025 13:59:08 +0000 (14:59 +0100)]
refactor(qav3): factor out extrema smoothing params handling
Signed-off-by: Jérôme Benoit <jerome.benoit@piment-noir.org>
Jérôme Benoit [Sat, 22 Nov 2025 12:29:40 +0000 (13:29 +0100)]
refactor(qav): remove unneeded type casting
Signed-off-by: Jérôme Benoit <jerome.benoit@piment-noir.org>
Jérôme Benoit [Sat, 22 Nov 2025 12:23:18 +0000 (13:23 +0100)]
refactor(qav3): factor out multi objectives minmax normalization
Signed-off-by: Jérôme Benoit <jerome.benoit@piment-noir.org>
Jérôme Benoit [Sat, 22 Nov 2025 11:42:09 +0000 (12:42 +0100)]
docs: refine README.md
Signed-off-by: Jérôme Benoit <jerome.benoit@piment-noir.org>
Jérôme Benoit [Sat, 22 Nov 2025 11:38:29 +0000 (12:38 +0100)]
perf(qav3)!: add amplitude zigzag threshold excess to reservals labeling HPO objectives
Signed-off-by: Jérôme Benoit <jerome.benoit@piment-noir.org>
Jérôme Benoit [Fri, 21 Nov 2025 22:09:02 +0000 (23:09 +0100)]
fix(qav3): fix typo on method name
Signed-off-by: Jérôme Benoit <jerome.benoit@piment-noir.org>
Jérôme Benoit [Fri, 21 Nov 2025 21:06:21 +0000 (22:06 +0100)]
refactor: code cleanups
Signed-off-by: Jérôme Benoit <jerome.benoit@piment-noir.org>
Jérôme Benoit [Fri, 21 Nov 2025 20:46:08 +0000 (21:46 +0100)]
refactor: cleanup tunables constants
Signed-off-by: Jérôme Benoit <jerome.benoit@piment-noir.org>
Jérôme Benoit [Fri, 21 Nov 2025 19:38:45 +0000 (20:38 +0100)]
refactor(qav3): code cleanups
Signed-off-by: Jérôme Benoit <jerome.benoit@piment-noir.org>
Jérôme Benoit [Fri, 21 Nov 2025 19:31:15 +0000 (20:31 +0100)]
refactor(qav3): code cleanups
Signed-off-by: Jérôme Benoit <jerome.benoit@piment-noir.org>
Jérôme Benoit [Fri, 21 Nov 2025 19:12:41 +0000 (20:12 +0100)]
perf(qav3): switch to reversal swing amplitude for labeling HPO
Signed-off-by: Jérôme Benoit <jerome.benoit@piment-noir.org>
Jérôme Benoit [Fri, 21 Nov 2025 17:24:44 +0000 (18:24 +0100)]
fix(qav3): typo in defaults const
Signed-off-by: Jérôme Benoit <jerome.benoit@piment-noir.org>
Jérôme Benoit [Fri, 21 Nov 2025 17:21:13 +0000 (18:21 +0100)]
fix(qav3): correct normalization bounds and consolidate defaults
- Fix tanh normalization formula to guarantee [0, gain] range
Update formula: gain * 0.5 * (tanh(scale * z) + 1.0)
Update default tanh_gain: 0.5 → 1.0
- Fix robust normalization to ensure [0,1] bounded output
Add min-max rescaling after IQR standardization
- Refactor normalization functions to use canonical DEFAULTS_EXTREMA_WEIGHTING
Eliminates hardcoded values in _normalize_{robust,softmax,tanh,rank}
Jérôme Benoit [Fri, 21 Nov 2025 17:00:10 +0000 (18:00 +0100)]
docs: refine README.md
Signed-off-by: Jérôme Benoit <jerome.benoit@piment-noir.org>
Jérôme Benoit [Fri, 21 Nov 2025 16:57:21 +0000 (17:57 +0100)]
feat(qav3): add more extrema weighting tunables
Signed-off-by: Jérôme Benoit <jerome.benoit@piment-noir.org>
Jérôme Benoit [Fri, 21 Nov 2025 16:10:26 +0000 (17:10 +0100)]
docs: refine README
Signed-off-by: Jérôme Benoit <jerome.benoit@piment-noir.org>
Jérôme Benoit [Fri, 21 Nov 2025 15:54:10 +0000 (16:54 +0100)]
feat(qav3): add more extrema weighting normalization methods
Signed-off-by: Jérôme Benoit <jerome.benoit@piment-noir.org>
Jérôme Benoit [Fri, 21 Nov 2025 13:31:40 +0000 (14:31 +0100)]
feat(qav3): add more extrema weighting normalization methods
Signed-off-by: Jérôme Benoit <jerome.benoit@piment-noir.org>
Jérôme Benoit [Fri, 21 Nov 2025 09:29:35 +0000 (10:29 +0100)]
refactor(qav3)!: sensible tunables namespace
Signed-off-by: Jérôme Benoit <jerome.benoit@piment-noir.org>
Jérôme Benoit [Thu, 20 Nov 2025 21:41:32 +0000 (22:41 +0100)]
refactor: cleanup tunables handling
Signed-off-by: Jérôme Benoit <jerome.benoit@piment-noir.org>
Jérôme Benoit [Thu, 20 Nov 2025 19:04:58 +0000 (20:04 +0100)]
refactor(qav3): align variable namespace
Signed-off-by: Jérôme Benoit <jerome.benoit@piment-noir.org>
Jérôme Benoit [Thu, 20 Nov 2025 10:23:06 +0000 (11:23 +0100)]
!refactor(qav3): cleanup predictions handling tunables
Signed-off-by: Jérôme Benoit <jerome.benoit@piment-noir.org>
Jérôme Benoit [Wed, 19 Nov 2025 22:47:49 +0000 (23:47 +0100)]
docs: refine documentation
Signed-off-by: Jérôme Benoit <jerome.benoit@piment-noir.org>
Jérôme Benoit [Wed, 19 Nov 2025 22:35:31 +0000 (23:35 +0100)]
docs: refine documentation
Signed-off-by: Jérôme Benoit <jerome.benoit@piment-noir.org>