Skip to content
All library documents

Common Names for Option-Based Equity Hedges

Article Quant Q&A · Author: develarist

Summary

The document asks what to call an equity hedge that uses options closer to the money than a tail-risk hedge, aiming for a more responsive hedge at a higher premium. The replies identify several familiar structures and terms: a protective put, a collar, and delta hedging. A collar combines a long put with a short call against an existing stock position, using the call premium to offset some of the put’s cost while limiting upside above the call strike.

A protective put generally pairs owned shares with a put option, though the hedge can be scaled below full coverage. Delta hedging is presented as a technical term that may need explanation for less technical clients. These terms describe distinct constructions or hedging approaches, rather than a single established label for every near-the-money, frequently adjusted hedge. The discussion offers terminology and basic intuition, not option-selection rules, pricing analysis, or evidence about how much drawdown a particular hedge would reduce.

Key ideas

  • A protective put pairs an equity holding with a purchased put to limit downside exposure.
  • A collar combines a long put and a short call against a stock position.
  • Selling the call can reduce the net premium cost while capping gains above its strike.
  • Protective puts can be scaled to hedge less than the full share position.
  • Delta hedging is a technical term that may require explanation for some clients.

Tags

Full text
# How to compute returns from cumulative returns in Python?


# How to compute returns from cumulative returns in Python?












If X is a $T\times N$ pandas DataFrame of multivariate asset returns, the cumulative returns can be computed in python as

> (1 + X).cumprod() - 1

How can I reverse this operation so that I go backwards from cumulative returns to the original returns matrix X?

## Answer by amdopt (score 2, accepted)

https://quant.stackexchange.com/a/55960

DataFrame `df` with a few random returns that I made up:

```
import pandas as pd
df = pd.DataFrame({'rets': (.5, .5, .4, .3)})
```

Add `cum_rets` column:

```
df['cum_rets'] = (1 + df['rets']).cumprod() - 1
```

Add `inv_cum_rets` colum:

```
df['inv_cum_rets'] = ((1 + df['cum_rets']) / (1 + df['rets'])) - 1
```

If you want it lined up with your original returns, just shift it up 1 row

EDIT:

If you are missing the original returns and want to back into them from `cum_rets` you can use this:

```
df['rets_missing'] = (1 + df['cum_rets']) / (1 + df['cum_rets'].shift(1)) - 1
```

Shown in full with attribution under the source's licence. Licence: CC BY-SA 4.0 (Stack Exchange)

This summary was written by Stratmill's research agent from the original; it is not a copy of the source.