Guidelines for Selecting and Implementing Financial Time Series Feature Engineering Solutions
Source: Notion | Last edited: 2025-06-04 | ID: 2082d2dc-3ef...
Core Principles
Section titled “Core Principles”- Maintainability and Currency
- Use only well‐maintained, off‐the‐shelf packages that have been actively maintained over the last six months and are not going out of fashion.
- Prefer community‐vetted libraries over custom implementations whenever possible.
- Simplicity (Occam’s Razor)
- If two solutions deliver equivalent functionality, choose the simpler one.
- Avoid unnecessary layers of abstraction or complexity.
- Replaceability (Liskov Substitution)
- Any component you select should be replaceable by another implementation of the same abstraction without breaking correctness.
- Design interfaces so that swapping one library or module for another does not require major rewrites.
- No Hard-Coded Constants
- All numeric parameters (thresholds, epsilons, etc.) must be configurable or derived at runtime (e.g., via machine epsilon, rolling statistics, or other data‐driven methods).
- For division‐by‐zero scenarios, use a community‐vetted “safe_divide” routine or compute any regularizer dynamically—never embed a literal constant in code.
Top-Priority Requirements
Section titled “Top-Priority Requirements”- Feature engineering must focus on financial time series forecasting for directional trading.
- Solutions must maximize:
- Gradient Informativeness
- Surrogate Fidelity
- Extrapolative Reliability If a candidate solution fails to meet these requirements, move down the hierarchy.
Hierarchy of Solutions (Highest to Lowest Rung)
Section titled “Hierarchy of Solutions (Highest to Lowest Rung)”- Turnkey/Off-the-Shelf (SOTA Pre-Packaged)
- Only consider packages that:
- Are widely adopted in the community.
- Have had commits, releases, or active issue‐tracking activity within the last six months.
- Show evidence of ongoing support and maintenance.
- Out-of-the-Box (SOTA Defaults)
- Use default configurations of well‐known libraries when they satisfy core requirements without modification.
- Plug-and-Play Components (SOTA Modules)
- Integrate individual modules (e.g., a feature‐extraction library) that can be composed into a pipeline.
- Template/Framework (SOTA Skeletons)
- Leverage boilerplate or skeleton projects that provide a starting point, customizing only as needed.
- Configurable/Semi-Custom (Adaptive SOTA Frameworks)
- Use frameworks that allow parameterization or light customization at runtime.
- Custom/Bespoke (Research-Grade SOTA)
- Only if none of the above options meet requirements, develop a fully custom implementation following best practices.