
Start Here
Platform

Tour
Bots 101How it worksLive demo
Tools
Automated tradingOptions backtestingWatchlist scannerPrivate community
Use cases
New investorsStock tradersActive tradersPassive investorsSwing tradersAlgorithmic traders

Templates
By trade type
Stock trading botsOptions trading bots
By strategy type
Bullish options strategiesNeutral options strategiesBearish options strategiesHedging strategies
By style
Active and high frequency botsEvent-based botsTrend trading botsMomentum trading botsStatistic and probability-based botsTechnical analysis botsEarnings strategy bots

Integrations

Pricing
Education

Courses
Overview
By experience
Beginner
What is an options contract?Stock trading vs. options tradingOptions contract specificsCall vs. put options basicsBuying options vs. selling optionsOptions profit and loss diagramsOptions pricing tablesOption moneyness (ITM, OTM, and ATM)Options pricing and the "Greeks"Options expiration and assignmentWhat's our "edge" trading options?Single vs. multi-leg options strategiesSmall account options strategies
Intermediate
Fearless, confident options tradingHistorical volatility vs. implied volatilityPredicting market movesTrade size and capital reservesPortfolio balance and beta weightingHow to choose the best options strategyHow far out to place trades?Strike price anchoring with probabilitiesTips on getting your trades filledAdvanced and contingent orders7 step options trade entry checklist
Advanced
Developing a daily trading routineHow to avoid "Black Swan" eventsAdjusting and hedging option tradesExiting options trades automaticallyOptions strategies we don't adjust (and why)Big picture adjustment strategyWhen to adjust or notAdjusting straddles and stranglesAdjusting credit spreads, iron condors, and calendarsSmarter stop-loss ordersBuilding a diversified options portfolioRolling options trades for duration and premiumOptions expiration week position checklistDealing with stock assignment and dividendsHow to free up trading margin and cash
By subject
Options basics
Why options vs. stocks?What is an options contract?Smart use of leverageOption strike priceOption premiumOption expirationOption contract multiplierProfit and loss diagramsLong call option explainedShort call option explainedLong put option explainedShort put option explainedATM, ITM, and OTM optionsCash vs. margin basicsHigh probability trading definedHow to buy a call optionHow to buy a put optionSingle-leg vs. multi-legWhat is the VIX?Is fundamental analysis dead?
Entering and exiting trades
Game of numbers7 step entry checklistStrong liquidity examplesPicking the next directionScanning for tradesOption pricing table basicsSetting up your trade tabPinning your probability of profitUsing delta for probabilitiesBuy to open vs sell to openBuy to close vs sell to closeMarket, limit, stop loss orders5 types of contingent ordersLimit ordersMarket ordersLimit on close ordersMarket on close ordersAdvanced contingent ordersTaking profits before expirationMechanics of rollingConsider future events
Options expiration
Options expiration explainedWhat is the Options Clearing Corporation (OCC)?Physical vs. cash settlement optionsAmerican vs. European style optionsWeekly options expirationWeekly expiration tags/codesOptions assignment processOptions exercise processTrading timeline (duration)
Bullish options strategies
Bull put spreadBull call spreadLong callShort putBull call backspreadPut broken wing butterflyCall calendar spreadPut diagonal spreadCustom naked putCovered callSynthetic long stock
Neutral options strategies
Short straddleLong straddleIron condorsShort strangleLong strangleIron butterflyUnbalanced iron condors
Bearish options strategies
Bear call spreadBear put spreadLong putShort callBear put backspreadCall broken wing butterflyPut calendar spreadCall diagonal spreadCustom naked callCovered putSynthetic short stock
Portfolio managmeent
No guaranteed tradesDon't do something, sit thereAccount size adjustmentsAvoiding stock market overloadStocks, indexes, & ETFsMonitoring positionsCreating automatic alertsIndividual stock betaPortfolio betaBeta weighting your portfolioUncorrelated industries/sectorsSystematic vs. unsystematic riskEfficient portfolio frontierLimiting undefined risk tradesEconomic calendarConcept of legging
Options pricing and volatility
How to find option price quotesUnderstanding the mathIV vs. IV percentileProbability of profit vs. probability of touchOption probability curveBid-ask spread definedIV expected vs. actual moveThe "Greeks"Fatal pricing errorsInverse ETFsOptions parity
Adjusting trades
#1 adjustment for any tradeWhen to adjust a tradeSingle options trade vs. overall portfolioLeveraging the analyze tabCall spread adjustmentsPut spread adjustmentsShort strangle adjustmentsIron condor adjustmentsShort straddle adjustmentsCalendar spread adjustmentsDebit spread adjustmentsButterfly adjustmentsUsing stop lossesDelta hedgingRolling positionsPairs hedging

Strategies
Long callLong putShort callShort putCovered callCovered putProtective putCollar strategyLEAPSBull call debit spreadBear call credit spreadBull put credit spreadBear put debit spreadLong straddleShort straddleLong strangleShort strangleCall calendar spreadPut calendar spreadIron condorReverse iron condorIron butterflyReverse iron butterflyCall butterflyPut butterflyStrapCall diagonal spreadPut diagonal spreadCall ratio spreadPut ratio spreadCall backspreadPut backspreadLong box spreadShort box spreadReversalStock repair

Topics
OverviewAsset allocationAutomated tradingBehavioral financeBrokersCandlestick patternsChart patternsDividendsEconomic indicatorsEquity investmentsExercise & assignmentFinancial analysisFinancial historyFinancial marketsFinancial modelingFinancial theoriesFundamental analysisFuturesInvestment accountsInvestment taxesInvestor biasesMarket holidaysMarket hoursMarket indexesMarket indicatorsMomentum tradingOptionsOptions pricingOptions settlementPortfolio managementRisk managementStocksStock marketTechnical analysisTechnical indicatorsTrading commissionsTrading platformsTrading psychologyTrend trading
Resources

Workshops

Podcast

Blog
Support

Help Center
Overview
Getting started
What is a bot?Creating a botAutomation typesAutomation editorBot dashboardBot positionsBot logTemplates and cloningKey conceptsSafeguards and limitsPower of botsBest practices
Bot automations
What is an automation?Scanner automationsMonitor automationsEvent automationsEditing automationsReusing automationsCopying automationsOrdering automationsUsing custom inputsBot level inputsAutomation statusesAutomations library
Bot actions
DecisionsOpen positionClose positionNotificationsLoop symbolsLoop positionsBot tagsPosition tags
Bot examples
Genesis 1.0 botGenesis 2.0 botGenesis 3.0 botTrend trading with stocks botPortfolio trend trading botTrend trading with options botMultiple moving averages botTechnical swing trading botTrend and momentum botWeekly credit spread botRecurring iron condors botThe "Honey Badger" botHybrid spreads botHigh IV rank iron condor bot
Decision recipes
Comparing underlying symbol priceEvaluating symbol typeComparing underlying symbol propertiesEvaluating underlying symbol performanceEvaluating underlying symbol standard deviationComparing underlying symbol price to an indicatorComparing multiple underlying symbol indicatorsEvaluating underlying symbol implied volatility rankEvaluating underlying symbol earnings reportingEvaluating underlying symbol price probabilityEvaluating underlying symbol probability within rangeEvaluating bot propertiesEvaluating bot available capital for opportunitiesComparing bot position count to position typeComparing bot position count to underlying symbolEvaluating bot position count to position type and underlying symbolEvaluating bot last position activityEvaluating bot last activity with underlying symbolComparing bot active orders statusComparing bot active orders status with underlying symbolEvaluating bot position availabilityEvaluating bot tagsEvaluating opportunity availabilityEvaluating opportunity return expectationsComparing opportunity attributesComparing opportunity leg attributesComparing opportunity bid-ask spreadEvaluating opportunity probabilitiesEvaluating position performanceComparing profit target to trailing valueComparing position time to expirationComparing position durationEvaluating position underlying symbolComparing position propertiesComparing position leg propertiesEvaluating position typeEvaluating position sideComparing underlying symbol price to position legEvaluating position tagsEvaluating underlying symbol indicator propertiesComparing multiple underlying symbol indicator propertiesEvaluating MACD technical indicatorComparing Bollinger Bands to symbol priceEvaluating stochastic technical indicatorComparing VIX propertiesEvaluating market time of the dayEvaluating days of the weekEvaluating bot switches
Position statement
Activity summaryPosition detailsTrade detailsOpened positionsClosed positionsCanceled positionsOverride positionsExpired positionsPosition historyManually open positionManually close positionImport position
Order pricing
SmartPricingFinal price settingsPosition summaryOrder detailsWorking ordersManual override
Bot templates
Creating new templatesUpdating existing templatesDeleting templatesSharing templatesUpdating shared templatesTemplate best practices
Cloning bots
Cloning existing botsCloning from templateCloning from shared template
Troubleshooting
Using bot logsTesting your botsNot enough capital warningDaily position limit warningTotal position limit warningPricing anomaly warningMissing or invalid input errorDaily symbol limit errorExcessive errors failsafeOverlapping strikes failsafePrice exceeds strike-difference errorOptions expiration protocolDuplicate orders errorOptions approval level errorBot event loopsStock splits and corporate actionsSupported browsersSupported countries
Community forum
Community guidelinesCrafting your introductionSending group messagesSending private messagesAttaching bot templatesReceiving bot templatesAttaching automationsReceiving automationsFollowing tradersPosting publiclyEditing posts and messagesSubscribed discussionsUsing bookmarks
Using backtester
Running a new backtestBacktesting results summaryModifying existing backtestsMy backtestsBacktesting research databaseTop backtestsBacktesting errors
Account settings
My profileTrading accountsConnecting to TDAmeritradeConnecting to TradeStationConnecting to TradierIncompatible accountsPassword managementSession timeoutTwo-step authentication
Technical docs
Infrastructure and securityAutomation structureAutomation behaviorData feedsOrder handlingTrade enforcementsBroker rejection errorsBot limitationsProfit and lossFair value pricingDecision propertiesDecision calculationsParameter selectionCalculating probabilityPlatform indicators

Contact
Send FeedbackReport IssueEmail Us
Option AlphaOption Alpha

LoginFree Trial
BlogResearch Insights5-Year SPY Put Credit Spread Backtest

5-Year SPY Put Credit Spread Backtest

Using our Backtester, we explored the historical performance of SPY put credit spreads to help determine the entry and exit criteria that best fit your trading objectives.
5-Year SPY Put Credit Spread Backtest
Ryan Hysmith
Nov 17, 2021
•
7 min read





Put credit spreads are near the top of every option seller’s list of go-to strategies. The simplicity of the strategy (selling a vertical spread) coupled with the ability to trade directionally make put credit spreads a crowd favorite.

Put credit spreads (bull put spreads) consist of selling a put option and purchasing a put option at a lower price. This creates a risk-defined spread that takes advantage of an increase in price in the underlying asset before expiration.

Quick example: sell a $50 put option and buy a $45 put option to create a $5-wide put credit spread. If this results in a $1.00 credit, the maximum profit potential is $100 ($1.00 credit times 100 contracts) if the stock closes above $50 at expiration, and the maximum loss is $400 if the stock closes below $45 at expiration.

Bull put spread payoff diagram

Using Option Alpha’s Backtester, we explored the historical performance of put credit spreads on SPY to help you determine the entry and exit criteria that best fit your trading objectives.

Setting up the SPY Put Credit Spread Backtest

The core of any systematic trading strategy is a full understanding of its historical performance. While past success or failure may not translate into the future, historical testing is essential to understanding how strategies will perform with all else held equal. Testing can show you how to tweak strategy elements for greater success. 

We tested four put credit spread variations over five years to gain a broad perspective of how adjusting the various strategy components impacts the historical performance.

Each scenario used the same strike selection criteria: 0.30 delta for the short contract and 0.10 delta for the long contract. We compared 5% and 10% capital allocations for each variation, as well as testing combinations of profit targets, stop-losses, and timeframes for position rolling.

Needless to say, we backtested a lot of scenarios! 

The first backtest tested sequentially opening bull put spreads on SPY with: 

  • 30 days to expiration 
  • Hold the position to expiration 
  • Only one position active at any time 
  • No profit targets or stop-loss levels 

The second test had the same basic parameters, including sequential rolling, but added:

  • A 50% profit target
  • A 25% stop loss
  • Position rolling at 15 days to expiration

The third test held everything constant from the second test, but:

  • Increased the stop loss to 50%, allowing a wider trading range before automatic closing 

Finally, the fourth test used the same parameters as the second test but:

  • Increased the profit target to 75%

Each of the four variations was tested with both 5% and 10% position allocations for a $100,000 account for a total of eight backtests studied.

Backtest Results

"Small" decisions like profit targets or DTE exit criteria can seem insignificant compared to what underlying or strategy to trade. However, the results shown below clearly demonstrate that optimizing these less visible trade elements has a tangible impact on overall profitability. 

Backtest One

Backtest One Overview

At the most basic level, allocating 10% of the portfolio to this strategy produced remarkably better results than allocating 5%, netting a return on capital (RoC) of 39% and 16%, respectively. 

It’s logical that a larger position size creates a higher RoC. However, once we standardize by the position size and calculate a return on risk (RoR), we found that the 5% position size had a slightly better return on risk (280% vs 272%). 

Despite the higher RoR, the 5% position size has a lower Sharpe ratio than the 10% allocation (0.56 vs 0.62). As a reminder, the Sharpe ratio is the return divided by standard deviation. So, a lower variability creates a smaller denominator and a greater overall divided result. 

Overall, this was a profitable strategy, with a 93% win rate and no consecutive losses throughout the five-year testing period. The image below shows the full results produced by the Option Alpha Backtester for the 5% allocation strategy.

Backtest stats dashboard screenshot

Backtest Two

Backtest Two Overview

In this and the following test, we focused our attention on the 10% allocation. Introducing the three new trade components (i.e., profit target, stop-loss, contract rolling) had a substantial impact on overall strategy performance. These additions dramatically lowered volatility, shrinking the max loss for the 10% allocation from $12,000 to $2,000.

Given this lower variability, the second test had a notably better Sharpe ratio (0.62 for the first test and 0.77 for the second test).

Both the RoC and RoR are lower for this adjusted strategy. Because of the additional exit criteria, the strategy opened a total of 295 positions compared to 133 in the first test. Since these trades are executed sequentially, more closed positions mean a higher total position count. 

These backtests do not account for brokerage commissions because commissions can vary so much from broker to broker.

Overall, adding these exit criteria (i.e., profit target, stop-loss, rolling contracts) creates a smoother ride, but the trader loses out on some potential upside. In mathematical terms, Backtest Two has a more “normal” distribution than Backtest One’s wider dispersion of trade outcomes, creating a more tail-skewed distribution (i.e., "fat tails" or skew).

Normal distribution image

Backtest Three

Backtest Three Overview

The previous test had a 25% stop-loss. By exiting a position at a 25% loss, the trader lost virtually any opportunity for recovery and potential profit. In this test, we lowered the stop-loss to 50%, creating more downside risk but also more opportunity for positions to recover.

As expected, this strategy adjustment increased the average position downside. However, there was not a corresponding increase in average position profitability.

Interestingly, this means that the original 25% stop-loss parameter was not constraining our chances for profitability, but instead almost exclusively protecting large downside losses. 

Since the stop-loss was not constraining profitability, we adjusted our test to consider whether different position rolling criteria could improve our put credit spread strategy. We found that only one position out of 296 ever reached 15 DTE and was rolled into the next month. 

That led us to test whether increasing the profit target could further optimize the strategy. 

Backtest Four

Backtest Four Overview

Increasing the profit target parameter to 75% improved the RoR by 10% compared to the second backtest examined. However, by increasing the profit target, we also gave open positions more time to fall into a less profitable range. 

For example, if a position was at a 51% profit, Backtest Two would have closed the position. This would be great if the position was later challenged but would leave money on the table if the underlying continued to climb.

The reverse is true for Backtest Four. Not closing at 50% leaves more room for profit but also puts the trader at risk of closing the position for less than a 50% profit. 

While the profit target increase did cause the average loss to increase from $900 to $975, an increased profit factor (1.34 vs 1.26) and Sharpe ratio (0.83 vs 0.77) demonstrated efficiency and further strategy optimization.

Summary table of the 8 backtest results

Better Results with Automation

In the end, Backtest One had the highest profitability and win rate, but traders had to stomach extreme volatility to achieve the return. The strategy won often (93%), but its occasional losses were large. More flexibility in position management could give the trader the best of Backtests One and Four, offering a high win rate along with greater downside protection. 

All these results were generated using Option Alpha’s Backtester, available with the new automated trading platform.

Can automation offer opportunities to improve these results? Using Option Alpha’s autotrading platform, traders can create strategies with greater complexity than demonstrated in these tests and have confidence that the bots will manage positions according to the trader’s instructions.

The "Trendy Short Put Spread" is an example of a bot template that sells put credit spreads similar to the strategies backtested here, but with additional filters and management tools.

Remember the issue with Backtest Four’s 75% profit target? Raising the profit target optimized upside capture but also gave the position more time to fall into less profitability. Option Alpha’s SmartStops can solve the problem.

SmartStops are a more advanced and intuitive version of trailing stops. SmartStops allow a trader to set a “hurdle” that the position must pass (say 50% profit target) before a trailing stop is applied (say 10%). 

For example, we could set our hurdle to the profit target of 50% from Backtest Two, then set a 10% trail. This would allow the possibility of profit above 50% while also limiting the possibility of a large reversal.

The major difference between Backtest One and Backtest Four was the higher profit target. With SmartStops, instead of having to select one extreme, traders have the opportunity for higher profits without the risk of losing the gains.

SmartStops are not static, and traders can combine multiple types into a single automation. For example, a trader could have a SmartStop with a 50% profit target and 10% trailer, a 90% profit target to close positions, and a 25% static stop loss at the same time. Talk about flexibility!

This level of customization eliminates the problems we found throughout our backtests, giving traders comfort in their positions’ profitability while also maintaining a possibility for more upside. 

Unless you sit in front of the screen for the whole trading day, this level of optimization is only possible with bots, informed by you, with no coding required. SmartStops are just one way to optimize these strategies. Explore all the ways you can use bots to automate your trading.

Backtesting
Bull Put Spread
Research
Portfolio Management
SmartStops
You're on the list right?
Want to know when new posts go live? Subscribe to get updates each time we publish new training, research, or case studies. Autotrading is moving fast so don't get left behind.
‍
Thank you! Please click the verification link we just sent to your email address.
Oops! Something went wrong while submitting the form.
We’ll never share your email address
Featured posts
How to Automate a Bollinger Band Strategy
How to Automate a Bollinger Band Strategy
March 31, 2022
We Analyzed 20,000 Options Trades: Here’s What We Learned About Position Swings
We Analyzed 20,000 Options Trades: Here’s What We Learned About Position Swings
March 25, 2022
Backtester Enhancements Unlock Research Superpowers for Options Traders
Backtester Enhancements Unlock Research Superpowers for Options Traders
February 22, 2022
Building an RSI Swing Trading Bot with Credit Spreads
Building an RSI Swing Trading Bot with Credit Spreads
December 13, 2021
3 Smart Ways to Use SmartStops
3 Smart Ways to Use SmartStops
December 8, 2021
Managing Multiple Strategy Types with Monitor Automations
Managing Multiple Strategy Types with Monitor Automations
June 30, 2021
Automated Does Not Mean Unattended
Automated Does Not Mean Unattended
May 19, 2021
Using Bots to Automate Profit Targets and Stop Losses
Using Bots to Automate Profit Targets and Stop Losses
April 19, 2021
Most popular
See All
13 Stock Chart Patterns that You Can’t Afford to Forget
13 Stock Chart Patterns that You Can’t Afford to Forget
6 min read
The Three Best Option Strategies for Earnings
The Three Best Option Strategies for Earnings
8 min read
How Can a Call Option Decline in Value When a Stock Rises?
How Can a Call Option Decline in Value When a Stock Rises?
3 min read
What Your Mother Didn’t Tell You About Trading Iron Condors
What Your Mother Didn’t Tell You About Trading Iron Condors
4 min read
4 Must Know Options Expiration Day Traps to Avoid
4 Must Know Options Expiration Day Traps to Avoid
5 min read
Problems Getting Your Option Order Filled? Try These 3 Quick Adjustments
Problems Getting Your Option Order Filled? Try These 3 Quick Adjustments
7 min read
How to Set Up a Broken-Wing Butterfly Option Strategy
How to Set Up a Broken-Wing Butterfly Option Strategy
3 min read
3 Option Strategies to Use During Low Volatility Markets
3 Option Strategies to Use During Low Volatility Markets
2 min read
Naked Option Selling: The Stupid Myth of "Unlimited Losses"
Naked Option Selling: The Stupid Myth of "Unlimited Losses"
6 min read
Rising Interest Rates: Taper Tantrum or Opportunity?
Rising Interest Rates: Taper Tantrum or Opportunity?
5 min read
Mastering the 4 Different Types of Option Orders
Mastering the 4 Different Types of Option Orders
8 min read
How Can I Exit a Vertical Option Spread Without Getting Creamed?
How Can I Exit a Vertical Option Spread Without Getting Creamed?
4 min read

No-code, fully automated trading for stocks and options.

HomeAboutLegalStatusContact
©2022 Option Alpha. All Rights Reserved. Patent Pending USSN 63/118,547