]>
Piment Noir Git Repositories - freqai-strategies.git/log
Jérôme Benoit [Fri, 21 Mar 2025 03:41:47 +0000 (04:41 +0100)]
perf(qav3): fine tune n_estimators HPO step
Signed-off-by: Jérôme Benoit <jerome.benoit@piment-noir.org>
Jérôme Benoit [Thu, 20 Mar 2025 15:20:09 +0000 (16:20 +0100)]
Merge branch 'main' of git+ssh://git.piment-noir.org/freqai-strategies into perf/hpo_n_estimators
Jérôme Benoit [Thu, 20 Mar 2025 14:51:56 +0000 (15:51 +0100)]
refactor(qav3): add tunable to extrema smoothing window
Signed-off-by: Jérôme Benoit <jerome.benoit@piment-noir.org>
Jérôme Benoit [Thu, 20 Mar 2025 09:34:33 +0000 (10:34 +0100)]
perf(qav3): add n_estimators to HPO
Signed-off-by: Jérôme Benoit <jerome.benoit@piment-noir.org>
Jérôme Benoit [Thu, 20 Mar 2025 09:11:30 +0000 (10:11 +0100)]
refactor(qav3): factor out trade candle getter
Signed-off-by: Jérôme Benoit <jerome.benoit@piment-noir.org>
Jérôme Benoit [Thu, 20 Mar 2025 03:42:51 +0000 (04:42 +0100)]
fix(qav3): properly validate SL/TP targets
Signed-off-by: Jérôme Benoit <jerome.benoit@piment-noir.org>
Jérôme Benoit [Wed, 19 Mar 2025 19:49:24 +0000 (20:49 +0100)]
fix(qav3): ensure stoploss distance is never zero
Signed-off-by: Jérôme Benoit <jerome.benoit@piment-noir.org>
Jérôme Benoit [Wed, 19 Mar 2025 17:44:01 +0000 (18:44 +0100)]
fix(qav3): ensure stoploss trails from the current price
Signed-off-by: Jérôme Benoit <jerome.benoit@piment-noir.org>
Jérôme Benoit [Wed, 19 Mar 2025 14:41:53 +0000 (15:41 +0100)]
refactor(qav3): refine None/NaN checks
Signed-off-by: Jérôme Benoit <jerome.benoit@piment-noir.org>
Jérôme Benoit [Wed, 19 Mar 2025 14:06:24 +0000 (15:06 +0100)]
fix(qav3): fix natr value check
Signed-off-by: Jérôme Benoit <jerome.benoit@piment-noir.org>
Jérôme Benoit [Wed, 19 Mar 2025 10:09:36 +0000 (11:09 +0100)]
fix(qav3): revert to previous SL/TP behaviour
Signed-off-by: Jérôme Benoit <jerome.benoit@piment-noir.org>
Jérôme Benoit [Wed, 19 Mar 2025 02:02:29 +0000 (03:02 +0100)]
fix(qav3): revert to fixed stoploss distance
Signed-off-by: Jérôme Benoit <jerome.benoit@piment-noir.org>
Jérôme Benoit [Wed, 19 Mar 2025 01:30:03 +0000 (02:30 +0100)]
refactor(qav3): code cleanups
Signed-off-by: Jérôme Benoit <jerome.benoit@piment-noir.org>
Jérôme Benoit [Wed, 19 Mar 2025 00:50:18 +0000 (01:50 +0100)]
docs(qav3): refine docstring
Signed-off-by: Jérôme Benoit <jerome.benoit@piment-noir.org>
Jérôme Benoit [Tue, 18 Mar 2025 23:41:10 +0000 (00:41 +0100)]
refactor(qav3): add some tunable for custom dynamic stoploss
Signed-off-by: Jérôme Benoit <jerome.benoit@piment-noir.org>
Jérôme Benoit [Tue, 18 Mar 2025 22:43:58 +0000 (23:43 +0100)]
perf(qav3): compute trade natr only if needed
Signed-off-by: Jérôme Benoit <jerome.benoit@piment-noir.org>
Jérôme Benoit [Tue, 18 Mar 2025 22:03:01 +0000 (23:03 +0100)]
fix(qav3): use right helper to set/key custom trade entries
Signed-off-by: Jérôme Benoit <jerome.benoit@piment-noir.org>
Jérôme Benoit [Tue, 18 Mar 2025 21:24:22 +0000 (22:24 +0100)]
refactor(qav3): make dynamic SL/TP symmetric again
Signed-off-by: Jérôme Benoit <jerome.benoit@piment-noir.org>
Jérôme Benoit [Tue, 18 Mar 2025 20:40:35 +0000 (21:40 +0100)]
refactor(qav3): cleanups
Signed-off-by: Jérôme Benoit <jerome.benoit@piment-noir.org>
Jérôme Benoit [Tue, 18 Mar 2025 20:28:42 +0000 (21:28 +0100)]
fix(qav3): ensure SL/TP follows market conditions
Signed-off-by: Jérôme Benoit <jerome.benoit@piment-noir.org>
Jérôme Benoit [Tue, 18 Mar 2025 16:13:10 +0000 (17:13 +0100)]
fix(qav3): look-ahead bias in top_change_percent()
Signed-off-by: Jérôme Benoit <jerome.benoit@piment-noir.org>
Jérôme Benoit [Tue, 18 Mar 2025 15:21:31 +0000 (16:21 +0100)]
refactor(qav3): factor out trade candle extraction
Signed-off-by: Jérôme Benoit <jerome.benoit@piment-noir.org>
Jérôme Benoit [Tue, 18 Mar 2025 13:03:22 +0000 (14:03 +0100)]
docs(qav3): refine code comment
Signed-off-by: Jérôme Benoit <jerome.benoit@piment-noir.org>
Jérôme Benoit [Tue, 18 Mar 2025 12:51:44 +0000 (13:51 +0100)]
fix(qav3): fix zlewma computation
Signed-off-by: Jérôme Benoit <jerome.benoit@piment-noir.org>
Jérôme Benoit [Mon, 17 Mar 2025 23:52:35 +0000 (00:52 +0100)]
refactor(qav3): code formatting
Signed-off-by: Jérôme Benoit <jerome.benoit@piment-noir.org>
Jérôme Benoit [Mon, 17 Mar 2025 22:33:36 +0000 (23:33 +0100)]
refactor(qav3): cleanup dynamic SL/TP API
Signed-off-by: Jérôme Benoit <jerome.benoit@piment-noir.org>
Jérôme Benoit [Mon, 17 Mar 2025 15:52:49 +0000 (16:52 +0100)]
fix(qav3): fine tune protections to the predictions fitting period
Signed-off-by: Jérôme Benoit <jerome.benoit@sap.com>
Jérôme Benoit [Mon, 17 Mar 2025 12:42:23 +0000 (13:42 +0100)]
refactor(qav3): add versionning
Signed-off-by: Jérôme Benoit <jerome.benoit@piment-noir.org>
Jérôme Benoit [Sun, 16 Mar 2025 21:15:12 +0000 (22:15 +0100)]
refactor(reforcexy): cleanups
Signed-off-by: Jérôme Benoit <jerome.benoit@piment-noir.org>
Jérôme Benoit [Sun, 16 Mar 2025 19:34:14 +0000 (20:34 +0100)]
refactor(qav3): cleanup stoploss distance computation
Signed-off-by: Jérôme Benoit <jerome.benoit@piment-noir.org>
Jérôme Benoit [Sun, 16 Mar 2025 18:44:57 +0000 (19:44 +0100)]
fix(qav3): rely on custom stoploss for trailing stop
Signed-off-by: Jérôme Benoit <jerome.benoit@piment-noir.org>
Jérôme Benoit [Sun, 16 Mar 2025 17:12:07 +0000 (18:12 +0100)]
refactor(qav3): cleanup duplicated variable
Signed-off-by: Jérôme Benoit <jerome.benoit@piment-noir.org>
Jérôme Benoit [Sun, 16 Mar 2025 16:52:18 +0000 (17:52 +0100)]
refactor(qav3): cleanup
Signed-off-by: Jérôme Benoit <jerome.benoit@piment-noir.org>
Jérôme Benoit [Sun, 16 Mar 2025 16:18:25 +0000 (17:18 +0100)]
fix(qav3): handle futures in dynamic SL and TP
Signed-off-by: Jérôme Benoit <jerome.benoit@piment-noir.org>
Jérôme Benoit [Sun, 16 Mar 2025 12:53:58 +0000 (13:53 +0100)]
refactor(qa3): code cleanup
Signed-off-by: Jérôme Benoit <jerome.benoit@piment-noir.org>
Jérôme Benoit [Sun, 16 Mar 2025 12:41:13 +0000 (13:41 +0100)]
fix(qav3): fix trailing stop loss configuration, take 2
Signed-off-by: Jérôme Benoit <jerome.benoit@piment-noir.org>
Jérôme Benoit [Sun, 16 Mar 2025 12:39:44 +0000 (13:39 +0100)]
fix(qav3): fix trailing stop loss configuration
Signed-off-by: Jérôme Benoit <jerome.benoit@piment-noir.org>
Jérôme Benoit [Sun, 16 Mar 2025 12:19:08 +0000 (13:19 +0100)]
refactor(qav3): remove support from dynamic SL computation
Signed-off-by: Jérôme Benoit <jerome.benoit@piment-noir.org>
Jérôme Benoit [Sun, 16 Mar 2025 11:52:51 +0000 (12:52 +0100)]
fix(qav3): fix wrong Trade object property access
Signed-off-by: Jérôme Benoit <jerome.benoit@piment-noir.org>
Jérôme Benoit [Sun, 16 Mar 2025 11:45:56 +0000 (12:45 +0100)]
feat(qav3): add dynamic SL and TP logic
Signed-off-by: Jérôme Benoit <jerome.benoit@piment-noir.org>
Jérôme Benoit [Sat, 15 Mar 2025 19:07:48 +0000 (20:07 +0100)]
refactor: do not cast Path to str
Signed-off-by: Jérôme Benoit <jerome.benoit@piment-noir.org>
Jérôme Benoit [Sat, 15 Mar 2025 16:27:20 +0000 (17:27 +0100)]
refactor: refine a test
Signed-off-by: Jérôme Benoit <jerome.benoit@piment-noir.org>
Jérôme Benoit [Sat, 15 Mar 2025 16:10:23 +0000 (17:10 +0100)]
fix: improve optuna error handling
Signed-off-by: Jérôme Benoit <jerome.benoit@piment-noir.org>
Jérôme Benoit [Fri, 14 Mar 2025 18:43:06 +0000 (19:43 +0100)]
refactor(qav3): typing
Signed-off-by: Jérôme Benoit <jerome.benoit@piment-noir.org>
Jérôme Benoit [Fri, 14 Mar 2025 18:27:34 +0000 (19:27 +0100)]
perf(qav3): fine tune label window optimisation
Signed-off-by: Jérôme Benoit <jerome.benoit@piment-noir.org>
Jérôme Benoit [Fri, 14 Mar 2025 18:21:20 +0000 (19:21 +0100)]
perf(qav3): use optimized mean computation
Signed-off-by: Jérôme Benoit <jerome.benoit@piment-noir.org>
Jérôme Benoit [Fri, 14 Mar 2025 15:09:07 +0000 (16:09 +0100)]
refactor(qav3): handle missing identifier properly
Signed-off-by: Jérôme Benoit <jerome.benoit@piment-noir.org>
Jérôme Benoit [Fri, 14 Mar 2025 14:24:44 +0000 (15:24 +0100)]
refactor(qav3): use iloc everywhere
Signed-off-by: Jérôme Benoit <jerome.benoit@piment-noir.org>
Jérôme Benoit [Fri, 14 Mar 2025 13:59:08 +0000 (14:59 +0100)]
perf(qav3): split evenly fit live predictions window
Signed-off-by: Jérôme Benoit <jerome.benoit@piment-noir.org>
Jérôme Benoit [Fri, 14 Mar 2025 13:06:03 +0000 (14:06 +0100)]
perf(qav3): fine tune the label window optimisation
Signed-off-by: Jérôme Benoit <jerome.benoit@piment-noir.org>
Jérôme Benoit [Fri, 14 Mar 2025 12:50:36 +0000 (13:50 +0100)]
perf(qav3): optimize label period splitting over fit live prediction
window
Signed-off-by: Jérôme Benoit <jerome.benoit@piment-noir.org>
Jérôme Benoit [Fri, 14 Mar 2025 11:33:06 +0000 (12:33 +0100)]
perf(qav3): fine tune label window optimization
Signed-off-by: Jérôme Benoit <jerome.benoit@piment-noir.org>
Jérôme Benoit [Fri, 14 Mar 2025 10:54:38 +0000 (11:54 +0100)]
perf(qav3): fine tune label window optimization
Signed-off-by: Jérôme Benoit <jerome.benoit@piment-noir.org>
Jérôme Benoit [Fri, 14 Mar 2025 10:04:38 +0000 (11:04 +0100)]
refactor(qav3): cleanup data smoothing code
Signed-off-by: Jérôme Benoit <jerome.benoit@piment-noir.org>
Jérôme Benoit [Thu, 13 Mar 2025 18:41:38 +0000 (19:41 +0100)]
refactor(qav3): cleanup label_period_candles handling
Signed-off-by: Jérôme Benoit <jerome.benoit@piment-noir.org>
Jérôme Benoit [Thu, 13 Mar 2025 18:22:48 +0000 (19:22 +0100)]
fix(qav3): fix cold start
Signed-off-by: Jérôme Benoit <jerome.benoit@piment-noir.org>
Jérôme Benoit [Thu, 13 Mar 2025 18:04:57 +0000 (19:04 +0100)]
refactor(qav3): typing
Signed-off-by: Jérôme Benoit <jerome.benoit@piment-noir.org>
Jérôme Benoit [Thu, 13 Mar 2025 17:02:00 +0000 (18:02 +0100)]
feat(qav3): properly implement zero phase gaussian smoothing
Signed-off-by: Jérôme Benoit <jerome.benoit@sap.com>
Jérôme Benoit [Thu, 13 Mar 2025 15:20:02 +0000 (16:20 +0100)]
fix(qav3): properly extract label_period_candles from dataframe
Signed-off-by: Jérôme Benoit <jerome.benoit@sap.com>
Jérôme Benoit [Thu, 13 Mar 2025 11:19:45 +0000 (12:19 +0100)]
refactor(qav3): use builtin method to propagate label_period_candles
Signed-off-by: Jérôme Benoit <jerome.benoit@piment-noir.org>
Jérôme Benoit [Thu, 13 Mar 2025 10:45:22 +0000 (11:45 +0100)]
fix(qav3): remove buggy zero_phase_gaussian for now
Signed-off-by: Jérôme Benoit <jerome.benoit@piment-noir.org>
Jérôme Benoit [Thu, 13 Mar 2025 08:25:25 +0000 (09:25 +0100)]
feat(qav3): add sma extrema smoothing
Signed-off-by: Jérôme Benoit <jerome.benoit@piment-noir.org>
Jérôme Benoit [Wed, 12 Mar 2025 23:24:46 +0000 (00:24 +0100)]
feat(qav3): add more extrema smoothing methods
Signed-off-by: Jérôme Benoit <jerome.benoit@piment-noir.org>
Jérôme Benoit [Wed, 12 Mar 2025 15:23:35 +0000 (16:23 +0100)]
perf(qav3): fine tune label period optimization
Signed-off-by: Jérôme Benoit <jerome.benoit@piment-noir.org>
Jérôme Benoit [Wed, 12 Mar 2025 15:08:40 +0000 (16:08 +0100)]
refactor(qav3): cleanup label period optimization
Signed-off-by: Jérôme Benoit <jerome.benoit@piment-noir.org>
Jérôme Benoit [Wed, 12 Mar 2025 11:09:09 +0000 (12:09 +0100)]
fix(qav3): ensure previous optuna study is loaded when continuous = False
Signed-off-by: Jérôme Benoit <jerome.benoit@piment-noir.org>
Jérôme Benoit [Wed, 12 Mar 2025 09:23:41 +0000 (10:23 +0100)]
refactor(qav3): cleanup period objective function
Signed-off-by: Jérôme Benoit <jerome.benoit@piment-noir.org>
Jérôme Benoit [Wed, 12 Mar 2025 00:51:08 +0000 (01:51 +0100)]
fix(qav3): compute RMSE on a label period basis
Signed-off-by: Jérôme Benoit <jerome.benoit@piment-noir.org>
Jérôme Benoit [Tue, 11 Mar 2025 23:16:37 +0000 (00:16 +0100)]
fix(qav3): fix array like shape for rmse
Signed-off-by: Jérôme Benoit <jerome.benoit@piment-noir.org>
Jérôme Benoit [Tue, 11 Mar 2025 21:56:13 +0000 (22:56 +0100)]
fix(qav3): avoid overlapping label period windows optimization
Signed-off-by: Jérôme Benoit <jerome.benoit@piment-noir.org>
Jérôme Benoit [Tue, 11 Mar 2025 18:37:20 +0000 (19:37 +0100)]
refactor(qav3): import cleanups
Signed-off-by: Jérôme Benoit <jerome.benoit@piment-noir.org>
Jérôme Benoit [Tue, 11 Mar 2025 15:32:49 +0000 (16:32 +0100)]
refactor(qav3): rename top_percent_change -> top_change_percent
Signed-off-by: Jérôme Benoit <jerome.benoit@sap.com>
Jérôme Benoit [Tue, 11 Mar 2025 14:52:50 +0000 (15:52 +0100)]
fix(qav3): ensure the label period is chosen over all possible windows
Signed-off-by: Jérôme Benoit <jerome.benoit@sap.com>
Jérôme Benoit [Tue, 11 Mar 2025 10:50:11 +0000 (11:50 +0100)]
refactor(qav3): code formatting
Signed-off-by: Jérôme Benoit <jerome.benoit@piment-noir.org>
Jérôme Benoit [Tue, 11 Mar 2025 10:38:12 +0000 (11:38 +0100)]
refactor(qav3)!: refine features list
Signed-off-by: Jérôme Benoit <jerome.benoit@sap.com>
Jérôme Benoit [Mon, 10 Mar 2025 17:33:01 +0000 (18:33 +0100)]
perf(qav3): use NATR ta-lib-python instead
Signed-off-by: Jérôme Benoit <jerome.benoit@sap.com>
Jérôme Benoit [Mon, 10 Mar 2025 15:02:20 +0000 (16:02 +0100)]
refactor(qav3): rename function
Signed-off-by: Jérôme Benoit <jerome.benoit@sap.com>
Jérôme Benoit [Mon, 10 Mar 2025 10:15:15 +0000 (11:15 +0100)]
fix(qav3): handle NaN in builtin cmf
Signed-off-by: Jérôme Benoit <jerome.benoit@piment-noir.org>
Jérôme Benoit [Mon, 10 Mar 2025 10:05:25 +0000 (11:05 +0100)]
refactor(qav3): cleanup commented out code
Signed-off-by: Jérôme Benoit <jerome.benoit@piment-noir.org>
Jérôme Benoit [Mon, 10 Mar 2025 10:01:50 +0000 (11:01 +0100)]
refactor(qav3): refine EWO implementation
Signed-off-by: Jérôme Benoit <jerome.benoit@piment-noir.org>
Jérôme Benoit [Mon, 10 Mar 2025 00:18:03 +0000 (01:18 +0100)]
fix(qav3): fix EWO available MA mode
Signed-off-by: Jérôme Benoit <jerome.benoit@piment-noir.org>
Jérôme Benoit [Sun, 9 Mar 2025 23:50:41 +0000 (00:50 +0100)]
refactor(qav3): use builtin TA indicators when possible
Signed-off-by: Jérôme Benoit <jerome.benoit@piment-noir.org>
Jérôme Benoit [Sun, 9 Mar 2025 11:42:23 +0000 (12:42 +0100)]
perf(qav3): refine top_percent_change() computation
Signed-off-by: Jérôme Benoit <jerome.benoit@piment-noir.org>
Jérôme Benoit [Sun, 9 Mar 2025 10:38:41 +0000 (11:38 +0100)]
feat(qav3): add optuna hyperopt tunables
Signed-off-by: Jérôme Benoit <jerome.benoit@piment-noir.org>
Jérôme Benoit [Sat, 8 Mar 2025 20:34:27 +0000 (21:34 +0100)]
docs(reforcexy): spell fix
Signed-off-by: Jérôme Benoit <jerome.benoit@piment-noir.org>
Jérôme Benoit [Sat, 8 Mar 2025 20:29:36 +0000 (21:29 +0100)]
fix(reforcexy): revert incorrect observation stacking
Signed-off-by: Jérôme Benoit <jerome.benoit@piment-noir.org>
Jérôme Benoit [Sat, 8 Mar 2025 17:43:43 +0000 (18:43 +0100)]
fix(reforcexy): properly stack observations
Signed-off-by: Jérôme Benoit <jerome.benoit@piment-noir.org>
Jérôme Benoit [Fri, 7 Mar 2025 22:24:42 +0000 (23:24 +0100)]
fix(qav3): ensure trades opened with an expired model are closed
Signed-off-by: Jérôme Benoit <jerome.benoit@piment-noir.org>
Jérôme Benoit [Fri, 7 Mar 2025 19:52:57 +0000 (20:52 +0100)]
fix(qav3): fix various features computation
Signed-off-by: Jérôme Benoit <jerome.benoit@piment-noir.org>
Jérôme Benoit [Fri, 7 Mar 2025 12:45:04 +0000 (13:45 +0100)]
refactor(qav3): refine type definition
Signed-off-by: Jérôme Benoit <jerome.benoit@piment-noir.org>
Jérôme Benoit [Fri, 7 Mar 2025 10:50:32 +0000 (11:50 +0100)]
refactor(qav3): cleanup extrema smoothing
Signed-off-by: Jérôme Benoit <jerome.benoit@piment-noir.org>
Jérôme Benoit [Fri, 7 Mar 2025 09:24:39 +0000 (10:24 +0100)]
feat(qav3): add zlewma extrema smoothing
Signed-off-by: Jérôme Benoit <jerome.benoit@piment-noir.org>
Jérôme Benoit [Thu, 6 Mar 2025 09:31:41 +0000 (10:31 +0100)]
refactor(qav3): code formatting
Signed-off-by: Jérôme Benoit <jerome.benoit@piment-noir.org>
Jérôme Benoit [Wed, 5 Mar 2025 18:31:40 +0000 (19:31 +0100)]
fix(qav3): fix minimal_roi definition
Signed-off-by: Jérôme Benoit <jerome.benoit@piment-noir.org>
Jérôme Benoit [Wed, 5 Mar 2025 18:04:57 +0000 (19:04 +0100)]
fix(qav3): define trade max duration as # of candles
Signed-off-by: Jérôme Benoit <jerome.benoit@piment-noir.org>
Jérôme Benoit [Wed, 5 Mar 2025 17:32:01 +0000 (18:32 +0100)]
fix(qav3): ensure trade exit condition handle prediction outliers
Signed-off-by: Jérôme Benoit <jerome.benoit@piment-noir.org>
Jérôme Benoit [Wed, 5 Mar 2025 14:33:55 +0000 (15:33 +0100)]
perf(qav3): fine tune labeling window optimization
Signed-off-by: Jérôme Benoit <jerome.benoit@piment-noir.org>
Jérôme Benoit [Wed, 5 Mar 2025 13:52:41 +0000 (14:52 +0100)]
perf(qav3): fine tune the extrema labelling window
Signed-off-by: Jérôme Benoit <jerome.benoit@piment-noir.org>
Jérôme Benoit [Tue, 4 Mar 2025 21:55:49 +0000 (22:55 +0100)]
refactor(qav3): code reformatting
Signed-off-by: Jérôme Benoit <jerome.benoit@piment-noir.org>
Jérôme Benoit [Tue, 4 Mar 2025 21:53:07 +0000 (22:53 +0100)]
perf(qav3): refine default quantile value
Signed-off-by: Jérôme Benoit <jerome.benoit@sap.com>