aboutsummaryrefslogtreecommitdiffstats
path: root/docs/process.rst
blob: 1873e3cc57247036d74f30f65f6fb760ad875f38 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
Preamble
--------

In everything that follows the paths are relative from
our directory ``//WDSENTINEL/share/CorpCDOs`` on Windows and
``/home/share/CorpCDOs`` on Linux.

Load data from intex and populate the database
----------------------------------------------

we need to fill up three tables:

* cusip_universe table
* et_collateral
* cusip_universe

From the spreadsheet, this is driven by the two shortcuts
``CTRL+Shift+Y`` and ``CTRL+Shift+G``.

* First select the cusips of interest, do ``CTRL+Shift+Y`` and paste them
  into a new portfolio tab in intex. On the portfolio tab itself,
  right click, then Export to text, delete all the extraneous lines
  and save into ``data/clo_universe_intex_%Y-%m-%d.txt``
* Then in the Collat Detail tab, make sure Asset Detail is
  toggled. Right click, then Export to text, All bonds and extract the
  resulting zip file into a folder named ``data/Collaterals_%Y-%m-%d``
* Last step, select the cusips again, do ``CTRL+SHIFT+G``, paste into a
  new portfolio tab. Click on All Tranches, Right Click, Export to
  text, and save the file into a folder named ``data/Trinfo_%Y-%m-%d``

We're done exporting the data from intex, now we need to load it into
the database. We need to run 3 scripts. To do so, after connecting to
the remote server, at the prompt do: ::

    cd /home/share/CorpCDOs/code/python
    python clo_universe.py
    python load_intex_collateral.py
    python cusip_universe.py

The script ``load_intex_collateral.py`` might errror out, just type c and
enter to keep it going.

Steps to build the model
------------------------

* We need to have a monitor running that will trigger the scenarios
  generations for us. ::

    cd /home/share/CorpCDOs/scripts
    bash monitor.sh

  **Note** need to set it up as a deamon so that it get automatically
  started at boot.
* After that, scenarios generation can be triggered by selecting the
  cusips in the excel spreadsheet and using the ``CTRL+Shift+H``
  shortcut.
* To disable Reinvestment put "Y" under "DisableReinv" column before
  using ``CTRL+Shift+H``.
* htop to monitor server activities.
* This will trigger three scripts: first it will build the survival
  curves: these are saved into ``Scenarios/Portfolios_%Y_%m_%d``,
  second it will generate the loss and prepay distributions and save
  them into ``Scenarios/Intex curves_%Y-%m%d/csv``, and finally
  generate the sss files that we can load into intex in
  ``Scenarios/Intex curves_%Y-%m%d/sss``.
* You can look at the logs file in ``scripts/logs``
  to monitor the process.


Running the scenarios in Intex
------------------------------

* First make sure that Intex look for the sss files in the right
  directory. Go into Tools, Options, Data Access and change it
  appropriately.
* Select the cusips of interest on the spreadsheet (make sure the
  corresponding sss files exist), do ``CTRL+Shift+I`` and paste them
  into a new portfolio tab in Intex... twice so that Intex actually
  paste the data.
* Then go onto the Scenarios Tab, and click the cross next to Rate
  Update to make sure it reloads the Interest Rates (otherwise intex
  will run it with libor set at 0... not good)
* Then go onto the Cashflows tab and wait... Once it's down, export
  the cashflows into ``Scenarios/Prices_%Y-%m%-%d``.
* Finally, on the server do: ::

    cd /home/share/CorpCDOs/code/R
    Rscript load_cf.R

  This will load the cashflows and compute the deltas, and save it in
  the database.
* Enjoy your work by typing ``CTRL+T`` on the spreadsheet and see how
  all the columns get filled. Yay!