bquant.data.processor — Обработка данных

Обзор

Предобработка OHLCV‑данных: очистка, удаление выбросов, ресемплинг, расчёт производных индикаторов и признаков.

Функции

  • clean_ohlcv_data(df, fill_method='forward', remove_outliers=True, outlier_threshold=3.0) -> DataFrame

  • remove_price_outliers(df, columns=None, threshold=3.0, method='z_score'|'iqr') -> DataFrame

  • calculate_derived_indicators(df) -> DataFramehl_avg, ohlc_avg, typical_price, true_range, price_change, price_change_pct, gap/gap_pct, volume‑метрики

  • resample_ohlcv(df, target_timeframe, method='standard') -> DataFrame

  • Дополнительно: normalize_prices, detect_market_sessions, add_technical_features, create_lagged_features, prepare_data_for_analysis (если присутствуют в версии модуля)

Примеры

Очистка + подготовка:

from bquant.data.processor import clean_ohlcv_data, prepare_data_for_analysis

clean = clean_ohlcv_data(df, fill_method='forward', remove_outliers=True)
prep = prepare_data_for_analysis(clean, add_tech_features=True, normalize=True)

Ресемплинг:

from bquant.data.processor import resample_ohlcv
hourly = resample_ohlcv(df, '1h')
daily = resample_ohlcv(df, '1d')

Производные индикаторы:

from bquant.data.processor import calculate_derived_indicators
features = calculate_derived_indicators(df)

Советы

  • Перед ресемплингом убедитесь, что индекс — DatetimeIndex.

  • Для удаления выбросов выбирайте метод, подходящий под ваш рынок (z_score или IQR).