mirror of
https://github.com/webclinic017/drift.git
synced 2026-07-27 18:57:55 +00:00
56 lines
1.7 KiB
Python
56 lines
1.7 KiB
Python
from .types import FeatureExtractorConfig
|
|
from .feature_extractors import (
|
|
feature_lag,
|
|
feature_mom,
|
|
feature_ROC,
|
|
feature_RSI,
|
|
feature_STOD,
|
|
feature_STOK,
|
|
feature_expanding_zscore,
|
|
feature_vol,
|
|
feature_day_of_month,
|
|
feature_day_of_week,
|
|
feature_month,
|
|
feature_debug_future_lookahead,
|
|
)
|
|
from .fractional_differentiation import (
|
|
feature_fractional_differentiation,
|
|
)
|
|
|
|
__presets = dict(
|
|
debug_future_lookahead=[
|
|
("debug_future", feature_debug_future_lookahead, [1, 5, 10])
|
|
],
|
|
single_mom=[("mom", feature_mom, [30])],
|
|
single_vol=[("vol", feature_vol, [30])],
|
|
mom=[("mom", feature_mom, [100, 300, 600, 900, 1800])],
|
|
vol=[("vol", feature_vol, [100, 300, 600, 1800])],
|
|
lags_up_to_5=[("lag", feature_lag, [1, 2, 3, 4, 5])],
|
|
lags_up_to_10=[("lag", feature_lag, [1, 2, 3, 4, 5, 6, 7, 8, 9, 10])],
|
|
date_all=[
|
|
("day_of_week", feature_day_of_week, [0]),
|
|
("day_of_month", feature_day_of_month, [0]),
|
|
("month", feature_month, [0]),
|
|
],
|
|
date_days=[
|
|
("day_of_week", feature_day_of_week, [0]),
|
|
("day_of_month", feature_day_of_month, [0]),
|
|
],
|
|
roc=[("roc", feature_ROC, [100, 300])],
|
|
rsi=[("rsi", feature_ROC, [100, 300, 1000])],
|
|
stod=[("stod", feature_STOD, [100, 300, 2000])],
|
|
stok=[("stok", feature_STOK, [100, 300, 2000])],
|
|
fracdiff=[("fracdiff", feature_fractional_differentiation, [100, 300])],
|
|
z_score=[("z_score", feature_expanding_zscore, [100])],
|
|
)
|
|
|
|
presets = __presets | dict(
|
|
level_1=__presets["mom"] + __presets["vol"],
|
|
level_2=__presets["mom"]
|
|
+ __presets["vol"]
|
|
+ __presets["roc"]
|
|
+ __presets["rsi"]
|
|
+ __presets["stod"]
|
|
+ __presets["stok"],
|
|
)
|