]> Piment Noir Git Repositories - freqai-strategies.git/commitdiff
refactor(quickadapter): code cleanups and optimizations
authorJérôme Benoit <jerome.benoit@piment-noir.org>
Sat, 3 Jan 2026 23:01:16 +0000 (00:01 +0100)
committerJérôme Benoit <jerome.benoit@piment-noir.org>
Sat, 3 Jan 2026 23:01:16 +0000 (00:01 +0100)
Signed-off-by: Jérôme Benoit <jerome.benoit@piment-noir.org>
quickadapter/user_data/freqaimodels/QuickAdapterRegressorV3.py
quickadapter/user_data/strategies/ExtremaWeightingTransformer.py

index 11688f29a743e8419d55ac54a11084330e344bd0..917a009fb33ae50917fd6f7165439af3d764c61a 100644 (file)
@@ -2973,6 +2973,7 @@ class QuickAdapterRegressorV3(BaseRegressionModel):
                 f"Supported: {', '.join(QuickAdapterRegressorV3._OPTUNA_SAMPLERS)}"
             )
 
+    @lru_cache(maxsize=8)
     def optuna_samplers_by_namespace(
         self, namespace: OptunaNamespace
     ) -> tuple[tuple[OptunaSampler, ...], OptunaSampler]:
index 7a611be8145e6f81d566c3df2140fe538bf6bce2..a2b76ca8241e6524bffd7696bf27a4ee8fbd6390 100644 (file)
@@ -208,7 +208,7 @@ class ExtremaWeightingTransformer(BaseTransform):
         if np.isclose(gamma, 1.0) or not np.isfinite(gamma) or gamma <= 0:
             return values
         out = values.copy()
-        out[mask] = np.power(np.abs(values[mask]), 1.0 / gamma) * np.sign(values[mask])
+        out[mask] = np.sign(values[mask]) * np.power(np.abs(values[mask]), 1.0 / gamma)
         return out
 
     def fit(