System and method for intraday netting payment finality6076074Abstract A system is provided for continuous intraday final settlement of payment orders among a plurality of financial-institution participants. The system includes a central controlling agent, including a central computer operable to communicate electronically with satellite computer stations of the plurality of participants to receive payment orders therefrom, and to control release of payments among the plurality of participants; and means for storing a plurality of prefunded balances in a prefunded balance account, each balance representing the right of one of the participants to payment from the prefunded balance account and containing an initial prefunded balance for each participant at the start of each business day. Claims What is claimed is: Description BACKGROUND OF THE INVENTION
______________________________________
Bank A
Assets Liabilities
______________________________________
Due from FRB Deposits
-10,000 Customer X -10,000
______________________________________
Step 2: FRB1 debits Bank A's reserve account and sends payment order to FRB2.
______________________________________
FRB 1
Assets Liabilities
______________________________________
Interdistrict settlement
Deposits
account -10,000 Bank A -10,000
______________________________________
Step 3: FRB2 receives payment order and credits Bank B's account and sends advice to Bank B instructing it to pay Customer Y.
______________________________________
FRB 2
Assets Liabilities
______________________________________
Interdistrict settlement
Deposits
account +10,000 Bank B +10,000
______________________________________
Step 4: Bank B credits Customer Y's account and sends advice of credit. Both Bank B and Customer Y have received final funds and the payment is final.
______________________________________
Bank B
Assets Liabilities
______________________________________
Due from FRB2 Deposits
+10,000 Customer Y +10,000
______________________________________
2. CHIPS The Clearing House Interbank Payments System ("CHIPS") is a funds-transfer system operated by The Clearing House Interbank Payments Company L.L.C. ("Clearing House"). It is a multilateral net settlement system, meaning that a bank that sends a CHIPS payment message to another participant incurs an obligation to pay the receiving participant the amount of the transfer but that this obligation is netted against the obligation of the other participant to pay the first participant, giving each participant a net credit position or a net debit position. When one participant settles for others, its position is netted against the net positions of each other participant for which it settles, giving each settling CHIPS participant a single "net net" position (credit or debit). These positions are settled at the end of the day. While it is theoretically possible for a participant with a net debit position to fail before it is able to settle its obligation, the Clearing House has instituted stringent credit controls and settlement assurance methods, and in 25 years of operation CHIPS has never failed to settle. CHIPS is open to commercial banking institutions with offices in the United States. There are currently 83 active participants, 18 of which are settling participants. Each participant that is not a settling participant must arrange with a settling participant to settle on its behalf. (The specifics of the CHIPS settlement will be discussed below.) In a typical CHIPS transfer, Bank A sends a payment message from its computer directly to the CHIPS computer over leased, dedicated telephone lines. The CHIPS computer authenticates and edits the payment message and sends a corresponding payment message to Bank B and an acknowledgement to Bank A. Example 2 shows a CHIPS transfer with appropriate accounting entries. EXAMPLE 2 CHIPS transfer in which Customer X orders Bank A to pay $10,000 to Customer Y at Bank B. Step 1: Customer X sends payment order to Bank A. Step 2: Bank A sends payment message to Bank B via CHIPS.
______________________________________
Bank A
Assets Liabilities
______________________________________
Note: Obligation Deposits
to pay $10,000 which
Customer X -10,000
is offset by obligation
of Bank B to pay for
its transfers to Bank A.
______________________________________
Step 3: Bank B notifies Customer Y that it has received $10,000 for his account. Note: Although Bank B may give Customer Y use of the funds, the payment is not final until settlement has taken place. Step 4: Settlement. 3. Correspondent Balances If a bank has a correspondent relationship with the bank holding the beneficiary's account, or if the bank does not have direct access to a funds transfer network, it may use debits and credits to various correspondent accounts to complete a funds transfer. Often a bank will send a payment order over the network operated by the Society for Worldwide Interbank Financial Telecommunication ("S.W.I.F.T."), with payment of the sender's obligation effected through adjustment of correspondent balances or other means. Payment orders may also be sent by telex or other communications medium. The actual mechanics of performing these transactions will vary from bank to bank. Examples 3 and 4 below show two different ways in which a funds transfer can be completed using a correspondent account. EXAMPLE 3 Customer X orders Bank A to send $10,000 to Customer Y's account at Bank B. Bank A has correspondent account at Bank B. Step 1: Customer X sends payment order to Bank A. Step 2: Bank A debits Customer Y's account and sends payment order to Bank B authorizing Bank B to debit Bank A's account.
______________________________________
Bank A
Assets Liabilities
______________________________________
Due from Bank B Deposits
-10,000 Customer X -10,000
______________________________________
Step 3: Bank B debits Bank A's account and credits Customer Y's account.
______________________________________
Bank B
Assets Liabilities
______________________________________
Deposits
Bank A -10,000
Customer Y +10,000
______________________________________
Step 4: Bank B informs Customer Y that the funds are available. EXAMPLE 4 Customer X orders Bank A to send $10,000 to Customer Y's account at Bank B. Bank A holds correspondent account for Bank B. Step 1: Customer X sends payment order to Bank A. Step 2: Bank A debits Customer X's account and credits Bank B's account.
______________________________________
Bank A
Assets Liabilities
______________________________________
Deposits
Bank B +10,000
Customer X -10,000
______________________________________
Step 3: Bank A sends payment order to Bank B. Step 4: Bank B credits Customer Y's account.
______________________________________
Bank B
Assets Liabilities
______________________________________
Due from A Deposits
+10,000 Customer Y +10,000
______________________________________
Step 5: Bank B informs Customer Y that the funds are available for use. 4. Book Transfers A customer may ask his bank to transfer funds from his account and pay another account on the books of the same bank (either another customer's account or a different account of the ordering customer). These are called book transfers because they take place on the books of a single bank. Procedures used to effect these transfers and recordkeeping arrangements vary from bank to bank. Example 5 shows the accounting entries for a book transfer. EXAMPLE 5 Customer X orders Bank A to transfer funds to the account of Customer Y on Bank A's books.
______________________________________
Bank A
Assets Liabilities
______________________________________
Deposits
Customer X -10,000
Customer Y +10,000
______________________________________
D. Paying The Beneficiary The last step in the process of a funds transfer is paying the beneficiary. In all but a small number of cases, this is accomplished when the beneficiary's bank credits the beneficiary's account on its books and allows the beneficiary use of the funds. Under Federal Reserve Board regulations, a bank must make the proceeds of a funds transfer available to the beneficiary no later than the opening of business on the day after the bank has received final payment. For Fedwire payments, final payment occurs when the amount of the payment order is credited to the receiving bank's account at the Federal Reserve Bank or when notice of the credit is sent, whichever occurs first. For CHIPS transfers, final payment occurs when settlement is completed. For transfers using a correspondent account in which the sender credits the account on its books of the receiving bank (Example 4), final payment occurs when the credit is withdrawn or, if it is not withdrawn, at midnight of the day on which the credit is withdrawable and the receiving bank learns of the fact. Where the receiving bank debits the sender's account (Example 3), final payment occurs when the debit is made to the extent the debit is covered by a withdrawable credit in the account. For a very small number of payments, the beneficiary's bank may use methods other than a credit to the beneficiary's account. For example, a bank may hold funds to be paid to the beneficiary upon presentation of proper identification, or the bank may pay a beneficiary by sending a check. E. Interbank Settlements Both of the above-mentioned major funds-transfer systems in the United States provide for settlement, i.e., the actual transfer of value in good funds that results in final payment. Once settlement is accomplished, payments are irrevocable (except in cases of duplicate or erroneous payments). The actual mechanics of the settlement in Fedwire and CHIPS differ, reflecting the differences between a real-time, gross settlement system operated by the central bank and a privately operated multilateral netting system. 1. FEDWIRE From the point of view of a bank that sends a payment order to or receives a payment order from a Federal Reserve Bank, Fedwire funds transfers are final when made. The sender's Federal Reserve Bank debits the sender's account as of the time the Federal Reserve Bank acts on the payment order. The receiving bank receives final payment when its Federal Reserve Bank credits its account or sends an advice of credit, whichever is earlier. At this point, the beneficiary has been paid, and the originator's obligation to pay the beneficiary is discharged. The receiving bank has good funds in its reserve or clearing account that can be withdrawn and that counts towards fulfillment of the bank's required reserve balance. Viewed from the inside, however, Fedwire is a net settlement system involving 12 settling banks, each of which is a separate corporation with its own balance sheet, and transactions must be settled among these banks. For this purpose, the Federal Reserve Board maintains interdistrict settlement accounts for the Federal Reserve Banks. This account appears on each Federal Reserve Bank's balance sheet. Each transaction between Federal Reserve Banks results in a credit to the interdistrict settlement account of one Federal Reserve Bank and a corresponding debit to the other's. As a result of the accumulated debits and credits, each Federal Reserve Bank has an accumulated position that is either a debit or a credit, and on the consolidated balance sheet of all 12 Federal Reserve Banks, these debits and credits net to zero. Once each year the interdistrict settlement account of each Federal Reserve Bank is brought to zero by the reallocation of the Federal Reserve Bank's ownership interest in the System Open Market Account--the consolidated holdings of all Federal Reserve Banks' government securities. One disadvantage of Fedwire is that all participants in the system in good standing can incur a large daylight overdraft position. Banks incurring such overdrafts are charged a fee by the Federal Reserve. 2. CHIPS In contrast, CHIPS, as it is currently configured, is a true multilateral net settlement system. As explained above, the release of a payment message creates an obligation to settle that is netted against the obligation of the receiving participant to settle for payments that it sent. Each bank thus has an overall net position that is either a debit or credit. At the end of each day, each participant receives a report showing the total value of all payment messages sent, the total value of all payment messages received, and a net figure (debit or credit) showing the difference. Each settling participant receives a report showing in addition to its own position, the net position of each participant it settles for and an aggregate balance showing an overall net position that includes its own position and the positions of each participant it settles for. Each settling participant is then given 45 minutes within which it must notify the Clearing House if it decides not to settle for one or more of the participants for which it is the designated settling participant. Once the agreement to settle on the basis of the report has been received from each settling participant, the Clearing House instructs the Federal Reserve Bank of New York to open the CHIPS settlement account that it holds on behalf of all CHIPS settling participants and sends a notice to all settling participants that settlement may begin. After this notice has been sent, each settling participant that has an aggregate net debit position has 15 minutes to send a Fedwire funds transfer in the amount of its debit position to the CHIPS settlement account at the Federal Reserve Bank of New York. Once all these Fedwires have been completed, the Clearing House checks the balance in the account and then sends Fedwire payment orders from the settlement account to the accounts of those settling participants that are in a net credit position. Once all of these Fedwire payment orders have been sent, settlement is complete, and all CHIPS payments made that day are finally paid. A multilateral net settlement system that provides for settlement at the end of the day is subject to the risk that a participant with a net debit position (a "debtor participant") would be unwilling or unable to pay its settlement obligation. Absent some measures to make up for the debtor participant's failure, a failure of this kind could mean that the system would fail to settle, which could mean that the funds transfers that were processed by the netting system on the date of the failure would not be completed. Depending on the number and value of the payments handled by the funds-transfer system, such a failure could have serious deleterious effects on the surviving participants and world financial markets generally. CHIPS has taken a number of steps to control the risk of a settlement failure. In 1984, it required each of its participants to establish "bilateral credit limits" on each other participant as a measure of the credit risk that it would be willing to accept from the other participant. In 1986, CHIPS took a further step by establishing "sender net debit caps" on each participant as a percentage of the aggregate of the bilateral limits that had been established by other participants. This control limits the amount of risk that a participant can present to the system. In 1990 CHIPS took the further step of requiring each of its participants to agree to pay a portion of a failed participant's settlement obligation. This "additional settlement obligation" is collateralized by Treasury securities pledged for this purpose and held at FRBNY. This collateralized loss-sharing arrangement assured that CHIPS would be able to settle even if the participant with the highest debit cap were to fail at its greatest possible debit position. (Called the "Lamfalussy Standard" because it was articulated by a working group of the Bank for International Settlements chaired by Alexandre Lamfalussy. CHIPS had in fact anticipated the Lamfalussy Standard and had adopted this risk-control measure before the BIS report had been issued.) In 1994, CHIPS began to strengthen its existing risk controls so that by 1997 the two banks with the highest debit caps would fail simultaneously with each at its greatest possible debit position, and CHIPS would still be able to settle (referred to as a "Lamfalussy+1 Standard"). The same loss-sharing formula would allow CHIPS to settle if a large number of smaller banks were to fail. Despite these measures, there remains the risk that a catastrophic financial crisis could result in a settlement failure on CHIPS with the result that all of the payment messages released would have to be "unwound"; i.e., all payment messages be pulled back from the receiving participant and returned to the sending participant, who would be free to decide whether or not the payment should be sent. 3. German EAF 2 System A third type of system, which uses elements of both the gross settlement and net settlement systems, is the Electronic Clearing Frankfurt (EAF 2) system, operated in Frankfurt by the Deutsche Bundesbank, the central bank of Germany. EAF 2's operating day has two phases. In phase 1 (8:00 a.m. to 12:45 p.m.), payment orders received from financial institutions are entered into the system and offset bilaterally. At regular intervals of approximately 20 minutes, final payments are available to the recipient credit institution in phase 1, as in a gross settlement system. The proceeds of the payment order can thereafter be made available to the beneficiary, without credit risk to the receiving bank. In a subsequent phase 2 (1:00 p.m. to 2:15 p.m.), an attempt is made to effect two-stage multilateral clearing of the remaining payments, which have not been netted bilaterally during the first phase. The crucial difference from multilateral clearing, as it exists at present, lies in the avoidance of the systemic risk. If there are uncovered debit balances, no unwinding, involving the exclusion of a participant and the return of all payments associated with the excluded participant, will take place; instead, only individual payments will be returned. These individual payments are treated as uncovered payments, as in a gross settlement system. In phase 1, EAF 2 is very similar to a gross settlement system in which individual payments are executed after cover is available. It is based on the principle that, in bilateral relations, incoming payments are used preferably instead of account balances as cover for outgoing payments, by offsetting them against each other in 20-minute cycles, at which point they become final. The use of liquid funds as working balances, in the form of account balances, is necessary only to a limited extent, compared with a purely gross settlement system, in that the amounts of counter-payments included in the offsetting procedure do not match exactly. In EAF 2, in contrast to a net settlement system, incoming and outgoing payments, which are matched as far as possible, in terms of their amount, are offset against each other. The payments not included in the offsetting procedure are then carried over into queues for the next processing cycle. By contrast, in a net settlement system, a net balance is calculated as the difference between all incoming and outgoing payments, which is settled, in the case of CHIPS, for example, by debits or credits to an account at the end of day. In EAF 2 the participants themselves determine how much liquidity or working balances in the form of so-called maximum sender amounts they wish to make available to clear residual differences between the payments included in the offsetting in the particular bilateral relation concerned. In this way, they limit the extent to which they are willing to resort to their own funds, in excess of those received from the counterparty. These maximum sender amounts are covered by the transfer of liquidity to a special account of a participant, whose credit balance has been assigned to the bilateral party concerned. Apart from that, the system takes advantage of the high level of two-way payments to conserve liquidity. At the end of phase 1, in order to simplify accounting, all bilateral debit balances of each participant are aggregated into a single overall credit balance, and both overall balances are booked on the giro accounts (a type of German draft account) and the assigned amounts released. At the beginning of phase 2 (about 1.00 p.m.), there is an initial multilateral clearing process of the payments not offset in phase 1. If debit balances are not covered, the maximum volume of residual payments, which is covered by liquidity on the giro accounts, is calculated on the basis of an algorithm for sorting out individual payments. These residual payments then become final immediately. With the aid of the objective selection criteria predefined by the algorithm, individual payments that have caused the uncovered debit balances are identified. The individual payments that are regarded as uncovered are set aside provisionally pending the execution of the second multilateral clearing, and the revised balances are booked on the Bundesbank giro accounts. Subsequently, the participants are granted a 45-minute period to acquire cover. Technically, this can be obtained in two different ways: A payment input from the EIL-ZV (the gross settlement system by the Bundesbank) increases the account balance, which is then used to cover the net balances. A payment input in the EAF 2 itself (in favor of participants with debit balances) changes the net balances between the participants; the liquidity on the giro accounts remain unchanged. If net balances arising from the subsequent second multilateral clearing are still uncovered, no unwinding, involving the exclusion of a participant, is performed. Instead, by means of the above-mentioned algorithm, individual payments are now finally withdrawn until the covering funds on the giro accounts are sufficient. Thus the EAF 2 clearing and settlement is always completed, and the systemic risk typical of net settlement procedures is avoided by ruling out an unwinding of a high volume of payments. The individual payments that are treated as uncovered are deemed to be revoked and are not executed. The finality of the payments offset bilaterally in phase 1 and cleared and settled multilaterally in phase 2 is not affected by this. This procedure is also the same as that used in a gross settlement system, where uncovered payments remaining in queues are returned without affecting the finality of payments that have already been executed. Payments that have not been executed can be either entered on the same day into a gross settlement system, such as the German EIL-ZV system, whose operating hours may be extended slightly for this reason, or re-entered in EAF 2 the following day. The EAF 2 system has several drawbacks. For one thing, although final settlement occurs throughout the day, the occurrences are at 20 minute intervals. Also, although the system allows prefunded accounts to be set up by individual institutions, each account is created for use in offsetting payments to a preselected financial institution. For example, Bank A may set up an account for offsetting payments and receipts vis-a-vis Bank B, and only Bank B, and another account for Bank A's relations with Bank C, and so on. Therefore, given this background, the need exists for a system that allows for continuous intraday final settlement of payments by means of prefunded accounts of participating financial institutions that are used to offset payments and receipts as against all other participants. SUMMARY OF THE INVENTION In view of the above deficiencies of the prior art, an object of the present invention is to provide a system and method for continuous intraday final settlement of payment orders between banks in which the system receives payment orders from and transmits payment orders to financial institutions so that the payments are finally settled when transmitted. The system requires minimum auxiliary funding and has delays that vary with payment size but that are acceptably small, and a high percentage of the total dollar volume is released before cutoff. In furtherance of this and other objects of the present invention, there is provided a system for continuous intraday final settlement of payment orders among a plurality of financial institutions ("participants"), each having an associated satellite computer station operable to transmit payment orders electronically and each being operable to function as a payment receiving participant and a payment sending participant. The system comprises: (a) a central controlling agent, including a central computer operable to communicate electronically with the satellite computer stations of the participants to receive payment orders therefrom, and to control release of payment orders to the participants; and (b) means for storing a plurality of prefunded balances in a prefunded balance account, each balance representing the right of one of the participants to payment from the prefunded balance account and containing an initial prefunded balance for each participant at a start of each business day. The central computer is operable on a continuous basis: (1) upon receipt of a payment order by said central controlling agent from one of said participants, operating as a sending participant, for payment to another of said participants, operating as a receiving participant, to categorize each received payment order as small if it is less than a predetermined percentage of one of the initial prefunded balance for the associated sending participant and the initial prefunded balance for the associated receiving participant, and as large otherwise; (2) to store the received payment order in a queue maintained by said central computer; (3) to monitor the queue for previously stored small payment orders as candidates for immediate release for payment; (4) to determine if release of a candidate small payment order for payment will cause available balances for both the sending participant and the receiving participant associated with the candidate small payment order to fall within respective predetermined limits; (5) if the determination in step (4) is positive, to release the candidate small payment order by debiting the available balance of the sending participant and crediting the available balance of the receiving participant by the amount of the associated candidate small payment order; (6) to monitor the queue for previously stored target large payment orders for payment from a sending participant to a receiving participant; (7) to release a target large payment order stored in the queue by performing multilateral batching (i) by forming a first tree comprised of the target payment order and, if necessary, helper payment orders in a direction towards the sending participant of the target payment order, from at least one sending participant other than the sending participant of the target large payment order; (ii) by forming a second tree comprised of the target payment order and, if necessary, helper payment orders in a direction away from the receiving participant of the large target payment order, to at least one receiving participant other than the receiving participant of the target payment order; (iii) debiting the available balances of the sending participant of the target large payment order and of the sending participants of the helper payment orders in a multilateral batch comprising the target and helper payment orders of the first and second trees by the amounts of each respective payment order; and (iv) crediting the balances of the receiving participant of the target large payment and of the receiving participants of the helper payment orders in the multilateral batch by the amounts of the respective payment orders; the multilateral batch having been chosen so that after the payment orders comprising the first and second trees are released, the resulting position in the available balance of each participant involved in the multilateral batching falls within predetermined limits. Preferably, the computer system is operable to selectively offset, in a bilateral batch, the amount of a target large payment order by searching the queue for a previously queued second payment order from the associated receiving participant of the target large payment order; to generate a pseudo-payment order in an amount of a net difference between the target large payment order and the second payment order; and to store the pseudo-payment order in the queue. Also in furtherance of the above and other objects, there is provided a method for continuous intra-day final settlement of payments among a plurality of participants, each having an associated satellite computer station operable to transmit payment orders electronically and each being operable to function as a payment receiving participant and a payment sending participant by a central controlling agent including a central computer operable to communicate electronically with the satellite computer stations of the plurality of participants to receive payment orders therefrom, and to control release of payments to the plurality of participants; and means for storing a plurality of prefunded balances in a prefunded balance account, each balance representing the right of one of the participants to payment from the account in which the prefunded balances are held and containing an initial prefunded balance for each participant at a start of each business day. The method comprises the steps of: (1) upon receipt of a payment order by the central controlling agent from one of the participants, operating as a sending participant, for payment to another of the financial institutions, operating as a receiving participant, categorizing each received payment order as small if it is less than a predetermined percentage of one of the initial prefunded balance for the associated sending participant and the initial prefunded balance for the associated receiving participant, and as large otherwise; (2) storing the received payment order in a queue maintained by the central computer; (3) monitoring the queue for previously stored small payment orders as candidates for immediate release for payment; (4) determining if release of a candidate small payment order for payment will cause available balances for both the sending participant and the receiving participant associated with the candidate small payment order to fall within respective predetermined limits; (5) if the determination in step (4) is positive, releasing the candidate small payment order by debiting the available balance of the sending participant crediting the available balance of the receiving participant by the amount of the associated candidate small payment order; (6) monitoring the queue for previously stored target large payment orders for payment from a sending participant to a receiving participant; (7) releasing a target large payment order stored in the queue by performing multilateral batching (i) by forming a first tree comprised of the target payment order and, if necessary, helper payment orders in a direction towards the sending participant of the target payment order, from at least one sending participant other than the receiving participant of the target large payment order; (ii) by forming a second tree comprised of the target payment order and, if necessary, helper payment orders in a direction away from the receiving participant of the large target payment order, to at least one receiving participant other than the receiving participant of the target payment order; (iii) debiting the available balances of the sending participant of the target large payment order and of the sending participants of the helper payment orders in a multilateral batch comprising the target and helper payment orders of the first and second trees by the amounts of each respective payment order; and (iv) crediting the balances of the receiving participant of the target large payment and of the receiving participants of the helper payment orders in the multilateral batch by the amounts of the respective payment orders; the multilateral batch having been chosen so that after the payment orders comprising the first and second trees are released, the resulting position in the available balance of each participant involved in the multilateral batching falls within predetermined limits. Preferably, the method further comprises a step of selectively offsetting, in a bilateral batch, the amount of a target large payment order by searching the queue for a previously queued second payment order from the associated receiving participant of the target large payment order; generating a pseudo-payment order in an amount of a net difference between the target large payment order and the second payment order; and storing the pseudo-payment order in the queue. In furtherance of this and other objects of the present invention, there further is provided a computer-readable medium storing code executable by a central computer, the code controlling the central computer to perform a method for continuous intraday final settlement of payments among a plurality of participants, each having an associated satellite computer station operable to transmit payment orders electronically and each being operable to function as a payment receiving participant and a payment sending participant. The central computer forms a part of a central controlling agent and is operable to communicate electronically with the satellite computer stations of the plurality of participants to receive payment orders therefrom, to control release of payments to the plurality of participants, and to control means for storing a plurality of prefunded balances in a prefunded balance account, each balance representing the right of one of the participants to payment from the account in which the prefunded balances are held and containing an initial prefunded balance for each participant at a start of each business day. The method comprises the steps of: (1) upon receipt of a payment order by the central controlling agent from one of the participants, operating as a sending participant, for payment to another of the participants, operating as a receiving participant, categorizing each received payment order as small if it is less than a predetermined percentage of one of the initial prefunded balance for the associated sender financial institution and the initial prefunded balance for the associated receiver financial institution, and as large otherwise; (2) storing the received payment order in a queue maintained by the central computer; (3) monitoring the queue for previously stored small payment orders as candidates for immediate release for payment; (4) determining if release of a candidate small payment order for payment will cause available balances of both the sending participant and the receiving participant associated with the candidate small payment order to fall within respective predetermined limits; (5) if the determination in step (4) is positive, releasing the candidate small payment order by debiting the available balance of the sending participant and crediting the available balance of the receiving participant by the amount of the associated candidate small payment order; (6) monitoring the queue for previously stored target large payment orders for payment from a sending participant to a receiving participant; (7) releasing a target large payment order stored in the queue by performing multilateral batching (i) by forming a first tree comprised of the target payment order and, if necessary, helper payment orders in a direction towards the sending participant of the target payment order, from at least one sending participant other than the sending participant of the target large payment order; (ii) by forming a second tree comprised of the target payment order and, if necessary, helper payment orders in a direction away from the receiving participant of the target large payment order, to at least one receiving participant other than the receiving participant of the target payment order; (iii) debiting the available balances of the sending participant of the target large payment order and of the sending participants of the helper payment orders in a multilateral batch comprising the target and helper payment orders of the first and second trees by the amounts of each respective payment order; and (iv) crediting the available balances of the receiving participant of the target large payment and of the receiving participants of the helper payment orders in the multilateral batch by the amounts of the respective payment orders; the multilateral batch having been chosen so that after the payment orders comprising the first and second trees are released, the resulting position in the available balance of each participant involved in the multilateral batching falls within predetermined limits. Preferably, the computer readable medium stores code to cause the apparatus to perform the method further comprising a step of selectively offsetting, in a bilateral batch, the amount of a target large payment order by searching the queue for a previously queued second payment order from the associated receiving participant of the target large payment order; generating a pseudo-payment order in an amount of a net difference between the target large payment order and the second payment order; and storing the pseudo-payment order in the queue. BRIEF DESCRIPTION OF THE DRAWINGS FIG. 1 illustrates the release methodology payment process flow of the present invention; FIG. 1A is a block diagram of a computer system for implementing the present invention; FIG. 2 illustrates the tree payment structure of multilateral batching in the present invention; FIG. 3 is a flow chart illustrating the overall payment message flow of the balanced release engine; FIG. 4 is a flow chart illustrating the process flow of procedure CHECKSENDPAYMT; and FIG. 5 is a flow chart illustrating the process flow of procedure GALESHAPLY. DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENTS I. SYSTEM OVERVIEW The present invention relates to a system including a central controlling agent having a central computer that is structured to communicate with participating financial institutions. The system has hardware to control and update prefunded balance accounts associated with the participating financial institutions, and, by means of crediting and debiting these accounts within predetermined constraints, the system controls release and settlement of payments between and among the participating institutions. The system preferably is implemented with a computer system having the ability to communicate electronically with banks, including the participating financial institutions as well as the Federal Reserve Bank that is providing the settlement service, and having storage capacity sufficient to maintain queues for temporarily storing payment orders received by banks until the associated payments can be released. The system may be implemented using certain aspects of the current CHIPS system hardware. However, when implemented using CHIPS hardware, the system achieves a significant improvement over the current CHIPS implementation by providing intraday finality of all releases. The system of the present invention is not limited to this implementation, however, and may be implemented using hardware and software independent of and different from that utilized in the CHIPS system. A detailed description of the current CHIPS system can be found in the CHIPS Systems and Operations Manual, published by The Clearing House Service Company L.L.C., which is incorporated herein by reference. A design goal of the system of the present invention is to achieve intraday payment finality while using prefunded balances that are smaller than the value of the collateral currently pledged to secure certain obligations as required by, the prior art CHIPS system. The system of the present invention includes a computer controlled apparatus that employs software that continuously matches, nets, and releases payment messages on an individual, bilateral, or multilateral basis among participating financial institutions ("participants") throughout the day. Under the system, no payment message will be released to a receiving participant unless (a) the value of the payment message can be simultaneously charged against and credited to prefunded balances established by the sending and receiving participants or (b) the payment message has been netted and set off against one or more other payment messages and the resulting balance can be simultaneously charged against and credited to the prefunded balances. This procedure will result in "final settlement" of the sending participant's obligation to pay the amount of the payment message to the receiving participant under section 4-A-403(1)(a) or section 4-A-403(2) of the New York Uniform Commercial Code. The system removes any risk of settlement failure should one or more participants fail, even if the failure were to occur during the business day. This significant improvement over the current CHIPS system is the result of requiring each participant to deposit a predetermined amount into an account (prefunded balance account), at a Federal Reserve Bank and prohibiting the release of any payment message unless its value, or the balance including netting and set-off, does not exceed the participant's available balance in the account. The system is expected to permit the release of more than 99 percent of the number of payment messages, with a value of more than 96 percent of the total value of payment messages, during the course of the business day. If utilized in CHIPS, the system of the present invention will eliminate the last elements of settlement risk that remains in the CHIPS system. In addition, use of the system of the present invention will significantly reduce overall risk in the payment system when compared with prior art systems. The new system will reduce settlement risk by permitting dollar payments that are part of foreign exchange transactions to be final as soon as the payment is released. For example, the dollar side of a dollar-Euro transaction can be settled with a final payment early in the day and at the same time that the Euro payment is settled in Frankfurt, Germany, the location of the EAF-2 System. In lieu of pledging U.S. Treasury securities to secure its obligations, as, e.g., under the CHIPS Rules, in a preferred embodiment of the system of the present invention, each participant will be required to deposit a predetermined amount (its "initial prefunded balance") by sending a final, irrevocable payment to an account ("prefunded balance account") on the books of the Federal Reserve Bank of New York ("FRBNY"). The system records each participant's initial deposit to the prefunded balance account, e.g., if implemented in CHIPS, on books and records of CHIPS, and also records all intraday debits or credits that accrue to a participant when payment messages are released. The intraday record of each participant's prefunded balance, as adjusted to reflect all debits and credits, is referred to as the participant's "available balance" and establishes the portion of the prefunded balance account that belongs to each participant at any point in time during the day. No participant will be permitted to send or receive payment messages unless it has deposited its initial prefunded balance to the prefunded balance account. Deposits to the prefunded balance account may begin as soon as Fedwire opens at 12:30 A.M.. All participants will be required to have deposited their initial prefunded balances no later than 9:00 A.M. (7:00 A.M. on the day after a holiday observed by Federal Reserve Banks). It is anticipated that most participants will make the required deposits to the prefunded balance account by sending Fedwire payment orders to the account from their reserve or clearing accounts, but participants that do not have accounts with a Federal Reserve Bank may have correspondents send Fedwire payment orders on their behalf. Each participant's required initial prefunded balance will be determined using a formula designed to ensure optimal performance of the system. The initial prefunded balance will be recalculated at the end of each week to determine initial prefunded balance requirements for the next week. It is expected that a participant's initial prefunded balance requirement will be approximately the same as that participant's collateral requirement under the current CHIPS. Participants will not be permitted to make additional deposits to or withdrawals from the prefunded balance account during the day until the system has closed for receipt of payment messages. As a result the balance in the prefunded balance account will not be decreased on the books of the Federal Reserve Bank during this period. However, the available prefunded balance of each participant will change during the day based on the release and receipt of payment messages. As payment messages are simultaneously netted, set-off, and released pursuant to the procedures described below, the system will make the appropriate debits and credits to the available balances of the sending and receiving participants. Thus, each participant's available balance will be adjusted and readjusted during the day as payment messages are released and received. In the preferred embodiment, no participant's available balance will be permitted to be less than zero (its "minimum available balance") or more than twice the required initial prefunded balance (its "maximum available balance"), however the invention could be implemented using different constraints and is not limited to the preferred embodiment. The present invention relates to a computer-based system including a computer program to control the release of payment messages. This program (the "balanced release engine") will continuously match, net, set off, and release payment messages throughout the day. All incoming payment messages will be received by the system and held in a queue or, preferably several queues for release when the requirements of the computer program are satisfied. The program will broadly classify each payment message as large (in the current modelling equal to or greater than 80 percent of one of, and preferably the lesser of, the sending participant's initial prefunded balance and the receiving participant's initial prefunded balance) or small (less than 80 percent of the one, preferably lesser, initial prefunded balance). Throughout the specification the term "large" will be used to refer to the category of payment orders equal to or greater than 80% of the initial prefunded balance. However, the inventors have found some improvement in the efficiency of the system can be attained if the payment orders less than 80%, referred to broadly as "small" in the description, be further divided into "medium" payment orders, i.e., those payment orders of an amount falling between 20% and 80% of the initial prefunded balance, and "small", or "very small" payment orders, i.e., those of an amount less than or equal to 20%. In the following description, when the convention of describing payment orders as being small, medium or large is used, it is the above three percentage categories that are being referred to. At portions of the following description that do not refer to medium payment orders, the more broad term "small" is intended to refer to all payment orders less than 80% of the lesser initial prefunded balance. It should be noted that the percentages chosen for the preferred embodiment are somewhat arbitrary. The important feature is that a classification is made by the size of the payment order in relation to an initial prefunded balance or balances. The program will release payments individually, in bilateral batches, or in multilateral batches and release notification will be sent to the sending participant while a receive notification will be sent to the receiving participant. This general payment processing flow is shown in FIG. 1. The release of a large payment individually would ordinarily cause the sending participant to fall below its minimum available balance or cause the receiving participant to exceed its maximum available balance. Therefore, the balanced release engine will not release the payment and will begin to search for payments that can be included in a batch and netted against the large payment message. If needed, other "helper" payment messages from other participants will be added to the batch in such a manner that all the payment messages in the batch may be netted and set-off against one another so that the net changes to the available balance of each participant with payment messages in the batch will not cause any participant's available balance to drop below zero or exceed its maximum. This batching will be discussed in greater detail below. While the inventors believe that the system of the present invention will allow release of more than 99 percent of payment messages sent by sending participants (96 percent of the value of all payment messages), simulations indicate that, when implementing the system using CHIPS hardware, a small number of payments will remain unreleased when CHIPS has closed for the receipt of further payment messages. The following procedure will be used to release and settle these payment messages before the close of business. After the closing time for the receipt of payment messages, the balanced release engine will be used to match, net, set off, and release as many of the remaining payment messages as possible without regard to any participant's maximum available balance. Following this procedure, the balanced release engine will be used to calculate a net balance for each participant based on the remaining unreleased payment messages without actually netting, setting off, or releasing these payment messages. If the resulting number for a participant is negative, then that participant has a "final prefunded balance requirement"; if the resulting number for a participant is positive, then the participant has a "final prefunded balance entitlement." Each participant will then receive an administrative message advising of its final prefunded balance requirement or its final prefunded balance entitlement. Each participant with a final prefunded balance requirement will be given 30 minutes to send a Fedwire funds transfer in the amount of its final prefunded balance requirement to the prefunded balance account. Once all of these funds transfers have been completed, all remaining unreleased payment messages will be netted, set off, and released, and, at the same time, the system will send to each participant with a final prefunded balance entitlement a Fedwire funds transfer in the amount of its final prefunded balance entitlement. If any participant with a final prefunded balance requirement is unwilling or unable to send the required Fedwire funds transfer to the prefunded balance account, the balanced release engine would be run again using the available balances as adjusted by the addition of the final prefunded balance requirements that were received during the final funding phase. This would allow for the release of additional payment messages. Sending participants will be notified concerning any payment messages that remain unreleased following this procedure. Sending participants will be able to redirect any unreleased payment message through Fedwire before that system closes. II. LEGAL BASIS OF FINALITY Each current CHIPS payment message is a payment order within the meaning of section 4-A-103 of the New York Uniform Commercial Code. Currently, under CHIPS Rule 2, "[t]he release of a payment message creates an obligation of the Sending Participant to pay the Receiving Participant the amount of the payment message." See CHIPS Rules and Administrative Procedures, published by The Clearing House Service Company L.L.C. No such obligation exists for a CHIPS payment message before it is released. CHIPS Rule 2 also provides that the "obligation of the Sending Participant to pay the Receiving Participant is to be netted in accordance with Rule 12 and settled in accordance with Rule 13." Rule 12 states that CHIPS payment messages are continuously netted and set-off against each other, and Rule 13(c)(1) provides that the multilateral net balances remaining from this netting and set-off procedure are settled through the settlement account at The Federal Reserve Bank of New York ("FRBNY"). Under Rule 13(c)(2), settlement is complete when the required payments to and from the settlement account have been made. The effect of the interplay between the cited provisions of the CHIPS Rules and the New York Uniform Commercial Code is that the payment of the sending participant's obligation to the receiving participant is not final until after settlement has been completed at the end of the day. A chief benefit of the system of the present invention is that it allows the sending participant's obligation to the receiving participant to be paid at the same time as the payment message is released to the receiving participant. This also is authorized under provisions of the Uniform Commercial Code. Section 4-A-403(2) of the New York Uniform Commercial Code provides that as between members of a funds-transfer system that nets obligations multilaterally among participants (as the current CHIPS does), "the receiving bank receives final settlement when settlement is complete in accordance with the rules of the system." Section 4-A-403(2) provides that The obligation of the sender to pay the amount of a payment order transmitted through the funds-transfer system may be satisfied, to the extent permitted by the rules of the system, by setting off and applying against the sender's obligation the right of the sender to receive payment from the receiving bank of the amount of any other payment order transmitted to the sender by the receiving bank through the funds-transfer system. The aggregate balance of obligations owed by each sender to each receiving bank in the funds-transfer system may be satisfied, to the extent permitted by the rules of the system, by setting off and applying against that balance the aggregate balance of obligations owed to the sender by other members of the system. Moreover, under N.Y. U.C.C. .sctn. 4-A-403(1)(a), payment of a sender's obligation "occurs when the receiving bank receives final settlement of the obligation . . . through a funds-transfer system." As was mentioned above, under the system of the present invention, payment messages will be released either individually or in batches. If a payment message is released individually, it will be simultaneously settled and the sending participant's obligation paid by a debit and credit to the available balances of the sending and receiving participants. This, in effect, is a "gross settlement" through a funds-transfer system that is immediately final and authorized by N.Y. U.C.C. .sctn. 4-A-403(1)(a). If payment messages are released in a batch, each payment message is settled by netting the sending and receiving participants' obligations to one another, and, if more than two participants have payment messages in the batch, by also netting the bilateral net balances of all participants in the same batch. Each participant's balance that results from the netting (whether it is a bilateral net balance or a multilateral net balance) is simultaneously settled through a debit or credit to its available balance. When this is done, settlement of those payment messages will be complete in accordance with the proposed rules to govern the system of the present invention. This netting and adjustment of available balances will constitute final settlement and payment under sections 4-A-403 (2) and 4-A 03 (1)(a). The procedure will provide that payment obligations in respect of payment messages will be settled through the netting and the adjustment of available balances at the time the payment message is released to the receiving participant. In addition, there will be no need to provide for an "unwind" as in the current CHIPS system (i.e., the authority of the board of directors under CHIPS Rules 2 and 13(k) to declare that CHIPS has failed to settle and to return all payment messages to storage). Similarly, there will be no need for the collateralized loss-sharing arrangements provided for under CHIPS Rule 13. III. BALANCED RELEASE ENGINE As was discussed above, the balanced release engine determines when payments between banks can be released to the intended receiver. In the present invention, release of payments proceeds differently for payments in different dollar size classes, as will now be discussed. Each participant in the system must deposit a predetermined amount, or initial prefunded balance, into a prefunded balance account. A credit limit (maximum available balance) of twice the initial prefunded balance is set as an upper limit or "cap", while the available balance is never permitted to go below zero (debit limit or "cap"), to be referred to as the minimum available balance in the system of the present invention. A "flow cap" arbitrarily defined as 0.8 times the initial prefunded balance, is used broadly to distinguish "small" from "large" payments; those smaller than the flow cap are defined as small, others are defined as large. A. Release of Small Payments The balanced release engine releases small payments, i.e. preferably those less than 80% of the lower of the initial prefunded balances of the sending participant and receiving participant, individually (without batching) from bilateral FIFO queues, resident in the central computer storage, upon which incoming payment orders are placed upon receipt, as the positions of the sending and receiving participants permit. Neither the minimum nor maximum available balances discussed above may be exceeded following the release of a payment. Priority is always given to the release of the earliest queued payments. However, since "earliest" has different meanings for sender and receiver, a matching technique, based upon the Gale-Shapley algorithm, to be discussed in detail below, is used to find an optimum match of senders with receivers that is in some sense the best possible one for both senders and receivers. B. Release of Large Payments The balanced release engine releases payments with the aid of multilateral and/or bilateral batching. Bilateral batching will now be described. 1. Bilateral Batching Large queued payments are batched bilaterally as follows. When a large payment order from bank A to bank B is queued, a check is made to see whether there is another payment order from bank B to bank A already queued that is between half as large and twice as large as the first payment order. If so, such a second payment order is chosen and is batched with the first one. The result is a "pseudo-payment" whose amount is the difference of the amounts of the original two payment orders. Notice that this difference will be less than or equal to each of the amounts of the two payment orders in the batch. The direction of the pseudo-payment is the direction of the larger payment order. After a pseudo-payment is formed, the process is repeated iteratively until no suitable "second" payment order is available. At each step, the size of the pseudo-payment gets smaller or, at worst, remains the same. Thus, the overall effect of bilateral batching is to reduce the size and number of the payments to be released. These pseudo-payments are then released either as small payments as described above, or as large payments, using multilateral batching, described next. When the system "releases" a pseudo-payment, it releases all of the batched payments linked into the pseudo-payment in one transaction. 2. Multilateral Batching Multilateral Batching is utilized in the system of the present invention to provide a means to release payments (and pseudo-payments) larger than the flow cap; even payments much larger than the debit and credit caps. When a large payment is queued, after any bilateral batching has been done, a check is begun to see whether any large payments on the queue can now be released. When considering the release of a given large payment P from bank A to bank B, usually such a release would lower the position of bank A below its debit cap, and might also raise the position of bank B beyond its credit cap. Therefore helper payments are used to bank A from third party participants currently in a credit position to produce a net position at bank A that is within the prescribed limits. Helper payments are chosen initially with only the position at bank A in mind. At each stage of the construction of the multilateral batch, a tree of payments exists directed downward toward the root participant bank A. An example of such a tree is shown in FIG. 2, which will be discussed in greater detail below. Participants at nodes of the tree, such as bank B in FIG. 2, with both incoming and outgoing branches satisfy their limit constraints. Leaf (terminal) nodes of the tree are participants that may exceed their debit cap, and which therefore may themselves need helper payments. Any participant in the tree that needs help of this sort is later either supplied with the help or is discarded, cutting back the tree. If the construction succeeds, a tree of payments is obtained among the participants previously in a credit position such that every participant position in the tree, including participant bank A, is within its prescribed debit and credit limits. If the above tree can be created, an attempt is made to accomplish the analogous situation at bank B using payments to participants previously in a debit position. Another tree is constructed, if possible, so that every participant position in the second tree is within the limits. If all this is accomplished successfully, all of the payments taken together constitute a multilateral batch and are released in a single transaction. IV. SYSTEM HARDWARE An example of a computer system for executing the program that drives the system of the present invention is shown in FIG. 1A. The system includes a CPU 31 that performs processing functions. Also included is read only memory 32 (ROM), which stores at least some of the program instructions to be executed by CPU 31, such as portions of the operating system or basic input-output system (BIOS), and random access memory 33 (RAM) used for temporary storage of data. The computer also includes a network interface 72 which enables communication with external devices, such as the computers located at participant financial institutions. A data storage device 34 is provided to allow for storage of data. Data storage device 34 may be written to or read from the CPU 31. Data/Address bus 37 connects the ROM 32, RAM 33 and data storage device 34 to the CPU. A keyboard is preferably provided to receive input from an operator. However any conventional method of operator input may be used. A display is preferably provided for conveying information to the operator of the computer. V. DETAILED DESCRIPTION OF BALANCED RELEASE ENGINE The program that runs on the computer system of the present invention utilizes certain basic criteria: 1. The funds posted by each participant in the prefunded balance account is used to pay its own payment orders. 2. A participant's available balance will not be allowed to be negative, that is, fall below zero dollars ("minimum available balance"). 3. A maximum available balance, equal in the preferred embodiment to twice the magnitude of the initial prefunded balance requirement, is imposed on each participant. A participant's available balance, including the amount of his initial prefunded balance, will not be allowed to exceed his credit limit. Although this upper limit is not needed for limiting of risk, simulations run by the inventors have shown that such a limit is needed to provide satisfactory functioning of the system. As discussed above, this limit is eliminated for processing after the end of the day cutoff. 4. At the culmination of the process described in item 5 below, the program decides to "release" a payment message. At this point, the system issues an instruction to change the available balances of the sending participant and the receiving participant to reflect the instructions of the order. 5. Instead of always releasing payment orders as they are received, the decision as to when payment orders should be released is made as follows in accordance with one embodiment of the present invention: First, an incoming payment order is classified as being "small" (i.e. less than a "flow cap", preferably of 80% of the lesser of the sending participant's and the receiving participant's initial prefunded balance requirements) or "large" (i.e. not "small"). Small payment orders, which comprise most of the workflow, can be queued for immediate release, provided that release would not violate items 2 or 3 above. Entries in the queue are processed according to a version of the "first in, first out" queue discipline (FIFO). However, the earliest payment order in the sending participant's queue may or may not be earlier than earliest payment order in the receiving participant's queue. Hence, a matching technique is used to select which payment orders should be processed first. Details of this technique are effectively policy decisions about which payment orders are to be released, and in what order. The details of the algorithm are discussed below. "Large" payment orders are released as part of a "batch" of netted payment orders. For most of the day's processing, these large payment orders are initially placed into the "delay" queue, where they are eligible to be "helper orders" for multilateral or, optionally, for bilateral batching as discussed above. Immediately after passing through the delay queue, a large payment order remains eligible for inclusion as a helper payment order in the multilateral batching procedure. In addition, an attempt is made to include the payment order as part of a bilateral batch. Payment orders that are larger than the flow cap but smaller than the sending participant's initial prefunded balance could be released by themselves at this point, provided that the sending participant's available balance is sufficiently far away from zero and provided that the receiving participant's maximum available balance would not be violated. However, payment orders of less than 160% of the sending participant's initial prefunded balance requirement do not trigger an invocation of bilateral batching. If the attempt at bilateral batching fails, the payment order remains in the queues, available as a helper order to both the bilateral batching and the multilateral batching procedures. The multilateral batching procedure also scans the list of queued large payment orders, sorted by time stamp (an indication of the time at which the payment order was received by the system), making each a "target payment order" of the multilateral batching procedure. Details of bilateral and multilateral batching follow: A. Bilateral Batching. If a large payment order from participant 1 to participant 2 is queued, for it to be bilaterally batched, it is netted with the earliest queued payment order from participant 2 to participant 1 that is between half as large and twice as large as the large payment order just queued. This restriction on the size of nettable payment orders from participant 2 to participant 1, as was discussed above, guarantees that the resulting, netted pseudo-payment order is less than or equal to both original payment orders. This process is repeated iteratively until no nettable payment orders larger than a "small payment cap" of 20% of participant 1's initial prefunded balance requirement are found in either the queue from participant 2 to participant 1 or the queue from participant 1 to participant 2. The inventors have found that this arbitrary choice provides good performance with efficient operation. It should be noted that bilateral batching is not necessary for operation of the present invention and that the system can function efficiently using only the combination of the multilateral batching and individual release techniques described throughout the specification. The following example is useful in understanding this process: Suppose the initial prefunded balance requirement for A and B are both $10 million and that there is initially nothing in either queue. If A then wants to make a payment to B of $100 million, it would have to be stored on the queue of payment orders from A to B because it exceeds both A's initial prefunded balance requirement and B's maximum available balance. Similarly, a payment order of $800 Million from B to A should be stored on the queue of orders from B to A, without being netted with the order from A to B. A subsequent payment order of $600 million from A to B would then be netted with the payment order from B to A, producing a pseudo-order of $200 million from B to A that would be queued as a single order. This pseudo-payment order could then be netted with the previously queued payment order from A to B of $100 million. If, on the other hand, the $800 million and $600 million payment orders entered the system first, they would immediately be netted into a single $200 million pseudo payment order that would be placed on the queue from B to A. The resulting pseudo-payment order is then treated identically to an actual payment order. In other words, if the netting process results in a pseudo-payment order from participant 1 to participant 2, it is queued in participant 1's payment queue to participant 2; if the netting process results in a pseudo-payment order from participant 2 to participant 1, it is queued in participant 2's payment queue to participant 1. And, as with an actual payment order, the pseudo-payment order is released if and when it would not exceed either the sending participant's maximum available balance or the receiving participant's maximum available balance. B. Multilateral Batching. This procedure attempts to identify a double tree of nettable large payment orders (as defined above) and process them as a batch. The procedure starts with a particular large payment order that has been identified as a "target payment order." The goal is to identify a list of "helper orders" that can be netted with the target payment order so that the net order satisfies all maximum and minimum available balance constraints. For example, suppose that the target payment order is a large payment order of an amount A.sub.12 from participant 1 to participant 2. By assumption, if the payment order were released, 1's available balance position, P.sub.1, including the initial prefunded balance requirement, F.sub.1, would be negative, or, in symbols, P.sub.1 -A.sub.12 <0. (1) However, it may be the case that there is another payment order of amount A.sub.31 from participant 3 to participant 1 such that 2F.sub.1 .gtoreq.A.sub.31 +P.sub.1 -A.sub.12 .gtoreq.0; (2) in other words, there is an order to send a "helper payment" to 1 that would increase its available balance sufficiently that 1's available balance would no longer go below zero. The first phase of the multilateral batching program is to search the queue of payment orders to 1 for such helper orders, but only among participants that have an available balance of greater than zero. (See below for an explanation of this restriction.) If more than one possibility is found, the payment order that would itself require the smallest amount of help will be used. If no single payment order can be found that satisfies these constraints, the largest payment order that could partially offset the potential balance deficit would be used, augmented with other, smaller payment orders. If, as is usually the case, P.sub.3 -A.sub.31 <0 for the helper order(s) chosen, an attempt is made to find a helper order for that payment order, i.e. a payment order from yet another participant, 4, such that 2F.sub.3 .gtoreq.A.sub.43 +P.sub.3 -A.sub.31 .gtoreq.0, (3) and so forth. Ideally, a multilateral batch of payment orders is eventually generated such that each participant's available balance remains within the maximum and minimum available balance limitations. Otherwise, a suitable tree cannot be completed (i.e. the program terminates "empty handed"). If those participants with available balances greater than zero (i.e. P>0) are allowed to make helper payment orders, the helper orders required at each stage tend to get smaller and smaller, facilitating successful batching. This is evident from (2) and (3), in which the available balances of 1 and 3, respectively, help reduce the required sizes of A.sub.3, and A.sub.43, respectively. If P.sub.2 +A.sub.12 >2F.sub.2, i.e. the sum of bank 2's available balance and the original payment order from 1 to 2 would exceed 2's maximum available balance, a similar tree is built for participants to whom 2 has queued payment orders, possibly branching out to participants to whom they have queued payment orders, etc. As noted above, an example of multilateral batching is illustrated in FIG. 2, which shows trees of helper payments that assist a target payment. In the figure, a target payment from Bank A to Bank B that does not meet the criteria for immediate release or bilateral release is chosen as the target for multilateral batching based, in part, upon how long it has been in the queue. All participants shown above the thick horizontal line currently have available balances greater than their initial prefunded balance requirements. Those shown below the line have available balances below their initial prefunded balance requirements. An attempt is made to group helper payments above the line to construct a tree of payments among the banks with available balances greater than zero to aid the sending participant (A) in sending a designated large payment order without its available balance dropping below zero. A second tree of payments is constructed among banks in a debit position (i.e., below the line) to aid the receiving bank in accepting the designated large payment without exceeding its maximum available balance. In constructing the tree, a fairly large helper payment is shown from C to A which ensures that A's position will not exceed its debit cap as a result of the transfer of funds to B. To ensure that C's available balance does not fall below zero, a payment from D is supplied to C. D is in turn supplied with helper payments from banks E, F and G. Below the line, in order to bleed away excess funds, which would cause B to exceed its maximum available balance, payments from B to Y and W are grouped, with Y providing further helper payments to avoid exceeding its own maximum available balance. FIG. 3 illustrates the overall process flow of the Balanced Release Engine. In this figure, the queue structures are represented in matrix form to show that a payment may simultaneously be linked to more than one queue. An incoming payment order is initially placed on various ones of queues BILAT, GROUPORDSEND, GROUPORDRECV, DELAY (SYS), SYSLARGE, SYSSMALL or BILATORD, depending upon the size of the payment order. In the description of FIG. 3, and in a preferred embodiment of the present invention, small payment orders, i.e., payment orders whose dollar values are less than 80% of the lower of the initial prefunded balances of the sender and receiver, are further subdivided into two categories: medium payment orders, i.e., payment orders that are between 20% and 80% of the lower initial prefunded balance requirement, and small, or more specifically "very small" payment orders, i.e., payment orders that are less than or equal to 20% of the lower initial prefunded balance requirement. Note that when the term "small" is used together with the term "medium" to describe payment order size, small is being used to refer to "very small" payment orders. On the other hand, where the broad categories small and large are being described, "small" refers to all payment orders less than 80% of the lower of the initial prefunded balance requirements of the sending participant and the receiving participant. Payment orders characterized as small, or more precisely, very small, are placed both in the BILAT and SYSSMALL queues. Medium sized payment orders are placed simultaneously in the BILAT, GROUPORDSEND, GROUPORDRECV, SYSSMALL and BILATORD queues. Large incoming payment orders are initially placed in the DELAY(SYS) queue as well as the queues GROUPORDSEND, GROUPORDRECV and BILATORD. All such payment orders can be used as helpers. Finally, large payment orders that have passed through the delay queue, as well as large pseudo-payments, are placed in the queues GROUPORDSEND, GROUPORDRECV, SYSLARGE and BILATORD. The queues shown in the flow chart will now be described. All queues with the suffix "ORD", such as GROUPORDRECV or GROUPORDSEND, are ordered queues, arranged in dollar size order, with largest payment orders at the head of the queue. Other queues are FIFO queues. For example, BILATORD is an ordered queue that stores only medium and large payment orders between a particular bilateral pair of participants. BILAT is a FIFO queue storing medium and small payment orders between a particular bilateral pair of participants. All queues with the prefix GROUP contain only payment orders for a particular participant. If this prefix is followed by the suffix SEND, it contains payment orders by a particular participant, if followed by the suffix RECV, it contains payment orders to a particular participant. Thus, GROUPORDRECV is an ordered queue containing payment orders to a particular participant, whereas GROUPORDSEND is an ordered queue containing payment orders sent by a particular participant. The prefix SYS denotes a queue that contains payment orders for all participants. Following this convention, the SYSLARGE queue contains all large payment orders and SYSSMALL contains all small payment orders. DELAY(SYS) is a FIFO queue that contains all recently queued large payment orders. The functions of the individual queues will be further described in Table VI below. Small and medium payment orders (i.e., all payment orders less than 80% of the flow cap) may be eligible for release without batching. This release is performed using the Gale Shapley algorithm, indicated at step S40, to be explained in detail below. As is shown at step S10, the DELAY queue length is continuously checked. If the maximum DELAY queue length is set, for example, to be 400 payment orders, the insertion of another large payment order will cause the removal of the oldest payment order from DELAY. After an appropriate delay, the payment orders on the DELAY queue are placed on the SYSLARGE queue. As discussed above, bilateral batching may be utilized to combine a target payment in the SYSLARGE queue with a helper payment from the BILATORD queue. As shown in the figure, if it is determined at step S20 that bilateral batching can be achieved, a pseudo-payment, equal to the difference between the target and helper payment, and in the direction of the larger of the two, is formed. The formed pseudo-payment is placed back into the appropriate queue or queues according to size. Multilateral batching may be used to release large payment orders larger than the flow cap, even much larger than the flow cap. As shown in FIG. 3, a target payment order that cannot be bilaterally batched is passed at S30 to the procedure for multilateral batching. The multilateral batching procedure attempts to build a tree or trees of payment orders by offsetting the target payment order with helper payment orders, as discussed extensively above. As is shown in FIG. 3, helper payment orders can come from queues GROUPORDSEND and GROUPORDRECV. Upon successful completion of the multilateral batching procedure, all of the batched payments are released in a single transaction at step S50. Upon release of a payment order, it is removed from all queues. Although FIG. 3 illustrates an embodiment in which both bilateral and multilateral batching are used, the present invention can perform its functions without using bilateral batching at all, since even the largest payment orders can be set off and multilaterally batched by the multilateral batch procedure. Therefore, the present invention is not limited to the embodiment that includes the optional bilateral batching procedure. VI. REVIEW OF THE SIMULATION RESULTS Simulations of the system of the present invention and its execution of the process performed by it were performed based upon transaction data for a variety of dates, chosen either because that day's system activity was notable in some way, or to establish a baseline of typical activity. Since the preferred embodiment of the present invention is suitable for use, for example, in conjunction with CHIPS computer hardware, CHIPS data was used for the simulation. The dates and the reasons why they were chosen are shown in Table I as follows:
TABLE I
______________________________________
Date Reason Chosen
______________________________________
January 21, 1997
Day after the 3 day Martin Luther
King Day weekend. That date had
the highest volume recorded on
CHIPS up until then.
March 27, 1997 The Thursday before Good Friday.
Because much of Europe was to be
closed for Good Friday, this was
effectively the last business day
of the quarter in these
countries. Hence, the usual as
elevated quarter-end CHIPS volume
was observed on that day.
March 31, 1997 This was Easter Monday, which is
a holiday in Europe, and a low
volume day for CHIPS.
April 11, 1997 That day, one of the participants
had an usually large credit
position.
May 27, 1997 The day after the Memorial Day
Weekend. CHIPS had the usual
post-holiday (heavy) volume that
day.
June 16, 1997 A typical day for CHIPS.
June 18, 1997 A typical day for CHIPS.
July 3, 1997 This was the day before the
Independence Day Weekend. CHIPS
had the elevated volumes typical
for the day before a holiday.
November 28, 1997
This was the day after
Thanksgiving. CHIPS volume was
at a historic high for that day.
______________________________________
A measure of the quality of the actual process used is the actual percentage of the dollars sent that were released. The results for each of the above dates are shown in Table II as follows:
TABLE II
______________________________________
Total Number
of Pmt. Total of
% Dollars Orders Pmt. Orders
Date Released (x 10.sup.5)
(x 10.sup.12 $)
______________________________________
21-Jan-97 96.23% 4.187 2.178
27-Mar-97 95.79% 2.716 1.856
31-Mar-97 91.45% 1.040 0.509
11-Apr-97 95.38% 2.330 1.416
27-May-97 95.62% 3.967 2.039
16-Jun-97 95.88% 2.579 1.594
3-Jul-97 94.89% 2.289 1.467
28-Nov-97 97.48% 4.570 2.237
______________________________________
Two conclusions can immediately be drawn from these results: 1. Almost all of the payment orders that could be released were, in fact, released. The dollar weighted criterion is a stringent one, because the payment orders receiving the most weight are the orders that are much larger than the pre-funded amounts, and are thus the hardest to handle. 2. The system, as simulated, worked best, in the sense of being closest to its "theoretical limit, balanced releasable dollars, percent" figure, on days when the volume is the highest. The experience of the simulation shows that the dollar volume of payments unreleased after cutoff is nearly independent of daily dollar volume. So the former decreases as a percentage of the latter as the latter increases. The "theoretical limit" is designed to show the dollar percentage that would have been released if the same dollar totals were released by each bank in payments of small dollar size. A numerical experiment suggests the reason for the success of the system: very often, a payment from one participant to another tends to trigger a payment from the second participant to a third participant, and so on. This point was established with the June 18 data by first netting the actual payments to and from each participant and then comparing the net changes in the participants' available balances to the changes that would accrue if the payments had been made to random receivers. On a typical run, the actual change in position is almost always tens, if not hundreds or thousands, of times smaller than the corresponding randomized change. Fortunately, these payment patterns seem to be intrinsic to the way in which CHIPS is used, so the dependence of the program on such patterns should not create difficulties. However, the above statistics average over payments of all sizes, participants of all sizes, and all times of the day. A specific participant's perceptions of the system will be shaped by his ability to get the system to process a payment order for a specific amount at a particular time. A detailed examination of the simulation outputs show that most individual participants are served by the system about as well as the aggregate numbers predict. However, at the end of any given day, a significant percentage of a few participants' payment orders remain unprocessed, even on Nov. 28, 1997, the date on which the system, as simulated, performed the best. A particularly telling measure of the throughput of the system is the dollar weighted percentage of payment orders from each participant that were not released by the simulation. If the program model had actually processed the workflow for Mar. 27, 1997, for example, there would have been four participants that would have had more than 50% of their dollar weighted payment flow remaining on the queue until the end of the day. These were participants identified by ABA (American Banking Association) numbers A, B, C, and D. Some relevant statistics are shown in Tables III and IV as follows
TABLE III
______________________________________
ABA # A B C D
______________________________________
Cap (millions)
28.05 10 25.5 25.5
Amt, pmt orders sent
71.03 116.91 742.43
463.05
Amt, pmt orders rec'd
13.5 47.55 421.14
256.44
Amt, large orders sent
45 37.66 669.17
400.96
Amt, large orders rec'd
0 16.11 360.84
230.04
Amt, small orders sent
26.03 79.25 73.26 62.09
Amt, small orders rec'd
13.5 31.44 60.3 26.4
Ratio, sent/rec'd
5.261 2.459 1.763 1.806
______________________________________
The difference between those participants that are treated well by the system and the participants that are not seems to be the noticeable differences in the ratio of dollars sent to dollars received. For most participants, including the four that were randomly chosen, this ratio is very close to one. However, this was not true for all participants. Clearly, no system of this type can effectively deal with such imbalances, and, so far as can be determined by the results, it is only systems of this type that would permit intraday finality with small fixed funding. Therefore, it appears that the inevitable price to be paid for intra-day finality with small funding is that the few participants with an imbalance of send and receive orders are likely to have to wait until the end of the day to have these orders processed. Most payment orders are "small," in the sense that they are less than 80% of the lower of the sender's and receiver's initial prefunded balances. The bottleneck in such a case is the Gale-Shapley algorithm. As is discussed below, the worst case performance of this algorithm is proportional to the cube of the number of participants in the system. The simulations show that most batches will have only a single payment (If the simulation code can complete all processing of 400,000 payment orders in half an hour, then the time required per order is less than 0.005 seconds. On the other hand, the available time per order is more than 0.06 seconds, assuming 400,000 payments and that no participant signs on before the required 9 AM deadline.) The only immediate action required of the system upon receipt of a large payment order is to place it on the delay queue, which is clearly not a bottleneck. When a payment is released from the delay queue, it is placed on the large payment queue and the appropriate bilateral queue. The time required to do this depends on the current size of these queues. The queue size is a complicated function of the detailed composition of the workflow, the rate at which payment orders can be released, and the implementation details of the queue. Nevertheless, the queue operations require CPU time at most proportional to the length of the queue. In the simulation code, queues are implemented as simple linked lists, as opposed to some more CPU-efficient data structure, because the queue operations do not seem to be a bottleneck. These more efficient data structures are, in fact, much more efficient, so that any future problems in this area could easily be solved. The multilateral batching procedure requires the construction of a tree containing participants in a credit position and a tree containing participants in a debit position, where credit and debit are relative to the beginning-of-day positions. In the model code embodiment, both the number of institutions per node and the depth of these trees cannot exceed hard coded limits, so that the only variable in the time required to build them is, once again, the time required to perform queue operations. The amount of backtracking that occurs following failed attempts at tree building seems to be a rather constant percentage of the total work. Thus, the multilateral batching system is unlikely to be a bottleneck. This analysis is, to some degree, confined by the simulation results: the CPU time required to process March 31 workflow was not dramatically different than the CPU time required to process the November 28 workflow, even though there were more than four times as many payment orders on the latter date. The simulations assume that the amount of prefunded balances that each participant has posted is equal to collateral it currently posts to the CHIPS Collateral Account. However, there is no reason why this needs to be true. In fact, nothing in the system prevents the arbitrary setting of collateral requirements. VII. CONCLUSIONS 1. The simulation results show that: a. The system can process almost all of the payment orders for almost all participants. b. The system works best on days when the volume is the highest. c. There are occasional clusters of unreleased payments to or from participants with an imbalance between "send" and "receive" payment orders. This seems to be unavoidable. 2. The success of the system is based on two statistical features of the payment order mix: a. A payment order from participant A to participant B makes a subsequent payment order from B to participant C more likely. b. Most of the payment orders are made by the largest participants. 3. Releasing payments via the Gale-Shapley algorithm has three advantages over a more straightforward approach: a. By keeping small payments in bilateral queues and using bit masks to identify which participants currently have releasable payments, the processor time required to find the oldest payments to release is greatly reduced. b. The Gale-Shapley algorithm can identify a batch of payments to "nearly disjoint" sender/receiver pairs, in a sense defined below. In general, the decision to release a payment would have to take in consideration the effects of all other payments being released at the same time. Otherwise, the release of one payment might result in a violation of funding constraints when a second payment is released, even if the second payment would not have violated funding constraints if it had been released in isolation. This would obviously not be a problem for a batch of disjoint senders and receivers. In fact, "near disjointness," in which a participant can both send and receive exactly one payment, is sufficient to avoid the problem. This is because a participant that could send a given payment or receive a given second payment without violating funding constraints could both send and receive these payments without violating funding constraints. c. By releasing a near disjoint batch of payments at once, as opposed to successive release of the individual payments in the batch, the throughput of the system is improved. This is because the processing of the payments after release can be done in parallel by the different participants' payment systems, but the determination of which payments to release is an inherently serial process. 4. Given the above, the inventors have concluded that the inventive system could indeed be implemented in conjunction with CHIPS in its current form. VIII. THE MODIFIED GALE-SHAPLEY ALGORITHM The need for such an algorithm used in the system of the present inventions has just been explained in section VII 3. Then the performance characteristics of this particular algorithm are discussed. In particular, it is shown that the algorithm is a natural generalization of the first-in-first-out (FIFO) queue discipline. Since time stamps are unique, that is, since the time at which a payment order is received is unique to that payment order, a payment order and its time stamp can be used interchangeably, a convention to be used throughout. For purposes of scheduling, then, the only additional information needed is a matrix similar to that shown below in Table V, for participants P1, P2, P3, and P4 out of a set, II, of participants. Along the rows, the given participant is the sender; along the columns, the given participant is the receiver. The numbers in the entries are the time stamps of the "releasable payment orders," the first of the hypothetical payment orders from that sender to that receiver provided that the order satisfies the pre-funding or credit constraints. The absence of time stamps in the blank boxes indicates that either there was no payment order for that sender-receiver pair or the first payment order for the pair was not releasable.
TABLE V
______________________________________
P1 P2 P3 P4
______________________________________
P1 373 273 879
P2 237 690
P3 946 505 436
P4 430 120
______________________________________
As was discussed above, more than one of these payment orders can and should be released simultaneously. However, only "near disjoint" batches of payment orders, in which each participant is to send or receive (or both send and receive) payment at most once per batch can be processed without re-computation of funding constraints. Near disjointness requires that the time stamp labeled payment orders in the matrix must be chosen such that they occupy at most one cell per row and at most one cell per column. F | ||||||
