Commit Graph

934 Commits

Author SHA1 Message Date
robcaulk
88337b6c5e convert to using constants in data_drawer. Remove unneeded check_if_pred_in_spaces function 2023-06-08 12:19:42 +02:00
robcaulk
e39e40dc60 improve documentation of pipeline building/customization 2023-06-08 11:56:31 +02:00
robcaulk
135aaa2be2 update docs, improve the interaction with define_data_pipeline 2023-06-07 18:26:49 +02:00
robcaulk
dc577d2a1a update to new datasieve interface, add noise to pipeline 2023-06-07 17:58:27 +02:00
robcaulk
f7f88aa14d fix pickle file name 2023-06-07 09:28:56 +02:00
robcaulk
5ac141f72b convert to new datasieve api 2023-06-06 21:05:51 +02:00
robcaulk
f6a32f4ffd bump version 2023-05-29 23:35:24 +02:00
robcaulk
e572653616 bring classifier/rl up to new paradigm. ensure tests pass. remove old code. add documentation, add new example transform 2023-05-29 13:33:29 +02:00
robcaulk
31e19add27 start transition toward outsourcing the data pipeline with objective of improving pipeline flexibility 2023-05-26 18:40:14 +02:00
Robert Caulk
f647fb342b
Update base_tensorboard.py
Remove incorrect warning message.
2023-05-25 16:35:06 +02:00
Richard Jozsa
39f4fb8797
Merge branch 'freqtrade:develop' into develop 2023-05-22 08:36:25 +00:00
Richard Jozsa
d26aa231fc Stable baselines updates, and fix
There was a seeding error in SB3 after the gymnasium update, the stable baselines team has patched and fixed the issue, but the reset function has to be aligned.
2023-05-22 10:36:07 +02:00
Matthias
a87b215d67 Fix odd import 2023-05-21 09:50:59 +02:00
robcaulk
dd1a0156b9 resolve conflict, ensure gpu works with transformer 2023-05-19 14:39:16 +00:00
robcaulk
adeab13bdf cleanup tests, cross fingers that mac will pass 2023-05-17 07:21:48 +00:00
Matthias
7d15c379cb Fix faulty removed import 2023-05-15 19:26:51 +02:00
Matthias
c7f7dd1d4b Avoid unnecessary type ignore 2023-05-15 18:27:12 +02:00
robcaulk
9242dfa355 try reactivating tb for some tests 2023-05-14 16:05:49 +00:00
robcaulk
505f36a95f try even more deactivation 2023-05-14 15:49:24 +00:00
robcaulk
1ed084557a try even more deactivation 2023-05-14 15:44:41 +00:00
robcaulk
340d2191ff deactivate tensorboard by default 2023-05-14 14:39:23 +00:00
robcaulk
55a1a3afd6 add config option for activating and deactivating tensorboard logger, ensure the various flavors are never activated simultaneously 2023-05-14 14:08:00 +00:00
robcaulk
ab7a474ab6 try limiting tb_logger to pytorch only (XGBoost still gets its callback) 2023-05-14 12:03:15 +00:00
robcaulk
8a9b2fc16f fix merge conflicts with develop 2023-05-14 12:00:03 +00:00
Matthias
90ac387444
Merge pull request #8634 from freqtrade/bug-fix/continual_learning
fix bug in continual_learning for PyTorch* models
2023-05-13 15:32:49 +02:00
robcaulk
18c1eda09b remove commented lines 2023-05-13 11:27:36 +00:00
robcaulk
3ae3cc63df fix bug in continual_learning for PyTorch* models 2023-05-13 11:14:16 +00:00
Matthias
400cbd1836 Fix types 2023-05-12 19:47:53 +02:00
Matthias
6d7172ac44 Re-add init file 2023-05-12 18:26:34 +02:00
Matthias
49b9b463b4 Move tensorboard callback exports to freqai.tensorboard. 2023-05-12 18:26:01 +02:00
robcaulk
31d15da49e add disclaimers everywhere about how example strategies are meant as examples 2023-05-12 08:16:48 +00:00
robcaulk
692fa390c6 fix the import logic, fix tests, put all tensorboard in a single folder 2023-05-12 07:56:44 +00:00
robcaulk
b01aaa4d03 ensure backtesting also produces tb_logs, make sure tests are working 2023-05-10 10:11:33 +00:00
robcaulk
172b2587ab Merge remote-tracking branch 'originssh/develop' into develop 2023-05-10 09:48:54 +00:00
robcaulk
ffc4d87263 add tensorboard integration to XGBoost and PyTorch et al 2023-05-10 09:48:36 +00:00
robcaulk
2c0230ba93 avoid mutating new_trained_timerange 2023-05-09 12:42:02 +00:00
robcaulk
35ce88f1e5 ensure that the buffered timerange is not the trained timestamp so that live_retrain_hours functions properly 2023-05-09 10:00:33 +00:00
Robert Caulk
950eaf230e
Merge pull request #8580 from freqtrade/feat/add-transformer
Add transformer to FreqAI
2023-05-07 11:32:38 +02:00
Matthias
89c60bbee6
Merge pull request #8598 from freqtrade/bug-fix-backtesting
bug fix backtest feature validation
2023-05-07 08:14:34 +02:00
robcaulk
36e1e58dad fix arch 2023-05-06 17:40:04 +00:00
robcaulk
3bbb7e38ea improve transformer architecture, remove 3.10 install constraint, add documentation for torch.compile() 2023-05-06 16:12:10 +00:00
robcaulk
c2beeb4c79 bug fix backtest feature validation 2023-05-06 15:53:58 +00:00
Tommaso Falchi
908a2e817a Align BasePyTorchRegressor tensors to cpu as in BasePyTorchClassifier 2023-05-05 15:43:48 +02:00
Tommaso Falchi
306dfc4ae8 refactor(BasePyTorchClassifier.py): convert tensor to list before creating DataFrame to avoid TypeError.
docs(BasePyTorchClassifier.py): add missing parameter description in predict method
2023-05-05 13:04:53 +02:00
robcaulk
af139ffbab add transformer with positional encoding, fix some odds and ends in pytorch, upgrade to PyTorch 2.0 2023-05-01 13:18:03 +00:00
Richard Jozsa
ceb2631a56
Merge branch 'freqtrade:develop' into develop 2023-05-01 01:00:34 +02:00
vinistation
d1eb6d4fed
Update BasePyTorchRegressor.py
Denormalization of prediction added to te PytorchMLP Model
2023-04-28 14:48:16 -05:00
Matthias
8cf0e4a316 Fix mypy typing errors 2023-04-26 19:43:42 +02:00
Matthias
6d3c94a739 type: ignore the offending tensorflow call 2023-04-26 18:08:55 +02:00
robcaulk
c6f3a3bbca avoid typing issues in the tensorboard callback 2023-04-26 14:11:26 +02:00
robcaulk
e86980befa remove typing from callback init 2023-04-26 13:42:10 +02:00
robcaulk
e29ce218eb fix typing in TensorboardCallback 2023-04-26 10:54:54 +02:00
Matthias
59f9f4d467 Fix exception typos due to newlines 2023-04-25 09:27:33 +02:00
robcaulk
0a05099713 fix mypy 2023-04-21 22:52:19 +02:00
Matthias
f30fc29da0 Merge branch 'develop' into pr/richardjozsa/8336 2023-04-19 19:37:51 +02:00
Matthias
3fb5cd3df6 Improve formatting 2023-04-17 20:27:18 +02:00
Matthias
9caa74c796 Merge branch 'develop' into pr/initrv/8426 2023-04-16 18:16:16 +02:00
Richard Jozsa
8620f1178d
Merge branch 'freqtrade:develop' into develop 2023-04-16 14:29:57 +02:00
Matthias
90ce2ae7e4 Merge branch 'develop' into pr/initrv/8426 2023-04-13 20:01:35 +02:00
robcaulk
dcf9bbdaea ensure data is on same device as the model 2023-04-13 12:19:34 +02:00
Matthias
9857675a5e Update torch import 2023-04-11 19:38:24 +02:00
Robert Caulk
4ab047dfa7
Merge pull request #8297 from Yinon-Polak/feat/add-pytorch-model-support
Feat/add pytorch model support
2023-04-11 15:40:12 +02:00
Matthias
9c2cdd4fb9
Merge pull request #8388 from freqtrade/patch-pair-colon-bug
Bug fix: FreqAI backtest target setting
2023-04-08 14:16:41 +02:00
robcaulk
69b9b35a08 Merge remote-tracking branch 'origin/develop' into feat/add-pytorch-model-support 2023-04-08 13:22:25 +02:00
robcaulk
48d3c8e62e fix model loading from disk bug, improve doc, clarify installation/docker instructions, add a torch tag to the freqairl docker image. Fix seriously outdated prediction_model docstrings 2023-04-08 12:09:53 +02:00
Yinon Polak
a655524221 pytorch mlp rename input to fix mypy error 2023-04-04 12:24:29 +03:00
Yinon Polak
26738370c7 pytorch mlp add explicit annotation to fix mypy error 2023-04-04 12:12:02 +03:00
Yinon Polak
6b204c97ed fix pytorch data convertor type hints 2023-04-03 19:02:07 +03:00
Yinon Polak
0c4574b3b7 prevent mypy error, explicitly unpack input list of pytorch mlp model, 2023-04-03 18:10:47 +03:00
Yinon Polak
d9d9993179 add documentation 2023-04-03 17:06:39 +03:00
Yinon Polak
7b494c8333 add documentation to pytorch data convertor 2023-04-03 16:39:49 +03:00
Yinon Polak
bc9454e0f9 add device to data convertor class doc 2023-04-03 16:36:38 +03:00
Yinon Polak
36a0a14a23 clean code 2023-04-03 16:26:42 +03:00
Yinon Polak
c137666230 fix imports 2023-04-03 16:03:15 +03:00
Yinon Polak
bd3b70293f add pytorch data convertor 2023-04-03 15:19:10 +03:00
initrv
cfc0410388 use rl_config get instead of freqai_info 2023-04-02 04:08:07 +03:00
initrv
cab82e8e60 Add sb3 learn progress bar 2023-04-02 02:59:02 +03:00
robcaulk
92f34f262e make trade_type value more explicit, add profit to trade_history dict 2023-04-01 10:05:58 +02:00
Yinon Polak
077a947972 clean code 2023-03-28 15:18:10 +03:00
Yinon Polak
dfbebdea9b improve comment on class_names in freqai interface 2023-03-28 14:44:44 +03:00
Yinon Polak
b795a70102 fix config example in pytorch mlp documentation 2023-03-28 14:44:43 +03:00
Yinon Polak
026b6a39a9 bugfix skip test split when empty 2023-03-28 14:40:23 +03:00
Richard Jozsa
7cbc0ce80a
Merge branch 'freqtrade:develop' into develop 2023-03-28 01:23:24 +02:00
robcaulk
3cabcabcbd ensure labels are properly defined in backtesting 2023-03-27 15:23:01 +02:00
robcaulk
f1e831a7b8 fix bug in backtest target setting 2023-03-26 13:43:59 +02:00
Robert Caulk
d9c8b322ce
Update freqai_interface.py 2023-03-25 13:37:07 +01:00
Yinon Polak
479aafc331 rename Torch to PyTorch 2023-03-22 17:50:00 +02:00
Robert Caulk
bdf19f1d66
Update freqai_interface.py 2023-03-21 22:44:56 +01:00
robcaulk
1ba01746a0 organize pytorch files 2023-03-21 15:09:54 +01:00
Yinon Polak
83a7d888bc type hint init in pytorch mlp classes 2023-03-21 15:19:34 +02:00
Yinon Polak
a80afc8f1b add optional target tensor squeezing to pytorch trainer 2023-03-21 13:20:54 +02:00
Yinon Polak
97339e14cf round up divisions in calc_n_epochs 2023-03-21 12:29:05 +02:00
Yinon Polak
443263803c unsqueeze target tensor when 1 dimensional 2023-03-21 11:42:05 +02:00
Yinon Polak
9906e7d646 clean code 2023-03-21 11:23:45 +02:00
Yinon Polak
e8f040bfbd add class_name attribute to freqai interface 2023-03-20 20:38:43 +02:00
Yinon Polak
a4b617e482 type hints fixes 2023-03-20 20:22:28 +02:00
Yinon Polak
c06cd38951 clean code 2023-03-20 19:55:39 +02:00
Yinon Polak
0a55753faf move default attributes of pytorch classifier to initializer,
to prevent mypy from complaining
2023-03-20 19:40:36 +02:00
Yinon Polak
6b4d9f97c1 clean code 2023-03-20 19:28:30 +02:00
Yinon Polak
500c401b75 improve pytorch classifier documentation 2023-03-20 18:41:04 +02:00
Yinon Polak
9aec1ddb17 sort imports 2023-03-20 18:41:04 +02:00
Yinon Polak
d98890f32e sort imports 2023-03-20 18:41:04 +02:00
Yinon Polak
f659f8e309 remove unused imports 2023-03-20 18:41:04 +02:00
Yinon Polak
54db239175 add pytorch regressor example 2023-03-20 18:41:04 +02:00
Yinon Polak
601c37f862 refactor classifiers class names 2023-03-20 18:41:04 +02:00
Yinon Polak
501e746c52 improve mlp documentation 2023-03-20 18:41:04 +02:00
Yinon Polak
d04146d1b1 improve mlp documentation 2023-03-20 18:41:04 +02:00
Yinon Polak
ea08931ab3 add mlp documentation 2023-03-20 18:41:04 +02:00
Yinon Polak
ddd1b5c0ff modify feedforward net, move layer norm to start of thr block 2023-03-20 18:41:04 +02:00
Yinon Polak
fbf7049ac5 sort imports 2023-03-20 18:41:04 +02:00
Yinon Polak
833aaf8e10 create children class to PyTorchClassifier to implement the fit method where we initialize the trainer and model objects 2023-03-20 18:41:04 +02:00
robcaulk
fab505be1b cheat flake8 for now until we can refactor save into the model class 2023-03-20 18:41:03 +02:00
Richard Jozsa
66c326b789 Add proper handling of multiple environments 2023-03-20 15:54:58 +01:00
Matthias
c92f28bf6f ruff: Activate UP ruleset 2023-03-19 17:57:56 +01:00
Matthias
477dc50425 Add pair output to "tossed" messages 2023-03-18 16:32:07 +00:00
Matthias
9044052b4e Fix exceptions when training fails 2023-03-17 18:29:10 +01:00
Richard Jozsa
d03fe1f8ee add latest experimental version of gymnasium 2023-03-16 00:53:37 +01:00
Yinon Polak
918889a2bd reduce mlp number of parameters for testing 2023-03-13 20:09:12 +02:00
initrv
f3a1177bad bring inc back 2023-03-13 17:53:35 +03:00
Yinon Polak
d7ea750823 revert to using model_training_parameters 2023-03-13 00:35:51 +02:00
Yinon Polak
b6096efadd logging change 2023-03-13 00:35:14 +02:00
Yinon Polak
b927c9dc01 remove train loss calculation from estimate_loss 2023-03-13 00:17:34 +02:00
Yinon Polak
523a58d3d6 simplify statement for pytorch file_type extension 2023-03-13 00:16:44 +02:00
initrv
a10f78e3ef fix increment in case of 0 2023-03-12 23:29:27 +03:00
Yinon Polak
0012fe36ca sort imports 2023-03-12 16:16:04 +02:00
Yinon Polak
cb17b36981 simplify file_type check comparisons 2023-03-12 14:50:08 +02:00
Yinon Polak
f9fdf1c31b generalize mlp model 2023-03-12 14:31:08 +02:00
Yinon Polak
1cf0e7be24 use one iteration on all test and train data for evaluation 2023-03-12 12:48:15 +02:00
initrv
82cb107520 add tensorboard category 2023-03-12 01:32:55 +03:00
Yinon Polak
8a9f2aedbb improve documentation 2023-03-09 14:55:52 +02:00
Yinon Polak
e88a0d5248 convert single quotes to double quotes 2023-03-09 13:29:11 +02:00
Yinon Polak
2ef11faba7 reformat documentation 2023-03-09 13:25:20 +02:00
Yinon Polak
c9eee2944b reformat documentation 2023-03-09 13:01:04 +02:00
Yinon Polak
6f962362f2 expand pytorch trainer documentation 2023-03-09 12:45:46 +02:00
Yinon Polak
ba5de0cd00 add documentation 2023-03-09 11:21:10 +02:00
Yinon Polak
3081b9402b add documentation 2023-03-09 11:14:54 +02:00
robcaulk
d10ee0979a ensure training_features_list is updated properly 2023-03-08 19:37:11 +01:00
Robert Caulk
85e345fc48
Update BaseReinforcementLearningModel.py 2023-03-08 19:29:39 +01:00
Yinon Polak
1597c3aa89 set class names in IStrategy.set_freqai_targets method, also save class name with model meta data 2023-03-08 18:36:44 +02:00
Yinon Polak
7d26df01b8 fix tensor type hint 2023-03-08 16:17:19 +02:00
Yinon Polak
c8296ccb2d sort imports 2023-03-08 16:13:35 +02:00
Yinon Polak
8d60327d60 add missing import 2023-03-08 16:12:47 +02:00
Yinon Polak
04564dc134 add missing import 2023-03-08 16:11:51 +02:00
Yinon Polak
6161b858c4 sort imports 2023-03-08 16:10:25 +02:00
Yinon Polak
1921a07b89 sort imports 2023-03-08 16:08:04 +02:00
Yinon Polak
dfbb2e2b35 sort imports 2023-03-08 16:03:36 +02:00
Yinon Polak
1805db2b07 change documentation and small bugfix 2023-03-08 15:38:22 +02:00
Yinon Polak
76fbec0c17 ad multiclass target names encoder to ints 2023-03-08 14:29:38 +02:00
robcaulk
29d337fa02 ensure ohlc is dropped from both train and predict 2023-03-08 11:26:28 +01:00
robcaulk
d9dc831772 allow user to drop ohlc from features in RL 2023-03-07 11:33:54 +01:00