Tuesday 10 October 2017

Whole Loan Trading System


Verfahren nach einem der Ansprüche 1 bis 4, dadurch gekennzeichnet, daß die Schienenfahrzeuge (1) und die Schienenfahrzeuge (1) eine Mehrzahl von Schienenfahrzeugen sind, USA) LLC Herkunft: ATLANTA, GA US IPC8 Klasse: AG06Q4000FI USPC Klasse: 705 36 R Patentanmeldung Nummer: 20100057635 Optimierung fester Zinssatz für ganzes Kreditgeschäft. Insbesondere stellt die Erfindung computerbasierte Systeme und Verfahren zum optimalen Verpacken einer Population von ganzen Krediten in Anleihen entweder in einer Senior / Subordinate-Bindungsstruktur oder in Pools von Pass-Through-Effekten, die von einer Regierungsbehörde garantiert werden, bereit. Modelle für jede Art von Bindungsstruktur werden auf die Population von Darlehen verarbeitet, bis entweder ein optimales Bindungspaket gefunden ist oder ein Benutzer bestimmt, dass eine Lösung von ausreichender Qualität gefunden wird. Darüber hinaus können die Modelle für Gebote für ganze Darlehen durch die Zuteilung von ganzen Darlehen, die Anforderungen des Angebots, aber sind am wenigsten zu verbriefen. 1. Ein System zur Optimierung von Festzins-Ganzkredithandel, umfassend: ein Rechensystem, das eine Softwareanwendung umfasst, die ein oder mehrere Module umfasst, die betreibbar sind, um ein Modell zur Bestimmung einer Verbriefungsstrategie für eine Population von Gesamtkrediten zu entwickeln, wobei die Verbriefungsstrategie eine Mehrzahl umfasst Von Anleihen undVerfahren des Modells, bis eine optimale Verbriefungsstrategie für die Bevölkerung von ganzen Krediten gefunden wird, undeine Benutzerschnittstelle zum Empfangen von Benutzereingaben für das eine oder mehrere Module und zum Ausgeben der optimalen Verbriefungsstrategie, wobei die Benutzerschnittstelle mit der Softwareanwendung kommuniziert. 2. System nach Anspruch 1, wobei das eine oder die mehreren Module ein senior / untergeordnetes Modul umfassen, das betreibbar ist, um die Population von Krediten in eine Senior / Untergeordnete Bindungsstruktur zu unterteilen, die mindestens eine ältere Tranche von Anleihen und mindestens eine untergeordnete Tranche von Anleihen umfasst . 3. System nach Anspruch 1, dadurch gekennzeichnet, dass das eine oder mehrere Modul ein Durchlaufmodul umfasst, das so betreibbar ist, dass es eine Population von Darlehen in einen oder mehrere Pools von Durchgängen durch Bonds zusammenfasst. 4. System nach Anspruch 1, dadurch gekennzeichnet, dass eine oder mehrere Datenquellen mit dem Rechnersystem kommunizierbar gekoppelt sind, wobei die eine oder mehrere Datenquellen Informationen zur Verwendung durch die Softwareanwendung umfassen. 5. Computerprogrammprodukt mit einem computerlesbaren Datenträger mit einem darin ausgebildeten computerlesbaren Programmcode zur Ermittlung eines optimalen Ausführungsbondkupons für jeden Kredit in einer Mehrzahl von Darlehen in einer Senior / Unterordnungsstruktur, wobei das computerlesbare Medium umfasst : Computerlesbarer Programmcode zum Erzeugen eines Modells, das eine Zielfunktion umfasst, die einen Gesamtmarktwert der Senior / Unterrang-Struktur für die Vielzahl von Krediten und einen computerlesbaren Programmcode zur Maximierung der Zielfunktion zur Maximierung des Gesamtmarktwertes des Senior darstellt / Untergeordnete Bindungsstruktur. 6. Computerprogrammprodukt nach Anspruch 5, dadurch gekennzeichnet, dass der computerlesbare Programmcode zur Maximierung der Zielfunktion einen computerlesbaren Programmcode umfasst zum: Ermitteln eines Marktpreises jeder Lohnbestimmung eines ersten gewichteten durchschnittlichen Ausführungscoupons für die Vielzahl von Krediten, Wobei der Marktpreis jeder Börse den Gesamtmarktwert der älteren / untergeordneten Struktur bei der ersten gewichteten durchschnittlichen Ausführung, die den gewichteten durchschnittlichen Ausführungscoupon kennzeichnet, bestimmt und einen Gesamtmarktwert für die obere / untergeordnete Struktur bei jeder Iteration ermittelt und den gewichteten durchschnittlichen Ausführungscoupon ermittelt Die höchsten Gesamtmarktwerte für die obere / untergeordnete Struktur. 7. Computerprogrammprodukt nach Anspruch 5, ferner mit einem computerlesbaren Programmcode zur Entwicklung und Maximierung einer Zielfunktion, um mindestens einen der Darlehen optimal in zwei Pseudokredite aufzuteilen, um die Schaffung einer nur Zinsanleihe oder nur eines Principals zu verhindern Wobei die beiden Pseudokredite unterschiedliche Couponwerte umfassen. 8. Computerprogrammprodukt mit einem computerlesbaren Datenträger mit einem darin verkörperten computerlesbaren Programmcode zur optimalen Bündelung einer Vielzahl von Darlehen, um Bond-Pools durchzulassen, wobei das computerlesbare Medium umfasst: einen computerlesbaren Programmcode zur Erzeugung eines Modells Die einer Mehrzahl von Durchlaufbindungspools entsprechen, jeweils durch einen Bondpool mit mindestens einem durch den Constraintcomputer lesbaren Programmcode zum Anwenden der mindestens einen Einschränkung jedes Durchgangs durch Bond-Pool auf jeden der Vielzahl von Darlehen, um zu bestimmen, welcher Durchgang durch Bindung erfolgt Pools jedes der Vielzahl von Darlehen förderfähig ist undcomputerlesbarer Programmcode für die Verarbeitung des Modells, um das optimale Pooling zu bestimmen. 9. Computerprogrammprodukt nach Anspruch 8, dadurch gekennzeichnet, dass das Modell eine Zielfunktion umfasst, die eine lineare Kombination eines Marktwertes jeder der Vielzahl von Krediten umfasst. 10. Computerprogrammprodukt nach Anspruch 9, wobei die Verarbeitung des Modells die Maximierung der Zielfunktion umfasst. 11. Computerprogrammprodukt nach Anspruch 8, ferner mit einem computerlesbaren Programmcode zum Transformieren der mindestens einen Einschränkung jedes Durchgangs durch Bond-Pool in eine bedingte Einschränkung. 12. Computerprogrammprodukt nach Anspruch 8, ferner mit einem computerlesbaren Programmcode zum Umwandeln mindestens eines Teils der mindestens einen Einschränkung jedes Durchgangs durch Bond-Pool in eine bedingte Bedingung vor der Verarbeitung des Modells, um sicherzustellen, dass das Modell ist lösbar. 13. Computerprogrammprodukt nach Anspruch 18, das des Weiteren einen computerlesbaren Programmcode umfasst, um jede der mindestens einen Einschränkungen in eine bedingte Einschränkung zu transformieren, um zu ermöglichen, dass Einschränkungen nur auf Bond-Pools angewendet werden können, die zugeordnet sind. 14. Computerprogrammprodukt nach Anspruch 8, ferner mit einem computerlesbaren Programmcode zum Zuordnen von mindestens einem der mehreren Darlehen zu einem nicht zugeordneten Pool. 15. Computerprogrammprodukt nach Anspruch 8, ferner umfassend computerlesbaren Programmcode zur Zuteilung von Darlehen in einen nicht zugeordneten Pool, wenn jeder der Mehrzahl von Durchlaufbindungspools nicht mit der Vielzahl von Darlehen vergeben werden kann, wobei Darlehen in dem nicht zugeordneten Pool vorhanden sind Einen Marktwert von Null aufweisen, und wobei die Verarbeitung des Modells ferner das Minimieren der Anzahl von Krediten umfasst, die dem nicht zugeordneten Pool zugeordnet sind. 16. Computerprogrammprodukt nach Anspruch 8, wobei das Modell die Einschränkung jedes Durchgangs durch einen Bond-Pool und eine mit jedem Durchgang durch Bond-Pool assoziierte Anzahlung berücksichtigt. 17. Computerprogrammprodukt mit einem computerlesbaren Datenträger mit einem darin enthaltenen computerlesbaren Programmcode zur Zuordnung eines Teils einer Vielzahl von Krediten zu einem Darlehenspaket, wobei das computerlesbare Medium aufweist: einen computerlesbaren Programmcode zur Bestimmung dessen, Der Mehrzahl von Krediten eine oder mehrere Beschränkungen des Kreditpaketcomputer-lesbaren Programmcodes zum Bestimmen eines Marktpreises jeder der Vielzahl von Krediten auf der Basis eines verbriefungsmodellcomputerlesbaren Programmcodes zum Modellieren einer Zielfunktion erfüllen, um zu bestimmen, welche Darlehen in dem Kreditpaketcomputer lesbaren Programmcode enthalten Dass eine Mehrzahl von Krediten, die die eine oder die mehreren Einschränkungen erfüllt, für die Verbriefung im Verbriefungsmodell am wenigsten rentabel ist, undcomputerlesbarer Programmcode für die Zuteilung der Kredite, die die eine oder mehrere Beschränkungen erfüllen und für die Verbriefung am wenigsten rentabel sind. 18. Computerprogrammprodukt nach Anspruch 17, wobei das Verbriefungsmodell ein älteres / untergeordnetes Modell umfasst. 19. Computerprogrammprodukt nach Anspruch 17, wobei die Zielfunktion modelliert ist, um einen Spread zwischen einem gewogenen durchschnittlichen Preis der Darlehen im Darlehenspaket und einem TBA-Anleihekurs des gewichteten durchschnittlichen Kupons der Darlehen zu minimieren Im Darlehenspaket. 20. Computerprogrammprodukt nach Anspruch 17, wobei die Zielfunktion modelliert ist, um einen Dollarkurs eines Spread zwischen einem gewogenen Durchschnittspreis der Darlehen im Darlehenspaket und einem Anleihekurs der Anleihe (TBA) des gewichteten Durchschnitts zu minimieren Coupon der Darlehen in das Darlehen Paket. Verfahren nach Anspruch 1, dadurch gekennzeichnet, dass das Verfahren die folgenden Schritte umfasst: Ermitteln einer Bindungsstruktur, um eine Vielzahl von ganzen Krediten zu verbrennen, die ein Modell entwickeln, das eine Zielfunktion umfasst, die insgesamt repräsentiert Marktwertes für die Vielzahl von ganzen Krediten, wenn sie in Anleihen entsprechend der Bindungsstruktur verarbeitet werden, die das Modell verarbeitet, um zu bestimmen, welches einer Gruppe von verfügbaren Bindungen erzeugt werden soll und in welche Bindungen der erzeugten Bindungen, die jede der Vielzahl von ganzen Krediten am besten ausführt . 22. Verfahren nach einem der Ansprüche 21 bis 22, wobei die Bindungsstruktur eine obere / untergeordnete Bindungsstruktur aufweist. 23. Verfahren nach einem der Ansprüche 21 bis 23, dadurch gekennzeichnet, 24. Verfahren nach einem der Ansprüche 21 bis 24, dadurch gekennzeichnet, dass der Gesamtbetrag der gesamten Kredite einem Gesamtpaket für ganze Kredite zugewiesen wird, wobei die Kredite mindestens eine Einschränkung erfüllen und weniger rentabel sind als die Kredite Andere ganze Darlehen, wenn in eine Bindung in der Bindungsstruktur ausgeführt. 25. Computerprogrammprodukt mit einem computerlesbaren Datenträger mit darin verkörpertem computerlesbarem Programmcode zur optimalen Bündelung von überschüssigem Coupon, der sich aus der Verbriefung einer Vielzahl von Krediten ergibt, wobei das computerlesbare Medium umfasst: einen computerlesbaren Programmcode zum Erstellen eines Modells Die einer Vielzahl von überschüssigen Couponbindungspools und einem nicht zugeordneten Pool entsprechen, wobei jeder überschüssige Couponbondpool mindestens einen einschränkenden und computerlesbaren Programmcode zum Verarbeiten des Modells umfasst, um jedem der Darlehen entweder in einen überschüssigen Couponbondpool oder in den nicht zugeordneten Pool zuzuweisen Um den Gesamtmarktwert des überschüssigen Coupon zu maximieren, der den überschüssigen Couponbindungspools zugewiesen wird. 26. Computerprogrammprodukt nach Anspruch 25, wobei das Modell eine Zielfunktion umfasst, die den gesamten Marktwert des überschüssigen Coupon darstellt, der den überschüssigen Couponbindungspools zugewiesen wird. 27. Computerprogrammprodukt nach Anspruch 25, ferner mit einem computerlesbaren Programmcode zur Transformation jeder der mindestens einen Einschränkungen in eine bedingte Einschränkung. 28. Computerprogrammprodukt nach Anspruch 25, das des Weiteren einen computerlesbaren Programmcode umfasst, um jede der mindestens einen Einschränkungen in eine bedingte Einschränkung umzuwandeln, um zu ermöglichen, dass Einschränkungen nur auf überschüssige Couponbindungspools anwendbar sind, die zugeordnet sind. 29. Computerprogrammprodukt nach Anspruch 25, das des Weiteren umfasst: einen computerlesbaren Programmcode zum Identifizieren der überschüssigen Couponpools, für die jeder der Kredite basierend auf den Sicherheitenattributen der Kredite und dem computerlesbaren Programmcode zum Kollabieren jedes identifizierten Kredites zugeteilt werden kann Für einen Überschuss Coupon Pool in einem einzigen Darlehen, um die Zahl der Kredite in das Modell zu reduzieren. Beschreibung: 0001 Diese nicht-provisorische Patentanmeldung beansprucht ihre Priorität unter 35 U. S.C. 119 bis zu der vorläufigen US-Patentanmeldung Nr. 61 / 191,011 mit dem Titel System und Verfahren zur Optimierung von festverzinslichen Vollkreditgeschäften, auf die hiermit ausdrücklich Bezug genommen wird. 0002 Die vorliegende Erfindung bezieht sich allgemein auf Systeme und Verfahren zur Optimierung des Kredithandels und insbesondere auf computergestützte Systeme und computerimplementierte Verfahren zur Optimierung von Paketen von ganzen Krediten zur Ausführung in Anleihen oder Verkaufen als ganze Kreditpakete. 0003 Finanzinstitute wie Investmentbanken, Kaufkredite und Kreditportfolios von Banken oder Kreditgebern, um vorrangig die Kredite in Anleihen zu verbriefen und dann Anleihen an Anleger zu verkaufen. Diese Anleihen gelten als Asset-Backed Securities, da sie durch das Vermögen der Kredite besichert sind. Viele Arten von Darlehen können in Anleihen verbrieft werden, einschließlich Wohnungshypotheken, gewerbliche Hypotheken, Kfz-Darlehen und Kreditkartenforderungen. 0004 Eine Vielzahl von Bindungsstrukturen kann aus einer Bevölkerung von Darlehen geschaffen werden, wobei jede Struktur Merkmale und Einschränkungen aufweist, die berücksichtigt werden müssen, um den Gewinn zu maximieren, den ein Finanzinstitut durch die Verbriefung der Kredite in Schuldverschreibungen realisieren kann. Die optimale Gruppierung oder Bündelung von Darlehen in Anleihen für eine gegebene Bindungsstruktur und eine gegebene Kreditpopulation kann von den Merkmalen jedes Darlehens in der Bevölkerung abhängen. Darüber hinaus kann der Anleihepool oder der Ausführungskupon, den ein einzelnes Darlehen ausführt, von dem Anleihepool oder der bestmöglichen Ausführung eines jeden anderen Darlehens in der Bevölkerung abhängen. Da die typische Darlehenspopulation, die für die Verbriefung in Anleihen in Betracht gezogen wird, sehr groß ist (z. B. 10.000 Darlehen oder mehr), kann die Bestimmung einer optimalen Bündelung von Darlehen für die Verbriefung in Anleihen eine Herausforderung darstellen. 0005 Dementsprechend werden Systeme und Verfahren zur Optimierung der Verpackung einer Population von Darlehen in Bindungen für eine gegebene Bindungsstruktur benötigt. 0006 Die Erfindung stellt computergesteuerte Systeme und computerimplementierte Verfahren zur Optimierung des festen Zinssatzes des gesamten Kredithandels für eine Population von ganzen Krediten bereit. 0007 Ein Aspekt der vorliegenden Erfindung stellt ein System zur Optimierung eines festen Zinssatzes für den gesamten Kredithandel bereit. Dieses System umfasst ein Computersystem, das eine Softwareanwendung umfasst, die ein oder mehrere Module umfasst, die betreibbar sind, um ein Modell zur Bestimmung einer Verbriefungsstrategie für eine Population von Gesamtdarlehen zu entwickeln, wobei die Verbriefungsstrategie Anleihen umfasst und so betreibbar ist, dass das Modell bis zu einer optimalen Verbriefungsstrategie verarbeitet wird Die Bevölkerung von ganzen Krediten gefunden wird, und eine Benutzerschnittstelle zum Empfangen von Benutzereingaben für das eine oder mehrere Module und zum Ausgeben der optimalen Verbriefungsstrategie, wobei die Benutzerschnittstelle mit der Softwareanwendung kommuniziert. 0008 Ein weiterer Aspekt der vorliegenden Erfindung sieht ein Computerprogrammprodukt mit einem computerlesbaren Medium mit einem darin verkörperten computerlesbaren Programmcode zur Bestimmung eines optimalen Ausführungsbondkupons für jedes Darlehen in einer Gruppe von Darlehen in einer älteren / untergeordneten Bindungsstruktur vor. Dieses computerlesbare Medium enthält einen computerlesbaren Programmcode zum Erzeugen eines Modells, das eine Zielfunktion umfasst, die einen Gesamtmarktwert der Senior / Unterrang-Bindungsstruktur für die Darlehen und einen computerlesbaren Programmcode zur Maximierung der Zielfunktion zur Maximierung des Gesamtmarktes darstellt Wert der Senior / Subordinated Bond-Struktur. 0009 Ein weiterer Aspekt der Erfindung sieht ein Computerprogrammprodukt mit einem computerlesbaren Datenträger vor, der einen computerlesbaren Programmcode aufweist, der darin verkörpert ist, um Kredite optimal in Bond-Pools zu platzieren. Dieses computerlesbare Medium enthält einen computerlesbaren Programmcode zum Erzeugen eines Modells, das dem Durchlaufen von Bond-Pools entspricht, wobei jeder durch einen Bond-Pool geht, einschließlich eines complimentencomputerlesbaren Programmcodes zum Anwenden der Einschränkung jedes Durchgangs durch Bond-Pool auf jeden der Kredite Um festzustellen, welchen Durchgang durch Bond-Pools jeder der Darlehen ist berechtigt und Computer-lesbaren Programmcode für die Verarbeitung des Modells, um die optimale Pooling zu bestimmen. Ein weiterer Aspekt der Erfindung sieht ein Computerprogrammprodukt mit einem computerlesbaren Medium mit einem darin verkörperten computerlesbaren Programmcode zum Zuordnen eines Teils einer Gruppe von Darlehen zu einem Darlehenspaket vor. Dieses computerlesbare Medium enthält einen computerlesbaren Programmcode zum Bestimmen, welche der Kredite eine oder mehrere Beschränkungen des Kreditpaketcomputer-lesbaren Programmcodes zum Bestimmen eines Marktpreises jeder der Kredite auf der Grundlage eines computerlesbaren Programms des Verbriefungsmodells erfüllen Code für die Modellierung einer Zielfunktion, um festzustellen, welche Kredite in der Gruppe von Krediten, die die eine oder mehrere Beschränkungen erfüllen, für die Verbriefung im Verbriefungsmodell am wenigsten gewinnbringend sind und ein computerlesbarer Programmcode für die Zuteilung der Kredite, die die eine oder mehrere Einschränkungen erfüllen Am wenigsten rentabel für die Verbriefung in das Kreditpaket. Ein weiterer Aspekt der vorliegenden Erfindung stellt ein Verfahren zur Optimierung eines festen Zinssatzes für den gesamten Kredithandel bereit. Dieses Verfahren umfasst die Schritte des Bestimmens einer Bindungsstruktur, um ganze Darlehen zu verbriefen, die ein Modell entwickeln, das eine Zielfunktion umfasst, die einen Gesamtmarktwert für die gesamten Darlehen repräsentiert, wenn sie in Anleihen entsprechend der Bindungsstruktur, die das Modell verarbeitet, bestimmt werden, um zu bestimmen, Vorhandene Anleihen generiert werden sollten und in die Anleihen der generierten Anleihen, die jeder der gesamten Kredite am besten ausführt. Ein weiterer Aspekt der vorliegenden Erfindung stellt ein Computerprogrammprodukt bereit, das ein computerlesbares Medium mit einem darin verkörperten computerlesbaren Programmcode enthält, um überschüssigen Coupon, der aus Verbriefungsdarlehen resultiert, optimal zusammenzuführen. Dieses computerlesbare Medium enthält einen computerlesbaren Programmcode zum Erzeugen eines Modells, das Überschüssen von Coupon-Bond-Pools entspricht, und eines nicht zugeordneten Pools, wobei jeder überschüssige Coupon-Pool mindestens eine Einschränkung und einen computerlesbaren Programmcode zum Verarbeiten des Modells enthält, Die Kredite entweder in eine überschüssige Coupon-Pool oder in den nicht zugewiesenen Pool, um den Gesamtmarktwert der überschüssigen Coupon zu maximieren, die den überschüssigen Coupon-Pools zugewiesen wird. 0013 Diese und andere Aspekte, Merkmale und Ausführungsformen der Erfindung werden einem Durchschnittsfachmann unter Berücksichtigung der folgenden detaillierten Beschreibung der veranschaulichten Ausführungsformen erkennbar, die den besten Modus zum Ausführen der Erfindung, wie sie gegenwärtig wahrgenommen wird, veranschaulichen. KURZE BESCHREIBUNG DER ZEICHNUNGEN Für ein vollständigeres Verständnis der beispielhaften Ausführungsformen der vorliegenden Erfindung und der Vorteile davon wird nun auf die folgende Beschreibung in Verbindung mit den beigefügten Figuren verwiesen, die nachfolgend kurz beschrieben werden. Fig. 1 ist ein Blockdiagramm, das ein System zur Optimierung eines Festzins-Ganzkredithandels gemäß einer beispielhaften Ausführungsform der vorliegenden Erfindung darstellt. 0016 Fig. 2 ist ein Flussdiagramm, das ein Verfahren zum Optimieren eines Festzins-Ganzkredithandels gemäß einer beispielhaften Ausführungsform der vorliegenden Erfindung darstellt. 0017 Fig. 3 ist ein Flussdiagramm, das ein Verfahren zum Bestimmen einer Verbriefungsstrategie für eine Population von Krediten gemäß einer beispielhaften Ausführungsform der vorliegenden Erfindung darstellt. 0018 Fig. 4 ist ein Flussdiagramm, das ein Verfahren zum Verpacken einer Population von Krediten in einer älteren / untergeordneten Struktur gemäß einer beispielhaften Ausführungsform der vorliegenden Erfindung darstellt. 0019 Fig. 5 ist ein Flussdiagramm, das ein Verfahren zum Verpacken einer Population von Krediten in einer älteren / untergeordneten Struktur gemäß einer beispielhaften Ausführungsform der vorliegenden Erfindung darstellt. 0020 Fig. 6 ist ein Flussdiagramm, das ein Verfahren zum Verpacken einer Population von Darlehen in Durchlaufbindungen gemäß einer beispielhaften Ausführungsform der vorliegenden Erfindung darstellt. 0021 Fig. 7 ist ein Flussdiagramm, das ein Verfahren zum Verpacken von Gesamtkrediten gemäß einer beispielhaften Ausführungsform der vorliegenden Erfindung darstellt. Fig. 8 ist ein Flussdiagramm, das ein Verfahren zum Bündeln von überschüssigem Coupon gemäß einer beispielhaften Ausführungsform der vorliegenden Erfindung darstellt. DETAILLIERTE BESCHREIBUNG BEISPIELHAFTER AUSFÜHRUNGSFORMEN 0023 Die Erfindung stellt computerbasierte Systeme und Verfahren zur Optimierung eines festen Zinssatzes für den gesamten Kredithandel bereit. Insbesondere stellt die Erfindung computerbasierte Systeme und Verfahren zum optimalen Verpacken einer Population von ganzen Krediten in Anleihen entweder in einer Senior / Subordinate-Bindungsstruktur oder in Pools von Pass-Through-Effekten, die von einer Regierungsbehörde garantiert werden, bereit. Modelle für jede Art von Bindungsstruktur werden auf die Population von Darlehen verarbeitet, bis entweder ein optimales Bindungspaket gefunden ist oder ein Benutzer bestimmt, dass eine Lösung von ausreichender Qualität gefunden wird. Darüber hinaus können die Modelle für Gebote für ganze Kredite ausmachen, indem sie ganze Kredite zuteilen, die die Anforderungen des Angebots erfüllen, aber am wenigsten günstig sind, um verbrieft zu werden. Obwohl die beispielhaften Ausführungsformen der Erfindung in Form von Gesamtdarlehen (insbesondere Festzins-Wohnhypotheken) erörtert werden, können Aspekte der Erfindung auch auf den Handel mit anderen Arten von Darlehen und Vermögenswerten, wie z. B. variabel verzinsliche Darlehen und revolvierende Schulden, angewendet werden. Die Erfindung kann ein Computerprogramm umfassen, das die hierin beschriebenen und in den angehängten Flussdiagrammen dargestellten Funktionen verkörpert. Es sollte jedoch offensichtlich sein, dass es viele verschiedene Arten der Implementierung der Erfindung bei der Computerprogrammierung geben könnte und die Erfindung nicht als auf irgendeinen Satz von Computerprogrammbefehlen beschränkt angesehen werden sollte. Ferner wäre ein erfahrener Programmierer in der Lage, ein derartiges Computerprogramm zu schreiben, um eine Ausführungsform der offenbarten Erfindung basierend auf den Flussdiagrammen und der zugehörigen Beschreibung in dem Anwendungstext zu implementieren. Daher wird die Offenlegung eines bestimmten Satzes von Programmcodebefehlen nicht für ein angemessenes Verständnis der Herstellung und Verwendung der Erfindung als notwendig erachtet. Die erfindungsgemäße Funktionalität des beanspruchten Computerprogramms wird in der nachfolgenden Beschreibung in Verbindung mit den Figuren, die den Programmablauf darstellen, näher erläutert. Ferner versteht es sich für den Fachmann, dass eine oder mehrere der beschriebenen Stufen durch Hardware, Software oder eine Kombination davon ausgeführt werden können, wie es in einem oder mehreren Computersystemen ausgeführt sein kann. 0025 Unter Bezugnahme auf die Zeichnungen, in denen gleiche Bezugszeichen gleiche Elemente in allen Figuren darstellen, werden Aspekte der beispielhaften Ausführungsformen im Detail beschrieben. FEIGE. 1 ist ein Blockdiagramm, das ein System 100 zur Optimierung eines festen Zinssatzes des gesamten Kredithandels gemäß einer beispielhaften Ausführungsform der vorliegenden Erfindung darstellt. Bezug nehmend auf Fig. Wie in 1 dargestellt, umfasst das System 100 ein mit einem verteilten Netzwerk 140 verbundenes Rechensystem 110. Das Rechensystem 110 kann ein Personalcomputer sein, der mit dem verteilten Netzwerk 140 verbunden ist. Das Rechensystem 110 kann eine oder mehrere Anwendungen umfassen, wie z Dieser beispielhafte Kredithandeloptimierer 120 umfasst vier Module 121-124, die einzeln oder miteinander interagieren können, um eine optimale Verpackung von Krediten in eine oder mehrere Bindungsstrukturen und ganze Kreditpakete bereitzustellen. 0026 Ein älteres / untergeordnetes Modul 121 verteilt Kredite in eine obere / untergeordnete Rentenstruktur mit Anleihen mit unterschiedlichen Bonitätsraten und unterschiedlichen Netto-Kuponwerten. Wie im einzelnen unter Bezugnahme auf die Fig. 4 - 5 verteilt das Senior / Subordinate-Modul 121 die Kredite in Anleihen mit einem AAA-Rating, nachrangigen Anleihen mit niedrigeren Bonitätseinstufungen und je nach Krediten und Couponwerten der AAA-Anleihen und nachrangigen Anleihen nur Anleihen und Anleihen Kapitalanleihen. 0027 Ein Pass-Thru-Modul 122 verteilt die Kredite über die von einer Regierungsstelle garantierten Anleihen, wie Freddie Mac oder Fannie Mae. Das Durchlaufmodul 122 optimiert die Kredite optimal in "To Be Announced (TBA)" - Passagen, die auf einer Vielzahl von Einschränkungen basieren. Das Durchlaufmodul 122 wird nachfolgend unter Bezugnahme auf Fig. 1 näher erläutert. 6. 0028 Ein Gesamtdarlehenmodul 123 vergibt Darlehen zur Deckung von Angeboten für Kreditportfolien, die bestimmte Anforderungen und Beschränkungen des Angebots erfüllen. Das gesamte Darlehensmodul 123 kann entweder mit dem älteren / untergeordneten Modul 121 oder dem Durchlaufmodul 122 interagieren, um Kredite zuzuteilen, die die Anforderungen der Gebote erfüllen, aber weniger günstig sind, um verbrieft zu werden. Das gesamte Darlehensmodul 123 wird nachfolgend unter Bezugnahme auf 5 näher erläutert. Ein überschüssiges Couponmodul 124 verteilt überschüssige Coupons von verbrieften Krediten in verschiedene Bondtranchen oder Pools. Das überschüssige Couponmodul 124 kann überschüssige Coupons zusammenfassen, die sich aus einer älteren / untergeordneten Bindungsstruktur ergeben, die durch das ältere / untergeordnete Modul 121 erzeugt wird, und / oder überschüssige Coupons, die sich aus dem Passieren von durch das Durchlaufmodul 122 erzeugten Wertpapieren ergeben Weiter unten unter Bezugnahme auf Fig. Die Benutzer können Informationen in eine Benutzerschnittstelle 115 des Rechensystems 110 eingeben. Diese Informationen können eine Art von Bindungsstruktur zur Optimierung, Beschränkungen, die mit Bindungsstrukturen und Bindungspools, mit Kreditinformationen verbundenen Informationen und anderen erforderlichen Informationen verbunden sind, einschließen Nachdem die Information von der Benutzerschnittstelle 115 empfangen wurde, wird die Information in einer Datenspeichereinheit 125 gespeichert, die eine Software-Datenbank oder eine andere Speicherstruktur sein kann. Die Benutzer können auch eine Population von Darlehen auswählen, die für eine Optimierung über die Benutzerschnittstelle 115 zu berücksichtigen sind. Die Darlehen können in einer Datenbank gespeichert sein, die auf dem Computersystem 110 oder an einer mit dem verteilten Netzwerk 140 verbundenen Datenquelle 150 gespeichert oder gekoppelt ist. Die Benutzerschnittstelle 115 kann auch an den Benutzer die Bond-Pakete und die gesamten Kreditpakete ausgeben, die durch den Kredithandel-Optimierer 120 bestimmt werden. 0031 Der Kredithandel-Optimierer 120 kann über das verteilte Netzwerk 140 mit mehreren Datenquellen 150 kommunizieren Kann der Kredithandeloptimierer 120 mit einer Datenquelle 150 kommunizieren, um Fannie Mae TBA-Preise und eine andere Datenquelle 150 zu bestimmen, um die US-Treasury-Preise zu bestimmen. In einem anderen Beispiel kann der Kredithandeloptimierer 120 mit einer Datenquelle 150 kommunizieren, um auf Informationen zuzugreifen, die mit Geboten für ganze Kreditpakete verknüpft sind. Das verteilte Netzwerk 140 kann ein lokales Netzwerk (LAN), ein Wide Area Network (WAN), das Internet oder ein anderer Netzwerktyp sein. 0032 Fig. 2 ist ein Flussdiagramm, das ein Verfahren 200 zur Optimierung eines festen Rate-Gesamt-Darlehenhandels gemäß einer beispielhaften Ausführungsform der vorliegenden Erfindung darstellt. In den Fig. Wie in den 1 und 2 zu sehen ist, empfängt die Benutzerschnittstelle 115 in Schritt 205 die Eingabe von einem Benutzer. Diese Benutzereingabe wird von dem Kredithandeloptimierer 120 verwendet, um die Bindungsstruktur zu bestimmen, die für eine Population von Krediten optimiert werden sollte. Wenn der Benutzer zum Beispiel das optimale Zusammenführen von Darlehen zum Durchlaufen von Anleihen finden möchte, kann der Benutzer die Beschränkungen für jeden Bondpool eingeben. Beispiele für Einschränkungen für den Durchgang von Anleihepools umfassen Einschränkungen für Kreditsalden, Gesamtzahl der Kredite für einen Pool und Gesamtkreditbilanz für einen Pool. In Schritt 210 wird eine Population von Krediten zur Optimierung ausgewählt. Die Population von Darlehen kann aus Darlehen ausgewählt werden, die in einer Darlehensdatenbank gespeichert sind, die auf dem Rechensystem 110 gespeichert ist, oder aus einer Datenbank an einer Datenquelle 150, die mit dem verteilten Netzwerk 140 verbunden ist (Z. B. Investmentbank) des Kredithandelsoptimierers 120 und / oder Darlehen, die von einer anderen Bank, einem Kreditgeber oder einer anderen Institution angeboten werden. Beispielsweise kann ein Benutzer den Kredithandeloptimierer 120 verwenden, um den maximalen Marktwert eines zum Verkauf stehenden Kreditportfolios zu finden, um ein optimales Angebot für das Kreditportfolio zu bestimmen. Darüber hinaus kann ein Benutzer die Population von Darlehen durch die Festlegung bestimmter Kriterien, wie maximale Darlehensbilanz, Standort der Darlehen und FICO Score auswählen. In Schritt 215 bestimmt der Kredithandeloptimierer 120 eine in Schritt 210 ausgewählte Verbriefungsstrategie für die Population von Krediten. Abhängig von den in Schritt 205 empfangenen Benutzereingaben verwendet der Kredithandeloptimierer 120 eines oder mehrere des älteren / untergeordneten Moduls 121 , Das Durchlaufmodul 122 und das gesamte Kreditmodul 123, um die Verbriefungsstrategie für die Bevölkerung von Darlehen zu bestimmen. Schritt 215 wird ausführlicher unter Bezugnahme auf die Fig. 3-7. In Schritt 220 bestimmt der Kredithandeloptimierer 120, ob die im Schritt 215 zurückgegebene Verbriefungsstrategie ausreichend hoch ist. In dieser beispielhaften Ausführungsform iteriert der Kredithandeloptimierer 120 den Schritt des Bestimmens einer Verbriefungsstrategie für die Population von Krediten, bis entweder eine optimale Lösung gefunden wird oder der Benutzer bestimmt, dass die Verbriefungsstrategie von ausreichend hoher Qualität ist. Damit der Benutzer feststellen kann, ob die Verbriefungsstrategie von ausreichender hoher Qualität ist, kann der Kredithandeloptimierer 120 die Ergebnisse an den Benutzer über die Benutzerschnittstelle 115 ausgeben. Der Kredithandeloptimierer 120 kann diese Ergebnisse basierend auf einer Zahl ausgeben Von Iterationen von Schritt 215 (zB alle 100 Iterationen) oder wenn ein bestimmtes Qualitätsniveau gefunden wird. Die Benutzerschnittstelle 115 kann dann eine Eingabe von dem Benutzer empfangen, die anzeigt, ob die Verbriefungsstrategie von ausreichender hoher Qualität ist. Wenn die Verbriefungsstrategie von ausreichender hoher Qualität oder optimal ist, geht das Verfahren 200 zu Schritt 225 über. Ansonsten kehrt das Verfahren 200 zu Schritt 215 zurück. 0036 In einer beispielhaften Ausführungsform wird die Qualität in Form des Gesamt-Dollarwerts der Population von gemessen Darlehen. Zum Beispiel kann der Benutzer wünschen, eine Bevölkerung von Darlehen für mindestens zehn Millionen Dollar zu verkaufen, um auf die Darlehen bieten. Der Benutzer kann einen Schwellenwert für den Kredithandeloptimierer 120 setzen, um nur eine Lösung zurückzugeben, die diese Schwelle erfüllt, oder eine Lösung, die die optimale Lösung ist, wenn die optimale Lösung unter dieser Schwelle liegt. Im Schritt 225 kann das überschüssige Couponmodul 124 des Kredithandhabungsoptimierers 120 jeden überschüssigen Coupon, der sich aus der in Schritt 215 bestimmten Verbriefungsstrategie ergibt, zusammenfassen. Dieser Schritt ist optional und wird nachfolgend unter Bezugnahme auf 5 näher erläutert. Im Schritt 230 kommuniziert der Kredithandeloptimierer 120 die endgültige Verbriefungsstrategie mit der Benutzerschnittstelle 115 zur Ausgabe an einen Benutzer. Die Benutzerschnittstelle 115 kann die endgültige Verbriefungsstrategie und optional andere mögliche Verbriefungsstrategien mit ähnlichen Qualitätsstufen anzeigen. Fig. 3 ist ein Flussdiagramm, das ein Verfahren 215 zum Bestimmen einer Verbriefungsstrategie für eine Population von Darlehen gemäß einer beispielhaften Ausführungsform der vorliegenden Erfindung darstellt. In den Fig. Wie in den 1 und 3 gezeigt, bestimmt der Kredithandeloptimierer 120 bei Schritt 305, welche Modelle zur Bestimmung der Verbriefungsstrategien verwendet werden sollen. In diesem exemplarischen Ausführungsbeispiel umfasst der Kredithandeloptimierer 120 ein senior / untergeordnetes Modul 121, ein Durchlaufmodul 122 und ein vollständiges Darlehensmodul 123. Jedes der Module 121-123 kann ein Modell zum Bestimmen einer optimalen Verpackung aufbauen und verarbeiten Der Darlehen, wie im Folgenden erörtert. Der Kredithandeloptimierer 120 bestimmt, welche Module 121-123 auf der Grundlage der von dem Benutzer empfangenen Eingabe in Schritt 205 von 1 zu verwenden sind. Zum Beispiel kann der Benutzer spezifizieren, dass nur eine obere / untergeordnete Struktur für die Bevölkerung von Darlehen optimiert werden sollte. Alternatively, if the user has entered bid information for a portfolio of whole loans, the loan trading optimizer 120 can execute the whole loan module 123 with the senior/subordinate module 121 and/or the pass-thru module 122 to determine which of the loans meet the requirements of the bid and are least favorable for securitization. Additionally, a user may specify that both an optimal senior/subordinate bond structure and an optimal pooling of pass through bonds should be determined for the population of loans. 0040 If the user selected that a senior/subordinate bond structure should be optimized, the method 215 proceeds to step 310. At step 310, the senior/subordinate module 121 develops a model for packaging the population of loans into a senior/subordinate bond structure and processes the model to determine an optimal senior/subordinate bond structure for the loan population. Step 310 is discussed in more detail with reference to FIGS. 4 and 5. After the senior/subordinate structure is determined, the method 215 proceeds to step 220 (FIG. 2). 0041 If the user selected that the population of loans should be optimally pooled into pass through bonds, the method 215 proceeds to step 315. At step 315, the pass-thru module 122 develops a model for pooling the population of loans into multiple bond pools and processes the model to determine an optimal pooling for the loan population. Step 315 is discussed in more detail with reference to FIG. 6. After the pooling is determined, the method 215 proceeds to step 220 (FIG. 2). 0042 If the user selected that whole loans should be allocated to a package of whole loans to be sold, the method 215 proceeds to step 320. At step 320, the whole loan module 123 develops a model for allocating whole loans that meet certain constraints and are less favorable to be securitized into a whole loan package and processes the model to determine which loans are best suited for the whole loan package. Step 320 is discussed in more detail with reference to FIG. 7. After the whole loan package is determined, the method 215 proceeds to step 220 (FIG. 2). 0043 FIG. 4 is a flow chart depicting a method 310 for packaging a population of loans into a senior/subordinate bond structure in accordance with one exemplary embodiment of the present invention. As briefly discussed above with reference to FIG. 1, a senior/subordinate bond structure is a structure where bonds with different credit ratings are created. Typically, the senior/subordinate bond structure includes a senior tranche of bonds having a AAA or similar credit rating and a subordinate tranche of bonds having a lower credit rating. The senior tranche is protected from a certain level of loss by the subordinate tranche as the subordinate tranche incurs the first losses that may occur. The senior trance can be sold to investors desiring a more conservative investment having a lower yield, while the subordinated tranche can be sold to investors willing to take on more risk for a higher yield. For the purpose of this application, a AAA rated bond refers to a bond in the senior tranche, but not necessarily a bond having a credit rating of AAA. 0044 Additionally, interest only (IO) and principal only (PO) bonds may be created in a senior/subordinate structure. An IO bond is created when the net coupon of a loan is more than the coupon of the bond in which the loan executes. Thus, the difference in the loan coupon and the bond coupon creates an interest only cash flow. Similarly, when the loan coupon is less than the bond coupon, a PO bond is created which receives only principal payments. 0045 Referring to FIGS. 1 and 4, at step 405, the senior/subordinate module 121 determines the bond coupons that are available for executing the loans into. The senior/subordinate module 121 may obtain the available bond coupons from a data source 150 or may receive the available bond coupons from the user by way of the user interface 115 in step 205 of FIG. 2. For example, the user may desire to execute the loans into bonds having coupon values between 4.5 and 7.0. 0046 At step 410, the senior/subordinate module 121 selects a first bond coupon value from the range of available bond coupon values. This first coupon value can be the lowest bond coupon value, the highest coupon value, or any other bond coupon value in the range of available bond coupon values. 0047 At step 415, the senior/subordinate module 121 determines the execution price of each loan in the population of loans at the selected coupon value. Each loan in the population of loans is structured as a bond. The cash flow of each loan is distributed into symbolic AAA and subordinate bonds, and depending on the coupon of the loan and the selected bond coupon, an IO or PO bond. The principal payment and interest cash flows of each loan is generated in each period accounting for loan characteristics of the loan, such as IO period, balloon terms, and prepayment characteristics. The cash flow generated in each period is distributed to all bonds that the loan executes taking into account shifting interest rules that govern the distribution of prepayments between the AAA and the subordinate bonds in each period. The proportion in which the principal payments are distributed depends on the subordination levels of the AAA and the subordinate bonds. The subordination levels are a function of the loan attributes and are supplied by rating agencies for each loan through an Application Program Interface (API) coupled to the computing device 110. Prepayments are first distributed pro rate to the PO bond and then between the AAA and the subordinate bonds based on the shifting interest rules. Any remaining prepayment is distributed proportionally among all the subordinate bonds. The interest payment for each of the bonds is a direct function of the coupon value for the bond. 0048 After the cash flows of each of the bonds for each of the loans have been generated, the present value of these cash flows is determined. For fixed rate loans, the AAA bonds can be priced as a spread to the To Be Announced (TBA) bond prices. However, the subordinate bond cash flows are discounted by a spread to the U. S. Treasury Yield Curve. The TO and PO bonds are priced using the Trust TO and PO prices. Finally, the price of the AAA bond, the subordinate bonds, and the TO or PO bond is combined proportionally for each loan based on the bond sizes to get the final bond price for each loan. This final bond price is the price of the loan executing into the bond given the selected coupon value of the bond. 0049 At step 420, the senior/subordinate module 121 determines if there are more bond coupon values in the range of available bond coupon values. If there are more bond coupon values, the method 310 proceeds to step 425. Otherwise, the method 310 proceeds to step 430. 0050 At step 425, the next bond coupon value in the range of available bond coupon values is selected. In one exemplary embodiment, the senior/subordinate module 121 can increment from the previous selected bond coupon value (e. g. 0.5 increments) to determine the next bond coupon value. In an alternative embodiment, the senior/subordinate module 121 can progress through a fixed list of bond coupon values. For example, the user may select specific bond coupon values to execute the loans into, such as only 4.0, 5.0, and 6.0. After the next bond coupon value is selected, the method 310 returns to step 415 to determine the execution price of each loan in the population of loans at the new coupon value. 0051 At step 430, the senior/subordinate module 121 determines, for each loan in the population of loans, which bond coupon value yielded the highest final bond price for that particular loan. 0052 At step 435, the senior/subordinate module 121 groups the loans according to the bond coupon value that yielded the highest final bond price for each loan. For example, if the available bond coupon values are 4.0, 5.0, and 6.0, each loan that has a highest final bond price at 4.0 are grouped together, while each loan that has a highest final bond price at 5.0 are grouped together, and each loan that has a final bond price at 6.0 are grouped together. After step 435 is complete, the method proceeds to step 220 (FIG. 2). 0053 In the embodiment of FIG. 4, the subordinate bonds for each loan execute at the same bond coupon value as the corresponding AAA bond. For example, if a first loan of 6.25 best executes into a bond having a coupon value of 6.0, then a AAA bond of 6.0 and a subordinate bond that is priced at U. S. Treasury spreads specified for execution coupon 6.0 is created. If a second loan of 5.375 best executes into a bond having a coupon value of 5.0, then a AAA bond of 5.0 and a subordinate bond that is priced at U. S. Treasury spreads specified for execution coupon 5.0 is created. This creates two AAA bonds and two subordinate bonds at two different coupon values. 0054 Typically, when loans are packaged in a senior/subordinate bond structure, multiple AAA bonds with multiple coupon values are created with a common set of subordinate bonds that back all of the AAA bonds. This set of subordinate bonds is priced at the weighted average (WA) execution coupon of all of the AAA bonds created for the loan package. Pricing the subordinate bonds at the WA execution coupon implies that the spread to the benchmark U. S. Treasury curve, which is a function of the bond rating and the execution coupon of the subordinate bond, has to be chosen appropriately. In order to know the WA execution coupon of all the AAA bonds for the population of loans, the best execution coupon for each loan in the population of loans has to be known. In order to know the best execution coupon of each loan, the loan has to be priced at different bond coupon values and the AAA and subordinate bonds created at those coupons also have to be priced. However, the subordinate bond cash flows are discounted with spreads to the U. S. Treasury, with spreads taken at the WA best execution coupon which is still unknown. This creates a circular dependency as the best execution of each loan in the population of loans now depends on all the other loans in the population. 0055 FIG. 5 is a flow chart depicting a method 500 for packaging a population of loans into a senior/subordinate structure in accordance with one exemplary embodiment of the present invention. The method 500 is an alternative method to that of method 310 of FIG. 4, accounting for pricing subordinate bonds at the WA execution coupon and provides a solution to the circular dependency discussed above. 0056 The WA execution coupon for a population of loans can be calculated by: 0057 In Equation 1, x ij is a binary variable with a value of either 0 or 1, whereby a value of 1 indicates that the i th loan is optimally executing at the j th execution coupon value. The parameters d 0 to d j represent the j execution coupon values. For example, the coupons values could range from 4.5 to 7.0. Finally, the parameter b i represents the balance of the i th loan. 0058 If q o to q j are the weights of the j execution coupons, then: 0059 where q 0 to q 1 are special ordered sets of type two, which implies that at most two are non-zero and the two non-zero weights are adjacent. 0060 Let Pa ij be the price of the AAA bond when loan i executes at coupon j. Next, let Ps ij be the overall price of all of the subordinate bonds combined when loan i executes at coupon j. Finally, let Pio ij and Ppo ij be the prices of the IO and PO bonds respectively when loan i executes at coupon j. 0061 The AAA bond prices and the TO and PO bond price components of loan i executing at coupon j are linear functions of x ij . The AAA priced as a spread to the TBA is a function of the execution coupon of the AAA bond and the IO/PO prices are a lookup based on collateral attributes of the loan. However, pricing the subordinate bonds is complicated because the subordinate cash flows are discounted at the WA execution coupon. 0062 Let p i be a matrix of size jj that contains the prices of the subordinate bonds. The (m, n) entry of the matrix represents the price of the subordinate cash flows when the cash flow of loan i is generated assuming that loan i executes at the m th coupon and is discounted using subordinate spreads for the n th coupon. Subordinate spreads to the U. S. Treasury are a function of the execution coupon and any product definition, such as the size (e. g. Jumbo/Conforming), maturity (e. g. 15/30 years), etc. The price of the subordinate bond of the i th loan can be written as: 0063 which is a non linear expression as the equation contains a product of q and x ij . both of which are variables in this equation. 0064 FIG. 5 provides a method 500 for overcoming this non-linearity. Referring to FIG. 5, at step 505, the senior/subordinate module 121 determines the optimal execution price for each loan in the population of loans independent of the WA execution coupon. In one exemplary embodiment, the senior/subordinate module 121 employs the method 310 of FIG. 4 to find the optimal execution price for each loan. 0065 At step 510, the senior/subordinate module 121 determines the WA execution coupon corresponding to the optimal execution price for each loan. This WA execution coupon can be found using Equation 1 above. 0066 At step 515, the senior/subordinate module 121 determines the weights (i. e. q 0 - q j ) of each execution coupon for the WA execution coupon found in step 510. These weights can be found using Equation 3 above. 0067 At step 520, the senior/subordinate module 121 builds a model including an objective function to determine the optimal execution coupon for each loan to maximize the total market value of all of the bonds in the senior/subordinate structure. The expression of the objective function contains ij terms, where the ij term represents the market value of executing the i th loan at the j th execution coupon. After inserting the values of the weights of the execution coupons (i. e. qs) into the expression for subordinate bond price (Equation 4), only two of the terms will be non-zero for the sub-price of the i th loan executing at the j th execution coupon. 0068 As the method 200 of FIG. 2 iterates step 215, different WA execution coupons can be used to maximize the objective function. The iterations can begin with the WA execution coupon found in step 510 and the senior/subordinate module 121 can search around this WA execution coupon until either the optimal solution is found or the user decides that a solution of sufficient high quality is found in step 220 of FIG. 2. In other words, the senior/subordinate module 121 searches for an optimal solution by guessing several values of the WA execution coupon around an initial estimate of the optimal execution coupon. After a final solution is found by the senior/subordinate module 121, the loans can be grouped based on the coupon values for each loan in the final solution to the objective function. 0069 In some instances, one of the undesirable effects of the senior/subordinate bond structure is the creation of IO and/or PO bonds, which may not trade as rich as AAA bonds. In some exemplary embodiments, the senior/subordinate module 121 can ameliorate this issue by considering a loan as two pseudo loans. For example, a loan having a net rate of 6.125 and a balance of 100,000 can be considered equivalent to two loans of balance b1 and b2 and coupons 6 and 6.5 such that the following conditions are satisfied: 0070 The first condition conserves the original balance, while the second condition is to set the WA coupon of the two pseudo loans to equal the net rate of the original loan. Solving these equations for b1 and b2, we find that b175,000 and b225,000. These two loans, when executed at 6.0 and 6.5 bond coupons respectively, avoids the creation of either an IO bond or a PO bond. 0071 Although in the above example two adjacent half point coupons were used to create the two pseudo loans, two coupons from any of the half point bond coupons that are being used to create the bonds can be used. For example, if only bond coupons from 4.5 to 7.0 are being used to create the bonds, there would be fifteen combinations to consider (6C215). In some cases, the best solution is not to split the loan into two adjacent half point bond coupons. For example, this split may not be optimal if the AAA spreads at the two adjacent half point coupons are far higher than the ones that are not adjacent to the net balance of the loan. 0072 The senior/subordinate module 121 can construct a linear program or linear objective function to determine the optimal split into pseudo loans. The output of the linear program is the optimal splitting of the original loan into pseudo loans such that the overall execution of the loan is maximized, subject to no IO bond or PO bond creation. For each loan i, let variable x ij indicate the balance of loan i allocated to the jth half point coupon, subject to the constraint that the sum of over x ij for all j equals to the balance of loan i and the WA coupon expressed as a function of the x ij s equals to the net coupon of loan i, similar to Equation 6 above. Let the execution coupons be r 0 to r n . Thus, this equation becomes: 0073 where b i is the balance of loan i and c i is the net coupon of loan i. The price of loan i executing at coupon j is the sum of the price of the AAA bond and the subordinate bonds. No IO or PO bonds are created when the coupons are split. The senior/subordinate module 121 calculates the price of the AAA bond as a spread to the TBA, where the spread is a function of the execution coupon j. In one embodiment, the senior/subordinate module 121 also calculates the price of the subordinate bond as a spread to the TBA for simplification of the problem. Cash flows are not generated as the split of the balances to different execution coupons is not yet known. The senior/subordinate module 121 combines the price of the subordinate bond and the AAA bond in proportion to the subordination level of loan i, which can be input by a user in step 205 of FIG. 2 or input by an API. At this point, the senior/subordinate module 121 has calculated the price of loan i (P ij ) for each execution coupon j. To determine the optimal splitting of the original loan into pseudo loans, the senior/subordinate module 121 creates the following objective function and works to maximize this objective function: 0074 Equation 8 is a simple linear program with two constraints and can be solved optimally. The solution gives the optimal split of the loan into at most two coupons and thus, a bond can be structured without creating any IO or PO bonds. The user can determine if the bond should be split or not based on the optimal execution and other business considerations. 0075 FIG. 6 is a flow chart depicting a method 315 for packaging a population of loans into pass through bonds in accordance with one exemplary embodiment of the present invention. A pass through bond is a fixed income security backed by a package of loans or other assets. Typically, as briefly discussed above with reference to FIG. 1, a pass through bond is guaranteed by a government agency, such as Freddie Mac or Fannie Mae. The government agency guarantees the pass through bond in exchange for a guarantee fee (Gfee). The Gfee can be an input provided by the agencies for a specific set of loans or can be specified as a set of rules based on collateral characteristics. Regardless of how the Gfee is obtained, the Gfee for a loan set is known. 0076 When loans are securitized as a pass through bond, one has the option to buy up or buy down the Gfee in exchange for an equivalent fee to the agencies. Buying up the Gfee reduces the net coupon and thus the price of the bond as well. This upfront buy up fee is exchanged in lieu of the increased Gfee coupon. Similarly, buying down the Gfee reduces the Gfee and increases the net coupon and therefore increases the bond price. An upfront fee is paid to the agencies to compensate for the reduced Gfee. 0077 The Fannie Mae and Freddie Mac agencies typically provide buy up and buy down grids each month. Referring to FIG. 1, these grids can be stored in a data source 150 or in the data storage unit 125 for access by the pass-thru module 122 of the loan trading optimizer 120. If the Gfee is bought up or bought down, an excess coupon is created. The amount of buy up or buy down of Gfee can vary based on collateral attributes of the loan and can also be subject to a minimum and maximum limit. 0078 Referring now to FIGS. 1 and 6, at step 605, the pass-thru module 122 determines the optimal execution of each loan by buy up or buy down of the Gfee. In one exemplary embodiment, the optimal execution of each loan is determined by finding the overall price of the loan for each available buy up and buy down of the Gfee. Typically, a Gfee can be bought up or down in increments of 1/100 th of a basis point. The pass-thru module 122 implements a loop for each loan from the minimum to the maximum Gfee buy up with a step size of 1/100 th of a basis point. Similarly, the pass-thru module 122 implements a loop for each loan from the minimum to the maximum Gfee buy down with a step size of 1/100 th of a basis point. In each iteration, the amount of Gfee buy up or buy down is added to the current net rate of the loan. From this modified net rate of the loan, the TBA coupon is determined as the closest half point coupon lower than or equal to the modified net rate. The excess coupon is equal to the modified net rate of the TBA coupon and the price of the excess coupon is a lookup in the agency grid. The fee for the buy up or buy down is also a lookup in the agency grid. The price of the TBA coupon is a lookup from the TBA price curve. When the Gfee is bought up, the cost is added to the overall price and when the Gfee is bought down, the cost is subtracted from the overall price. The pass-thru module 122 determines the overall price of execution for the loan at each iteration and determines the optimal execution for the loan as the execution coupon of the TBA for which the overall price is maximized. This overall cost is the combination of the price of the TBA coupon, the price of the excess coupon, and the cost of the Gfee (added if buy up, subtracted if buy down). 0079 At step 610, the pass-thru module 122 determines which TBA pools each loan is eligible for. Pooling loans into TBA bonds is a complex process with many constraints on pooling. Furthermore, different pools of loans have pool payups based on collateral characteristics. For example, low loan balance pools could prepay slower and thus may trade richer. Also, loan pools with geographic concentration known to prepay faster may trade cheaper and thus have a negative pool payup. Thus, pooling optimally taking into account both the constraints and the pool payups can lead to profitable execution that may not be captured otherwise. 0080 Each of the TBA pools for which a loan can be allocated has a set of pool eligibility rules and a pool payup or paydown. Non-limiting examples of pools can be a low loan balance pool (e. g. loan balances less than 80K), a medium loan balance pool (e. g. loan balance between 80K and 150K), a high loan balance pool (e. g. loan balances above 150K), a prepay penalty loan pool, and an interest only loan pool. For a loan to be allocated to a specific pool by the pass-thru module 122, the loan has to satisfy both the eligibility rules of the pool and also best execute at the execution coupon for that pool. 0081 The pass-thru module 122 applies the eligibility rules of the TBA bond pools to the loans to determine the TBA bond pools for which each loan is eligible. The pass-thru module 122 can utilize pool priorities to arbitrate between multiple pools if a loan is eligible for more than one pool. If a loan is eligible to be pooled into a higher and lower priority pool, the pass-thru module 122 allocates the loan to the higher priority pool. However, if a loan is eligible for multiple pools having the same priority, the pass-thru module 122 can allocate the loan into either of the pools having the same priority. 0082 At step 615, the pass-thru module 122 builds a model for allocating the loans into TBA pools based on the constraints of each TBA bond pool. Let x ij be a binary variable with a value of 1 or 0 which has a value of 1 when loan i is allocated to TBA bond pool j. The total loan balance and loan count constraints of the TBA pools are linear functions of the x ij variables. The objective function for this model is also a linear combination of the market values of each loan. The primary problem in this model is that the given loan population selected in step 210 of FIG. 2 may not be sufficient to allocate all TBA loan pools, as some of the pools may not have loans to satisfy the balance and count constraints or the loans may not be eligible for those pools. In such cases, it is desirable for the pools to have the constraints when applicable. If there are some pools for which there are not enough loans in the population of loans to form a pool, then such pools are not subjected to the specified constraints while the other pools are. However, it is not possible to know a-priori which pools do not have enough loans to satisfy the constraints. Thus, the model employs conditional constraints to allow constraints to be applicable to only those pools which are allocated. 0083 The pooling model is modified to allow for some loans to not be allocated to any pool. This non-allocation will ensure that the model is always solvable and is similar to introducing a slack variable in linear programming. Thus, for each loan in the population of loans, there is an additional binary variable representing the unallocated pool into which the loan can be allocated. Those loans allocated to the unallocated pool are given a zero cost/market value, thus encouraging the pass-thru module 122 to allocate as many loans as possible. 0084 The next step in building this pooling model is to introduce p binary variables for the p possible TBA pools. A value of 1 indicates that this pool is allocated with loans satisfying the pool constraints and a value of 0 indicates that this pool is not allocated. These variables are used to convert simple linear constraints into conditional constraints. 0085 Each constraint of each pool is converted to conditional constraints for the pooling model. To detail this conversion, a maximum loan count constraint is considered for pool P. Let x 1 to x n be binary variable where x i are the loans eligible for pool P. Next, let x 1 . x n U, where U equals the total number of loans in pool P. Finally, let w be the binary variable to indicate if pool P is allocated. The user constraint for maximum loan count is specified as UK, where K is given by the user. In order to impose this constraint conditionally, this constraint is transformed to the following two constraints: 0086 UK w 0087 UM w 0088 where M is a constant such that the sum of all x i s is bounded by M. Consider both the cases when pool P is allocated (w1) and when pool P is not allocated (w0) below: 0089 w1: UK (required) 0090 UM (redundant) 0091 w0: U0 0092 U0 0093 The only way for U0 would be when all the x i s are 0 and thus, pool P will be unallocated. 0094 Other constraints, such as minimum count, minimum balance, maximum balance, average balance, and weighted average constraints can be transformed similarly for the pooling model. After all of the constraints are transformed to conditional constraints, the pooling model is ready to handle constraints conditionally. 0095 At step 620, the pass-thru module 122 executes the pooling model to allocate the loans into TBA pools. After the pass-thru module 122 executes the model for one iteration, the method 315 proceeds to step 220 (FIG. 2). As the method 200 of FIG. 2 iterates step 215, different TBA pool allocations are produced by the pass-thru module 122 until either the optimal TBA pool allocation is found or until the user decides that a solution of sufficient high quality is found in step 220 (FIG. 2). 0096 FIG. 7 is a flow chart depicting a method 320 for packaging whole loans in accordance with one exemplary embodiment of the present invention. The method 320 identifies an optimal package of loans meeting a set of constraints given by a customer or investor. In this embodiment, the loan package is optimized by determining which loans, among the population of loans that meet the constraints, are least favorable to be securitized. Although the method 320 of FIG. 7 is discussed in terms of the senior/subordinate bond structure, other bonds structures or models can be used. 0097 Referring to FIG. 7, at step 705, the whole loan module 123 determines which loans in the population of loans meets constraints of a bid for whole loans. Investment banks and other financial institutions receive bids for whole loans meeting specific requirements. These requirements can be entered into the user interface 115 at step 205 of FIG. 2 and/or stored in the data storage unit 125 or a data source 150. The constraints can include requirements that the loans must satisfy, such as, for example, minimum and maximum balance of the total loan package, constraints on the weighted average coupon, credit ratings of the recipients of the loans (e. g. FICO score), and loan-to-value (LTV) ratio. The constraints can also include location based constraints, such as no more than 10 of the loan population be from Florida and no zip code should have more than 5 of the loan population. 0098 After the whole loan module 123 selects the loans that meet the constraints, at step 710, the whole loan module 123 determines the price of each loan that meets the constraints based on a securitization module. For example, the price of the loans may be calculated based on the senior/subordinate structure discussed above with reference to FIGS. 4 and 5. 0099 At step 715, the whole loan module 123 determines whether to use an efficient model to select loans least favorable to be securitized by minimizing the dollar value of the spread of execution of the loans based on a securitization model or a less efficient model to select loans least favorable to be securitized by minimizing the spread of execution of the loans based on a securitization model. In one exemplary embodiment, this determination can be based on the total number of loans in the population or chosen by a user. If the whole loan module 123 determines to use the efficient model, the method 320 proceeds to step 725. Otherwise, the method 320 proceeds to step 720. 0100 At step 720, the whole loan module 123 selects loans that are least favorable to be securitized by minimizing the spread of execution of the loans based on the senior/subordinate bond structure. The whole loan module 123 builds a model to select a subset of the loans that meet the constraints such that the WA price of the loans of this subset net of the TBA price of the WA coupon of this subset is minimized. The TBA price of the WA coupon of the subset is typically higher as the TBA typically has a better credit quality and hence the metric chosen will have a negative value. The objective function that needs to be minimized is given by: 0101 In Equation 9, x i to x n are binary variables with a value of either 0 or 1, whereby a value of 1 indicates that the loan is allocated and 0 otherwise. The variables b 1 to b n are the balances of the loans and p i to p n are the prices of the loans as determined in step 710. The variables q 1 to q m are the weights for each of the half point coupons and px 1 to px m are the TBA prices for the half point coupons. The weights are special ordered sets of type two, which as discussed above, implies that at most two are non-zero and the two non-zero weights are adjacent. Thus, the expression (q 1 px 1 . q mpx m ) is the price of the WA coupon of the allocated loans. 0102 The weights (q 1 - q m ) are subject to the constraints: 0103 where the c i s are the net coupons on the loans and the r i s are the half point coupons of the TBA curve. 0104 An illustrated weighted average constraint (Kwac) on the coupon could be: 0105 Let y 0 M/(x 1 b 1 . x nb n ) and y j x j y 0 where M is a scaling constant to keep the model scaled sensibly. Rewriting the equations, the objective function to minimize is:System And Method For Optimizing Fixed Rate Whole Loan Trading US 20140188692 A1 Optimizing fixed rate whole loan trading. Specifically, the invention provides computer-based systems and methods for optimally packaging a population of whole loans into bonds in either a senior/subordinate bond structure or into pools of pass through securities guaranteed by a government agency. Models for each type of bond structure are processed on the population of loans until either an optimal bond package is found or a user determines that a solution of sufficient high quality is found. Additionally, the models can account for bids for whole loans by allocating whole loans that meet requirements of the bid but are least favorable to be securitized. (25) What is claimed is: 1 . A computer-implemented method comprising: creating, by a computer, a model comprising an objective function representing a total market value of the senior/subordinate bond structure for the plurality of loans and maximizing, by the computer, the objective function to maximize the total market value of the senior/subordinate bond structure. 2. The computer-implemented method of claim 1. wherein the step of maximizing the objective function comprises: determining a market price of each loan determining a first weighted average execution coupon for the plurality of loans corresponding to the market price of each loan determining the total market value of the senior/subordinate structure at the first weighted average execution coupon iterating the weighted average execution coupon and determining a total market value for the senior/subordinate structure at each iteration and determining the weighted average execution coupon having the highest total market values for the senior/subordinate structure. 3 . The computer-implemented method of claim 1. further comprising developing and maximizing an objective function to optimally split at least one of the loans into two pseudo loans to prevent a creation of an interest only bond or a principal only bond, the two pseudo loans comprising different coupon values. 4. A computer-implemented method for optimally pooling a population of loans into pass through bond pools, the method comprising: selecting the population of loans determining, by the computer, an optimal execution of each loan from the population of loans by a buy up or a buy down of a guarantee fee determining one or more pools for which each loan is eligible building a model based on at least one constraint for at least one determined pool and allocating loans to the one or more pass through bond pools. 5 . The computer-implemented method of claim 4 further comprises determining, by the computer, at least one module of one or more modules that is configured to pool the population of loans into pass through bond pools based on a received input, wherein the at least one module comprises a pass-through module. 6 . The computer-implemented method of claim 4. wherein the model comprises an objective function comprising a linear combination of a market value of each of the population of loans. Fig. 7 The computer-implemented method of claim 6. wherein allocating the loans comprises executing the model to maximize the objective function. Fig. 8 The computer-implemented method of claim 4. further comprising transforming the at least one constraint of each pass through bond pool into a conditional constraint. 9. The computer-implemented method of claim 4. further comprising converting at least a portion of the at least one constraint of each pass through bond pool into a conditional constraint prior to processing the model to ensure that the model is solvable. 10 . The computer-implemented method of claim 4. further comprising transforming each of the at least one constraints into a conditional constraint to allow constraints to be applicable to only pass through bond pools that are allocated. 11. The computer-implemented method of claim 4. further comprising allocating at least one of the population of loans to an unallocated pool. 12. The computer-implemented method of claim 4. further comprising allocating loans into an unallocated pool if each of the pass through bond pools cannot be allocated with the population of loans, wherein loans in the unallocated pool are given zero market value and wherein processing the model further comprises minimizing the number of loans allocated to the unallocated pool. 13. The computer-implemented method of claim 4. wherein the model accounts for the constraint of each pass through bond pool and a payup associated with each pass through bond pool. 14 . A system comprising: a memory comprising a set of instructions for allocating a portion of a plurality of loans to a loan package and a computer coupled to the memory and configured to execute the set of instructions to: determine which of the plurality of loans meet one or more constraints of the loan package determine a market price of each of the plurality of loans based on a securitization model model an objective function to determine which loans in the plurality of loans that meets the one or more constraints are least profitable for securitization in the securitization model and allocate the loans that meets the one or more constraints and are least profitable for securitization into the loan package. 15 . The system of claim 14. wherein the securitization model comprises a senior/subordinate model. 16 . The system of claim 14. wherein the objective function is modeled to minimize a spread between a weighted average price of the loans in the loan package and a To Be Announced (TBA) bond price of the weighted average coupon of the loans in the loan package. 17 . The system of claim 14. wherein the objective function is modeled to minimize a dollar value of a spread between a weighted average price of the loans in the loan package and a To Be Announced (TBA) bond price of the weighted average coupon of the loans in the loan package. 18 . A method for optimizing fixed rate whole loan trading, the method comprising: selecting a population of loans selecting, by a computer, one or more loans that meet a constraint of a bid determining, by the computer, a price for each loan that meets the constraint based on a securitized model determining, by the computer, whether to use an efficient model to select which of the one or more loans are least favorable to be securitized and if the efficient model is used, then selecting, by the computer, which of the one or more loans are least favorable to be securitized by minimum dollar value of spread. 19. The method of claim 18. further comprising: determining, by the computer, at least one module of one or more modules that optimizes fixed rate whole loan trading based on a received input, wherein the at least one module comprises a whole loan module. 20. The method of claim 18. further comprising the step of allocating, by the computer, a portion of the plurality of whole loans to a package of whole loans for selling as whole loans, the portion comprising whole loans meeting at least one constraint and being less profitable than the other whole loans when executed into a bond in the bond structure if the efficient model is not used, then selecting, by the computer, which of the one or more loans are least favorable to be securitized by minimizing spread. 21. A system comprising: a computer communicably coupled to the network and configured to: create a model corresponding to a plurality of excess coupon bond pools and an unallocated pool, each excess coupon bond pool comprising at least one constraint and process the model to allocate each of the loans into either an excess coupon bond pool or into the unallocated pool in order to maximize the total market value of the excess coupon that gets allocated to the excess coupon bond pools. 22 . The system of claim 21. wherein the model comprises an objective function representing the total market value of the excess coupon that gets allocated to the excess coupon bond pools. 23 . The system of claim 21. wherein the computer is further configured to transform each of the at least one constraints into a conditional constraint. 22 . The system of claim 21. wherein the computer is further configured to transform each of the at least one constraints into a conditional constraint to allow constraints to be applicable to only excess coupon bond pools that are allocated. 24 . The system of claim 21. wherein the computer is further configured to: identify the excess coupon pools for which each of the loans can be allocated based on collateral attributes of the loans and collapse each loan identified for an excess coupon pool into a single loan to reduce the number of loans in the model. This application is a divisional of U. S. patent application Ser. No. 12/533,315, filed Jul. 31, 2009, which claims the benefit of U. S. Provisional Patent Application No. 61/191,011, filed Sep. 3, 2009, both of which are hereby fully incorporated herein by reference. The present invention relates generally to systems and methods for optimizing loan trading and more specifically to computerized systems and computer implemented methods for optimizing packages of whole loans for execution into bonds or sale as whole loan packages. Financial institutions, such as investment banks, buy loans and loan portfolios from banks or loan originators primarily to securitize the loans into bonds and then sell the bonds to investors. These bonds are considered asset-backed securities as they are collateralized by the assets of the loans. Many types of loans can be securitized into bonds, including residential mortgages, commercial mortgages, automobile loans, and credit card receivables. A variety of bond structures can be created from a population of loans, each structure having characteristics and constraints that need to be accounted for in order to maximize the profit that a financial institution can realize by securitizing the loans into bonds. The optimal grouping or pooling of loans into bonds for a given bond structure and a given loan population can depend on the characteristics of each loan in the population. Furthermore, the bond pool or execution coupon that an individual loan executes into can depend on the bond pool or best execution of each other loan in the population. As the typical loan population considered for securitizing into bonds is very large (e. g. 10,000 loans or more), determining an optimal pooling of loans for securitizing into bonds can be challenging. Accordingly, what is needed are systems and methods for optimizing the packaging of a population of loans into bonds for a given bond structure. The invention provides computerized systems and computer implemented methods for optimizing fixed rate whole loan trading for a population of whole loans. An aspect of the present invention provides a system for optimizing fixed rate whole loan trading. This system includes a computing system that includes a software application including one or more modules operable to develop a model for determining a securitization strategy for a population of whole loans, the securitization strategy including bonds and operable to process the model until an optimal securitization strategy for the population of whole loans is found and a user interface for receiving user input for the one or more modules and for outputting the optimal securitization strategy, the user interface being in communication with the software application. Another aspect of the present invention provides a computer-implemented method for determining an optimal execution bond coupon for each loan in a group of loans in a senior/subordinate bond structure. The method includes creating a model comprising an objective function representing a total market value of the senior/subordinate bond structure for the loans. Further, the method includes maximizing the objective function to maximize the total market value of the senior/subordinate bond structure. Another aspect of the invention provides a computer-implemented method for optimally pooling loans into pass through bond pools. The method includes selecting a population of loans. Further, for each loan of the selection population of loans, the method includes determining an optimal execution of each loan by a buy up or a buy down of guarantee fee. Further, the method includes determining one or more pools for which each loan is eligible. In addition, the method includes building a model based on at least one constraint for at least one determined pool and allocating loans to the one or more pass through bond pools. Another aspect of the invention provides a system including a memory that has a set of instructions for allocating a portion of a group of loans to a loan package. Further, the system includes a computer coupled to the memory. Upon execution of the set of instructions the computer determines which of the loans meet one or more constraints of the loan package. In addition, the computer determines a market price of each of the loans based on a securitization model. Further, the computer can model an objective function to determine which loans in the group of loans that meets the one or more constraints are least profitable for securitization in the securitization model and allocate the loans that meets the one or more constraints and are least profitable for securitization into the loan package. Another aspect of the present invention provides a method for optimizing fixed rate whole loan trading. This method includes the steps of selecting a population of loans selecting one or more loans that meet a constraint of a bid determining a price of each loan that meets the constraint based on a securitized model determining whether to use an efficient model to select which of the one or more loans are least favorable to be securitized. Further, if the efficient model is used, the method includes selecting which of the pone or more loans are least favorable to be securitized by minimum dollar value of spread. Another aspect of the present invention provides a system for optimally pooling excess coupon resulting from securitizing loans. The system includes and network and a computer communicable coupled to the network. Further, the computer creates a model corresponding to excess coupon bond pools and an unallocated pool, each excess coupon bond pool including at least one constraint and processes the model to allocate each of the loans into either an excess coupon bond pool or into the unallocated pool in order to maximize the total market value of the excess coupon that gets allocated to the excess coupon bond pools. These and other aspects, features and embodiments of the invention will become apparent to a person of ordinary skill in the art upon consideration of the following detailed description of illustrated embodiments exemplifying the best mode for carrying out the invention as presently perceived. BRIEF DESCRIPTION OF THE DRAWINGS For a more complete understanding of the exemplary embodiments of the present invention and the advantages thereof, reference is now made to the following description, in conjunction with the accompanying figures briefly described as follows. FIG. 1 is a block diagram depicting a system for optimizing fixed rate whole loan trading in accordance with one exemplary embodiment of the present invention. FIG. 2 is a flow chart depicting a method for optimizing fixed rate whole loan trading in accordance with one exemplary embodiment of the present invention. FIG. 3 is a flow chart depicting a method for determining a securitization strategy for a population of loans in accordance with one exemplary embodiment of the present invention. FIG. 4 is a flow chart depicting a method for packaging a population of loans into a senior/subordinate structure in accordance with one exemplary embodiment of the present invention. FIG. 5 is a flow chart depicting a method for packaging a population of loans into a senior/subordinate structure in accordance with one exemplary embodiment of the present invention. FIG. 6 is a flow chart depicting a method for packaging a population of loans into pass through bonds in accordance with one exemplary embodiment of the present invention. FIG. 7 is a flow chart depicting a method for packaging whole loans in accordance with one exemplary embodiment of the present invention. FIG. 8 is a flow chart depicting a method for pooling excess coupon in accordance with one exemplary embodiment of the present invention. DETAILED DESCRIPTION OF EXEMPLARY EMBODIMENTS The invention provides computer-based systems and methods for optimizing fixed rate whole loan trading. Specifically, the invention provides computer-based systems and methods for optimally packaging a population of whole loans into bonds in either a senior/subordinate bond structure or into pools of pass through securities guaranteed by a government agency. Models for each type of bond structure are processed on the population of loans until either an optimal bond package is found or a user determines that a solution of sufficient high quality is found. Additionally, the models can account for bids for whole loans by allocating whole loans that meet requirements of the bid but are least favorable to be securitized. Although the exemplary embodiments of the invention are discussed in terms of whole loans (particularly fixed rate residential mortgages), aspects of the invention can also be applied to trading other types of loans and assets, such as variable rate loans and revolving debts. The invention can comprise a computer program that embodies the functions described herein and illustrated in the appended flow charts. However, it should be apparent that there could be many different ways of implementing the invention in computer programming, and the invention should not be construed as limited to any one set of computer program instructions. Further, a skilled programmer would be able to write such a computer program to implement an embodiment of the disclosed invention based on the flow charts and associated description in the application text. Therefore, disclosure of a particular set of program code instructions is not considered necessary for an adequate understanding of how to make and use the invention. The inventive functionality of the claimed computer program will be explained in more detail in the following description read in conjunction with the figures illustrating the program flow. Further, it will be appreciated to those skilled in the art that one or more of the stages described may be performed by hardware, software, or a combination thereof, as may be embodied in one or more computing systems. Turning now to the drawings, in which like numerals represent like elements throughout the figures, aspects of the exemplary embodiments will be described in detail. FIG. 1 is a block diagram depicting a system 100 for optimizing fixed rate whole loan trading in accordance with one exemplary embodiment of the present invention. Referring to FIG. 1. the system 100 includes a computing system 110 connected to a distributed network 140 . The computing system 110 may be a personal computer connected to the distributed network 140 . The computing system 110 can include one or more applications, such as loan trading optimizer application 120 . This exemplary loan trading optimizer 120 includes four modules 121 - 124 that can operate individually or interact with each other to provide an optimal packaging of loans into one or more bond structures and whole loan packages. A senior/subordinate module 121 distributes loans into a senior/subordinate bond structure with bonds having different credit ratings and different net coupon values. As will be discussed in more detail with reference to FIGS. 4-5. the senior/subordinate module 121 distributes the loans into bonds having a AAA rating, subordinate bonds with lower credit ratings, and, depending on the loans and the coupon values of the AAA bonds and the subordinate bonds, interest only bonds and principal only bonds. A pass-thru module 122 distributes loans into pass through bonds guaranteed by a government agency, such as Freddie Mac or Fannie Mae. The pass-thru module 122 optimally pools the loans into To Be Announced (TBA) pass through securities based on a variety of constraints. The pass-thru module 122 is discussed in more detail below with reference to FIG. 6 . A whole loan module 123 allocates loans to meet bids for loan portfolios meeting specific requirements and constraints of the bid. The whole loan module 123 can interact with either the senior/subordinate module 121 or the pass-thru module 122 to allocate loans that meet the requirements of the bids but are less favorable to be securitized. The whole loan module 123 is discussed below in more detail with reference to FIG. Fig. 7 An excess coupon module 124 distributes excess coupons of securitized loans into different bond tranches or pools. The excess coupon module 124 can pool excess coupons resulting from senior/subordinate bond structure created by the senior/subordinate module 121 and/or excess coupons resulting from pass through securities created by the pass-thru module 122 . The excess coupon module 124 is discussed below in more detail with reference to FIG. Fig. 8 Users can enter information into a user interface 115 of the computing system 110 . This information can include a type of bond structure to optimize, constraints associated with bond structures and bond pools, information associated with loan bids, and any other information required by the loan trading optimizer 120 . After the information is received by the user interface 115 . the information is stored in a data storage unit 125 . which can be a software database or other memory structure. Users can also select a population of loans to consider for optimization by way of the user interface 115 . The loans can be stored in a database stored on or coupled to the computing system 110 or at a data source 150 connected to the distributed network 140 . The user interface 115 can also output to a user the bond packages and whole loan packages determined by the loan trading optimizer 120 . The loan trading optimizer 120 can communicate with multiple data sources 150 by way of the distributed network 140 . For example, the loan trading optimizer 120 can communicate with a data source 150 to determine Fannie Mae TBA prices and another data source 150 to determine U. S. Treasury prices. In another example, the loan trading optimizer 120 can communicate with a data source 150 to access information associated with bids for whole loan packages. The distributed network 140 may be a local area network (LAN), wide area network (WAN), the Internet or other type of network. FIG. 2 is a flow chart depicting a method 200 for optimizing fixed rate whole loan trading in accordance with one exemplary embodiment of the present invention. Referring to FIGS. 1 and 2. at step 205 . the user interface 115 receives input from a user. This user input is used by the loan trading optimizer 120 to determine the bond structure that should be optimized for a population of loans. For example, if the user desires to find the optimal pooling of loans for pass through bonds, the user can input the constraints for each bond pool. Examples of constraints for pass through bond pools include constraints on loan balances, total number of loans for a pool, and total loan balance for a pool. At step 210 . a population of loans is selected for optimization. The population of loans can be selected from loans stored in a loan database stored on or coupled to the computing system 110 or from a database at a data source 150 connected to the distributed network 140 . The population of loans can include loans currently owned by the user (e. g. investment bank) of the loan trading optimizer 120 and/or loans that are up for bid by another bank, loan originator, or other institution. For example, a user may employ the loan trading optimizer 120 to find the maximum market value of a loan portfolio currently for sale in order to determine an optimal bid for the loan portfolio. Additionally, a user can select the population of loans by specifying certain criteria, such as maximum loan balance, location of the loans, and FICO score. At step 215 . the loan trading optimizer 120 determines a securitization strategy for the population of loans selected in step 210 . Depending upon the user inputs received in step 205 . the loan trading optimizer 120 employs one or more of the senior/subordinate module 121 . the pass-thru module 122 . and the whole loan module 123 to determine the securitization strategy for the population of loans. Step 215 is discussed in more detail with reference to FIGS. 3-7 . At step 220 . the loan trading optimizer 120 determines whether the securitization strategy returned at step 215 is of sufficiently high quality. In this exemplary embodiment, the loan trading optimizer 120 iterates the step of determining a securitization strategy for the population of loans until either an optimal solution is found or the user determines that the securitization strategy is of sufficiently high quality. In order for the user to determine if the securitization strategy if of sufficient high quality, the loan trading optimizer 120 can output the results to the user by way of the user interface 115 . The loan trading optimizer 120 can output these results based on a number of iterations of step 215 (e. g. every 100 iterations) or when a certain level of quality is found. The user interface 115 can then receive input from the user indicating whether the securitization strategy is of sufficient high quality. If the securitization strategy is of sufficient high quality or optimal, the method 200 proceeds to step 225 . Otherwise, the method 200 returns to step 215 . In one exemplary embodiment, quality is measured in terms of the total dollar value of the population of loans. For example, the user may desire to sell a population of loans for at least ten million dollars in order to bid on the loans. The user can set a threshold for the loan trading optimizer 120 to only return a solution that meets this threshold or a solution that is the optimal solution if the optimal solution is below this threshold. At step 225 . the excess coupon module 124 of the loan trading optimizer 120 can pool any excess coupon resulting from the securitization strategy determined in step 215 . This step is optional and is discussed below in more detail with reference to FIG. Fig. 8 At step 230 . the loan trading optimizer 120 communicates the final securitization strategy to the user interface 115 for outputting to a user. The user interface 115 can display the final securitization strategy and optionally other possible securitization strategies with similar quality levels. FIG. 3 is a flow chart depicting a method 215 for determining a securitization strategy for a population of loans in accordance with one exemplary embodiment of the present invention. Referring to FIGS. 1 and 3. at step 305 . the loan trading optimizer 120 determines which models to use for determining the securitization strategies. In this exemplary embodiment, the loan trading optimizer 120 includes a senior/subordinate module 121 . a pass-thru module 122 . and a whole loan module 123 . Each of the modules 121 - 123 can build and process a model for determining an optimal packaging of loans as discussed below. The loan trading optimizer 120 determines which modules 121 - 123 to use based on the input received from the user in step 205 of FIG. 2. For example, the user may specify that only a senior/subordinate structure should be optimized for the population of loans. Alternatively, if the user has entered bid information for a portfolio of whole loans, the loan trading optimizer 120 can execute the whole loan module 123 with the senior/subordinate module 121 and/or the pass-thru module 122 to determine which of the loans meet the requirements of the bid and are least favorable for securitization. Additionally, a user may specify that both an optimal senior/subordinate bond structure and an optimal pooling of pass through bonds should be determined for the population of loans. If the user selected that a senior/subordinate bond structure should be optimized, the method 215 proceeds to step 310 . At step 310 . the senior/subordinate module 121 develops a model for packaging the population of loans into a senior/subordinate bond structure and processes the model to determine an optimal senior/subordinate bond structure for the loan population. Step 310 is discussed in more detail with reference to FIGS. 4 and 5. After the senior/subordinate structure is determined, the method 215 proceeds to step 220 ( FIG. 2 ). If the user selected that the population of loans should be optimally pooled into pass through bonds, the method 215 proceeds to step 315 . At step 315 . the pass-thru module 122 develops a model for pooling the population of loans into multiple bond pools and processes the model to determine an optimal pooling for the loan population. Step 315 is discussed in more detail with reference to FIG. 6. After the pooling is determined, the method 215 proceeds to step 220 ( FIG. 2 ). If the user selected that whole loans should be allocated to a package of whole loans to be sold, the method 215 proceeds to step 320 . At step 320 . the whole loan module 123 develops a model for allocating whole loans that meet certain constraints and are less favorable to be securitized into a whole loan package and processes the model to determine which loans are best suited for the whole loan package. Step 320 is discussed in more detail with reference to FIG. 7. After the whole loan package is determined, the method 215 proceeds to step 220 ( FIG. 2 ). FIG. 4 is a flow chart depicting a method 310 for packaging a population of loans into a senior/subordinate bond structure in accordance with one exemplary embodiment of the present invention. As briefly discussed above with reference to FIG. 1. a senior/subordinate bond structure is a structure where bonds with different credit ratings are created. Typically, the senior/subordinate bond structure includes a senior tranche of bonds having a AAA or similar credit rating and a subordinate tranche of bonds having a lower credit rating. The senior tranche is protected from a certain level of loss by the subordinate tranche as the subordinate tranche incurs the first losses that may occur. The senior trance can be sold to investors desiring a more conservative investment having a lower yield, while the subordinated tranche can be sold to investors willing to take on more risk for a higher yield. For the purpose of this application, a AAA rated bond refers to a bond in the senior tranche, but not necessarily a bond having a credit rating of AAA. Additionally, interest only (IO) and principal only (PO) bonds may be created in a senior/subordinate structure. An IO bond is created when the net coupon of a loan is more than the coupon of the bond in which the loan executes. Thus, the difference in the loan coupon and the bond coupon creates an interest only cash flow. Similarly, when the loan coupon is less than the bond coupon, a PO bond is created which receives only principal payments. Referring to FIGS. 1 and 4. at step 405 . the senior/subordinate module 121 determines the bond coupons that are available for executing the loans into. The senior/subordinate module 121 may obtain the available bond coupons from a data source 150 or may receive the available bond coupons from the user by way of the user interface 115 in step 205 of FIG. 2. For example, the user may desire to execute the loans into bonds having coupon values between 4.5 and 7.0. At step 410 . the senior/subordinate module 121 selects a first bond coupon value from the range of available bond coupon values. This first coupon value can be the lowest bond coupon value, the highest coupon value, or any other bond coupon value in the range of available bond coupon values. At step 415 . the senior/subordinate module 121 determines the execution price of each loan in the population of loans at the selected coupon value. Each loan in the population of loans is structured as a bond. The cash flow of each loan is distributed into symbolic AAA and subordinate bonds, and depending on the coupon of the loan and the selected bond coupon, an IO or PO bond. The principal payment and interest cash flows of each loan is generated in each period accounting for loan characteristics of the loan, such as IO period, balloon terms, and prepayment characteristics. The cash flow generated in each period is distributed to all bonds that the loan executes taking into account shifting interest rules that govern the distribution of prepayments between the AAA and the subordinate bonds in each period. The proportion in which the principal payments are distributed depends on the subordination levels of the AAA and the subordinate bonds. The subordination levels are a function of the loan attributes and are supplied by rating agencies for each loan through an Application Program Interface (API) coupled to the computing device 110 . Prepayments are first distributed pro rata to the PO bond and then between the AAA and the subordinate bonds based on the shifting interest rules. Any remaining prepayment is distributed proportionally among all the subordinate bonds. The interest payment for each of the bonds is a direct function of the coupon value for the bond. After the cash flows of each of the bonds for each of the loans have been generated, the present value of these cash flows is determined. For fixed rate loans, the AAA bonds can be priced as a spread to the To Be Announced (TBA) bond prices. However, the subordinate bond cash flows are discounted by a spread to the U. S. Treasury Yield Curve. The IO and PO bonds are priced using the Trust IO and PO prices. Finally, the price of the AAA bond, the subordinate bonds, and the IO or PO bond is combined proportionally for each loan based on the bond sizes to get the final bond price for each loan. This final bond price is the price of the loan executing into the bond given the selected coupon value of the bond. At step 420 . the senior/subordinate module 121 determines if there are more bond coupon values in the range of available bond coupon values. If there are more bond coupon values, the method 310 proceeds to step 425 . Otherwise, the method 310 proceeds to step 430 . At step 425 . the next bond coupon value in the range of available bond coupon values is selected. In one exemplary embodiment, the senior/subordinate module 121 can increment from the previous selected bond coupon value (e. g. 0.5 increments) to determine the next bond coupon value. In an alternative embodiment, the senior/subordinate module 121 can progress through a fixed list of bond coupon values. For example, the user may select specific bond coupon values to execute the loans into, such as only 4.0, 5.0, and 6.0. After the next bond coupon value is selected, the method 310 returns to step 415 to determine the execution price of each loan in the population of loans at the new coupon value. At step 430 . the senior/subordinate module 121 determines, for each loan in the population of loans, which bond coupon value yielded the highest final bond price for that particular loan. At step 435 . the senior/subordinate module 121 groups the loans according to the bond coupon value that yielded the highest final bond price for each loan. For example, if the available bond coupon values are 4.0, 5.0, and 6.0, each loan that has a highest final bond price at 4.0 are grouped together, while each loan that has a highest final bond price at 5.0 are grouped together, and each loan that has a final bond price at 6.0 are grouped together. After step 435 is complete, the method proceeds to step 220 ( FIG. 2 ). In the embodiment of FIG. 4. the subordinate bonds for each loan execute at the same bond coupon value as the corresponding AAA bond. For example, if a first loan of 6.25 best executes into a bond having a coupon value of 6.0, then a AAA bond of 6.0 and a subordinate bond that is priced at U. S. Treasury spreads specified for execution coupon 6.0 is created. If a second loan of 5.375 best executes into a bond having a coupon value of 5.0, then a AAA bond of 5.0 and a subordinate bond that is priced at U. S. Treasury spreads specified for execution coupon 5.0 is created. This creates two AAA bonds and two subordinate bonds at two different coupon values. Typically, when loans are packaged in a senior/subordinate bond structure, multiple AAA bonds with multiple coupon values are created with a common set of subordinate bonds that back all of the AAA bonds. This set of subordinate bonds is priced at the weighted average (WA) execution coupon of all of the AAA bonds created for the loan package. Pricing the subordinate bonds at the WA execution coupon implies that the spread to the benchmark U. S. Treasury curve, which is a function of the bond rating and the execution coupon of the subordinate bond, has to be chosen appropriately. In order to know the WA execution coupon of all the AAA bonds for the population of loans, the best execution coupon for each loan in the population of loans has to be known. In order to know the best execution coupon of each loan, the loan has to be priced at different bond coupon values and the AAA and subordinate bonds created at those coupons also have to be priced. However, the subordinate bond cash flows are discounted with spreads to the U. S. Treasury, with spreads taken at the WA best execution coupon which is still unknown. This creates a circular dependency as the best execution of each loan in the population of loans now depends on all the other loans in the population. FIG. 5 is a flow chart depicting a method 500 for packaging a population of loans into a senior/subordinate structure in accordance with one exemplary embodiment of the present invention. The method 500 is an alternative method to that of method 310 of FIG. 4. accounting for pricing subordinate bonds at the WA execution coupon and provides a solution to the circular dependency discussed above. The WA execution coupon for a population of loans can be calculated by: In Equation 1, x ij is a binary variable with a value of either 0 or 1, whereby a value of 1 indicates that the i th loan is optimally executing at the j th execution coupon value. The parameters d 0 to d j represent the j execution coupon values. For example, the coupons values could range from 4.5 to 7.0. Finally, the parameter b i represents the balance of the i th loan. If q o to q j are the weights of the j execution coupons, then: where q 0 to q 1 are special ordered sets of type two, which implies that at most two are non-zero and the two non-zero weights are adjacent. Let Pa ij be the price of the AAA bond when loan i executes at coupon j. Next, let Ps ij be the overall price of all of the subordinate bonds combined when loan i executes at coupon j. Finally, let Pio ij and Ppo ij be the prices of the IO and PO bonds respectively when loan i executes at coupon j. The AAA bond prices and the IO and PO bond price components of loan i executing at coupon j are linear functions of x ij . The AAA priced as a spread to the TBA is a function of the execution coupon of the AAA bond and the IO/PO prices are a lookup based on collateral attributes of the loan. However, pricing the subordinate bonds is complicated because the subordinate cash flows are discounted at the WA execution coupon. Let P i be a matrix of size jj that contains the prices of the subordinate bonds. The (m, n) entry of the matrix represents the price of the subordinate cash flows when the cash flow of loan i is generated assuming that loan i executes at the m th coupon and is discounted using subordinate spreads for the n th coupon. Subordinate spreads to the U. S. Treasury are a function of the execution coupon and any product definition, such as the size (e. g. Jumbo/Conforming), maturity (e. g. 15/30 years), etc. The price of the subordinate bond of the i th loan can be written as: which is a non linear expression as the equation contains a product of q and x ij . both of which are variables in this equation. FIG. 5 provides a method 500 for overcoming this non-linearity. Referring to FIG. 5. at step 505 . the senior/subordinate module 121 determines the optimal execution price for each loan in the population of loans independent of the WA execution coupon. In one exemplary embodiment, the senior/subordinate module 121 employs the method 310 of FIG. 4 to find the optimal execution price for each loan. At step 510 . the senior/subordinate module 121 determines the WA execution coupon corresponding to the optimal execution price for each loan. This WA execution coupon can be found using Equation 1 above. At step 515 . the senior/subordinate module 121 determines the weights (i. e. q 0 q j ) of each execution coupon for the WA execution coupon found in step 510 . These weights can be found using Equation 3 above. At step 520 . the senior/subordinate module 121 builds a model including an objective function to determine the optimal execution coupon for each loan to maximize the total market value of all of the bonds in the senior/subordinate structure. The expression of the objective function contains ij terms, where the ij term represents the market value of executing the i th loan at the j th execution coupon. After inserting the values of the weights of the execution coupons (i. e. qs) into the expression for subordinate bond price (Equation 4), only two of the terms will be non-zero for the sub-price of the i th loan executing at the j th execution coupon. As the method 200 of FIG. 2 iterates step 215 . different WA execution coupons can be used to maximize the objective function. The iterations can begin with the WA execution coupon found in step 510 and the senior/subordinate module 121 can search around this WA execution coupon until either the optimal solution is found or the user decides that a solution of sufficient high quality is found in step 220 of FIG. 2. In other words, the senior/subordinate module 121 searches for an optimal solution by guessing several values of the WA execution coupon around an initial estimate of the optimal execution coupon. After a final solution is found by the senior/subordinate module 121 . the loans can be grouped based on the coupon values for each loan in the final solution to the objective function. In some instances, one of the undesirable effects of the senior/subordinate bond structure is the creation of IO and/or PO bonds, which may not trade as rich as AAA bonds. In some exemplary embodiments, the senior/subordinate module 121 can ameliorate this issue by considering a loan as two pseudo loans. For example, a loan having a net rate of 6.125 and a balance of 100,000 can be considered equivalent to two loans of balance b1 and b2 and coupons 6 and 6.5 such that the following conditions are satisfied: The first condition conserves the original balance, while the second condition is to set the WA coupon of the two pseudo loans to equal the net rate of the original loan. Solving these equations for b1 and b2, we find that b175,000 and b225,000. These two loans, when executed at 6.0 and 6.5 bond coupons respectively, avoids the creation of either an IO bond or a PO bond. Although in the above example two adjacent half point coupons were used to create the two pseudo loans, two coupons from any of the half point bond coupons that are being used to create the bonds can be used. For example, if only bond coupons from 4.5 to 7.0 are being used to create the bonds, there would be fifteen combinations to consider (6C215). In some cases, the best solution is not to split the loan into two adjacent half point bond coupons. For example, this split may not be optimal if the AAA spreads at the two adjacent half point coupons are far higher than the ones that are not adjacent to the net balance of the loan. The senior/subordinate module 121 can construct a linear program or linear objective function to determine the optimal split into pseudo loans. The output of the linear program is the optimal splitting of the original loan into pseudo loans such that the overall execution of the loan is maximized, subject to no IO bond or PO bond creation. For each loan i, let variable x ij indicate the balance of loan i allocated to the jth half point coupon, subject to the constraint that the sum of over x ij for all j equals to the balance of loan i and the WA coupon expressed as a function of the x ij s equals to the net coupon of loan i, similar to Equation 6 above. Let the execution coupons be r 0 to r n . Thus, this equation becomes: where b i is the balance of loan i and c i is the net coupon of loan i. The price of loan i executing at coupon j is the sum of the price of the AAA bond and the subordinate bonds. No IO or PO bonds are created when the coupons are split. The senior/subordinate module 121 calculates the price of the AAA bond as a spread to the TBA, where the spread is a function of the execution coupon j. In one embodiment, the senior/subordinate module 121 also calculates the price of the subordinate bond as a spread to the TBA for simplification of the problem. Cash flows are not generated as the split of the balances to different execution coupons is not yet known. The senior/subordinate module 121 combines the price of the subordinate bond and the AAA bond in proportion to the subordination level of loan i, which can be input by a user in step 205 of FIG. 2 or input by an API. At this point, the senior/subordinate module 121 has calculated the price of loan i (P ij ) for each execution coupon j. To determine the optimal splitting of the original loan into pseudo loans, the senior/subordinate module 121 creates the following objective function and works to maximize this objective function: Equation 8 is a simple linear program with two constraints and can be solved optimally. The solution gives the optimal split of the loan into at most two coupons and thus, a bond can be structured without creating any IO or PO bonds. The user can determine if the bond should be split or not based on the optimal execution and other business considerations. FIG. 6 is a flow chart depicting a method 315 for packaging a population of loans into pass through bonds in accordance with one exemplary embodiment of the present invention. A pass through bond is a fixed income security backed by a package of loans or other assets. Typically, as briefly discussed above with reference to FIG. 1. a pass through bond is guaranteed by a government agency, such as Freddie Mac or Fannie Mae. The government agency guarantees the pass through bond in exchange for a guarantee fee (Gfee). The Gfee can be an input provided by the agencies for a specific set of loans or can be specified as a set of rules based on collateral characteristics. Regardless of how the Gfee is obtained, the Gfee for a loan set is known. When loans are securitized as a pass through bond, one has the option to buy up or buy down the Gfee in exchange for an equivalent fee to the agencies. Buying up the Gfee reduces the net coupon and thus the price of the bond as well. This upfront buy up fee is exchanged in lieu of the increased Gfee coupon. Similarly, buying down the Gfee reduces the Gfee and increases the net coupon and therefore increases the bond price. An upfront fee is paid to the agencies to compensate for the reduced Gfee. The Fannie Mae and Freddie Mac agencies typically provide buy up and buy down grids each month. Referring to FIG. 1. these grids can be stored in a data source 150 or in the data storage unit 125 for access by the pass-thru module 122 of the loan trading optimizer 120 . If the Gfee is bought up or bought down, an excess coupon is created. The amount of buy up or buy down of Gfee can vary based on collateral attributes of the loan and can also be subject to a minimum and maximum limit. Referring now to FIGS. 1 and 6. at step 605 . the pass-thru module 122 determines the optimal execution of each loan by buy up or buy down of the Gfee. In one exemplary embodiment, the optimal execution of each loan is determined by finding the overall price of the loan for each available buy up and buy down of the Gfee. Typically, a Gfee can be bought up or down in increments of 1/100 th of a basis point. The pass-thru module 122 implements a loop for each loan from the minimum to the maximum Gfee buy up with a step size of 1/100 th of a basis point. Similarly, the pass-thru module 122 implements a loop for each loan from the minimum to the maximum Gfee buy down with a step size of 1/100 th of a basis point. In each iteration, the amount of Gfee buy up or buy down is added to the current net rate of the loan. From this modified net rate of the loan, the TBA coupon is determined as the closest half point coupon lower than or equal to the modified net rate. The excess coupon is equal to the modified net rate of the TBA coupon and the price of the excess coupon is a lookup in the agency grid. The fee for the buy up or buy down is also a lookup in the agency grid. The price of the TBA coupon is a lookup from the TBA price curve. When the Gfee is bought up, the cost is added to the overall price and when the Gfee is bought down, the cost is subtracted from the overall price. The pass-thru module 122 determines the overall price of execution for the loan at each iteration and determines the optimal execution for the loan as the execution coupon of the TBA for which the overall price is maximized. This overall cost is the combination of the price of the TBA coupon, the price of the excess coupon, and the cost of the Gfee (added if buy up, subtracted if buy down). At step 610 . the pass-thru module 122 determines which TBA pools each loan is eligible for. Pooling loans into TBA bonds is a complex process with many constraints on pooling. Furthermore, different pools of loans have pool payups based on collateral characteristics. For example, low loan balance pools could prepay slower and thus may trade richer. Also, loan pools with geographic concentration known to prepay faster may trade cheaper and thus have a negative pool payup. Thus, pooling optimally taking into account both the constraints and the pool payups can lead to profitable execution that may not be captured otherwise. Each of the TBA pools for which a loan can be allocated has a set of pool eligibility rules and a pool payup or paydown. Non-limiting examples of pools can be a low loan balance pool (e. g. loan balances less than 80K), a medium loan balance pool (e. g. loan balance between 80K and 150K), a high loan balance pool (e. g. loan balances above 150K), a prepay penalty loan pool, and an interest only loan pool. For a loan to be allocated to a specific pool by the pass-thru module 122 . the loan has to satisfy both the eligibility rules of the pool and also best execute at the execution coupon for that pool. The pass-thru module 122 applies the eligibility rules of the TBA bond pools to the loans to determine the TBA bond pools for which each loan is eligible. The pass-thru module 122 can utilize pool priorities to arbitrate between multiple pools if a loan is eligible for more than one pool. If a loan is eligible to be pooled into a higher and lower priority pool, the pass-thru module 122 allocates the loan to the higher priority pool. However, if a loan is eligible for multiple pools having the same priority, the pass-thru module 122 can allocate the loan into either of the pools having the same priority. At step 615 . the pass-thru module 122 builds a model for allocating the loans into TBA pools based on the constraints of each TBA bond pool. Let x ij be a binary variable with a value of 1 or 0 which has a value of 1 when loan i is allocated to TBA bond pool j. The total loan balance and loan count constraints of the TBA pools are linear functions of the x ij variables. The objective function for this model is also a linear combination of the market values of each loan. The primary problem in this model is that the given loan population selected in step 210 of FIG. 2 may not be sufficient to allocate all TBA loan pools, as some of the pools may not have loans to satisfy the balance and count constraints or the loans may not be eligible for those pools. In such cases, it is desirable for the pools to have the constraints when applicable. If there are some pools for which there are not enough loans in the population of loans to form a pool, then such pools are not subjected to the specified constraints while the other pools are. However, it is not possible to know a-priori which pools do not have enough loans to satisfy the constraints. Thus, the model employs conditional constraints to allow constraints to be applicable to only those pools which are allocated. The pooling model is modified to allow for some loans to not be allocated to any pool. This non-allocation will ensure that the model is always solvable and is similar to introducing a slack variable in linear programming. Thus, for each loan in the population of loans, there is an additional binary variable representing the unallocated pool into which the loan can be allocated. Those loans allocated to the unallocated pool are given a zero cost/market value, thus encouraging the pass-thru module 122 to allocate as many loans as possible. The next step in building this pooling model is to introduce p binary variables for the p possible TBA pools. A value of 1 indicates that this pool is allocated with loans satisfying the pool constraints and a value of 0 indicates that this pool is not allocated. These variables are used to convert simple linear constraints into conditional constraints. Each constraint of each pool is converted to conditional constraints for the pooling model. To detail this conversion, a maximum loan count constraint is considered for pool P. Let x 1 to x n be binary variable where x i are the loans eligible for pool P. Next, let x 1 . x n U, where U equals the total number of loans in pool P. Finally, let w be the binary variable to indicate if pool P is allocated. The user constraint for maximum loan count is specified as UK, where K is given by the user. In order to impose this constraint conditionally, this constraint is transformed to the following two constraints: UK w UM w where M is a constant such that the sum of all x i s is bounded by M. Consider both the cases when pool P is allocated (w1) and when pool P is not allocated (w0) below: w1: UK (required) UM (redundant) w0: U0 U0 The only way for U0 would be when all the x i s are 0 and thus, pool P will be unallocated. Other constraints, such as minimum count, minimum balance, maximum balance, average balance, and weighted average constraints can be transformed similarly for the pooling model. After all of the constraints are transformed to conditional constraints, the pooling model is ready to handle constraints conditionally. At step 620 . the pass-thru module 122 executes the pooling model to allocate the loans into TBA pools. After the pass-thru module 122 executes the model for one iteration, the method 315 proceeds to step 220 ( FIG. 2 ). As the method 200 of FIG. 2 iterates step 215 . different TBA pool allocations are produced by the pass-thru module 122 until either the optimal TBA pool allocation is found or until the user decides that a solution of sufficient high quality is found in step 220 ( FIG. 2 ). FIG. 7 is a flow chart depicting a method 320 for packaging whole loans in accordance with one exemplary embodiment of the present invention. The method 320 identifies an optimal package of loans meeting a set of constraints given by a customer or investor. In this embodiment, the loan package is optimized by determining which loans, among the population of loans that meet the constraints, are least favorable to be securitized. Although the method 320 of FIG. 7 is discussed in terms of the senior/subordinate bond structure, other bonds structures or models can be used. Referring to FIG. 7. at step 705 . the whole loan module 123 determines which loans in the population of loans meets constraints of a bid for whole loans. Investment banks and other financial institutions receive bids for whole loans meeting specific requirements. These requirements can be entered into the user interface 115 at step 205 of FIG. 2 and/or stored in the data storage unit 125 or a data source 150 . The constraints can include requirements that the loans must satisfy, such as, for example, minimum and maximum balance of the total loan package, constraints on the weighted average coupon, credit ratings of the recipients of the loans (e. g. FICO score), and loan-to-value (LTV) ratio. The constraints can also include location based constraints, such as no more than 10 of the loan population be from Florida and no zip code should have more than 5 of the loan population. After the whole loan module 123 selects the loans that meet the constraints, at step 710 . the whole loan module 123 determines the price of each loan that meets the constraints based on a securitization module. For example, the price of the loans may be calculated based on the senior/subordinate structure discussed above with reference to FIGS. 4 and 5 . At step 715 . the whole loan module 123 determines whether to use an efficient model to select loans least favorable to be securitized by minimizing the dollar value of the spread of execution of the loans based on a securitization model or a less efficient model to select loans least favorable to be securitized by minimizing the spread of execution of the loans based on a securitization model. In one exemplary embodiment, this determination can be based on the total number of loans in the population or chosen by a user. If the whole loan module 123 determines to use the efficient model, the method 320 proceeds to step 725 . Otherwise, the method 320 proceeds to step 720 . At step 720 . the whole loan module 123 selects loans that are least favorable to be securitized by minimizing the spread of execution of the loans based on the senior/subordinate bond structure. The whole loan module 123 builds a model to select a subset of the loans that meet the constraints such that the WA price of the loans of this subset net of the TBA price of the WA coupon of this subset is minimized. The TBA price of the WA coupon of the subset is typically higher as the TBA typically has a better credit quality and hence the metric chosen will have a negative value. The objective function that needs to be minimized is given by: In Equation 9, x 1 to x n are binary variables with a value of either 0 or 1, whereby a value of 1 indicates that the loan is allocated and 0 otherwise. The variables b 1 to b n are the balances of the loans and p 1 to p n are the prices of the loans as determined in step 710 . The variables q 1 to q m are the weights for each of the half point coupons and px 1 to px m are the TBA prices for the half point coupons. The weights are special ordered sets of type two, which as discussed above, implies that at most two are non-zero and the two non-zero weights are adjacent. Thus, the expression (q 1 px 1 . q m px m ) is the price of the WA coupon of the allocated loans. The weights (q 1 - q m ) are subject to the constraints: The equations above are analyzed when z i is set to 1 and z i is set to 0 and which shows that y i will be y 0 or zero within a tolerance of eps. Eps is a model specific constant and is suitably small to account for lack of numerical precision in a binary variable. The tolerance eps is utilized in this model as although binary variables are supposed to be 0 or 1, the binary variables suffer from precision issues and thus, the model should accommodate numerical difficulties. The source of this precision issue is the way y 0 has been defined. The denominator of y 0 M/(x 1 b 1 . x n b n ) is essentially the sum of the balances of all loans in the pool, which can be a very large number resulting in a small y 0 . After building the model, the whole loan module 123 minimizes the objective function in Equation 13 with each iteration of step 215 of FIG. 2 while maintaining the constraints of the subsequent equations 17- 21 . The loans that are allocated into the whole loan package are the loans that meet the constraints of the bid and have a y value equal to y 0 . After step 720 is completed, the method 320 proceeds to step 220 ( FIG. 2 ). At step 725 . the whole loan module 123 selects loans that are least favorable to be securitized by minimizing the dollar value of the spread of execution of the loans based on the senior/subordinate bond structure. Thus, the difference of the market value of the allocated loans and the notional market value of the loan pool using the price of the WA execution coupon is minimized. The objective function that needs to be minimized for this model is given by: After building the model, the whole loan module 123 minimizes the objective function in Equation 24 with each iteration of step 215 of FIG. 2 while maintaining the constraints of the subsequent equations 25-29. The loans that are allocated into the whole loan package are the loans that meet the constraints of the bid and have a y value equal to y 0 . After step 725 is completed, the method 320 proceeds to step 220 of FIG. 2. FIG. 8 is a flow chart depicting a method 225 for pooling excess coupon in accordance with one exemplary embodiment of the present invention. The excess coupon module 124 can pool the excess coupon of securitized loans into different tranches or pools. The excess coupon module 124 can take a large population of loans (e. g. 100 thousand or more), each with some excess coupon, and pool the loans into different pools, each pool with a different coupon and specified eligibility rules. Each of the pools can also have a minimum balance constraint. Pools that are created with equal contribution of excess coupon from every loan that is contributing to that pool typically trades richer than pools that have a dispersion in the contribution of excess from different loans. Therefore, it is profitable to create homogeneous pools. Referring to FIG. 8. at step 805 . the excess coupon module 124 converts the pool constraints into conditional constraints as some of the pools defined in this excess coupon model may not have loans to satisfy the pool constraints. This conversion is similar to the conversion of constraints discussed above with reference to FIG. 6 . At step 810 . the excess coupon module 124 builds a model to determine the optimal pooling for the excess coupons. Let x ij be the contribution of excess coupon from loan i to pool j. Unlike the pooling model in FIG. 6 above, this variable is not a binary variable. However, an unallocated pool is added to the set of user defined pools which enables the pass-thru module 122 to always solve the model and produce partial allocations. The first constraint of this excess coupon model is the conservation of excess coupon allocated among all the pools for each loan. Any loan that does not get allocated to a user defined pool is placed in the unallocated pool, and thus the unallocated pool is also included in the conservation constraint. In this embodiment, the unallocated pool does not have any other constraint. The objective function of this excess coupon model is to maximize the total market value of the excess that gets allocated. Unallocated excess coupon is assigned a zero market value and thus the solver tries to minimize the unallocated excess coupon. In this model, the excess coupon module 124 tries to create the maximum possible pools with equal excess contribution. Any leftover excess from all the loans can be lumped into a single pool and a WA coupon pool can be created from this pool. An aspect of this excess coupon model is to enforce equality of the excess coupon that gets allocated from a loan to a pool. Furthermore, it is not necessary that all loans allocate excess to a given pool. Thus, the equality of excess is enforced only among loans that have a non-zero contribution of excess to this pool. Let xp 0 to xp p be p real variables that indicate the amount of excess in each pool. Also, let w ij be a binary variable that indicates if loan i is contributing excess to pool. For each eligible loan i, for pool j, the following constraints are added: When M is chosen to be the maximum excess coupon of all loans in the allocation, the expression xp j M is negative. Thus, from x ij 0 and that all excess coupons have to be zero or positive, this implies that x ij 0 when w ij 0. This excess coupon model can be difficult to solve because of its complexity level. In order to reduce the complexity, the excess coupon module 124 employs dimensionality reduction. The first step of this process is to identify the pools into which a loan can be allocated. Eligibility filters in this excess coupon model specify the mapping of the collateral attributes of the loans to the coupons of the pools that the attributes can go into. For example, loans with a net coupon between 4.375 and 5.125 can go into pools of 4.5 or 5.0. Unlike the pooling model discussed above with reference to FIG. 6. there are no pool priorities. At step 815 . the excess coupon module 124 identifies the pool into which a given loan can be allocated based on the collateral attributes of the loan and independent of the pool execution coupon. This gives a one to one mapping between the loans and the pools. At step 820 . the excess coupon module 124 collapses all loans having the same excess coupon within a given pool definition into a single loan. This approach can significantly reduce the number of loans in the loan population. After the population of loans is reduced, the excess coupon module 124 maximizes the objective function at step 825 . The excess coupon module 124 can iteratively determine solutions to the objective function until an optimal solution is found or until a user decides that a solution of sufficient high quality is found. One of ordinary skill in the art would appreciate that the present invention provides computer-based systems and methods for optimizing fixed rate whole loan trading. Specifically, the invention provides computer-based systems and methods for optimally packaging a population of whole loans into bonds in either a senior/subordinate bond structure or into pools of pass through securities guaranteed by a government agency. Models for each type of bond structure are processed on the population of loans until either an optimal bond package is found or a user determines that a solution of sufficient high quality is found. Additionally, the models can account for bids for whole loans by allocating whole loans that meet requirements of the bid but are least favorable to be securitized. Although specific embodiments of the invention have been described above in detail, the description is merely for purposes of illustration. It should be appreciated, therefore, that many aspects of the invention were described above by way of example only and are not intended as required or essential elements of the invention unless explicitly stated otherwise. Various modifications of, and equivalent steps corresponding to, the disclosed aspects of the exemplary embodiments, in addition to those described above, can be made by a person of ordinary skill in the art, having the benefit of this disclosure, without departing from the spirit and scope of the invention defined in the following claims, the scope of which is to be accorded the broadest interpretation so as to encompass such modifications and equivalent structures. Optimizing fixed rate whole loan trading. Specifically, the invention provides computer-based systems and methods for optimally packaging a population of whole loans into bonds in either a senior/subordinate bond structure or into pools of pass through securities guaranteed by a government agency. Models for each type of bond structure are processed on the population of loans until either an optimal bond package is found or a user determines that a solution of sufficient high quality is found. Additionally, the models can account for bids for whole loans by allocating whole loans that meet requirements of the bid but are least favorable to be securitized. Wang et al. Efficient Execution in the Secondary Mortgage Market: A Stochastic Optimization Model Using CVaR Constraints, December 5, 2006, Research Report 2006-5, University of Florida, FL, pages 1-20. Kessel, R. Options and Strategies to Reach Agency Best Execution Delivery, 2005, Secondary Marketing Executive, pages 1-3. What is claimed is: 1. A computer-implemented method comprising: creating, by a computer, a model comprising an objective function representing a total market value of the senior/subordinate bond structure for the plurality of loans and maximizing, by the computer, the objective function to maximize the total market value of the senior/subordinate bond structure. 2. The computer-implemented method of claim 1, wherein the step of maximizing the objective function comprises: determining a market price of each loan determining a first weighted average execution coupon for the plurality of loans corresponding to the market price of each loan determining the total market value of the senior/subordinate structure at the first weighted average execution coupon iterating the weighted average execution coupon and determining a total market value for the senior/subordinate structure at each iteration and determining the weighted average execution coupon having the highest total market values for the senior/subordinate structure. 3. The computer-implemented method of claim 1, further comprising developing and maximizing an objective function to optimally split at least one of the loans into two pseudo loans to prevent a creation of an interest only bond or a principal only bond, the two pseudo loans comprising different coupon values. 4. A computer-implemented method for optimally pooling a population of loans into pass through bond pools, the method comprising: selecting the population of loans determining, by the computer, an optimal execution of each loan from the population of loans by a buy up or a buy down of a guarantee fee determining one or more pools for which each loan is eligible building a model based on at least one constraint for at least one determined pool and allocating loans to the one or more pass through bond pools. 5. The computer-implemented method of claim 4 further comprises determining, by the computer, at least one module of one or more modules that is configured to pool the population of loans into pass through bond pools based on a received input, wherein the at least one module comprises a pass-through module. 6. The computer-implemented method of claim 4, wherein the model comprises an objective function comprising a linear combination of a market value of each of the population of loans. 7. The computer-implemented method of claim 6, wherein allocating the loans comprises executing the model to maximize the objective function. 8. The computer-implemented method of claim 4, further comprising transforming the at least one constraint of each pass through bond pool into a conditional constraint. 9. The computer-implemented method of claim 4, further comprising converting at least a portion of the at least one constraint of each pass through bond pool into a conditional constraint prior to processing the model to ensure that the model is solvable. 10. The computer-implemented method of claim 4, further comprising transforming each of the at least one constraints into a conditional constraint to allow constraints to be applicable to only pass through bond pools that are allocated. 11. The computer-implemented method of claim 4, further comprising allocating at least one of the population of loans to an unallocated pool. 12. The computer-implemented method of claim 4, further comprising allocating loans into an unallocated pool if each of the pass through bond pools cannot be allocated with the population of loans, wherein loans in the unallocated pool are given zero market value and wherein processing the model further comprises minimizing the number of loans allocated to the unallocated pool. 13. The computer-implemented method of claim 4, wherein the model accounts for the constraint of each pass through bond pool and a payup associated with each pass through bond pool. 14. A system comprising: a memory comprising a set of instructions for allocating a portion of a plurality of loans to a loan package and a computer coupled to the memory and configured to execute the set of instructions to: determine which of the plurality of loans meet one or more constraints of the loan package determine a market price of each of the plurality of loans based on a securitization model model an objective function to determine which loans in the plurality of loans that meets the one or more constraints are least profitable for securitization in the securitization model and allocate the loans that meets the one or more constraints and are least profitable for securitization into the loan package. 15. The system of claim 14, wherein the securitization model comprises a senior/subordinate model. 16. The system of claim 14, wherein the objective function is modeled to minimize a spread between a weighted average price of the loans in the loan package and a To Be Announced (TBA) bond price of the weighted average coupon of the loans in the loan package. 17. The system of claim 14, wherein the objective function is modeled to minimize a dollar value of a spread between a weighted average price of the loans in the loan package and a To Be Announced (TBA) bond price of the weighted average coupon of the loans in the loan package. 18. A method for optimizing fixed rate whole loan trading, the method comprising: selecting a population of loans selecting, by a computer, one or more loans that meet a constraint of a bid determining, by the computer, a price for each loan that meets the constraint based on a securitized model determining, by the computer, whether to use an efficient model to select which of the one or more loans are least favorable to be securitized and if the efficient model is used, then selecting, by the computer, which of the one or more loans are least favorable to be securitized by minimum dollar value of spread. 19. The method of claim 18, further comprising: determining, by the computer, at least one module of one or more modules that optimizes fixed rate whole loan trading based on a received input, wherein the at least one module comprises a whole loan module. 20. The method of claim 18, further comprising the step of allocating, by the computer, a portion of the plurality of whole loans to a package of whole loans for selling as whole loans, the portion comprising whole loans meeting at least one constraint and being less profitable than the other whole loans when executed into a bond in the bond structure if the efficient model is not used, then selecting, by the computer, which of the one or more loans are least favorable to be securitized by minimizing spread. 21. A system comprising: a network and a computer communicably coupled to the network and configured to: create a model corresponding to a plurality of excess coupon bond pools and an unallocated pool, each excess coupon bond pool comprising at least one constraint and process the model to allocate each of the loans into either an excess coupon bond pool or into the unallocated pool in order to maximize the total market value of the excess coupon that gets allocated to the excess coupon bond pools. 22. The system of claim 21, wherein the model comprises an objective function representing the total market value of the excess coupon that gets allocated to the excess coupon bond pools. 22 . The system of claim 21, wherein the computer is further configured to transform each of the at least one constraints into a conditional constraint to allow constraints to be applicable to only excess coupon bond pools that are allocated. 23. The system of claim 21, wherein the computer is further configured to transform each of the at least one constraints into a conditional constraint. 24. The system of claim 21, wherein the computer is further configured to: identify the excess coupon pools for which each of the loans can be allocated based on collateral attributes of the loans and collapse each loan identified for an excess coupon pool into a single loan to reduce the number of loans in the model. RELATED APPLICATION This application is a divisional of U. S. patent application Ser. No. 12/533,315, filed Jul. 31, 2009, which claims the benefit of U. S. Provisional Patent Application No. 61/191,011, filed Sep. 3, 2009, both of which are hereby fully incorporated herein by reference. TECHNICAL FIELD The present invention relates generally to systems and methods for optimizing loan trading and more specifically to computerized systems and computer implemented methods for optimizing packages of whole loans for execution into bonds or sale as whole loan packages. BACKGROUND Financial institutions, such as investment banks, buy loans and loan portfolios from banks or loan originators primarily to securitize the loans into bonds and then sell the bonds to investors. These bonds are considered asset-backed securities as they are collateralized by the assets of the loans. Many types of loans can be securitized into bonds, including residential mortgages, commercial mortgages, automobile loans, and credit card receivables. A variety of bond structures can be created from a population of loans, each structure having characteristics and constraints that need to be accounted for in order to maximize the profit that a financial institution can realize by securitizing the loans into bonds. The optimal grouping or pooling of loans into bonds for a given bond structure and a given loan population can depend on the characteristics of each loan in the population. Furthermore, the bond pool or execution coupon that an individual loan executes into can depend on the bond pool or best execution of each other loan in the population. As the typical loan population considered for securitizing into bonds is very large (e. g. 10,000 loans or more), determining an optimal pooling of loans for securitizing into bonds can be challenging. Accordingly, what is needed are systems and methods for optimizing the packaging of a population of loans into bonds for a given bond structure. The invention provides computerized systems and computer implemented methods for optimizing fixed rate whole loan trading for a population of whole loans. An aspect of the present invention provides a system for optimizing fixed rate whole loan trading. This system includes a computing system that includes a software application including one or more modules operable to develop a model for determining a securitization strategy for a population of whole loans, the securitization strategy including bonds and operable to process the model until an optimal securitization strategy for the population of whole loans is found and a user interface for receiving user input for the one or more modules and for outputting the optimal securitization strategy, the user interface being in communication with the software application. Another aspect of the present invention provides a computer-implemented method for determining an optimal execution bond coupon for each loan in a group of loans in a senior/subordinate bond structure. The method includes creating a model comprising an objective function representing a total market value of the senior/subordinate bond structure for the loans. Further, the method includes maximizing the objective function to maximize the total market value of the senior/subordinate bond structure. Another aspect of the invention provides a computer-implemented method for optimally pooling loans into pass through bond pools. The method includes selecting a population of loans. Further, for each loan of the selection population of loans, the method includes determining an optimal execution of each loan by a buy up or a buy down of guarantee fee. Further, the method includes determining one or more pools for which each loan is eligible. In addition, the method includes building a model based on at least one constraint for at least one determined pool and allocating loans to the one or more pass through bond pools. Another aspect of the invention provides a system including a memory that has a set of instructions for allocating a portion of a group of loans to a loan package. Further, the system includes a computer coupled to the memory. Upon execution of the set of instructions the computer determines which of the loans meet one or more constraints of the loan package. In addition, the computer determines a market price of each of the loans based on a securitization model. Further, the computer can model an objective function to determine which loans in the group of loans that meets the one or more constraints are least profitable for securitization in the securitization model and allocate the loans that meets the one or more constraints and are least profitable for securitization into the loan package. Another aspect of the present invention provides a method for optimizing fixed rate whole loan trading. This method includes the steps of selecting a population of loans selecting one or more loans that meet a constraint of a bid determining a price of each loan that meets the constraint based on a securitized model determining whether to use an efficient model to select which of the one or more loans are least favorable to be securitized. Further, if the efficient model is used, the method includes selecting which of the pone or more loans are least favorable to be securitized by minimum dollar value of spread. Another aspect of the present invention provides a system for optimally pooling excess coupon resulting from securitizing loans. The system includes and network and a computer communicable coupled to the network. Further, the computer creates a model corresponding to excess coupon bond pools and an unallocated pool, each excess coupon bond pool including at least one constraint and processes the model to allocate each of the loans into either an excess coupon bond pool or into the unallocated pool in order to maximize the total market value of the excess coupon that gets allocated to the excess coupon bond pools. These and other aspects, features and embodiments of the invention will become apparent to a person of ordinary skill in the art upon consideration of the following detailed description of illustrated embodiments exemplifying the best mode for carrying out the invention as presently perceived. BRIEF DESCRIPTION OF THE DRAWINGS For a more complete understanding of the exemplary embodiments of the present invention and the advantages thereof, reference is now made to the following description, in conjunction with the accompanying figures briefly described as follows. FIG. 1 is a block diagram depicting a system for optimizing fixed rate whole loan trading in accordance with one exemplary embodiment of the present invention. FIG. 2 is a flow chart depicting a method for optimizing fixed rate whole loan trading in accordance with one exemplary embodiment of the present invention. FIG. 3 is a flow chart depicting a method for determining a securitization strategy for a population of loans in accordance with one exemplary embodiment of the present invention. FIG. 4 is a flow chart depicting a method for packaging a population of loans into a senior/subordinate structure in accordance with one exemplary embodiment of the present invention. FIG. 5 is a flow chart depicting a method for packaging a population of loans into a senior/subordinate structure in accordance with one exemplary embodiment of the present invention. FIG. 6 is a flow chart depicting a method for packaging a population of loans into pass through bonds in accordance with one exemplary embodiment of the present invention. FIG. 7 is a flow chart depicting a method for packaging whole loans in accordance with one exemplary embodiment of the present invention. FIG. 8 is a flow chart depicting a method for pooling excess coupon in accordance with one exemplary embodiment of the present invention. DETAILED DESCRIPTION OF EXEMPLARY EMBODIMENTS The invention provides computer-based systems and methods for optimizing fixed rate whole loan trading. Specifically, the invention provides computer-based systems and methods for optimally packaging a population of whole loans into bonds in either a senior/subordinate bond structure or into pools of pass through securities guaranteed by a government agency. Models for each type of bond structure are processed on the population of loans until either an optimal bond package is found or a user determines that a solution of sufficient high quality is found. Additionally, the models can account for bids for whole loans by allocating whole loans that meet requirements of the bid but are least favorable to be securitized. Although the exemplary embodiments of the invention are discussed in terms of whole loans (particularly fixed rate residential mortgages), aspects of the invention can also be applied to trading other types of loans and assets, such as variable rate loans and revolving debts. The invention can comprise a computer program that embodies the functions described herein and illustrated in the appended flow charts. However, it should be apparent that there could be many different ways of implementing the invention in computer programming, and the invention should not be construed as limited to any one set of computer program instructions. Further, a skilled programmer would be able to write such a computer program to implement an embodiment of the disclosed invention based on the flow charts and associated description in the application text. Therefore, disclosure of a particular set of program code instructions is not considered necessary for an adequate understanding of how to make and use the invention. The inventive functionality of the claimed computer program will be explained in more detail in the following description read in conjunction with the figures illustrating the program flow. Further, it will be appreciated to those skilled in the art that one or more of the stages described may be performed by hardware, software, or a combination thereof, as may be embodied in one or more computing systems. Turning now to the drawings, in which like numerals represent like elements throughout the figures, aspects of the exemplary embodiments will be described in detail. FIG. 1 is a block diagram depicting a system 100 for optimizing fixed rate whole loan trading in accordance with one exemplary embodiment of the present invention. Referring to FIG. 1, the system 100 includes a computing system 110 connected to a distributed network 140 . The computing system 110 may be a personal computer connected to the distributed network 140 . The computing system 110 can include one or more applications, such as loan trading optimizer application 120 . This exemplary loan trading optimizer 120 includes four modules 121 - 124 that can operate individually or interact with each other to provide an optimal packaging of loans into one or more bond structures and whole loan packages. A senior/subordinate module 121 distributes loans into a senior/subordinate bond structure with bonds having different credit ratings and different net coupon values. As will be discussed in more detail with reference to FIGS. 4-5, the senior/subordinate module 121 distributes the loans into bonds having a AAA rating, subordinate bonds with lower credit ratings, and, depending on the loans and the coupon values of the AAA bonds and the subordinate bonds, interest only bonds and principal only bonds. A pass-thru module 122 distributes loans into pass through bonds guaranteed by a government agency, such as Freddie Mac or Fannie Mae. The pass-thru module 122 optimally pools the loans into To Be Announced (TBA) pass through securities based on a variety of constraints. The pass-thru module 122 is discussed in more detail below with reference to FIG. 6. A whole loan module 123 allocates loans to meet bids for loan portfolios meeting specific requirements and constraints of the bid. The whole loan module 123 can interact with either the senior/subordinate module 121 or the pass-thru module 122 to allocate loans that meet the requirements of the bids but are less favorable to be securitized. The whole loan module 123 is discussed below in more detail with reference to FIG. 7. An excess coupon module 124 distributes excess coupons of securitized loans into different bond tranches or pools. The excess coupon module 124 can pool excess coupons resulting from senior/subordinate bond structure created by the senior/subordinate module 121 and/or excess coupons resulting from pass through securities created by the pass-thru module 122 . The excess coupon module 124 is discussed below in more detail with reference to FIG. 8. Users can enter information into a user interface 115 of the computing system 110 . This information can include a type of bond structure to optimize, constraints associated with bond structures and bond pools, information associated with loan bids, and any other information required by the loan trading optimizer 120 . After the information is received by the user interface 115 . the information is stored in a data storage unit 125 . which can be a software database or other memory structure. Users can also select a population of loans to consider for optimization by way of the user interface 115 . The loans can be stored in a database stored on or coupled to the computing system 110 or at a data source 150 connected to the distributed network 140 . The user interface 115 can also output to a user the bond packages and whole loan packages determined by the loan trading optimizer 120 . The loan trading optimizer 120 can communicate with multiple data sources 150 by way of the distributed network 140 . For example, the loan trading optimizer 120 can communicate with a data source 150 to determine Fannie Mae TBA prices and another data source 150 to determine U. S. Treasury prices. In another example, the loan trading optimizer 120 can communicate with a data source 150 to access information associated with bids for whole loan packages. The distributed network 140 may be a local area network (LAN), wide area network (WAN), the Internet or other type of network. FIG. 2 is a flow chart depicting a method 200 for optimizing fixed rate whole loan trading in accordance with one exemplary embodiment of the present invention. Referring to FIGS. 1 and 2, at step 205 . the user interface 115 receives input from a user. This user input is used by the loan trading optimizer 120 to determine the bond structure that should be optimized for a population of loans. For example, if the user desires to find the optimal pooling of loans for pass through bonds, the user can input the constraints for each bond pool. Examples of constraints for pass through bond pools include constraints on loan balances, total number of loans for a pool, and total loan balance for a pool. At step 210 . a population of loans is selected for optimization. The population of loans can be selected from loans stored in a loan database stored on or coupled to the computing system 110 or from a database at a data source 150 connected to the distributed network 140 . The population of loans can include loans currently owned by the user (e. g. investment bank) of the loan trading optimizer 120 and/or loans that are up for bid by another bank, loan originator, or other institution. For example, a user may employ the loan trading optimizer 120 to find the maximum market value of a loan portfolio currently for sale in order to determine an optimal bid for the loan portfolio. Additionally, a user can select the population of loans by specifying certain criteria, such as maximum loan balance, location of the loans, and FICO score. At step 215 . the loan trading optimizer 120 determines a securitization strategy for the population of loans selected in step 210 . Depending upon the user inputs received in step 205 . the loan trading optimizer 120 employs one or more of the senior/subordinate module 121 . the pass-thru module 122 . and the whole loan module 123 to determine the securitization strategy for the population of loans. Step 215 is discussed in more detail with reference to FIGS. 3-7. At step 220 . the loan trading optimizer 120 determines whether the securitization strategy returned at step 215 is of sufficiently high quality. In this exemplary embodiment, the loan trading optimizer 120 iterates the step of determining a securitization strategy for the population of loans until either an optimal solution is found or the user determines that the securitization strategy is of sufficiently high quality. In order for the user to determine if the securitization strategy if of sufficient high quality, the loan trading optimizer 120 can output the results to the user by way of the user interface 115 . The loan trading optimizer 120 can output these results based on a number of iterations of step 215 (e. g. every 100 iterations) or when a certain level of quality is found. The user interface 115 can then receive input from the user indicating whether the securitization strategy is of sufficient high quality. If the securitization strategy is of sufficient high quality or optimal, the method 200 proceeds to step 225 . Otherwise, the method 200 returns to step 215 . In one exemplary embodiment, quality is measured in terms of the total dollar value of the population of loans. For example, the user may desire to sell a population of loans for at least ten million dollars in order to bid on the loans. The user can set a threshold for the loan trading optimizer 120 to only return a solution that meets this threshold or a solution that is the optimal solution if the optimal solution is below this threshold. At step 225 . the excess coupon module 124 of the loan trading optimizer 120 can pool any excess coupon resulting from the securitization strategy determined in step 215 . This step is optional and is discussed below in more detail with reference to FIG. 8. At step 230 . the loan trading optimizer 120 communicates the final securitization strategy to the user interface 115 for outputting to a user. The user interface 115 can display the final securitization strategy and optionally other possible securitization strategies with similar quality levels. FIG. 3 is a flow chart depicting a method 215 for determining a securitization strategy for a population of loans in accordance with one exemplary embodiment of the present invention. Referring to FIGS. 1 and 3, at step 305 . the loan trading optimizer 120 determines which models to use for determining the securitization strategies. In this exemplary embodiment, the loan trading optimizer 120 includes a senior/subordinate module 121 . a pass-thru module 122 . and a whole loan module 123 . Each of the modules 121 - 123 can build and process a model for determining an optimal packaging of loans as discussed below. The loan trading optimizer 120 determines which modules 121 - 123 to use based on the input received from the user in step 205 of FIG. 2. For example, the user may specify that only a senior/subordinate structure should be optimized for the population of loans. Alternatively, if the user has entered bid information for a portfolio of whole loans, the loan trading optimizer 120 can execute the whole loan module 123 with the senior/subordinate module 121 and/or the pass-thru module 122 to determine which of the loans meet the requirements of the bid and are least favorable for securitization. Additionally, a user may specify that both an optimal senior/subordinate bond structure and an optimal pooling of pass through bonds should be determined for the population of loans. If the user selected that a senior/subordinate bond structure should be optimized, the method 215 proceeds to step 310 . At step 310 . the senior/subordinate module 121 develops a model for packaging the population of loans into a senior/subordinate bond structure and processes the model to determine an optimal senior/subordinate bond structure for the loan population. Step 310 is discussed in more detail with reference to FIGS. 4 and 5. After the senior/subordinate structure is determined, the method 215 proceeds to step 220 (FIG. 2). If the user selected that the population of loans should be optimally pooled into pass through bonds, the method 215 proceeds to step 315 . At step 315 . the pass-thru module 122 develops a model for pooling the population of loans into multiple bond pools and processes the model to determine an optimal pooling for the loan population. Step 315 is discussed in more detail with reference to FIG. 6. After the pooling is determined, the method 215 proceeds to step 220 (FIG. 2). If the user selected that whole loans should be allocated to a package of whole loans to be sold, the method 215 proceeds to step 320 . At step 320 . the whole loan module 123 develops a model for allocating whole loans that meet certain constraints and are less favorable to be securitized into a whole loan package and processes the model to determine which loans are best suited for the whole loan package. Step 320 is discussed in more detail with reference to FIG. 7. After the whole loan package is determined, the method 215 proceeds to step 220 (FIG. 2). FIG. 4 is a flow chart depicting a method 310 for packaging a population of loans into a senior/subordinate bond structure in accordance with one exemplary embodiment of the present invention. As briefly discussed above with reference to FIG. 1, a senior/subordinate bond structure is a structure where bonds with different credit ratings are created. Typically, the senior/subordinate bond structure includes a senior tranche of bonds having a AAA or similar credit rating and a subordinate tranche of bonds having a lower credit rating. The senior tranche is protected from a certain level of loss by the subordinate tranche as the subordinate tranche incurs the first losses that may occur. The senior trance can be sold to investors desiring a more conservative investment having a lower yield, while the subordinated tranche can be sold to investors willing to take on more risk for a higher yield. For the purpose of this application, a AAA rated bond refers to a bond in the senior tranche, but not necessarily a bond having a credit rating of AAA. Additionally, interest only (IO) and principal only (PO) bonds may be created in a senior/subordinate structure. An IO bond is created when the net coupon of a loan is more than the coupon of the bond in which the loan executes. Thus, the difference in the loan coupon and the bond coupon creates an interest only cash flow. Similarly, when the loan coupon is less than the bond coupon, a PO bond is created which receives only principal payments. Referring to FIGS. 1 and 4, at step 405 . the senior/subordinate module 121 determines the bond coupons that are available for executing the loans into. The senior/subordinate module 121 may obtain the available bond coupons from a data source 150 or may receive the available bond coupons from the user by way of the user interface 115 in step 205 of FIG. 2. For example, the user may desire to execute the loans into bonds having coupon values between 4.5 and 7.0. At step 410 . the senior/subordinate module 121 selects a first bond coupon value from the range of available bond coupon values. This first coupon value can be the lowest bond coupon value, the highest coupon value, or any other bond coupon value in the range of available bond coupon values. At step 415 . the senior/subordinate module 121 determines the execution price of each loan in the population of loans at the selected coupon value. Each loan in the population of loans is structured as a bond. The cash flow of each loan is distributed into symbolic AAA and subordinate bonds, and depending on the coupon of the loan and the selected bond coupon, an IO or PO bond. The principal payment and interest cash flows of each loan is generated in each period accounting for loan characteristics of the loan, such as IO period, balloon terms, and prepayment characteristics. The cash flow generated in each period is distributed to all bonds that the loan executes taking into account shifting interest rules that govern the distribution of prepayments between the AAA and the subordinate bonds in each period. The proportion in which the principal payments are distributed depends on the subordination levels of the AAA and the subordinate bonds. The subordination levels are a function of the loan attributes and are supplied by rating agencies for each loan through an Application Program Interface (API) coupled to the computing device 110 . Prepayments are first distributed pro rata to the PO bond and then between the AAA and the subordinate bonds based on the shifting interest rules. Any remaining prepayment is distributed proportionally among all the subordinate bonds. The interest payment for each of the bonds is a direct function of the coupon value for the bond. After the cash flows of each of the bonds for each of the loans have been generated, the present value of these cash flows is determined. For fixed rate loans, the AAA bonds can be priced as a spread to the To Be Announced (TBA) bond prices. However, the subordinate bond cash flows are discounted by a spread to the U. S. Treasury Yield Curve. The IO and PO bonds are priced using the Trust IO and PO prices. Finally, the price of the AAA bond, the subordinate bonds, and the IO or PO bond is combined proportionally for each loan based on the bond sizes to get the final bond price for each loan. This final bond price is the price of the loan executing into the bond given the selected coupon value of the bond. At step 420 . the senior/subordinate module 121 determines if there are more bond coupon values in the range of available bond coupon values. If there are more bond coupon values, the method 310 proceeds to step 425 . Otherwise, the method 310 proceeds to step 430 . At step 425 . the next bond coupon value in the range of available bond coupon values is selected. In one exemplary embodiment, the senior/subordinate module 121 can increment from the previous selected bond coupon value (e. g. 0.5 increments) to determine the next bond coupon value. In an alternative embodiment, the senior/subordinate module 121 can progress through a fixed list of bond coupon values. For example, the user may select specific bond coupon values to execute the loans into, such as only 4.0, 5.0, and 6.0. After the next bond coupon value is selected, the method 310 returns to step 415 to determine the execution price of each loan in the population of loans at the new coupon value. At step 430 . the senior/subordinate module 121 determines, for each loan in the population of loans, which bond coupon value yielded the highest final bond price for that particular loan. At step 435 . the senior/subordinate module 121 groups the loans according to the bond coupon value that yielded the highest final bond price for each loan. For example, if the available bond coupon values are 4.0, 5.0, and 6.0, each loan that has a highest final bond price at 4.0 are grouped together, while each loan that has a highest final bond price at 5.0 are grouped together, and each loan that has a final bond price at 6.0 are grouped together. After step 435 is complete, the method proceeds to step 220 (FIG. 2). In the embodiment of FIG. 4, the subordinate bonds for each loan execute at the same bond coupon value as the corresponding AAA bond. For example, if a first loan of 6.25 best executes into a bond having a coupon value of 6.0, then a AAA bond of 6.0 and a subordinate bond that is priced at U. S. Treasury spreads specified for execution coupon 6.0 is created. If a second loan of 5.375 best executes into a bond having a coupon value of 5.0, then a AAA bond of 5.0 and a subordinate bond that is priced at U. S. Treasury spreads specified for execution coupon 5.0 is created. This creates two AAA bonds and two subordinate bonds at two different coupon values. Typically, when loans are packaged in a senior/subordinate bond structure, multiple AAA bonds with multiple coupon values are created with a common set of subordinate bonds that back all of the AAA bonds. This set of subordinate bonds is priced at the weighted average (WA) execution coupon of all of the AAA bonds created for the loan package. Pricing the subordinate bonds at the WA execution coupon implies that the spread to the benchmark U. S. Treasury curve, which is a function of the bond rating and the execution coupon of the subordinate bond, has to be chosen appropriately. In order to know the WA execution coupon of all the AAA bonds for the population of loans, the best execution coupon for each loan in the population of loans has to be known. In order to know the best execution coupon of each loan, the loan has to be priced at different bond coupon values and the AAA and subordinate bonds created at those coupons also have to be priced. However, the subordinate bond cash flows are discounted with spreads to the U. S. Treasury, with spreads taken at the WA best execution coupon which is still unknown. This creates a circular dependency as the best execution of each loan in the population of loans now depends on all the other loans in the population. FIG. 5 is a flow chart depicting a method 500 for packaging a population of loans into a senior/subordinate structure in accordance with one exemplary embodiment of the present invention. The method 500 is an alternative method to that of method 310 of FIG. 4, accounting for pricing subordinate bonds at the WA execution coupon and provides a solution to the circular dependency discussed above. The WA execution coupon for a population of loans can be calculated by: In Equation 1, x ij is a binary variable with a value of either 0 or 1, whereby a value of 1 indicates that the i th loan is optimally executing at the j th execution coupon value. The parameters d 0 to d j represent the j execution coupon values. For example, the coupons values could range from 4.5 to 7.0. Finally, the parameter b i represents the balance of the i th loan. If q o to q j are the weights of the j execution coupons, then: where q 0 to q 1 are special ordered sets of type two, which implies that at most two are non-zero and the two non-zero weights are adjacent. Let Pa ij be the price of the AAA bond when loan i executes at coupon j. Next, let Ps ij be the overall price of all of the subordinate bonds combined when loan i executes at coupon j. Finally, let Pio ij and Ppo ij be the prices of the IO and PO bonds respectively when loan i executes at coupon j. The AAA bond prices and the IO and PO bond price components of loan i executing at coupon j are linear functions of x ij . The AAA priced as a spread to the TBA is a function of the execution coupon of the AAA bond and the IO/PO prices are a lookup based on collateral attributes of the loan. However, pricing the subordinate bonds is complicated because the subordinate cash flows are discounted at the WA execution coupon. Let P i be a matrix of size jj that contains the prices of the subordinate bonds. The (m, n) entry of the matrix represents the price of the subordinate cash flows when the cash flow of loan i is generated assuming that loan i executes at the m th coupon and is discounted using subordinate spreads for the n th coupon. Subordinate spreads to the U. S. Treasury are a function of the execution coupon and any product definition, such as the size (e. g. Jumbo/Conforming), maturity (e. g. 15/30 years), etc. The price of the subordinate bond of the i th loan can be written as: which is a non linear expression as the equation contains a product of q and x ij . both of which are variables in this equation. FIG. 5 provides a method 500 for overcoming this non-linearity. Referring to FIG. 5, at step 505 . the senior/subordinate module 121 determines the optimal execution price for each loan in the population of loans independent of the WA execution coupon. In one exemplary embodiment, the senior/subordinate module 121 employs the method 310 of FIG. 4 to find the optimal execution price for each loan. At step 510 . the senior/subordinate module 121 determines the WA execution coupon corresponding to the optimal execution price for each loan. This WA execution coupon can be found using Equation 1 above. At step 515 . the senior/subordinate module 121 determines the weights (i. e. q 0 q j ) of each execution coupon for the WA execution coupon found in step 510 . These weights can be found using Equation 3 above. At step 520 . the senior/subordinate module 121 builds a model including an objective function to determine the optimal execution coupon for each loan to maximize the total market value of all of the bonds in the senior/subordinate structure. The expression of the objective function contains ij terms, where the ij term represents the market value of executing the i th loan at the j th execution coupon. After inserting the values of the weights of the execution coupons (i. e. qs) into the expression for subordinate bond price (Equation 4), only two of the terms will be non-zero for the sub-price of the i th loan executing at the j th execution coupon. As the method 200 of FIG. 2 iterates step 215 . different WA execution coupons can be used to maximize the objective function. The iterations can begin with the WA execution coupon found in step 510 and the senior/subordinate module 121 can search around this WA execution coupon until either the optimal solution is found or the user decides that a solution of sufficient high quality is found in step 220 of FIG. 2. In other words, the senior/subordinate module 121 searches for an optimal solution by guessing several values of the WA execution coupon around an initial estimate of the optimal execution coupon. After a final solution is found by the senior/subordinate module 121 . the loans can be grouped based on the coupon values for each loan in the final solution to the objective function. In some instances, one of the undesirable effects of the senior/subordinate bond structure is the creation of IO and/or PO bonds, which may not trade as rich as AAA bonds. In some exemplary embodiments, the senior/subordinate module 121 can ameliorate this issue by considering a loan as two pseudo loans. For example, a loan having a net rate of 6.125 and a balance of 100,000 can be considered equivalent to two loans of balance b1 and b2 and coupons 6 and 6.5 such that the following conditions are satisfied: The first condition conserves the original balance, while the second condition is to set the WA coupon of the two pseudo loans to equal the net rate of the original loan. Solving these equations for b1 and b2, we find that b175,000 and b225,000. These two loans, when executed at 6.0 and 6.5 bond coupons respectively, avoids the creation of either an IO bond or a PO bond. Although in the above example two adjacent half point coupons were used to create the two pseudo loans, two coupons from any of the half point bond coupons that are being used to create the bonds can be used. For example, if only bond coupons from 4.5 to 7.0 are being used to create the bonds, there would be fifteen combinations to consider (6C215). In some cases, the best solution is not to split the loan into two adjacent half point bond coupons. For example, this split may not be optimal if the AAA spreads at the two adjacent half point coupons are far higher than the ones that are not adjacent to the net balance of the loan. The senior/subordinate module 121 can construct a linear program or linear objective function to determine the optimal split into pseudo loans. The output of the linear program is the optimal splitting of the original loan into pseudo loans such that the overall execution of the loan is maximized, subject to no IO bond or PO bond creation. For each loan i, let variable x ij indicate the balance of loan i allocated to the jth half point coupon, subject to the constraint that the sum of over x ij for all j equals to the balance of loan i and the WA coupon expressed as a function of the x ij s equals to the net coupon of loan i, similar to Equation 6 above. Let the execution coupons be r 0 to r n . Thus, this equation becomes: where b i is the balance of loan i and c i is the net coupon of loan i. The price of loan i executing at coupon j is the sum of the price of the AAA bond and the subordinate bonds. No IO or PO bonds are created when the coupons are split. The senior/subordinate module 121 calculates the price of the AAA bond as a spread to the TBA, where the spread is a function of the execution coupon j. In one embodiment, the senior/subordinate module 121 also calculates the price of the subordinate bond as a spread to the TBA for simplification of the problem. Cash flows are not generated as the split of the balances to different execution coupons is not yet known. The senior/subordinate module 121 combines the price of the subordinate bond and the AAA bond in proportion to the subordination level of loan i, which can be input by a user in step 205 of FIG. 2 or input by an API. At this point, the senior/subordinate module 121 has calculated the price of loan i (P ij ) for each execution coupon j. To determine the optimal splitting of the original loan into pseudo loans, the senior/subordinate module 121 creates the following objective function and works to maximize this objective function: Equation 8 is a simple linear program with two constraints and can be solved optimally. The solution gives the optimal split of the loan into at most two coupons and thus, a bond can be structured without creating any IO or PO bonds. The user can determine if the bond should be split or not based on the optimal execution and other business considerations. FIG. 6 is a flow chart depicting a method 315 for packaging a population of loans into pass through bonds in accordance with one exemplary embodiment of the present invention. A pass through bond is a fixed income security backed by a package of loans or other assets. Typically, as briefly discussed above with reference to FIG. 1, a pass through bond is guaranteed by a government agency, such as Freddie Mac or Fannie Mae. The government agency guarantees the pass through bond in exchange for a guarantee fee (Gfee). The Gfee can be an input provided by the agencies for a specific set of loans or can be specified as a set of rules based on collateral characteristics. Regardless of how the Gfee is obtained, the Gfee for a loan set is known. When loans are securitized as a pass through bond, one has the option to buy up or buy down the Gfee in exchange for an equivalent fee to the agencies. Buying up the Gfee reduces the net coupon and thus the price of the bond as well. This upfront buy up fee is exchanged in lieu of the increased Gfee coupon. Similarly, buying down the Gfee reduces the Gfee and increases the net coupon and therefore increases the bond price. An upfront fee is paid to the agencies to compensate for the reduced Gfee. The Fannie Mae and Freddie Mac agencies typically provide buy up and buy down grids each month. Referring to FIG. 1, these grids can be stored in a data source 150 or in the data storage unit 125 for access by the pass-thru module 122 of the loan trading optimizer 120 . If the Gfee is bought up or bought down, an excess coupon is created. The amount of buy up or buy down of Gfee can vary based on collateral attributes of the loan and can also be subject to a minimum and maximum limit. Referring now to FIGS. 1 and 6, at step 605 . the pass-thru module 122 determines the optimal execution of each loan by buy up or buy down of the Gfee. In one exemplary embodiment, the optimal execution of each loan is determined by finding the overall price of the loan for each available buy up and buy down of the Gfee. Typically, a Gfee can be bought up or down in increments of 1/100 th of a basis point. The pass-thru module 122 implements a loop for each loan from the minimum to the maximum Gfee buy up with a step size of 1/100 th of a basis point. Similarly, the pass-thru module 122 implements a loop for each loan from the minimum to the maximum Gfee buy down with a step size of 1/100 th of a basis point. In each iteration, the amount of Gfee buy up or buy down is added to the current net rate of the loan. From this modified net rate of the loan, the TBA coupon is determined as the closest half point coupon lower than or equal to the modified net rate. The excess coupon is equal to the modified net rate of the TBA coupon and the price of the excess coupon is a lookup in the agency grid. The fee for the buy up or buy down is also a lookup in the agency grid. The price of the TBA coupon is a lookup from the TBA price curve. When the Gfee is bought up, the cost is added to the overall price and when the Gfee is bought down, the cost is subtracted from the overall price. The pass-thru module 122 determines the overall price of execution for the loan at each iteration and determines the optimal execution for the loan as the execution coupon of the TBA for which the overall price is maximized. This overall cost is the combination of the price of the TBA coupon, the price of the excess coupon, and the cost of the Gfee (added if buy up, subtracted if buy down). At step 610 . the pass-thru module 122 determines which TBA pools each loan is eligible for. Pooling loans into TBA bonds is a complex process with many constraints on pooling. Furthermore, different pools of loans have pool payups based on collateral characteristics. For example, low loan balance pools could prepay slower and thus may trade richer. Also, loan pools with geographic concentration known to prepay faster may trade cheaper and thus have a negative pool payup. Thus, pooling optimally taking into account both the constraints and the pool payups can lead to profitable execution that may not be captured otherwise. Each of the TBA pools for which a loan can be allocated has a set of pool eligibility rules and a pool payup or paydown. Non-limiting examples of pools can be a low loan balance pool (e. g. loan balances less than 80K), a medium loan balance pool (e. g. loan balance between 80K and 150K), a high loan balance pool (e. g. loan balances above 150K), a prepay penalty loan pool, and an interest only loan pool. For a loan to be allocated to a specific pool by the pass-thru module 122 . the loan has to satisfy both the eligibility rules of the pool and also best execute at the execution coupon for that pool. The pass-thru module 122 applies the eligibility rules of the TBA bond pools to the loans to determine the TBA bond pools for which each loan is eligible. The pass-thru module 122 can utilize pool priorities to arbitrate between multiple pools if a loan is eligible for more than one pool. If a loan is eligible to be pooled into a higher and lower priority pool, the pass-thru module 122 allocates the loan to the higher priority pool. However, if a loan is eligible for multiple pools having the same priority, the pass-thru module 122 can allocate the loan into either of the pools having the same priority. At step 615 . the pass-thru module 122 builds a model for allocating the loans into TBA pools based on the constraints of each TBA bond pool. Let x ij be a binary variable with a value of 1 or 0 which has a value of 1 when loan i is allocated to TBA bond pool j. The total loan balance and loan count constraints of the TBA pools are linear functions of the x ij variables. The objective function for this model is also a linear combination of the market values of each loan. The primary problem in this model is that the given loan population selected in step 210 of FIG. 2 may not be sufficient to allocate all TBA loan pools, as some of the pools may not have loans to satisfy the balance and count constraints or the loans may not be eligible for those pools. In such cases, it is desirable for the pools to have the constraints when applicable. If there are some pools for which there are not enough loans in the population of loans to form a pool, then such pools are not subjected to the specified constraints while the other pools are. However, it is not possible to know a-priori which pools do not have enough loans to satisfy the constraints. Thus, the model employs conditional constraints to allow constraints to be applicable to only those pools which are allocated. The pooling model is modified to allow for some loans to not be allocated to any pool. This non-allocation will ensure that the model is always solvable and is similar to introducing a slack variable in linear programming. Thus, for each loan in the population of loans, there is an additional binary variable representing the unallocated pool into which the loan can be allocated. Those loans allocated to the unallocated pool are given a zero cost/market value, thus encouraging the pass-thru module 122 to allocate as many loans as possible. The next step in building this pooling model is to introduce p binary variables for the p possible TBA pools. A value of 1 indicates that this pool is allocated with loans satisfying the pool constraints and a value of 0 indicates that this pool is not allocated. These variables are used to convert simple linear constraints into conditional constraints. Each constraint of each pool is converted to conditional constraints for the pooling model. To detail this conversion, a maximum loan count constraint is considered for pool P. Let x 1 to x n be binary variable where x i are the loans eligible for pool P. Next, let x 1 . x n U, where U equals the total number of loans in pool P. Finally, let w be the binary variable to indicate if pool P is allocated. The user constraint for maximum loan count is specified as UK, where K is given by the user. In order to impose this constraint conditionally, this constraint is transformed to the following two constraints: UK w UM w where M is a constant such that the sum of all x i s is bounded by M. Consider both the cases when pool P is allocated (w1) and when pool P is not allocated (w0) below: w1: UK (required) UM (redundant) w0: U0 U0 The only way for U0 would be when all the x i s are 0 and thus, pool P will be unallocated. Other constraints, such as minimum count, minimum balance, maximum balance, average balance, and weighted average constraints can be transformed similarly for the pooling model. After all of the constraints are transformed to conditional constraints, the pooling model is ready to handle constraints conditionally. At step 620 . the pass-thru module 122 executes the pooling model to allocate the loans into TBA pools. After the pass-thru module 122 executes the model for one iteration, the method 315 proceeds to step 220 (FIG. 2). As the method 200 of FIG. 2 iterates step 215 . different TBA pool allocations are produced by the pass-thru module 122 until either the optimal TBA pool allocation is found or until the user decides that a solution of sufficient high quality is found in step 220 (FIG. 2). FIG. 7 is a flow chart depicting a method 320 for packaging whole loans in accordance with one exemplary embodiment of the present invention. The method 320 identifies an optimal package of loans meeting a set of constraints given by a customer or investor. In this embodiment, the loan package is optimized by determining which loans, among the population of loans that meet the constraints, are least favorable to be securitized. Although the method 320 of FIG. 7 is discussed in terms of the senior/subordinate bond structure, other bonds structures or models can be used. Referring to FIG. 7, at step 705 . the whole loan module 123 determines which loans in the population of loans meets constraints of a bid for whole loans. Investment banks and other financial institutions receive bids for whole loans meeting specific requirements. These requirements can be entered into the user interface 115 at step 205 of FIG. 2 and/or stored in the data storage unit 125 or a data source 150 . The constraints can include requirements that the loans must satisfy, such as, for example, minimum and maximum balance of the total loan package, constraints on the weighted average coupon, credit ratings of the recipients of the loans (e. g. FICO score), and loan-to-value (LTV) ratio. The constraints can also include location based constraints, such as no more than 10 of the loan population be from Florida and no zip code should have more than 5 of the loan population. After the whole loan module 123 selects the loans that meet the constraints, at step 710 . the whole loan module 123 determines the price of each loan that meets the constraints based on a securitization module. For example, the price of the loans may be calculated based on the senior/subordinate structure discussed above with reference to FIGS. 4 and 5. At step 715 . the whole loan module 123 determines whether to use an efficient model to select loans least favorable to be securitized by minimizing the dollar value of the spread of execution of the loans based on a securitization model or a less efficient model to select loans least favorable to be securitized by minimizing the spread of execution of the loans based on a securitization model. In one exemplary embodiment, this determination can be based on the total number of loans in the population or chosen by a user. If the whole loan module 123 determines to use the efficient model, the method 320 proceeds to step 725 . Otherwise, the method 320 proceeds to step 720 . At step 720 . the whole loan module 123 selects loans that are least favorable to be securitized by minimizing the spread of execution of the loans based on the senior/subordinate bond structure. The whole loan module 123 builds a model to select a subset of the loans that meet the constraints such that the WA price of the loans of this subset net of the TBA price of the WA coupon of this subset is minimized. The TBA price of the WA coupon of the subset is typically higher as the TBA typically has a better credit quality and hence the metric chosen will have a negative value. The objective function that needs to be minimized is given by: In Equation 9, x 1 to x n are binary variables with a value of either 0 or 1, whereby a value of 1 indicates that the loan is allocated and 0 otherwise. The variables b 1 to b n are the balances of the loans and p 1 to p n are the prices of the loans as determined in step 710 . The variables q 1 to q m are the weights for each of the half point coupons and px 1 to px m are the TBA prices for the half point coupons. The weights are special ordered sets of type two, which as discussed above, implies that at most two are non-zero and the two non-zero weights are adjacent. Thus, the expression (q 1 px 1 . q m px m ) is the price of the WA coupon of the allocated loans. The weights (q 1 - q m ) are subject to the constraints: where the c i s are the net coupons on the loans and the r i s are the half point coupons of the TBA curve. An illustrated weighted average constraint (Kwac) on the coupon could be: Let y 0 M/(x 1 b 1 . x n b n ) and y j x j y 0 where M is a scaling constant to keep the model scaled sensibly. Rewriting the equations, the objective function to minimize is:

No comments:

Post a Comment