5

I've never dealt with Python, so I am just trying to understand what's going on, visually/logically. Overall it looks fine, apart from the fact that LS suggest to only use the in-the-money paths for the regression, can't see that in your code, or am I missing it? A few side notes, your variable naming is a little non-standard, I would change your T -> NT, t -...


3

How about just defining the maturity date as todays date (or any other start date) ajusted by a period of T x 365 days? Here is an example: T = 0.5 today = ql.Date().todaysDate() maturity = today + ql.Period(f"{int(T*365)}d")


3

Consider two options with maturity $T$ that only differ in their exercise styles, one being European (holder can only exercise at $T $), the other American (holder exercises when it's best for him/her). These options need not necessarily be vanilla options. Let us further denote by $I (S_t) $ the intrinsic value of these contigent claims at time $t $, i.e. ...


2

I suggest you first value a perpetual up and out call with a barrier B above max of strike K and initial spot and a rebate paid at first barrier hit equal to B - K. Then maximize this value over B. Continuing to assume no dividends, I believe you will find that the optimal B is infinite and that the up and out call value converges to spot. I haven’t actually ...


2

I am not aware of perpetual call options being traded on any exchanges, but there are two very close analogues. Perpetual warrants are issued directly by companies so trading is done OTC or through a registered B/D. Common equity is also a very close analogue to a perpetual American call option. The theoretical value of a perpetual warrant (or option) ...


1

It is as simple as just taking the max(). The problem is that you took the wrong one. You must consider the max between the intrinsic value of the option on the one hand and its discounted continuation value (which is an expectation in the risk-neutral world) on the other. In your final loop, you should therefore replace the line W(j+1,1) = max(K-W(j+2,1)...


Only top voted, non community-wiki answers of a minimum length are eligible