A Python library for Automatic extraction of relevant features from OHLCV time series
Project description
autofcholv
A Python library for Automated extraction of relevant features from OHLCV time series data. Designed to help quantitative researchers and traders quickly generate a massive set of highly predictive features from basic pricing and volume data.
🚀 Key Features
- Automated Validation & Cleaning: Built-in verification processes that ensure input OHLCV records don't contain logical errors, missing records, or erroneous overlaps (such as incorrect High/Low bounds).
- Vectorized Execution: Under the hood, feature extraction heavily uses vectorized
pandasandnumpyfunctions alongsidepandas-tato ensure lightning-fast execution times, even when handling millions of rows. - Broad Feature Sets: Automatically extracts everything from time signatures and candlestick geometries to advanced fractal mathematics like the Hurst Exponent.
- CLI Included: Ships with an easy-to-use Command Line Interface (
autofcholv) for users who want to run extractions in a terminal.
📦 Installation
To install autofcholv into your environment, use pip.
It is recommended to use a virtual environment (venv).
pip install autofcholv
Or from source:
# Clone the repository
git clone https://github.com/tempusoneps/autofcholv.git
cd autofcholv
# Install via pip
pip install .
# For development mode
pip install -e .[dev]
Requirements
- Python >= 3.12
pandasnumpypandas_tapython-dotenv
🛠️ Usage
Using the Command Line Interface (CLI)
After installing, the autofcholv command is immediately available in your terminal.
extract — Extract features from a CSV file
autofcholv extract input.csv --output my_features.csv
Options:
input: Path to your input OHLCV CSV file. It must containDate,Open,High,Low,Close, andVolumecolumns.--output,-o: The path where the output features CSV will be saved (default:output_features.csv).
generate-config — Generate a default configuration file
autofcholv generate-config --path .env
Options:
--path,-p: Path to save the generated config file (default:.env).
This creates a .env file pre-filled with all default configuration values. Edit it to customise feature behaviour (e.g. ONE_DAY_BARS=49, SELECTED_TIME_FRAME=15m).
Global options
--version,-v: Print library version.--help,-h: Show help message.
Configuration loading priority
autofcholv resolves configuration in the following order (first match wins):
- Environment variables — all required keys must be present in the environment.
- Config file — a JSON or YAML file passed explicitly via the API (
load_config(path)). - Built-in defaults — sensible defaults are applied automatically if neither of the above is available.
Using the Python API
You can easily use autofcholv directly in Jupyter Notebooks or Python scripts:
import pandas as pd
from autofcholv import extract_features
# 1. Load your OHLCV data into a Pandas DataFrame
# It is important that index is a DatetimeIndex and columns are correctly named
df = pd.read_csv("historic_data.csv", index_col="Date", parse_dates=True)
# 2. Run the extraction pipeline
features_df = extract_features(df)
# 3. View the results
print(features_df.tail())
Other Resources
Please refer to the Pipeline Overview for a comprehensive list of all generated features.
Please refer to the Extracted Features Catalog for a comprehensive list of all generated features.
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file autofcholv-0.2.0.tar.gz.
File metadata
- Download URL: autofcholv-0.2.0.tar.gz
- Upload date:
- Size: 17.8 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.12.3
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
dd2884f284fc2de24d185a7ebf6155ce1cb7e22df067d4d2221624cf25cf5933
|
|
| MD5 |
4f56bf7ce97843eeca7475971db83478
|
|
| BLAKE2b-256 |
8787adaa0d8ef9fba48305959e780767a89b8c37df3d92c2f943b07b45edf8a9
|
File details
Details for the file autofcholv-0.2.0-py3-none-any.whl.
File metadata
- Download URL: autofcholv-0.2.0-py3-none-any.whl
- Upload date:
- Size: 17.9 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.12.3
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
62eb3d493e405eb0c617d2e02e71bbc10fcd6e49171a74fc41c1c4453782bb54
|
|
| MD5 |
addea7129eff3a9160230f12053f64e3
|
|
| BLAKE2b-256 |
4aaaff9512b78cd2d45a34c41e09ed143edf18b6e0b87c35bb69929bb024b9d0
|