Tuesday, December 24, 2013

Sold FXI Feb$36.5 Put and its return on capital

After closing a profitable naked put on FXI last Fridday, I started waiting for a possible rebound of FXI near the low up-trending line. Today the stock price did jump with a bullish MACD divergence. So I sold the Feb$36.5p for $0.65 with a Delta of 0.32 and a covered return around 11%. I plan to get assigned to the stock if it falls below the strike. I'll also set a GTC order to nail down profits earlier than expiration as discussed before.

Created with ProphetCharts®

FXI Annualized Return on Secured Capital

To examine the ROC for the cash secured naked put, I created a ThinkScript to chart the curves relevant to Return on Capital. There are two ROC curves shown in the image below: One for Annualized ROC and another for approximated annualized ROC for a trading period of 30 calendar days (about 20 trading days assumed).

In the chart, the life long annualized ROC of this specific put option changes along with FXI price and time. At the price around 37.9, the following table showed annualized ROC values have not changed that much before.

  • Date:   ROC
  • 12-24: 11%
  • 11-15: 11%
  • 11-01: 12%
  • 09:30: 11%

The lowest sub-graph showed annualized ROC if the trade lasted 30 calendar days. Note this number is usually higher than the life-long aROC if the stock price stays above the short strike. For example, if we buy back the option sold on 11-13 (20 trading days ago and ITM put selling) with a credit of $1.83, the return would be 41%.

The ThinkScript is given before as a reference.

#This script calculates Annual Return On Secured Cash for selling puts
#AROSC = [Profit/(Strike - Credit)] * (365/Days)

# 1. AROSC at entry for option life span
#def SoldCredit = OptionPrice();
# OptionPrice does not give current option price
def SoldCredit = Close();
def Days = GetDaysToExpiration();

def AROSC_Life0 = (SoldCredit / (GetStrike() - SoldCredit)) * (365/Days) * 100;

# Limit AROSC to 100% so that it displays curve better
plot AROSC_Life = if(AROSC_Life0 > 100, 100, AROSC_Life0);

No comments:

Post a Comment