IS480 Team wiki: 2016T1 Ingenium Midterm
Home |
Main Wiki | Midterm Wiki |
Contents
Links & Slides
- Midterm Slides: View slides.
- Deployed Firestone Site: Enter site.
- Log in credentials - username: admin & password: admin
- Data Providers: QuantHouse (current) & IDC (old) - SGX-Approved
- Reason for Co-location of Server to SGX - Explained by SGX
Project Progress Summary
Iteration Summary
- Current Iteration: 7 (1-Oct-16 to 15-Oct-16) out of 10 iterations
- Till date, 60% of project scope completed
- Due to a sudden change of data provider in the past month, our team has successfully fixed all of the previously completed functionalities to adopt the new API by the new vendor and with the remaining scope, we're confident to complete ... In the past month, our team has completed 1 external testing with our client's broker and 1 UAT. However, .
- Have the project continued as planned? If not, is the team confident to complete? This is a crossroad for the team to make a decision. Proceed with confident or file an incomplete.
Project Highlights
- Change of data provider - completed on 13-Sep-16
- UT Results? X-Factor reached?
- List of requirement changes
- CRUD items replaced with CU/Sync/Archive items
- Business analytics replaced with iPad client
- Took 8 weeks to learn Ruby on Rails
Milestones
Upcoming:
- 06-Oct-16 | Midterms Presentation
- 07-Nov-16 | Poster Submission
- 21-Nov-16 | Final Presentation
- 02-Dec-16 | Poster Day
Completed:
- 15-Jun-16 | Proposal Submission
- 10-Aug-16 | Acceptance Presentation
- 23-Sep-16 | Data UAT
- 28-Sep-16 | Broker UAT & Client Testing
View all Milestone Documents here.
Project Management
Project Status
S/N | Description | Module | Completion | Confidence | Comments |
1 | Retrieve Data from Data Provider | Connectivity | 100% | 1.0 | Implemented by Mingliang |
2 | Network I/O from IDC | Connectivity | Removed due to change in data vendor | ||
3 | CRUD Order | Trading Platform | 80% | 1.0 | Implemented by Hongkun |
4 | Display Order Book Dashboard | Trading Platform | 80% | 1.0 | Implemented by Hongkun |
5 | Order Execution Confirmation | Trading Platform | 70% | 1.0 | Implemented by Hongkun |
6 | Display Profit & Loss | Trading Platform | 90% | 1.0 | Implemented by Hongkun |
7 | Subscribe Stocks to Market Watch | Market Watch | 100% | 1.0 | Implemented by Mingliang |
8 | Display Market Watch | Market Watch | 100% | 1.0 | Implemented by Mingliang |
9 | Subscribe Stocks to Watch List | Watch List | 100% | 1.0 | Implemented by Mingliang |
10 | Display Watch List | Watch | 90% | 1.0 | Implemented by Mingliang |
11 | CRUD Market Making Orders | Market Making | 100% | 1.0 | Implemented by Huaswee |
12 | Market Making Automated Hedging | Market Making | 0% | 1.0 | To be implemented by Huaswee |
13 | Market Making to Allow Manual Intervention | Market Making | 0% | 1.0 | To be implemented by Huaswee |
14 | CRUD Arbitrage Algorithm Trading | Algorithm Trading | 0% | 1.0 | To be implemented by Huaswee |
15 | Rights Arbitrage | Algorithm Trading | 0% | 1.0 | Huaswee is researching on Arbitrage Algorithm |
16 | Buy-in Arbitrage | Algorithm Trading | 0% | 0.8 | Huaswee is researching on Arbitrage Algorithm |
17 | Index Arbitrage | Algorithm Trading | 0% | 0.4 | Huaswee is researching on Arbitrage Algorithm |
18 | Real-time update for Market Watch | Design Architecture | 90% | 1.0 | Implemented by Mingliang |
19 | Real-time update for Watch List | Design Architecture | 90% | 1.0 | Implemented by Mingliang |
20 | Real-time update for Order Book | Design Architecture | 100% | 1.0 | Implemented by Hongkun |
21 | Real-time update for Profit & Loss | Design Architecture | 0% | 0.6 | To be implemented by Hongkun |
22 | Real-time update for Transaction Log | Design Architecture | 100% | 1.0 | Implemented by Hongkun |
23 | Login / Logout | Account Management | 100% | 1.0 | Implemented by Hongkun |
24 | Access Rights | Account Management | 0% | 0.5 | To be implemented by Hongkun |
25 | Display User Profile Page | Account Management | Removed due to scope ambiguity clarified | ||
26 | Account Module (Primary / Secondary Server / Trader) | Account Management | Removed due to scope ambiguity clarified | ||
27 | Add / Remove Broker Account | Account Management | 0% | 1.0 | Added scope due to scope ambiguity clarified |
28 | Set Trade Limit to Account | Account Management | 0% | 1.0 | Added scope due to scope ambiguity clarified |
29 | Display Transaction Log for Broker Accounts | Account Management | 100% | 1.0 | To be implemented by Hongkun |
30 | Failover | Secondary Function | Removed scope due to change in data vendor | ||
31 | Concurrency for Market Watch | Secondary Function | 100% | 1.0 | Implemented by Mingliang |
32 | Concurrency for Watch List | Secondary Function | 100% | 1.0 | Implemented by Mingliang |
33 | Concurrency for Order Book | Secondary Function | 100% | 1.0 | Implemented by Mingliang |
34 | Concurrency for Profit & Loss | Secondary Function | 0% | 1.0 | To be implemented by Mingliang |
35 | Concurrency for Transaction Log | Secondary Function | 100% | 1.0 | Implemented by Mingliang |
36 | Code Revision for Lower Latency | Secondary Function | 0% | 0.5 | To be implemented by all developers |
37 | Conditional Order Triggers based on Parameters | Secondary Function | 0% | 0.5 | To be implemented by Huaswee |
Project Scope
Old Project Scope
New Project Scope
Highlights of Changes Made in Scope
- Removed failover in secondary function as we have no control over the infrastructure (server) that is collocated at SGX now
- Removed implementation of foreign markets to focus on trading in SGX market first due to change in data provider
- Revamp of scope modules to group by functionalities so that it is more user-readable
- Implementation of new module, Arbitrage Algorithm Trading, proposed by Sponsor as a secondary function
- Re-scoped Account Management due to different understanding of functional requirements previously
Project Schedule
Old Timeline
New Timeline
Highlights of Changes Made in Schedule
- Shorten iterations from a fixed period of 1 month to 2 weeks
- Change of data provider from IDC to QuantHouse in Iteration 5
- Notified by client on 02-Sep-16
- Completed installation, deployment and configuration on 14-Sep-16
- Re-scheduled development of certain functions (connectivity module & market watch) in Iteration 5
Project Metrics
Project Risks
Describe what you learn from the risk update and mitigation steps taken. Put top 3 risks here.
Technical Complexity
Describe and list the technical complexity of your project in order of highest complexity first. For example, deploying on iPhone using Objective-C, customizing Drupal with own database, quick search for shortest flight path, database structure, etc.
What is the design of our architecture?
Quality of product
Our development team has ensured constant communication with our client via meetings and emails to make sure there is no discrepancies between the development teams and the clients’ understanding in the functionalities. In addition, the development team have also had constant communication with other stakeholders that also have a role in the project, such as the data provider and the stock brokers.
Intermediate Deliverables
Type | Description | Documentation |
Project Management |
|
|
Design & Analysis |
|
|
Testing |
|
Deployment
The application is deployed on North Point Global’s server co-located at SGX data center, which is connected to North Point Global logically to prevent others outside the office from accessing the system. As such, the application is not deployed on public domain. The deployment link is available at the top of the page.
Testing
Total number of testing done:
- 1 UAT & Survey with North Point Global
- Internal testing with the data provider and stock brokers
Reflection
Team Reflection
In a project that can only be developed in the hours of 9 to 5, constant communication, merticulous planning and adapative schedule is very important in ensuring the success of the project.
Learning Outcome
- The Financial Information Exchange (FIX) Protocol is a message standard developed to facilitate the electronic exchange of information related to securities transactions. It is intended for use between trading partners wishing to automate communications.
- Level1 (L1) Market Data or Level 1 Quotation Data consists of the real-time Best Bid and Best Ask Prices and the Bid and Ask Sizes available at those prices.
- Level2 (L2) Market Data or Level 2 Quotation Data is the list of all Bid and Ask Prices with sizes and order originators.
- ISO 10962 is the standard code that classifies financial instruments.
- ISO 10383 is the standard code that identifies exchanges and financial markets.