Presentation is loading. Please wait.

Presentation is loading. Please wait.

PSL: An Interpretative Programming Language for Financial Portfolio Simulation and Manipulation Alexander Besidski Xin Li Jian Huang Wei-Chen Lee.

Similar presentations


Presentation on theme: "PSL: An Interpretative Programming Language for Financial Portfolio Simulation and Manipulation Alexander Besidski Xin Li Jian Huang Wei-Chen Lee."— Presentation transcript:

1 PSL: An Interpretative Programming Language for Financial Portfolio Simulation and Manipulation Alexander Besidski Xin Li Jian Huang Wei-Chen Lee

2 PSL: Motivation Expanding Financial Market (Despite the crash of.COM’s in NASDAQ index in 2001 … ) Exploding amount of daily generated financial data from trading front desks and the imperative call for automatic trading systems Modularization and regulation of the financial securities: stock, bond, mortgages, mutual fund, hedge fund… And Complexity in existing business software solutions and limited flexibility they provide to external users Growing size of inexperienced investors and business software users who yet need to manipulate and analyze financial securities Growing size of newly trained financial engineers and MBA’s who knows nothing or even feel horrified about programming in C++ and Java yet need to perform “quant” jobs in investment banking Bridge the Gap between

3 PSL: Overview A Finance Oriented Programming Language Common features as most other popular programming languages (types, functions, calculation, control flows, I/O, … ) Built-in Support for Manipulation of Financial Securities (stock & bond) and Portfolios Simulation and Analytical Tools for Financial Instruments Visualization and Computation based on Financial Data

4 Java-like syntax Less complicated grammar rules Strongly typed OOP Interface Script-like programming style Intrinsically Expandable PSL: Language Features

5 PSL: Tutorial To declare a stock stock google = new (Price=150.0); To specify its attributions google.Name=”GOOGLE” google.Return = 5; google.Volatility = 30; Print our its price google.Price.print();

6 PSL: Tutorial To declare a Bond, it’s easy. bond Treasury10Y = new( Coupon=3.0, Maturity=10, InterestRate=5.0 ); Treasury10Y.Name = “Treasury10Y”;

7 PSL: Tutorial To Declare a portfolio portfolio pf = new(Capital=3000.0); Set the assets pf.addStock(google, 20); pf.addBond(Treasury10Y, 5); pf.addStock(IBM, 8); pf.addStock(google, 16); pf.addCapital(1000.0);

8 PSL: Tutorial Show the final total asset value pf.printContent(); Then Simulate the portfolio’s performance and show them in a chart ("Simulate the portfolio:").print(); pf.simulate(50);

9 PSL: Tutorial

10 PSL: Geometric Brownian Motion Geometric Brownian Motion is a model to simulate the behavior of prices of stocks or other commodities. The transition from the price at one time to the next is

11 PSL: Requirements Create an Interpreter Develop in Java Use ANTLR Team work

12 PSL: Development Environment Eclipse chosen as main Dev platform Built in CVS capabilities Easy integration with ANTLR Automatic builds Rapid development and debugging

13 PSL: Language Components Frontend - Lexical scanner, Parser, Tree Walker - Interpreter - Symbol table - Wrapper class for primitive & complex types Backend –Graphics,Simulation, I/O,Statistics Testing Documentation

14 PSL: Roles Xin – Dev Jian – Dev Peter – QA, Doc Alex – Captain, Dev

15 PSL: Assignments PrimarySecondary XinFinancial Requirements Walker Frontend-Backend integration JianBackend PeterQA Doc AlexLexer Parser Walker

16 PSL: Language Structure Dissection By Value & by Reference semantics Control Flow Java-style Scoping Rules Functions Arrays Properties and methods for complex types

17 PSL: Lessons Learned Financial jargon info. Tools: ANTLR, ECLIPSE+CVS Language without ambiguous Regression test module

18 PSL: Conclusion White paper- production advocating LRM- blueprint PSL- excellent construction for extended development


Download ppt "PSL: An Interpretative Programming Language for Financial Portfolio Simulation and Manipulation Alexander Besidski Xin Li Jian Huang Wei-Chen Lee."

Similar presentations


Ads by Google