Hel Lån Trading System


System og metode for å optimalisere Fast Rate Whole Loan Trading USA 20140188692 A1 Optimalisering av fast rente hele lånehandel. Spesifikt gir oppfinnelsen datasystemer og metoder for optimal emballasje av en befolkning av hele lån i obligasjoner i enten en senior-underliggende obligasjonsstruktur eller i bassenger av passerer gjennom verdipapirer garantert av et statsforetak. Modeller for hver type obligasjonsstruktur blir behandlet på populasjonen av lån til enten en optimal obligasjonspakke er funnet eller en bruker bestemmer at en løsning med tilstrekkelig høy kvalitet er funnet. I tillegg kan modellene tegne bud for hele lån ved å tildele hele lån som oppfyller krav til budet, men er minst gunstige for å bli securitized. (25) Det som hevdes er: 1. En datamaskinimplementert fremgangsmåte omfattende: å frembringe, ved en datamaskin, en modell som omfatter en objektiv funksjon som representerer en total markedsverdi av den eldre innskuddsbindingsstrukturen for flere lån og maksimerer, ved datamaskinen, objektivfunksjonen for å maksimere den totale markedsverdi av den eldre innskuddsbindingsstrukturen. 2. 3. Datamaskinimplementert fremgangsmåte ifølge krav 1, karakterisert ved at trinnet med å maksimere objektivfunksjonen omfatter: bestemme en markedspris for hvert lån som bestemmer en første veid gjennomsnittlig utførelseskupong for flere lån som svarer til markedsprisen på hvert lån som bestemmer det totale markedet verdien av den seniorsubordinære strukturen ved den første vektede gjennomsnittlige utførelseskupongen, som detererer den veide gjennomsnittlige utførelseskupongen og bestemmer en total markedsverdi for den eldre underordnede strukturen ved hver iterasjon og bestemmer den veide gjennomsnittlige utførelseskupongen som har de høyeste totale markedsverdier for seniorinnretningstrukturen. 3. Den datamaskinimplementerte fremgangsmåten i krav 1. Videre omfatter det å utvikle og maksimere en objektiv funksjon for å optimal splitte minst ett av lånene i to pseudolån for å forhindre en opprettelse av en rentebeløpende obligasjon eller en rektor eneste obligasjon, de to pseudolånene omfatter forskjellige kupongverdier. 4. En datamaskinimplementert metode for optimal sammenslåing av en befolkning av lån til å passere gjennom obligasjonsbassenger, hvor fremgangsmåten omfatter: å velge befolkningen på lån som bestemmer, ved hjelp av datamaskinen, en optimal gjennomføring av hvert lån fra befolkningen av lån ved oppkjøp eller en kjøpe ned et garantibevis som bestemmer en eller flere bassenger som hvert lån er kvalifisert for å bygge en modell basert på minst en begrensning for minst ett bestemt basseng og tildeling av lån til den ene eller flere passerer gjennom obligasjonsbassenger. 5. Den datamaskinimplementerte fremgangsmåten i krav 4 omfatter videre å bestemme, ved datamaskinen, minst en modul av en eller flere moduler som er konfigurert til å samle befolkningen av lån inn i pass gjennom obligasjonspuljer basert på en mottatt inngang, hvor den minst ene Modulen består av en gjennomføringsmodul. 6. 4. Datamaskinimplementert fremgangsmåte ifølge krav 4. hvor modellen omfatter en objektiv funksjon som omfatter en lineær kombinasjon av en markedsverdi av hver av befolkningen i lån. 7. 6. Datamaskinimplementert fremgangsmåte ifølge krav 6. hvor allokering av lånene omfatter utførelse av modellen for å maksimere objektivfunksjonen. 8. 4. Datamaskinimplementert fremgangsmåte ifølge krav 4. Videre omfattende å omdanne den minst en begrensning av hver passering gjennom bindingsbassenget til en betinget begrensning. 9. 4. Datamaskinimplementert fremgangsmåte ifølge krav 4. Videre omfattende å konvertere minst en del av den minst en begrensning av hver passering gjennom bindingsbassenget til en betinget begrensning før behandling av modellen for å sikre at modellen er oppløselig. 10. 5. Datamaskinimplementert fremgangsmåte ifølge krav 4. Videre omfattende å omdanne hver av de minst ene begrensninger til en betinget begrensning for å tillate begrensninger å være anvendelige for bare å passere gjennom obligasjonspuljer som er tildelt. 11. 4. Datamaskinimplementert fremgangsmåte ifølge krav 4. Videre omfattende å tildele minst en av befolkningen av lån til et ikke-allokert basseng. 12. Den datamaskinimplementerte fremgangsmåten i krav 4. Videre omfattende å tildele lån til et ikke-allokert basseng dersom hver av passering gjennom obligasjonsbassenger ikke kan allokeres med befolkningen av lån, hvor lån i det ufordelte bassenget er gitt null markedsverdi og hvor prosessering av modellen Videre omfatter det å minimere antall lån tildelt til ikke-allokert basseng. 1. 3 . 4. Datamaskinimplementert fremgangsmåte ifølge krav 4. hvor modellen står for begrensningen av hver passering gjennom bindingsbassenget og en utbetaling tilknyttet hver passering gjennom obligasjonsbassenget. 14. Et system som omfatter: et minne som omfatter et sett med instruksjoner for å tildele en del av et antall lån til en lånepakke og en datamaskin koblet til minnet og konfigurert til å utføre settet med instruksjoner for å: bestemme hvilket av flere lån som møtes eller flere begrensninger av lånepakken, bestemmer en markedspris på hver av de mange lånene basert på en securitisasjonsmodellmodell en objektiv funksjon for å bestemme hvilke lån i flere lån som oppfyller en eller flere begrensninger, minst lønnsomme for securitisasjon i securitisasjonsmodell og tildele lån som oppfyller en eller flere begrensninger og er minst lønnsomme for verdipapirisering i lånepakken. 15. 14. System ifølge krav 14, karakterisert ved at securitiseringsmodellen omfatter en seniorsubordinatmodell. 16. 14. System ifølge krav 14, hvor objektivfunksjonen er modellert for å minimere spredning mellom en veid gjennomsnittlig pris på lånene i lånepakken og en TBA-obligasjonspris på den veide gjennomsnittlige kupongen av lånene i lånepakken . 17. 14. Systemet ifølge krav 14, hvor objektivfunksjonen er modellert for å minimere en dollarverdi av en spredning mellom en veid gjennomsnittlig pris på lånene i lånepakken og en TBA-obligasjonspris på den veide gjennomsnittlige kupongen av lånene i lånepakken. 18. En metode for optimalisering av hele lånehandel med fast rente, metoden omfatter: å velge en befolkning av lån som velger, ved en datamaskin, ett eller flere lån som oppfyller en begrensning av et bud, ved å bestemme en pris for hvert lån som oppfyller begrensning basert på en securitized modell som ved hjelp av datamaskinen bestemmer om man skal bruke en effektiv modell for å velge hvilken av de ene eller flere lånene som er minst gunstige for å være securitized, og hvis den effektive modellen blir brukt, velger du, ved datamaskinen, hvilken av Det ene eller flere lån er minst gunstige for å bli securitized med minimum dollarverdi av spredning. 19. 18. Fremgangsmåte ifølge krav 18. Videre omfattende: å bestemme, ved datamaskinen, minst én modul av en eller flere moduler som optimaliserer fullrentetransaksjon med fast rente basert på en mottatt inngang, hvor den minst ene modulen omfatter en hel lånemodul. 20. 18. Fremgangsmåte ifølge krav 18. Videre omfattende trinnet å tildele, ved hjelp av datamaskinen, en del av flertallet av hele lån til en pakke med hele lån for å selge som hele lån, idet delen omfatter hele lån som oppfyller minst en begrensning og er mindre lønnsomt enn de andre hele lånene når de blir henrettet til et obligasjonslån i obligasjonsstrukturen dersom den effektive modellen ikke blir brukt, og deretter velger du av datamaskinen hvilken av det ene eller flere lån som er minst gunstige for å bli securitisert ved å minimere spredningen. 21. Et system som omfatter: en datamaskin som er kommunikasjonskoblet til nettverket og konfigurert til å: opprette en modell som svarer til flere overskuddskupongbondspoler og et ikke-allokert basseng, hvor hver overskuddskupongbondepool omfatter minst en begrensning og prosessmodellen for å allokere hver av Lånene i enten et overskudd av kupongobligasjonsbasseng eller inn i det ufordelte bassenget for å maksimere den totale markedsverdien av overskytende kupong som blir allokert til de overskytende kupongobligasjonspuljene. 22. 21. System ifølge krav 21, hvor modellen omfatter en objektiv funksjon som representerer den totale markedsverdi av overskuddskupongen som blir tildelt til de overskytende kupongobligasjonspuljene. 23. 21. System ifølge krav 21. hvori datamaskinen er videre konfigurert til å transformere hver av de minst ene begrensninger til en betinget begrensning. 22. 21. System ifølge krav 21. hvori datamaskinen er ytterligere konfigurert til å transformere hver av de minst ene begrensningene til en betinget begrensning for å tillate begrensninger å være anvendelige for bare overskytende kupongbondspoler som er tildelt. 24. 21. Systemet ifølge krav 21, hvorved datamaskinen er ytterligere konfigurert til å: identifisere de overskytende kupongpuljer for hvilke hver av lånene kan allokeres basert på sikkerhetsattributter av lånene og kollapse hvert lån identifisert for et overskuddskupongpulje inn i et enkelt lån til redusere antall lån i modellen. Denne søknaden er en del av US patentansøkning Ser. Nr. 12533 ​​315, innlevert 31. juli 2009, som hevder fordelen av U. S. Provisional Patent Application No. 61191 011, innlevert 3. september 2009, som begge er herved fullt ut innlemmet her som referanse. Foreliggende oppfinnelse vedrører generelt systemer og metoder for optimalisering av lånehandel og mer spesifikt til datasystemer og datamaskinimplementerte metoder for optimalisering av pakker med hele lån for utførelse i obligasjoner eller salg som hele lånepakker. Finansinstitusjoner, som investeringsbanker, kjøper lån og låneporteføljer fra banker eller låneopphavsgivere, primært for å securitisere lånene i obligasjoner og deretter selge obligasjonene til investorer. Disse obligasjonene anses som verdipapirer som er verdipapirer som de er sikret av lånets eiendeler. Mange typer lån kan securitiseres i obligasjoner, inkludert boliglån, kommersielle boliglån, billån og kredittkortfordringer. En rekke obligasjonsstrukturer kan opprettes fra en befolkningsgruppe av lån, hver struktur har egenskaper og begrensninger som må regnskapsføres for å maksimere fortjenesten som en finansinstitusjon kan realisere ved å securitisere lånene i obligasjoner. Den optimale gruppering eller sammenslåing av lån til obligasjoner for en gitt obligasjonsstruktur og en gitt lånepopulasjon kan avhenge av egenskapene til hvert lån i befolkningen. Videre er obligasjonsbassenget eller utførelseskupongen som et individuelt lån utfører, avhengig av obligasjonsbassenget eller best mulig utførelse av hverandre lån i befolkningen. Som den typiske lånepopulasjonen vurderes for å securitisere til obligasjoner, er svært stor (f. eks. 10 000 lån eller mer), kan det være utfordrende å bestemme en optimal sammenslåing av lån for verdipapirisering i obligasjoner. Følgelig er det nødvendig med systemer og metoder for å optimalisere emballasjen av en befolkning av lån til obligasjoner for en gitt obligasjonsstruktur. Oppfinnelsen tilveiebringer datastyrte systemer og datamaskinimplementerte metoder for optimalisering av fullrentetransaksjoner med fast rente for en befolkning av hele lån. Et aspekt av foreliggende oppfinnelse tilveiebringer et system for optimalisering av hele lånehandel med fast rente. Dette systemet inkluderer et databehandlingssystem som inkluderer et program som inkluderer en eller flere moduler som kan brukes til å utvikle en modell for å fastslå en securitisasjonsstrategi for en befolkning av hele lån, verdipapiriseringsstrategien inkludert obligasjoner og som er i stand til å behandle modellen til en optimal securitisasjonsstrategi for Befolkningen av hele lån er funnet og et brukergrensesnitt for å motta brukerinngang for den ene eller flere moduler og for å utstede optimal securitisasjonsstrategi, brukergrensesnittet er i kommunikasjon med programvaren. Et annet aspekt ved foreliggende oppfinnelse tilveiebringer en datamaskinimplementert fremgangsmåte for å bestemme en optimal eksekveringsobligasjonskupong for hvert lån i en gruppe av lån i en seniorunderliggende obligasjonsstruktur. Metoden inkluderer å skape en modell som består av en objektiv funksjon som representerer en total markedsverdi av den seniorsubordinære obligasjonsstrukturen for lånene. Videre innbefatter metoden maksimering av objektivfunksjonen for å maksimere den totale markedsverdien av den eldrevne obligasjonsstrukturen. Et annet aspekt av oppfinnelsen tilveiebringer en datamaskinimplementert fremgangsmåte for optimal oppsamling av lån inn i passeringsbassenger. Metoden inkluderer valg av en populasjon av lån. Videre inkluderer for hvert lån av utvelgelsespopulasjonen av lån, å bestemme en optimal gjennomføring av hvert lån ved oppkjøp eller nedkjøp av garantiavgift. Videre inkluderer fremgangsmåten å bestemme en eller flere bassenger for hvilke hvert lån er kvalifisert. I tillegg inkluderer metoden å bygge en modell basert på minst en begrensning for minst ett bestemt basseng og tildeling av lån til den ene eller flere passerer gjennom obligasjonsbassenger. Et annet aspekt av oppfinnelsen tilveiebringer et system som inkluderer et minne som har et sett med instruksjoner for tildeling av en del av en gruppe lån til en lånepakke. Videre innbefatter systemet en datamaskin koblet til minnet. Ved utførelse av instruksjonssettet bestemmer datamaskinen hvilke av lånene som møter en eller flere begrensninger av lånepakken. I tillegg bestemmer datamaskinen en markedspris på hvert av lånene basert på en securitisasjonsmodell. Videre kan datamaskinen modellere en objektiv funksjon for å bestemme hvilke lån i gruppen av lån som oppfyller en eller flere begrensninger, er minst lønnsomme for verdipapirisering i securitisasjonsmodellen og tildele lånene som oppfyller en eller flere begrensninger, og er minst lønnsomme for securitisasjon i lånepakken. Et annet aspekt ved foreliggende oppfinnelse tilveiebringer en fremgangsmåte for optimalisering av fulllånshandelen med fast rente. Denne metoden inkluderer trinnene for å velge en befolkning av lån som velger et eller flere lån som oppfyller en begrensning av et bud som fastsetter en pris på hvert lån som oppfyller begrensningen basert på en securitisert modell som bestemmer om man skal bruke en effektiv modell for å velge hvilken av de Et eller flere lån er minst gunstige for å være securitized. Videre, hvis den effektive modellen blir brukt, inkluderer metoden hvilken av pone eller flere lån som er minst gunstige for å bli securitized med minimum dollarverdi av spredning. Et annet aspekt ved foreliggende oppfinnelse tilveiebringer et system for optimal pooling av overskuddskupong som resultat av securitiserende lån. Systemet inkluderer og nettverk og en datamaskin som kan kommuniseres koblet til nettverket. Videre oppretter datamaskinen en modell som svarer til overskudd av kupongobligasjonsbassenger og et ikke-allokert basseng, hver overskuddskupongbondepool, inkludert minst en begrensning, og behandler modellen for å fordele hvert av lånene i enten et overskudd av kupongobligasjonsbasseng eller i den ikke-allokerte bassenget for å maksimere den totale markedsverdien av overskytende kupong som blir allokert til de overskytende kupongobligasjonsbassene. Disse og andre aspekter, trekk og utførelser av oppfinnelsen vil bli åpenbare for en fagmann innen fagområdet ved å ta hensyn til den følgende detaljerte beskrivelse av illustrerte utførelser som eksempler på den beste modus for utførelse av oppfinnelsen som for tiden oppfattet. KORT BESKRIVELSE AV TEGNINGENE For en mer fullstendig forståelse av de eksemplariske utførelsene av foreliggende oppfinnelse og fordelene derav refereres nå til den følgende beskrivelse i forbindelse med de medfølgende figurer som kort beskrives som følger. Fig. 1 er et blokkskjema som viser et system for optimalisering av fastlånshandelen med fast rente i samsvar med en eksemplarisk utførelse av foreliggende oppfinnelse. Fig. 2 er et flytskjema som viser en fremgangsmåte for optimalisering av hele lånehandel med fast rente i samsvar med en eksemplarisk utførelse av foreliggende oppfinnelse. Fig. 3 er et flytskjema som viser en metode for å bestemme en securitisasjonsstrategi for en populasjon av lån i samsvar med en eksempelvis utførelsesform av foreliggende oppfinnelse. Fig. 4 er et flytskjema som viser en fremgangsmåte for å pakke en befolkning av lån inn i en senior-underliggende struktur i samsvar med en eksempelvis utførelsesform av foreliggende oppfinnelse. Fig. 5 er et flytskjema som viser en fremgangsmåte for å pakke en befolkning av lån inn i en senior-underliggende struktur i samsvar med en eksempelvis utførelsesform av foreliggende oppfinnelse. Fig. 6 er et flytskjema som viser en fremgangsmåte for å pakke inn en befolkning av lån til å passere gjennom obligasjoner i samsvar med en eksempelvis utførelsesform av foreliggende oppfinnelse. Fig. 7 er et flytskjema som viser en fremgangsmåte for å pakke hele lån i samsvar med en eksempelvis utførelsesform av foreliggende oppfinnelse. Fig. 8 er et flytskjema som viser en fremgangsmåte for sammenkobling av overskuddskupong i samsvar med en eksempelvis utførelsesform av foreliggende oppfinnelse. DETALJERENDE BESKRIVELSE AV EKSEMPLERENDE UTFØRELSESFORMER Oppfinnelsen tilveiebringer datasystemer og metoder for optimalisering av fullrentetransaksjoner med fast rente. Spesifikt gir oppfinnelsen datasystemer og metoder for optimal emballasje av en befolkning av hele lån i obligasjoner i enten en senior-underliggende obligasjonsstruktur eller i bassenger av passerer gjennom verdipapirer garantert av et statsforetak. Modeller for hver type obligasjonsstruktur blir behandlet på populasjonen av lån til enten en optimal obligasjonspakke er funnet eller en bruker bestemmer at en løsning med tilstrekkelig høy kvalitet er funnet. I tillegg kan modellene tegne bud for hele lån ved å tildele hele lån som oppfyller krav til budet, men er minst gunstige for å bli securitized. Selv om de eksemplariske utførelsene av oppfinnelsen diskuteres i form av hele lån (særlig fastrentede boliglån), kan aspekter ved oppfinnelsen også anvendes til handel med andre typer lån og eiendeler, for eksempel lån med variabel rente og revolverende gjeld. Oppfinnelsen kan omfatte et dataprogram som omfatter de funksjoner som er beskrevet her og illustrert i de vedlagte flytdiagrammer. Det skal imidlertid være åpenbart at det kunne være mange forskjellige måter å implementere oppfinnelsen på i dataprogrammering, og oppfinnelsen bør ikke tolkes som begrenset til et hvilket som helst sett med dataprograminstruksjoner. Videre vil en dyktig programmerer kunne skrive et slikt dataprogram for å gjennomføre en utførelsesform av den beskrevne oppfinnelse basert på flytdiagrammer og tilhørende beskrivelse i søknadsteksten. Derfor er ikke avsløring av et bestemt sett med programkodeanvisninger ansett som nødvendig for en tilstrekkelig forståelse av hvordan man lager og bruker oppfinnelsen. Oppfinnelsens funksjonalitet av det påkrevde dataprogrammet vil bli forklart mer detaljert i den følgende beskrivelse sammenholdt med figurene som illustrerer programflyten. Videre vil det være verdsatt for fagfolk på området at ett eller flere av de nevnte trinnene kan utføres av maskinvare, programvare eller en kombinasjon derav, slik det kan være utført i ett eller flere databehandlingssystemer. Med henvisning til tegningene, hvor like tall representerer like elementer gjennom figurene, vil aspekter av de eksemplariske utførelsene bli beskrevet i detalj. Fig. 1 er et blokkskjema som viser et system 100 for å optimalisere helprishandel med fast rente i samsvar med en eksempelvis utførelsesform av foreliggende oppfinnelse. Med henvisning til fig. 1. Systemet 100 innbefatter et databehandlingssystem 110 forbundet med et distribuert nettverk 140. Beregningssystemet 110 kan være en personlig datamaskin forbundet med det distribuerte nettverk 140. Beregningssystemet 110 kan inkludere ett eller flere applikasjoner, slik som søknadsoptimaliseringsapplikasjon 120 for lån. Denne eksemplariske lånehandeloptimereren 120 omfatter fire moduler 121-124 som kan operere individuelt eller samhandle med hverandre for å gi en optimal emballasje av lån til en eller flere obligasjonsstrukturer og hele lånepakker. En seniorsubordinemodul 121 distribuerer lån til en pensjonsstruktur med pensjonsordninger med obligasjoner som har forskjellig kredittvurdering og ulike netto kupongverdier. Som det vil bli diskutert mer detaljert med henvisning til fig. 4-5. Seniorsubordinasjonsmodulen 121 distribuerer lånene til obligasjoner med AAA-rating, underordnede obligasjoner med lavere kredittrating, og avhengig av lånene og kupongverdiene til AAA-obligasjonene og underordnede obligasjoner, rentebinding og obligasjonslån. En pass-through-modul 122 distribuerer lån til å passere gjennom obligasjoner garantert av et offentlig byrå, for eksempel Freddie Mac eller Fannie Mae. Pass-through-modulen 122 optimaliserer lånene til å bli kunngjort (TBA) gjennom verdipapirer basert på en rekke begrensninger. Pass-thru modulen 122 blir diskutert mer detaljert nedenfor under henvisning til fig. 6. En hellånsmodul 123 tildeler lån for å møte bud for låneporteføljer som oppfyller spesifikke krav og begrensninger i budet. Hele lånemodulen 123 kan interagere med enten seniorsubordinasjonsmodulen 121 eller pass-thru-modulen 122 for å tildele lån som oppfyller kravene i budene, men er mindre gunstige for å bli securitisert. Hele lånemodulen 123 er diskutert nedenfor mer detaljert med henvisning til fig. 7. En overskuddskupongmodul 124 distribuerer overskuddskuponger av verdipapiriserte lån til forskjellige obligasjonsrenter eller - puljer. Den overskytende kupongmodulen 124 kan samle overskytende kuponger som resulterer fra seniorsubordinat bindestruktur opprettet av seniorsubordinatmodulen 121 og overfor kuponger som resulterer fra passere gjennom verdipapirer opprettet av pass-thru-modulen 122. Overskuddskupongmodulen 124 er beskrevet nærmere i det følgende under henvisning til fig. 8. Brukere kan legge inn informasjon i et brukergrensesnitt 115 av databehandlingssystemet 110. Denne informasjonen kan inneholde en type obligasjonsstruktur for å optimalisere, begrensninger knyttet til obligasjonsstrukturer og obligasjonsbassenger, informasjon knyttet til lånebud, og annen informasjon som kreves av lånehandelsoptimerer 120. Etter at informasjonen er mottatt av brukergrensesnittet 115. Informasjonen lagres i en datalagringsenhet 125. som kan være en programvare database eller annen minne struktur. Brukere kan også velge en befolkning av lån for å vurdere for optimalisering ved hjelp av brukergrensesnittet 115. Lånene kan lagres i en database lagret på eller koplet til databehandlingssystemet 110 eller ved en datakilde 150 koblet til det distribuerte nettverket 140. Brukergrensesnittet 115 kan også sende til en bruker obligasjonspakker og hele lånepakker bestemt av lånehandeloptimereren 120. Lånhandeloptimaliseringen 120 kan kommunisere med flere datakilder 150 ved hjelp av det distribuerte nettverket 140. Lånhandeloptimaliseringen 120 kan for eksempel kommunisere med en datakilde 150 for å bestemme Fannie Mae TBA-priser og en annen datakilde 150 for å bestemme amerikanske statsobligasjonspriser. I et annet eksempel kan lånehandeloptimaliseringen 120 kommunisere med en datakilde 150 for å få tilgang til informasjon knyttet til bud for hellånspakker. Det distribuerte nettverket 140 kan være et lokalt nettverk (LAN), wide area network (WAN), Internett eller annen type nettverk. Fig. 2 er et flytskjema som viser en fremgangsmåte 200 for å optimalisere helprishandel med fast rente i samsvar med en eksempelvis utførelsesform av foreliggende oppfinnelse. Med henvisning til fig. 1 og 2. ved trinn 205. brukergrensesnittet 115 mottar inngang fra en bruker. Denne brukerinngangen brukes av lånehandelsoptimerer 120 for å fastslå obligasjonsstrukturen som bør optimaliseres for en befolkning av lån. For eksempel, hvis brukeren ønsker å finne den optimale sammenslåingen av lån for å passere obligasjoner, kan brukeren legge inn begrensningene for hvert obligasjonsbasseng. Eksempler på begrensninger for passering gjennom obligasjonsbassenger inkluderer begrensninger på utlånsbalanser, totalt antall lån til et basseng og total lånebalanse for et basseng. Ved trinn 210. en populasjon av lån er valgt for optimalisering. Befolkningen av lån kan velges fra lån lagret i en lånedatabase lagret på eller koplet til databehandlingssystemet 110 eller fra en database ved en datakilde 150 forbundet med det distribuerte nettverket 140. Befolkningen av lån kan inkludere lån som for tiden eies av brukeren (for eksempel investeringsbank) av lånehandelsoptimerer 120 og-lån som er opptatt av en annen bank, låneopphavsmann eller annen institusjon. For eksempel kan en bruker ansette lånehandelsoptimerer 120 for å finne den maksimale markedsverdien av en låneportefølje for tiden for salg for å bestemme et optimalt bud for låneporteføljen. I tillegg kan en bruker velge befolkningen på lån ved å spesifisere bestemte kriterier, som maksimal lånebalanse, plassering av lån og FICO-poengsum. Ved trinn 215. Lånetransaksjonen 120 bestemmer en verdipapiriseringsstrategi for befolkningen på lån valgt i trinn 210. Avhengig av brukerinngangene mottatt i trinn 205. Lånetransaksjonsoptimerer 120 benytter en eller flere av seniorsubordinatmodulen 121. pass-thru modulen 122. og hele lånemodulen 123 for å fastslå securitisasjonsstrategien for befolkningen i lån. Trinn 215 blir diskutert mer detaljert med henvisning til fig. 3-7. Ved trinn 220. Lånetransaksjonen 120 bestemmer hvorvidt verdipapiriseringsstrategien returnert i trinn 215 er av tilstrekkelig høy kvalitet. I denne eksemplariske utførelsen gjenspeiler lånehandeloptimereren 120 trinnet for å bestemme en securitisasjonsstrategi for befolkningen av lån inntil enten en optimal løsning er funnet eller brukeren fastslår at securitisasjonsstrategien er av tilstrekkelig høy kvalitet. For at brukeren skal kunne avgjøre om verdipapiriseringsstrategien hvis den er av tilstrekkelig høy kvalitet, kan lånehandeloptimaliseringen 120 sende resultatene til brukeren ved hjelp av brukergrensesnittet 115. Lånhandeloptimalisatoren 120 kan utdata disse resultatene basert på en rekke iterasjoner i trinn 215 (for eksempel hver 100 iterasjoner) eller når et visst nivå av kvalitet er funnet. Brukergrensesnittet 115 kan da motta innspill fra brukeren som angir om securitisasjonsstrategien er tilstrekkelig høy kvalitet. Hvis securitisasjonsstrategien er av tilstrekkelig høy kvalitet eller optimal, fortsetter metoden 200 til trinn 225. Ellers går metoden 200 tilbake til trinn 215. I en eksemplarisk utførelsesform måles kvalitet i forhold til den totale dollarverdien av befolkningen i lån. For eksempel kan brukeren ønske å selge en befolkning på lån for minst ti millioner dollar for å kunne by på lånene. Brukeren kan sette en terskel for lånehandeloptimalisatoren 120 for kun å returnere en løsning som oppfyller denne terskelen eller en løsning som er den optimale løsningen hvis den optimale løsningen er under denne grensen. Ved trinn 225. Overskuddskupongmodulen 124 i lånehandelsoptimereren 120 kan slå sammen eventuelle overskytende kuponger som følge av securitisasjonsstrategien bestemt i trinn 215. Dette trinnet er valgfritt og er beskrevet nærmere i det følgende under henvisning til fig. 8. Ved trinn 230. Lånhandeloptimalisereren 120 kommuniserer den endelige securitisasjonsstrategien til brukergrensesnittet 115 for utgang til en bruker. Brukergrensesnittet 115 kan vise den endelige securitisasjonsstrategien og eventuelt andre mulige securitisasjonsstrategier med tilsvarende kvalitetsnivåer. Fig. 3 er et flytskjema som viser en fremgangsmåte 215 for å bestemme en securitisasjonsstrategi for en populasjon av lån i samsvar med en eksempelvis utførelsesform av foreliggende oppfinnelse. Med henvisning til fig. 1 og 3. ved trinn 305. Lånetransaksjonen 120 bestemmer hvilke modeller som skal brukes til å bestemme verdipapiriseringsstrategiene. I denne eksemplariske utførelsen innbefatter lånehandeloptimaliseringen 120 en seniorsubordinemodul 121. en pass-through modul 122. og en hel lånemodul 123. Hver av modulene 121 - 123 kan bygge og behandle en modell for å bestemme en optimal emballasje av lån som diskutert nedenfor. Lånhandeloptimaliseringen 120 bestemmer hvilke moduler 121-123 som skal benyttes basert på inngangen mottatt fra brukeren i trinn 205 i fig. 2. Brukeren kan for eksempel spesifisere at bare en seniorordinær struktur bør optimaliseres for befolkningen av lån. Alternativt, hvis brukeren har angitt tilbudsinformasjon for en portefølje av hele lån, kan lånehandeloptimalisatoren 120 utføre hele lånemodulen 123 med seniorinnretningsmodulen 121 og passordmodulen 122 for å bestemme hvilken av lånene som oppfyller kravene til budet og er minst gunstige for verdipapirisering. I tillegg kan en bruker spesifisere at både en optimal pensjonsstruktur for seniorsubordinert og en optimal samling av passerer gjennom obligasjoner bør bestemmes for befolkningen i lån. Hvis brukeren valgte at en seniorsubordinat obligasjonsstruktur skulle bli optimalisert, fortsetter fremgangsmåten 215 til trinn 310. Ved trinn 310. Seniorsubordinasjonsmodulen 121 utvikler en modell for å pakke inn befolkningen av lån til en seniorinnholdsobligasjonsstruktur og behandler modellen for å bestemme en optimal pensjonsstruktur for lånepopulasjonen. Trinn 310 blir diskutert mer detaljert med henvisning til fig. 4 og 5. Etter at seniorsubordinatstrukturen er bestemt, fortsetter fremgangsmåten 215 til trinn 220 (figur 2). Hvis brukeren valgte at befolkningen på lån skal samordnes optimalt gjennom obligasjoner, fortsetter fremgangsmåten 215 til trinn 315. Ved trinn 315. pass-thru-modulen 122 utvikler en modell for å samle befolkningen av lån i flere obligasjonsbassenger og behandler modellen for å bestemme optimal pooling for lånepopulasjonen. Trinn 315 blir diskutert mer detaljert med henvisning til fig. 6. Etter at poleringen er bestemt, fortsetter fremgangsmåten 215 til trinn 220 (figur 2). Hvis brukeren valgte at hele lånet skulle tildeles en pakke med hele lån som skulle selges, fortsetter metoden 215 til trinn 320. Ved trinn 320. hele lånemodulen 123 utvikler en modell for tildeling av hele lån som oppfyller visse begrensninger og er mindre gunstige for å bli securitized i en hel lånepakke og behandler modellen for å bestemme hvilke lån som passer best for hele lånepakken. Trinn 320 blir diskutert mer detaljert med henvisning til fig. 7. Etter at hele lånepakken er bestemt, fortsetter fremgangsmåten 215 til trinn 220 (figur 2). Fig. 4 er et flytskjema som viser en fremgangsmåte 310 for å pakke en befolkning av lån inn i en senior-underliggende bindingsstruktur i samsvar med en eksempelvis utførelsesform av foreliggende oppfinnelse. Som kort beskrevet ovenfor med henvisning til fig. 1. En pensjonsstruktur for seniorer er en struktur der det opprettes obligasjoner med ulike kredittvurderinger. Vanligvis omfatter pensjonsstrukturen for seniorer en senior tranche av obligasjoner som har en AAA eller tilsvarende kredittvurdering og en underordnet transje obligasjoner med lavere kredittvurdering. Den senior tranchen er beskyttet mot et visst nivå av tap av underordnet transje da underordnet transaksjon medfører de første tapene som kan oppstå. Senior trance kan selges til investorer som ønsker en mer konservativ investering med lavere avkastning, mens den ansvarlige transaksjonen kan selges til investorer som er villige til å ta på seg større risiko for høyere avkastning. I forbindelse med denne søknaden refererer en AAA-obligasjon til et obligasjonslån i senior tranchen, men ikke nødvendigvis et obligasjonslån med kredittvurdering av AAA. Additionally, interest only (IO) and principal only (PO) bonds may be created in a seniorsubordinate 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 seniorsubordinate module 121 determines the bond coupons that are available for executing the loans into. The seniorsubordinate 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 seniorsubordinate 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 seniorsubordinate 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 seniorsubordinate 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 seniorsubordinate 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 seniorsubordinate 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 seniorsubordinate 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 seniorsubordinate 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 seniorsubordinate 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 seniorsubordinate 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 IOPO 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. JumboConforming), maturity (e. g. 1530 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 seniorsubordinate 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 seniorsubordinate module 121 employs the method 310 of FIG. 4 to find the optimal execution price for each loan. At step 510 . the seniorsubordinate 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 seniorsubordinate module 121 determines the weights (i. e. q 0 8722q 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 seniorsubordinate 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 seniorsubordinate 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 seniorsubordinate 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 seniorsubordinate 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 seniorsubordinate 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 seniorsubordinate bond structure is the creation of IO andor PO bonds, which may not trade as rich as AAA bonds. In some exemplary embodiments, the seniorsubordinate 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 seniorsubordinate 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 seniorsubordinate 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 seniorsubordinate 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 seniorsubordinate 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 seniorsubordinate 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 seniorsubordinate 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 1100 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 1100 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 1100 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 costmarket 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 U8806K, where K is given by the user. In order to impose this constraint conditionally, this constraint is transformed to the following two constraints: U8806K w U8806M 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: U8806K (required) U8806M (redundant) w0: U88060 U88060 The only way for U88060 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 seniorsubordinate 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 andor 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 seniorsubordinate 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 seniorsubordinate 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 seniorsubordinate 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 8722M is negative. Thus, from x ij 88060 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 seniorsubordinate 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. Patent application title: System And Method For Optimizing Fixed Rate Whole Loan Trading Patent application title: System And Method For Optimizing Fixed Rate Whole Loan Trading Inventors: Harsha Nagesh Rajan Godse Agents: KING SPALDINGCREDIT SUISSE SECURITIES (USA) LLC Assignees: Credit Suisse Securities (USA) LLC Origin: ATLANTA, GA US IPC8 Class: AG06Q4000FI USPC Class: 705 36 R Patent application number: 20100057635 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 seniorsubordinate 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. 1. A system for optimizing fixed rate whole loan trading, comprising:a computing system comprising a software application comprising one or more modules operable to:develop a model for determining a securitization strategy for a population of whole loans, the securitization strategy comprising a plurality of bonds andprocess the model until an optimal securitization strategy for the population of whole loans is found anda 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. 2. The system of claim 1, wherein the one or more modules comprise a seniorsubordinate module operable to group the population of loans into a seniorsubordinate bond structure comprising at least one senior tranche of bonds and at least one subordinate tranche of bonds. 3. The system of claim 1, wherein the one or more module comprise a pass-thru module operable to pool a population of loans into one or more pools of pass through bonds. 4. The system of claim 1, further comprising one or more data sources communicably coupled to the computing system, the one or more data sources comprising information for use by the software application. 5. A computer program product comprising:a computer-readable medium having computer-readable program code embodied therein for determining an optimal execution bond coupon for each loan in a plurality of loans in a seniorsubordinate bond structure, the computer-readable medium comprising:computer-readable program code for creating a model comprising an objective function representing a total market value of the seniorsubordinate bond structure for the plurality of loans andcomputer-readable program code for maximizing the objective function to maximize the total market value of the seniorsubordinate bond structure. 6. The computer program product of claim 5, wherein the computer-readable program code for maximizing the objective function comprises computer-readable program code for:determining a market price of each loandetermining a first weighted average execution coupon for the plurality of loans corresponding to the market price of each loandetermining the total market value of the seniorsubordinate structure at the first weighted average execution couponiterating the weighted average execution coupon and determining a total market value for the seniorsubordinate structure at each iteration anddetermining the weighted average execution coupon having the highest total market values for the seniorsubordinate structure. 7. The computer program product of claim 5, further comprising computer-readable program code for developing and maximizing an objective function to optimally split at least one of the loans into two pseudo loans to prevent the creation of an interest only bond or a principal only bond, the two pseudo loans comprising different coupon values. 8. A computer program product comprising:a computer-readable medium having computer-readable program code embodied therein for optimally pooling a plurality of loans into pass through bond pools, the computer-readable medium comprising:computer-readable program code for creating a model corresponding to a plurality of pass through bond pools, each pass through bond pool comprising at least one constraintcomputer-readable program code for applying the at least one constraint of each pass through bond pool to each of the plurality of loans to determine which pass through bond pools each of the plurality of loans is eligible andcomputer-readable program code for processing the model to determine the optimal pooling. 9. The computer program product of claim 8, wherein the model comprises an objective function comprising a linear combination of a market value of each of the plurality of loans. 10. The computer program product of claim 9, wherein processing the model comprises maximizing the objective function. 11. The computer program product of claim 8, further comprising computer-readable program code for transforming the at least one constraint of each pass through bond pool into a conditional constraint. 12. The computer program product of claim 8, further comprising computer-readable program code for 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. 13. The computer program product of claim 18, further comprising computer-readable program code for 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. 14. The computer program product of claim 8, further comprising computer-readable program code for allocating at least one of the plurality of loans to an unallocated pool. 15. The computer program product of claim 8, further comprising computer-readable program code for allocating loans into an unallocated pool if each of the plurality of pass through bond pools can not be allocated with the plurality 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. 16. The computer program product of claim 8, wherein the model accounts for the constraint of each pass through bond pool and a payup associated with each pass through bond pool. 17. A computer program product comprising:a computer-readable medium having computer-readable program code embodied therein for allocating a portion of a plurality of loans to a loan package, the computer-readable medium comprising:computer-readable program code for determining which of the plurality of loans meet one or more constraints of the loan packagecomputer-readable program code for determining a market price of each of the plurality of loans based on a securitization modelcomputer-readable program code for modeling 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 andcomputer-readable program code for allocating the loans that meets the one or more constraints and are least profitable for securitization into the loan package. 18. The computer program product of claim 17, wherein the securitization model comprises a seniorsubordinate model. 19. The computer program product of claim 17, 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. 20. The computer program product of claim 17, 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. 21. A method for optimizing fixed rate whole loan trading, wherein each step is implemented on a computer system, the method comprising the steps of:determining a bond structure to securitize a plurality of whole loansdeveloping a model comprising an objective function that represents a total market value for the plurality of whole loans when executed into bonds corresponding to the bond structureprocessing the model to determine which of a group of available bonds should be generated and into which bonds of the generated bonds that each of the plurality of whole loans best executes into. 22. The method of claim 21, wherein the bond structure comprises a seniorsubordinate bond structure. 23. The method of claim 21, wherein the bond structure comprises an agency secured pass through bond structure. 24. The method of claim 21, further comprising the step of allocating 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. 25. A computer program product comprising:a computer-readable medium having computer-readable program code embodied therein for optimally pooling excess coupon resulting from securitizing a plurality of loans, the computer-readable medium comprising:computer-readable program code for creating 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 andcomputer-readable program code for processing 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. 26. The computer program product of claim 25, 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. 27. The computer program product of claim 25, further comprising computer-readable program code for transforming each of the at least one constraints into a conditional constraint. 28. The computer program product of claim 25, further comprising computer-readable program code for transforming 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. 29. The computer program product of claim 25, further comprising:computer-readable program code for identifying the excess coupon pools for which each of the loans can be allocated based on collateral attributes of the loans andcomputer-readable program code for collapsing each loan identified for an excess coupon pool into a single loan to reduce the number of loans in the model. Description: 0001 This non-provisional patent application claims priority under 35 U. S.C. 119 to U. S. Provisional Patent Application No. 61191,011, entitled, System and Method for Optimizing Fixed Rate Whole Loan Trading, which is hereby fully incorporated herein by reference. 0002 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. 0003 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. 0004 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. 0005 Accordingly, what is needed are systems and methods for optimizing the packaging of a population of loans into bonds for a given bond structure. 0006 The invention provides computerized systems and computer implemented methods for optimizing fixed rate whole loan trading for a population of whole loans. 0007 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. 0008 Another aspect of the present invention provides a computer-program product including a computer-readable medium having computer-readable program code embodied therein for determining an optimal execution bond coupon for each loan in a group of loans in a seniorsubordinate bond structure. This computer-readable medium includes computer-readable program code for creating a model comprising an objective function representing a total market value of the seniorsubordinate bond structure for the loans and computer-readable program code for maximizing the objective function to maximize the total market value of the seniorsubordinate bond structure. 0009 Another aspect of the invention provides a computer program product including a computer-readable medium having computer-readable program code embodied therein for optimally pooling loans into pass through bond pools. This computer-readable medium includes computer-readable program code for creating a model corresponding to pass through bond pools, each pass through bond pool including a constraint computer-readable program code for applying the constraint of each pass through bond pool to each of the loans to determine which pass through bond pools each of the loans is eligible and computer-readable program code for processing the model to determine the optimal pooling. 0010 Another aspect of the invention provides a computer program product including a computer-readable medium having computer-readable program code embodied therein for allocating a portion of a group of loans to a loan package. This computer-readable medium includes computer-readable program code for determining which of the loans meet one or more constraints of the loan package computer-readable program code for determining a market price of each of the loans based on a securitization model computer-readable program code for modeling 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 computer-readable program code for allocating the loans that meets the one or more constraints and are least profitable for securitization into the loan package. 0011 Another aspect of the present invention provides a method for optimizing fixed rate whole loan trading. This method includes the steps of determining a bond structure to securitize whole loans developing a model comprising an objective function that represents a total market value for the whole loans when executed into bonds corresponding to the bond structure processing the model to determine which of a group of available bonds should be generated and into which bonds of the generated bonds that each of the whole loans best executes into. 0012 Another aspect of the present invention provides a computer program product including a computer-readable medium having computer-readable program code embodied therein for optimally pooling excess coupon resulting from securitizing loans. This computer-readable medium includes computer-readable program code for creating a model corresponding to excess coupon bond pools and an unallocated pool, each excess coupon bond pool including at least one constraint and computer-readable program code for processing 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. 0013 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 0014 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. 0015 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. 0016 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. 0017 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. 0018 FIG. 4 is a flow chart depicting a method for packaging a population of loans into a seniorsubordinate structure in accordance with one exemplary embodiment of the present invention. 0019 FIG. 5 is a flow chart depicting a method for packaging a population of loans into a seniorsubordinate structure in accordance with one exemplary embodiment of the present invention. 0020 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. 0021 FIG. 7 is a flow chart depicting a method for packaging whole loans in accordance with one exemplary embodiment of the present invention. 0022 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 0023 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 seniorsubordinate 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. 0024 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. 0025 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. 0026 A seniorsubordinate module 121 distributes loans into a seniorsubordinate 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 seniorsubordinate 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. 0027 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. 0028 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 seniorsubordinate 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. 0029 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 seniorsubordinate bond structure created by the seniorsubordinate module 121 andor 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. 0030 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. 0031 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. 0032 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. 0033 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 andor 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. 0034 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 seniorsubordinate 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. 0035 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. 0036 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. 0037 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. 0038 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. 0039 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 seniorsubordinate 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 seniorsubordinate 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 seniorsubordinate module 121 andor 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 seniorsubordinate 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 seniorsubordinate bond structure should be optimized, the method 215 proceeds to step 310. At step 310, the seniorsubordinate module 121 develops a model for packaging the population of loans into a seniorsubordinate bond structure and processes the model to determine an optimal seniorsubordinate bond structure for the loan population. Step 310 is discussed in more detail with reference to FIGS. 4 and 5. After the seniorsubordinate 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 seniorsubordinate bond structure in accordance with one exemplary embodiment of the present invention. As briefly discussed above with reference to FIG. 1, a seniorsubordinate bond structure is a structure where bonds with different credit ratings are created. Typically, the seniorsubordinate 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 seniorsubordinate 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 seniorsubordinate module 121 determines the bond coupons that are available for executing the loans into. The seniorsubordinate 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 seniorsubordinate 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 seniorsubordinate 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 seniorsubordinate 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 seniorsubordinate 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 seniorsubordinate 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 seniorsubordinate 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 seniorsubordinate 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 seniorsubordinate 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 seniorsubordinate 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 IOPO 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. JumboConforming), maturity (e. g. 1530 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 seniorsubordinate 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 seniorsubordinate module 121 employs the method 310 of FIG. 4 to find the optimal execution price for each loan. 0065 At step 510, the seniorsubordinate 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 seniorsubordinate 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 seniorsubordinate 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 seniorsubordinate 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 seniorsubordinate 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 seniorsubordinate 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 seniorsubordinate 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 seniorsubordinate bond structure is the creation of IO andor PO bonds, which may not trade as rich as AAA bonds. In some exemplary embodiments, the seniorsubordinate 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 seniorsubordinate 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 seniorsubordinate 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 seniorsubordinate 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 seniorsubordinate 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 seniorsubordinate 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 seniorsubordinate 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 1100 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 1100 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 1100 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 costmarket 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 seniorsubordinate 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 andor 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 seniorsubordinate 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 seniorsubordinate 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: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 seniorsubordinate 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. RELATED APPLICATION This non-provisional patent application claims priority under 35 U. S.C. 119 to U. S. Provisional Patent Application No. 61191,011, filed Sep. 3, 2008, entitled, System and Method for Optimizing Fixed Rate Whole Loan Trading, which is hereby fully incorporated herein by reference. What is claimed is: 1. A system for optimizing fixed rate whole loan trading, comprising: a computer comprising a non-transitory storage medium comprising a software application comprising one or more modules operable to: a) receive input from a user b) select a population of loans c) determine, by the computer system, at least one module of the one or more modules that optimizes fixed rate whole loan trading based, at least in part, on the received input d) select the at least one module, wherein the at least one module comprises a seniorsubordinate module e) determine available bond coupon values from a plurality of bond coupons f) select a first bond coupon value from the available bond coupon values g) determine a price of each loan in the population of loans at the first bond coupon value h) repeat steps f) and g) for a plurality of additional bond coupon values i) determine the bond coupon value from the first bond coupon value and the plurality of additional bond coupon values t hat yield the a highest final bond price for each loan and j) group the loans in the population of loans according to the bond coupon values that yield the highest final bond price. 2. The system of claim 1, further comprising one or more data sources communicably coupled to the computing system, the one or more data sources comprising information for use by the software application. 3. The system of claim 1, wherein the received input comprises a constraint associated with a securitization strategy of the population of loans. 4. The system of claim 3, wherein the securitization strategy comprises packaging the population of loans into a tranche of senior bonds and a tranche of subordinate bonds. 5. The system of claim 3, wherein the securitization strategy comprises packaging the population of loans into pass through bonds. 6. The system of claim 1, wherein the population of loans selected in step b) comprises loans owned by the user. 7. The system of claim 1, wherein the population of loans selected in step b) comprises loans that are placed for bidding. 8. The system of claim 1, wherein the population of loans selected in step b) comprises loans that match a criterion selected by the user. 9. The system of claim 1, wherein the population of loans are structured into one or more bonds, and wherein each bond is associated with one or more loans of the population of loans. 10. The system of claim 9, further comprises one or more modules operable to: generate a cash flow of each bond based on a cash flow of the one or more loans associated with the respective bond responsive to generating the cash flow of each bond, determine a present value of the cash flow of each bond set a price associated with each bond based on the type of bond and for each loan, proportionally combine the price associated with each bond based on a size of each bond to determine a final bond price for each loan. 11. The system of claim 10, further comprises one or more modules operable to: distribute the cash flow associated with each loan of the population of loans into senior bonds having a high credit rating, subordinate bonds having a low credit rating, interest only bonds and principal only bonds and generate a principal payment cash flow and an interest cash flow of each loan for a loan period associated with each loan. 12. The system of claim 11: wherein for fixed rate loans, the senior bonds are priced as a spread to the To Be Announced (TBA) bond prices, wherein for fixed rate loans, the subordinate bonds are priced as a spread to the United States Treasury Yield Curve, and wherein for fixed rate loans, the Principal Only bonds and the Interest Only bonds are priced based on Trust Principal Only prices and Trust Interest Only prices. 13. A non-transitory computer readable medium comprising a set of executable instructions that when executed by a processor is configured to optimize fixed rate whole loan trading by performing a method comprising: a) receiving an input b) selecting a population of loans c) determining and selecting at least one module from one or more modules that optimizes fixed rate whole loan trading based, at least in part, on the received input, wherein the at least one module comprises a seniorsubordinate module d) determining available bond coupon values from a plurality of bond coupons e) selecting a first bond coupon value from the available bond coupon values f) determining a price of each loan in the population of loans at the first bond coupon value g) repeating steps e) and f) for a plurality of additional bond coupon values h) determining the bond coupon value from the first bond coupon value and the plurality of additional bond coupon values that yield a highest final bond price for eac h loan and i) grouping the loans in the population of loans according to the bond coupon values that yield the highest final bond price. 14. The non-transitory computer readable medium of claim 13, wherein the received input comprises a constraint associated with a securitization strategy for the population of loans. 15. The non-transitory computer readable medium of claim 14, wherein the securitization strategy comprises packaging the population of loans into a tranche of senior bonds and a tranche of subordinate bonds. 16. The non-transitory computer readable medium of claim 13, wherein the population of loans selected in step b) comprises loans that are placed for bidding. 17. The non-transitory computer readable medium of claim 13, wherein the population of loans selected in step b) comprises loans that match a criterion selected from a plurality of criteria. 18. The non-transitory computer readable medium of claim 13, wherein the population of loans are structured into one or more bonds, and wherein each bond is associated with one or more loans of the population of loans. 19. The non-transitory computer readable medium of claim 18, wherein the method performed by the set of executable instructions when executed by a processor further comprising: generating a cash flow of each bond based on a cash flow of the one or more loans associated with the respective bond responsive to generating the cash flow of each bond, determining a present value of the cash flow of each bond setting a price associated with each bond based on the type of bond and for each loan, proportionally combining the price associated with each bond based on a size of each bond to determine a final bond price for each loan. 20. The non-transitory computer readable medium of claim 18, wherein the method performed by the set of executable instructions when executed by a processor further comprising: distribute the cash flow associated with each loan of the population of loans into senior bonds having a high credit rating, subordinate bonds having a low credit rating, interest only bonds and principal only bonds and generate a principal payment cash flow and an interest cash flow of each loan for a loan period associated with each loan, wherein for fixed rate loans, the senior bonds are priced as a spread to the To Be Announced (TBA) bond prices, wherein for fixed rate loans, the subordinate bonds are priced as a spread to the United States Treasury Yield Curve, and wherein for fixed rate loans, the Principal Only bonds and the Interest Only bonds are priced based on Trust Principal Only prices and Trust Interest Only prices. 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-program product including a computer-readable medium having computer-readable program code embodied therein for determining an optimal execution bond coupon for each loan in a group of loans in a seniorsubordinate bond structure. This computer-readable medium includes computer-readable program code for creating a model comprising an objective function representing a total market value of the seniorsubordinate bond structure for the loans and computer-readable program code for maximizing the objective function to maximize the total market value of the seniorsubordinate bond structure. Another aspect of the invention provides a computer program product including a computer-readable medium having computer-readable program code embodied therein for optimally pooling loans into pass through bond pools. This computer-readable medium includes computer-readable program code for creating a model corresponding to pass through bond pools, each pass through bond pool including a constraint computer-readable program code for applying the constraint of each pass through bond pool to each of the loans to determine which pass through bond pools each of the loans is eligible and computer-readable program code for processing the model to determine the optimal pooling. Another aspect of the invention provides a computer program product including a computer-readable medium having computer-readable program code embodied therein for allocating a portion of a group of loans to a loan package. This computer-readable medium includes computer-readable program code for determining which of the loans meet one or more constraints of the loan package computer-readable program code for determining a market price of each of the loans based on a securitization model computer-readable program code for modeling 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 computer-readable program code for allocating 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 determining a bond structure to securitize whole loans developing a model comprising an objective function that represents a total market value for the whole loans when executed into bonds corresponding to the bond structure processing the model to determine which of a group of available bonds should be generated and into which bonds of the generated bonds that each of the whole loans best executes into. Another aspect of the present invention provides a computer program product including a computer-readable medium having computer-readable program code embodied therein for optimally pooling excess coupon resulting from securitizing loans. This computer-readable medium includes computer-readable program code for creating a model corresponding to excess coupon bond pools and an unallocated pool, each excess coupon bond pool including at least one constraint and computer-readable program code for processing 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 seniorsubordinate 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 seniorsubordinate 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 seniorsubordinate 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 seniorsubordinate module 121 distributes loans into a seniorsubordinate 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 seniorsubordinate 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 seniorsubordinate 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 seniorsubordinate bond structure created by the seniorsubordinate module 121 andor 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 andor 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 seniorsubordinate 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 seniorsubordinate 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 seniorsubordinate 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 seniorsubordinate module 121 andor 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 seniorsubordinate bond structure and an optimal pooling of pass through bonds should be determined for the population of loans. If the user selected that a seniorsubordinate bond structure should be optimized, the method 215 proceeds to step 310 . At step 310 . the seniorsubordinate module 121 develops a model for packaging the population of loans into a seniorsubordinate bond structure and processes the model to determine an optimal seniorsubordinate bond structure for the loan population. Step 310 is discussed in more detail with reference to FIGS. 4 and 5. After the seniorsubordinate 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 seniorsubordinate bond structure in accordance with one exemplary embodiment of the present invention. As briefly discussed above with reference to FIG. 1, a seniorsubordinate bond structure is a structure where bonds with different credit ratings are created. Typically, the seniorsubordinate 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 seniorsubordinate 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 seniorsubordinate module 121 determines the bond coupons that are available for executing the loans into. The seniorsubordinate 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 seniorsubordinate 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 seniorsubordinate 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. 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. At step 420 . the seniorsubordinate 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 seniorsubordinate 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 seniorsubordinate 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 seniorsubordinate 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 seniorsubordinate 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 seniorsubordinate 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 seniorsubordinate 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. 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. 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 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 IOPO 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. JumboConforming), maturity (e. g. 1530 years), etc. The price of the subordinate bond of the i th loan can be written as: q 0 ( x i0 P i (0,0) . x ij P i (0,j) ). q j ( x i0 P i (j,0) . x ij P i (j, j) ) 4 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 seniorsubordinate 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 seniorsubordinate module 121 employs the method 310 of FIG. 4 to find the optimal execution price for each loan. At step 510 . the seniorsubordinate 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 seniorsubordinate 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 seniorsubordinate 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 seniorsubordinate 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 seniorsubordinate 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 seniorsubordinate 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 seniorsubordinate 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 seniorsubordinate bond structure is the creation of IO andor PO bonds, which may not trade as rich as AAA bonds. In some exemplary embodiments, the seniorsubordinate 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 b 1 and b 2 and coupons 6 and 6.5 such that the following conditions are satisfied: b 1 b 2100,000 5 (( b 16.0)( b 26.5))( b 1 b 2)6.125 6 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 b 1 and b 2 . we find that b 1 75,000 and b 2 25,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 seniorsubordinate 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: ( x i0 r 0 . x in r n ) b i c i 7 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 seniorsubordinate 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 seniorsubordinate 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 seniorsubordinate 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 seniorsubordinate 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 seniorsubordinate module 121 creates the following objective function and works to maximize this objective function: Max: P i0 x i0 . P in x in 8 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 1100 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 1100 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 1100 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 costmarket 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 seniorsubordinate 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 andor 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 seniorsubordinate 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 seniorsubordinate 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: ( x 1 b 1 p 1 . x n b n p n )( x 1 b 1 . x n b n )( q 1 px 1 . q m px m ) 9 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. 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. Additionally, other constraints for loan balance and ratio balance can similarly be transformed into linear constraints. In this exemplary embodiment, the ys are real numbers and the ys should be equal to y 0 when that loan is allocated, else the y should equal 0. This requirement can be enforced by adding additional constraints and variables: y i 0 18 y i Kz i 19 y i y 0 Kz i K (1 eps ) 20 y i y 0 Kz i K (1 eps ) 21 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 seniorsubordinate 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: Min:( x 1 b 1 p 1 . x n b n p n )( x 1 b 1 . q m px m ) 22 Let y i q i ( x 1 b 1 . x n b n ) 23 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: x ij Mw ij x ij xp j 31 x ij xp j M (1 w ij ) 32 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 seniorsubordinate 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. Sentry LT Loan Trading System Sentry LT represents the next generation of Syndicated Loan trading platforms and offers both the features and functionality to successfully streamline your loan trading operation. At ClearStructure Financial Technology, we have worked with Syndicated Loans for over ten years. Our Sentry LT system brings this experience and expertise together into a robust web-based bank loan trading platform, which eliminates many challenges loan trading desks face by automating tasks and improving efficiency. Sentry LT is built using the latest technology and is positioned to easily scale as your business grows. Sentry LTs customizable workflows and configurable screens ensure that users see data that is important to them by making this information easily accessible. Sentry LT Featured Functionality Customizable PampL and trade blotter views. Ability to generate reports and export data with a single click. User-defined tradesettlement workflows, which allow users to adapt the system to current processes and compliance procedures. Pre-trade allocation and trade eligibility through rules-based compliance engine for multiple accounts, including counterparty limitations. Calculation of trading fees (such as delayed compensation, break funding, cost of carry, etc.) with drill down into detailed formulas, showing exactly how each fee was calculated. Ability to generate par amp distressed LSTALMA trade documentation (Trade Confirm, Funding Memo, Pricing Letter, PSA, Assignment Agreements, Netting Letters, etc.). Full audit trail and user navigation log tracks every change that occurs within the application. Powerful user permission system, through which the system administrator can create groups, as well as restrict and control access to features and screens by various levels.

Comments

Popular posts from this blog

Forex Trade Indonesia

Is Binære Options Trading Gambling Anonym

Gdb Print Format Binære Alternativer