Now we build a server from our executable Server-side: –Executable –Heavyweight process that stays up –Add a message set (will be driven by our GUI requirements)

Slides:



Advertisements
Similar presentations
Point of Sale (POS) Client & Back Office Server. Operational Concept What is our Objective? What is our Objective? What are our Goals? What are our Goals?
Advertisements

Aladdin Overview *************************** NOTICE ************************* PROPRIETARY AND CONFIDENTIAL MATERIAL. DISTRIBUTION, USE, AND DISCLOSURE.
Chapter 13 Review Questions
Excel Financial Modeling Day 1 Nick Crain. Students in this class… Beginners – Want introduction of excel functionality – Really this is covered by the.
GridRPC Sources / Credits: IRISA/IFSIC IRISA/INRIA Thierry Priol et. al papers.
Upcoming deliverables for remainder of semester - to Dec 14 Nov 30th: Second quiz –To cover the remainder of MMM (chapter 13 to end). Dec 7th: Third and.
DT211/3 Internet Application Development JSP: Processing User input.
1 Frameworks. 2 Framework Set of cooperating classes/interfaces –Structure essential mechanisms of a problem domain –Programmer can extend framework classes,
YTM - Pricing a Zero Coupon. Indirection, Polymorphism, Data Abstraction -How to handle a heterogeneous mix? -Coupon-bearing -Zero Coupon -What does data-driven.
Finance Computing Projects - Dec 7 Second and final Quiz on MMM Requirements questions answered Final instructor evaluation Class feedback: How could this.
Session 6 Server-side programming - ASP. An ASP page is an HTML page interspersed with server-side code. The.ASP extension instead of.HTM denotes server-side.
Upcoming deliverables for remainder of semester - to Dec 14 Nov 18th (Wednesday): “book” data file will be uploaded to class site –A second file will contain.
A CHAT CLIENT-SERVER MODULE IN JAVA BY MAHTAB M HUSSAIN MAYANK MOHAN ISE 582 FALL 2003 PROJECT.
Enhancements for server-side Price to Yield - will need to add a root finder –High yield bonds are not usually spread-priced. –We still want to know what.
YTM - Frequency Parameterized. YTM - Pricing a Zero Coupon.
Enhancements to server-side Pricing “Modes” spread, yield, price - when are they used? VaR of the book Expected vs Potential Confidence interval, “holding.
Now we build a server from our executable Server-side: –Executable –Heavyweight process that stays up –Library (e.g, excel add-in) –Add a message set (will.
Credit Risk - Market Risk Credit Risk is the risk of the other side not paying! How do we typically measure it? How do we manage it? –Pledged collateral,
Review of the Major Risk Types Market Risk –Sensitivity to the parameters of our pricing functions Credit Risk –Probability that the other side fails to.
Introduction to Credit Risk Credit Risk vs Market Risk Credit Risk is the risk of the other side not paying! This is a “default”… –Failure to pay an interest.
Cambodia-India Entrepreneurship Development Centre - : :.... :-:-
1 Chapter 20 — Creating Web Projects Microsoft Visual Basic.NET, Introduction to Programming.
Operating Systems.
Software Development, Programming, Testing & Implementation.
Quick Tour of the Web Technologies: The BIG picture LECTURE A bird’s eye view of the different web technologies that we shall explore and study.
Copyright © 2003 McGraw Hill Ryerson Limited 4-1 prepared by: Carol Edwards BA, MBA, CFA Instructor, Finance British Columbia Institute of Technology Fundamentals.
Form Handling, Validation and Functions. Form Handling Forms are a graphical user interfaces (GUIs) that enables the interaction between users and servers.
DAT602 Database Application Development Lecture 15 Java Server Pages Part 1.
INTRODUCTION TO WEB DATABASE PROGRAMMING
Word Wide Cache Distributed Caching for the Distributed Enterprise.
Introduction to the Enterprise Library. Sounds familiar? Writing a component to encapsulate data access Building a component that allows you to log errors.
Architecture Of ASP.NET. What is ASP?  Server-side scripting technology.  Files containing HTML and scripting code.  Access via HTTP requests.  Scripting.
1 Forms A form is the usual way that information is gotten from a browser to a server –HTML has tags to create a collection of objects that implement this.
XHTML Introductory1 Forms Chapter 7. XHTML Introductory2 Objectives In this chapter, you will: Study elements Learn about input fields Use the element.
@2011 Mihail L. Sichitiu1 Android Introduction Platform Overview.
Design IS 101Y/CMSC 101 Computational Thinking and Design Tuesday, October 15, 2013 Carolyn Seaman University of Maryland, Baltimore County.
Introduction to JavaScript + More on Interactive Forms.
Web Programming: Client/Server Applications Server sends the web pages to the client. –built into Visual Studio for development purposes Client displays.
9 Chapter Nine Compiled Web Server Programs. 9 Chapter Objectives Learn about Common Gateway Interface (CGI) Create CGI programs that generate dynamic.
The Cluster Computing Project Robert L. Tureman Paul D. Camp Community College.
REVIEW On Friday we explored Client-Server Applications with Sockets. Servers must create a ServerSocket object on a specific Port #. They then can wait.
Chapter 14 System Testing.
Active Server Pages  In this chapter, you will learn:  How browsers and servers interacted on the Internet when the Internet first became popular 
Chapter 8 Collecting Data with Forms. Chapter 8 Lessons Introduction 1.Plan and create a form 2.Edit and format a form 3.Work with form objects 4.Test.
© 2012 xtUML.org Bill Chown – Mentor Graphics Model Driven Engineering.
1 Geospatial and Business Intelligence Jean-Sébastien Turcotte Executive VP San Francisco - April 2007 Streamlining web mapping applications.
Grid Operations Center Infrastructure Team Soichi Hayashi, Arvind Gopu.
User Interfaces 4 BTECH: IT WIKI PAGE:
Introduction to JavaScript CS101 Introduction to Computing.
Yield To Maturity Formula
Fundamentals of Corporate Finance Chapter 6 Valuing Bonds Topics Covered The Bond Market Interest Rates and Bond Prices Current Yield and Yield to Maturity.
We will have to support a mix of instrument types to support aggregate measures E.g., risk on a book of bonds 3 general classes of fixed income security.
Introduction to Credit Risk Credit Risk vs. Market Risk Credit Risk is the risk of the other side not paying (all or part)! This is a “default”… –Failure.
Fundamentals of Corporate Finance Chapter 6 Valuing Bonds Topics Covered The Bond Market Interest Rates and Bond Prices Current Yield and Yield to Maturity.
IS2803 Developing Multimedia Applications for Business (Part 2) Lecture 2: Introduction to IS2803 Rob Gleasure
Basic VaR Categories Historical Simulation –“Full re-val” or “Greeks based” –Simple, explainable, repeatable –Supplement with stress testing –Need lots.
Fixed Income terminology Present Value/Future Value Principal and Interest Periodic cash-flows (usually semi-annual) Compounding rate (usually semi-annual)
PRG 421 MART Education Expert/prg421mart.com FOR MORE CLASSES VISIT
PRG 421 ACADEMIC PROFESSOR/TUTORIALRANK For more course Tutorials
LECTURE III THE CREDIT RISK International Finance
1 Chapter 1 INTRODUCTION TO WEB. 2 Objectives In this chapter, you will: Become familiar with the architecture of the World Wide Web Learn about communication.
CSC 222: Object-Oriented Programming
LOCO Extract – Transform - Load
PHP / MySQL Introduction
Week 1 Gates Introduction to Information Technology cosc 010 Week 1 Gates
Notes for Final Submission
Applying Use Cases (Chapters 25,26)
Applying Use Cases (Chapters 25,26)
Message Passing Systems Version 2
Presentation transcript:

Now we build a server from our executable Server-side: –Executable –Heavyweight process that stays up –Add a message set (will be driven by our GUI requirements) –State management for optimization –Re-use our mid-term executable as a regression test harness –Recovery State re-construction Connection management (we will use TCP sockets) Why build a server? –Scaling –Parallel processing –Separate by process boundary so client can be written in a different language/dev environment –Support client evolution (more rapid than server side - mfc, java,.net, etc.,) Socket code fragments supplied on class page Heavyweight process vs. thread –Shared memory –Contention management –Ease of debug –Complexity compromise –Parallel processing model Clustering Individual machine may have multiple CPU’s, OS may be fine grained

“Middleware” See Socket.tar

Putting it all together Teams can build server and client in parallel via stubs Functionality we will have to add to our server: –Bucketed Risk –Scenario capability –VaR –Position change intra-day (“new business” or trading activity intra-day) There will be a grading phase on the server using our new client GUI –Our executable will now become our test driver –GUI environment choice is up to the teams - language/tools are your choice –GUI code will not be graded - it just has to work with your server –The full app will be demo’d during last class by each team. Both team members must present. –We will start drilling into GUI requirements Now that we can price and calculate risk it’s time to put a nice front end on it! New functionality will be added to server as we go...

Measuring trading book change We can now calculate risk at a point in time for a given book –Credit : Loss Given Default –Market : Interest rate sensitivity However, the risk changes daily given trading activity and changing market environment… –What is market environment (yield curve or spread change)? –What is the new position (trading activity or “new business”) –What is the new risk given above? –Sensitivities change as valuations change given non-linearity of p/y function We need an itemized bill: –“Risk Attribution” (what were the biggest contributors to my risk profile)? –“PnL Attribution” (How did I make/lose money?) If VaR changed materially where did it come from? Big position move or a risk move? –Was it due to Interest Rate movement of Spread movement?

Calculate LGD for the book Calculate LGD given a ratings downgrade scenario: –AA to A (for example) –BBB to BB (Investment grade crosses over to junk) –This is when we’ll need to use the unique ID (SBB_ID) Calculate change in position given trading activity intra-day –We’ll have a starting book “opening” and end-of-day “closing” book You should be able to: –Load two position files and price by either spread or yield –Calculate Market Value of the trading book per bond: MarketValue = Position * Price/100 –Calculate scenarios by shifting the yield curve –Show how risk has changed given trading activity –Show risk bucketed by maturity band –Calculate hedge amount of the 2 year treasury to flatten out risk in each band –Each team will have to use graphics to meet some aspect of the requirements –Tabular and graphical display –Accept user input for running pre-determined as well as ad-hoc scenarios –Calculate VaR for trading book (covered in future lecture) Requirements for Final Submission

Requirements for Front End Static reports: Position change (see spreadsheet story-board) Total Notional Amount, Risk and LGD by: “Quality” “Issuer” User input driven: Risk and Market Value by maturity band: Maturity buckets defined as: 0-2yr, 2-5yr, 5-10yr, 10-30yr (If > 30 year put in this bucket) Display Notional Amount of 2 year treasuries (T2 in file) to hedge each bucket bucket risk = dv01_2yr * Amount_2yr bucket risk = sum of individual risks of each position in the bucket User should be able to re-run maturity band report with shifted inputs: Yield curve parallel up and down by 50% (of starting yield curve yields) User entered spreads at each point (to support ad-hoc shifts) It is required is to display data in tabular form (see spreadsheet spec) It is required to display in graphical form as well (use your imagination). e.g, pie, bar, stacked bar, line, scatter… Solve for Amount

Deliverables –Server built with version 1 of message set defined –Stub client wiggling in your language of choice –Your regression harness inputs can now be tradingbook_results.txt Tradingbook_results.txt and results.txt are posted on class page before lecture after mid-term submission (after any late submissions) –Submission will be a server and a simple stub client –Deliverable is what you submitted for the mid term BUT called from the client –“run.sh” to start server –Timing info to be written to stdout by server process –Bracket message handler with START_TIMER() … END_TIMER() –Download new SBB_util.h/cc to get parameterized version of end_clock(…) so you can send the results back to the client –Return real, user and system time as a message to the client –“Output is as before (two files which the server writes out)

Early look at Requirements for Final Presentation Architecture: Description of: Server-side capabilities Client-side capabilities How is logic partitioned between server and client side? GUI technology choice rationale “Middleware” protocol/message set Challenges faced during implementation How was the work partitioned within the team? Demonstrate the front end What questions does the app help the user answer? Clear description of how to install it, build it and use it Walk through test-driver of the server side (a requirement!) I will drive after the presentation is given and ask questions interactively

Early look at Requirements for Final Presentation review GUIrequirements_V1.xlsx