Lean  $LEAN_TAG$
QuantConnect.Securities.Option.OptionStrategies Class Reference

Provides methods for creating popular OptionStrategy instances. These strategies can be directly bought and sold via: QCAlgorithm.Buy(OptionStrategy strategy, int quantity) QCAlgorithm.Sell(OptionStrategy strategy, int quantity) More...

Static Public Member Functions

static OptionStrategy CoveredCall (Symbol canonicalOption, decimal strike, DateTime expiration)
 Creates a Covered Call strategy that consists of selling one call contract and buying 1 lot of the underlying. More...
 
static OptionStrategy ProtectiveCall (Symbol canonicalOption, decimal strike, DateTime expiration)
 Creates a Protective Call strategy that consists of buying one call contract and selling 1 lot of the underlying. More...
 
static OptionStrategy CoveredPut (Symbol canonicalOption, decimal strike, DateTime expiration)
 Creates a Covered Put strategy that consists of selling 1 put contract and 1 lot of the underlying. More...
 
static OptionStrategy ProtectivePut (Symbol canonicalOption, decimal strike, DateTime expiration)
 Creates a Protective Put strategy that consists of buying 1 put contract and 1 lot of the underlying. More...
 
static OptionStrategy ProtectiveCollar (Symbol canonicalOption, decimal callStrike, decimal putStrike, DateTime expiration)
 Creates a Protective Collar strategy that consists of buying 1 put contract and 1 lot of the underlying. More...
 
static OptionStrategy Conversion (Symbol canonicalOption, decimal strike, DateTime expiration)
 Creates a Conversion strategy that consists of buying 1 put contract, 1 lot of the underlying and selling 1 call contract. Put and call must have the same expiration date, underlying (multiplier), and strike price. More...
 
static OptionStrategy ReverseConversion (Symbol canonicalOption, decimal strike, DateTime expiration)
 Creates a Reverse Conversion strategy that consists of buying 1 put contract and 1 lot of the underlying. More...
 
static OptionStrategy NakedCall (Symbol canonicalOption, decimal strike, DateTime expiration)
 Creates a Naked Call strategy that consists of selling 1 call contract. More...
 
static OptionStrategy NakedPut (Symbol canonicalOption, decimal strike, DateTime expiration)
 Creates a Naked Put strategy that consists of selling 1 put contract. More...
 
static OptionStrategy BearCallSpread (Symbol canonicalOption, decimal leg1Strike, decimal leg2Strike, DateTime expiration)
 Method creates new Bear Call Spread strategy, that consists of two calls with the same expiration but different strikes. The strike price of the short call is below the strike of the long call. This is a credit spread. More...
 
static OptionStrategy BearPutSpread (Symbol canonicalOption, decimal leg1Strike, decimal leg2Strike, DateTime expiration)
 Method creates new Bear Put Spread strategy, that consists of two puts with the same expiration but different strikes. The strike price of the short put is below the strike of the long put. This is a debit spread. More...
 
static OptionStrategy BullCallSpread (Symbol canonicalOption, decimal leg1Strike, decimal leg2Strike, DateTime expiration)
 Method creates new Bull Call Spread strategy, that consists of two calls with the same expiration but different strikes. The strike price of the short call is higher than the strike of the long call. This is a debit spread. More...
 
static OptionStrategy BullPutSpread (Symbol canonicalOption, decimal leg1Strike, decimal leg2Strike, DateTime expiration)
 Method creates new Bull Put Spread strategy, that consists of two puts with the same expiration but different strikes. The strike price of the short put is above the strike of the long put. This is a credit spread. More...
 
static OptionStrategy Straddle (Symbol canonicalOption, decimal strike, DateTime expiration)
 Method creates new Straddle strategy, that is a combination of buying a call and buying a put, both with the same strike price and expiration. More...
 
static OptionStrategy ShortStraddle (Symbol canonicalOption, decimal strike, DateTime expiration)
 Creates a Short Straddle strategy that consists of selling a call and a put, both with the same strike price and expiration. More...
 
static OptionStrategy Strangle (Symbol canonicalOption, decimal callLegStrike, decimal putLegStrike, DateTime expiration)
 Method creates new Strangle strategy, that buying a call option and a put option with the same expiration date The strike price of the call is above the strike of the put. More...
 
static OptionStrategy ShortStrangle (Symbol canonicalOption, decimal callLegStrike, decimal putLegStrike, DateTime expiration)
 Creates a Short Strangle strategy that consists of selling a call and a put, with the same expiration date and the call strike being above the put strike. More...
 
static OptionStrategy CallButterfly (Symbol canonicalOption, decimal higherStrike, decimal middleStrike, decimal lowerStrike, DateTime expiration)
 Method creates new Call Butterfly strategy, that consists of two short calls at a middle strike, and one long call each at a lower and upper strike. The upper and lower strikes must both be equidistant from the middle strike. More...
 
static OptionStrategy ButterflyCall (Symbol canonicalOption, decimal higherStrike, decimal middleStrike, decimal lowerStrike, DateTime expiration)
 Creates a new Butterfly Call strategy that consists of two short calls at a middle strike, and one long call each at a lower and upper strike. The upper and lower strikes must both be equidistant from the middle strike. More...
 
static OptionStrategy ShortButterflyCall (Symbol canonicalOption, decimal higherStrike, decimal middleStrike, decimal lowerStrike, DateTime expiration)
 Creates a new Butterfly Call strategy that consists of two long calls at a middle strike, and one short call each at a lower and upper strike. The upper and lower strikes must both be equidistant from the middle strike. More...
 
static OptionStrategy PutButterfly (Symbol canonicalOption, decimal higherStrike, decimal middleStrike, decimal lowerStrike, DateTime expiration)
 Method creates new Put Butterfly strategy, that consists of two short puts at a middle strike, and one long put each at a lower and upper strike. The upper and lower strikes must both be equidistant from the middle strike. More...
 
static OptionStrategy ButterflyPut (Symbol canonicalOption, decimal higherStrike, decimal middleStrike, decimal lowerStrike, DateTime expiration)
 Creates a new Butterfly Put strategy that consists of two short puts at a middle strike, and one long put each at a lower and upper strike. The upper and lower strikes must both be equidistant from the middle strike. More...
 
static OptionStrategy ShortButterflyPut (Symbol canonicalOption, decimal higherStrike, decimal middleStrike, decimal lowerStrike, DateTime expiration)
 Creates a new Butterfly Put strategy that consists of two long puts at a middle strike, and one short put each at a lower and upper strike. The upper and lower strikes must both be equidistant from the middle strike. More...
 
static OptionStrategy CallCalendarSpread (Symbol canonicalOption, decimal strike, DateTime nearExpiration, DateTime farExpiration)
 Creates new Call Calendar Spread strategy which consists of a short and a long call with the same strikes but with the long call having a further expiration date. More...
 
static OptionStrategy ShortCallCalendarSpread (Symbol canonicalOption, decimal strike, DateTime nearExpiration, DateTime farExpiration)
 Creates new Short Call Calendar Spread strategy which consists of a short and a long call with the same strikes but with the short call having a further expiration date. More...
 
static OptionStrategy PutCalendarSpread (Symbol canonicalOption, decimal strike, DateTime nearExpiration, DateTime farExpiration)
 Creates new Put Calendar Spread strategy which consists of a short and a long put with the same strikes but with the long put having a further expiration date. More...
 
static OptionStrategy ShortPutCalendarSpread (Symbol canonicalOption, decimal strike, DateTime nearExpiration, DateTime farExpiration)
 Creates new Short Put Calendar Spread strategy which consists of a short and a long put with the same strikes but with the short put having a further expiration date. More...
 
static OptionStrategy IronButterfly (Symbol canonicalOption, decimal otmPutStrike, decimal atmStrike, decimal otmCallStrike, DateTime expiration)
 Creates a new Iron Butterfly strategy which consists of a short ATM call, a short ATM put, a long OTM call, and a long OTM put. all with the same expiration date and with increasing strikes prices in the mentioned order. More...
 
static OptionStrategy ShortIronButterfly (Symbol canonicalOption, decimal otmPutStrike, decimal atmStrike, decimal otmCallStrike, DateTime expiration)
 Creates a new Short Iron Butterfly strategy which consists of a long ATM call, a long ATM put, a short OTM call, and a short OTM put, all with the same expiration date and with increasing strikes prices in the mentioned order. More...
 
static OptionStrategy IronCondor (Symbol canonicalOption, decimal longPutStrike, decimal shortPutStrike, decimal shortCallStrike, decimal longCallStrike, DateTime expiration)
 Creates a new Iron Condor strategy which consists of a long put, a short put, a short call and a long option, all with the same expiration date and with increasing strikes prices in the mentioned order. More...
 
static OptionStrategy ShortIronCondor (Symbol canonicalOption, decimal shortPutStrike, decimal longPutStrike, decimal longCallStrike, decimal shortCallStrike, DateTime expiration)
 Creates a new Short Iron Condor strategy which consists of a short put, a long put, a long call and a short call, all with the same expiration date and with increasing strikes prices in the mentioned order. More...
 
static OptionStrategy BoxSpread (Symbol canonicalOption, decimal higherStrike, decimal lowerStrike, DateTime expiration)
 Creates a Box Spread strategy which consists of a long call and a short put (buy side) of the same strikes, coupled with a short call and a long put (sell side) of higher but same strikes. All options have the same expiry. More...
 
static OptionStrategy ShortBoxSpread (Symbol canonicalOption, decimal higherStrike, decimal lowerStrike, DateTime expiration)
 Creates a Short Box Spread strategy which consists of a long call and a short put (buy side) of the same strikes, coupled with a short call and a long put (sell side) of lower but same strikes. All options have the same expiry. More...
 
static OptionStrategy JellyRoll (Symbol canonicalOption, decimal strike, DateTime nearExpiration, DateTime farExpiration)
 Creates new Jelly Roll strategy which combines a long call calendar spread and a short put calendar spread with the same strikes and the same pair of expiration dates. More...
 
static OptionStrategy ShortJellyRoll (Symbol canonicalOption, decimal strike, DateTime nearExpiration, DateTime farExpiration)
 Creates new Short Jelly Roll strategy which combines a long call calendar spread and a short put calendar spread with the same strikes and the same pair of expiration dates. More...
 
static OptionStrategy BearCallLadder (Symbol canonicalOption, decimal lowerStrike, decimal middleStrike, decimal higherStrike, DateTime expiration)
 Method creates new Bear Call Ladder strategy, that consists of three calls with the same expiration but different strikes. The strike price of the short call is below the strikes of the two long calls. More...
 
static OptionStrategy BearPutLadder (Symbol canonicalOption, decimal higherStrike, decimal middleStrike, decimal lowerStrike, DateTime expiration)
 Method creates new Bear Put Ladder strategy, that consists of three puts with the same expiration but different strikes. The strike price of the long put is above the strikes of the two short puts. More...
 
static OptionStrategy BullCallLadder (Symbol canonicalOption, decimal lowerStrike, decimal middleStrike, decimal higherStrike, DateTime expiration)
 Method creates new Bull Call Ladder strategy, that consists of three calls with the same expiration but different strikes. The strike price of the long call is below the strikes of the two short calls. More...
 
static OptionStrategy BullPutLadder (Symbol canonicalOption, decimal higherStrike, decimal middleStrike, decimal lowerStrike, DateTime expiration)
 Method creates new Bull Put Ladder strategy, that consists of three puts with the same expiration but different strikes. The strike price of the short put is above the strikes of the two long puts. More...
 
static OptionStrategy CallBackspread (Symbol canonicalOption, decimal lowerStrike, decimal higherStrike, DateTime expiration)
 Method creates new Long Call Backspread strategy, that consists of two calls with the same expiration but different strikes. It involves selling the lower strike call, while buying twice the number of the higher strike call. More...
 
static OptionStrategy PutBackspread (Symbol canonicalOption, decimal higherStrike, decimal lowerStrike, DateTime expiration)
 Method creates new Long Put Backspread strategy, that consists of two puts with the same expiration but different strikes. It involves selling the higher strike put, while buying twice the number of the lower strike put. More...
 
static OptionStrategy ShortCallBackspread (Symbol canonicalOption, decimal lowerStrike, decimal higherStrike, DateTime expiration)
 Method creates new Short Call Backspread strategy, that consists of two calls with the same expiration but different strikes. It involves buying the lower strike call, while shorting twice the number of the higher strike call. More...
 
static OptionStrategy ShortPutBackspread (Symbol canonicalOption, decimal higherStrike, decimal lowerStrike, DateTime expiration)
 Method creates new Short Put Backspread strategy, that consists of two puts with the same expiration but different strikes. It involves buying the higher strike put, while selling twice the number of the lower strike put. More...
 

Detailed Description

Provides methods for creating popular OptionStrategy instances. These strategies can be directly bought and sold via: QCAlgorithm.Buy(OptionStrategy strategy, int quantity) QCAlgorithm.Sell(OptionStrategy strategy, int quantity)

See also OptionStrategyDefinitions

Definition at line 31 of file OptionStrategies.cs.

Member Function Documentation

◆ CoveredCall()

static OptionStrategy QuantConnect.Securities.Option.OptionStrategies.CoveredCall ( Symbol  canonicalOption,
decimal  strike,
DateTime  expiration 
)
static

Creates a Covered Call strategy that consists of selling one call contract and buying 1 lot of the underlying.

Parameters
canonicalOptionOption symbol
strikeThe strike price for the call option contract
expirationThe expiration date for the call option contract
Returns
Option strategy specification

Definition at line 45 of file OptionStrategies.cs.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ ProtectiveCall()

static OptionStrategy QuantConnect.Securities.Option.OptionStrategies.ProtectiveCall ( Symbol  canonicalOption,
decimal  strike,
DateTime  expiration 
)
static

Creates a Protective Call strategy that consists of buying one call contract and selling 1 lot of the underlying.

Parameters
canonicalOptionOption symbol
strikeThe strike price for the call option contract
expirationThe expiration date for the call option contract
Returns
Option strategy specification

Definition at line 82 of file OptionStrategies.cs.

Here is the call graph for this function:

◆ CoveredPut()

static OptionStrategy QuantConnect.Securities.Option.OptionStrategies.CoveredPut ( Symbol  canonicalOption,
decimal  strike,
DateTime  expiration 
)
static

Creates a Covered Put strategy that consists of selling 1 put contract and 1 lot of the underlying.

Parameters
canonicalOptionOption symbol
strikeThe strike price for the put option contract
expirationThe expiration date for the put option contract
Returns
Option strategy specification

Definition at line 95 of file OptionStrategies.cs.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ ProtectivePut()

static OptionStrategy QuantConnect.Securities.Option.OptionStrategies.ProtectivePut ( Symbol  canonicalOption,
decimal  strike,
DateTime  expiration 
)
static

Creates a Protective Put strategy that consists of buying 1 put contract and 1 lot of the underlying.

Parameters
canonicalOptionOption symbol
strikeThe strike price for the put option contract
expirationThe expiration date for the put option contract
Returns
Option strategy specification

Definition at line 132 of file OptionStrategies.cs.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ ProtectiveCollar()

static OptionStrategy QuantConnect.Securities.Option.OptionStrategies.ProtectiveCollar ( Symbol  canonicalOption,
decimal  callStrike,
decimal  putStrike,
DateTime  expiration 
)
static

Creates a Protective Collar strategy that consists of buying 1 put contract and 1 lot of the underlying.

Parameters
canonicalOptionOption symbol
callStrikeThe strike price for the call option contract
putStrikeThe strike price for the put option contract
expirationOption expiration date
Returns
Option strategy specification

Definition at line 146 of file OptionStrategies.cs.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ Conversion()

static OptionStrategy QuantConnect.Securities.Option.OptionStrategies.Conversion ( Symbol  canonicalOption,
decimal  strike,
DateTime  expiration 
)
static

Creates a Conversion strategy that consists of buying 1 put contract, 1 lot of the underlying and selling 1 call contract. Put and call must have the same expiration date, underlying (multiplier), and strike price.

Parameters
canonicalOptionOption symbol
strikeThe strike price for the call and put option contract
expirationOption expiration date
Returns
Option strategy specification

Definition at line 175 of file OptionStrategies.cs.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ ReverseConversion()

static OptionStrategy QuantConnect.Securities.Option.OptionStrategies.ReverseConversion ( Symbol  canonicalOption,
decimal  strike,
DateTime  expiration 
)
static

Creates a Reverse Conversion strategy that consists of buying 1 put contract and 1 lot of the underlying.

Parameters
canonicalOptionOption symbol
strikeThe strike price for the put option contract
expirationOption expiration date
Returns
Option strategy specification

Definition at line 189 of file OptionStrategies.cs.

Here is the call graph for this function:

◆ NakedCall()

static OptionStrategy QuantConnect.Securities.Option.OptionStrategies.NakedCall ( Symbol  canonicalOption,
decimal  strike,
DateTime  expiration 
)
static

Creates a Naked Call strategy that consists of selling 1 call contract.

Parameters
canonicalOptionOption symbol
strikeThe strike price for the call option contract
expirationThe expiration date for the call option contract
Returns
Option strategy specification

Definition at line 202 of file OptionStrategies.cs.

◆ NakedPut()

static OptionStrategy QuantConnect.Securities.Option.OptionStrategies.NakedPut ( Symbol  canonicalOption,
decimal  strike,
DateTime  expiration 
)
static

Creates a Naked Put strategy that consists of selling 1 put contract.

Parameters
canonicalOptionOption symbol
strikeThe strike price for the put option contract
expirationThe expiration date for the put option contract
Returns
Option strategy specification

Definition at line 229 of file OptionStrategies.cs.

◆ BearCallSpread()

static OptionStrategy QuantConnect.Securities.Option.OptionStrategies.BearCallSpread ( Symbol  canonicalOption,
decimal  leg1Strike,
decimal  leg2Strike,
DateTime  expiration 
)
static

Method creates new Bear Call Spread strategy, that consists of two calls with the same expiration but different strikes. The strike price of the short call is below the strike of the long call. This is a credit spread.

Parameters
canonicalOptionOption symbol
leg1StrikeThe strike price of the short call
leg2StrikeThe strike price of the long call
expirationOption expiration date
Returns
Option strategy specification

Definition at line 258 of file OptionStrategies.cs.

◆ BearPutSpread()

static OptionStrategy QuantConnect.Securities.Option.OptionStrategies.BearPutSpread ( Symbol  canonicalOption,
decimal  leg1Strike,
decimal  leg2Strike,
DateTime  expiration 
)
static

Method creates new Bear Put Spread strategy, that consists of two puts with the same expiration but different strikes. The strike price of the short put is below the strike of the long put. This is a debit spread.

Parameters
canonicalOptionOption symbol
leg1StrikeThe strike price of the long put
leg2StrikeThe strike price of the short put
expirationOption expiration date
Returns
Option strategy specification

Definition at line 301 of file OptionStrategies.cs.

Here is the caller graph for this function:

◆ BullCallSpread()

static OptionStrategy QuantConnect.Securities.Option.OptionStrategies.BullCallSpread ( Symbol  canonicalOption,
decimal  leg1Strike,
decimal  leg2Strike,
DateTime  expiration 
)
static

Method creates new Bull Call Spread strategy, that consists of two calls with the same expiration but different strikes. The strike price of the short call is higher than the strike of the long call. This is a debit spread.

Parameters
canonicalOptionOption symbol
leg1StrikeThe strike price of the long call
leg2StrikeThe strike price of the short call
expirationOption expiration date
Returns
Option strategy specification

Definition at line 345 of file OptionStrategies.cs.

Here is the caller graph for this function:

◆ BullPutSpread()

static OptionStrategy QuantConnect.Securities.Option.OptionStrategies.BullPutSpread ( Symbol  canonicalOption,
decimal  leg1Strike,
decimal  leg2Strike,
DateTime  expiration 
)
static

Method creates new Bull Put Spread strategy, that consists of two puts with the same expiration but different strikes. The strike price of the short put is above the strike of the long put. This is a credit spread.

Parameters
canonicalOptionOption symbol
leg1StrikeThe strike price of the short put
leg2StrikeThe strike price of the long put
expirationOption expiration date
Returns
Option strategy specification

Definition at line 388 of file OptionStrategies.cs.

◆ Straddle()

static OptionStrategy QuantConnect.Securities.Option.OptionStrategies.Straddle ( Symbol  canonicalOption,
decimal  strike,
DateTime  expiration 
)
static

Method creates new Straddle strategy, that is a combination of buying a call and buying a put, both with the same strike price and expiration.

Parameters
canonicalOptionOption symbol
strikeThe strike price of the both legs
expirationOption expiration date
Returns
Option strategy specification

Definition at line 430 of file OptionStrategies.cs.

Here is the caller graph for this function:

◆ ShortStraddle()

static OptionStrategy QuantConnect.Securities.Option.OptionStrategies.ShortStraddle ( Symbol  canonicalOption,
decimal  strike,
DateTime  expiration 
)
static

Creates a Short Straddle strategy that consists of selling a call and a put, both with the same strike price and expiration.

Parameters
canonicalOptionOption symbol
strikeThe strike price for the option contracts
expirationThe expiration date for the option contracts
Returns
Option strategy specification

Definition at line 463 of file OptionStrategies.cs.

Here is the call graph for this function:

◆ Strangle()

static OptionStrategy QuantConnect.Securities.Option.OptionStrategies.Strangle ( Symbol  canonicalOption,
decimal  callLegStrike,
decimal  putLegStrike,
DateTime  expiration 
)
static

Method creates new Strangle strategy, that buying a call option and a put option with the same expiration date The strike price of the call is above the strike of the put.

Parameters
canonicalOptionOption symbol
callLegStrikeThe strike price of the long call
putLegStrikeThe strike price of the long put
expirationOption expiration date
Returns
Option strategy specification

Definition at line 478 of file OptionStrategies.cs.

Here is the caller graph for this function:

◆ ShortStrangle()

static OptionStrategy QuantConnect.Securities.Option.OptionStrategies.ShortStrangle ( Symbol  canonicalOption,
decimal  callLegStrike,
decimal  putLegStrike,
DateTime  expiration 
)
static

Creates a Short Strangle strategy that consists of selling a call and a put, with the same expiration date and the call strike being above the put strike.

Parameters
canonicalOptionOption symbol
callLegStrikeThe strike price of the short call
putLegStrikeThe strike price of the short put
expirationOption expiration date
Returns
Option strategy specification

Definition at line 522 of file OptionStrategies.cs.

Here is the call graph for this function:

◆ CallButterfly()

static OptionStrategy QuantConnect.Securities.Option.OptionStrategies.CallButterfly ( Symbol  canonicalOption,
decimal  higherStrike,
decimal  middleStrike,
decimal  lowerStrike,
DateTime  expiration 
)
static

Method creates new Call Butterfly strategy, that consists of two short calls at a middle strike, and one long call each at a lower and upper strike. The upper and lower strikes must both be equidistant from the middle strike.

Parameters
canonicalOptionOption symbol
higherStrikeThe upper strike price of the long call
middleStrikeThe middle strike price of the two short calls
lowerStrikeThe lower strike price of the long call
expirationOption expiration date
Returns
Option strategy specification

Definition at line 538 of file OptionStrategies.cs.

Here is the caller graph for this function:

◆ ButterflyCall()

static OptionStrategy QuantConnect.Securities.Option.OptionStrategies.ButterflyCall ( Symbol  canonicalOption,
decimal  higherStrike,
decimal  middleStrike,
decimal  lowerStrike,
DateTime  expiration 
)
static

Creates a new Butterfly Call strategy that consists of two short calls at a middle strike, and one long call each at a lower and upper strike. The upper and lower strikes must both be equidistant from the middle strike.

Parameters
canonicalOptionOption symbol
higherStrikeThe upper strike price of the long call
middleStrikeThe middle strike price of the two short calls
lowerStrikeThe lower strike price of the long call
expirationOption expiration date
Returns
Option strategy specification

Alias for CallButterfly

Definition at line 592 of file OptionStrategies.cs.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ ShortButterflyCall()

static OptionStrategy QuantConnect.Securities.Option.OptionStrategies.ShortButterflyCall ( Symbol  canonicalOption,
decimal  higherStrike,
decimal  middleStrike,
decimal  lowerStrike,
DateTime  expiration 
)
static

Creates a new Butterfly Call strategy that consists of two long calls at a middle strike, and one short call each at a lower and upper strike. The upper and lower strikes must both be equidistant from the middle strike.

Parameters
canonicalOptionOption symbol
higherStrikeThe upper strike price of the short call
middleStrikeThe middle strike price of the two long calls
lowerStrikeThe lower strike price of the short call
expirationOption expiration date
Returns
Option strategy specification

Definition at line 609 of file OptionStrategies.cs.

Here is the call graph for this function:

◆ PutButterfly()

static OptionStrategy QuantConnect.Securities.Option.OptionStrategies.PutButterfly ( Symbol  canonicalOption,
decimal  higherStrike,
decimal  middleStrike,
decimal  lowerStrike,
DateTime  expiration 
)
static

Method creates new Put Butterfly strategy, that consists of two short puts at a middle strike, and one long put each at a lower and upper strike. The upper and lower strikes must both be equidistant from the middle strike.

Parameters
canonicalOptionOption symbol
higherStrikeThe upper strike price of the long put
middleStrikeThe middle strike price of the two short puts
lowerStrikeThe lower strike price of the long put
expirationOption expiration date
Returns
Option strategy specification

Definition at line 627 of file OptionStrategies.cs.

Here is the caller graph for this function:

◆ ButterflyPut()

static OptionStrategy QuantConnect.Securities.Option.OptionStrategies.ButterflyPut ( Symbol  canonicalOption,
decimal  higherStrike,
decimal  middleStrike,
decimal  lowerStrike,
DateTime  expiration 
)
static

Creates a new Butterfly Put strategy that consists of two short puts at a middle strike, and one long put each at a lower and upper strike. The upper and lower strikes must both be equidistant from the middle strike.

Parameters
canonicalOptionOption symbol
higherStrikeThe upper strike price of the long put
middleStrikeThe middle strike price of the two short puts
lowerStrikeThe lower strike price of the long put
expirationOption expiration date
Returns
Option strategy specification

Alias for PutButterfly

Definition at line 684 of file OptionStrategies.cs.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ ShortButterflyPut()

static OptionStrategy QuantConnect.Securities.Option.OptionStrategies.ShortButterflyPut ( Symbol  canonicalOption,
decimal  higherStrike,
decimal  middleStrike,
decimal  lowerStrike,
DateTime  expiration 
)
static

Creates a new Butterfly Put strategy that consists of two long puts at a middle strike, and one short put each at a lower and upper strike. The upper and lower strikes must both be equidistant from the middle strike.

Parameters
canonicalOptionOption symbol
higherStrikeThe upper strike price of the short put
middleStrikeThe middle strike price of the two long puts
lowerStrikeThe lower strike price of the short put
expirationOption expiration date
Returns
Option strategy specification

Definition at line 701 of file OptionStrategies.cs.

Here is the call graph for this function:

◆ CallCalendarSpread()

static OptionStrategy QuantConnect.Securities.Option.OptionStrategies.CallCalendarSpread ( Symbol  canonicalOption,
decimal  strike,
DateTime  nearExpiration,
DateTime  farExpiration 
)
static

Creates new Call Calendar Spread strategy which consists of a short and a long call with the same strikes but with the long call having a further expiration date.

Parameters
canonicalOptionOption symbol
strikeThe strike price of the both legs
nearExpirationNear expiration date for the short option
farExpirationFar expiration date for the long option
Returns
Option strategy specification

Definition at line 718 of file OptionStrategies.cs.

Here is the caller graph for this function:

◆ ShortCallCalendarSpread()

static OptionStrategy QuantConnect.Securities.Option.OptionStrategies.ShortCallCalendarSpread ( Symbol  canonicalOption,
decimal  strike,
DateTime  nearExpiration,
DateTime  farExpiration 
)
static

Creates new Short Call Calendar Spread strategy which consists of a short and a long call with the same strikes but with the short call having a further expiration date.

Parameters
canonicalOptionOption symbol
strikeThe strike price of the both legs
nearExpirationNear expiration date for the long option
farExpirationFar expiration date for the short option
Returns
Option strategy specification

Definition at line 758 of file OptionStrategies.cs.

Here is the call graph for this function:

◆ PutCalendarSpread()

static OptionStrategy QuantConnect.Securities.Option.OptionStrategies.PutCalendarSpread ( Symbol  canonicalOption,
decimal  strike,
DateTime  nearExpiration,
DateTime  farExpiration 
)
static

Creates new Put Calendar Spread strategy which consists of a short and a long put with the same strikes but with the long put having a further expiration date.

Parameters
canonicalOptionOption symbol
strikeThe strike price of the both legs
nearExpirationNear expiration date for the short option
farExpirationFar expiration date for the long option
Returns
Option strategy specification

Definition at line 774 of file OptionStrategies.cs.

Here is the caller graph for this function:

◆ ShortPutCalendarSpread()

static OptionStrategy QuantConnect.Securities.Option.OptionStrategies.ShortPutCalendarSpread ( Symbol  canonicalOption,
decimal  strike,
DateTime  nearExpiration,
DateTime  farExpiration 
)
static

Creates new Short Put Calendar Spread strategy which consists of a short and a long put with the same strikes but with the short put having a further expiration date.

Parameters
canonicalOptionOption symbol
strikeThe strike price of the both legs
nearExpirationNear expiration date for the long option
farExpirationFar expiration date for the short option
Returns
Option strategy specification

Definition at line 814 of file OptionStrategies.cs.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ IronButterfly()

static OptionStrategy QuantConnect.Securities.Option.OptionStrategies.IronButterfly ( Symbol  canonicalOption,
decimal  otmPutStrike,
decimal  atmStrike,
decimal  otmCallStrike,
DateTime  expiration 
)
static

Creates a new Iron Butterfly strategy which consists of a short ATM call, a short ATM put, a long OTM call, and a long OTM put. all with the same expiration date and with increasing strikes prices in the mentioned order.

Parameters
canonicalOptionOption symbol
otmCallStrikeOTM call option strike price
atmStrike2 ATM options strike price
otmPutStrikeOTM put option strike price
expirationExpiration date for all the options
Returns
Option strategy specification

Definition at line 831 of file OptionStrategies.cs.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ ShortIronButterfly()

static OptionStrategy QuantConnect.Securities.Option.OptionStrategies.ShortIronButterfly ( Symbol  canonicalOption,
decimal  otmPutStrike,
decimal  atmStrike,
decimal  otmCallStrike,
DateTime  expiration 
)
static

Creates a new Short Iron Butterfly strategy which consists of a long ATM call, a long ATM put, a short OTM call, and a short OTM put, all with the same expiration date and with increasing strikes prices in the mentioned order.

It is the inverse of an IronButterfly.

Parameters
canonicalOptionOption symbol
otmCallStrikeOTM call option strike price
atmStrike2 ATM options strike price
otmPutStrikeOTM put option strike price
expirationExpiration date for all the options
Returns
Option strategy specification

Definition at line 855 of file OptionStrategies.cs.

Here is the call graph for this function:

◆ IronCondor()

static OptionStrategy QuantConnect.Securities.Option.OptionStrategies.IronCondor ( Symbol  canonicalOption,
decimal  longPutStrike,
decimal  shortPutStrike,
decimal  shortCallStrike,
decimal  longCallStrike,
DateTime  expiration 
)
static

Creates a new Iron Condor strategy which consists of a long put, a short put, a short call and a long option, all with the same expiration date and with increasing strikes prices in the mentioned order.

Parameters
canonicalOptionOption symbol
longPutStrikeLong put option strike price
shortPutStrikeShort put option strike price
shortCallStrikeShort call option strike price
longCallStrikeLong call option strike price
expirationExpiration date for all the options
Returns
Option strategy specification

Definition at line 873 of file OptionStrategies.cs.

Here is the caller graph for this function:

◆ ShortIronCondor()

static OptionStrategy QuantConnect.Securities.Option.OptionStrategies.ShortIronCondor ( Symbol  canonicalOption,
decimal  shortPutStrike,
decimal  longPutStrike,
decimal  longCallStrike,
decimal  shortCallStrike,
DateTime  expiration 
)
static

Creates a new Short Iron Condor strategy which consists of a short put, a long put, a long call and a short call, all with the same expiration date and with increasing strikes prices in the mentioned order.

Parameters
canonicalOptionOption symbol
shortPutStrikeShort put option strike price
longPutStrikeLong put option strike price
longCallStrikeLong call option strike price
shortCallStrikeShort call option strike price
expirationExpiration date for all the options
Returns
Option strategy specification

Definition at line 923 of file OptionStrategies.cs.

Here is the call graph for this function:

◆ BoxSpread()

static OptionStrategy QuantConnect.Securities.Option.OptionStrategies.BoxSpread ( Symbol  canonicalOption,
decimal  higherStrike,
decimal  lowerStrike,
DateTime  expiration 
)
static

Creates a Box Spread strategy which consists of a long call and a short put (buy side) of the same strikes, coupled with a short call and a long put (sell side) of higher but same strikes. All options have the same expiry.

Parameters
canonicalOptionOption symbol
higherStrikeThe strike price of the sell side legs
lowerStrikeThe strike price of the buy side legs
expirationOption expiration date
Returns
Option strategy specification

Definition at line 939 of file OptionStrategies.cs.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ ShortBoxSpread()

static OptionStrategy QuantConnect.Securities.Option.OptionStrategies.ShortBoxSpread ( Symbol  canonicalOption,
decimal  higherStrike,
decimal  lowerStrike,
DateTime  expiration 
)
static

Creates a Short Box Spread strategy which consists of a long call and a short put (buy side) of the same strikes, coupled with a short call and a long put (sell side) of lower but same strikes. All options have the same expiry.

Parameters
canonicalOptionOption symbol
higherStrikeThe strike price of the buy side
lowerStrikeThe strike price of the sell side
expirationOption expiration date
Returns
Option strategy specification

Definition at line 968 of file OptionStrategies.cs.

Here is the call graph for this function:

◆ JellyRoll()

static OptionStrategy QuantConnect.Securities.Option.OptionStrategies.JellyRoll ( Symbol  canonicalOption,
decimal  strike,
DateTime  nearExpiration,
DateTime  farExpiration 
)
static

Creates new Jelly Roll strategy which combines a long call calendar spread and a short put calendar spread with the same strikes and the same pair of expiration dates.

Parameters
canonicalOptionOption symbol
strikeThe strike price of the all legs
nearExpirationNear expiration date for the short call and the long put
farExpirationFar expiration date for the long call and the short put
Returns
Option strategy specification

Definition at line 983 of file OptionStrategies.cs.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ ShortJellyRoll()

static OptionStrategy QuantConnect.Securities.Option.OptionStrategies.ShortJellyRoll ( Symbol  canonicalOption,
decimal  strike,
DateTime  nearExpiration,
DateTime  farExpiration 
)
static

Creates new Short Jelly Roll strategy which combines a long call calendar spread and a short put calendar spread with the same strikes and the same pair of expiration dates.

Parameters
canonicalOptionOption symbol
strikeThe strike price of the all legs
nearExpirationNear expiration date for the short call and the long put
farExpirationFar expiration date for the long call and the short put
Returns
Option strategy specification

Definition at line 1006 of file OptionStrategies.cs.

Here is the call graph for this function:

◆ BearCallLadder()

static OptionStrategy QuantConnect.Securities.Option.OptionStrategies.BearCallLadder ( Symbol  canonicalOption,
decimal  lowerStrike,
decimal  middleStrike,
decimal  higherStrike,
DateTime  expiration 
)
static

Method creates new Bear Call Ladder strategy, that consists of three calls with the same expiration but different strikes. The strike price of the short call is below the strikes of the two long calls.

Parameters
canonicalOptionOption symbol
lowerStrikeThe strike price of the short call
middleStrikeThe middle strike price of one long call
higherStrikeThe strike price of one long call with higher strike price
expirationOption expiration date
Returns
Option strategy specification

Definition at line 1021 of file OptionStrategies.cs.

Here is the caller graph for this function:

◆ BearPutLadder()

static OptionStrategy QuantConnect.Securities.Option.OptionStrategies.BearPutLadder ( Symbol  canonicalOption,
decimal  higherStrike,
decimal  middleStrike,
decimal  lowerStrike,
DateTime  expiration 
)
static

Method creates new Bear Put Ladder strategy, that consists of three puts with the same expiration but different strikes. The strike price of the long put is above the strikes of the two short puts.

Parameters
canonicalOptionOption symbol
higherStrikeThe strike price of the long put
middleStrikeThe middle strike price of one short put
lowerStrikeThe strike price of one short put with lower strike price
expirationOption expiration date
Returns
Option strategy specification

Definition at line 1071 of file OptionStrategies.cs.

Here is the caller graph for this function:

◆ BullCallLadder()

static OptionStrategy QuantConnect.Securities.Option.OptionStrategies.BullCallLadder ( Symbol  canonicalOption,
decimal  lowerStrike,
decimal  middleStrike,
decimal  higherStrike,
DateTime  expiration 
)
static

Method creates new Bull Call Ladder strategy, that consists of three calls with the same expiration but different strikes. The strike price of the long call is below the strikes of the two short calls.

Parameters
canonicalOptionOption symbol
lowerStrikeThe strike price of the long call
middleStrikeThe middle strike price of one short call
higherStrikeThe strike price of one short call with higher strike price
expirationOption expiration date
Returns
Option strategy specification

Definition at line 1122 of file OptionStrategies.cs.

Here is the call graph for this function:

◆ BullPutLadder()

static OptionStrategy QuantConnect.Securities.Option.OptionStrategies.BullPutLadder ( Symbol  canonicalOption,
decimal  higherStrike,
decimal  middleStrike,
decimal  lowerStrike,
DateTime  expiration 
)
static

Method creates new Bull Put Ladder strategy, that consists of three puts with the same expiration but different strikes. The strike price of the short put is above the strikes of the two long puts.

Parameters
canonicalOptionOption symbol
higherStrikeThe strike price of the short put
middleStrikeThe middle strike price of one long put
lowerStrikeThe strike price of one long put with lower strike price
expirationOption expiration date
Returns
Option strategy specification

Definition at line 1143 of file OptionStrategies.cs.

Here is the call graph for this function:

◆ CallBackspread()

static OptionStrategy QuantConnect.Securities.Option.OptionStrategies.CallBackspread ( Symbol  canonicalOption,
decimal  lowerStrike,
decimal  higherStrike,
DateTime  expiration 
)
static

Method creates new Long Call Backspread strategy, that consists of two calls with the same expiration but different strikes. It involves selling the lower strike call, while buying twice the number of the higher strike call.

Parameters
canonicalOptionOption symbol
lowerStrikeThe strike price of the short call
higherStrikeThe strike price of the long call
expirationOption expiration date
Returns
Option strategy specification

Definition at line 1163 of file OptionStrategies.cs.

Here is the caller graph for this function:

◆ PutBackspread()

static OptionStrategy QuantConnect.Securities.Option.OptionStrategies.PutBackspread ( Symbol  canonicalOption,
decimal  higherStrike,
decimal  lowerStrike,
DateTime  expiration 
)
static

Method creates new Long Put Backspread strategy, that consists of two puts with the same expiration but different strikes. It involves selling the higher strike put, while buying twice the number of the lower strike put.

Parameters
canonicalOptionOption symbol
higherStrikeThe strike price of the short put
lowerStrikeThe strike price of the long put
expirationOption expiration date
Returns
Option strategy specification

Definition at line 1206 of file OptionStrategies.cs.

Here is the caller graph for this function:

◆ ShortCallBackspread()

static OptionStrategy QuantConnect.Securities.Option.OptionStrategies.ShortCallBackspread ( Symbol  canonicalOption,
decimal  lowerStrike,
decimal  higherStrike,
DateTime  expiration 
)
static

Method creates new Short Call Backspread strategy, that consists of two calls with the same expiration but different strikes. It involves buying the lower strike call, while shorting twice the number of the higher strike call.

Parameters
canonicalOptionOption symbol
lowerStrikeThe strike price of the long call
higherStrikeThe strike price of the short call
expirationOption expiration date

Definition at line 1248 of file OptionStrategies.cs.

Here is the call graph for this function:

◆ ShortPutBackspread()

static OptionStrategy QuantConnect.Securities.Option.OptionStrategies.ShortPutBackspread ( Symbol  canonicalOption,
decimal  higherStrike,
decimal  lowerStrike,
DateTime  expiration 
)
static

Method creates new Short Put Backspread strategy, that consists of two puts with the same expiration but different strikes. It involves buying the higher strike put, while selling twice the number of the lower strike put.

Parameters
canonicalOptionOption symbol
higherStrikeThe strike price of the long put
lowerStrikeThe strike price of the short put
expirationOption expiration date
Returns
Option strategy specification

Definition at line 1267 of file OptionStrategies.cs.

Here is the call graph for this function:

The documentation for this class was generated from the following file: