Preprocessing API

The preprocessing module handles data preparation and feature engineering.

DataPreprocessor

FeatureConfig

Functions

Example Usage

Simple Preprocessing

from grubeta import DataPreprocessor

prep = DataPreprocessor()
data = prep.prepare_simple(stock_returns, market_returns)

# Use with DynamicBeta
model = DynamicBeta()
results = model.fit_predict(**data)

Full Feature Engineering

from grubeta import DataPreprocessor, FeatureConfig

config = FeatureConfig(
    lag_features=True,
    include_technicals=True,
    include_macro=True
)

prep = DataPreprocessor(config)
features = prep.prepare(stock_df, market_df, macro_df)

model = DynamicBeta(lookback=90)
results = model.fit_predict(**features)

Saving Processed Data

prep.save_processed_data(
    features,
    output_dir='./data',
    name='AAPL'
)

# Load later
from grubeta.preprocessing import load_processed_data
features = load_processed_data('./data/AAPL.csv')