May
24

## How to Generate Report Automatically From Matlab

Often we have to generate reports to our boss, colleagues, and clients, etc. Generally those reports include Matlab source codes, maths equations, and possibly graphs. How do you generate your reports? writing down your equations in Word, running your matlab codes, copying and pasting the results?

It is all right to do like that, but the whole process becomes extremely simple with the cell mode in Matlab, it generates report automatically for us, any change you make regarding description, codes and results will be updated by clicking a simple button:

The following steps outline the procedure,

For a simple demonstration, I write the files as follows.

The final report is shown at http://www.mathfinance.cn/attachment/CellPublishDemo.html, looks fantastic.

Hot posts:

15 Incredibly Stupid Ways People Made Their Millions

Ino.com: Don't Join Marketclub until You Read This MarketClub Reviews

Online stock practice

World Changing Mathematical Discoveries

Value at Risk xls

Random posts:

14 Critical Lessons Every Trader Should Know

Friday reading list of this week

Singular value decomposition

GEV distribution and density function

Normal Inverse Gaussian(NIG) and other stochastical vol model

It is all right to do like that, but the whole process becomes extremely simple with the cell mode in Matlab, it generates report automatically for us, any change you make regarding description, codes and results will be updated by clicking a simple button:

**Publish to HTML**.The following steps outline the procedure,

First, opening an editor in Matlab by choosing File -> New -> M-file;

Second, selecting cell and enable cell mode in the editor;

Third, inserting cell divider under cell window, it allows you to type a name for each section, similar with the title for chapters in Word;

Fourth, depending on your reports, inserting Text Markup, where you are able to insert description text, bold text, etc. most importantly, it supports TeX equations;

Finally, clicking "Publish to HTML", a nice-looking report is generated, and if necessary, changing the codes and re-running to update the report.

Second, selecting cell and enable cell mode in the editor;

Third, inserting cell divider under cell window, it allows you to type a name for each section, similar with the title for chapters in Word;

Fourth, depending on your reports, inserting Text Markup, where you are able to insert description text, bold text, etc. most importantly, it supports TeX equations;

Finally, clicking "Publish to HTML", a nice-looking report is generated, and if necessary, changing the codes and re-running to update the report.

For a simple demonstration, I write the files as follows.

%% Cell mode publish demonstration

% abiao @ mathfinance.cn

%% Using Black Scholes formula as an example

% The value of a call and put options in terms of the Black–Scholes parameters

% is:

%

% $$C(S,t) = SN(d_1) - Ke^{-r(T - t)}N(d_2) \,$$

%

% $$P(S,t) = Ke^{-r(T-t)} - S + (SN(d_1) - Ke^{-r(T - t)}N(d_2)) = Ke^{-r(T-t)} - S + C(S,t)$$

%

% $$d_1 = \frac{\ln(\frac{S}{K}) + (r + \frac{\sigma^2}{2})(T - t)}{\sigma\sqrt{T - t}}$$

%

% $$d_2 = d_1 - \sigma\sqrt{T - t}$$

%% Sample code, for simplicity, I use the embedded command

[call, put] = blsprice(10,9,0.02,2,0.3);

fprintf('Call option value is %g. \n',call)

fprintf('Put option value is %g. \n',put)

call1 = [];

put1 = [];

for i = 1:10

call1(i) = blsprice(5+i,9,0.02,2,0.3);

end

%% Sample plot for demonstration only

plot(5+(1:10), call1)

% abiao @ mathfinance.cn

%% Using Black Scholes formula as an example

% The value of a call and put options in terms of the Black–Scholes parameters

% is:

%

% $$C(S,t) = SN(d_1) - Ke^{-r(T - t)}N(d_2) \,$$

%

% $$P(S,t) = Ke^{-r(T-t)} - S + (SN(d_1) - Ke^{-r(T - t)}N(d_2)) = Ke^{-r(T-t)} - S + C(S,t)$$

%

% $$d_1 = \frac{\ln(\frac{S}{K}) + (r + \frac{\sigma^2}{2})(T - t)}{\sigma\sqrt{T - t}}$$

%

% $$d_2 = d_1 - \sigma\sqrt{T - t}$$

%% Sample code, for simplicity, I use the embedded command

[call, put] = blsprice(10,9,0.02,2,0.3);

fprintf('Call option value is %g. \n',call)

fprintf('Put option value is %g. \n',put)

call1 = [];

put1 = [];

for i = 1:10

call1(i) = blsprice(5+i,9,0.02,2,0.3);

end

%% Sample plot for demonstration only

plot(5+(1:10), call1)

The final report is shown at http://www.mathfinance.cn/attachment/CellPublishDemo.html, looks fantastic.

**People viewing this post also viewed:**

Hot posts:

Random posts:

btw, the new theme is simple and nice, except for the huge Citi banner on the top little bit wierd...

Please keep up sharing.[b]

need for speed no limits hack

or the new mod which we don`t see in old one. It is little hard and I found difficult in using this new generation of report in the office work. After reading an article from grademiners review blog about the tricks and how to generate it using easily it has become more easy now.