• 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.
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.
• • • •
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 realtime market information Linking with payment gateways of banks and depository participants to offer seamless electronic execution of transaction.
• • • • • • 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
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 Initiated Txn
Market Triggered Txn
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:
Invoke the following transactions …
READ-WRITE •Market-Feed •Trade-Order •Trade-Result •Trade-Update READ-ONLY •Broker-Volume •Customer-Position •Market-Watch •Security-Detail •Trade-Lookup •Trade-Status
… against the following 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.
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 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-ofthe-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 Who can execute trades for accounts Customer information Accounts for each customer Tax rates each customer pays Customer account’s security holdings History of how trades changed holding positions Aggregate of customer account’s security holdings List of securities customers are tracking on their watch lists Customer’s security watch lists
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 information Cash transaction information Information about trade charges Commission rate information Trade settlement information Trade information History of each trade through various stages Pending limit trades Valid trade types
During the benchmark run: • All market tables are read. • The LAST_TRADE table is updated many times a second. Market Tables Information about companies with publicly traded securities Information for the competitors of a given company and the industry in which the company competes Daily market statistics for each security Financial exchange information Information about a company’s quarterly financial reports Industry information Latest price and trading volume for each security Market sector information Information about each security traded on any of the exchanges
COMPANY COMPANY_COMPETITOR DAILY_MARKET EXCHANGE FINANCIAL INDUSTRY LAST_TRADE SECTOR SECURITY Table 3: Market
During the benchmark run, all the dimension tables are read. Dimension Tables Address information Status values Tax rate information Zip code information
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.
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.
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.
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.
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.
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.
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.
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.
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.
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.
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.
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.
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