├── jupyter
├── graphs
│ ├── search_mccall_monte_carlo.pdf
│ ├── search_mccall_temporary_job_offer.pdf
│ ├── asset_pricing_mehra_prescott_Rf_ER.pdf
│ ├── asset_pricing_mehra_prescott_Rf_ER_2.pdf
│ ├── search_mccall_mean_preserving_spread.pdf
│ ├── search_mccall_state_dependent_offers.pdf
│ ├── asset_pricing_mehra_prescott_yield_curves.pdf
│ ├── asset_pricing_mehra_prescott_Rf_ER_wider_parameter_range.pdf
│ └── asset_pricing_mehra_prescott_Rf_ER_wider_parameter_range_contour.pdf
├── econutil
│ ├── __init__.py
│ ├── plot.py
│ ├── defs.py
│ └── data.py
├── installation_instructions_binder.ipynb
├── installation_instructions_colab.ipynb
├── data
│ └── F-F_Research_Data_Factors.CSV
└── search_mccall_mean_preserving_spread.ipynb
└── README.md
/jupyter/graphs/search_mccall_monte_carlo.pdf:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/jborovicka/nyu-computational-dynamics/HEAD/jupyter/graphs/search_mccall_monte_carlo.pdf
--------------------------------------------------------------------------------
/jupyter/graphs/search_mccall_temporary_job_offer.pdf:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/jborovicka/nyu-computational-dynamics/HEAD/jupyter/graphs/search_mccall_temporary_job_offer.pdf
--------------------------------------------------------------------------------
/jupyter/graphs/asset_pricing_mehra_prescott_Rf_ER.pdf:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/jborovicka/nyu-computational-dynamics/HEAD/jupyter/graphs/asset_pricing_mehra_prescott_Rf_ER.pdf
--------------------------------------------------------------------------------
/jupyter/graphs/asset_pricing_mehra_prescott_Rf_ER_2.pdf:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/jborovicka/nyu-computational-dynamics/HEAD/jupyter/graphs/asset_pricing_mehra_prescott_Rf_ER_2.pdf
--------------------------------------------------------------------------------
/jupyter/graphs/search_mccall_mean_preserving_spread.pdf:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/jborovicka/nyu-computational-dynamics/HEAD/jupyter/graphs/search_mccall_mean_preserving_spread.pdf
--------------------------------------------------------------------------------
/jupyter/graphs/search_mccall_state_dependent_offers.pdf:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/jborovicka/nyu-computational-dynamics/HEAD/jupyter/graphs/search_mccall_state_dependent_offers.pdf
--------------------------------------------------------------------------------
/jupyter/graphs/asset_pricing_mehra_prescott_yield_curves.pdf:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/jborovicka/nyu-computational-dynamics/HEAD/jupyter/graphs/asset_pricing_mehra_prescott_yield_curves.pdf
--------------------------------------------------------------------------------
/jupyter/graphs/asset_pricing_mehra_prescott_Rf_ER_wider_parameter_range.pdf:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/jborovicka/nyu-computational-dynamics/HEAD/jupyter/graphs/asset_pricing_mehra_prescott_Rf_ER_wider_parameter_range.pdf
--------------------------------------------------------------------------------
/jupyter/graphs/asset_pricing_mehra_prescott_Rf_ER_wider_parameter_range_contour.pdf:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/jborovicka/nyu-computational-dynamics/HEAD/jupyter/graphs/asset_pricing_mehra_prescott_Rf_ER_wider_parameter_range_contour.pdf
--------------------------------------------------------------------------------
/jupyter/econutil/__init__.py:
--------------------------------------------------------------------------------
1 |
2 |
3 | # read version from installed package
4 | import importlib
5 | try:
6 | importlib.import_module('econutil')
7 | # from importlib.metadata import version
8 | __version__ = importlib.metadata.version("econutil")
9 | except ImportError:
10 | __version__ = "n/a - local"
11 |
12 | # import modules from the folder
13 | #from .defs import *
14 | #from .datasources import *
15 | #from .plot import *
16 |
17 | from econutil.defs import *
18 | from econutil.data import *
19 | from econutil.plot import *
20 | # from .defs import *
21 |
22 | print('Root package econutil imported.')
23 |
--------------------------------------------------------------------------------
/README.md:
--------------------------------------------------------------------------------
1 | # Computational Dynamics course, MSQE program, NYU
2 |
3 | This site contains Python notebooks and Matlab codes for the Computational Dynamics course in the Master's Program in Quantitative Economics at NYU.
4 |
5 | Files with Python code in the form of Jupyter notebooks for individual topics are stored in the jupyter folder above. Matlab codes are stored in the matlab folder.
6 |
7 | You can view the Jupyter notebooks with existing output directly in the folder. If you want to edit and run the code, you can download the whole folder by clicking the green Code button above on the right, and then choosing Download ZIP . If you have your own Python installation (for example, Anaconda ), then you can run the code on your machine, or utilize a Python server you have access to.
8 |
9 | You can also use the following publicly available services.
10 |
11 | [](https://mybinder.org/v2/gh/jborovicka/nyu-computational-dynamics/main)
12 |
13 | In order to run the Jupyter notebooks in Binder , click the above icon. When the Binder environment is started, you first have to install required packages that are not preinstalled by default. To do that, run the code in jupyter/installation_instructions_binder.ipynb first. Then you can edit and run the notebooks within the Binder environment.
14 |
15 | [](https://colab.research.google.com/github/jborovicka/nyu-computational-dynamics/)
16 |
17 | In order to run the Jupyter notebooks in Google Colaboratory , click the above icon. When the Google Colab environment is started, follow instructions in jupyter/installation_instructions_colab.ipynb to install required packages and link locally stored functions and data to Google Colab. Then you can edit and run the notebooks within the Google Colab environment.
18 |
--------------------------------------------------------------------------------
/jupyter/installation_instructions_binder.ipynb:
--------------------------------------------------------------------------------
1 | {
2 | "cells": [
3 | {
4 | "cell_type": "markdown",
5 | "id": "f4007c66",
6 | "metadata": {},
7 | "source": [
8 | "# Installation instructions for Binder"
9 | ]
10 | },
11 | {
12 | "cell_type": "markdown",
13 | "id": "0b4614a4",
14 | "metadata": {},
15 | "source": [
16 | "In order to run Jupyter notebooks from this site, you first need to run the following code inside the Binder environment to install required packages that are not preinstalled by default.\n",
17 | "\n",
18 | "To do so, launch Binder for this site (after you click this link, starting the Binder environment takes a while). Once Binder is set up, click on the Python 3 Console icon on the main page. Then copy out the lines below into the console and press Shift+Enter.\n",
19 | "\n",
20 | "Then you can open the Jupyter notebooks from the jupyter/ folder in the left panel in Binder.\n",
21 | "\n",
22 | "Please note that the list of packages is illustrative, and you may need to add more depending on what your notebook is using."
23 | ]
24 | },
25 | {
26 | "cell_type": "code",
27 | "execution_count": null,
28 | "id": "b9afe402",
29 | "metadata": {},
30 | "outputs": [],
31 | "source": [
32 | "# example packages\n",
33 | "%pip install matplotlib\n",
34 | "%pip install pandas\n",
35 | "%pip install pandas_datareader\n",
36 | "%pip install numpy\n",
37 | "%pip install datetime\n",
38 | "%pip install eurostat\n",
39 | "%pip install xlrd --trusted-host pypi.python.org --trusted-host files.pythonhosted.org --trusted-host pypi.org\n",
40 | "%pip install openpyxl"
41 | ]
42 | }
43 | ],
44 | "metadata": {
45 | "kernelspec": {
46 | "display_name": "Python 3 (ipykernel)",
47 | "language": "python",
48 | "name": "python3"
49 | },
50 | "language_info": {
51 | "codemirror_mode": {
52 | "name": "ipython",
53 | "version": 3
54 | },
55 | "file_extension": ".py",
56 | "mimetype": "text/x-python",
57 | "name": "python",
58 | "nbconvert_exporter": "python",
59 | "pygments_lexer": "ipython3",
60 | "version": "3.9.17"
61 | }
62 | },
63 | "nbformat": 4,
64 | "nbformat_minor": 5
65 | }
66 |
--------------------------------------------------------------------------------
/jupyter/econutil/plot.py:
--------------------------------------------------------------------------------
1 | # import necessary libraries
2 | #import pandas as pd
3 | #import pandas_datareader as pdr
4 | #import numpy as np
5 | #from scipy import stats
6 | #from scipy import optimize
7 | import matplotlib.pyplot as plt
8 | from matplotlib.patches import Rectangle
9 | import matplotlib.ticker as ticker
10 | #from io import BytesIO
11 | #import requests
12 | #import datetime
13 |
14 | from econutil.defs import *
15 |
16 | # ==============================================================================
17 | # function definitions
18 |
19 | # ------------------------------------------------------------------------------
20 | # time series plot
21 | def GenerateTSPlot(param = {}):
22 | p = {'figsize' : [15,9], 'fontsize': 16, 'subplots': [1,1],
23 | 'title': '',
24 | 'ylim': [0,0],
25 | 'xlabel': '', 'ylabel': '',
26 | 'ylogscale': False,
27 | 'showgrid': False, 'highlightzero': False,
28 | 'showNBERrecessions' : False, 'showNBERrecessions_y': [0,1]}
29 | # overwrite keys in p using param
30 | for i in param.keys():
31 | p[i] = param[i]
32 |
33 | plt.rcParams['figure.figsize'] = p['figsize'] # Set default figure size
34 | plt.rcParams['font.size'] = p['fontsize'] # Set default font size
35 | fig,ax = plt.subplots(p['subplots'][0],p['subplots'][1],squeeze=False)
36 |
37 | for row in range(p['subplots'][0]):
38 | for col in range(p['subplots'][1]):
39 |
40 | if p['showNBERrecessions']:
41 | for i in range(NBERRecessionDates.shape[0]):
42 | ax[row][col].add_patch(Rectangle((NBERRecessionDates[i,0],p['showNBERrecessions_y'][0]),
43 | NBERRecessionDates[i,1]-NBERRecessionDates[i,0],
44 | p['showNBERrecessions_y'][1]-p['showNBERrecessions_y'][0],
45 | facecolor=tolColor['tolPaleGrey'],zorder=-1))
46 |
47 | if len(p['title']) > 0:
48 | ax[row][col].set_title(p['title'])
49 | if p['xlim'][1] > p['xlim'][0]:
50 | ax[row][col].set_xlim(p['xlim'])
51 | if p['ylim'][1] > p['ylim'][0]:
52 | ax[row][col].set_ylim(p['ylim'])
53 | if len(p['xlabel']) > 0:
54 | ax[row][col].set_xlabel(p['xlabel'])
55 | if len(p['ylabel']) > 0:
56 | ax[row][col].set_ylabel(p['ylabel'])
57 | if p['showgrid']:
58 | ax[row][col].grid(which='both',color = tolColor['tolDarkGrey'], linestyle = ':', linewidth = 0.5)
59 | if p['highlightzero']:
60 | ax[row][col].plot(p['xlim'],[0,0],linewidth=1.5,color='#000000',linestyle=':')
61 | if p['ylogscale']:
62 | ax[row][col].set_yscale('log')
63 | ax[row][col].yaxis.set_major_formatter(ticker.FuncFormatter(lambda y,
64 | pos: ('{{:.{:1d}f}}'.format(int(np.maximum(-np.log10(y),0)))).format(y)))
65 | ax[row][col].yaxis.set_minor_formatter(ticker.FuncFormatter(lambda y,
66 | pos: ('{{:.{:1d}f}}'.format(int(np.maximum(-np.log10(y),0)))).format(y)))
67 |
68 | if p['subplots'] == [1,1]:
69 | ax = ax[0][0];
70 |
71 | return fig,ax;
72 |
73 | # ------------------------------------------------------------------------------
74 | # bar plot
75 | def GenerateBarPlot(param = {}):
76 | p = {'figsize' : [15,9], 'fontsize': 16,
77 | 'title': '',
78 | 'xlim': [0,0], 'ylim': [0,0],
79 | 'xlabel': '', 'ylabel': '',
80 | 'ylogscale': False,
81 | 'showgrid': False, 'highlightzero': False,
82 | 'showNBERrecessions' : False, 'showNBERrecessions_y': [0,1]}
83 | # overwrite keys in p using param
84 | for i in param.keys():
85 | p[i] = param[i]
86 |
87 | plt.rcParams['figure.figsize'] = p['figsize'] # Set default figure size
88 | plt.rcParams['font.size'] = p['fontsize'] # Set default font size
89 | fig,ax = plt.subplots()
90 |
91 | if p['showNBERrecessions']:
92 | for i in range(myNBERRecessionDates.shape[0]):
93 | ax.add_patch(Rectangle((myNBERRecessionDates[i,0],p['showNBERrecessions_y'][0]),
94 | myNBERRecessionDates[i,1]-myNBERRecessionDates[i,0],
95 | p['showNBERrecessions_y'][1]-p['showNBERrecessions_y'][0],
96 | facecolor=tolColor['tolPaleGrey'],zorder=-1))
97 |
98 | if len(p['title']) > 0:
99 | ax.set_title(p['title'])
100 | if p['xlim'][1] > p['xlim'][0]:
101 | ax.set_xlim(p['xlim'])
102 | if p['ylim'][1] > p['ylim'][0]:
103 | ax.set_ylim(p['ylim'])
104 | if len(p['xlabel']) > 0:
105 | ax.set_xlabel(p['xlabel'])
106 | if len(p['ylabel']) > 0:
107 | ax.set_ylabel(p['ylabel'])
108 | if p['showgrid']:
109 | ax.grid(which='both',color = tolColor['tolDarkGrey'], linestyle = ':', linewidth = 0.5)
110 | if p['highlightzero']:
111 | ax.plot(p['xlim'],[0,0],linewidth=1.5,color='#000000',linestyle=':')
112 | if p['ylogscale']:
113 | ax.set_yscale('log')
114 | ax.yaxis.set_major_formatter(ticker.FuncFormatter(lambda y,
115 | pos: ('{{:.{:1d}f}}'.format(int(np.maximum(-np.log10(y),0)))).format(y)))
116 | ax.yaxis.set_minor_formatter(ticker.FuncFormatter(lambda y,
117 | pos: ('{{:.{:1d}f}}'.format(int(np.maximum(-np.log10(y),0)))).format(y)))
118 |
119 | return fig,ax;
120 |
--------------------------------------------------------------------------------
/jupyter/installation_instructions_colab.ipynb:
--------------------------------------------------------------------------------
1 | {
2 | "cells": [
3 | {
4 | "cell_type": "markdown",
5 | "id": "110ebf80",
6 | "metadata": {},
7 | "source": [
8 | "# Installation instructions for Google Colab"
9 | ]
10 | },
11 | {
12 | "cell_type": "markdown",
13 | "id": "70fff25b",
14 | "metadata": {},
15 | "source": [
16 | "In order to be able to run the Jupyter notebooks in Google Colab, you need to do two things — install packages that are not preinstalled in Google Colab, and make locally stored data and functions accessible from the Google Colab environment."
17 | ]
18 | },
19 | {
20 | "cell_type": "markdown",
21 | "id": "966b5dd2",
22 | "metadata": {},
23 | "source": [
24 | "## Install missing packages\n",
25 | "\n",
26 | "Use the following lines of code to install packages that are missing by default, for example by including them at the beginning of the Jupyter notebook you intend to run."
27 | ]
28 | },
29 | {
30 | "cell_type": "code",
31 | "execution_count": null,
32 | "id": "b1c43997",
33 | "metadata": {},
34 | "outputs": [],
35 | "source": [
36 | "# example packages\n",
37 | "%pip install matplotlib\n",
38 | "%pip install pandas\n",
39 | "%pip install pandas_datareader\n",
40 | "%pip install eurostat"
41 | ]
42 | },
43 | {
44 | "cell_type": "markdown",
45 | "id": "418b599e",
46 | "metadata": {},
47 | "source": [
48 | "## Provide functions and data via Google Drive (preferred option)"
49 | ]
50 | },
51 | {
52 | "cell_type": "markdown",
53 | "id": "7edaf38c",
54 | "metadata": {},
55 | "source": [
56 | "Jupyter notebooks on this site use predefined functions stored in the econutil subfolder, data stored in the data subfolder, and graphs exported into the graphs/ subfolder. The goal is to upload these folders from the GitHub repository to Google Drive, and then link Google Drive with Google Colab.\n",
57 | "\n",
58 | "
\n",
59 | " Download the GitHub repository from https://github.com/jborovicka/nyu-computational-dynamics into a ZIP file by clicking on the green Code button top right and choosing Download ZIP . \n",
60 | " Unzip the ZIP file to your computer. Within the unzipped files, locate the jupyter folder, and then subfolders econutil , data , and graphs . \n",
61 | " Open your Google Drive and upload the folders econutil , data , and graphs into the main Google Drive folder. \n",
62 | " In Google Colab, run the lines below, for example by including them at the top of the Jupyter notebook that you are interested in running. This will mount the Google Drive folder into the Google Colab environment, and make it accessible from the Jupyter notebook. You will need to give Google Colab permissions to access the Google Drive. Notice that this will mount your complete Google Drive, and make it visible within Google Colab. \n",
63 | " "
64 | ]
65 | },
66 | {
67 | "cell_type": "code",
68 | "execution_count": null,
69 | "id": "1b9ed99a",
70 | "metadata": {},
71 | "outputs": [],
72 | "source": [
73 | "# code to mount google drive\n",
74 | "from google.colab import drive\n",
75 | "drive.mount('/content/gdrive/')\n",
76 | "import sys\n",
77 | "sys.path.append('/content/gdrive/MyDrive')"
78 | ]
79 | },
80 | {
81 | "cell_type": "markdown",
82 | "id": "5678d2b7",
83 | "metadata": {},
84 | "source": [
85 | "Within the Google Colab environment with the opened Jupyter notebook, you can verify that this was installed successfully by clicking on the folder icon in the column on the left. You should see the folder gdrive with subfolder MyDrive and further three subfolders econutil , data , and graphs (as well as other content from your Google Drive).\n",
86 | "\n",
87 | "Since the graphs subfolder for graph storage is on path gdrive/MyDrive/graphs/ , you will need to use this path if you want your code to save graphs (or other output) to your Google Drive, for example when using the function fig.savefig ."
88 | ]
89 | },
90 | {
91 | "cell_type": "markdown",
92 | "id": "5541b01a",
93 | "metadata": {},
94 | "source": [
95 | "## Provide functions and data via direct upload (not recommended)"
96 | ]
97 | },
98 | {
99 | "cell_type": "markdown",
100 | "id": "a8553ffd",
101 | "metadata": {},
102 | "source": [
103 | "The following steps copy the required folders econutil , data , and graphs manually into the Google Colab environment. You will need to repeat these steps every time you start a new session.\n",
104 | "\n",
105 | "\n",
106 | " Download the GitHub repository from https://github.com/jborovicka/nyu-computational-dynamics into a ZIP file by clicking on the green Code button top right and choosing Download ZIP . \n",
107 | " Unzip the ZIP file to your computer. Within the unzipped files, locate the jupyter folder, and then subfolders econutil , data , and graphs . \n",
108 | " In Google Colab, click on the folder icon on the left. In the folder pane that opened, create folders econutil , data , and graphs , and copy the content of the locally stored folders into the corresponding folders in Google Colab. \n",
109 | " "
110 | ]
111 | },
112 | {
113 | "cell_type": "markdown",
114 | "id": "40ff32af",
115 | "metadata": {},
116 | "source": []
117 | }
118 | ],
119 | "metadata": {
120 | "kernelspec": {
121 | "display_name": "Python 3 (ipykernel)",
122 | "language": "python",
123 | "name": "python3"
124 | },
125 | "language_info": {
126 | "codemirror_mode": {
127 | "name": "ipython",
128 | "version": 3
129 | },
130 | "file_extension": ".py",
131 | "mimetype": "text/x-python",
132 | "name": "python",
133 | "nbconvert_exporter": "python",
134 | "pygments_lexer": "ipython3",
135 | "version": "3.9.17"
136 | }
137 | },
138 | "nbformat": 4,
139 | "nbformat_minor": 5
140 | }
141 |
--------------------------------------------------------------------------------
/jupyter/econutil/defs.py:
--------------------------------------------------------------------------------
1 | # import necessary libraries
2 | import numpy as np
3 |
4 | # ==============================================================================
5 | # recession dates and plotting recessions
6 | NBERRecessionDates = np.array([
7 | [1857.46,1858.96],
8 | [1860.79,1861.46],
9 | [1865.29,1867.96],
10 | [1869.46,1870.96],
11 | [1873.79,1879.21],
12 | [1882.21,1885.38],
13 | [1887.21,1888.29],
14 | [1890.54,1891.38],
15 | [1893.04,1894.46],
16 | [1895.96,1897.46],
17 | [1899.46,1900.96],
18 | [1902.71,1904.63],
19 | [1907.38,1908.46],
20 | [1910.04,1912.04],
21 | [1913.04,1914.96],
22 | [1918.63,1919.21],
23 | [1920.04,1921.54],
24 | [1923.38,1924.54],
25 | [1926.79,1927.88],
26 | [1929.63,1933.21],
27 | [1937.38,1938.46],
28 | [1945.13,1945.79],
29 | [1948.88,1949.79],
30 | [1953.54,1954.38],
31 | [1957.63,1958.29],
32 | [1960.29,1961.13],
33 | [1969.96,1970.88],
34 | [1973.88,1975.21],
35 | [1980.04,1980.54],
36 | [1981.54,1982.88],
37 | [1990.54,1991.21],
38 | [2001.21,2001.88],
39 | [2007.96,2009.46],
40 | [2020.13,2020.29]])
41 |
42 | myNBERRecessionQuarters = np.array([
43 | [18573,18584],
44 | [18604,18613],
45 | [18652,18681],
46 | [18693,18704],
47 | [18734,18791],
48 | [18822,18852],
49 | [18873,18881],
50 | [18904,18912],
51 | [18932,18942],
52 | [18961,18972],
53 | [18994,19004],
54 | [19031,19043],
55 | [19073,19082],
56 | [19102,19114],
57 | [19132,19144],
58 | [19184,19191],
59 | [19202,19213],
60 | [19233,19243],
61 | [19264,19274],
62 | [19294,19331],
63 | [19373,19382],
64 | [19452,19454],
65 | [19491,19494],
66 | [19533,19542],
67 | [19574,19582],
68 | [19603,19611],
69 | [19701,19704],
70 | [19741,19751],
71 | [19802,19803],
72 | [19814,19824],
73 | [19904,19911],
74 | [20012,20014],
75 | [20081,20092],
76 | [20201,20202]])
77 |
78 | myNBERRecessionMonths = np.array([
79 | [185707,185812],
80 | [186011,186106],
81 | [186505,186712],
82 | [186907,187012],
83 | [187311,187903],
84 | [188204,188505],
85 | [188704,188804],
86 | [189008,189105],
87 | [189302,189406],
88 | [189601,189706],
89 | [189907,190012],
90 | [190210,190408],
91 | [190706,190806],
92 | [191002,191201],
93 | [191302,191412],
94 | [191809,191903],
95 | [192002,192107],
96 | [192306,192407],
97 | [192611,192711],
98 | [192909,193303],
99 | [193706,193806],
100 | [194503,194510],
101 | [194812,194910],
102 | [195308,195405],
103 | [195709,195804],
104 | [196005,196102],
105 | [197001,197011],
106 | [197312,197503],
107 | [198002,198007],
108 | [198108,198211],
109 | [199008,199103],
110 | [200104,200111],
111 | [200801,200906],
112 | [202003,202004]])
113 |
114 | # create recession dummies using myNBERRecessionMonths and myNBERRecessionQuarters
115 | # for quarters, use interval = [YYYYQ begin, YYYYQ end]
116 | # for months, use interval = [YYYYMM begin, YYYYMM end]
117 | def CreateRecessionDummies(interval):
118 |
119 | if interval[0]>99999:
120 | # months
121 | divisor,periods = 100,12
122 | recessions = np.append(myNBERRecessionMonths,[[999999,999999]],axis=0)
123 | else:
124 | # quarters
125 | divisor,periods = 10,4
126 | recessions = np.append(myNBERRecessionQuarters,[[999999,999999]],axis=0)
127 |
128 | T = periods*(interval[1]//divisor - interval[0]//divisor) + interval[1]%divisor - interval[0]%divisor + 1
129 | period_ids = np.zeros(T,dtype=np.int32)
130 | dummies = np.zeros(T,dtype=np.int32)
131 | indices = np.where(recessions[:,1] >= interval[0])
132 | ind = indices[0][0]
133 | y,q = interval[0]//divisor, interval[0]%divisor
134 | t = 0
135 | while t < T:
136 | period_ids[t] = y*divisor+q
137 | if recessions[ind,0] <= y*divisor+q:
138 | dummies[t] = 1
139 | q += 1
140 | if q==periods+1:
141 | q = 1
142 | y += 1
143 | if recessions[ind,1] < y*divisor+q:
144 | ind += 1
145 | t += 1
146 |
147 | return period_ids, dummies
148 |
149 | # ==============================================================================
150 | # color definitions as in Paul Tol's set
151 | # https://personal.sron.nl/~pault/
152 |
153 | tolColor = dict(
154 | # Bright scheme
155 | tolBrightBlue = '#4477AA',
156 | tolBrightCyan = '#66CCEE',
157 | tolBrightGreen = '#228833',
158 | tolBrightYellow = '#CCBB44',
159 | tolBrightRed = '#EE6677',
160 | tolBrightPurple = '#AA3377',
161 | tolBrightGrey = '#BBBBBB',
162 |
163 | # High-contrast scheme
164 | tolHighContrastWhite = '#FFFFFF',
165 | tolHighContrastYellow = '#DDAA33',
166 | tolHighContrastRed = '#BB5566',
167 | tolHighContrastBlue = '#004488',
168 | tolHighContrastBlack = '#000000',
169 |
170 | # Vibrant scheme
171 | tolVibrantOrange = '#EE7733',
172 | tolVibrantBlue = '#0077BB',
173 | tolVibrantCyan = '#33BBEE',
174 | tolVibrantMagenta = '#EE3377',
175 | tolVibrantRed = '#CC3311',
176 | tolVibrantTeal = '#009988',
177 | tolVibrantGrey = '#BBBBBB',
178 |
179 | # Muted scheme
180 | tolMutedRose = '#CC6677',
181 | tolMutedIndigo = '#332288',
182 | tolMutedSand = '#DDCC77',
183 | tolMutedGreen = '#117733',
184 | tolMutedCyan = '#88CCEE',
185 | tolMutedWine = '#882255',
186 | tolMutedTeal = '#44AA99',
187 | tolMutedOlive = '#999933',
188 | tolMutedPurple = '#AA4499',
189 | tolMutedPaleGrey = '#DDDDDD',
190 |
191 | # Pale and Dark Schemes
192 | tolPaleBlue = '#BBCCEE',
193 | tolPaleCyan = '#CCEEFF',
194 | tolPaleGreen = '#CCDDAA',
195 | tolPaleYellow = '#EEEEBB',
196 | tolPaleRed = '#FFCCCC',
197 | tolPaleGrey = '#DDDDDD',
198 | tolDarkBlue = '#222255',
199 | tolDarkCyan = '#225555',
200 | tolDarkGreen = '#225522',
201 | tolDarkYellow = '#666633',
202 | tolDarkRed = '#663333',
203 | tolDarkGrey = '#555555',
204 |
205 | # Light scheme
206 | tolLightBlue = '#77AADD',
207 | tolLightCyan = '#99DDFF',
208 | tolLightMint = '#44BB99',
209 | tolLightPear = '#BBCC33',
210 | tolLightOlive = '#AAAA00',
211 | tolLightYellow = '#EEDD88',
212 | tolLightOrange = '#EE8866',
213 | tolLightPink = '#FFAABB',
214 | tolLightGrey = '#DDDDDD',
215 |
216 | # Medium Contrast scheme
217 | tolMediumContrastWhite = '#FFFFFF',
218 | tolMediumContrastLightYellow = '#EECC66',
219 | tolMediumContrastLightRed = '#EE99AA',
220 | tolMediumContrastLightBlue = '#6699CC',
221 | tolMediumContrastDarkYellow = '#997700',
222 | tolMediumContrastDarkRed = '#994455',
223 | tolMediumContrastDarkBlue = '#004488',
224 | tolMediumContrastBlack = '#000000'
225 | )
226 |
227 | # ==============================================================================
228 | # color lists
229 | clist_vibrant = [tolColor['tolVibrantBlue'],
230 | tolColor['tolVibrantOrange'],
231 | tolColor['tolVibrantCyan'],
232 | tolColor['tolVibrantMagenta'],
233 | tolColor['tolVibrantTeal'],
234 | tolColor['tolVibrantRed'],
235 | tolColor['tolVibrantGrey'],
236 | tolColor['tolBrightYellow']]
--------------------------------------------------------------------------------
/jupyter/econutil/data.py:
--------------------------------------------------------------------------------
1 | # make sure the following libraries are installed
2 | # !pip install --upgrade pandas-datareader
3 | # !pip install --upgrade yfinance
4 |
5 | # import necessary libraries
6 | import pandas as pd
7 | import pandas_datareader as pdr
8 | import numpy as np
9 | #from scipy import stats
10 | #from scipy import optimize
11 | #import matplotlib.pyplot as plt
12 | #from matplotlib.patches import Rectangle
13 | #import matplotlib.ticker as ticker
14 | #from io import BytesIO
15 | #import requests
16 | import datetime
17 |
18 | # ==============================================================================
19 | # function definitions
20 |
21 | # ------------------------------------------------------------------------------
22 | # calculation date as a fraction of the year, from a datetime vector
23 | def year_frac(ts):
24 | yf = np.empty(ts.size)
25 | for i in range(ts.size):
26 | days = 365 + ts[i].is_leap_year*1
27 | yf[i] = ts[i].year + ts[i].dayofyear/days + ts[i].hour/24/days + ts[i].minute/60/24/days + ts[i].second/60/60/24/days
28 | return yf
29 |
30 | # ------------------------------------------------------------------------------
31 | # load data from FRED database
32 | def LoadDataFRED(series,transform='none',start = datetime.datetime(1800,1,1),end = datetime.datetime(2050,1,1)):
33 | # work out start and end
34 | data = pdr.data.DataReader(series,'fred',start,end)
35 | d = dict()
36 | d['orig'] = data
37 | d['transform'] = transform
38 | d['year'] = year_frac(ts=data.index)
39 | d['freq'] = int(round(1/(d['year'][1]-d['year'][0]),0))
40 | T = len(d['year'])
41 | for i in series:
42 | d[i] = data[i].to_numpy()
43 | if transform=='pct_change_year_ago':
44 | d[i][d['freq']:T] = (d[i][d['freq']:T] - d[i][0:T-d['freq']]) / d[i][0:T-d['freq']] * 100
45 | d[i][0:d['freq']] = float('nan')
46 |
47 | return d
48 |
49 | # ------------------------------------------------------------------------------
50 | # a slight modification of the OECDReader that allows the specification of
51 | # dataset/series, instead of just a complete dataset
52 | # example: NAAG/.B9S13S for URL https://stats.oecd.org/SDMX-JSON/data/NAAG/.B9S13S/all
53 | # SNA_TABLE1/.B1_GA. for URL https://stats.oecd.org/SDMX-JSON/data/SNA_TABLE1/.B1_GA./all
54 |
55 | from pandas_datareader.base import _BaseReader
56 | from pandas_datareader.compat import string_types
57 | from pandas_datareader.io import read_jsdmx
58 |
59 | class OECDReaderSeries(_BaseReader):
60 | """Get data for the given name from OECD."""
61 |
62 | _format = "json"
63 |
64 | @property
65 | def url(self):
66 | """API URL"""
67 | url = "https://stats.oecd.org/SDMX-JSON/data"
68 |
69 | if not isinstance(self.symbols, string_types):
70 | raise ValueError("data name must be string")
71 |
72 | # API: https://data.oecd.org/api/sdmx-json-documentation/
73 | return "{0}/{1}/all?".format(url, self.symbols)
74 |
75 | def _read_lines(self, out):
76 | """read one data from specified URL"""
77 | df = read_jsdmx(out)
78 | try:
79 | idx_name = df.index.name # hack for pandas 0.16.2
80 | df.index = pd.to_datetime(df.index, errors="ignore")
81 | for col in df:
82 | df[col] = pd.to_numeric(df[col], errors="ignore")
83 | df = df.sort_index()
84 | df = df.truncate(self.start, self.end)
85 | df.index.name = idx_name
86 | except ValueError:
87 | pass
88 | return df
89 |
90 | # ------------------------------------------------------------------------------
91 | # a slight modification of the OECDReader that allows the specification of
92 | # dataset/series, instead of just a complete dataset
93 | # download via CSV
94 | # example: NAAG/.B9S13S for URL https://stats.oecd.org/SDMX-JSON/data/NAAG/.B9S13S/all
95 | # SNA_TABLE1/.B1_GA. for URL https://stats.oecd.org/SDMX-JSON/data/SNA_TABLE1/.B1_GA./all
96 | # SSL bug solved with the help of Humphrey Yang
97 |
98 | import ssl
99 | import urllib.request
100 |
101 | def OECDReaderSeriesCSV(sdmx_query):
102 | url = f"https://stats.oecd.org/sdmx-json/data/{sdmx_query}&contentType=csv"
103 | ctx = ssl.create_default_context(ssl.Purpose.SERVER_AUTH)
104 | ctx.options |= 0x4
105 |
106 | response = urllib.request.urlopen(url, context=ctx)
107 |
108 | return pd.read_csv(response)
109 |
110 | # ------------------------------------------------------------------------------
111 | # an updated version of the OECDReader, up to date 2024
112 | # download via CSV
113 | # API definition: https://gitlab.algobank.oecd.org/public-documentation/dotstat-migration/-/raw/main/OECD_Data_API_documentation.pdf
114 | # SDMX API version 1
115 | # https://sdmx.oecd.org/public/rest/data/,,/[?]
116 | # SDMX API version 2
117 | # https://sdmx.oecd.org/public/rest/v2/data/dataflow////[?]
118 |
119 | # inputs (for details, see API definition):
120 | # agency = The identifier of the agency owning the dataflow to be queried., e.g., 'OECD.SDD.NAD'
121 | # dataflow = The identifier of the dataflow to be queried., e.g., 'DSD_NAAG_VI@DF_NAAG_EXP'
122 | # version = The version of the dataflow to be queried., e.g., '1.0'
123 | # filter = The filter expression to be applied to the dataflow., e.g., 'A..B9S13..PT_B1GQ.'
124 | # obtainable by finding the particular table of interest at https://data-explorer.oecd.org/ and then clicking on the 'Developer API' button
125 | # startPeriod = The start period of the data to be queried., e.g., '2000' (data from the beginning if empty)
126 | # endPeriod = The end period of the data to be queried., e.g., '2023' (data to latest if empty)
127 | # dimensionAtObservation = The dimension at which the observation is made., e.g., 'TIME_PERIOD' / 'AllDimensions'
128 | # format = The format of the data to be returned., e.g., 'csvfile' / 'csvfilewithlabels' (the latter includes the dimension verbose labels, not just identifiers)
129 |
130 | def OECDReaderSeriesCSV2(dataflow,filter,agency='OECD.SDD.NAD',version='1.0',startPeriod='',endPeriod='',dimensionAtObservation='AllDimensions',format='csvfile'):
131 | if startPeriod == '':
132 | startPeriodtext = ""
133 | else:
134 | startPeriodtext = f"&startPeriod={startPeriod}"
135 | if endPeriod == '':
136 | endPeriodtext = ""
137 | else:
138 | endPeriodtext = f"&endPeriod={endPeriod}"
139 |
140 | url = f"https://sdmx.oecd.org/public/rest/data/{agency},{dataflow},{version}/{filter}?dimensionAtObservation={dimensionAtObservation}{startPeriodtext}{endPeriodtext}&format={format}"
141 | ctx = ssl.create_default_context(ssl.Purpose.SERVER_AUTH)
142 | ctx.options |= 0x4
143 |
144 | response = urllib.request.urlopen(url, context=ctx)
145 |
146 | return pd.read_csv(response)
147 |
--------------------------------------------------------------------------------
/jupyter/data/F-F_Research_Data_Factors.CSV:
--------------------------------------------------------------------------------
1 | This file was created by CMPT_ME_BEME_RETS using the 202411 CRSP database.
2 | The 1-month TBill rate data until 202405 are from Ibbotson Associates. Starting from 202406, the 1-month TBill rate is from ICE BofA US 1-Month Treasury Bill Index.
3 |
4 | ,Mkt-RF,SMB,HML,RF
5 | 192607, 2.96, -2.56, -2.43, 0.22
6 | 192608, 2.64, -1.17, 3.82, 0.25
7 | 192609, 0.36, -1.40, 0.13, 0.23
8 | 192610, -3.24, -0.09, 0.70, 0.32
9 | 192611, 2.53, -0.10, -0.51, 0.31
10 | 192612, 2.62, -0.03, -0.05, 0.28
11 | 192701, -0.06, -0.37, 4.54, 0.25
12 | 192702, 4.18, 0.04, 2.94, 0.26
13 | 192703, 0.13, -1.65, -2.61, 0.30
14 | 192704, 0.46, 0.30, 0.81, 0.25
15 | 192705, 5.44, 1.53, 4.73, 0.30
16 | 192706, -2.34, 0.59, -1.73, 0.26
17 | 192707, 7.26, -3.25, -1.14, 0.30
18 | 192708, 1.97, -0.69, -3.74, 0.28
19 | 192709, 4.76, -3.63, -0.63, 0.21
20 | 192710, -4.31, 2.12, -4.33, 0.25
21 | 192711, 6.58, 2.72, -0.27, 0.21
22 | 192712, 2.09, 0.97, -1.13, 0.22
23 | 192801, -0.68, 4.26, -0.75, 0.25
24 | 192802, -1.70, -2.06, -0.65, 0.33
25 | 192803, 8.81, -0.26, -1.22, 0.29
26 | 192804, 4.23, 3.98, 3.44, 0.22
27 | 192805, 1.52, 2.85, -3.27, 0.32
28 | 192806, -4.85, -3.52, -0.03, 0.31
29 | 192807, 0.62, -1.32, -0.50, 0.32
30 | 192808, 6.68, -2.06, -2.15, 0.32
31 | 192809, 2.88, 2.41, 0.86, 0.27
32 | 192810, 1.33, 2.22, -2.16, 0.41
33 | 192811, 11.81, -1.78, 2.70, 0.38
34 | 192812, 0.36, -0.86, -0.65, 0.06
35 | 192901, 4.66, -3.56, -1.24, 0.34
36 | 192902, -0.34, -0.38, 1.66, 0.36
37 | 192903, -0.89, -4.71, 1.58, 0.34
38 | 192904, 1.43, -0.97, 0.59, 0.36
39 | 192905, -6.39, -5.37, -1.42, 0.44
40 | 192906, 9.70, -2.17, -2.79, 0.52
41 | 192907, 4.46, -3.88, 2.71, 0.33
42 | 192908, 8.18, -9.59, 0.13, 0.40
43 | 192909, -5.47, 1.19, -0.65, 0.35
44 | 192910, -20.12, -4.01, 7.78, 0.46
45 | 192911, -12.74, -1.72, 5.05, 0.37
46 | 192912, 1.33, -4.50, -0.54, 0.37
47 | 193001, 5.61, 3.55, -0.96, 0.14
48 | 193002, 2.50, 0.19, 0.20, 0.30
49 | 193003, 7.10, 3.41, 0.33, 0.35
50 | 193004, -2.06, -0.35, -0.35, 0.21
51 | 193005, -1.66, -2.01, -0.73, 0.26
52 | 193006, -16.27, -3.38, 2.33, 0.27
53 | 193007, 4.12, -0.28, -1.75, 0.20
54 | 193008, 0.30, -2.10, -0.61, 0.09
55 | 193009, -12.75, -2.21, -4.96, 0.22
56 | 193010, -8.78, -0.12, -1.38, 0.09
57 | 193011, -3.04, 2.23, -3.66, 0.13
58 | 193012, -7.83, -4.60, -5.25, 0.14
59 | 193101, 6.24, 3.45, 7.12, 0.15
60 | 193102, 10.88, 3.59, 1.92, 0.04
61 | 193103, -6.43, 2.98, -3.44, 0.13
62 | 193104, -9.98, -4.45, -3.82, 0.08
63 | 193105, -13.24, 5.35, -6.57, 0.09
64 | 193106, 13.90, -5.32, 11.29, 0.08
65 | 193107, -6.62, 1.42, -2.11, 0.06
66 | 193108, 0.41, -1.95, -1.47, 0.03
67 | 193109, -29.13, 0.54, -6.77, 0.03
68 | 193110, 8.04, -1.87, 1.70, 0.10
69 | 193111, -9.08, 4.31, -5.04, 0.17
70 | 193112, -13.53, -0.55, -8.85, 0.12
71 | 193201, -1.58, 3.93, 9.03, 0.23
72 | 193202, 5.46, -2.78, -1.46, 0.23
73 | 193203, -11.21, 2.27, -2.32, 0.16
74 | 193204, -17.96, 1.45, 1.43, 0.11
75 | 193205, -20.51, 3.91, -2.98, 0.06
76 | 193206, -0.70, 0.33, 5.30, 0.02
77 | 193207, 33.84, -4.59, 35.61, 0.03
78 | 193208, 37.06, 13.41, 34.24, 0.03
79 | 193209, -2.94, -2.08, -7.36, 0.03
80 | 193210, -13.17, -2.56, -10.33, 0.02
81 | 193211, -5.88, 2.00, -13.11, 0.02
82 | 193212, 4.40, -8.64, -7.72, 0.01
83 | 193301, 1.25, 0.63, 6.36, 0.01
84 | 193302, -15.24, -2.58, -2.95, -0.03
85 | 193303, 3.29, 3.79, 7.54, 0.04
86 | 193304, 38.85, 3.07, 19.65, 0.10
87 | 193305, 21.43, 36.56, 19.19, 0.04
88 | 193306, 13.11, 8.42, -1.78, 0.02
89 | 193307, -9.63, -1.05, 3.27, 0.02
90 | 193308, 12.05, -5.39, 3.00, 0.03
91 | 193309, -10.65, -0.40, -11.74, 0.02
92 | 193310, -8.36, -0.20, -8.57, 0.01
93 | 193311, 9.97, -6.47, 2.32, 0.02
94 | 193312, 1.83, 0.63, -1.56, 0.02
95 | 193401, 12.60, 12.69, 15.59, 0.05
96 | 193402, -2.50, 5.10, 2.00, 0.02
97 | 193403, 0.09, 2.51, -2.70, 0.02
98 | 193404, -1.79, 2.73, -3.73, 0.01
99 | 193405, -7.25, -0.29, -5.89, 0.01
100 | 193406, 2.64, -2.23, -2.96, 0.01
101 | 193407, -10.96, -6.95, -10.70, 0.01
102 | 193408, 5.58, 5.37, 0.09, 0.01
103 | 193409, -0.23, -1.52, -1.20, 0.01
104 | 193410, -1.66, 1.24, -5.08, 0.01
105 | 193411, 8.33, 6.48, -2.15, 0.01
106 | 193412, 0.36, 3.06, -3.14, 0.01
107 | 193501, -3.45, 1.07, -1.90, 0.01
108 | 193502, -1.94, 0.37, -7.44, 0.02
109 | 193503, -3.68, -3.59, -5.12, 0.01
110 | 193504, 9.06, -1.47, 4.47, 0.01
111 | 193505, 3.47, -3.34, 2.65, 0.01
112 | 193506, 5.93, -2.57, -1.69, 0.01
113 | 193507, 7.51, 1.88, 6.93, 0.01
114 | 193508, 2.65, 6.20, 6.08, 0.01
115 | 193509, 2.63, 1.53, -4.07, 0.01
116 | 193510, 7.03, 2.72, -2.37, 0.01
117 | 193511, 4.88, 4.54, 12.06, 0.02
118 | 193512, 4.56, 0.17, 0.95, 0.01
119 | 193601, 6.89, 5.23, 10.34, 0.01
120 | 193602, 2.49, 0.95, 4.51, 0.01
121 | 193603, 0.99, 0.69, -1.44, 0.02
122 | 193604, -8.14, -6.06, -2.15, 0.02
123 | 193605, 5.19, 0.91, 2.61, 0.02
124 | 193606, 2.40, -3.20, -1.20, 0.03
125 | 193607, 6.67, 1.00, 2.40, 0.01
126 | 193608, 0.99, 0.60, 3.82, 0.02
127 | 193609, 0.98, 3.08, 0.90, 0.01
128 | 193610, 7.12, -2.43, 2.47, 0.02
129 | 193611, 3.27, 8.77, -1.21, 0.01
130 | 193612, 0.21, 3.96, 4.30, 0.00
131 | 193701, 3.35, 4.34, 2.61, 0.01
132 | 193702, 1.09, 1.05, 4.83, 0.02
133 | 193703, -0.27, -1.69, 6.50, 0.01
134 | 193704, -7.36, -3.83, -3.66, 0.03
135 | 193705, -0.83, -0.68, -3.48, 0.06
136 | 193706, -4.21, -3.76, -3.33, 0.03
137 | 193707, 8.91, 0.89, 0.81, 0.03
138 | 193708, -4.86, 0.44, -2.25, 0.02
139 | 193709, -13.61, -6.98, -4.57, 0.04
140 | 193710, -9.61, 0.41, -1.55, 0.02
141 | 193711, -8.31, -3.60, 0.15, 0.02
142 | 193712, -4.24, -7.74, -0.40, 0.00
143 | 193801, 0.49, 4.84, -1.61, 0.00
144 | 193802, 5.84, 0.40, -2.02, 0.00
145 | 193803, -23.82, -4.34, -3.54, -0.01
146 | 193804, 14.51, 6.46, 0.23, 0.01
147 | 193805, -3.83, -2.51, -0.27, 0.00
148 | 193806, 23.87, 4.30, 0.32, 0.00
149 | 193807, 7.34, 6.64, 2.20, -0.01
150 | 193808, -2.67, -2.45, -4.72, 0.00
151 | 193809, 0.81, -2.73, -1.62, 0.02
152 | 193810, 7.80, 5.81, 5.03, 0.01
153 | 193811, -1.72, -2.57, -1.22, -0.06
154 | 193812, 4.19, -1.82, 0.53, 0.00
155 | 193901, -5.96, -1.55, -3.94, -0.01
156 | 193902, 3.51, 0.63, 2.95, 0.01
157 | 193903, -11.99, -4.75, -8.31, -0.01
158 | 193904, -0.18, 1.67, -0.30, 0.00
159 | 193905, 6.80, 2.80, 0.49, 0.01
160 | 193906, -5.31, -1.01, -5.42, 0.01
161 | 193907, 10.24, 4.32, -0.03, 0.00
162 | 193908, -6.68, -4.61, -2.42, -0.01
163 | 193909, 16.88, 20.24, 22.22, 0.01
164 | 193910, -0.53, -0.01, -4.89, 0.00
165 | 193911, -3.62, -5.07, -6.46, 0.00
166 | 193912, 3.03, 0.79, -4.06, 0.00
167 | 194001, -2.41, 0.21, -0.81, 0.00
168 | 194002, 1.44, 2.51, -0.33, 0.00
169 | 194003, 2.05, 1.25, -1.27, 0.00
170 | 194004, 0.22, 3.92, -0.13, 0.00
171 | 194005, -21.95, -6.66, -3.69, -0.02
172 | 194006, 6.67, -2.13, 4.62, 0.00
173 | 194007, 3.16, 1.01, -0.74, 0.01
174 | 194008, 2.19, -0.11, 0.56, -0.01
175 | 194009, 2.39, 3.22, -1.13, 0.00
176 | 194010, 3.02, 0.28, 4.64, 0.00
177 | 194011, -1.61, 1.94, 0.12, 0.00
178 | 194012, 0.69, -2.15, -0.89, 0.00
179 | 194101, -4.17, 1.00, 3.83, -0.01
180 | 194102, -1.43, -1.56, 0.89, -0.01
181 | 194103, 0.84, 0.10, 3.04, 0.01
182 | 194104, -5.46, -1.68, 3.41, -0.01
183 | 194105, 1.39, -0.65, 0.60, 0.00
184 | 194106, 5.83, 1.32, 0.59, 0.00
185 | 194107, 5.87, 5.71, 7.25, 0.03
186 | 194108, -0.17, -0.42, -1.10, 0.01
187 | 194109, -0.87, -0.99, -0.28, 0.01
188 | 194110, -5.25, -2.02, 1.63, 0.00
189 | 194111, -1.92, -1.21, -0.64, 0.00
190 | 194112, -4.87, -2.99, -5.94, 0.01
191 | 194201, 0.79, 7.53, 10.10, 0.02
192 | 194202, -2.46, 1.72, -1.13, 0.01
193 | 194203, -6.58, 1.77, -0.62, 0.01
194 | 194204, -4.37, -0.60, 2.09, 0.01
195 | 194205, 5.94, -3.05, -2.65, 0.03
196 | 194206, 2.69, -1.22, 0.54, 0.02
197 | 194207, 3.51, -0.15, 2.40, 0.03
198 | 194208, 1.80, -0.09, 1.35, 0.03
199 | 194209, 2.61, 0.63, 2.35, 0.03
200 | 194210, 6.82, 1.75, 6.39, 0.03
201 | 194211, 0.15, -1.50, -4.21, 0.03
202 | 194212, 5.12, -2.51, 0.58, 0.03
203 | 194301, 7.13, 8.80, 8.18, 0.03
204 | 194302, 6.15, 4.75, 6.40, 0.03
205 | 194303, 6.01, 4.99, 5.48, 0.03
206 | 194304, 0.81, 2.05, 5.82, 0.03
207 | 194305, 5.74, 4.35, 3.25, 0.03
208 | 194306, 1.82, -1.02, -0.70, 0.03
209 | 194307, -4.77, -2.39, -2.29, 0.03
210 | 194308, 1.30, -0.60, -0.43, 0.03
211 | 194309, 2.40, 1.29, 1.43, 0.03
212 | 194310, -1.15, 0.58, 1.64, 0.03
213 | 194311, -5.91, -1.65, -4.02, 0.03
214 | 194312, 6.36, 3.34, 3.24, 0.03
215 | 194401, 1.74, 2.55, 2.16, 0.03
216 | 194402, 0.37, -0.10, 0.84, 0.03
217 | 194403, 2.46, 1.73, 3.43, 0.02
218 | 194404, -1.69, -1.37, -1.14, 0.03
219 | 194405, 5.07, 1.68, 1.04, 0.03
220 | 194406, 5.49, 4.01, 1.75, 0.03
221 | 194407, -1.49, 0.58, -0.42, 0.03
222 | 194408, 1.57, 2.33, -1.49, 0.03
223 | 194409, 0.01, 0.49, -1.16, 0.02
224 | 194410, 0.16, -0.15, -0.33, 0.03
225 | 194411, 1.71, 0.36, 2.38, 0.03
226 | 194412, 4.03, 2.25, 5.91, 0.02
227 | 194501, 2.01, 2.46, 0.67, 0.03
228 | 194502, 6.23, 1.55, 4.34, 0.02
229 | 194503, -3.89, -1.60, -1.74, 0.02
230 | 194504, 7.80, 0.32, 3.24, 0.03
231 | 194505, 1.73, 1.52, 0.36, 0.03
232 | 194506, 0.39, 3.12, 4.21, 0.02
233 | 194507, -2.17, -1.52, -2.62, 0.03
234 | 194508, 6.20, 1.50, -4.27, 0.03
235 | 194509, 4.77, 1.70, 0.42, 0.03
236 | 194510, 3.89, 2.38, 2.13, 0.03
237 | 194511, 5.39, 4.31, 3.96, 0.02
238 | 194512, 1.20, 2.10, -2.28, 0.03
239 | 194601, 6.24, 3.91, 2.48, 0.03
240 | 194602, -5.83, -0.71, -1.46, 0.03
241 | 194603, 5.87, 0.29, -0.54, 0.03
242 | 194604, 4.23, 2.35, 0.32, 0.03
243 | 194605, 3.93, 1.46, 1.28, 0.03
244 | 194606, -3.89, -1.58, -0.39, 0.03
245 | 194607, -2.69, -2.07, 0.07, 0.03
246 | 194608, -6.44, -1.84, 0.55, 0.03
247 | 194609, -10.17, -4.40, -1.92, 0.03
248 | 194610, -1.44, 0.10, 3.46, 0.03
249 | 194611, -0.01, -0.44, 1.47, 0.03
250 | 194612, 4.96, 0.08, -1.36, 0.03
251 | 194701, 1.25, 2.20, -0.73, 0.03
252 | 194702, -1.08, 0.68, 0.15, 0.03
253 | 194703, -1.67, -1.62, 0.61, 0.03
254 | 194704, -4.80, -3.96, 0.85, 0.03
255 | 194705, -0.97, -3.26, 0.33, 0.03
256 | 194706, 5.29, -0.30, -0.59, 0.03
257 | 194707, 4.14, 1.43, 2.82, 0.03
258 | 194708, -1.74, 0.32, 0.18, 0.03
259 | 194709, -0.54, 1.64, 1.36, 0.06
260 | 194710, 2.47, 0.51, 0.07, 0.06
261 | 194711, -1.97, -1.71, 1.10, 0.06
262 | 194712, 3.00, -2.46, 3.71, 0.08
263 | 194801, -3.93, 2.50, 1.39, 0.07
264 | 194802, -4.38, -1.72, 0.07, 0.07
265 | 194803, 8.07, 0.14, 4.50, 0.09
266 | 194804, 3.65, -1.65, 4.11, 0.08
267 | 194805, 7.30, 0.91, -1.27, 0.08
268 | 194806, -0.10, -1.82, 2.81, 0.09
269 | 194807, -5.09, -0.33, 0.14, 0.08
270 | 194808, 0.25, -1.11, 0.28, 0.09
271 | 194809, -2.97, -1.23, -1.71, 0.04
272 | 194810, 5.96, -1.50, 0.58, 0.04
273 | 194811, -9.30, -0.60, -4.13, 0.04
274 | 194812, 3.26, -2.82, -1.94, 0.04
275 | 194901, 0.23, 1.77, 1.23, 0.10
276 | 194902, -2.93, -1.90, -0.86, 0.09
277 | 194903, 4.04, 2.50, 1.29, 0.10
278 | 194904, -1.87, -0.89, -1.13, 0.09
279 | 194905, -2.94, -0.79, -2.37, 0.10
280 | 194906, 0.10, -0.91, -1.65, 0.10
281 | 194907, 5.54, 0.55, 0.37, 0.09
282 | 194908, 2.60, 0.20, -0.55, 0.09
283 | 194909, 3.09, 1.00, 0.19, 0.09
284 | 194910, 3.14, 1.04, -0.48, 0.09
285 | 194911, 1.82, -1.02, -0.96, 0.08
286 | 194912, 5.13, 2.06, 1.77, 0.09
287 | 195001, 1.70, 3.33, 0.12, 0.09
288 | 195002, 1.48, 0.03, -0.79, 0.09
289 | 195003, 1.26, -1.44, -2.81, 0.10
290 | 195004, 3.94, 1.94, 1.30, 0.09
291 | 195005, 4.31, -2.10, 0.46, 0.10
292 | 195006, -5.94, -2.34, -0.70, 0.10
293 | 195007, 1.36, 0.69, 13.56, 0.10
294 | 195008, 4.85, 0.76, -1.50, 0.10
295 | 195009, 4.81, 0.49, -1.07, 0.10
296 | 195010, -0.18, -0.47, 1.30, 0.12
297 | 195011, 2.76, -0.89, 3.33, 0.11
298 | 195012, 5.54, 1.47, 7.36, 0.11
299 | 195101, 5.70, 1.76, 3.64, 0.13
300 | 195102, 1.41, 0.08, -2.85, 0.10
301 | 195103, -2.15, -0.77, -4.10, 0.11
302 | 195104, 4.86, -1.45, 3.27, 0.13
303 | 195105, -2.34, 0.00, -1.37, 0.12
304 | 195106, -2.62, -2.06, -3.75, 0.12
305 | 195107, 6.94, -1.99, 2.06, 0.13
306 | 195108, 4.27, 0.99, -0.13, 0.13
307 | 195109, 0.70, 1.87, 0.63, 0.12
308 | 195110, -2.53, -0.22, 0.23, 0.16
309 | 195111, 0.57, -0.32, -0.06, 0.11
310 | 195112, 3.33, -2.26, -1.59, 0.12
311 | 195201, 1.45, -0.61, 1.55, 0.15
312 | 195202, -2.62, 0.82, -0.61, 0.12
313 | 195203, 4.44, -2.99, 2.17, 0.11
314 | 195204, -4.97, 0.46, -0.10, 0.12
315 | 195205, 3.20, -1.00, 0.04, 0.13
316 | 195206, 3.83, -1.64, 1.24, 0.15
317 | 195207, 0.91, -0.40, -0.35, 0.15
318 | 195208, -0.76, 1.15, 0.01, 0.15
319 | 195209, -2.03, 1.11, -1.52, 0.16
320 | 195210, -0.66, -1.05, -0.46, 0.14
321 | 195211, 5.94, -0.72, 0.97, 0.10
322 | 195212, 2.93, -1.48, 0.19, 0.16
323 | 195301, -0.34, 3.61, 1.32, 0.16
324 | 195302, -0.27, 2.15, -0.09, 0.14
325 | 195303, -1.43, -0.22, -0.85, 0.18
326 | 195304, -2.83, 0.30, 1.57, 0.16
327 | 195305, 0.52, -0.07, 0.23, 0.17
328 | 195306, -1.89, -1.87, -0.47, 0.18
329 | 195307, 2.40, -1.00, -0.22, 0.15
330 | 195308, -4.52, 0.29, -3.53, 0.17
331 | 195309, 0.20, -0.84, -2.44, 0.16
332 | 195310, 4.60, -1.35, -0.25, 0.13
333 | 195311, 2.83, -1.30, -0.15, 0.08
334 | 195312, 0.03, -0.85, -2.84, 0.13
335 | 195401, 5.13, 0.48, 3.44, 0.11
336 | 195402, 1.67, -0.19, -0.29, 0.07
337 | 195403, 3.65, -0.54, -1.50, 0.08
338 | 195404, 4.27, -3.44, -0.34, 0.09
339 | 195405, 3.09, 0.41, 2.45, 0.05
340 | 195406, 1.07, 0.38, 0.01, 0.06
341 | 195407, 4.99, 1.06, 4.13, 0.05
342 | 195408, -2.34, 2.69, -1.38, 0.05
343 | 195409, 6.39, -2.53, 0.68, 0.09
344 | 195410, -1.67, 0.62, 0.67, 0.07
345 | 195411, 9.38, -2.62, 4.40, 0.06
346 | 195412, 5.48, 2.12, 5.66, 0.08
347 | 195501, 0.60, 0.36, 2.14, 0.08
348 | 195502, 3.02, 1.59, 0.58, 0.09
349 | 195503, -0.16, -0.74, 1.97, 0.10
350 | 195504, 3.11, -1.62, 0.68, 0.10
351 | 195505, 0.93, -0.28, -0.96, 0.14
352 | 195506, 6.55, -4.65, 1.84, 0.10
353 | 195507, 1.90, -1.17, 0.35, 0.10
354 | 195508, 0.21, -0.44, 0.72, 0.16
355 | 195509, -0.36, 0.35, -0.99, 0.16
356 | 195510, -2.68, 1.48, -0.15, 0.18
357 | 195511, 7.03, -2.22, 0.33, 0.17
358 | 195512, 1.49, 2.16, -2.30, 0.18
359 | 195601, -3.03, 0.37, 0.95, 0.22
360 | 195602, 3.77, -0.98, -0.43, 0.19
361 | 195603, 6.64, -2.09, -0.46, 0.15
362 | 195604, 0.28, 0.01, -0.24, 0.19
363 | 195605, -5.20, 1.45, -1.31, 0.23
364 | 195606, 3.48, -1.48, -1.13, 0.20
365 | 195607, 4.84, -1.66, -0.04, 0.22
366 | 195608, -3.18, 1.89, -0.74, 0.17
367 | 195609, -5.14, 1.57, 1.76, 0.18
368 | 195610, 0.52, -0.10, -0.06, 0.25
369 | 195611, 0.36, -0.21, 1.78, 0.20
370 | 195612, 3.16, -0.01, -2.15, 0.24
371 | 195701, -3.58, 3.37, 2.81, 0.27
372 | 195702, -2.06, -0.72, -0.72, 0.24
373 | 195703, 2.13, 0.26, -0.48, 0.23
374 | 195704, 4.26, -1.59, -1.45, 0.25
375 | 195705, 3.45, -1.05, -2.10, 0.26
376 | 195706, -0.74, 0.54, 0.01, 0.24
377 | 195707, 0.66, -0.76, 0.43, 0.30
378 | 195708, -5.11, 0.05, -0.41, 0.25
379 | 195709, -5.98, 0.08, 0.92, 0.26
380 | 195710, -4.32, -2.52, -1.80, 0.29
381 | 195711, 2.30, 0.40, -2.87, 0.28
382 | 195712, -3.91, -0.98, -1.62, 0.24
383 | 195801, 4.66, 4.39, 4.19, 0.28
384 | 195802, -1.52, 0.65, 0.33, 0.12
385 | 195803, 3.27, 0.65, -0.97, 0.09
386 | 195804, 3.09, -0.62, 1.61, 0.08
387 | 195805, 2.31, 2.16, -0.26, 0.11
388 | 195806, 2.93, -0.19, 0.40, 0.03
389 | 195807, 4.39, 0.47, 3.06, 0.07
390 | 195808, 1.91, 1.18, 0.36, 0.04
391 | 195809, 4.66, 0.12, 2.85, 0.19
392 | 195810, 2.53, 1.09, -1.18, 0.18
393 | 195811, 3.01, 1.97, -1.18, 0.11
394 | 195812, 5.15, -2.03, 0.03, 0.22
395 | 195901, 0.71, 3.02, 2.91, 0.21
396 | 195902, 0.95, 1.46, 1.16, 0.19
397 | 195903, 0.28, 1.49, -0.34, 0.22
398 | 195904, 3.66, -0.60, -1.23, 0.20
399 | 195905, 1.73, -2.16, 1.79, 0.22
400 | 195906, -0.25, 0.67, 1.31, 0.25
401 | 195907, 3.17, -0.30, 0.23, 0.25
402 | 195908, -1.39, -0.76, 0.44, 0.19
403 | 195909, -4.80, -0.09, 0.55, 0.31
404 | 195910, 1.28, 1.44, -2.10, 0.30
405 | 195911, 1.60, 1.23, -3.21, 0.26
406 | 195912, 2.45, -0.58, -0.07, 0.34
407 | 196001, -6.98, 2.09, 2.78, 0.33
408 | 196002, 1.17, 0.51, -1.93, 0.29
409 | 196003, -1.63, -0.49, -2.94, 0.35
410 | 196004, -1.71, 0.32, -2.28, 0.19
411 | 196005, 3.12, 1.21, -3.70, 0.27
412 | 196006, 2.08, -0.21, -0.34, 0.24
413 | 196007, -2.37, -0.51, 1.98, 0.13
414 | 196008, 3.01, 0.87, -0.18, 0.17
415 | 196009, -5.99, -1.11, 1.62, 0.16
416 | 196010, -0.71, -4.08, 2.83, 0.22
417 | 196011, 4.69, 0.40, -2.43, 0.13
418 | 196012, 4.71, -1.55, -0.81, 0.16
419 | 196101, 6.20, 0.64, 3.72, 0.19
420 | 196102, 3.57, 3.93, -0.66, 0.14
421 | 196103, 2.89, 3.30, -0.73, 0.20
422 | 196104, 0.29, 0.07, 2.12, 0.17
423 | 196105, 2.40, 2.01, 0.37, 0.18
424 | 196106, -3.08, -2.49, -0.14, 0.20
425 | 196107, 2.83, -1.90, -0.09, 0.18
426 | 196108, 2.57, -1.75, -0.28, 0.14
427 | 196109, -2.15, -1.07, -0.61, 0.17
428 | 196110, 2.57, -1.65, 0.15, 0.19
429 | 196111, 4.45, 1.26, -1.23, 0.15
430 | 196112, -0.18, -0.85, 1.79, 0.19
431 | 196201, -3.87, 1.77, 5.13, 0.24
432 | 196202, 1.81, -1.15, 0.82, 0.20
433 | 196203, -0.68, 0.52, -1.38, 0.20
434 | 196204, -6.59, -0.70, 0.03, 0.22
435 | 196205, -8.65, -3.34, 2.77, 0.24
436 | 196206, -8.47, -0.59, 2.55, 0.20
437 | 196207, 6.28, 1.52, -3.41, 0.27
438 | 196208, 2.13, 1.22, -1.20, 0.23
439 | 196209, -5.22, -2.42, 1.28, 0.21
440 | 196210, -0.05, -3.97, 1.30, 0.25
441 | 196211, 10.87, 2.61, 0.95, 0.20
442 | 196212, 1.01, -3.80, 0.36, 0.23
443 | 196301, 4.93, 3.08, 2.21, 0.25
444 | 196302, -2.38, 0.48, 2.18, 0.23
445 | 196303, 3.08, -2.59, 2.06, 0.23
446 | 196304, 4.51, -1.34, 1.00, 0.25
447 | 196305, 1.76, 1.13, 2.54, 0.24
448 | 196306, -2.00, -0.27, 0.75, 0.23
449 | 196307, -0.39, -0.45, -0.97, 0.27
450 | 196308, 5.07, -0.98, 1.80, 0.25
451 | 196309, -1.57, -0.33, 0.13, 0.27
452 | 196310, 2.53, -0.58, -0.10, 0.29
453 | 196311, -0.85, -1.17, 1.75, 0.27
454 | 196312, 1.83, -2.16, -0.02, 0.29
455 | 196401, 2.24, -0.11, 1.48, 0.30
456 | 196402, 1.54, 0.11, 2.81, 0.26
457 | 196403, 1.41, 0.87, 3.40, 0.31
458 | 196404, 0.10, -1.35, -0.67, 0.29
459 | 196405, 1.42, -0.86, 1.86, 0.26
460 | 196406, 1.27, -0.12, 0.62, 0.30
461 | 196407, 1.74, 0.24, 0.75, 0.30
462 | 196408, -1.44, 0.16, 0.08, 0.28
463 | 196409, 2.69, -0.54, 1.70, 0.28
464 | 196410, 0.59, 0.42, 1.17, 0.29
465 | 196411, 0.00, 0.69, -1.96, 0.29
466 | 196412, 0.03, -0.35, -2.48, 0.31
467 | 196501, 3.54, 2.70, 0.12, 0.28
468 | 196502, 0.44, 3.55, 0.11, 0.30
469 | 196503, -1.34, 1.89, 1.03, 0.36
470 | 196504, 3.11, 1.10, 0.66, 0.31
471 | 196505, -0.77, 0.11, -1.61, 0.31
472 | 196506, -5.51, -4.34, 0.59, 0.35
473 | 196507, 1.43, 0.89, 2.20, 0.31
474 | 196508, 2.73, 2.84, -1.00, 0.33
475 | 196509, 2.86, 0.64, -0.13, 0.31
476 | 196510, 2.60, 2.52, 1.56, 0.31
477 | 196511, -0.03, 4.68, 0.15, 0.35
478 | 196512, 1.01, 2.06, 2.03, 0.33
479 | 196601, 0.72, 3.84, 3.56, 0.38
480 | 196602, -1.21, 4.40, 0.33, 0.35
481 | 196603, -2.51, 0.99, -1.98, 0.38
482 | 196604, 2.14, 3.43, -0.46, 0.34
483 | 196605, -5.66, -4.60, -1.63, 0.41
484 | 196606, -1.44, 1.03, 0.50, 0.38
485 | 196607, -1.63, -0.36, 0.95, 0.35
486 | 196608, -7.91, -3.27, 0.43, 0.41
487 | 196609, -1.06, -1.04, 0.56, 0.40
488 | 196610, 3.86, -6.52, 2.69, 0.45
489 | 196611, 1.40, 4.24, -4.69, 0.40
490 | 196612, 0.13, 1.97, -1.19, 0.40
491 | 196701, 8.15, 8.32, 2.27, 0.43
492 | 196702, 0.78, 3.35, -2.22, 0.36
493 | 196703, 3.99, 1.55, 0.37, 0.39
494 | 196704, 3.89, 0.63, -2.48, 0.32
495 | 196705, -4.33, 1.90, 1.09, 0.33
496 | 196706, 2.41, 5.93, 0.85, 0.27
497 | 196707, 4.58, 3.12, 2.73, 0.31
498 | 196708, -0.89, 0.42, 1.44, 0.31
499 | 196709, 3.11, 3.06, -2.50, 0.32
500 | 196710, -3.09, 1.46, -3.30, 0.39
501 | 196711, 0.37, 0.21, -1.70, 0.36
502 | 196712, 3.05, 5.73, -0.53, 0.33
503 | 196801, -4.06, 3.92, 4.80, 0.40
504 | 196802, -3.75, -2.94, 1.28, 0.39
505 | 196803, 0.20, -1.34, -0.59, 0.38
506 | 196804, 9.05, 5.68, -1.13, 0.43
507 | 196805, 2.28, 6.40, 0.85, 0.45
508 | 196806, 0.69, -0.19, 0.73, 0.43
509 | 196807, -2.72, -1.36, 5.39, 0.48
510 | 196808, 1.34, 2.34, 1.01, 0.42
511 | 196809, 4.03, 2.80, 0.30, 0.43
512 | 196810, 0.42, -0.48, 2.86, 0.44
513 | 196811, 5.43, 2.34, -0.92, 0.42
514 | 196812, -3.94, 3.37, -0.01, 0.43
515 | 196901, -1.25, -0.74, 1.67, 0.53
516 | 196902, -5.84, -3.92, 0.91, 0.46
517 | 196903, 2.64, -0.30, -0.51, 0.46
518 | 196904, 1.46, -0.86, -0.03, 0.53
519 | 196905, -0.10, -0.21, 0.70, 0.48
520 | 196906, -7.18, -5.37, -1.08, 0.51
521 | 196907, -7.00, -3.24, 1.20, 0.53
522 | 196908, 4.68, 0.93, -3.79, 0.50
523 | 196909, -2.98, 1.18, -3.27, 0.62
524 | 196910, 5.06, 3.91, -3.16, 0.60
525 | 196911, -3.79, -2.58, -1.19, 0.52
526 | 196912, -2.63, -3.71, -2.86, 0.64
527 | 197001, -8.10, 2.93, 3.13, 0.60
528 | 197002, 5.13, -2.58, 3.93, 0.62
529 | 197003, -1.06, -2.32, 3.99, 0.57
530 | 197004, -11.00, -6.15, 6.18, 0.50
531 | 197005, -6.92, -4.59, 3.33, 0.53
532 | 197006, -5.79, -2.13, 0.60, 0.58
533 | 197007, 6.93, -0.50, 0.90, 0.52
534 | 197008, 4.49, 1.52, 1.15, 0.53
535 | 197009, 4.18, 8.59, -5.47, 0.54
536 | 197010, -2.28, -4.21, 0.22, 0.46
537 | 197011, 4.60, -3.94, 1.69, 0.46
538 | 197012, 5.72, 2.92, 1.00, 0.42
539 | 197101, 4.84, 7.36, 1.33, 0.38
540 | 197102, 1.41, 1.86, -1.23, 0.33
541 | 197103, 4.13, 2.62, -3.95, 0.30
542 | 197104, 3.15, -0.49, 0.69, 0.28
543 | 197105, -3.98, -1.04, -1.44, 0.29
544 | 197106, -0.10, -1.47, -1.87, 0.37
545 | 197107, -4.50, -1.48, 0.02, 0.40
546 | 197108, 3.79, -0.17, 2.63, 0.47
547 | 197109, -0.85, 0.51, -2.91, 0.37
548 | 197110, -4.42, -1.76, -0.48, 0.37
549 | 197111, -0.46, -2.77, -1.68, 0.37
550 | 197112, 8.71, 3.29, -0.40, 0.37
551 | 197201, 2.49, 5.85, 2.24, 0.29
552 | 197202, 2.87, 1.30, -2.79, 0.25
553 | 197203, 0.63, -0.24, -1.61, 0.27
554 | 197204, 0.29, 0.11, 0.12, 0.29
555 | 197205, 1.25, -2.69, -2.70, 0.30
556 | 197206, -2.43, 0.27, -2.48, 0.29
557 | 197207, -0.80, -2.87, 0.66, 0.31
558 | 197208, 3.26, -4.03, 4.54, 0.29
559 | 197209, -1.14, -2.65, 0.46, 0.34
560 | 197210, 0.52, -2.73, 1.34, 0.40
561 | 197211, 4.60, -1.20, 4.85, 0.37
562 | 197212, 0.62, -1.95, -2.19, 0.37
563 | 197301, -3.29, -3.49, 2.68, 0.44
564 | 197302, -4.85, -3.87, 1.60, 0.41
565 | 197303, -1.30, -2.82, 2.62, 0.46
566 | 197304, -5.68, -3.85, 5.41, 0.52
567 | 197305, -2.94, -6.30, 0.41, 0.51
568 | 197306, -1.57, -2.86, 1.20, 0.51
569 | 197307, 5.05, 7.97, -5.31, 0.64
570 | 197308, -3.82, -2.13, 1.24, 0.70
571 | 197309, 4.75, 3.04, 2.01, 0.68
572 | 197310, -0.83, -0.45, 1.94, 0.65
573 | 197311, -12.75, -7.67, 3.87, 0.56
574 | 197312, 0.61, -5.35, 3.85, 0.64
575 | 197401, -0.17, 9.68, 6.02, 0.63
576 | 197402, -0.47, -0.18, 2.81, 0.58
577 | 197403, -2.81, 2.60, -0.32, 0.56
578 | 197404, -5.29, -0.74, 0.85, 0.75
579 | 197405, -4.68, -2.96, -2.02, 0.75
580 | 197406, -2.83, -0.17, 0.77, 0.60
581 | 197407, -8.05, 0.84, 5.16, 0.70
582 | 197408, -9.35, -0.73, 2.64, 0.60
583 | 197409, -11.77, 0.27, 5.58, 0.81
584 | 197410, 16.10, -3.45, -9.87, 0.51
585 | 197411, -4.51, -1.21, -0.20, 0.54
586 | 197412, -3.45, -4.83, 0.11, 0.70
587 | 197501, 13.66, 11.14, 8.28, 0.58
588 | 197502, 5.56, 0.16, -4.45, 0.43
589 | 197503, 2.66, 3.79, 2.38, 0.41
590 | 197504, 4.23, -0.65, -1.14, 0.44
591 | 197505, 5.19, 3.83, -4.10, 0.44
592 | 197506, 4.83, 0.87, 1.38, 0.41
593 | 197507, -6.59, 2.70, 1.69, 0.48
594 | 197508, -2.85, -3.25, -0.95, 0.48
595 | 197509, -4.26, -0.10, 0.39, 0.53
596 | 197510, 5.31, -4.03, 0.28, 0.56
597 | 197511, 2.64, -1.20, 2.03, 0.41
598 | 197512, -1.60, -0.78, 1.69, 0.48
599 | 197601, 12.16, 4.81, 8.63, 0.47
600 | 197602, 0.32, 7.06, 5.87, 0.34
601 | 197603, 2.32, -1.16, -0.12, 0.40
602 | 197604, -1.49, -0.11, -0.16, 0.42
603 | 197605, -1.34, -1.23, -1.36, 0.37
604 | 197606, 4.05, -1.32, 0.71, 0.43
605 | 197607, -1.07, 0.29, 1.73, 0.47
606 | 197608, -0.56, -2.00, 0.81, 0.42
607 | 197609, 2.07, -0.02, -0.29, 0.44
608 | 197610, -2.42, 0.22, -0.18, 0.41
609 | 197611, 0.36, 2.32, 1.51, 0.40
610 | 197612, 5.65, 3.03, 2.27, 0.40
611 | 197701, -4.05, 4.76, 4.27, 0.36
612 | 197702, -1.94, 1.04, 0.47, 0.35
613 | 197703, -1.37, 1.00, 1.09, 0.38
614 | 197704, 0.15, -0.12, 3.38, 0.38
615 | 197705, -1.45, 1.18, 0.85, 0.37
616 | 197706, 4.71, 2.09, -0.74, 0.40
617 | 197707, -1.69, 2.16, -0.56, 0.42
618 | 197708, -1.75, 1.48, -2.70, 0.44
619 | 197709, -0.27, 1.34, -0.52, 0.43
620 | 197710, -4.38, 1.25, 1.75, 0.49
621 | 197711, 4.00, 3.73, 0.26, 0.50
622 | 197712, 0.27, 1.32, -0.29, 0.49
623 | 197801, -6.01, 2.24, 3.36, 0.49
624 | 197802, -1.38, 3.59, 0.83, 0.46
625 | 197803, 2.85, 3.49, 1.18, 0.53
626 | 197804, 7.88, 0.45, -3.54, 0.54
627 | 197805, 1.76, 4.56, -0.52, 0.51
628 | 197806, -1.69, 1.66, 0.57, 0.54
629 | 197807, 5.11, 0.23, -1.15, 0.56
630 | 197808, 3.75, 5.06, -0.51, 0.56
631 | 197809, -1.43, -0.43, 1.89, 0.62
632 | 197810, -11.91, -9.86, 1.38, 0.68
633 | 197811, 2.71, 2.97, -2.15, 0.70
634 | 197812, 0.88, 1.29, -2.13, 0.78
635 | 197901, 4.23, 3.62, 2.19, 0.77
636 | 197902, -3.56, 0.45, 1.17, 0.73
637 | 197903, 5.68, 3.26, -0.71, 0.81
638 | 197904, -0.06, 2.15, 1.12, 0.80
639 | 197905, -2.21, 0.21, 1.31, 0.82
640 | 197906, 3.85, 1.17, 1.44, 0.81
641 | 197907, 0.82, 1.28, 1.86, 0.77
642 | 197908, 5.53, 2.05, -1.58, 0.77
643 | 197909, -0.82, -0.27, -0.90, 0.83
644 | 197910, -8.10, -3.37, -1.84, 0.87
645 | 197911, 5.21, 2.87, -3.29, 0.99
646 | 197912, 1.79, 4.17, -2.10, 0.95
647 | 198001, 5.51, 1.62, 1.75, 0.80
648 | 198002, -1.22, -1.85, 0.61, 0.89
649 | 198003, -12.90, -6.64, -1.01, 1.21
650 | 198004, 3.97, 1.05, 1.06, 1.26
651 | 198005, 5.26, 2.13, 0.38, 0.81
652 | 198006, 3.06, 1.66, -0.76, 0.61
653 | 198007, 6.49, 4.14, -6.41, 0.53
654 | 198008, 1.80, 3.92, -2.60, 0.64
655 | 198009, 2.19, 0.98, -4.59, 0.75
656 | 198010, 1.06, 2.47, -2.76, 0.95
657 | 198011, 9.59, -3.36, -8.33, 0.96
658 | 198012, -4.52, -0.26, 2.79, 1.31
659 | 198101, -5.04, 2.92, 6.72, 1.04
660 | 198102, 0.57, -0.34, 1.02, 1.07
661 | 198103, 3.56, 3.54, 0.64, 1.21
662 | 198104, -2.11, 4.40, 2.28, 1.08
663 | 198105, 0.11, 2.00, -0.42, 1.15
664 | 198106, -2.36, -0.83, 5.13, 1.35
665 | 198107, -1.54, -2.19, -0.50, 1.24
666 | 198108, -7.04, -1.95, 4.76, 1.28
667 | 198109, -7.17, -2.65, 5.17, 1.24
668 | 198110, 4.92, 2.23, -4.21, 1.21
669 | 198111, 3.36, -1.03, 1.83, 1.07
670 | 198112, -3.65, 1.20, 0.81, 0.87
671 | 198201, -3.24, -1.28, 3.19, 0.80
672 | 198202, -5.86, 0.44, 6.05, 0.92
673 | 198203, -1.87, -0.21, 3.81, 0.98
674 | 198204, 3.27, 1.47, -2.70, 1.13
675 | 198205, -3.99, 0.52, 1.75, 1.06
676 | 198206, -3.09, -0.40, 1.53, 0.96
677 | 198207, -3.19, 0.83, 0.09, 1.05
678 | 198208, 11.14, -4.14, 0.95, 0.76
679 | 198209, 1.29, 2.95, 0.28, 0.51
680 | 198210, 11.30, 2.34, -3.66, 0.59
681 | 198211, 4.67, 4.67, -1.87, 0.63
682 | 198212, 0.55, -0.22, -0.02, 0.67
683 | 198301, 3.60, 2.73, -0.75, 0.69
684 | 198302, 2.59, 3.27, 0.70, 0.62
685 | 198303, 2.82, 1.73, 2.02, 0.63
686 | 198304, 6.67, 0.50, 0.49, 0.71
687 | 198305, 0.52, 6.24, -1.40, 0.69
688 | 198306, 3.07, 0.95, -3.90, 0.67
689 | 198307, -4.07, 1.50, 5.62, 0.74
690 | 198308, -0.50, -4.28, 5.54, 0.76
691 | 198309, 0.91, 0.61, 1.01, 0.76
692 | 198310, -3.44, -3.57, 4.97, 0.76
693 | 198311, 2.16, 2.01, -0.72, 0.70
694 | 198312, -1.78, -0.27, 1.73, 0.73
695 | 198401, -1.92, -0.38, 7.58, 0.76
696 | 198402, -4.82, -1.69, 3.33, 0.71
697 | 198403, 0.63, 0.07, 0.46, 0.73
698 | 198404, -0.51, -1.16, 1.20, 0.81
699 | 198405, -5.97, 0.06, 0.31, 0.78
700 | 198406, 1.82, -0.30, -2.66, 0.75
701 | 198407, -2.74, -2.21, 0.36, 0.82
702 | 198408, 10.28, -0.24, -1.82, 0.83
703 | 198409, -0.80, 0.17, 5.28, 0.86
704 | 198410, -0.84, -1.23, 0.45, 1.00
705 | 198411, -1.76, -0.65, 4.06, 0.73
706 | 198412, 1.84, -0.56, -0.26, 0.64
707 | 198501, 7.99, 3.31, -5.35, 0.65
708 | 198502, 1.22, 0.79, -0.10, 0.58
709 | 198503, -0.84, -1.08, 4.07, 0.62
710 | 198504, -0.96, 0.14, 3.72, 0.72
711 | 198505, 5.09, -2.22, -0.96, 0.66
712 | 198506, 1.27, 0.52, 0.38, 0.55
713 | 198507, -0.74, 2.84, -1.62, 0.62
714 | 198508, -1.02, -0.30, 2.32, 0.55
715 | 198509, -4.54, -1.59, 1.29, 0.60
716 | 198510, 4.02, -1.51, 0.75, 0.65
717 | 198511, 6.48, 0.25, -2.85, 0.61
718 | 198512, 3.88, -0.51, -1.54, 0.65
719 | 198601, 0.65, 1.21, 0.44, 0.56
720 | 198602, 7.13, -0.54, -0.72, 0.53
721 | 198603, 4.88, -0.59, -0.39, 0.60
722 | 198604, -1.31, 2.78, -2.87, 0.52
723 | 198605, 4.62, -1.35, -0.21, 0.49
724 | 198606, 1.03, -0.96, 1.28, 0.52
725 | 198607, -6.45, -3.36, 4.70, 0.52
726 | 198608, 6.07, -4.17, 3.51, 0.46
727 | 198609, -8.60, 2.36, 3.22, 0.45
728 | 198610, 4.66, -2.50, -1.42, 0.46
729 | 198611, 1.17, -1.91, -0.07, 0.39
730 | 198612, -3.27, 0.13, 0.36, 0.49
731 | 198701, 12.47, -1.81, -3.16, 0.42
732 | 198702, 4.39, 3.49, -5.91, 0.43
733 | 198703, 1.64, 0.45, 1.61, 0.47
734 | 198704, -2.11, -1.69, -0.39, 0.44
735 | 198705, 0.11, -0.50, 0.23, 0.38
736 | 198706, 3.94, -2.12, 1.04, 0.48
737 | 198707, 3.85, -0.69, 0.68, 0.46
738 | 198708, 3.52, -0.77, -0.93, 0.47
739 | 198709, -2.59, 0.54, 0.27, 0.45
740 | 198710, -23.24, -8.43, 4.24, 0.60
741 | 198711, -7.77, 2.72, 2.95, 0.35
742 | 198712, 6.81, 0.13, -4.43, 0.39
743 | 198801, 4.21, -0.72, 5.01, 0.29
744 | 198802, 4.75, 3.34, -1.71, 0.46
745 | 198803, -2.27, 6.15, 0.73, 0.44
746 | 198804, 0.56, 1.00, 1.67, 0.46
747 | 198805, -0.29, -2.60, 2.42, 0.51
748 | 198806, 4.79, 2.11, -1.24, 0.49
749 | 198807, -1.25, -0.25, 2.22, 0.51
750 | 198808, -3.31, 0.04, 2.15, 0.59
751 | 198809, 3.30, -1.31, -0.75, 0.62
752 | 198810, 1.15, -2.93, 2.05, 0.61
753 | 198811, -2.29, -1.72, 1.41, 0.57
754 | 198812, 1.49, 1.95, -1.69, 0.63
755 | 198901, 6.10, -2.23, 0.60, 0.55
756 | 198902, -2.25, 2.82, 1.01, 0.61
757 | 198903, 1.57, 0.67, 0.58, 0.67
758 | 198904, 4.33, -0.68, -1.42, 0.67
759 | 198905, 3.35, -0.05, -0.88, 0.79
760 | 198906, -1.35, -1.02, 2.25, 0.71
761 | 198907, 7.20, -4.14, -2.79, 0.70
762 | 198908, 1.44, 0.56, 0.60, 0.74
763 | 198909, -0.76, 0.32, -1.27, 0.65
764 | 198910, -3.67, -3.23, -1.11, 0.68
765 | 198911, 1.03, -1.24, -1.09, 0.69
766 | 198912, 1.16, -2.36, 0.16, 0.61
767 | 199001, -7.85, -1.24, 0.85, 0.57
768 | 199002, 1.11, 0.99, 0.64, 0.57
769 | 199003, 1.83, 1.50, -2.92, 0.64
770 | 199004, -3.36, -0.46, -2.59, 0.69
771 | 199005, 8.42, -2.53, -3.83, 0.68
772 | 199006, -1.09, 1.40, -1.93, 0.63
773 | 199007, -1.90, -3.12, -0.03, 0.68
774 | 199008, -10.15, -3.57, 1.64, 0.66
775 | 199009, -6.12, -3.65, 0.64, 0.60
776 | 199010, -1.92, -5.57, 0.10, 0.68
777 | 199011, 6.35, 0.43, -3.10, 0.57
778 | 199012, 2.46, 0.81, -1.70, 0.60
779 | 199101, 4.69, 3.81, -1.60, 0.52
780 | 199102, 7.19, 3.95, -0.58, 0.48
781 | 199103, 2.65, 3.93, -1.39, 0.44
782 | 199104, -0.28, 0.48, 1.50, 0.53
783 | 199105, 3.65, -0.40, -0.52, 0.47
784 | 199106, -4.94, 0.13, 1.15, 0.42
785 | 199107, 4.24, -0.92, -1.32, 0.49
786 | 199108, 2.32, 1.58, -0.78, 0.46
787 | 199109, -1.59, 1.64, -1.08, 0.46
788 | 199110, 1.29, 0.81, -0.47, 0.42
789 | 199111, -4.19, -0.50, -1.89, 0.39
790 | 199112, 10.84, -2.24, -4.17, 0.38
791 | 199201, -0.59, 8.46, 4.71, 0.34
792 | 199202, 1.09, 0.87, 6.47, 0.28
793 | 199203, -2.66, -1.04, 3.56, 0.34
794 | 199204, 1.07, -6.06, 4.34, 0.32
795 | 199205, 0.30, 0.41, 1.19, 0.28
796 | 199206, -2.34, -3.07, 3.24, 0.32
797 | 199207, 3.77, -0.47, -0.56, 0.31
798 | 199208, -2.38, -0.13, -1.10, 0.26
799 | 199209, 1.19, 0.54, -0.26, 0.26
800 | 199210, 1.02, 2.09, -1.98, 0.23
801 | 199211, 4.13, 3.76, -1.35, 0.23
802 | 199212, 1.53, 1.69, 2.62, 0.28
803 | 199301, 0.93, 1.89, 5.94, 0.23
804 | 199302, 0.12, -3.48, 6.42, 0.22
805 | 199303, 2.30, 0.24, 1.18, 0.25
806 | 199304, -3.05, -0.67, 2.49, 0.24
807 | 199305, 2.89, 2.04, -3.42, 0.22
808 | 199306, 0.31, -0.29, 2.75, 0.25
809 | 199307, -0.34, 0.96, 2.85, 0.24
810 | 199308, 3.71, 0.13, 0.13, 0.25
811 | 199309, -0.12, 3.04, -0.31, 0.26
812 | 199310, 1.41, 2.03, -2.76, 0.22
813 | 199311, -1.89, -1.25, -0.74, 0.25
814 | 199312, 1.65, 1.23, 0.32, 0.23
815 | 199401, 2.87, 0.34, 1.15, 0.25
816 | 199402, -2.55, 2.80, -1.54, 0.21
817 | 199403, -4.78, -1.08, 1.60, 0.27
818 | 199404, 0.68, -0.93, 1.66, 0.27
819 | 199405, 0.58, -2.15, 0.67, 0.31
820 | 199406, -3.03, -0.41, 1.67, 0.31
821 | 199407, 2.82, -1.81, 0.58, 0.28
822 | 199408, 4.01, 1.45, -2.51, 0.37
823 | 199409, -2.31, 3.14, -1.89, 0.37
824 | 199410, 1.34, -2.24, -1.62, 0.38
825 | 199411, -4.04, 0.25, -0.70, 0.37
826 | 199412, 0.86, 0.22, -0.13, 0.44
827 | 199501, 1.80, -3.50, 2.57, 0.42
828 | 199502, 3.63, -0.66, 1.08, 0.40
829 | 199503, 2.19, -0.16, -2.15, 0.46
830 | 199504, 2.11, -0.49, 1.71, 0.44
831 | 199505, 2.90, -2.55, 2.29, 0.54
832 | 199506, 2.72, 3.18, -2.54, 0.47
833 | 199507, 3.72, 2.07, -1.62, 0.45
834 | 199508, 0.55, 1.35, 2.79, 0.47
835 | 199509, 3.35, -2.20, -0.04, 0.43
836 | 199510, -1.52, -3.78, -0.50, 0.47
837 | 199511, 3.96, -1.09, 0.51, 0.42
838 | 199512, 1.03, 0.70, 0.22, 0.49
839 | 199601, 2.26, -2.73, 0.38, 0.43
840 | 199602, 1.33, 1.79, -1.08, 0.39
841 | 199603, 0.73, 1.49, 0.35, 0.39
842 | 199604, 2.06, 5.23, -4.02, 0.46
843 | 199605, 2.36, 3.17, -0.83, 0.42
844 | 199606, -1.14, -4.01, 2.35, 0.40
845 | 199607, -5.97, -4.31, 5.14, 0.45
846 | 199608, 2.77, 2.44, -0.74, 0.41
847 | 199609, 5.01, -0.98, -2.72, 0.44
848 | 199610, 0.86, -4.44, 4.94, 0.42
849 | 199611, 6.25, -4.02, 1.39, 0.41
850 | 199612, -1.70, 3.16, 1.31, 0.46
851 | 199701, 4.99, -1.95, -1.42, 0.45
852 | 199702, -0.49, -3.22, 5.67, 0.39
853 | 199703, -5.03, -0.36, 3.39, 0.43
854 | 199704, 4.04, -5.77, 0.07, 0.43
855 | 199705, 6.74, 5.19, -4.13, 0.49
856 | 199706, 4.10, 1.22, 1.58, 0.37
857 | 199707, 7.33, -2.74, 0.26, 0.43
858 | 199708, -4.15, 7.28, 1.18, 0.41
859 | 199709, 5.35, 2.53, 0.37, 0.44
860 | 199710, -3.80, -0.73, 2.27, 0.42
861 | 199711, 2.98, -5.12, 1.20, 0.39
862 | 199712, 1.32, -2.48, 3.84, 0.48
863 | 199801, 0.15, -1.07, -1.63, 0.43
864 | 199802, 7.04, 0.32, -0.85, 0.39
865 | 199803, 4.76, -1.14, 1.39, 0.39
866 | 199804, 0.73, 0.07, 0.94, 0.43
867 | 199805, -3.07, -3.38, 3.44, 0.40
868 | 199806, 3.18, -3.21, -1.96, 0.41
869 | 199807, -2.46, -4.91, -1.78, 0.40
870 | 199808, -16.08, -5.69, 3.53, 0.43
871 | 199809, 6.15, 0.09, -3.42, 0.46
872 | 199810, 7.13, -3.12, -2.23, 0.32
873 | 199811, 6.10, 1.23, -3.25, 0.31
874 | 199812, 6.16, -0.50, -4.19, 0.38
875 | 199901, 3.50, 0.75, -4.60, 0.35
876 | 199902, -4.08, -6.08, 1.92, 0.35
877 | 199903, 3.45, -3.80, -2.74, 0.43
878 | 199904, 4.33, 3.91, 2.46, 0.37
879 | 199905, -2.46, 3.34, 2.35, 0.34
880 | 199906, 4.77, 3.10, -3.19, 0.40
881 | 199907, -3.49, 2.60, -0.44, 0.38
882 | 199908, -1.38, -0.94, -1.87, 0.39
883 | 199909, -2.79, 3.41, -3.49, 0.39
884 | 199910, 6.12, -6.64, -3.37, 0.39
885 | 199911, 3.37, 7.21, -6.12, 0.36
886 | 199912, 7.72, 7.03, -8.33, 0.44
887 | 200001, -4.74, 5.77, -1.88, 0.41
888 | 200002, 2.45, 21.36, -9.59, 0.43
889 | 200003, 5.20, -17.20, 8.13, 0.47
890 | 200004, -6.40, -6.68, 7.26, 0.46
891 | 200005, -4.42, -6.05, 4.75, 0.50
892 | 200006, 4.64, 12.84, -8.42, 0.40
893 | 200007, -2.51, -3.07, 8.31, 0.48
894 | 200008, 7.03, -0.61, -1.39, 0.50
895 | 200009, -5.45, -1.82, 7.17, 0.51
896 | 200010, -2.76, -3.88, 5.71, 0.56
897 | 200011, -10.72, -3.41, 12.30, 0.51
898 | 200012, 1.19, 0.73, 7.61, 0.50
899 | 200101, 3.13, 6.68, -5.07, 0.54
900 | 200102, -10.05, -0.78, 12.47, 0.38
901 | 200103, -7.26, 0.25, 6.42, 0.42
902 | 200104, 7.94, 0.55, -4.67, 0.39
903 | 200105, 0.72, 2.50, 3.36, 0.32
904 | 200106, -1.94, 6.24, -1.12, 0.28
905 | 200107, -2.13, -4.19, 5.21, 0.30
906 | 200108, -6.46, 2.48, 2.31, 0.31
907 | 200109, -9.25, -6.23, 1.45, 0.28
908 | 200110, 2.46, 7.48, -7.65, 0.22
909 | 200111, 7.54, -0.47, 2.21, 0.17
910 | 200112, 1.60, 4.74, 0.84, 0.15
911 | 200201, -1.44, 1.19, 3.44, 0.14
912 | 200202, -2.29, -1.01, 2.16, 0.13
913 | 200203, 4.24, 4.21, 1.06, 0.13
914 | 200204, -5.20, 5.96, 3.88, 0.15
915 | 200205, -1.38, -3.21, 1.53, 0.14
916 | 200206, -7.21, 4.29, -0.05, 0.13
917 | 200207, -8.18, -5.28, -3.85, 0.15
918 | 200208, 0.50, -2.86, 3.28, 0.14
919 | 200209, -10.35, 2.41, 1.45, 0.14
920 | 200210, 7.84, -3.42, -3.94, 0.14
921 | 200211, 5.96, 3.19, -1.26, 0.12
922 | 200212, -5.76, 0.08, 2.14, 0.11
923 | 200301, -2.57, 1.32, -0.81, 0.10
924 | 200302, -1.88, -0.46, -1.37, 0.09
925 | 200303, 1.09, 1.02, -1.94, 0.10
926 | 200304, 8.22, 0.62, 1.15, 0.10
927 | 200305, 6.05, 4.67, 0.39, 0.09
928 | 200306, 1.42, 1.74, 0.11, 0.10
929 | 200307, 2.35, 5.06, -1.24, 0.07
930 | 200308, 2.34, 2.59, 1.53, 0.07
931 | 200309, -1.24, 0.79, 0.17, 0.08
932 | 200310, 6.08, 2.69, 1.97, 0.07
933 | 200311, 1.35, 2.08, 1.78, 0.07
934 | 200312, 4.29, -2.67, 1.60, 0.08
935 | 200401, 2.15, 2.55, 2.49, 0.07
936 | 200402, 1.40, -1.57, 0.88, 0.06
937 | 200403, -1.32, 1.72, 0.27, 0.09
938 | 200404, -1.83, -1.70, -3.07, 0.08
939 | 200405, 1.17, -0.20, -0.25, 0.06
940 | 200406, 1.86, 2.26, 1.18, 0.08
941 | 200407, -4.06, -3.82, 3.24, 0.10
942 | 200408, 0.08, -1.48, 0.97, 0.11
943 | 200409, 1.60, 3.01, 0.00, 0.11
944 | 200410, 1.43, 0.15, -0.22, 0.11
945 | 200411, 4.54, 3.74, 1.41, 0.15
946 | 200412, 3.43, -0.03, -0.22, 0.16
947 | 200501, -2.76, -1.72, 2.06, 0.16
948 | 200502, 1.89, -0.57, 1.54, 0.16
949 | 200503, -1.97, -1.40, 2.04, 0.21
950 | 200504, -2.61, -3.94, 0.07, 0.21
951 | 200505, 3.65, 2.88, -0.64, 0.24
952 | 200506, 0.57, 2.58, 2.83, 0.23
953 | 200507, 3.92, 2.91, -0.79, 0.24
954 | 200508, -1.22, -0.97, 1.32, 0.30
955 | 200509, 0.49, -0.65, 0.71, 0.29
956 | 200510, -2.02, -1.25, 0.42, 0.27
957 | 200511, 3.61, 1.00, -1.16, 0.31
958 | 200512, -0.25, -0.42, 0.20, 0.32
959 | 200601, 3.04, 5.40, 1.08, 0.35
960 | 200602, -0.30, -0.38, -0.34, 0.34
961 | 200603, 1.46, 3.44, 0.60, 0.37
962 | 200604, 0.73, -1.42, 2.34, 0.36
963 | 200605, -3.57, -2.96, 2.41, 0.43
964 | 200606, -0.35, -0.39, 0.85, 0.40
965 | 200607, -0.78, -3.98, 2.60, 0.40
966 | 200608, 2.03, 1.03, -2.06, 0.42
967 | 200609, 1.84, -1.36, 0.08, 0.41
968 | 200610, 3.23, 1.75, -0.31, 0.41
969 | 200611, 1.71, 0.70, 0.14, 0.42
970 | 200612, 0.87, -1.15, 2.73, 0.40
971 | 200701, 1.40, 0.12, -0.68, 0.44
972 | 200702, -1.96, 1.19, -0.14, 0.38
973 | 200703, 0.68, 0.16, -0.97, 0.43
974 | 200704, 3.49, -2.16, -1.45, 0.44
975 | 200705, 3.24, 0.24, -0.65, 0.41
976 | 200706, -1.96, 0.75, -1.05, 0.40
977 | 200707, -3.73, -2.61, -3.71, 0.40
978 | 200708, 0.92, -0.13, -1.86, 0.42
979 | 200709, 3.22, -2.23, -2.21, 0.32
980 | 200710, 1.80, 0.08, -2.98, 0.32
981 | 200711, -4.83, -2.93, -0.94, 0.34
982 | 200712, -0.87, 0.13, -0.55, 0.27
983 | 200801, -6.36, -1.03, 3.97, 0.21
984 | 200802, -3.09, -0.43, -0.84, 0.13
985 | 200803, -0.93, 0.71, 0.30, 0.17
986 | 200804, 4.60, -1.72, -0.94, 0.18
987 | 200805, 1.86, 2.96, -1.43, 0.18
988 | 200806, -8.44, 1.23, -2.71, 0.17
989 | 200807, -0.77, 2.60, 5.42, 0.15
990 | 200808, 1.53, 3.60, 1.59, 0.13
991 | 200809, -9.24, -1.23, 5.91, 0.15
992 | 200810, -17.23, -2.60, -2.30, 0.08
993 | 200811, -7.86, -2.85, -6.31, 0.03
994 | 200812, 1.74, 3.46, 0.14, 0.00
995 | 200901, -8.12, 0.07, -11.29, 0.00
996 | 200902, -10.10, 0.05, -6.95, 0.01
997 | 200903, 8.95, 0.03, 3.47, 0.02
998 | 200904, 10.18, 5.39, 5.36, 0.01
999 | 200905, 5.21, -2.52, 0.28, 0.00
1000 | 200906, 0.43, 2.63, -2.73, 0.01
1001 | 200907, 7.72, 1.87, 4.83, 0.01
1002 | 200908, 3.33, -1.08, 7.63, 0.01
1003 | 200909, 4.08, 2.43, 1.04, 0.01
1004 | 200910, -2.59, -4.35, -4.21, 0.00
1005 | 200911, 5.56, -2.40, -0.34, 0.00
1006 | 200912, 2.75, 6.05, -0.16, 0.01
1007 | 201001, -3.36, 0.40, 0.43, 0.00
1008 | 201002, 3.40, 1.19, 3.22, 0.00
1009 | 201003, 6.31, 1.48, 2.21, 0.01
1010 | 201004, 2.00, 4.87, 2.89, 0.01
1011 | 201005, -7.89, 0.09, -2.44, 0.01
1012 | 201006, -5.57, -1.81, -4.70, 0.01
1013 | 201007, 6.93, 0.20, -0.31, 0.01
1014 | 201008, -4.77, -3.00, -1.90, 0.01
1015 | 201009, 9.54, 3.96, -3.16, 0.01
1016 | 201010, 3.88, 1.13, -2.42, 0.01
1017 | 201011, 0.60, 3.76, -0.96, 0.01
1018 | 201012, 6.82, 0.73, 3.69, 0.01
1019 | 201101, 1.99, -2.50, 0.82, 0.01
1020 | 201102, 3.49, 1.53, 1.27, 0.01
1021 | 201103, 0.46, 2.54, -1.83, 0.01
1022 | 201104, 2.90, -0.38, -2.43, 0.00
1023 | 201105, -1.27, -0.59, -2.12, 0.00
1024 | 201106, -1.75, -0.12, -0.42, 0.00
1025 | 201107, -2.35, -1.27, -0.89, 0.00
1026 | 201108, -5.99, -3.05, -2.36, 0.01
1027 | 201109, -7.59, -3.31, -1.73, 0.00
1028 | 201110, 11.35, 3.28, 0.11, 0.00
1029 | 201111, -0.28, -0.16, -0.45, 0.00
1030 | 201112, 0.74, -0.59, 1.63, 0.00
1031 | 201201, 5.05, 2.04, -0.97, 0.00
1032 | 201202, 4.42, -1.85, 0.43, 0.00
1033 | 201203, 3.11, -0.64, 1.14, 0.00
1034 | 201204, -0.85, -0.42, -0.78, 0.00
1035 | 201205, -6.19, 0.07, -1.07, 0.01
1036 | 201206, 3.89, 0.67, 0.62, 0.00
1037 | 201207, 0.79, -2.75, -0.02, 0.00
1038 | 201208, 2.55, 0.47, 1.30, 0.01
1039 | 201209, 2.73, 0.51, 1.60, 0.01
1040 | 201210, -1.76, -1.15, 3.59, 0.01
1041 | 201211, 0.78, 0.63, -0.84, 0.01
1042 | 201212, 1.18, 1.48, 3.51, 0.01
1043 | 201301, 5.57, 0.34, 0.96, 0.00
1044 | 201302, 1.29, -0.27, 0.11, 0.00
1045 | 201303, 4.03, 0.81, -0.19, 0.00
1046 | 201304, 1.55, -2.37, 0.45, 0.00
1047 | 201305, 2.80, 1.71, 2.63, 0.00
1048 | 201306, -1.20, 1.33, 0.03, 0.00
1049 | 201307, 5.65, 1.87, 0.57, 0.00
1050 | 201308, -2.71, 0.27, -2.69, 0.00
1051 | 201309, 3.77, 2.87, -1.22, 0.00
1052 | 201310, 4.18, -1.52, 1.25, 0.00
1053 | 201311, 3.13, 1.29, 0.32, 0.00
1054 | 201312, 2.81, -0.47, -0.02, 0.00
1055 | 201401, -3.32, 0.89, -2.07, 0.00
1056 | 201402, 4.65, 0.34, -0.31, 0.00
1057 | 201403, 0.43, -1.81, 4.93, 0.00
1058 | 201404, -0.19, -4.18, 1.17, 0.00
1059 | 201405, 2.06, -1.88, -0.13, 0.00
1060 | 201406, 2.61, 3.09, -0.70, 0.00
1061 | 201407, -2.04, -4.30, 0.04, 0.00
1062 | 201408, 4.24, 0.40, -0.45, 0.00
1063 | 201409, -1.97, -3.70, -1.35, 0.00
1064 | 201410, 2.52, 4.20, -1.80, 0.00
1065 | 201411, 2.55, -2.06, -3.10, 0.00
1066 | 201412, -0.06, 2.49, 2.27, 0.00
1067 | 201501, -3.11, -0.56, -3.59, 0.00
1068 | 201502, 6.13, 0.63, -1.86, 0.00
1069 | 201503, -1.12, 3.04, -0.38, 0.00
1070 | 201504, 0.59, -3.06, 1.82, 0.00
1071 | 201505, 1.36, 0.94, -1.15, 0.00
1072 | 201506, -1.53, 2.91, -0.79, 0.00
1073 | 201507, 1.54, -4.17, -4.13, 0.00
1074 | 201508, -6.04, 0.33, 2.77, 0.00
1075 | 201509, -3.07, -2.62, 0.56, 0.00
1076 | 201510, 7.75, -1.89, -0.46, 0.00
1077 | 201511, 0.57, 3.59, -0.42, 0.00
1078 | 201512, -2.17, -2.85, -2.61, 0.01
1079 | 201601, -5.77, -3.42, 2.09, 0.01
1080 | 201602, -0.07, 0.74, -0.57, 0.02
1081 | 201603, 6.96, 0.82, 1.19, 0.02
1082 | 201604, 0.91, 0.76, 3.28, 0.01
1083 | 201605, 1.78, -0.17, -1.66, 0.01
1084 | 201606, -0.05, 0.61, -1.48, 0.02
1085 | 201607, 3.95, 2.49, -1.32, 0.02
1086 | 201608, 0.49, 1.16, 3.18, 0.02
1087 | 201609, 0.25, 2.12, -1.24, 0.02
1088 | 201610, -2.02, -4.40, 4.09, 0.02
1089 | 201611, 4.86, 5.71, 8.21, 0.01
1090 | 201612, 1.82, 0.10, 3.53, 0.03
1091 | 201701, 1.94, -1.18, -2.75, 0.04
1092 | 201702, 3.57, -2.05, -1.67, 0.04
1093 | 201703, 0.17, 1.14, -3.35, 0.03
1094 | 201704, 1.09, 0.73, -2.13, 0.05
1095 | 201705, 1.06, -2.57, -3.78, 0.06
1096 | 201706, 0.78, 2.25, 1.48, 0.06
1097 | 201707, 1.87, -1.50, -0.31, 0.07
1098 | 201708, 0.16, -1.67, -2.10, 0.09
1099 | 201709, 2.51, 4.47, 3.12, 0.09
1100 | 201710, 2.25, -1.94, 0.19, 0.09
1101 | 201711, 3.12, -0.54, -0.03, 0.08
1102 | 201712, 1.06, -1.32, 0.06, 0.09
1103 | 201801, 5.57, -3.12, -1.28, 0.12
1104 | 201802, -3.65, 0.26, -1.04, 0.11
1105 | 201803, -2.35, 4.06, -0.20, 0.11
1106 | 201804, 0.29, 1.13, 0.54, 0.14
1107 | 201805, 2.65, 5.26, -3.22, 0.14
1108 | 201806, 0.48, 1.14, -2.33, 0.14
1109 | 201807, 3.19, -2.22, 0.45, 0.16
1110 | 201808, 3.44, 1.15, -4.00, 0.16
1111 | 201809, 0.06, -2.29, -1.71, 0.15
1112 | 201810, -7.68, -4.74, 3.40, 0.19
1113 | 201811, 1.69, -0.68, 0.28, 0.18
1114 | 201812, -9.57, -2.37, -1.88, 0.20
1115 | 201901, 8.40, 2.88, -0.45, 0.21
1116 | 201902, 3.40, 2.06, -2.71, 0.18
1117 | 201903, 1.10, -3.05, -4.12, 0.19
1118 | 201904, 3.97, -1.72, 2.16, 0.21
1119 | 201905, -6.94, -1.31, -2.37, 0.21
1120 | 201906, 6.93, 0.28, -0.70, 0.18
1121 | 201907, 1.19, -1.93, 0.47, 0.19
1122 | 201908, -2.58, -2.39, -4.79, 0.16
1123 | 201909, 1.43, -0.97, 6.77, 0.18
1124 | 201910, 2.06, 0.29, -1.90, 0.16
1125 | 201911, 3.88, 0.78, -1.99, 0.12
1126 | 201912, 2.77, 0.73, 1.78, 0.14
1127 | 202001, -0.11, -3.13, -6.25, 0.13
1128 | 202002, -8.13, 1.07, -3.80, 0.12
1129 | 202003, -13.39, -4.79, -13.88, 0.13
1130 | 202004, 13.65, 2.45, -1.34, 0.00
1131 | 202005, 5.58, 2.49, -4.85, 0.01
1132 | 202006, 2.46, 2.69, -2.23, 0.01
1133 | 202007, 5.77, -2.30, -1.44, 0.01
1134 | 202008, 7.63, -0.28, -2.88, 0.01
1135 | 202009, -3.63, -0.03, -2.65, 0.01
1136 | 202010, -2.10, 4.27, 4.31, 0.01
1137 | 202011, 12.47, 5.72, 2.15, 0.01
1138 | 202012, 4.63, 4.79, -1.34, 0.01
1139 | 202101, -0.03, 7.50, 2.85, 0.01
1140 | 202102, 2.78, 2.07, 7.10, 0.00
1141 | 202103, 3.08, -2.28, 7.27, 0.00
1142 | 202104, 4.93, -3.20, -0.95, 0.00
1143 | 202105, 0.29, -0.27, 7.13, 0.00
1144 | 202106, 2.75, 1.60, -7.75, 0.00
1145 | 202107, 1.27, -3.94, -1.81, 0.00
1146 | 202108, 2.91, -0.46, -0.10, 0.00
1147 | 202109, -4.37, 0.67, 5.10, 0.00
1148 | 202110, 6.65, -2.37, -0.45, 0.00
1149 | 202111, -1.55, -1.32, -0.41, 0.00
1150 | 202112, 3.10, -1.64, 3.22, 0.01
1151 | 202201, -6.25, -5.96, 12.80, 0.00
1152 | 202202, -2.29, 2.19, 3.10, 0.00
1153 | 202203, 3.06, -1.66, -1.76, 0.01
1154 | 202204, -9.46, -1.38, 6.17, 0.01
1155 | 202205, -0.34, -1.96, 8.59, 0.03
1156 | 202206, -8.44, 2.18, -6.10, 0.06
1157 | 202207, 9.57, 2.80, -4.03, 0.08
1158 | 202208, -3.77, 1.40, 0.29, 0.19
1159 | 202209, -9.35, -0.82, 0.02, 0.19
1160 | 202210, 7.83, 0.07, 8.06, 0.23
1161 | 202211, 4.61, -3.51, 1.41, 0.29
1162 | 202212, -6.41, -0.69, 1.34, 0.33
1163 | 202301, 6.64, 5.01, -4.00, 0.35
1164 | 202302, -2.59, 1.17, -0.83, 0.34
1165 | 202303, 2.51, -5.51, -8.87, 0.36
1166 | 202304, 0.61, -3.36, -0.05, 0.35
1167 | 202305, 0.35, 1.60, -7.74, 0.36
1168 | 202306, 6.47, 1.55, -0.20, 0.40
1169 | 202307, 3.21, 2.05, 4.11, 0.45
1170 | 202308, -2.39, -3.20, -1.08, 0.45
1171 | 202309, -5.24, -2.49, 1.45, 0.43
1172 | 202310, -3.18, -3.88, 0.19, 0.47
1173 | 202311, 8.83, -0.03, 1.66, 0.44
1174 | 202312, 4.87, 6.36, 4.92, 0.43
1175 | 202401, 0.70, -5.02, -2.47, 0.47
1176 | 202402, 5.07, -0.22, -3.52, 0.42
1177 | 202403, 2.83, -2.51, 4.22, 0.43
1178 | 202404, -4.67, -2.39, -0.52, 0.47
1179 | 202405, 4.34, 0.78, -1.67, 0.44
1180 | 202406, 2.77, -3.06, -3.31, 0.41
1181 | 202407, 1.24, 6.80, 5.74, 0.45
1182 | 202408, 1.61, -3.55, -1.13, 0.48
1183 | 202409, 1.74, -0.17, -2.59, 0.40
1184 | 202410, -0.97, -1.01, 0.89, 0.39
1185 | 202411, 6.50, 4.63, -0.05, 0.40
1186 |
1187 | Annual Factors: January-December
1188 | ,Mkt-RF,SMB,HML,RF
1189 | 1927, 29.47, -2.04, -4.54, 3.12
1190 | 1928, 35.39, 4.51, -6.17, 3.56
1191 | 1929, -19.54, -30.70, 11.67, 4.75
1192 | 1930, -31.23, -5.17, -11.54, 2.41
1193 | 1931, -45.11, 3.70, -13.95, 1.07
1194 | 1932, -9.39, 4.40, 11.11, 0.96
1195 | 1933, 57.05, 45.45, 32.39, 0.30
1196 | 1934, 3.02, 25.15, -27.67, 0.16
1197 | 1935, 44.96, 10.60, 10.23, 0.17
1198 | 1936, 32.07, 17.60, 34.55, 0.18
1199 | 1937, -34.96, -14.14, -4.09, 0.31
1200 | 1938, 28.48, 9.28, -12.02, -0.02
1201 | 1939, 2.70, 5.86, -19.23, 0.02
1202 | 1940, -7.14, 0.76, -0.85, 0.00
1203 | 1941, -10.53, -4.04, 11.13, 0.06
1204 | 1942, 16.20, 4.96, 19.82, 0.27
1205 | 1943, 27.96, 33.18, 38.71, 0.35
1206 | 1944, 20.97, 17.90, 15.92, 0.33
1207 | 1945, 38.38, 25.38, 10.80, 0.33
1208 | 1946, -6.73, -3.99, 3.11, 0.35
1209 | 1947, 2.95, -6.99, 9.87, 0.50
1210 | 1948, 1.07, -9.11, 3.74, 0.81
1211 | 1949, 19.12, 3.75, -4.25, 1.10
1212 | 1950, 28.82, 1.08, 27.02, 1.20
1213 | 1951, 19.22, -5.22, -5.67, 1.49
1214 | 1952, 11.80, -6.76, 3.31, 1.66
1215 | 1953, -1.05, -1.15, -7.75, 1.82
1216 | 1954, 49.35, -2.14, 26.05, 0.86
1217 | 1955, 23.75, -5.88, 4.82, 1.57
1218 | 1956, 5.90, -0.95, -1.99, 2.46
1219 | 1957, -13.16, -2.77, -6.11, 3.14
1220 | 1958, 43.45, 14.50, 13.48, 1.54
1221 | 1959, 9.76, 5.44, 1.70, 2.95
1222 | 1960, -1.46, -2.78, -4.62, 2.66
1223 | 1961, 24.81, 1.28, 5.42, 2.13
1224 | 1962, -12.90, -8.29, 8.92, 2.73
1225 | 1963, 17.84, -6.18, 15.69, 3.12
1226 | 1964, 12.54, -0.82, 9.72, 3.54
1227 | 1965, 10.52, 22.08, 7.11, 3.93
1228 | 1966, -13.51, 2.83, -0.86, 4.76
1229 | 1967, 24.49, 50.49, -8.14, 4.21
1230 | 1968, 8.79, 24.18, 18.56, 5.21
1231 | 1969, -17.54, -13.99, -10.05, 6.58
1232 | 1970, -6.49, -11.87, 21.52, 6.52
1233 | 1971, 11.78, 5.98, -11.30, 4.39
1234 | 1972, 13.05, -12.16, 1.80, 3.84
1235 | 1973, -26.18, -23.51, 17.47, 6.93
1236 | 1974, -35.75, -0.81, 9.96, 8.00
1237 | 1975, 32.44, 15.41, 9.14, 5.80
1238 | 1976, 21.91, 14.67, 24.38, 5.08
1239 | 1977, -8.26, 22.62, 7.46, 5.12
1240 | 1978, 1.03, 14.42, 0.67, 7.18
1241 | 1979, 13.09, 21.27, -2.33, 10.38
1242 | 1980, 22.13, 5.66, -24.61, 11.24
1243 | 1981, -18.13, 7.11, 25.04, 14.71
1244 | 1982, 10.66, 8.68, 13.29, 10.54
1245 | 1983, 13.75, 14.00, 20.52, 8.80
1246 | 1984, -6.05, -8.22, 19.13, 9.85
1247 | 1985, 24.91, 0.55, 1.29, 7.72
1248 | 1986, 10.12, -9.55, 9.34, 6.16
1249 | 1987, -3.87, -10.95, -1.70, 5.47
1250 | 1988, 11.55, 5.78, 14.99, 6.35
1251 | 1989, 20.49, -12.86, -4.03, 8.37
1252 | 1990, -13.95, -13.99, -10.03, 7.81
1253 | 1991, 29.18, 16.08, -14.72, 5.60
1254 | 1992, 6.23, 7.74, 24.49, 3.51
1255 | 1993, 8.21, 6.37, 16.96, 2.90
1256 | 1994, -4.10, -0.46, -0.89, 3.90
1257 | 1995, 31.22, -9.75, 5.97, 5.60
1258 | 1996, 15.96, -4.45, 8.67, 5.21
1259 | 1997, 25.96, -7.75, 19.00, 5.26
1260 | 1998, 19.46, -25.27, -10.43, 4.86
1261 | 1999, 20.57, 15.35, -31.66, 4.68
1262 | 2000, -17.60, -4.60, 44.98, 5.89
1263 | 2001, -15.21, 18.16, 18.52, 3.83
1264 | 2002, -22.76, 4.39, 8.09, 1.65
1265 | 2003, 30.75, 26.49, 4.67, 1.02
1266 | 2004, 10.72, 4.45, 7.61, 1.20
1267 | 2005, 3.09, -2.36, 9.41, 2.98
1268 | 2006, 10.60, 0.09, 11.93, 4.80
1269 | 2007, 1.04, -7.44, -17.18, 4.66
1270 | 2008, -38.34, 2.40, 1.05, 1.60
1271 | 2009, 28.26, 9.18, -9.65, 0.10
1272 | 2010, 17.37, 14.15, -5.15, 0.12
1273 | 2011, 0.44, -5.73, -8.41, 0.04
1274 | 2012, 16.27, -1.40, 10.00, 0.06
1275 | 2013, 35.20, 7.72, 2.60, 0.02
1276 | 2014, 11.71, -7.82, -1.45, 0.02
1277 | 2015, 0.09, -4.00, -9.67, 0.02
1278 | 2016, 13.30, 6.77, 22.71, 0.20
1279 | 2017, 21.51, -5.09, -13.59, 0.80
1280 | 2018, -6.94, -3.11, -9.77, 1.83
1281 | 2019, 28.28, -6.13, -10.37, 2.15
1282 | 2020, 23.66, 12.72, -46.10, 0.45
1283 | 2021, 23.57, -3.78, 25.39, 0.04
1284 | 2022, -21.58, -7.04, 25.97, 1.43
1285 | 2023, 21.69, -3.28, -13.70, 4.95
1286 |
1287 | Copyright 2024 Eugene F. Fama and Kenneth R. French
1288 |
--------------------------------------------------------------------------------
/jupyter/search_mccall_mean_preserving_spread.ipynb:
--------------------------------------------------------------------------------
1 | {
2 | "cells": [
3 | {
4 | "cell_type": "markdown",
5 | "id": "8aefd269",
6 | "metadata": {},
7 | "source": [
8 | "# Mean-preserving spread in the McCall (1970) model\n",
9 | "\n"
10 | ]
11 | },
12 | {
13 | "cell_type": "markdown",
14 | "id": "1125cada",
15 | "metadata": {},
16 | "source": [
17 | "In this problem, we study the solution to the recursive problem\n",
18 | "\n",
19 | "\\begin{equation}\n",
20 | "V\\left( w\\right) =\\max_{\\left\\{ \\text{accept, reject}\\right\\} }\\left\\{\n",
21 | "\\frac{w}{1-\\beta} ,c+\\beta \\int_{0}^{B}V\\left( w^{\\prime }\\right)\n",
22 | "dF\\left( w^{\\prime }\\right) \\right\\} .\n",
23 | "\\end{equation}"
24 | ]
25 | },
26 | {
27 | "cell_type": "markdown",
28 | "id": "39591d6e",
29 | "metadata": {},
30 | "source": [
31 | "The optimal solution is characterized by a reservation wage $\\bar{w}$ that satisfies\n",
32 | "\n",
33 | "\\begin{equation}\n",
34 | "\\bar{w}-c=\\frac{\\beta }{1-\\beta }\\int_{\\bar{w}}^{B}\\left( w^{\\prime }-\\bar{w}%\n",
35 | "\\right) dF\\left( w^{\\prime }\\right) \\text{.} \n",
36 | "\\end{equation}\n",
37 | "\n",
38 | "Defining the function\n",
39 | "\n",
40 | "$$g(w) = w - c - \\frac{\\beta }{1-\\beta }\\int_{{w}}^{B}\\left( w^{\\prime }-{w}%\n",
41 | "\\right) dF\\left( w^{\\prime }\\right) \\text{,} $$\n",
42 | "\n",
43 | "the reservation wage $\\bar{w}$ is the solution to $g(w) = 0$."
44 | ]
45 | },
46 | {
47 | "cell_type": "markdown",
48 | "id": "848aafb7",
49 | "metadata": {},
50 | "source": [
51 | "We are studying the sensitivity of the reservation wage to changes in the mean-preserving spread, modeled via increases in variance of Beta-distributed offer distribution. In particular, when the wage offer\n",
52 | "\n",
53 | "$$ W\\sim Beta\\left(\\alpha_w, \\beta_w\\right) $$\n",
54 | "\n",
55 | "then\n",
56 | "\n",
57 | "$$ E[W] = \\frac{\\alpha_w}{\\alpha_w + \\beta_w} \\qquad Var[W] = \\frac{\\alpha_w \\beta_w}{\\left(\\alpha_w+\\beta_w\\right)^2\\left(\\alpha_w + \\beta_w +1\\right)} $$\n",
58 | "\n",
59 | "so decreasing both $\\alpha_w$ and $\\beta_w$ proportionally preserves the mean, while increasing the variance of the distribution."
60 | ]
61 | },
62 | {
63 | "cell_type": "markdown",
64 | "id": "ec8fbb81",
65 | "metadata": {},
66 | "source": [
67 | "Define the local folder where graphs will be stored, and from which data will be retrieved. If you are running the notebook within Google Colab, use the second option."
68 | ]
69 | },
70 | {
71 | "cell_type": "code",
72 | "execution_count": 1,
73 | "id": "5e64b5bc",
74 | "metadata": {},
75 | "outputs": [],
76 | "source": [
77 | "graphfolder = \"graphs/\"\n",
78 | "datafolder = \"data/\"\n",
79 | "\n",
80 | "# options for Google Colab (uncomment the following lines)\n",
81 | "# graphfolder = \"gdrive/MyDrive/graphs/\"\n",
82 | "# datafolder = \"gdrive/MyDrive/data/\""
83 | ]
84 | },
85 | {
86 | "cell_type": "markdown",
87 | "id": "22a40cb4",
88 | "metadata": {},
89 | "source": [
90 | "Import relevant packages."
91 | ]
92 | },
93 | {
94 | "cell_type": "code",
95 | "execution_count": 2,
96 | "id": "dcb334fe",
97 | "metadata": {},
98 | "outputs": [
99 | {
100 | "name": "stdout",
101 | "output_type": "stream",
102 | "text": [
103 | "Root package econutil imported.\n"
104 | ]
105 | }
106 | ],
107 | "source": [
108 | "# render graphs within notebook - may want to uncomment the next line for older versions of Jupyter\n",
109 | "# %matplotlib inline\n",
110 | "\n",
111 | "# import packages\n",
112 | "import numpy as np\n",
113 | "from scipy import stats\n",
114 | "\n",
115 | "# load econutil package with some frequently used functions\n",
116 | "import econutil as ec"
117 | ]
118 | },
119 | {
120 | "cell_type": "markdown",
121 | "id": "3476153d",
122 | "metadata": {},
123 | "source": [
124 | "Specify the quadrature method to numerically evaluate the integral in function $g(w)$."
125 | ]
126 | },
127 | {
128 | "cell_type": "code",
129 | "execution_count": 3,
130 | "id": "5d9069e0",
131 | "metadata": {},
132 | "outputs": [],
133 | "source": [
134 | "# simple_quadrature constructs an equidistant grid quadrature rule on interval r, either from density f or cdf F\n",
135 | "# the functions f or F need to be provided as arguments, param is the parameter vector (can be empty)\n",
136 | "def simple_quadrature(r=[0,1],I=10,f=\"\",F=\"\",param=\"\"):\n",
137 | " if F:\n",
138 | " # construct weights from F\n",
139 | " nodes = np.linspace(r[0],r[1],I)\n",
140 | " weights = np.linspace(r[0],r[1],I)\n",
141 | " weights[1:-1] = F((nodes[2:]+nodes[1:-1])/2,param) - F((nodes[1:-1]+nodes[:-2])/2,param)\n",
142 | " weights[0] = F((nodes[1]+nodes[0])/2,param) - F(nodes[0],param)\n",
143 | " weights[-1] = F(nodes[-1],param) - F((nodes[-1]+nodes[-2])/2,param)\n",
144 | " elif f:\n",
145 | " nodes = np.linspace(r[0],r[1],I)\n",
146 | " weights = f(nodes,param)\n",
147 | " # nodes at boundaries receive half weight\n",
148 | " weights[0] /= 2\n",
149 | " weights[-1] /= 2\n",
150 | " # renormalize weights to sum up to one\n",
151 | " weights = weights/sum(weights)\n",
152 | " else:\n",
153 | " print('Neither pdf nor cdf were defined.')\n",
154 | " \n",
155 | " return nodes, weights"
156 | ]
157 | },
158 | {
159 | "cell_type": "markdown",
160 | "id": "f98e917c",
161 | "metadata": {},
162 | "source": [
163 | "Define the Newton–Raphson method for finding the reservation wage by solving $g(w)=0$."
164 | ]
165 | },
166 | {
167 | "cell_type": "code",
168 | "execution_count": 4,
169 | "id": "0ff87901",
170 | "metadata": {},
171 | "outputs": [],
172 | "source": [
173 | "def reservation_wage_newton_raphson(model):\n",
174 | " \n",
175 | " B = model[\"B\"]\n",
176 | " I = model[\"I\"]\n",
177 | " F_cdf = model[\"F_cdf\"]\n",
178 | " F_param = model[\"F_param\"]\n",
179 | " bet = model[\"beta\"]\n",
180 | " c = model[\"c\"]\n",
181 | " \n",
182 | " wold,wnew = 0, B/2\n",
183 | " eps = 10**(-10)\n",
184 | " iters = 0\n",
185 | " while abs(wold-wnew) > eps:\n",
186 | " wold = wnew\n",
187 | " w_nodes,weights = simple_quadrature(r=[wold,B],I = I,F=F_cdf,param=F_param)\n",
188 | " g = wold - c - bet/(1-bet)*((w_nodes-wold)@weights)\n",
189 | " dg = (1-bet*F_cdf(wold,F_param))/(1-bet)\n",
190 | " \n",
191 | " wnew = wold - g/dg\n",
192 | " iters += 1\n",
193 | " \n",
194 | " return wnew,iters"
195 | ]
196 | },
197 | {
198 | "cell_type": "markdown",
199 | "id": "c789fbc1",
200 | "metadata": {},
201 | "source": [
202 | "Solve for reservation wages as a function of parameters of the Beta distribution of wages offers."
203 | ]
204 | },
205 | {
206 | "cell_type": "code",
207 | "execution_count": 5,
208 | "id": "82ce95db",
209 | "metadata": {},
210 | "outputs": [],
211 | "source": [
212 | "# F is beta cdf on [0,1], with parameters [alpha,beta]\n",
213 | "def F_beta(w,param):\n",
214 | " alph = param[0]\n",
215 | " bet = param[1]\n",
216 | " return stats.beta.cdf(w,alph,bet)\n",
217 | "\n",
218 | "# define baseline model parameters\n",
219 | "model = {\"beta\":0.96, \"B\": 1, \"c\": 0.2, \"F_cdf\": F_beta, \"I\" : 1000, \"F_param\": [10,10]}\n",
220 | "\n",
221 | "# choose a grid of decreasing values alpha_w, beta_w from 100 to 0.01 (log-spaced grid spaces the values better for this purpose)\n",
222 | "N = 50\n",
223 | "alpha_vec = np.logspace(2,-2,N)\n",
224 | "beta_vec = np.logspace(2,-2,N)\n",
225 | "wbar_vec = np.zeros(N)\n",
226 | "Var_vec = alpha_vec*beta_vec / ((alpha_vec+beta_vec)**2*(alpha_vec+beta_vec+1))\n",
227 | "\n",
228 | "for i,alph in enumerate(alpha_vec):\n",
229 | " bet = beta_vec[i]\n",
230 | " model[\"F_param\"] = [alph,bet]\n",
231 | " wbar,it = reservation_wage_newton_raphson(model)\n",
232 | " wbar_vec[i] = wbar"
233 | ]
234 | },
235 | {
236 | "cell_type": "markdown",
237 | "id": "550f808b",
238 | "metadata": {},
239 | "source": [
240 | "Plot the resulting relationship between the variance of the offer distribution and the reservation wage."
241 | ]
242 | },
243 | {
244 | "cell_type": "code",
245 | "execution_count": 6,
246 | "id": "d5f4d968",
247 | "metadata": {},
248 | "outputs": [
249 | {
250 | "name": "stdout",
251 | "output_type": "stream",
252 | "text": [
253 | "Plotting the reservation wage as a function of the variance of the offer distribution.\n"
254 | ]
255 | },
256 | {
257 | "data": {
258 | "image/png": "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",
259 | "text/plain": [
260 | ""
261 | ]
262 | },
263 | "metadata": {},
264 | "output_type": "display_data"
265 | }
266 | ],
267 | "source": [
268 | "param = {'figsize' : [9,6], 'fontsize': 16, 'subplots': [1,1],\n",
269 | " 'title': '',\n",
270 | " 'xlim': [0,0.25], 'ylim': [0,1],\n",
271 | " 'xlabel': 'variance of the offer distribution', 'ylabel': 'reservation wage',\n",
272 | " 'ylogscale': False,\n",
273 | " 'showgrid': True, 'highlightzero': False,\n",
274 | " 'showNBERrecessions' : False, 'showNBERrecessions_y': [0,7]}\n",
275 | "\n",
276 | "print('Plotting the reservation wage as a function of the variance of the offer distribution.')\n",
277 | "fig,ax = ec.GenerateTSPlot(param)\n",
278 | "\n",
279 | "ax.plot(Var_vec,wbar_vec,linewidth=3,color=ec.tolColor['tolVibrantBlue'],linestyle='solid');\n",
280 | "\n",
281 | "fig.set_facecolor('#FFFFFF')\n",
282 | "fig.savefig(graphfolder + 'search_mccall_mean_preserving_spread.pdf',bbox_inches='tight')"
283 | ]
284 | }
285 | ],
286 | "metadata": {
287 | "kernelspec": {
288 | "display_name": "base",
289 | "language": "python",
290 | "name": "python3"
291 | },
292 | "language_info": {
293 | "codemirror_mode": {
294 | "name": "ipython",
295 | "version": 3
296 | },
297 | "file_extension": ".py",
298 | "mimetype": "text/x-python",
299 | "name": "python",
300 | "nbconvert_exporter": "python",
301 | "pygments_lexer": "ipython3",
302 | "version": "3.12.7"
303 | }
304 | },
305 | "nbformat": 4,
306 | "nbformat_minor": 5
307 | }
308 |
--------------------------------------------------------------------------------