Method and Apparatus for Processing Financial Information at Hardware Speeds Using FPGA Devices
A method and apparatus use a reconfigurable logic device to process a stream of financial information at hardware speeds. The reconfigurable logic device can be configured to perform data processing operations on the financial information stream. Examples of such data processing operations include data processing operations to compute a latest stock price, a minimum stock price, and a maximum stock price.
1 . A method for processing financial information, the method comprising:
streaming financial information through a reconfigurable logic device; and
the reconfigurable logic device performing a data processing operation on the financial information on a streaming basis as the financial information streams therethrough.
2 . The method of claim 1 wherein the streaming step comprises the reconfigurable logic device receiving the streaming financial information as an input, and wherein the performing step comprises the reconfigurable logic device generating processed financial information on a streaming basis at hardware processing speeds from the streaming financial information input in accordance with the data processing operation.
3 . The method of claim 2 wherein the performing step comprises the reconfigurable logic device performing a data reduction operation on the streaming financial information to generate the processed financial information.
4 . The method of claim 3 wherein the reconfigurable logic device comprises a programmable logic device (PLD), the PLD performing the method steps.
5 . The method of claim 3 wherein the reconfigurable logic device comprises a field programmable gate array (FPGA), the FPGA performing the method steps.
6 . The method of claim 5 wherein the streaming financial information comprises data representative of a plurality of stocks and data representative of a plurality of prices for the stocks, and wherein the performing step comprises the FPGA performing a running minimum stock price operation on the streaming financial information to compute a minimum price for a stock on a streaming basis at hardware processing speeds.
7 . The method of claim 5 wherein the streaming financial information comprises data representative of a plurality of stocks and data representative of a plurality of prices for the stocks, and wherein the performing step comprises the FPGA performing a running maximum stock price operation on the streaming financial information to compute a maximum price for a stock on a streaming basis at hardware processing speeds.
8 . The method of claim 5 wherein the streaming financial information comprises data representative of a plurality of stocks, data representative of a plurality of prices for the stocks, and data representative of a plurality of times associated with the stock prices, and wherein the performing step comprises the FPGA performing a running latest stock price operation on the streaming financial information to compute a latest price for a stock on a streaming basis at hardware processing speeds.
9 . The method of claim 5 wherein the streaming financial information comprises data representative of a plurality of stocks, data representative of a plurality of prices for the stocks, and data representative of a plurality of times associated with the stock prices, and wherein the performing step comprises the FPGA simultaneously performing (1) a running minimum stock price operation on the streaming financial information to compute a minimum price for a stock on a streaming basis at hardware processing speeds, (2) a running maximum stock price operation on the streaming financial information to compute a maximum price for a stock on a streaming basis at hardware processing speeds, and (3) a running latest stock price operation on the streaming financial information to compute a latest price for a stock on a streaming basis at hardware processing speeds.
10 . The method of claim 3 wherein the streaming step comprises:
the reconfigurable logic device reading the financial information into a data shift register from a data source; and
the reconfigurable logic device streaming the financial information out of the data shift register into decision logic deployed on the reconfigurable logic device, wherein the decision logic performs the data reduction operation.
11 . The method of claim 10 wherein the data source comprises a mass storage medium.
12 . The method of claim 10 wherein the data shift register is deployed on the reconfigurable logic device.
13 . An apparatus for processing financial information, the apparatus comprising:
a reconfigurable logic device, wherein the reconfigurable logic device is configured to (1) receive streaming financial information, and (2) perform a data processing operation on the financial information on a streaming basis as the financial information streams therethrough.
14 . The apparatus of claim 13 wherein the reconfigurable logic device is further configured to (1) receive the streaming financial information as an input, and (2) generate processed financial information on a streaming basis at hardware processing speeds from the streaming financial information input in accordance with the data processing operation.
15 . The apparatus of claim 14 wherein the reconfigurable logic device is further configured to perform a data reduction operation on the streaming financial information to generate the processed financial information.
16 . The apparatus of claim 15 wherein the reconfigurable logic device comprises a programmable logic device (PLD), the PLD being configured to perform the receive operation and the data reduction operation.
17 . The apparatus of claim 15 wherein the reconfigurable logic device comprises a field programmable gate array (FPGA), the FPGA being configured to perform the receive operation and the data reduction operation.
18 . The apparatus of claim 17 wherein the reconfigurable logic device is configured for processing streaming financial information that comprises data representative of a plurality of stocks and data representative of a plurality of prices for the stocks, and wherein the FPGA is configured to perform a running minimum stock price operation on the streaming financial information to compute a minimum price for a stock on a streaming basis at hardware processing speeds.
19 . The apparatus of claim 17 wherein the reconfigurable logic device is configured for processing streaming financial information that comprises data representative of a plurality of stocks and data representative of a plurality of prices for the stocks, and wherein the FPGA is configured to perform a running maximum stock price operation on the streaming financial information to compute a maximum price for a stock on a streaming basis at hardware processing speeds.
20 . The apparatus of claim 17 wherein the reconfigurable logic device is configured for processing streaming financial information that comprises data representative of a plurality of stocks, data representative of a plurality of prices for the stocks, and data representative of a plurality of times associated with the stock prices, and wherein the FPGA is configured to perform a running latest stock price operation on the streaming financial information to compute a latest price for a stock on a streaming basis at hardware processing speeds.
21 . The apparatus of claim 17 wherein the reconfigurable logic device is configured for processing streaming financial information that comprises data representative of a plurality of stocks, data representative of a plurality of prices for the stocks, and data representative of a plurality of times associated with the stock prices, and wherein the FPGA is configured to simultaneously perform (1) a running minimum stock price operation on the streaming financial information to compute a minimum price for a stock on a streaming basis at hardware processing speeds, (2) a running maximum stock price operation on the streaming financial information to compute a maximum price for a stock on a streaming basis at hardware processing speeds, and (3) a running latest stock price operation on the streaming financial information to compute a latest price for a stock on a streaming basis at hardware processing speeds.
22 . The apparatus of claim 15 further comprising a data source, and wherein the reconfigurable logic device is further configured to (1) read the financial information into a data shift register from the data source, and (2) stream the financial information out of the data shift register into decision logic deployed on the reconfigurable logic device, wherein the decision logic is configured to perform the data reduction operation.
23 . The apparatus of claim 22 wherein the data source comprises a mass storage medium.
24 . The apparatus of claim 22 wherein the data shift register is deployed on the reconfigurable logic device.