Library: | finance |
See also: | american bs1 callbull european optstart |
Quantlet: | arbitrage | |
Description: | calculates an arbitrage table considering puts and calls with the same strike price |
Usage: | summ = arbitrage() or summ = arbitrage(S,r,tau,lop,hip,C,P) | |
Input: | ||
S | scalar, strike price | |
r | scalar, forward interest rate between banks | |
tau | scalar, days to maturity | |
lop | scalar, lowest basis price | |
hip | scalar, highest basis price | |
C | n x 1 vector, call prices | |
P | n x 1 vector, put prices | |
Output: | ||
summ | a text string. The arbitrage table has following eight columns: "Call_price" - vector of call prices "Put_price" - vector of put prices "Basis" - vector of basic prices "Stock_flow" - amount we pay/get for buying/selling a stock "Call_flow" - amount we pay/get for buying/selling a call option "Put_flow" - amount we pay/get for buying/selling a put option "Bank_flow" - investment to/loan from a bank "Arbitrage" - vector of arbitrage gains/losses |
library("finance") arbitrage()
Opens an interactive menu where you are asked to enter the details of your arbitrage table and the call and put prices.
library("finance") S = 587.3 r = 0.0302 tau = 17 lop = 575 hip = 625 C = 3:5 P = 13|15|15.9 arbitrage(S,r,tau,lop,hip,C,P)
Contents of summ [ 1,] "Stock price: 587.30" [ 2,] "Interest rate: 0.0302" [ 3,] "Days to maturity: 17.00" [ 4,] " " [ 5,] "Call_price Put_price Basis Stock_flow Call_flow Put_flow Bank_flow Arbitrage " [ 6,] "------------------------------------------------------------------------------------" [ 7,] " 3.00 13.00 575.00 587.30 -3.00 13.00 -574.18 23.12" [ 8,] " 4.00 15.00 600.00 587.30 -4.00 15.00 -599.15 -0.85" [ 9,] " 5.00 15.90 625.00 587.30 -5.00 15.90 -624.11 -25.91" [10,] " "