Vertical Options Arithmetic Vertical options means that all legs have the same Expiry, ie. the same DTE. As is known, every option has these expiry values: MaxProfit MinProfit S0Profit (ie. PnL at expiry when underlying spot is unchanged) BreakEvenPoint plus of course the initial NetPremium value. Question: Can one add two options together to get a new option with the resulting correct values? Of course by using simple maths, not using Black-Scholes etc. Ie. is such an arithmetic possible with vertical options? Anybody studied this aspect of the vertical options, or can point to such a (research) work? Let's simplify things by omitting RiskFreeRate and DividendRate by setting them implicitly to 0. Then we have this definition of an options position: Type, DTE, Strike, Premium, Qty (Type is Call or Put). The task is to add two such options together. The resulting option can use arbitrary parameter values (like strike etc.), but the above said expiry result values have to be correct.
I came to the conclusion that it's not possible to do if the other requirement is to be able to compute the PnL for any Sx at expiration, b/c all one can get after such an arithmetic is a function that generates a single line (or a real curve), but this is unsufficient (and is incorrect) to describe the combined PnL for any possible Sx.... B/c a Call or Put has 2 payoff lines in its PnL diagram (the bold blue lines below for expiry)... One rather has to store all legs and work on all of these legs to get the combined PnL for any Sx, as is the status-quo... See also (slide link): https://www.sec.gov/Archives/edgar/data/1053092/000089109213009798/e56459fwp.htm Update: BUT... could one not simply use a convention for the other line (the horizontal blue line above)?... Nay, forget it! B/c it does not necessarily remain horizontal after adding 2 or more options together.... It gets splitted into multiple lines: the more different strikes the more such line segments... Ie. a single function cannot cover them all... So, forget it!... Case closed...