robcaulk
|
3eb897c2f8
|
reuse callback, allow user to acces all stable_baselines3 agents via config
|
2022-08-24 13:00:55 +02:00 |
|
robcaulk
|
4b9499e321
|
improve nomenclature and fix short exit bug
|
2022-08-24 13:00:55 +02:00 |
|
sonnhfit
|
4baa36bdcf
|
fix persist a single training environment for PPO
|
2022-08-24 13:00:55 +02:00 |
|
robcaulk
|
f95602f6bd
|
persist a single training environment.
|
2022-08-24 13:00:55 +02:00 |
|
robcaulk
|
5d4e5e69fe
|
reinforce training with state info, reinforce prediction with state info, restructure config to accommodate all parameters from any user imported model type. Set 5Act to default env on TDQN. Clean example config.
|
2022-08-24 13:00:55 +02:00 |
|
sonnhfit
|
7962a1439b
|
remove keep low profit
|
2022-08-24 13:00:55 +02:00 |
|
sonnhfit
|
81b5aa66e8
|
make env keep current position when low profit
|
2022-08-24 13:00:55 +02:00 |
|
sonnhfit
|
45218faeb0
|
fix coding convention
|
2022-08-24 13:00:55 +02:00 |
|
robcaulk
|
b90da46b1b
|
improve price df handling to enable backtesting
|
2022-08-24 13:00:55 +02:00 |
|
MukavaValkku
|
2080ff86ed
|
5ac base fixes in logic
|
2022-08-24 13:00:55 +02:00 |
|
robcaulk
|
16cec7dfbd
|
fix save/reload functionality for stablebaselines
|
2022-08-24 13:00:55 +02:00 |
|
sonnhfit
|
0475b7cb18
|
remove unuse code and fix coding conventions
|
2022-08-24 13:00:55 +02:00 |
|
MukavaValkku
|
d60a166fbf
|
multiproc TDQN with xtra callbacks
|
2022-08-24 13:00:55 +02:00 |
|
robcaulk
|
dd382dd370
|
add monitor to eval env so that multiproc can save best_model
|
2022-08-24 13:00:55 +02:00 |
|
robcaulk
|
69d542d3e2
|
match config and strats to upstream freqai
|
2022-08-24 13:00:55 +02:00 |
|
robcaulk
|
e5df39e891
|
ensuring best_model is placed in ram and saved to disk and loaded from disk
|
2022-08-24 13:00:55 +02:00 |
|
robcaulk
|
bf7ceba958
|
set cpu threads in config
|
2022-08-24 13:00:55 +02:00 |
|
MukavaValkku
|
57c488a6f1
|
learning_rate + multicpu changes
|
2022-08-24 13:00:55 +02:00 |
|
robcaulk
|
acf3484e88
|
add multiprocessing variant of ReinforcementLearningPPO
|
2022-08-24 13:00:55 +02:00 |
|
MukavaValkku
|
cf0731095f
|
type fix
|
2022-08-24 13:00:55 +02:00 |
|
MukavaValkku
|
1c81ec6016
|
3ac and 5ac example strategies
|
2022-08-24 13:00:55 +02:00 |
|
MukavaValkku
|
13cd18dc9a
|
PPO policy change + verbose=1
|
2022-08-24 13:00:55 +02:00 |
|
robcaulk
|
926023935f
|
make base 3ac and base 5ac environments. TDQN defaults to 3AC.
|
2022-08-24 13:00:55 +02:00 |
|
MukavaValkku
|
096533bcb9
|
3ac to 5ac
|
2022-08-24 13:00:55 +02:00 |
|
MukavaValkku
|
718c9d0440
|
action fix
|
2022-08-24 13:00:55 +02:00 |
|
robcaulk
|
9c78e6c26f
|
base PPO model only customizes reward for 3AC
|
2022-08-24 13:00:55 +02:00 |
|
robcaulk
|
6048f60f13
|
get TDQN working with 5 action environment
|
2022-08-24 13:00:55 +02:00 |
|
robcaulk
|
d4db5c3281
|
ensure TDQN class is properly named
|
2022-08-24 13:00:55 +02:00 |
|
robcaulk
|
91683e1dca
|
restructure RL so that user can customize environment
|
2022-08-24 13:00:55 +02:00 |
|
sonnhfit
|
ecd1f55abc
|
add rl module
|
2022-08-24 13:00:55 +02:00 |
|
MukavaValkku
|
9b895500b3
|
initial commit - new dev branch
|
2022-08-24 13:00:55 +02:00 |
|
MukavaValkku
|
cd3fe44424
|
callback function and TDQN model added
|
2022-08-24 13:00:55 +02:00 |
|
MukavaValkku
|
01232e9a1f
|
callback function and TDQN model added
|
2022-08-24 13:00:55 +02:00 |
|
MukavaValkku
|
8eeaab2746
|
add reward function
|
2022-08-24 13:00:55 +02:00 |
|
MukavaValkku
|
ec813434f5
|
ReinforcementLearningModel
|
2022-08-24 13:00:55 +02:00 |
|
MukavaValkku
|
2f4d73eb06
|
Revert "ReinforcementLearningModel"
This reverts commit 4d8dfe1ff1daa47276eda77118ddf39c13512a85.
|
2022-08-24 13:00:55 +02:00 |
|
MukavaValkku
|
c1e7db3130
|
ReinforcementLearningModel
|
2022-08-24 13:00:55 +02:00 |
|
robcaulk
|
05ed1b544f
|
Working base for reinforcement learning model
|
2022-08-24 13:00:40 +02:00 |
|
th0rntwig
|
5ce1c69803
|
Improve DBSCAN epsilon identification (#7269)
* Improve DBSCAN epsilon identification
|
2022-08-22 19:57:20 +02:00 |
|
robcaulk
|
ac42c0153d
|
deprecate indicator_max_period_candles, automatically compute startup candles for FreqAI backtesting.
|
2022-08-22 18:19:07 +02:00 |
|
robcaulk
|
96d8882f1e
|
Plug mem leak, add training timer
|
2022-08-22 13:30:30 +02:00 |
|
longyu
|
cfa5b3f12c
|
add new line
|
2022-08-19 12:39:08 +02:00 |
|
longyu
|
277245c69d
|
remove line
|
2022-08-19 12:39:00 +02:00 |
|
longyu
|
f70b0bab80
|
remove line
|
2022-08-17 23:49:20 +02:00 |
|
robcaulk
|
5155afb4e7
|
clean up code remnants
|
2022-08-17 15:22:48 +02:00 |
|
robcaulk
|
0c34104e45
|
extract download-data from freqai to prepare for future async changes
|
2022-08-17 15:18:44 +02:00 |
|
longyu
|
9c38c27eed
|
ignore sample itself distance for avg_mean_dist computation
|
2022-08-17 15:09:57 +02:00 |
|
longyu
|
72c34291e3
|
newline
|
2022-08-17 15:09:10 +02:00 |
|
robcaulk
|
4c0fda400f
|
fix input shape warning for LGBMClassifier, add sample_weights/eval_weights
|
2022-08-16 11:41:53 +02:00 |
|
Matthias
|
c7e1719215
|
Fix interface import sorting
|
2022-08-15 06:53:02 +02:00 |
|
robcaulk
|
006b11e5d5
|
fix leftover bug in indicator population
|
2022-08-14 21:42:55 +02:00 |
|
robcaulk
|
8961b8d560
|
merge in inference timer and historic predictions handling improvements.
|
2022-08-14 20:31:15 +02:00 |
|
robcaulk
|
ad846cdb76
|
fix lock bug, update docstring
|
2022-08-14 20:24:29 +02:00 |
|
Matthias
|
464d99808f
|
Update doc table formatting
|
2022-08-14 18:22:01 +02:00 |
|
Matthias
|
a29402ddde
|
Rename and move analysis_lock to data_kitchen
|
2022-08-14 17:23:14 +02:00 |
|
Matthias
|
3a9ec76c91
|
Move "freqai.lock" to backend to simplify user interface
|
2022-08-14 17:19:50 +02:00 |
|
Robert Caulk
|
c9c128f781
|
finalize logo, improve doc, improve algo overview, fix base tensorflowmodel for mypy
|
2022-08-14 02:49:01 +02:00 |
|
robcaulk
|
58de20af0f
|
make BaseClassifierModel. Add predict_proba to lightgbm
|
2022-08-13 20:07:31 +02:00 |
|
robcaulk
|
31be707cc8
|
clean up code, add docstrings
|
2022-08-13 19:40:24 +02:00 |
|
robcaulk
|
3e38c1b0bd
|
take dynamic sized tail off historic_predictions as return dataframe to strategy.
|
2022-08-13 19:40:24 +02:00 |
|
robcaulk
|
7d448fd4ac
|
allow fit_live_predictions access to current pair
|
2022-08-13 19:40:24 +02:00 |
|
robcaulk
|
1f192be43b
|
avoid denormalizing labels twice
|
2022-08-13 19:40:24 +02:00 |
|
robcaulk
|
b1b76a2dbe
|
debug classifier with predict proba
|
2022-08-13 19:40:24 +02:00 |
|
robcaulk
|
23cc21ce59
|
add predict_proba to base classifier, improve historic predictions handling
|
2022-08-13 19:40:24 +02:00 |
|
robcaulk
|
fb4b73ce89
|
ensure dates are saved
|
2022-08-12 12:03:44 +02:00 |
|
robcaulk
|
2cae3c42e6
|
remove trade database analyzer, clean up a bit
|
2022-08-10 17:43:06 +02:00 |
|
robcaulk
|
5a16d5a512
|
Deactivate database analyzer if user does not use sqlite
|
2022-08-09 16:36:22 +02:00 |
|
robcaulk
|
e7de812948
|
Allow user to user pair_dict for persistent storage of custom data
|
2022-08-09 16:03:10 +02:00 |
|
robcaulk
|
aef086b02e
|
Improved dict typing, timeframe parser, collect dates associated with training data points
|
2022-08-09 15:30:25 +02:00 |
|
Matthias
|
77b3b8a134
|
Use main exchange instead of creating a separate instance.
|
2022-08-08 18:34:11 +00:00 |
|
robcaulk
|
ea64f43e52
|
bring back auto DF resizing for okx
|
2022-08-08 01:13:13 +02:00 |
|
robcaulk
|
eb8bde37c1
|
Add lightgbm classifier, add classifier check test, fix classifier bug.
|
2022-08-06 17:51:21 +02:00 |
|
Matthias
|
47a30047eb
|
Fix typo
|
2022-08-06 15:03:10 +02:00 |
|
Matthias
|
b16f57cb0d
|
Minor stylistic fixes
|
2022-08-06 14:55:46 +02:00 |
|
Robert Caulk
|
c172ce1011
|
improve flexibility of user defined prediction dataframe
|
2022-08-06 13:51:19 +02:00 |
|
Robert Caulk
|
07763d0d4f
|
add classifier, improve model naming scheme
|
2022-08-06 08:33:55 +02:00 |
|
Robert Caulk
|
ce8fbbf743
|
ensure loading historical df matches frequi indices
|
2022-08-06 07:25:59 +02:00 |
|
robcaulk
|
60d782e5c5
|
remove unnecessary function
|
2022-08-05 21:31:32 +02:00 |
|
robcaulk
|
a42a060ab5
|
fix DB once and for all. Make DBSCAN more efficient and robust.
|
2022-08-05 21:29:03 +02:00 |
|
Robert Caulk
|
a3799c4d5d
|
start frequi with historical data if available
|
2022-08-05 18:27:47 +02:00 |
|
robcaulk
|
29b7b014e5
|
fix bug in DB path initialization
|
2022-08-05 18:19:26 +02:00 |
|
robcaulk
|
db1d367941
|
fix bug associated to fit_live_predictions_candles
|
2022-08-05 13:46:20 +02:00 |
|
robcaulk
|
05ec5c5e54
|
generalize database url path for any db type
|
2022-08-05 12:19:29 +02:00 |
|
Robert Caulk
|
51a6b4289f
|
improve DBSCAN performance for subsequent trainings
|
2022-08-04 17:41:58 +02:00 |
|
Robert Caulk
|
fe1b8515a8
|
fix bug in DBSCAN, update doc
|
2022-08-04 17:00:59 +02:00 |
|
robcaulk
|
29225e4baf
|
add DBSCAN outlier detection feature, add supporting documentation
|
2022-08-04 12:15:16 +02:00 |
|
robcaulk
|
eae82d0222
|
fix bug with database url during backtesting. comment out example trade db analysis.
|
2022-08-03 16:17:57 +02:00 |
|
robcaulk
|
95d3009a95
|
give user ability to analyze live trade dataframe inside custom prediction model. Add documentation to explain new functionality
|
2022-08-02 20:14:02 +02:00 |
|
robcaulk
|
946d4c7cfc
|
fix trailing whitespace for flake8
|
2022-07-31 18:39:46 +02:00 |
|
robcaulk
|
4e68626bcb
|
ensure convolutional window is prepended for frequi consistency
|
2022-07-31 17:51:19 +02:00 |
|
robcaulk
|
d830105605
|
*BREAKING CHANGE* remove unnecessary arguments from populate_any_indicators(), accommodate tests
|
2022-07-31 17:05:29 +02:00 |
|
robcaulk
|
dd8288c090
|
expose full parameter set for SVM outlier detection. Set default shuffle to false to improve reproducibility
|
2022-07-30 13:40:05 +02:00 |
|
robcaulk
|
f22b140782
|
fix backtesting bug, undo move of label stat calc, fix example strat exit logic
|
2022-07-29 17:27:35 +02:00 |
|
robcaulk
|
59624181bd
|
isort BaseRegressionModel imports
|
2022-07-29 08:23:44 +02:00 |
|
robcaulk
|
c84d54b35e
|
Fix typing issue, avoid using .get() when unnecessary, convert to fstrings
|
2022-07-29 08:12:50 +02:00 |
|
Matthias
|
efbd83c56d
|
Small type and typo fixes in freqai_interface
|
2022-07-28 07:24:30 +02:00 |
|
Matthias
|
a2a0d35a24
|
Update missing typehints
|
2022-07-28 07:07:40 +02:00 |
|
Matthias
|
f31106dc61
|
Minor comment fixes
|
2022-07-27 07:27:24 +02:00 |
|
Matthias
|
bc760b7eb2
|
Simplify small segment in datadrawer
|
2022-07-26 19:41:49 +02:00 |
|
robcaulk
|
324e54c015
|
fix possible memory leak associated with Catboost Pool object
|
2022-07-26 17:29:29 +02:00 |
|
robcaulk
|
3f149c4067
|
fix return type in BaseTensorFlowModel
|
2022-07-26 16:01:54 +02:00 |
|
robcaulk
|
ad25a4cb56
|
reduce number of pair_dict lookups, remove coin_first
|
2022-07-26 15:58:40 +02:00 |
|
robcaulk
|
fb4e8430cd
|
isort auto import sorting
|
2022-07-26 10:51:39 +02:00 |
|
robcaulk
|
e213d0ad55
|
isolate data_drawer functions from data_kitchen, accommodate tests, add new test
|
2022-07-26 10:24:14 +02:00 |
|
robcaulk
|
56b17e6f3c
|
allow user to pass test_size = 0 and avoid using eval sets in prediction models
|
2022-07-25 19:40:13 +02:00 |
|
Robert Caulk
|
897f18a8c8
|
ensure proper integer type casting for timestamps. Add check test for backtesting subdaily time periods
|
2022-07-25 15:07:09 +02:00 |
|
Robert Caulk
|
7b105532d1
|
fix mypy error and add test for principal component analysis
|
2022-07-25 11:46:59 +02:00 |
|
Robert Caulk
|
c9d46a5237
|
finish bringing follow_mode up to date
|
2022-07-25 09:24:40 +02:00 |
|
Robert Caulk
|
ab587747fb
|
first fix for follower path bug
|
2022-07-24 23:32:24 +02:00 |
|
Matthias
|
520ee3f7a1
|
Convert freqAI into packages
|
2022-07-24 17:07:45 +02:00 |
|
Matthias
|
1885deb632
|
More docstring changes
|
2022-07-24 16:54:39 +02:00 |
|
Matthias
|
70b7a254af
|
Update some areas to use default docstring formatting
|
2022-07-24 16:51:48 +02:00 |
|
Matthias
|
61c41fd919
|
Merge branch 'develop' into feat/freqai
|
2022-07-24 16:18:58 +02:00 |
|
Robert Caulk
|
88e10f7306
|
add exception for not passing timerange. Remove hard coded arguments for CatboostPredictionModels. Update docs
|
2022-07-24 09:01:23 +02:00 |
|
Robert Caulk
|
fff39eff9e
|
fix multitarget bug
|
2022-07-24 08:42:50 +02:00 |
|
robcaulk
|
f3d46613ee
|
move prediction denormalization into datakitchen. remove duplicate associated code. avoid normalization/denormalization for string dtypes.
|
2022-07-23 17:14:33 +02:00 |
|
Matthias
|
8fa6e8b4ba
|
Remove freqAI model bridge in favor of self.freqai
|
2022-07-23 17:08:05 +02:00 |
|
robcaulk
|
c91e23dc50
|
let user avoid normalizing labels
|
2022-07-23 16:14:13 +02:00 |
|
robcaulk
|
50d630a155
|
remove unnecessary comments from data_drawer.py
|
2022-07-23 13:35:44 +02:00 |
|
robcaulk
|
a1cff377ec
|
add record of contribution to data_kitchen.py
|
2022-07-23 13:32:04 +02:00 |
|
robcaulk
|
c2d6a0e891
|
add record of contribution to doc and source
|
2022-07-23 13:04:06 +02:00 |
|
robcaulk
|
5559e605b8
|
small PR conversation resolutions
|
2022-07-22 17:46:14 +02:00 |
|
robcaulk
|
40f00196eb
|
use cloudpickle in place of pickle. define Paths once in data_drawer.
|
2022-07-22 17:37:51 +02:00 |
|
robcaulk
|
98c8a447b2
|
add LightGBMPredictionMultiModel
|
2022-07-22 12:40:51 +02:00 |
|
robcaulk
|
afcb0bec00
|
clean up obsolete comments, move remove_features_from_df to datakitchen
|
2022-07-22 12:29:20 +02:00 |
|
robcaulk
|
3205788bce
|
extend doc to include descriptions of the return values from FreqAI to the strategy
|
2022-07-21 22:11:46 +02:00 |
|
robcaulk
|
8033e0bf23
|
add counter to backtesting log so users know how many more pairs and how many more models will need to be trained
|
2022-07-21 13:22:12 +02:00 |
|
robcaulk
|
183dec866a
|
remove ability to backtest open ended timeranges (safer)
|
2022-07-21 13:02:52 +02:00 |
|
robcaulk
|
e694ea1cfd
|
make sure backtesting gets the populated indicators with slimmed down user strat
|
2022-07-21 12:48:09 +02:00 |
|
robcaulk
|
ca4dd58642
|
remove superceded function from datakitchen
|
2022-07-21 12:40:54 +02:00 |
|
robcaulk
|
8f86b0deaa
|
*breaking change* simplify user strat by consolidating feature loops into backend
|
2022-07-21 12:24:22 +02:00 |
|
robcaulk
|
e7337728bf
|
add separator in folder name just incase an asset ends in an integer
|
2022-07-21 11:25:28 +02:00 |
|
robcaulk
|
921a7ef216
|
add requirements-freqai.txt to builds
|
2022-07-20 15:51:25 +02:00 |
|
robcaulk
|
d43c146676
|
add more tests for datakitchen functionalities, add regression tests for freqai_interface train/backtest
|
2022-07-20 12:56:46 +02:00 |
|
lolong
|
9c051958a6
|
Feat/freqai (#7105)
Vectorize weight setting, log training dates
Co-authored-by: robcaulk <rob.caulk@gmail.com>
|
2022-07-19 17:49:18 +02:00 |
|
robcaulk
|
714d9534b6
|
start adding tests
|
2022-07-19 16:16:44 +02:00 |
|
lolong
|
ed0f8b1189
|
Improve FreqAI documentation (#7072)
Improve doc + some other small fixes
Co-authored-by: robcaulk <rob.caulk@gmail.com>
|
2022-07-18 11:57:52 +02:00 |
|
Robert Caulk
|
921f3899f0
|
revert pickle reading for historic predictions
|
2022-07-17 16:06:36 +02:00 |
|
Robert Caulk
|
41eeb99177
|
load pickle file for writing
|
2022-07-17 10:05:21 +02:00 |
|
Robert Caulk
|
9d184586f1
|
fix bug in historic prediction saving
|
2022-07-16 21:16:59 +02:00 |
|
Wagner Costa Santos
|
ca2029a46b
|
fix issue when bot restarts with same identifier, does not load prediction history
|
2022-07-14 18:55:24 -03:00 |
|
robcaulk
|
4141d165ff
|
add BaseTensorFlowModel class
|
2022-07-12 19:10:09 +02:00 |
|
robcaulk
|
ef409dd345
|
Add ground work for TensorFlow models, add protections from common mistakes
|
2022-07-12 18:09:17 +02:00 |
|
Robert Caulk
|
fea63fba12
|
Fix saving/loading historic predictions
|
2022-07-12 10:12:50 +02:00 |
|
Robert Caulk
|
8ce6b18318
|
start collecting indefinite history of predictions. Allow user to generate statistics on these predictions. Direct FreqAI to save these to disk and reload them if available.
|
2022-07-11 22:01:48 +02:00 |
|
Matthias
|
3fc92b1b21
|
Create BaseRegression model - designed to reduce code duplication across currently available models.
|
2022-07-11 11:33:59 +02:00 |
|
Robert Caulk
|
607455919e
|
Change config parameter names to improve clarity and consistency throughout the code (!!breaking change, please check discord support channel for migration instructions or review templates/FreqaiExampleStrategy.py config_examples/config_freqai_futures.example.json file changes!!)
|
2022-07-10 12:35:44 +02:00 |
|
Matthias
|
819cc9c0e4
|
Fully align LightGBM with Catboost
|
2022-07-10 11:06:18 +02:00 |
|
Matthias
|
58b18770e3
|
Fix LightGBM missing argument in predict method
|
2022-07-10 11:05:35 +02:00 |
|
Matthias
|
2e1061af64
|
Fix faulty LightGBM model
|
2022-07-09 08:21:42 +00:00 |
|