Merge pull request #7689 from freqtrade/add-pca-dbscan-tests

add integrated tests for PCA and DBSCAN
This commit is contained in:
Matthias 2022-11-02 19:41:37 +01:00 committed by GitHub
commit 09e0a8d4df
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23

View File

@ -27,13 +27,13 @@ def is_mac() -> bool:
return "Darwin" in machine return "Darwin" in machine
@pytest.mark.parametrize('model', [ @pytest.mark.parametrize('model, pca, dbscan', [
'LightGBMRegressor', ('LightGBMRegressor', True, False),
'XGBoostRegressor', ('XGBoostRegressor', False, True),
'XGBoostRFRegressor', ('XGBoostRFRegressor', False, False),
'CatboostRegressor', ('CatboostRegressor', False, False),
]) ])
def test_extract_data_and_train_model_Standard(mocker, freqai_conf, model): def test_extract_data_and_train_model_Standard(mocker, freqai_conf, model, pca, dbscan):
if is_arm() and model == 'CatboostRegressor': if is_arm() and model == 'CatboostRegressor':
pytest.skip("CatBoost is not supported on ARM") pytest.skip("CatBoost is not supported on ARM")
@ -41,6 +41,8 @@ def test_extract_data_and_train_model_Standard(mocker, freqai_conf, model):
freqai_conf.update({"freqaimodel": model}) freqai_conf.update({"freqaimodel": model})
freqai_conf.update({"timerange": "20180110-20180130"}) freqai_conf.update({"timerange": "20180110-20180130"})
freqai_conf.update({"strategy": "freqai_test_strat"}) freqai_conf.update({"strategy": "freqai_test_strat"})
freqai_conf['freqai']['feature_parameters'].update({"principal_component_analysis": pca})
freqai_conf['freqai']['feature_parameters'].update({"use_DBSCAN_to_remove_outliers": dbscan})
strategy = get_patched_freqai_strategy(mocker, freqai_conf) strategy = get_patched_freqai_strategy(mocker, freqai_conf)
exchange = get_patched_exchange(mocker, freqai_conf) exchange = get_patched_exchange(mocker, freqai_conf)