# Methodology

Contents

## Applying Backtest Results

All published options backtests, unless otherwise noted, are performed using a single contract for each trade and target a max margin utilization of 100% (5x leverage @ 20% margin requirement; Reg-T Margining).

The minimum amount of money needed to execute a published strategy, based on the parameters above and without running out of capital or margin, is listed in the starting capital section of each backtest.

Consider a trader that wants to run a 10-delta 7 DTE SPX short put strat using the s1 signal at 2x leverage on a $1,000,000 portfolio. How should they size their positions?

- Step 1: Identify the starting capital.
- Navigate to the starting capital section of the study and review the starting capital table for the specific backtest: $217,400.

- Step 2: Adjust for desired leverage target.
- Navigate to the strategy details section of the study and review the max margin utilization target used: 100% | 5x leverage.
- Multiply the starting capital by ( max leverage target of study / desired max leverage target ): $217,400 * 5 / 2 = $543,500.

- Step 3: Adjust for your portfolio.
- Divide the starting portfolio value by the value in step two: $1,000,000 / $543,500 = 1.84 contracts per position.

In this example, the trader would size the trade at two contracts per position which is reasonably close to their goal of 2x max leverage.

What if the starting portfolio is $100,000?

The math says 0.184 contracts, which isn’t practical since a fraction of a contract can’t be traded, and trading 1 contract would far exceed the max leverage target of 2x. However, SPY options are 1/10th the size of SPX and require 1/10th the starting capital. The trader would size the trade at two SPY contracts per position to achieve their goal.

## Public Backtests

### Backtest Start Date

Studies seek to use the broadest set of data available at the time of publishing. Options data at spintwig.com goes as far back as Jan 3 2007. Client studies may utilize different start dates per client request.

Strategies that involve weekly or 0 DTE options on major ETFs or indices may use the following start dates:

#### ETFs: SPY, QQQ, IWM, DIA

On June 4 2010 CBOE released Friday-expiring weekly options.

On August 30 2016, CBOE released Wednesday-expiring weekly options (see SEC release 34-78686).

On February 16 2018, CBOE released Monday-expiring weekly options (see SEC release 34-82733).

On November 14 2022 and November 16 2022, CBOE released Tuesday-expiring and Thursday-expiring weekly options (SPY and QQQ only; IWM and DIA were not in scope).

#### Indices: SPX

On October 28 2005, CBOE released Friday-expiring weekly options on SPX.

On February 23 2016, CBOE released Wednesday-expiring weekly options on SPX (see CBOE Regulatory Circular RG16-024).

On August 15 2016, CBOE released Monday-expiring weekly options on SPX (see CBOE Regulatory Circular RG-16-119).

On September 19 2022 and September 28 2022, CBOE released Tuesday-expiring and Thursday-expiring weekly options on SPX, respectively (see CBOE reference C2022091501).

### Backtest End Date

Studies have a defined end date, generally consistent with the end of the most recent calendar month. Positions that have an exit date beyond the backtest end date are excluded. This ensures that positions aren’t inadvertently “closed early” and potentially generate results inconsistent with the defined strategy.

### Days Till Expiration

Some studies look at ultra-short-duration option strategies while others explore longer durations. The nuances and range for each approach are summarized below.

#### 0 DTE Strategies

Between 0 and 3, closest to 0.

The range is up to 3 days from expiration for two reasons: to allow opening positions on Friday that have a Monday expiration and to allow more opportunities for occurrences of strategies focused in the 10-40 delta range. As expiration nears, it becomes increasingly difficult to open positions in this range.

This visual from Options Playbook does a great job illustrating the concept. Notice how at 1 DTE delta jumps from .50 to .10 with a single dollar change in the underlying. Compare this to the 60 DTE scenario where the change in delta for a $1 change in underlying is much smaller. By allowing positions to be opened as far out as 3 DTE, delta sensitivity to $1 differences in strikes becomes muted.

#### 7 DTE Strategies

Between 3 and 11, closest to 7.

The range is 4 days either side of 7 to ensure a position can be opened each trading day while remaining true to the duration target. For example, opening a position Wednesday will have either a 2 DTE horizon (next Friday) or a 9-DTE horizon (the Friday after next). In this scenario the 9-DTE position would be selected.

#### 45 DTE Strategies

Between 28 and 62, closest to 45.

The range is 17 days either side of 45 to account for quadruple witching. As the end of each calendar quarter approaches, namely during the last 7-10 days of Mar, Jun, Sep and Dec, the expiration dates of option contracts widen significantly.

#### 730 DTE Strategies (LEAPS)

Between 550 and 910, closest to 730.

The range is 180 days either side of 730 to account for underlying that have LEAPS expirations in 6-month increments.

### Delta Selection

Strike targets are selected at 2.5, 5, 10, 16, 30 and 50 delta. This corresponds with with common “breakpoints” on the normal-distribution probability curve. For example, 30D is half a standard deviation, 16D is one standard deviation, etc.

### Calculating Returns

Returns are calculated by recording the profit or loss as positions are closed, if any, each day.

PnL of open positions is not captured.

### Monthly and Annual Returns

To identify the monthly and/or annual returns for an option strategy, the respective daily returns are summed.

### Graphing Underlying and Option Curves

The underlying / benchmark position derives its monthly performance values from Portfolio Visualizer. Portfolio returns are calculated in a compound fashion using this monthly data.

Option strategies derive monthly performance values by summing the respective daily returns. Portfolio returns are calculated in a compound fashion using the monthly values.

### Margin Collateral

Portfolio capital is held in cash and earns daily interest at the prevailing **3-month treasury bill **rate each day throughout the backtest. The Daily Treasury Yield Curve Rates at the US Department of The Treasury website lists the daily interest rates used in the backtest.

Days for which there are no interest rates available, such as weekends and bank holidays, utilize the last published interest rate. For example, Saturday January 6 2007 and Sunday January 7 2007 do not have interest rates published. The backtest utilizes the rates published on Friday January 5 2007 for both these days.

### Calculating Margin Utilization

A running total of the PnL is measured each day and tracks the portfolio performance. Meanwhile, a running total of the notional exposure is measured each trading day and tracks the daily margin utilization.

Margin utilization is estimated as 20% of notional. For example, if there is $100,000 of notional exposure the margin requirement would be $20,000.

### Determining Starting Capital

#### Short Option Strategies

Backtests are run using an arbitrary amount of starting capital to generate a *max margin utilization* value. Starting capital is then adjusted in $1000 increments such that max margin utilization is between 80% and 100%, closest to 100%, of the *max margin utilization* target. Unless otherwise specified, the max margin utilization target for all short-option backtests is 100%.

To compare the option strategy against the benchmark, an equal starting capital is allocated to a hypothetical buy-and-hold total-return portfolio.

#### Long Option Strategies

Backtests are run using an arbitrary amount of starting capital to generate a *max drawdown* value. Starting capital is then adjusted in $1000 increments such that max drawdown is between 80% and 100%, closest to 100%, of the *max drawdown* target. Unless otherwise specified, the max drawdown target for all long-option backtests is -100%.

To compare the option strategy against the benchmark, an equal starting capital is allocated to a hypothetical buy-and-hold total-return portfolio.

### Margin

Margin requirements and margin calls are assumed to always be satisfied and never occur, respectively.

In practice the option strategy may experience varied performance, particularly during high-volatility periods, than what’s depicted. Margin requirements may prevent the portfolio from sustaining the number of concurrent open positions the strategy demands.

### Moneyness

Positions that become ITM during the life of the trade are assumed to never experience early assignment.

In practice early assignment may impact performance positively (assigned then position experiences greater losses) or negatively (assigned then position recovers).

### Commission

The following commission structure is used in all backtests:

#### Options on Equities

- 1 USD, all in, per contract:
- to open
- to close early
- expired ITM

- 0 USD, all in, per contract expired OTM / worthless

#### Options on Indices

- 1.32 USD, all in, per contract:
- to open
- to close early
- expired ITM

- 0 USD, all in, per contract expired OTM / worthless

#### Equities

- 0 USD, all in, per trade:
- to open
- to close

While these costs are competitive at the time of writing, most trade commissions ranged between 4.95 USD to 19.99 USD in the late 1990s through early 2010s.

In practice strategy performance may be lower than what’s depicted due to elevated trading fees in the earlier years of the backtest.

### Slippage

#### Options

Slippage is factored into all trade execution prices accordingly:

- Buy: Bid + (Ask – Bid) * slippage%
- Sell: Ask – (Ask – Bid) * slippage%

The following table outlines the slippage values used and example calculations:

- A slippage % of .50 = midpoint
- A slippage % of 1.00 = market maker’s price

#### Equities

In datasets where bid / ask values are present, midpoint price is selected and may result in fractions of a cent in certain calculations.

In datasets where bid / ask values are NOT present, the depicted price is selected.

### Inflation

All values depicted are in nominal dollars. In other words, values shown are not adjusted for inflation.

In practice this may influence calculations that are anchored to a particular value in time such as the last “peak” when calculating drawdown days.

### Nature of Data

All data is empirical (real, actual data from historical events). There is no use of calculated, theoretical or otherwise modeled pricing.

### Binning of Overnight Positions (Equity Backtests)

For positions that are held overnight, performance is associated with the day in which the position is *closed*.

A position binned as “Monday overnight” is one that was opened at Friday’s closing bell and closed at Monday’s opening bell.

A position binned as “Monday price return” is one that was opened at Friday’s closing bell and closed at Monday’s closing bell.

A position binned as “Monday intraday” is one that was opened at Monday’s opening bell and closed at Monday’s closing bell.

The same mechanics hold true for positions opened mid week. For example, a position binned as “Wednesday price return” is one that was opened at Tuesday’s closing bell and closed at Wednesday’s closing bell.

### Fractional Shares (Equity Backtests)

Capital is 100% allocated at all times. In scenarios where a full share is not able to be purchased, a fractional share is purchased.

### Reinvesting Profits (Equity Backtests)

Backtests with a publication date in 2023 and beyond:

- All strategies are calculated with returns compounded daily.

Backtests with a publication date prior to 2023:

- The “All” strategies are calculated with returns compounded
*daily*. - The “daily” strategies such as “Monday” or “Thursday” are calculated with returns compounded
*monthly*.

### Calculating Strategy Statistics

All strategy performance statistics are derived directly from the trade logs. Below is a breakdown on how each stat is calculated and the associated formula behind the calculation, where applicable.

#### Starting Capital

This specifies the minimum starting portfolio size needed to successfully execute the trading strategy while remaining compliant with max margin utilization and max drawdown requirements at all times.

#### Average Margin Utilization

Margin utilization ebbs and flows throughout the backtest. This averages the daily margin utilization values.

`AVERAGE(daily margin utilization)`

#### Max Margin Utilization

This is the highest recorded daily margin utilization value throughout the backtest.

`MAX( daily margin utilization )`

#### Max Margin Utilization Date

This is the date in which the highest margin utilization occurs. The formula is an index-match statement to lookup and return the date value associated with the max margin utilization value.

`INDEX( all trade dates, MATCH( max daily margin utilization ) )`

#### Premium Capture

This is the percent of premium captured throughout the strategy.

`SUM( premium received ) - SUM( options bought back ) - SUM ( losses from immediately selling assigned shares )`

#### Win Rate

Trades that were closed at management targets (profit, DTE) as winners but became unprofitable due to commissions are still considered winning trades. This phenomenon is typically observed when managing 2.5D and 5D trades early.

`( count of trades with positive PnL before commissions > 0 ) / count of all trades`

#### Annual Volatility

The standard deviation of all the *monthly* returns are calculated then multiplied the by the square root of 12.

`STDEV.S( monthly return values ) * SQRT( 12 )`

#### Average Monthly Return

Identify the average monthly returns.

`AVERAGE( monthly return values )`

#### Best Monthly Return

Identify the largest value among the monthly returns.

`MAX( monthly return values )`

#### Worst Monthly Return

Identify the smallest value among the monthly returns.

`MIN( monthly return values )`

#### Max Drawdown

This measures the greatest peak-to-trough decline, described as a percentage of the portfolio’s end-of-day value (open positions / unrealized PnL is not factored into end-of-day PnL value).

`MIN( daily drawdown values )`

#### Drawdown Days

This measures, using nominal (non-inflation adjusted) dollars, the duration in days from the max drawdown trough to previous high.

If portfolio never returns to the high before the max drawdown, “No Recover” is displayed.

`ABS( Date of Max Drawdown - Date of Recovery ) `

#### Average Trade Duration

This measures the average number of days each position remains open, rounded to the nearest whole day.

`ROUND ( AVERAGE ( trade duration values ) , 0 )`

#### Average Trade Delta

This measures the average delta at order entry of all positions opened, rounded to the nearest delta.

`ROUND ( AVERAGE ( trade delta values ) , 0 )`

#### Compound Annual Growth Rate

This measures the compounded annual rate of return, sometimes referred to as the geometric return. The following formula is used:

#### Sharpe Ratio

This measures the risk-adjusted return. Since margin collateral is held in the 3-month treasury bill, the generally accepted definition of the risk-free rate, the following simplified formula is used:

`strategy CAGR / strategy volatility`

#### Profit Spent on Commission

The following formula is used to calculate the percent of profits spent on commissions:

If a strategy is depicted as having percent greater than 100, this means the strategy is unprofitable due to commissions but would have been profitable if trades were commission free throughout the duration of the backtest.

If a strategy is depicted as “unprofitable” this means the strategy lost money even if trades were commission free throughout the duration of the backtest.

#### Capital Efficiency

This measures the relative performance of a signal-based strategy vs the performance of a benchmark strategy.

Performance refers to the PnL of the option positions only. Portfolio effects of interest earned on margin collateral and commissions charged by the broker are excluded.

Unless otherwise stated, the benchmark is a market-agnostic daily-entry strategy.

`( ( strat return / benchmark return ) / ( strat occurrences / benchmark occurrences ) -1 ) * 100`

- strat return = strat income / strat starting capital
- benchmark return = benchmark income / benchmark starting capital

#### Total PnL

How much money is in the portfolio after the study? This stat answers that question and depicts it as a %

`( portfolio end value / portfolio start value ) - 1`

### Version History

- v1.0.2 | 2023-02-01 | updated reinvesting profits (equities) section
- v1.0.1 | 2023-01-12 | updated backtest start date to reflect introduction of Tues/Thurs-expiring weekly options on SPY, QQQ and SPX
- v1.0.0 | 2022-12-19 | initial version

## Private Custom Backtests

This section lists the default configurations for private custom backtests. The following overrides can be requested:

- margin requirements for short option positions
- margin collateral yield
- option commission to open, close or expire ITM (global setting; each event type is not individually configurable)

NOTE: changing margin collateral yield to a value other than the risk-fee rate, defined as 3mo US treasuries, may result in Sharpe ratio values that are not accurate

### Assumptions

- Margin requirements are always satisfied
- Margin calls never occur
- Margin requirement for short CALL and PUT positions is 20% of notional
- Margin requirement for short STRADDLE and STRANGLE positions is 20% of the larger strike
- Margin requirement for short VERTICAL SPREAD positions is the difference between the strikes
- Margin requirement for short CALENDAR SPREAD positions is 20% of the short option (short option expires after the long option)
- Margin requirement for long CALENDAR SPREAD positions is the net cost of the spread (short option expires before the long option)
- Early assignment never occurs
- There is ample liquidity at all times

### Methodology

- Prices are in USD
- Prices are nominal (not adjusted for inflation)
- Margin collateral is invested in 3mo US treasuries and earns interest daily
- Assignment PnL is calculated by closing the ITM position at 3:46pm ET the day of expiration / exit signal triggers
- Commission to open, close early, or expire ITM is 1.32 USD, all in, per contract for options on indices
- Commission to open, close early, or expire ITM is 1.00 USD, all in, per contract for options on equities
- Commission to expire worthless is 0.00 USD, all in, per contract for all option underlying types
- Commission to open or close non-option positions, if applicable, is 0.00 USD
- Slippage is calculated according to the slippage table
- Starting capital for short option backtests is adjusted in $1000 increments such that max margin utilization is between 80-100%, closest to 100%, of max margin utilization target defined in the “Strategy Details” section of the scope-of-work document.
- Starting capital for long option backtests is adjusted in $1000 increments such that max drawdown is between 80-100%, closest to 100%, of max drawdown target defined in the “Strategy Details” section of the scope-of-work document.
- Positions that have an expiration date beyond the backtest end date are excluded

### Key Performance Indicators (KPIs) Measured

#### Short Option Strategies

*Portfolio Stats*

Max Concurrent Positions/Lots

Max Concurrent Positions/Lots Date

Average Concurrent Positions/Lots

Max Notional Exposure

Max Notional Exposure Date

Max Margin Use/Leverage Factor

Max Margin/Leverage Date

Average Daily Margin/Leverage

Reg-T Min Starting $

*Win Rate Stats*

Number of Legs

Number of Trades

Win Rate

Average Win

Average Loss

Trades Held Till Exp

% held till exp

% managed

Exp & Win

*PnL Stats*

Strategy Income/(Expense)

Interest Income/(Expense)

Commissions

Total PnL

Profit Spent on Commission

Total PnL %

Premium Capture (only on single-leg strats)

*Performance Stats*

CAGR (Geometric Return)

Annual Volatility

Sharpe Ratio

Average Monthly PnL

Average Monthly PnL %

Average PnL Per Trade

Average PnL Per Day

Average PnL Per Trade %

Average PnL Per Day %

Average PnL Per Day Per Position

Average Trade Duration

*Risk Management*

Max Drawdown %

Max Drawdown Date

Best Monthly Return

Worst Monthly Return

Best Trade PnL

Worst Trade PnL

Best Trade PnL $

Worst Trade PnL $

#### Long Option Strategies

*Portfolio Stats*

Max Concurrent Positions/Lots

Max Concurrent Positions/Lots Date

Average Concurrent Positions/Lots

*Win Rate Stats*

Number of Legs

Number of Trades

Win Rate

Average Win

Average Loss

Trades Held Till Exp

% held till exp

% managed

Exp & Win

*PnL Stats*

Strategy Income/(Expense)

Interest Income/(Expense)

Less Commissions

Total PnL

Profit Spent on Commission

Total PnL %

*Performance Stats*

CAGR (Geometric Return)

Annual Volatility

Sharpe Ratio

Average Monthly PnL

Average Monthly PnL %

Average PnL Per Trade

Average PnL Per Day

Average PnL Per Trade %

Average PnL Per Day %

Average PnL Per Day Per Position

Average Trade Duration

*Risk Management*

Max Drawdown %

Max Drawdown Date

Best Monthly Return

Worst Monthly Return

Best Trade PnL

Worst Trade PnL

Best Trade PnL $

Worst Trade PnL $

#### Long Equity Strategies

*Win Rate Stats*

Number of Trades

Win Rate

*PnL Stats*

Strategy Income/(Expense)

Interest Income/(Expense)

Less Commissions

Total PnL

Profit Spent on Commission

Total PnL %

*Performance Stats*

CAGR (Geometric Return)

Annual Volatility

Sharpe Ratio

Average Monthly PnL

Average Monthly PnL %

Average PnL Per Trade

Average PnL Per Day

Average PnL Per Trade %

Average PnL Per Day %

Average Trade Duration

*Risk Management*

Max Drawdown %

Max Drawdown Date

Best Monthly Return

Worst Monthly Return

Best Trade PnL

Worst Trade PnL

Best Trade PnL $

Worst Trade PnL $

### Version History

- v1.0.1 | 2023-01-16 | fixed typo in methodology expiration date bullet (from “exit date” to “expiration date”)
- v1.0.0 | 2022-12-19 | initial version