Covered Call Strategies in DeFi — Measuring Performance Using Stablecoins and using Layer 1 Tokens
Wouldn’t it be nice to find a way to generate yield without that yield being paid in s**tcoins, or taking on the credit risk of lending our coins out to different protocols? That’s where option strategies, like the covered call strategy and cash covered/secured puts, comes in. (Check out my previous article on using options as sustainable yield in DeFi). Check out this article if you are curious about yield farming.
What is a Call Option?
Covered Call strategies involve writing (selling) call options. But what is a call option? A call option is an agreement between 2 parties. The buyer pays a premium in order to have the option to purchase the underlying asset (ex. SOL) at a certain price (aka strike price) on (or by) a certain date (aka expiration date). The seller receives the premium and is on the hook to deliver the underlying asset (SOL) at that strike price if the buyer executes the option.
So for example, let’s say SOL is at $200, the strike is $220, the premium is $10 and the expiration is 1 week from now. The buyer would pay the seller $10 hoping that the price of SOL at the expiration is greater than $220 1 week from now. The buyer starts to make a profit if the price of SOL is greater than $230 ($220 strike plus the $10 premium they paid for the option). The seller keeps all $10 if the price of SOL stays below $220 1 week from now. The seller gets yield by giving the buyer this option. The option is more expensive the more volatile the underlying asset is. Therefore, the seller is ‘short’ vol (because the value of being long the option increases as implied volatility increases), and harvesting that volatility premium.
What is a Covered Call Strategy?
A Covered Call strategy involves owning the underlying asset (SOL) and writing (selling) calls on that same underlying. Understanding the performance of a covered call strategy really depends on what you define as your ‘numeraire’, or base currency/token. The performance of this strategy differs depending on what token you base your performance. Let’s go through a stylized example with 3 different scenarios, each looking at an investor with a USDC base, and an SOL base.
Stylized Example Set up
Let’s say I buy 1 SOL right now at $200 (so my cost basis is $200), and I write the same call as above (strike is $220, premium is $10, expiration is 1 week from now).
SOL expires at 200 USDC, so the call expires worthless. SOL has move 0% versus USDC
SOL Base — You collect 10/200 = 0.05 SOL (5% yield) gross of fees
- At expiration, the price of SOL doesn’t move. In this case, I get to keep the 0.05 SOL I received from selling the call option, because the call option expires worthless. So my total position = 1.05 SOL and my P&L = 0.05 SOL.
- Total performance gross of fees = 0.05 / 1 = 5% (0.05 SOL)
USDC Base — You collect $10 USDC gross of fees
- At expiration, the price of SOL doesn’t move. In this case, I have made no money on my purchase of 1 SOL (price is $200 and my basis is $200, so my P&L is $0) but I get to keep the $10 I received from selling the call option, because the call option expires worthless. So my total P&L = $10.
- Total performance gross of fees = 10 / 200 = 5% (10 USDC)
SOL expires at 150 USDC, so the call expires worthless. SOL has moved -25% versus USDC
SOL Base — You collect 10/150 = 0.0667 SOL (6.67% yield) gross of fees
- At expiration the price of SOL falls to $150. In this case, I get to keep the 0.0667 SOL I received from selling the call option, because the call option expires worthless. So my total position = 1.0667 SOL and my P&L = 0.0667 SOL.
- Total performance gross of fees = 0.0667 / 1 = 6.67% (0.0667 SOL)
USDC Base — You collect $10 USDC gross of fees, but lose money on your SOL position
- At expiration the price of SOL falls to $150. In this case, I have lost money on my purchase of 1 SOL (price is $150 and my basis is $200, so my P&L is -$50) but I get to keep the $10 I received from selling the call option, because the call option expires worthless. So my total P&L = -$40. You can see how writing the call here has helped offset the loss from owning the underlying.
- Total performance gross of fees = -40 / 200 = -20% (this is better than the -25% performance you would have if you did not write the call option)
SOL expires at 235 USDC, so the call expires in the money SOL has moved 17.5% versus USDC
SOL Base — You deliver 1 SOL for 220 USDC (lets assume you immediately convert the USDC received back to SOL, so 220/235 = 0.936 SOL) and you collect 10/235 = 0.042 SOL. So your total SOL is 0.978 and total performance gross of fees is -0.02 SOL
- At expiration the price of SOL rises to $235. In this case, I would need to convert some of my SOL to cover the loss on the written covered call if the option is cash settled, or deliver 1 SOL if the option is physically settled and fully collateralized. Let’s say the option is fully collateralized and physically settled. I would have to deliver my 1 SOL and receive $220 (strike price) for that 1 SOL. I could go out and buy 0.936 SOL (220 / 235) and keep the 0.042 SOL (10/235) from writing the call initially, so my total SOL position = 0.978 and my P&L = -0.02 SOL. In this case I would have been better off hodling the 1 SOL and not writing the call.
- Total performance gross of fees = -0.02 / 1 = -2.13%
USDC Base — You collect 10 USDC gross of fees, you deliver your 1 SOL for 220 USDC, so total performance gross of fees is 30 USDC (220–200 + 10), and your total position is worth 230 USDC
- At expiration the price of SOL rises to $235. I have made money on my purchase of 1 SOL (price is $235 and my basis is $200, so my P&L is +$35), but I lost money on the written call option. The call option P&L is -$5 (I have to go deliver my 1 SOL that is worth $235 and sell it to the call buyer at $220, but I received $10 for selling the option so P&L = +$10 + $220–$235 = -$5). So my overall P&L is +$30.
- Total performance gross of fees = 30 / 200 = 15% (this is lower than the 17.5% increase you would have had if you did not write the call option)
Below is a set of graphs on how this works, based in USDC. First you can see what a P&L graph of just owning 1 SOL looks like, it’s just a straight line. The 2nd graph shows the P&L of the written call option. This is a kinked line that is flat with $10 of profit until SOL hits the strike price of $220, then the line starts decreasing. When you add those 2 graphs together, you get the total P&L of the Covered Call Strategy.
You can see how the P&L of the Covered Call strategy performs relative to just buying and hodling the 1 SOL at $200 below. The Covered Call strategy outperforms as long as the price at expiration is less than the Strike plus Premium ($220 + $10 = $230). If the price of SOL at expiration 1 week from now is higher than $230, you would have been better off just hodling the SOL and not writing the call option. But as long as the price of SOL is below that $230 mark 1 week from now, you are better off writing the call option as well as hodling the SOL.
Here is the same view of a covered call, but instead of basing it in USDC, this is based in SOL. You can see that you earn the ‘yield’ plus your 1 SOL as long as the price of SOL is less than the strike price. If the price of SOL ends above the Strike price plus Premium, you will end with less than the 1 SOL you started with. The blue line is just the static position of hodling 1 SOL.
This can be a complicated strategy to run on your own
To be successful in implementing a covered call strategy, you need to make a lot of decisions. What strikes of calls should I sell? How many calls should I sell? What expiration of calls should I sell? What protocol should I use for call writing? Do I need to be fully collateralized? Am I getting good quotes for selling these calls? What happens if the call option actually gets exercised, do I need to actually deliver the underlying, or settle the position in a different token?
All of these are important points to consider when implementing any option strategy. This is why many people don’t even think about these types of things. BUT, there are some new protocols out there that are bringing these types of strategies to the masses! My personal favorite is Friktion. The team has a strong background, they recently launched mainnet, and they already crossed the $100M TVL mark.
If you are interested in these types of strategies, want yield but don’t want to have to make all of the decisions around trading options, and the constant monitoring, you can just deposit into Friktion Volts and let them do the rest!
I hope this helps explain what a covered call is, and why teams like @Friktion are bringing these strategies to the masses. It’s important to know the risks you are taking when participating in different DeFi strategies. Many times it’s not obvious and you really do have to DYOR. But it definitely is possible to make some money out there, and in this constant search for yield, new asset management protocols like Friktion will continue to bring you new strategies to use.
Good luck and happy degening!
About the Author
For full disclosure I mostly use Solana for DeFi, because I don’t have enough assets to justify Ethereum gas fees. I have a little bit in Algorand, Cardano and Polkadot DeFi. I am actively involved in multiple Friktion volts and a contributor in their Discord, and am beta testing Dappio Wonderland 🐰.
I am invested in SOL, ADA, ETH, DOT, ALGO, MIOTA along with plenty of other tokens.
This is not Financial Advice!