]> Piment Noir Git Repositories - freqai-strategies.git/commitdiff
perf(qav3): cache label frequency candles computation
authorJérôme Benoit <jerome.benoit@piment-noir.org>
Wed, 22 Oct 2025 15:06:30 +0000 (17:06 +0200)
committerJérôme Benoit <jerome.benoit@piment-noir.org>
Wed, 22 Oct 2025 15:06:30 +0000 (17:06 +0200)
Signed-off-by: Jérôme Benoit <jerome.benoit@piment-noir.org>
quickadapter/user_data/freqaimodels/QuickAdapterRegressorV3.py

index a9f0eec4096e8a417e6a92f15e85688dc1f05386..678f86867f6be4127ab0e34bba19e2feff9a9ebc 100644 (file)
@@ -90,7 +90,8 @@ class QuickAdapterRegressorV3(BaseRegressionModel):
             **self.config.get("freqai", {}).get("optuna_hyperopt", {}),
         }
 
-    def _get_label_frequency_candles(self) -> int:
+    @cached_property
+    def _label_frequency_candles(self) -> int:
         """
         Calculate label_frequency_candles.
 
@@ -149,7 +150,7 @@ class QuickAdapterRegressorV3(BaseRegressionModel):
 
     @property
     def _optuna_label_candle_pool_full(self) -> list[int]:
-        label_frequency_candles = self._get_label_frequency_candles()
+        label_frequency_candles = self._label_frequency_candles
         cache_key = label_frequency_candles
         if cache_key not in self._optuna_label_candle_pool_full_cache:
             half_label_frequency_candles = int(label_frequency_candles / 2)