Page 9 of 18
American options -- Reference prices
Posted: January 25th, 2016, 7:07 pm
by Cuchulainn
QuoteOriginally posted by: outrunI think we need to question your negative attitude. You say q=r is easy, .. So can you give something like 10 digits for the American put? 4 digits is uselessI've already explained why r = q is easier.No, I can't produce 12 digits accuracy using binomial nor FDM as you know for the 6.299579 discussion. You should really not be asking that question because it is not the issue any more.I'm happy if you can produce 0.164996349 a million times faster that binomial. AS reference, it take 70 seconds using Tian and NT = 15000 to get this result. If you can I'll buy you a Guinness and Shushi and we can throw FDM and Binomial in the bin.
American options -- Reference prices
Posted: January 25th, 2016, 7:50 pm
by Cuchulainn
QuoteOriginally posted by: outrunQuoteOriginally posted by: CuchulainnQuoteOriginally posted by: outrunI think we need to question your negative attitude. You say q=r is easy, .. So can you give something like 10 digits for the American put? 4 digits is uselessI've already explained why r = q is easier.No, I can't produce 12 digits accuracy using binomial nor FDM as you know for the 6.299579 discussion. You should really not be asking that question because it is not the issue any more.I'm happy if you can produce 0.164996349 a million times faster that binomial. AS reference, it take 70 seconds using Tian and NT = 15000 to get this result. If you can I'll buy you a Guinness and Shushi and we can throw FDM and Binomial in the bin.70 seconds? That's not really useful for production systems.. And what about K=120?You should try to sell the FDM to the Central bang of Nigeria (r=20%), .. scam them back!That number can be improved

I build up a whole lattice in memory... so I am making it easy to improve it.I am expecting r = .2 in the test. ==When I take out the (reusable) lattice construction, then it takes [2,5] seconds without any optimization. What's [2,5] / 1000000 interval arithmetic?
American options -- Reference prices
Posted: January 26th, 2016, 7:20 am
by spursfan
We seem to have three cases nowS 100 S 100 S 100 K 100 K 100 K 100 r 0.20 r 0.10 r 0.02 q 0.01 q 0.01 q 0.01 Tyr 1.00 Tyr 1.00 Tyr 1 vol 0.01 vol 0.01 vol 0.01 nStep Tian Trunc Tian Extrap Tian Trunc Tian Extrap Tian Trunc Tian Extrap 512 0.00353560 0.01017334 0.01804628 0.02018684 0.16448443 0.164867931024 0.00685447 0.00997536 0.01911656 0.02042206 0.16467618 0.164908632048 0.00841491 0.00965605 0.01976931 0.02038056 0.16479240 0.164939054096 0.00903548 0.00964411 0.02007493 0.02040241 0.16486573 0.164959368192 0.00933980 0.00967428 0.02023867 0.02041358 0.16491255 0.1649736816384 0.00950704 0.00966648 0.02032613 0.02041776 0.16494311 0.1649834132768 0.00958676 0.00967544 0.02037194 0.02042158 0.16496326 0.1649901565536 0.00963110 0.00967652 0.02039676 0.02042433 0.16497670 0.16499473131072 0.00965381 0.00967739 0.02041055 0.02042617 0.16498572 0.16499791262144 0.00966560 0.00968478 0.02041836 0.02042749 0.16499182 0.16499993524288 0.00967519 0.00967880 0.02042293 0.02042849 0.16499587 0.165001851048576 0.00967700 0.00967905 0.02042571 0.02042905 0.16499886 0.165002052097152 0.00967802 0.00967921 0.02042738 0.02042958 0.16500045 0.165003104194304 0.00967862 0.00967969 0.02042848 0.02042993 0.16500178 0.165003588388608 0.00967915 na 0.02042920 na 0.16500268 na
American options -- Reference prices
Posted: January 26th, 2016, 8:34 am
by Cuchulainn
QuoteOriginally posted by: spursfanWe seem to have three cases nowS 100 S 100 S 100 K 100 K 100 K 100 r 0.20 r 0.10 r 0.02 q 0.01 q 0.01 q 0.01 Tyr 1.00 Tyr 1.00 Tyr 1 vol 0.01 vol 0.01 vol 0.01 nStep Tian Trunc Tian Extrap Tian Trunc Tian Extrap Tian Trunc Tian Extrap 512 0.00353560 0.01017334 0.01804628 0.02018684 0.16448443 0.164867931024 0.00685447 0.00997536 0.01911656 0.02042206 0.16467618 0.164908632048 0.00841491 0.00965605 0.01976931 0.02038056 0.16479240 0.164939054096 0.00903548 0.00964411 0.02007493 0.02040241 0.16486573 0.164959368192 0.00933980 0.00967428 0.02023867 0.02041358 0.16491255 0.1649736816384 0.00950704 0.00966648 0.02032613 0.02041776 0.16494311 0.1649834132768 0.00958676 0.00967544 0.02037194 0.02042158 0.16496326 0.1649901565536 0.00963110 0.00967652 0.02039676 0.02042433 0.16497670 0.16499473131072 0.00965381 0.00967739 0.02041055 0.02042617 0.16498572 0.16499791262144 0.00966560 0.00968478 0.02041836 0.02042749 0.16499182 0.16499993524288 0.00967519 0.00967880 0.02042293 0.02042849 0.16499587 0.165001851048576 0.00967700 0.00967905 0.02042571 0.02042905 0.16499886 0.165002052097152 0.00967802 0.00967921 0.02042738 0.02042958 0.16500045 0.165003104194304 0.00967862 0.00967969 0.02042848 0.02042993 0.16500178 0.165003588388608 0.00967915 na 0.02042920 na 0.16500268 naNice. Thanks, spursfan. Shall we take these as the benchmark dataset?// I have done r = 0.02 and r = 0.1 and my Binomial and FDM agree with them// I'll get back with r = .2.
American options -- Reference prices
Posted: January 26th, 2016, 9:21 am
by Cuchulainn
A follow-on remark is to compute delta and gamma as well, or is that going off-topic?
American options -- Reference prices
Posted: January 26th, 2016, 12:48 pm
by Cuchulainn
QuoteOriginally posted by: outrunNice result, let's indeed use that as a benchmark.Delta gamma theta vega rho vanna are not really relevant IMO, there are all sort of tricks we can use for those, but those are orthogonal discussions, it will only distract from the main focus, getting a price for these 3 cases is first priority.It would also be nice to add timing info so that we can make log/log time vs accuracy plots.Yes. Good scope.
American options -- Reference prices
Posted: January 27th, 2016, 9:55 am
by Cuchulainn
Update.=====I have now tested the extreme case r = .2, sig = 0.0 in FDM. As expected, fitting does not produce miracles in the American case (it is now an opportunity;)) and here are some results:NS,NT,P=====1000, 1000, 010000, 10000, 0.002230000, 100000, 0.00939150000, 100000, 0.009353100000, 100000, .0.009593100000, 200000. 0.009593Maybe there's a miracle method out there. I think you will need moving/adaptive meshes to track the steep front.
American options -- Reference prices
Posted: January 27th, 2016, 2:41 pm
by Alan
QuoteOriginally posted by: CuchulainnUpdate.=====I have now tested the extreme case r = .2, sig = 0.0 in FDM. As expected, fitting does not produce miracles in the American case (it is now an opportunity;)) and here are some results:NS,NT,P=====1000, 1000, 010000, 10000, 0.002230000, 100000, 0.00939150000, 100000, 0.009353100000, 100000, .0.009593100000, 200000. 0.009593Maybe there's a miracle method out there. I think you will need moving/adaptive meshes to track the steep front.If [$]\sigma = 0[$], [$]S_t = S_0 e^{(r-q) t}[$] and the American put value is easy. If [$]K=S_0[$], the case under discussion, and [$]r \ge q[$], then [$]S_t \ge K[$] for all [$]t[$], so the put is worthless. You need [$]q > r[$] to have value starting from [$]S_0 = K[$], and the analysis there is similarly easy.
American options -- Reference prices
Posted: January 27th, 2016, 2:45 pm
by Cuchulainn
QuoteOriginally posted by: AlanQuoteOriginally posted by: CuchulainnUpdate.=====I have now tested the extreme case r = .2, sig = 0.01 in FDM. As expected, fitting does not produce miracles in the American case (it is now an opportunity;)) and here are some results:NS,NT,P=====1000, 1000, 010000, 10000, 0.002230000, 100000, 0.00939150000, 100000, 0.009353100000, 100000, .0.009593100000, 200000. 0.009593Maybe there's a miracle method out there. I think you will need moving/adaptive meshes to track the steep front.If [$]\sigma = 0[$], [$]S_t = S_0 e^{(r-q) t}[$] and the American put value is easy. If [$]K=S_0[$], the case under discussion, and [$]q \ge r[$], then [$]S_t > K[$] for all [$]t[$], so it is worthless. You need [$]q > r[$] to have value, and the analysis there is similarly easy.Sorry, my bad typo: I meant q = 0.01. (Same as spursfan' benchmark).===And the test is also to see when all these methods break down.
American options -- Reference prices
Posted: January 27th, 2016, 2:48 pm
by Alan
OK, I see your edit.BTW, as long as you guys are still playing around, you might want to create a benchmark for some cases where [$]q > r[$].In that case the early exercise boundary, instantaneously before expiration, is [$]S^* = \frac{r K}{q} < K[$], so there is a discontinuity in that (not the price though).This is probably harmless for the lattice methods, but might require some tweaking for the super-fast L. Andersen et al. (outrun's) method. For example, keeping [$]\sigma[$] small to preserve difficulty, you might take [$]r \leftrightarrow q[$] in your current test cases.