Parkinson Vol
Quick Reference
| Property | Value |
|---|---|
| Dimension | signal |
| Category | volatility |
| Version | v0.9.0 (Beta) |
| Output Column | parkinson_vol |
Parkinson volatility estimator: sqrt(1/(4*ln2) * ln(H/L)^2) from bar OHLC
Formula
sqrt(clip((log((high / low)) * log((high / low))), 0.0))
CDM Inputs
| Column | CDM Table | Description |
|---|---|---|
high | cdm_* | CDM source table |
low | cdm_* | CDM source table |
Parameters
This FeatureType has no configurable parameters.
Output
Column: parkinson_vol
Parkinson volatility estimate
Market Intuition & Trading Rationale
Parkinson volatility uses the high-low range to estimate volatility: sqrt(ln(H/L)² / (4·ln2)). It's approximately 5.2× more efficient than close-to-close volatility — the high-low range captures intra-bar price excursions that close-to-close misses. Parkinson only requires high and low prices (no open/close needed), making it usable when OHLC data is incomplete. The clip ensures the argument to sqrt is non-negative.
Usage Cases
- Bar-level volatility with minimal data: Use when only high/low prices are available. More efficient than close-to-close vol for the same number of observations.
- Intra-bar excursion measurement: Parkinson vol captures the maximum price range within each bar. Compare with realized_vol — when Parkinson >> realized, the bar contained large intra-bar swings that reversed.
- Volatility estimator ensemble: Combine Parkinson with Garman-Klass and realized_vol for a robust multi-estimator vol measure. Each estimator captures different aspects of the price process.
YAML Definition
name: parkinson_vol
description: 'Parkinson volatility estimator: sqrt(1/(4*ln2) * ln(H/L)^2) from bar
OHLC'
category: volatility
version: v0.9.0 (Beta)
dimension: signal
status: Pre-release
required_inputs:
- high
- low
output_column: parkinson_vol
output_description: Parkinson volatility estimate
parameters: {}
formula: sqrt(clip((log((high / low)) * log((high / low))), 0.0))