Perform derivative analysis using the Black-Scholes model in the SAP NetWeaver Business Intelligence system to address security concerns.
Jérôme Kerviel is a 31-year-old former futures trader for Société Générale SA, which is one of France’s principal financial services companies and its second largest bank after BNP Paribas. You may already know that Kerviel stands accused of making unauthorized futures trades under the auspices of his employer, resulting in losses totaling €4.9 billion, or $7.16 billion. Another interesting thing you may be less likely to know is that he is described by the Wall Street Journal as “a low-level trader … earning €100,000 ($145,000) a year.”
This illuminates the risks undertaken by the many wealthy institutions that deal in sophisticated derivatives contracts as a means of hedging against risk. The losses lay bare the exposure that financial markets have assumed through the adoption of derivatives, while punctuating the widely underappreciated subtext: as deeply woven as derivatives are into the tapestry of financial markets, far too few hold a working understanding of what they are and how they work.
The Kerviel scandal is a particularly salacious signal to decision-makers indicating that they should take a closer look at derivatives, but it isn’t the only signal worth considering. Kerviel dealt in one of two classes of derivatives: equity derivatives. The other class — credit derivatives — has been making its own press by way of its role in the heart of the broader global credit crisis. Non-financial media has become rife with talk of mortgage-backed securities (MBS), collateralized mortgage obligations (CMO), and collateralized debt obligations (CDO). Banks’ risky bets in financial devices based on credit derivatives have resulted in $200 billion in write-downs in the first five months of 2008.
As the details unfold, we have every reason to expect government and private action to increase regulation while promoting research and development into better risk control systems. We observed with the implementation of Sarbanes-Oxley that enterprise application products such as SAP Supply Chain Management (SCM) and SAP Customer Relationship Management (CRM) provided a convenient means by which organizations have been able to certify compliance with risk-control regulation. Enterprise products may serve a similar role with the inevitable regulation spurned by turbulent derivatives markets.
Pricing options is important to many parties. Many companies retain stock options as a tool in their employee compensation arsenal. Some companies that have abandoned options have simply moved to a cousin tool that is governed by similar pricing models: restricted stock units (RSUs). The accurate valuation of options by these companies and proper reporting of that value on public financial statements has become a concern of investors, the SEC, and FASB. Therefore, beyond the obvious organizations such as investment banks and financial services companies that prepare, broker, and manage options contracts, both companies that use stock options as a compensation tool and auditing firms that sign off on their financial statements will take an interest in the models used to price them.
We’ll open the book on derivatives analysis through examination of one tool used to price stock options: the Black-Scholes model. We will look at the formula for Black-Scholes, unpack its inputs and their meaning, consider applications of the equation, and illustrate a simple model and example using SAP NetWeaver Business Intelligence (SAP NetWeaver BI).
The Black-Scholes Model
The Black-Scholes options pricing model is among the most well-known tools of derivatives analytics. Robert Merton coined Black-Scholes in a 1973 paper that explored options pricing by expanding on the Nobel Prize-winning work of Fischer Black and Myron Scholes. Their fundamental insight is that options are implicitly priced if their underlying stocks are traded — that is, the trading market assigns an implicit price or value to the options that you can quantitatively intuit.
Black-Scholes is particularly applicable to pricing European-style options. A European-style option is an options contract written so that you can exercise it only on expiration, or on the expiry date. This is in contrast to American-style options, which you can exercise any time up to the expiry date. In addition, you can modify Black-Scholes to price currency and interest rate options.
You valuate options based on expected payout, which is a function of intrinsic value and time value. The three kinds of intrinsic value are easy to assess:
- ATM: At-the-money. This is the strike price, the price the buyer must pay to exercise the option, and is the same as the current price of the underlying stock
- ITM: In-the-money. In common parlance, an “above water” option — this is an option whose strike price is below the current market price of the underlying
- OTM: Out-of-the-money. In common parlance, when an option is “under water” — this is an option whose strike price exceeds the current market price of the underlying
Even if an option is ATM or OTM, it may still have time value. Time value is where things become complicated and where Black-Scholes comes into the picture with tools for valuation. Bonds and T-notes have an assured cash flow that pay out over the life of the security. The future cash flow of an option is uncertain, depending as it does on the unpredictable behavior of the underlying stock. Black-Scholes assigns a total valuation to an option by determining the intrinsic value of the contract, then adding to it the quantity of a function derived from the average of all possible expected values.
Black-Scholes is a technique that supports equity derivatives analytics, not credit derivatives. Nevertheless, the mathematical principles underlying both categories have much in common and the relevance to SAP NetWeaver BI is entirely analogous.
Three Real-World Applications of Black-Scholes
We will examine three applications of Black-Scholes:
- Pricing a call option
- Pricing a put option
- Derivation of the implied volatility
In terms of applications for management of risk, the first two applications are the most mundane but they still have instructional value because they are stepping stones to an application of the model that employs the intrinsic value they hold by virtue of trading. By way of a mathematical formula we are able to divine real intelligence about the value of an asset, intelligence that is implicitly held by the collective of all traders rather than by any individual investor or analyst.
In other words, Black-Scholes, in illuminating implied volatility, provides a means of reading the market’s mind. This is a powerful capability because research has demonstrated that the collective knowledge of an interested crowd (i.e., a crowd of individuals with their own money at stake) typically exceeds the knowledge of even the best experts.
Inputs and Formula
The value of an option is the theoretical premium that someone should pay for the option’s contract, which is the expected payout upon expiry discounted to the day someone purchases the option and pays the premium. The five inputs, along with the output, C, that Black-Scholes uses to compute this are shown in Table 1.
|
C
|
Price of the call
|
|
S
|
Spot price (current price) of the underlying stock
|
|
X
|
Strike price (price of the stock on option exercise)
|
|
T
|
Time to expiry
|
|
r
|
Cost of carry: the interest rate to expiry less dividend income from the same period
|
|
|
“Sigma”; the volatility of the underlying stock denoted as the value of a standard normal distribution (more on this momentarily)
|
Table 1 S, X, T, r, and s are inputs for computation of Black-Scholes; C, the call price, is its outcome
Spot price and strike price. You use the spot price and strike price to compute whether or not you are beginning with an option that carries intrinsic value (i.e., is it ATM, ITM, or OTM?). You can perceive this as indicating something about the likelihood of a stock being exercised. How much that is actually true may be a point of contention. For example, just because a stock begins ITM doesn’t mean it will not finish ITM or OTM. Just because it begins OTM doesn’t mean it will finish ITM. In either case, the perception that this constitutes a vector of some time giving an indication of likelihood of exercise remains present so intrinsic value is accounted.
Time to expiry. Time to expiry is important to the valuation of an option because in principle, the longer the time to expiry, the more opportunity is understood to be present for an option buyer to exercise when the stock is ITM. Generally speaking, the greater the time to expiry, the greater the volatility. While volatility naturally carries some degree of risk, value is generally attributed to the possibility for opportunity. Therefore, the longer the time to expiry, the more valuable the option.
Interest rate/cost of carry. You can only exercise a European option on expiry so pricing is applied in relation to the forward price of a share. You compute the forward price as the expected value on the expiration date, or the cost of carrying or holding a position. You calculate forward price of a share from spot price and the net cost of carrying the share for delivery on the forward date, less dividends earned. This is an opportunity cost. You can estimate the cost of carry by comparison to the risk-free interest rate that you can earn by investing in a theoretically safe instrument (e.g., a money market account minus any future cash flows you expect from dividends). Dividends can complicate the model — you need to adjust the basic form of the Black-Scholes equation if dividends will be paid before the expiry date.
Volatility. The first four inputs to Black-Scholes are straightforward, but volatility is problematic. We have said that valuation of options begins with expected payout. Expected payout is the sum of all possible values of an investment multiplied by the weight of their probabilities. Volatility informs the understanding of what the expected payout will be. This is important to valuating an option because the more volatile a share, the greater the opportunity for movement, which may cause it to trade at a higher-than-expected value on expiry.
For example, imagine you are offered a deal with these terms. At an initial stake of $1,000 there is a 25% chance of being paid $2,400, a 45% chance of being paid $1,400 and a 30% chance of being paid nothing. You compute expected payout to determine if this is a worthwhile venture:

Based on expected payout, the value of this contract, what an investor is expected to pay for it, is $1,230. While some such contracts fail to deliver a return — 30% by the terms above — if you always made investments in which expected payout exceeded initial stake, we expect you to prosper in the long run.
When deriving volatility with Black-Scholes using historical volatility as a guide, you begin with a sample of the underlying’s prices from some historical period. With this, you compute the daily percentage price changes from closing using percent rather than absolute value to normalize the comparison. Finally you calculate the standard deviation (s), the extent to which price changes diverge from average. A small value for s produces a tall, thin bell curve while a larger value produces a wider curve. Width implies greater volatility, adding to the value of the option.
Modeling Black-Scholes Pricing of Calls and Puts
Call options are derivatives contracts wherein the buyer has the right, but not the obligation, to buy a quantity of a stock from the seller (writer) on an agreed-upon date for an agreed-upon price. The seller of the contract has an obligation to sell the buyer the underlying assets at an agreed-upon price on the agreed-upon date if the buyer chooses to exercise. Based on the inputs we just described, Black-Scholes uses this formula to price calls:

In English, we can read this formula to say that the price of the call, C, is equal to the spot price multiplied by the probability of a range of possible price outcomes, N(d1), reduced by an exponent of the strike price which is itself also multiplied by a range of price probabilities, N(d2).
This may seem complicated, but it really is not. The relationship between the call-price formula above and the expected payout formula we examined earlier is analogous — if you understand the expected payout method, you can understand the call price equation. Read the method for expected payout one more time and pay attention to how we estimate a final price by determining the sum of all possible prices multiplied by their probabilities; then re-read the formula for call price and its explanation.
In contrast to call options, put options are derivatives contracts wherein the buyer has the right, but not the obligation, to sell the underlying to the seller (writer) at an agreed-upon date at an agreed-upon price and the seller of the options contract has the obligation to buy the underlying asset if the buyer chooses to exercise. A put option is priced by this formula:

The put formula reverses the operations of the call formula. The price of the put, P, is equal to an exponent of the strike price multiplied by the probability of a range of possible price outcomes, reduced by the spot price which is also multiplied by the range of its own possible outcomes.
Table 2 shows additional components to the formula besides the five real-world inputs already addressed.
|
N(d)
|
The standard normal cumulative distribution ¾ in other words, the area under a normal curve which itself expresses the probability of a range of options
|
|
ln()
|
The natural logarithm of a number to a base e @ 2.71828
|
|
r
|
r is the continuously compounded interest rate. Note that the formula calls for e-rt. The Microsoft Excel function for e is EXP().
|
Table 2 Additional components to the formula
S (spot price) and X (strike price) are weighted by the factors N(d1) and N(d2), respectively. N(d1) is the option delta and N(d2) is the probability that the option will be exercised and the strike price paid out.
Many texts that explain Black-Scholes employ Microsoft Excel for demonstration and use the Excel function NORMSDIST to compute N(d1) and N(d2). In lieu of the function, strictly theoretical treatments usually employ standard statistical tables to derive cumulative area based on a z-score. Neither of these approaches is a viable option for a BI model so it’s necessary that we unpack the mechanics of the underlying mathematical function. Because we cannot use NORMSDIST or statistical tables, a systematic means of computing cumulative probability is the first problem any developer faces when using a BI product to model Black-Scholes because at present few BI products, if any, offer an off-the-shelf function similar to Excel’s NORMSDIST.
NORMSDIST returns the cumulative area under a standard normal distribution given a z-score, where the z-score is a known demarcation on the probability distribution. Another way of describing the value NORMSDIST returns is the cumulative probability from minus infinity to the z-score (Figure 1).

Figure 1
Cumulative probability seen as a segment of area under a standard bell curve
Modeling the computation of cumulative probability requires relatively few lines of code, but the math involved is non-trivial. Recall a minute ago that we mentioned that cumulative probability is the area under the standard curve from minus infinity (curve approaches zero, see Figure 1) to the z-score. When you have a slope that trends infinitely toward zero, calculus is in order, so to acquire this area you need to derive the integral of the standard normal density function. That function is:

Unfortunately, there is no closed form means of acquiring the integral value that you need. In other words, mathematicians as yet have not formulated a straightforward equation that you can render into a programmatic function. Instead, to render this abstract computation accessible to microprocessor logic, you have to employ a non-intuitive function which, to explain its details, would exceed the scope of this article. Instead, we’ll summarize the function in two forms:
- Visual Basic for Applications (VBA): We offer the function in this form to provide you with an easy means of quality testing the code against the Excel NORMSDIST function or against standard statistical tables
- ABAP: This was our application of the same programmatic technique in SAP NetWeaver BI using ABAP that we employed to model Black-Scholes
Function to Return Cumulative Probability Using VBA
Again, we provide code here for a cumulative probability function in VBA so that readers can apply Excel and VBA to test the output of the code against the standard output of NORMSDIST or against statistical tables from authoritative sources. We do this in lieu of a closed form formula that would make the entire enterprise easier on everyone involved but that presently doesn’t exist. You should do this Excel modeling exercise to assure yourself that you have mastered the technique prior to attempting the same in SAP NetWeaver BI, because SAP NetWeaver BI does not provide a similarly simple means of testing for bugs when coding analogous methods in ABAP.
Follow these steps to use this code with Excel and VBA:
- Create a macro in Excel to hold the code and tie it to a control button
- Use cell B5 to enter a test value for z between -7 and +7
- On the formula line for cell B6 enter the following function: =NORMSDIST(B5)
- Enter code in the macro in step 1, which puts its own output in cell B7 when you click on the control button. You can download sample code for this at the bottom of the article.
- To test put values in cell B5 (e.g., 1.3333 or -1.3333), the output in cells B6 and B7 should be identical out to the millionths decimal place after which they’ll diverge slightly from one another
The resulting Excel test spreadsheet looks something like that shown in Figure 2.

Figure 2
Sample Excel test spreadsheet
Function to Return Cumulative Probability Using ABAP
Now we’ll show you an analog to the VBA version of the code using ABAP. In ABAP we coded a routine to perform several of the math operations necessary for Black-Scholes, including computation of area under the normal curve. We achieved this by adding ABAP code to model two Black-Scholes components to the update rule in an otherwise standard load process for an InfoPackage:
- ABAP code to determine cumulative probability
- ABAP code to carry out either the Black-Scholes call or put pricing, as appropriate
Where it concerns the cumulative probability function, there are a few differences between VBA and ABAP approaches. With ABAP we employ explicit references to N(d1) and N(d2) because we submit d1 and d2 to the ABAP cumulative probability function to yield N(d1) and N(d2) in the same way we submitted the value for z to the VBA function to collect a cumulative probability output. In VBA we are trying to match NORMSDIST, which simply receives a z-value and returns cumulative probability, whereas with ABAP we must compute the equivalent of the z-values d1 and d2, using formulas provided above. Lastly, the system sent the return value in VBA to the spreadsheet. The return values in ABAP are kept as inputs to a Black-Scholes call or put pricing formula.
With all of that in mind, you need to enter the ABAP code for computing d1 and d2 and use them as inputs to derive their cumulative probability, N(d1) and N(d2). You can download this code at the bottom of the article.
Once the transfer rule carries out this equation to derive cumulative probability, it is staged with the full volley of inputs to conduct either a call or a put pricing using the appropriate Black-Scholes equation. You can provide all of the other inputs to the equation via external DataSources. We’ll look at the full details of how to model this with SAP NetWeaver BI shortly after we review the mechanics of the Black-Scholes call and put option pricing.
Pricing a Call Option
As an example of the pricing procedure, let’s carry out a pricing of a call option using a single spot price, ATM call (i.e., zero intrinsic value but potential time value) with the inputs shown in Table 3.
|
S
|
$35
|
Spot price
|
|
X
|
$35
|
Strike price
|
|
T
|
0.5 (years)
|
Time to maturity or expiry
|
|
r
|
5.00%
|
Rate of interest
|
|
|
25%
|
Volatility
|
Table 3 Call option inputs
Remember that an ATM call has equal spot and strike prices, thus no intrinsic value, but it may, through volatility spreading over time, gain a time value. Pricing an option as described yields the call price. After you understand the method, we can model the equation in SAP NetWeaver BI to conduct a sensitivity analysis that is a repetitive analysis on a changing array of values. The analysis considers stock prices as low as $10, well below the strike price of $35, but then speculates to prices above it as high as $45.
Step 1. Derive values for d1 and d2. You first derive values for d1 and d2 to determine actual values for possible probabilistic outcomes. Recall in our expected payout example that you were given probabilities of each of the possible outcomes for expected payout: 0.25 for $2,400, 0.45 for $1,400 and 0.3 for $0. That was good enough for expected payout but for Black-Scholes it will not suffice.
First, we must compute d1, recalling our formula:

Then we can compute d2 using the formula:

Here you are almost ready to apply the call price formula from Black-Scholes:

Notice though that to get there you need to evaluate the normal cumulative distribution function applied to d1 and d2.
Step 2. Apply normal cumulative distribution to d1 and d2. You also need to use the cumulative probability function that we explored earlier to determine the total cumulative probability that surrounds d1 and d2. When we say cumulative probability we mean that we run the value in question (i.e., 0.2298 or 0.0530), through the function for cumulative probability that we built earlier in VBA and ABAP is the same as passing the value to NORMSDIST in Excel or to finding the probability on a statistical table using a z-score.
N(d1) = the cumulative probability1* of 0.2298 = 0.5909
N(d2) = the cumulative probability2* of 0.0530 = 0.5211
Step 3. Apply the call price model. Lastly, we feed these values as inputs into the Black-Scholes call pricing equation.

The outcome, $2.89, tells you that even at no intrinsic value on account of equal spot and strike prices, your option nevertheless holds some positive time value and may be worth purchasing.
The next step is to conduct a sensitivity analysis across a spread of spot prices for the stock to determine how the call price ought to change if the spot price changes relative to the strike price. Computation of a single price by hand wasn’t too bad, but conducting a sensitivity analysis across an array of values would be extraordinarily tedious. Here you would want to begin calling on SAP NetWeaver BI. For the moment we’ll just display outcomes. We’ll save a full exposition in SAP NetWeaver BI for our last example.
Our example analyzes a range of spot prices for the stock ($10-$42.50) in Table 4 and graphs the Black-Scholes application of pricing in Figure 3.
|
Spot Price
|
Black-Scholes Call Price
|
|
$10.00
|
0.00
|
|
$12.50
|
0.00
|
|
$15.00
|
0.00
|
|
$17.50
|
0.00
|
|
$20.00
|
0.00
|
|
$22.50
|
0.02
|
|
$25.00
|
0.08
|
|
$27.50
|
0.29
|
|
$30.00
|
0.77
|
|
$32.50
|
1.62
|
|
$35.00
|
2.89
|
|
$37.50
|
4.55
|
|
$40.00
|
6.52
|
|
$42.50
|
8.71
|
Table 4 An array of spot prices from $10 to $42.50 yields Black-Scholes call prices values of $0 to $8.71

Figure 3
A sensitivity analysis of stock spot price versus Black-Scholes call price performed with Excel
Pricing a Put Option
We now will conduct a similar analysis to price a put option. In the call option case the seller/writer had the obligation to sell the underlying asset at the agreed-upon price if the buyer exercised. With a put option, the seller/writer has the obligation to buy the underlying asset upon exercise.
To work out this pricing by hand using the original assumptions (spot and strike equal at $35, 0.5 years to expiry, 5% rate of interest, and 25% volatility), you can use the work already done when pricing the call. This means you can repeat steps 1 through 3 on the call option pricing process. The difference is in step 4 where we must execute the put formula instead of the call formula.

Our computation indicates that with specific spot vs. strike prices of $10 to $35 the put price should be $2.03. A sensitivity analysis illustrates the outcome (Table 5, Figure 4).
|
Spot Price
|
Black-Scholes Put Price
|
|
$10.00
|
24.14
|
|
$12.50
|
21.64
|
|
$15.00
|
19.14
|
|
$17.50
|
16.64
|
|
$20.00
|
14.14
|
|
$22.50
|
11.65
|
|
$25.00
|
9.22
|
|
$27.50
|
6.93
|
|
$30.00
|
4.90
|
|
$32.50
|
3.25
|
|
$35.00
|
2.03
|
Table 5 An array of spot prices from $10 to $35 yields Black-Scholes put prices values of $2.03 to $24.14

Figure 4
Sensitivity analysis of stock spot price versus Black-Scholes put price
Deriving Implied Volatility
Thus far when considering the volatility of a stock we have assumed use of historical volatility. Use of historical volatility has several advantages. Historical data is readily available and for instructional purposes application of historical data to make this determination of standard deviation is relatively accessible. That said, historical volatility is not without problems. No clear rule set exists for determining which set of historical data to use in a sample. The data may not be representative — external economic, competitive, or marketing events occurring during the period of the sample could skew the data. Also, as every investor knows, you cannot rely on past performance to predict future results.
The complex mathematics notwithstanding, as it relates to their precision, exercises with derivatives have more in common with forecasting weather patterns than with calculating flight times for commercial jets. Whatever control mechanisms applied, you are forecasting and have no crystal ball; your best judgment is still subject to uncertainty.
While no resources are at our disposal rise to the mythical crystal ball standard, one alternative with several advantages over historical volatility is markets. Trading markets are often consulted as a form of aggregate opinion wherein the sum of all opinions — opinions backed by dollars — holds more value than any one opinion, even a quite expert one. Implied volatility is the application of this market wisdom by using the dollar price that an option is trading at in the market to derive the aggregate volatility assumption its traders must be making that would generate the price. It’s a back-door peek into the collective mind of investors to divine the market perception of volatility.
Another way of asking for implied volatility is to seek the standard deviation for which the Black-Scholes call-pricing formula produces a given option spot price value, taking into account all the other parameters. Once understood, it is essentially algebraic to work your way backward to compute implied volatility.
Let’s set up a case with the inputs shown in Table 6. With the inputs from Table 6 as our external boundaries, our query is: what level of volatility justifies an options trading price for the call option of $2.50?
|
S
|
$75
|
Spot price
|
|
X
|
$90
|
Strike price
|
|
T
|
1 year
|
Time to maturity or expiry
|
|
r
|
5.00%
|
Rate of interest
|
|
|
10%
|
Volatility starting assumption
|
Table 6 New starting assumptions on input values for external boundaries that form the context for the intrinsic value case
Determining an answer to this, while essentially algebraic, requires considerable trial and error of running the Black-Scholes call price formula over and over with different volatility assumptions until we arrive at the volatility value that generates the call price we are looking for. For this, SAP NetWeaver BI may prove useful. To build this model we employed all of the typical components of SAP NetWeaver BI. Figure 5 delineates the process that we’ll narrate here:

Figure 5
Transfer rules to load inputs into SAP NetWeaver BI InfoObjects
Step 1. Employ two separate flat files as DataSources. First, use a flat file for what might be considered the contractual parameters, externalities, or independent variables: spot price, strike price, time to expiry, and cost of carry (interest rate). Here we used values as in Table 6 — this file was targeted for DataStore object (DSO) ZIMPLVOL.
Then use a flat file for the analytic trend points that you want to see modeled, the dependent variables essentially, which in the case of the implied volatility case are the range of call prices this file was targeted for DSO ZVOLOUT. We’re trying to use this DSO as our output to Business Explorer (BEx).
Step 2. Load data from flat files to SAP NetWeaver BI. We used standard InfoSource definitions for each DataSource and transfer rules to load data from the flat files to SAP NetWeaver BI through a communication structure to transfer the data into a DSO and the objects we defined (Figure 5).
Step 3. Structure an InfoPackage to include a value for implied volatility. We built our job so that the system reads data from the input flat file for the static data entries (spot price, strike price, and so on) and maps it to the transfer rule or transfer structure (Figure 6). It then sends it to the communication structure and then onto an update rule of the input DSO ZIMPLVOL to store data in the DSO table.

Figure 6
SAP NetWeaver BI modeling structure for deriving implied volatility using Black-Scholes
The system reads data from the variable input file (the volatility cases) from the flat file via another transfer rule or transfer structure and sends it to another communication structure. It then sends their combined data to the second update rule for the output DSO ZVOLOUT. This update rule reads data from the input DSO table /BIC/AZIMPLVOL00 and iterates through the variable data, running all of it through the call price formula to compute output: the implied volatility call price values.
On its way through the communication structure this value is read through an update rule that we enhanced with both the ABAP code that populates the DSO structure ZVOLOUT with one row containing both the implied volatility and a calculated call price.
While we split the code in this treatment for descriptive purposes, the ABAP code added to the update rule for ZVOLOUT, when combined, computes these three things:
- Derivatives d1 and d2 – the logic, formula, and code for which are all addressed earlier
- Derivatives N(d1) and N(d2) – here too the logic, formula and code have already been provided
- Lastly, one of:
a. A Black-Scholes call price using the call price formula
b. A Black-Scholes put price using the put price formula
c. Implied volatility using simple algebraic replacement in the Black-Scholes call price formula
Since we already addressed d1, d2, N(d1), and N (d2), what remains to derive implied volatility is to run the inputs through the Black-Scholes call price formula on the update rule to complete our update of ZVOLOUT. You can do that with code that you can find at the bottom of the article.
Finally, we’re ready to model and display analytical outcomes in BEx. This is a relatively simple matter of setting up the call price as the key figure and the implied volatility, what we’ve called the count in our model, as a row. Posted through BEx to Excel, we can diagram the outcome (Figure 7). You can use this outcome to find that the level of volatility that justifies an options trading price for the call option of $2.50 is roughly between 0.2 and 0.21, or 20 and 21% volatility.

Figure 7
BEx model of implied volatility
Note
The exercise of modeling Black-Scholes in SAP NetWeaver BI was challenging, especially facing the absence of a statistical formula for computing area under a standard normal curve. Another technical snag we faced was that when declaring variables as amounts our formulas calculated data correctly but the data did not display as two-character decimals in BEx. As an alternative, we declared the variables as a quantity.
Note
We would like to express our gratitude to Prof. Daniel Soper (CSU Fullerton) who provided invaluable advice for this article. He maintains a Web site with useful statistical resources at
www.danielsoper.com.
Daniel Wood
Daniel Wood is a lecturer at Arizona State University in the W.P. Carey School of Business and a former industry SAP SCM business system analyst. He is author of SAP SCM: Applications and Modeling for Supply Chain Management (Wiley)
You may contact the author at daniel.c.wood@asu.edu.
If you have comments about this article or publication, or would like to submit an article idea, please contact the editor.
Lipika Sur
Lipika Sur holds a masters’ degree in math from IIT, India and has worked for 11 years with SAP enterprise and BI products including implementations for IBM, Lucent, Hyundai, and Atmel with PwC and implementations with HP. She is currently a business system analyst at a Fortune 100 manufacturer.
You may contact the author at lsur@yahoo.com.
If you have comments about this article or publication, or would like to submit an article idea, please contact the editor.