You are on page 1of 17

Information System For Brokerage House

Software Requirements And Specifications

Group members:
1. Vivek Kushwaha

2. Amarish KumarYadav

3. Avanish Singh
Abstract
• Introduction:

This paper explains the process and outcome of a Brokerage house Information Systems.
This project aims at developing an application framework that is centered on enhancing and
facilitating the communication among the different participating entities involved in the business of
shares trading. This information system provides clear information about stock market or stock
exchange to brokers, clients as well as to the different companies. Also facilitating the entire process of
complex transaction, paper works and providing intelligent guidance related to share markets.

• Abbreviations :

1. Brokerage House:

A brokerage house, also called a brokerage firm, is a company licensed to buy and sell stocks or
securities. Acting as an intermediary between buyers and sellers, a brokerage house typically employs
brokers who carry out the wishes of the firm's clients as they pertain to the trading of stocks. Broker
services are usually provided on a commission basis.

2. Broker :

A broker is a party that mediates between a buyer and a seller. A broker who also acts as a seller or as
a buyer becomes a principal party to the deal. Distinguish agent: one who acts on behalf of a principal.
A brokerage or a brokerage firm is a business that acts as a broker. A sales person working for a
securities or commodity brokerage firm is popularly (but incorrectly) called a "broker." A broker in
that context is, strictly speaking, an exchange member who actually executes the purchase or sale
order in the pit, on the exchange, as a service to the client of the firm for which that salesman works.
Broker’s function is to arrange contracts for property in which he or she has no personal
interest, possession, or concern. The broker is an intermediary or negotiator in the contracting of any
type of bargain, acting as an agent for parties who wish to buy or sell stocks, bonds, real or Personal
Property, commodities, or services

3. Brokerage terms

Front office: This is a description of the part of a brokerage firm that is "client facing". The sales staff,
brokers and traders are part of the front office. Functions of the front office include acquisition and
entry of orders, fulfillment of the orders, and all the regulatory reporting for the orders.

Back office: The back office is where the clearance processing of the trades is done. Transfer of
securities and money and the tracking of "failure to deliver" are handled. Securities lending for a
brokerage firm, wherein shares of a security that is being sold short are located to ensure they can be
delivered, is usually included in the back office as well.
4. Explanation of a City Trader's Job
Stock broker: A stock broker would deal with shares. Shares and stocks have the same definition; a
share is a section of a company that a stockbroker can buy and sell if he/she has a suitable amount of
money. Specifically, a stock is a piece of money – a share of a company – that a few years ago were
represented on a document

Foreign Exchange Members: These city traders deal with currencies. Their clients are usually called
"market makers" (literally makers of markets: shopkeepers are a common example) and are the people
they use to earn money.

Bond-dealers: bond-dealer is a city trader who lends a sum of money to a stock (section of a
company).

In such ways, city traders trade via market makers, but they are also trading for a group of people - the
investors. These are people of a higher status than city traders, for example: chartered accountants. An
investor has the right to use money from his brokerage firm if there is a crisis involving him/her losing
a sum of money. This doesn't change the fact that city can at the same time be allowing the usual
currency/stock deals to take place, enabling them to gain money while providing the investor with
money.

5. Stock trader: A stock trader or a stock investor is an individual or firm who buys and sells
stocks or bonds (and possibly other financial assets) in the financial markets. Stock
traders/investors usually need a stock broker such as a bank or a brokerage firm to access the stock
market. Since the advent of Internet banking, an Internet connection is commonly used to manage
positions. Using the Internet, specialized software, and a personal computer, stock traders/investors
make use of technical analysis and fundamental analysis to help them in the decision-making
process. They may use several information resources

Features of information system:


a. Client vision module – Front –office:

1. Stock picking:

Information system offer courses in stock picking, and numerous experts report success
through Technical Analysis and Fundamental Analysis, many economists and academics state
that because of efficient market theory it is unlikely that any amount of analysis can help an
investor make any gains above the stock market itself.

2. Trading web front:

It is a web based interface which provides all trading information about stock market to the
stock traders. Also have details of companies’ profiles and current financial growth in market.
Provides true information about market rather then the boiler rooms (The term boiler room in
business refers to a busy center of activity, often telemarketing or other types of sales. It
typically refers to a room where tele -marketers work, often selling stocks and using unfair,
dishonest sales tactics, sometimes selling penny stock or other fraudulent stock).
3. Reduction of expenses, costs and risk:
Trading activities are not free. They have a considerably high level of risk, uncertainty and
complexity, especially for unwise and inexperienced stock traders/investors seeking for an easy
way to make money quickly. In addition, stock traders/investors face several costs such as
commissions, taxes and fees to be paid for the brokerage and other services, like the
buying/selling orders placed at the stock exchange. System provides stock picking which
reduces the risk to clients and as online trading is available the no transportation cost also
offers less commission then other brokers.

b. Broker Vision Module – back-office:

Responsible for all of the back office operations such as: Client Management, Order
Management, Trades Management, MIS, Dividends Management, Financial Management,
Margin Trading, Client Accounting Management and Market Gateway, Portfolio Management,
System Security Management.

1. Order Management System & Risk Management:

Providing the ability to view the market on a real-time basis through the Market Watch, ability
to display the market depth, market by order and market by price, the ability to enter orders
from your workstation directly into Stock Market with the ability to monitor the investor
exposure and risk. Adding to that, the ability to view on a real-time all of your entered orders,
their status and the flexibility of changing or deleting on filed orders. Also this module
provides the trades Tape Ticker for all executed orders in the market and Stock Market News.

2. FIX Protocol Enabled:

This feature will enable the Order Management System to connect seamlessly to the market in
a real-time basis, allowing brokers to link their internal back office with the Order
Management System which will reduce the effort and work of entering transaction details into
the back office system, creating a Straight through processing environment. Added to that the
potential scalability, and growth in the broker operations to facilitate more users and eventually
increase business generating opportunities.

3. Internet Trading:

This feature will provide the brokers with the ability to offer Internet Trading to its investors,
facilitating order entry based on a set of rules and controls the broker enforce and agree on with
management. Such a service will dramatically lower the transaction cost which will eventually
increase the broker net profits.
4. Information Dissemination:

This feature will enable the brokers to disseminate information in a real-time basis to their
investors via multiple service channels such as the Internet, and SMS in a batch format

5. STP (Straight through Processing):

Straight through Processing will be achieved in the system as a whole, increasing the efficiency
of the operations by the initiating order entry which will trigger the full cycle of operations. As
soon as the market is closed for trading, all of the broker internal operations are conducted
automatically, reducing the effort spent in the clearing and settlement process of the broker
with his clients, allowing brokers to focus efforts in serving their clients better and offering
innovative benefits to their clients.

6. SMS (short messages services) Interface Module:

This will enable the broker to send an SMS to his investor upon accepting the client order and upon
executing the order in the market in a real-time basis.

• Reports generated by information system:

1. Information system provides complete information reports to stock traders about there stocks
and market. (i.e the current share prices of companies, market position , growth rate of industry
and there dividends).

2. System provides financial reports of the brokerage house on monthly, quarterly and annual
basis.

3. System also provides clients accounting reports on monthly, quarterly and annual basis.

4. System also provides a report for number of orders placed by clients on monthly, quarterly and
annual basis.
The complete Internet trading system

How system Works


The brokerage house acquires a web-domain address and installs a website. The investors directly connect to
the brokerage house using the Internet, through which they can place their orders with the exchange and trade.
The brokerage house can design a website that is unique to their identity. They can also use this to offer many
other value-added products and services.

System allows

• Order submission by the investor over the Internet to the Stock Exchange via the broker
• Order routing to multiple exchanges as per investor choice
• Effective scalability to handle multi-increase of business with sophisticated risk measures
• A comprehensive fool-proof web security system Interface with information providers to provide real-
time market information
• Linking with payment gateways of banks and depository participants to offer seamless electronic
execution of transaction.

Investor Workstation

• Authentication for investors and brokers


• Investor Registration – registration enquiries
• Investor Support Services – customizable four Watch lists (10 stocks each), alerts over email),
suggestions, complaints, online
• Market Information Dissemination - personalized stock ticker, market news, charts, etc
• Order Collection and Management – order / modification order status enquiry, panic trade status
enquiry, etc
• Account Information - trading limits, obligations, portfolio summary, etc

Broker Administration Workstation

• Investor Management - registration management, investor information management, etc


• Risk Management - turnover limit, order limit, gross exposure limit, mark-to-market limit, etc
• Broker Management - stock management (download stock information, stock information
management, etc) Message Board Management
• Tools - broker-inbox, emailing, messaging, audit log, etc

Advantage of system

Real-time Market Information for all investors: Eliminates the need for investors to call telephonically and
ensure transparency in transactions

Scalable: Can be used by anyone from small brokers to large brokerage houses. It can serve the needs of both
institutional and retail clients

Round the Clock Services: The Internet never sleeps. Through System, customers can avail of continuous
trading services 24 hours-a-day, 7 days-a-week. Brokers can continually maintain their customers' account
information, downloaded and refreshed by the host system

Cost Advantages: System helps substantially reduce the cost of ownership of the Internet delivery platform.
In a business environment characterized by shrinking broking commissions and increasing software costs,
System can alter the cost equation in the broker's favor

No Compromise Security: User authentication based on passwords, digital certificates, smart cards, plus
passwords at login and transaction levels ensure fool-proof security. Secure Sockets and encryption
technologies are used for message authentication. Use of separate web and transaction servers and a provision
for a third party firewall between these two servers prevent hacking

Quick Response time: State-of-the-art technology, protection of investment - System's next generation
trading engine has fully defined access that offers an open system and does not constrain users to any single
hardware platform

Expendability: New features can be easily added through object-oriented design.


Overview of System
Business and Application Environment
The transactional operations have been given a life-like context, portraying the activity of a brokerage firm,
to help users relate intuitively to the components of the benchmark. The workload is centered on the activity
of processing brokerage trades and uses a schema, which is logically divided in four sets of tables.

System models the activity of brokerage firm that must manage customer accounts, execute customer trade
orders, and be responsible for the interactions of customers with financial markets. System does not attempt
to be a model of how to build an actual application. The following diagram illustrates the transaction flow of
the business model portrayed in the benchmark:

Customer Market

Customer
Market
Initiated Txn
Triggered Txn

Brokerage

Figure 1: System model – a brokerage firm

The purpose of a benchmark is to reduce the diversity of operations found in a production application, while
retaining the application's essential performance characteristics so that the workload can be representative of a
production system. A large number of functions have to be performed to manage a production brokerage
system. Many of these functions are not of primary interest for performance analysis, since they are
proportionally small in terms of system resource utilization or in terms of frequency of execution. Although
these functions are vital for a production system, they merely create excessive diversity in the context of a
standard benchmark and have been omitted in system.

The Company portrayed by the benchmark is a brokerage firm with customers who generate transactions
related to trades, account inquiries, and market research. The brokerage firm in turns interacts with financial
markets to execute orders on behalf of the customers and updates relevant account information.

The number of customers defined for the brokerage firm can be varied to represent the workloads of different
size businesses.

This benchmark is composed of a set of transactions that are executed against three sets of database tables that
represent market data, customer data, and broker data. A fourth set of tables contains generic dimension data
such as zip codes. The following diagram illustrates the key components of the environment:
Customers Brokers Market

Invoke the following transactions …

READ-WRITE READ-ONLY
•Market-Feed •Broker-Volume •Security-Detail
•Trade-Order •Customer-Position •Trade-Lookup
•Trade-Result •Market-Watch •Trade-Status
•Trade-Update

… against the following data

Customer Data Brokerage Data Market Data

Figure 2: System Application Components

The benchmark has been reduced to simplified form of the application environment. To measure the
performance of the system, a simple Driver generates Transactions and their inputs, submits them to the
system under Test, and measures the rate of completed Transactions being returned. To simplify the
benchmark and focus on the core transactional performance, all application functions related to User-Interface
and Display-Functions have been excluded from the benchmark. The System under Test is focused on
portraying the components found on the sever side of a transaction monitor or application server.
System database information
The primary metrics for system are tpsE, $/tpsE and availability date. System measures transactions per
second (tpsE).

When loading the database for system, the benchmark sponsor chooses the number of customers based on the
tpsE they are aiming for, keeping in mind that there are 500 customers per single tpsE. Customers can be
loaded only in blocks of 1,000. Some of the other system tables scale based on the number of customers
chosen.

The TPC provides code to generate the data for the system database. The system data generator uses names
from a Indian census and information from the BSE or NSE Stock Exchange to generate people’s names and
company information. This makes system data look like normal data.
Trading in system is done by Accounts. Accounts belong to Customers. Customers are serviced by Brokers.
Accounts trade Securities that are issued by Companies.

The total set of Securities that can be traded and the total set of Companies that issue Securities scales along
with the number of Customers. For each unit of 1,000 Customers, there are 685 Securities and 500 Companies
(with Companies issuing one to five Securities, mostly common shares, but some preferred as well).

All Companies belong to one of the 102 Industries. Each Industry belongs to one of the 12 market Sectors.

Each Account picks its average 10 Securities to trade from across the entire range of Securities.
Securities to be traded can be identified by the security (ticker) symbol or by the company name and security
issue.

Differences between customer tiers


The basic scaling unit of a system database is a set of 1,000 Customers. For each set of 1,000 Customers, 20%
belong to Tier 1, 60% to Tier 2, and 20% to Tier 3. Tier 2 Customers trade twice as often as Tier 1 Customers.
Tier 3 Customers trade three times as often as Tier 1 Customers. In general, customer trading is non-uniform
by tier within each set of 1,000 Customers.

Tier 1 Customers have 1 to 4 Accounts (average 2.5). Tier 2 Customers have 2 to 8 Accounts (average 5.0).
Tier 3 Customers have 5 to 10 Accounts (average 7.5). Overall, there is an average of five Accounts per
Customer.

The minimum and maximum number of Securities traded by each Account varies by Customer Tier and by the
number of Accounts for each Customer. The average number of Securities traded per Account is 10 (so the
average number of Securities traded per Customer is 50). For each Account, the same set of Securities is
traded for both the initial database population and for any benchmark run.

Customer partitioning
System scales with Customers. It is conceivable that Customer information could be partitioned into groups of
related Customers. This is called Customer Partitioning. The advantage of Customer Partitioning is that it
increases locality of reference within each sub-group of Customers. Transactions relating to a particular set of
Customers are directed to that set of Customers rather than to all Customers.
Trade types
Trade requests are either Buy (50%) or Sell (50%). These are further broken down into Trade Types,
depending on whether the request was a Market Order (60%) or a Limit Order (40%).

For Market Orders, the two trade types are Market-Buy (30%) and Market-Sell (30%). For Limit Orders, the
three trade types are Limit-Buy (20%), Limit-Sell (10%) and Stop-Loss (10%).

Market-Buy and Market-Sell are trade requests to buy and sell immediately at the current market price,
whatever price that may be. Limit-Buy is a request to buy only when the market price is at or below the
specified limit price. Limit-Sell is a request to sell only when the market price is at or above the specified
limit price. Stop-Loss is a request to sell only when (or if) the market price drops to or below the specified
limit price.

If the specified limit price has not been reached when the Limit Order is requested, it is considered an Out-of-
the-Money request and remains “Pending” until the specified limit price is reached. Reaching the limit price is
guaranteed to occur within 15 minutes based on benchmark implementation details. The act of noticing that a
“Pending” limit request has reached or exceeded its specified limit price and submitting it to the market
exchange to be traded is known as “triggering" of the pending limit order.

Effects of trading on holdings


For a given account and security, holdings will be either all long (positive quantities) or all short (negative
quantities).

Long positions represent shares of the security that were bought (purchased and paid for) by the customer for
the account. The customer owns the shares of the security and may sell them at a later time (hopefully, for a
higher price).

Short positions represent shares of the security that were borrowed from the broker (or Brokerage) and were
sold by the customer for the account. In the short-sale case, the customer has received the funds from that sell,
but still has to cover the sell by later purchasing an equal number of shares (hopefully at a lower price) from
the market and returning those shares to the broker.

Before the database is loaded, there are no trades and no positions in any security for any account. The TPC
provides code to generate the data for the database. This data generation code simulates running the
benchmark for 300 business days of initial trading, so that the initial database will be ready for benchmark
execution. The data-generation code also generates data for daily market closing price information for five
years of five-day work weeks, and five years’ worth of quarterly report data for all the companies.

If the first trade for a security in an account is a buy, a long position will be established (positive quantity in
HOLDING row). Subsequent buys in the same account for the same security will add holding rows with
positive quantities. Subsequent sells will reduce holding quantities or delete holding rows to satisfy the sell
trade. All holdings may be eliminated, in which case the position becomes empty. If the sell quantity still is
not satisfied, the position changes from long to short (see above).

If the first trade for a security in an account is a sell, a short position will be established (negative quantity in
HOLDING row). Subsequent sells in the same account for the same security will add holding rows with
negative quantities. Subsequent buys will reduce holding quantities (toward zero) or delete holding rows to
satisfy the buy trade. All holdings may be eliminated, in which case the position becomes empty. If the buy
quantity still is not satisfied, the position changes from short to long.

Database tables

System has 33 tables. The System database tables can be grouped into four categories:
• Customer – tables containing customer-related information
• Broker – tables containing data related to the brokerage firm and brokers
• Market – tables containing data related to the exchanges, companies, and securities that create the
financial market
• Dimension – tables containing generic information that is referenced by multiple fact tables

During the benchmark run:


• All customer tables are read.
• CUSTOMER_ACCOUNT balance is updated.
• HOLDING_SUMMARY table is updated.
• Records are appended to the HOLDING_HISTORY table.
• Records are updated, deleted from and inserted in the HOLDING table.

Customer Tables
ACCOUNT_PERMISSION Who can execute trades for accounts
CUSTOMER Customer information
CUSTOMER_ACCOUNT Accounts for each customer
CUSTOMER_TAXRATE Tax rates each customer pays
HOLDING Customer account’s security holdings
HOLDING_HISTORY History of how trades changed holding positions
HOLDING_SUMMARY Aggregate of customer account’s security holdings
WATCH_ITEM List of securities customers are tracking on their watch
lists
WATCH_LIST Customer’s security watch lists
Table 1: Customers

During the benchmark run:


• All broker tables are read.
• BROKER table is updated with the number of trades a broker has executed and the commission the
broker has earned so far.
• Records are appended to CASH_TRANSACTION, SETTLEMENT and TRADE_HISTORY tables.
• Records are appended and updated in the TRADE table.
• Records are inserted in and deleted from the TRADE_REQUEST table.
Broker Tables
BROKER Broker information
CASH_TRANSACTION Cash transaction information
CHARGE Information about trade charges
COMMISSION_RATE Commission rate information
SETTLEMENT Trade settlement information
TRADE Trade information
TRADE_HISTORY History of each trade through various stages
TRADE_REQUEST Pending limit trades
TRADE_TYPE Valid trade types
Table 2: Broker

During the benchmark run:


• All market tables are read.
• The LAST_TRADE table is updated many times a second.

Market Tables
COMPANY Information about companies with publicly traded
securities
COMPANY_COMPETITOR Information for the competitors of a given company and
the industry in which the company competes
DAILY_MARKET Daily market statistics for each security
EXCHANGE Financial exchange information
FINANCIAL Information about a company’s quarterly financial
reports
INDUSTRY Industry information
LAST_TRADE Latest price and trading volume for each security
SECTOR Market sector information
SECURITY Information about each security traded on any of the
exchanges
Table 3: Market

During the benchmark run, all the dimension tables are read.

Dimension Tables
ADDRESS Address information
STATUS_TYPE Status values
TAXRATE Tax rate information
ZIP_CODE Zip code information
Table 4: Dimension
SYSTEM transactions
Two of the metrics for system are tpsE and $/tpsE. These metrics are in transactions per second. Trade-Result
is the transaction that is counted for the metrics. Trade-Result is only 10% of the transaction mix.

System has 10 transactions that are part of the maintained transaction mix, and two other transactions. The
Data-Maintenance transaction is not part of the maintained transaction mix. The Data-Maintenance
transaction runs once a minute. The Trade-Cleanup transaction is run once before starting a benchmark run.
The following sections provide a short description of each transaction.

Broker-Volume
The Broker-Volume transaction is designed to emulate a brokerage house’s “up-to-the-minute” internal
business processing. An example of a Broker-Volume transaction would be a manager generating a report on
the current performance potential of various brokers. The transaction is a business intelligence type of query
that only does reads and is CPU-heavy.

Customer-Position
The Customer-Position transaction is designed to emulate the process of retrieving the customer’s profile and
summarizing their overall standing based on current market values for all assets. This is representative of the
work performed when a customer asks the question “What am I worth today?” The transaction is a read-only
transaction.

Market-Feed
The Market-Feed transaction is designed to emulate the process of tracking the current market activity. This is
representative of the brokerage house processing the “ticker-tape” from the market exchange. The transaction
is a read/write transaction.

Market-Watch
The Market-Watch transaction is designed to emulate the process of monitoring the overall performance of the
market by allowing a customer to track the current daily trend (up or down) of a collection of securities. The
collection of securities being monitored may be based upon a customer’s current holdings, a customer’s watch
list of prospective securities, or a particular industry. The transaction is a read-only transaction.

Security-Detail
The Security-Detail transaction is designed to emulate the process of accessing detailed information on a
particular security. This is representative of a customer doing research on a security prior to making a decision
about whether to execute a trade. The transaction is a read-only transaction.

Trade-Lookup
The Trade-Lookup transaction is designed to emulate information retrieval by either a customer or a broker to
satisfy their questions regarding a set of trades. The various sets of trades are chosen such that the work is
representative of:

• Performing general market analysis


• Reviewing trades for a period of time prior to the most recent account statement
• Analyzing past performance of a particular security
• Analyzing the history of a particular customer holding

The transaction is a read-only transaction. This transaction generates a lot of disk IO because it looks for older
records that don’t tend to be in memory because they were not used recently.

Trade-Order
The Trade-Order transaction is designed to emulate the process of buying or selling a security by a Customer,
Broker, or authorized third-party. If the person executing the trade order is not the account owner, the
transaction will verify that the person has the appropriate authorization to perform the trade order. The
transaction allows the person trading to execute buys at the current market price, sells at the current market
price, or limit buys and sells at a requested price. The transaction also provides an estimate of the financial
impact of the proposed trade by providing profit/loss data, tax implications, and anticipated commission fees.
This allows the trader to evaluate the desirability of the proposed security trade before either submitting or
canceling the trade. The transaction is a read/write transaction.

Trade-Result
The Trade-Result transaction is designed to emulate the process of completing a stock market trade. This is
representative of a brokerage house receiving from the market exchange the final confirmation and price for
the trade. The customer’s holdings are updated to reflect that the trade has completed. Estimates generated
when the trade was ordered for the broker commission and other similar quantities are replaced with the actual
numbers, and historical information about the trade is recorded for later reference. The transaction is a
read/write transaction.

Trade-Status
The Trade-Status transaction is designed to emulate the process of providing an update on the status of a
particular set of trades. It is representative of a customer reviewing a summary of the recent trading activity
for one of their accounts. The transaction is a read-only transaction.

Trade-Update
The Trade-Update transaction is designed to emulate the process of making minor corrections or updates to a
set of trades. This is analogous to a customer or broker reviewing a set of trades, and discovering that some
minor editorial corrections are required. The various sets of trades are chosen such that the work is
representative of reviewing:

• General market trends


• Trades for a period of time prior to the most recent account statement
• Past performance of a particular security
The transaction is a read/write transaction. This transaction generates a lot of disk I/O because it looks for
older records that don’t tend to be in memory because they were not used recently.

Data-Maintenance
The Data-Maintenance transaction is designed to emulate the periodic modifications to data that is mainly
static and used for reference. This is analogous to updating a customer’s e-mail address or other data that
seldom changes. The transaction is a read/write transaction.

Trade-Cleanup
The Trade-Cleanup transaction is used to cancel any pending or submitted trades from the database. The
transaction is a read/write transaction that is only run once before a benchmark run.

Technologies:

? J2EE: Application Architecture

? Oracle 9i: Database

? Dreamweaver: Design Tool (for web application)

? OS: windows xp, windows server 2003

References:

1. www.wikipedia.com

2. MIS by D.P Goyal

3. MIS by O’Brien

4. www.softech.ae

5. www.scandentsolutions.com

You might also like