Files
drift/config/presets.py
T
Mark Aron Szulyovszky 8dd2d88740 chore(Linter): reformatted code with black (#211)
* chore(Linter): reformatted code with black

* Create black.yaml
2022-02-17 19:22:17 +01:00

102 lines
3.1 KiB
Python

from .types import RawConfig, Config
def get_dev_config() -> RawConfig:
classification_models = ["LogisticRegression_two_class"]
return RawConfig(
directional_models_meta=False,
dimensionality_reduction=False,
n_features_to_select=30,
expanding_window_base=False,
expanding_window_meta=False,
sliding_window_size_base=380,
sliding_window_size_meta=1,
retrain_every=20,
scaler="minmax", # 'normalize' 'minmax' 'standardize'
assets=["daily_only_btc"],
target_asset="BTC_USD",
other_assets=[],
exogenous_data=[],
load_non_target_asset=True,
own_features=["level_2", "date_days"],
other_features=["single_mom"],
exogenous_features=["z_score"],
directional_models=classification_models,
meta_models=[],
event_filter="none",
labeling="two_class",
forecasting_horizon=100,
)
def get_default_ensemble_config() -> RawConfig:
classification_models = [
"LogisticRegression_two_class",
"LDA",
"NB",
"RFC",
"XGB_two_class",
"LGBM",
"StaticMom",
]
meta_models = ["LogisticRegression_two_class", "LGBM"]
return RawConfig(
directional_models_meta=True,
dimensionality_reduction=False,
n_features_to_select=30,
expanding_window_base=False,
expanding_window_meta=True,
sliding_window_size_base=380,
sliding_window_size_meta=240,
retrain_every=10,
scaler="minmax", # 'normalize' 'minmax' 'standardize'
assets=["daily_crypto"],
target_asset="BTC_USD",
other_assets=["daily_etf"],
exogenous_data=["daily_glassnode"],
load_non_target_asset=True,
own_features=["level_2", "date_days", "lags_up_to_5"],
other_features=["level_2", "lags_up_to_5"],
exogenous_features=["z_score"],
directional_models=classification_models,
meta_models=meta_models,
event_filter="cusum_vol",
labeling="two_class",
forecasting_horizon=100,
)
def get_lightweight_ensemble_config() -> RawConfig:
classification_models = ["LogisticRegression_two_class", "LGBM"]
meta_models = ["LogisticRegression_two_class", "LGBM"]
return RawConfig(
directional_models_meta=True,
dimensionality_reduction=True,
n_features_to_select=30,
expanding_window_base=True,
expanding_window_meta=True,
sliding_window_size_base=3800,
sliding_window_size_meta=2400,
retrain_every=1000,
scaler="minmax", # 'normalize' 'minmax' 'standardize'
assets=["fivemin_crypto"],
target_asset="BTC_USD",
other_assets=[],
exogenous_data=[],
load_non_target_asset=False,
own_features=["level_1"],
other_features=[],
exogenous_features=[],
directional_models=classification_models,
meta_models=meta_models,
event_filter="cusum_fixed",
labeling="two_class",
forecasting_horizon=50,
)