29
DMS DMS - - COP COP ENSE623 – Verification and Validation November 28, 2006 By: Ali Pilehvar Suman Sampath Decision Making System for Constructing Optimum Portfolio

DMS-COP - isr.umd.eduaustin/ense623.d/projects06.d/Business... · DMS-COP ENSE623 ... ADX – Average Directional Index: An indicator used to determine ... DMI - Directional Movement

  • Upload
    doanbao

  • View
    230

  • Download
    9

Embed Size (px)

Citation preview

Page 1: DMS-COP - isr.umd.eduaustin/ense623.d/projects06.d/Business... · DMS-COP ENSE623 ... ADX – Average Directional Index: An indicator used to determine ... DMI - Directional Movement

DMSDMS--COPCOP

ENSE623 – Verification and Validation November 28, 2006

By:

Ali PilehvarSuman Sampath

Decision Making System for Constructing Optimum Portfolio

Page 2: DMS-COP - isr.umd.eduaustin/ense623.d/projects06.d/Business... · DMS-COP ENSE623 ... ADX – Average Directional Index: An indicator used to determine ... DMI - Directional Movement

AgendaIntroduction

Problem StatementIdeal Solution

GoalsTerminologyRequirements

System BoundaryUse case Analysis

System StructureClass Diagram

System BehaviorActivity DiagramsState Chart

Model Presentation (In Excel/VBA)Buy/Sell DecisionsObtaining the number of sharesOptimization to get the minimum portfolio risk satisfying the expected return

Validation and Verification (In Matlab)Efficient FrontierModel

Next Steps…

Page 3: DMS-COP - isr.umd.eduaustin/ense623.d/projects06.d/Business... · DMS-COP ENSE623 ... ADX – Average Directional Index: An indicator used to determine ... DMI - Directional Movement

Problem Statement

Requirements

System Behavior

Model Presentation

System Structure

IntroductionIntroduction

Validation & Verification

Goals

Next Steps

In today's financial marketplace, a well-maintained portfolio is vital to any investor's success. As an individual investor, you need to know how to determine an asset allocation which best conforms to your personal investment goals and strategies. In other words, your portfolio should meet your future needs for capital and give you peace of mind. Investors can construct portfolios aligned to their goals, their risk aversion and investment strategies by following a systematic approach.

Terminology

Page 4: DMS-COP - isr.umd.eduaustin/ense623.d/projects06.d/Business... · DMS-COP ENSE623 ... ADX – Average Directional Index: An indicator used to determine ... DMI - Directional Movement

Ideal Solution

To create a simple model-based program which can assist an individual investor to firstly construct an optimum financial portfolio to make more capital gain based on set of criteria and rules and secondly give his/her the tool to decide how to manage portfolio from the perspective of selling, buying and keeping portfolio’s securities according to the risk-return characteristics that best suit one’s preference and financial objectives.

Requirements

System Behavior

Model Presentation

System Structure

IntroductionIntroduction

Validation & Verification

Goals

Next Steps

Terminology

Page 5: DMS-COP - isr.umd.eduaustin/ense623.d/projects06.d/Business... · DMS-COP ENSE623 ... ADX – Average Directional Index: An indicator used to determine ... DMI - Directional Movement

Goals

- The system must be efficient

- The system must be economic

- The system must be user friendly

- The system must be secure

- The system must be capable of getting the most optimal portfolio.

- The system must be capable of getting the minimum risk with an expected return.

- The system must be able to give appropriate signals tobuy/sell/hold based on the market analysis.

- The optimal portfolio should be consistent with Marketresults

Requirements

System Behavior

Model Presentation

System Structure

Introduction

Validation & Verification

GoalsGoals

Next Steps

Terminology

Page 6: DMS-COP - isr.umd.eduaustin/ense623.d/projects06.d/Business... · DMS-COP ENSE623 ... ADX – Average Directional Index: An indicator used to determine ... DMI - Directional Movement

Terminology

Portfolio - The group of assets - such as stocks, bonds and mutual funds - held by an investor.

Rate of return - A key measure of investors’ success is the rate at which their portfolios have grown during the investment period.

Risk – standard deviation from the mean. It also represents the volatility of each stock.

ADX – Average Directional Index: An indicator used to determine the strength of the trend. It is measured on a scale between zero and 100.

DMI - Directional Movement Index: Component of ADX indicator. Helps in buy/sell determination.

Trending – When a particular asset’s direction continues to move in one direction into the future.

MA – Moving Average: An indicator showing the average value of a stock price over a set period.

ADX

MA

Requirements

System Behavior

Model Presentation

System Structure

Introduction

Validation & Verification

Goals

Next Steps

TerminologyTerminology

Page 7: DMS-COP - isr.umd.eduaustin/ense623.d/projects06.d/Business... · DMS-COP ENSE623 ... ADX – Average Directional Index: An indicator used to determine ... DMI - Directional Movement

Terminology

Oscillating – Erratic moving behaviour of a particular asset.%K line – component of stochastic indicator: moving average of 5

to 10 day period%D line – 3-period moving average of %K line.Bollinger Band – A band plotted two standard deviation away

from a simple moving average. When markets become more volatile, the bands widen and vice versa.

Ticker – Name of the stockClosing Price – The price at the end of the day.Volatility - A statistical measure of the dispersion of returns for a

given security or market index. Weights of Stocks - The total value of each stock in the portfolio

which is simply the multiplication of number of each stock‘s shares by their prices divided by the total value of portfolio.

Stochastic

Bollinger

Requirements

System Behavior

Model Presentation

System Structure

Introduction

Validation & Verification

Goals

Next Steps

TerminologyTerminology

Page 8: DMS-COP - isr.umd.eduaustin/ense623.d/projects06.d/Business... · DMS-COP ENSE623 ... ADX – Average Directional Index: An indicator used to determine ... DMI - Directional Movement

Terminology

Efficient Frontier – Intersection of the set of portfolios with minimum variance and the set of portfolios with maximum return.

Requirements

System Behavior

Model Presentation

System Structure

Introduction

Validation & Verification

Goals

Next Steps

TerminologyTerminology

Page 9: DMS-COP - isr.umd.eduaustin/ense623.d/projects06.d/Business... · DMS-COP ENSE623 ... ADX – Average Directional Index: An indicator used to determine ... DMI - Directional Movement

Requirements

RequirementsRequirements

System Behavior

Model Presentation

System Structure

Introduction

Validation & Verification

Goals

Next Steps

Terminology

Page 10: DMS-COP - isr.umd.eduaustin/ense623.d/projects06.d/Business... · DMS-COP ENSE623 ... ADX – Average Directional Index: An indicator used to determine ... DMI - Directional Movement

Requirements

investor

Stock data base

Daily Market

Get Investor information

Do Optimization toobtain the best portfolio

Calculate the Number ofeach stock in the portfolio

Show the Investor theOptimum portfolio

Obtain historical datafor chosen stocks

Perform financialmarket analysis for

each stock

Make Buy, Sell and Holddecision for each stock

RequirementsRequirements

System Behavior

Model Presentation

System Structure

Introduction

Validation & Verification

Goals

Next Steps

Terminology

Page 11: DMS-COP - isr.umd.eduaustin/ense623.d/projects06.d/Business... · DMS-COP ENSE623 ... ADX – Average Directional Index: An indicator used to determine ... DMI - Directional Movement

System Structure – Market Analysis

Class histData

ticker:Charday:Dat e = sysDateopen:Numberhigh:Numberlow:Numberclose:Numbervolume:Number

sheets ()

Class Signal

sell:Booleanbuy:Booleanhold:Boolean

runModel()

Class Calculations

getHis tData()getADX()

Class ADX

trendingoscillat ingmeanValue = 15

indicatorType()compare()

Class Bollinger

upperBandlowerBandclosingPricepercentKpercentD

calcBand()

Class DMI

posDMInegDMI

calcMov()

<<uses>>

Requirements

System Behavior

Model Presentation

System System StructureStructure

Introduction

Validation & Verification

Goals

Next Steps

Terminology

Page 12: DMS-COP - isr.umd.eduaustin/ense623.d/projects06.d/Business... · DMS-COP ENSE623 ... ADX – Average Directional Index: An indicator used to determine ... DMI - Directional Movement

System Structure – Optimization

Class histData

t icker:CharReturns :PercentclosePrice:Curr

dataSheets ()

Class OptPort

targetReturnnumShare:IntoptRisk:intoptW eight

getHis tData()getObjModel()getOptWeight()getOptRisk()

Class ObjModel

upperWeightlowerWeightminexpectedreturn

calcVar()calcCov()calcoptweight()

<<uses>>

Class NumShare

closePricebudgetoptWeight

gethis tData()getObjModel()numShare()

Class Output

Ticker:Charbudget:NumbernumShareoptRisk:intoptW eight

getOptPort ()

Requirements

System Behavior

Model Presentation

System System StructureStructure

Introduction

Validation & Verification

Goals

Next Steps

Terminology

Page 13: DMS-COP - isr.umd.eduaustin/ense623.d/projects06.d/Business... · DMS-COP ENSE623 ... ADX – Average Directional Index: An indicator used to determine ... DMI - Directional Movement

System Behavior – ADX

Get Price(HIs torical D ata)

ADX

Perform MovingAverage Cros s over

C alcul ation

P erform S tochas ti cCalculati on

[if ADX>15] [if ADX<15]

B uy/ SellS ig nal

Requirements

System System BehaviorBehavior

Model Presentation

System Structure

Introduction

Validation & Verification

Goals

Next Steps

Terminology

Page 14: DMS-COP - isr.umd.eduaustin/ense623.d/projects06.d/Business... · DMS-COP ENSE623 ... ADX – Average Directional Index: An indicator used to determine ... DMI - Directional Movement

System Behavior – Trending

Get P ri ce(HIs torical Data)

Trending

Hol d

GetMoving Averag e

[if5-day MA crosses below 20-day MA]

Buy

[if5-day MA crosses above 20-day MA]

[ADX > 15]

Perform Movi ngAverag e Analys is

DMI+>DMI-?

[Yes] [No]

Sel lHol d

DMI->DMI+?

[No] [Yes]

Requirements

System System BehaviorBehavior

Model Presentation

System Structure

Introduction

Validation & Verification

Goals

Next Steps

Terminology

Page 15: DMS-COP - isr.umd.eduaustin/ense623.d/projects06.d/Business... · DMS-COP ENSE623 ... ADX – Average Directional Index: An indicator used to determine ... DMI - Directional Movement

System Behavior – Stochastic

Get Price(HIs torical D ata)

Stochastic

Get% K & % D

[if%K,%D>80 & %K crosses below %D]

Buy

[if%K,%D<20 & %K crosses above %D] K,DAnalysis

[ADX < 15]

Price <lowerband?

Hold Hold

Price >upperband?

Sel l

[Yes] [No] [Yes][No]

Requirements

System System BehaviorBehavior

Model Presentation

System Structure

Introduction

Validation & Verification

Goals

Next Steps

Terminology

Page 16: DMS-COP - isr.umd.eduaustin/ense623.d/projects06.d/Business... · DMS-COP ENSE623 ... ADX – Average Directional Index: An indicator used to determine ... DMI - Directional Movement

System Behavior – Trending State

Intial StockValue

Sell

Hold

Buy

[5-day MA crosse s above 20-day MA] [5-day MA cross es below 20-day MA]

[DM I+ > DMI- ] [DMI- > DMI+ ]

Trending Statechart

[5-d

ay M

A c

ross

es a

bove

20-

day

MA

] [5-day MA

crosses below 20-day M

A]

Requirements

System System BehaviorBehavior

Model Presentation

System Structure

Introduction

Validation & Verification

Goals

Next Steps

Terminology

Page 17: DMS-COP - isr.umd.eduaustin/ense623.d/projects06.d/Business... · DMS-COP ENSE623 ... ADX – Average Directional Index: An indicator used to determine ... DMI - Directional Movement

System Behavior – Stochastic State

Intial StockPrice

Sell

Hold

Buy

[K,D<20 & K cros se s above D] [K,D>80 & K cros se s be low D (Hedge )]

[K,D

<20

& K

cro

sses

abo

ve D

] [K,D

>80 & K

crosses below D

]

[Price < LB ] [Price > UB ]

Stochastic Process

Requirements

System System BehaviorBehavior

Model Presentation

System Structure

Introduction

Validation & Verification

Goals

Next Steps

Terminology

Page 18: DMS-COP - isr.umd.eduaustin/ense623.d/projects06.d/Business... · DMS-COP ENSE623 ... ADX – Average Directional Index: An indicator used to determine ... DMI - Directional Movement

System Behavior – Optimization Activity

Obtain The initial budget ofinvestor,Risk Aversion, minimum andmaximum constraints for each stock'sweight and the list of chosen stock

Inves tors havealready enteredtheir pers onal

i nformation into thes ystem

Obtain historical data such as averagereturn , covariance between stocks andstandard deviation for chosen stocks

Model the cons train ts and ot herlimit at ion based on the known

informat ion

Construct the objective function foroptimization problem

Solve the Optimization

Obtain the poss ib le minportfolio 's Risk and also calculatethe bes t weight s for those s tocks

Save the obtained weight ofeach s t ock and also t heMinimum portfolio's risk

Requirements

System System BehaviorBehavior

Model Presentation

System Structure

Introduction

Validation & Verification

Goals

Next Steps

Terminology

Page 19: DMS-COP - isr.umd.eduaustin/ense623.d/projects06.d/Business... · DMS-COP ENSE623 ... ADX – Average Directional Index: An indicator used to determine ... DMI - Directional Movement

Calculation of Number of Shares

Obtain the las tes t decisonfrom ADX to buy ,hold and

sell for each s tock

The sys t em has onceimplemented the

optimization and we havet he bes t weight for eachs tock and also we have

ADX result s for this dayfor all s t ocks

Bring The bes t obt ained weightscalculat ed in the optimzation

procedure

Obtain the lates t clos ing price of eachs tock for that day and the las t es t s tocks'number of shared exis ting in the portfolio

Obtain the new number of shares accordingto the lat es t price for those s tocks to havethe same prefered weights of each s tock

decision fromADX for a

stock

Is either buy or sell?

Put the lat es t price obtained for thes tock the same as previous one <<no

change in teh price>>

Hold?

Show the Investor the Optimum portfoliowith the new number of its shares

Requirements

System System BehaviorBehavior

Model Presentation

System Structure

Introduction

Validation & Verification

Goals

Next Steps

Terminology

Page 20: DMS-COP - isr.umd.eduaustin/ense623.d/projects06.d/Business... · DMS-COP ENSE623 ... ADX – Average Directional Index: An indicator used to determine ... DMI - Directional Movement

Sequence – optimization/calc of shares

Investor

Sequence diagram for optimization

Class OptPort Class NumShareClass ObjModelClass histData

1.Obtain the investor information

Class Output

2. Put all of the entered Information such asmin expected return , upper bound and lower bound of

stocks in the optimization problem

3. Ask for the historical data forthose chosen stocks

6.Return the Variance and Covariance with average

his torical return

THIS INFORMATION CONSISTS OF THEBUDGET, LOWER AND UPPER BOUND OFSTOCKS' WEIGHTS AND THE MINIMUM

EXPECTED RETURN

.9. Send the latest price of those stocks

11. Calculate the best number of sharefor each stock

14. Show the best portfolio with the least risk

7.Do t he optimization to obtain t he minimum port folio risk and to acquire the bes t wights

8. Ask for the latest price of those stocks

13.Send t he optimal weights , the minimum risk and actual return

10. Send the initial budget and obtained optimum weights

5-calculate variance and covarianceof those stocks

4.Send historical data for those stocks

12.Send the best number of shares

Requirements

System System BehaviorBehavior

Model Presentation

System Structure

Introduction

Validation & Verification

Goals

Next Steps

Terminology

Page 21: DMS-COP - isr.umd.eduaustin/ense623.d/projects06.d/Business... · DMS-COP ENSE623 ... ADX – Average Directional Index: An indicator used to determine ... DMI - Directional Movement

System Model

To perform market analysis and Optimizations corresponding to system behavior and structure we use the following tools extensively:

- MS Excel

- Visual Basic

- MatlabRequirements

System Behavior

System Model System Model PresentationPresentation

System Structure

Introduction

Validation & Verification

Goals

Next Steps

Terminology

Page 22: DMS-COP - isr.umd.eduaustin/ense623.d/projects06.d/Business... · DMS-COP ENSE623 ... ADX – Average Directional Index: An indicator used to determine ... DMI - Directional Movement

Market Analysis Model

DATA

Model

Represents Historical Price from Internet resources like Yahoo.

Runs Market Analysis decisions based on:

- ADX

- Moving Average

- Stochastic Process

- Bollinger’s Method

Requirements

System Behavior

System Model System Model PresentationPresentation

System Structure

Introduction

Validation & Verification

Goals

Next Steps

Terminology

Page 23: DMS-COP - isr.umd.eduaustin/ense623.d/projects06.d/Business... · DMS-COP ENSE623 ... ADX – Average Directional Index: An indicator used to determine ... DMI - Directional Movement

Optimization Model

Requirements

System Behavior

System Model System Model PresentationPresentation

System Structure

Introduction

Validation & Verification

Goals

Next Steps

Terminology

Optimization Process

Page 24: DMS-COP - isr.umd.eduaustin/ense623.d/projects06.d/Business... · DMS-COP ENSE623 ... ADX – Average Directional Index: An indicator used to determine ... DMI - Directional Movement

Definition

Requirements

System Behavior

System Model Presentation

System Structure

Introduction

Validation & Validation & VerificationVerification

Goals

Next Steps

Terminology

What is Verification and Validation?

The process of ensuring that software being developed or changed will satisfy functional, and other requirements, and each step in the process of building the software yields the right products.

Validation:

“Are we building the right product?”

-The software should conform to its specifications

Verification:

“Are we building the product right?”

- The software should do what the users need

Page 25: DMS-COP - isr.umd.eduaustin/ense623.d/projects06.d/Business... · DMS-COP ENSE623 ... ADX – Average Directional Index: An indicator used to determine ... DMI - Directional Movement

Tools

Requirements

System Behavior

System Model Presentation

System Structure

Introduction

Validation & Validation & VerificationVerification

Goals

Next Steps

Terminology

Tools used to validate the product:MS Excel

Visual Basic

Tools used to Verify the product:Matlab for Optimization

Page 26: DMS-COP - isr.umd.eduaustin/ense623.d/projects06.d/Business... · DMS-COP ENSE623 ... ADX – Average Directional Index: An indicator used to determine ... DMI - Directional Movement

Example

Page 27: DMS-COP - isr.umd.eduaustin/ense623.d/projects06.d/Business... · DMS-COP ENSE623 ... ADX – Average Directional Index: An indicator used to determine ... DMI - Directional Movement

Verification Results

40.00%41.00%42.00%43.00%44.00%45.00%46.00%47.00%48.00%49.00%50.00%51.00%52.00%53.00%54.00%55.00%56.00%57.00%58.00%59.00%60.00%61.00%62.00%63.00%64.00%65.00%66.00%67.00%68.00%

Standard deviation

Giv

en e

xpec

ted

Ret

urn

%

The optimim point with standard deviation of 0.031

Page 28: DMS-COP - isr.umd.eduaustin/ense623.d/projects06.d/Business... · DMS-COP ENSE623 ... ADX – Average Directional Index: An indicator used to determine ... DMI - Directional Movement

Next Steps…

Requirements

System Behavior

System Model Presentation

System Structure

Introduction

Validation & Verification

Goals

Next StepsNext Steps

Terminology

Final Presentation

- Traceability

- Integration of Structure for Optimization and Market Analysis

- More refined Optimization – have more than just 10 period analysis.

- Market Analysis Verification

Future

- Link to Internet via DDE so as to update the historical data automatically

- Build a Web based model

- Cater to solving/incorporating the assumptions

- Do more research to make it more realistic

- Incorporate Short and Long Strategies

Page 29: DMS-COP - isr.umd.eduaustin/ense623.d/projects06.d/Business... · DMS-COP ENSE623 ... ADX – Average Directional Index: An indicator used to determine ... DMI - Directional Movement

Questions?