Hello, I use the "risk free rate" when calculating with the "black-scholes option pricing model". In that formula "Days to expiration"(DTE) is one of the inputs as well as "risk free rate". When looking at current days rates, I can find those 2 below: Treasury constant maturities (Nominal 10): 1-month 2016-10-06,0.26 Treasury constant maturities (Nominal 10): 3-month 2016-10-06,0.33 My question now is that if how to "recalculate" this risk free rate correctly for different DTE. In somehow we need to do some kind of equation using one or both of above risk free rates but I am not sure how to do that correctly? Let us say that we have 3 examples: 11 DTE (How to calculate the accurate risk free rate here?) 38 DTE (How to calculate the accurate risk free rate here?) 48 DTE (How to calculate the accurate risk free rate here?)
You're over-complicating it. In today's interest rate environment the risk free rate is almost 0. I put in 1%.
Is 1% for one entire year? Then for example 0.33% is for 3 months? I may overcomplicate it but I am determined to anyway calculate this exactly. I just want everthing to be as correct as possible.
I merely lookup the appropriate rate that fits the number of DTE using the Fed Funds rates provided. No calculations, no guessing. To calculate would be overly complicating it, to fail to use the data adds error IMHO. Free downloads are avail from Quandl (and probably others) for historic interest rate data for the interesting time frames. I use 4, 13, 26, and 52 week rates which match my option time frames. In your example, I would use the 4week rate for the 1st two, and the 13 week rate for the last one, which I suspect is close enough for government work. partial snip of my Perl code for this: (The hash "INTEREST" contains the Bank Discount Rate for 4, 13, 26, and 52 weeks from January 2, 2002 to present) # indexes are as follows # index dte # 0 4*7 # 1 13*7 # 2 26*7 # 3 52*7 # Convert from % by dividing by 100 below! if ($dte <= 4*7 ) { return($INTEREST{$date}[0]/100); } elsif ($dte <= 13*7) { return($INTEREST{$date}[1]/100); } elsif ($dte <= 26*7) { return($INTEREST{$date}[2]/100); } else { return($INTEREST{$date}[3]/100); }
When I had similar thoughts as you on this question: Should I interpolate the interest rates published by the FED to precisely fit the days of interest; I considered that it may be better (and possibly even more correct) to pick from what is available, rather than creating an "ideal interest rate" to match the DTE! My thinking, is the simplistic approximation is logical, and could be the best fit answer. (Kinda like home mortgages were avail in 30yr and 15yr, but no 27yr) You can always revise in the future if you determine this algorithm is flawed.
the "days" term in black scholes is normalized to years so that the interest rate can be left as annualized. After you figure this out try plugging in different risk free interest rate values. You'll be surprised how little difference it makes between 0.5% and 1.0%
I still wonder a little if I really use the correct interest rates from here: http://www.federalreserve.gov/Releases/h15/data.htm Is there an url to find the "Fed Funds rates" on Quandls website, I am not sure where to find it there and are there historical values back to year 2010? For example if your 4 week interest is: 0.26, the ones on ferederal reserve is about the same/correct?
Yes, I noticed that the difference is extremely small. I just got this thing to eliminate small errors here and there. But perheps it is safe to use the closest interest rate to the DTE for the option.
Just interpolate, man... For your purposes, bill rates are the same as Fed funds and should be perfectly fine to use.