diff --git a/Examples/1-Access/EX-1.01.01-GetData.ipynb b/Examples/1-Access/EX-1.01.01-GetData.ipynb index d53b108..86a062c 100644 --- a/Examples/1-Access/EX-1.01.01-GetData.ipynb +++ b/Examples/1-Access/EX-1.01.01-GetData.ipynb @@ -31,13 +31,13 @@ "***get_data()*** parameters: \n", "- ***universe***: Single instrument or list of instruments to request\n", " - Type: String or list\n", - " - Optionnal: No \n", + " - Optional: No \n", "- ***fields***: Single field or list of fields to request\n", " - Type: String or list\n", - " - Optionnal: Yes \n", - "- ***parameters***: Additional parameters specific applied to Fundamental & Reference fields (a.k.a. \"TR.\" fields)\n", + " - Optional: Yes \n", + "- ***parameters***: Additional parameters for Fundamental & Reference fields (\"TR.\" fields)\n", " - Type: Dictionary\n", - " - Optionnal: Yes \n", + " - Optional: Yes \n", " \n", "**get_data()** returns a pandas.DataFrame with fields in columns and instruments as row index. \n", "It raises exceptions on error and when no data is available" @@ -91,7 +91,7 @@ }, { "cell_type": "code", - "execution_count": 2, + "execution_count": 1, "metadata": {}, "outputs": [], "source": [ @@ -109,16 +109,16 @@ }, { "cell_type": "code", - "execution_count": 3, + "execution_count": 2, "metadata": {}, "outputs": [ { "data": { "text/plain": [ - "" + "" ] }, - "execution_count": 3, + "execution_count": 2, "metadata": {}, "output_type": "execute_result" } @@ -143,7 +143,7 @@ }, { "cell_type": "code", - "execution_count": 4, + "execution_count": 5, "metadata": {}, "outputs": [ { @@ -168,76 +168,76 @@ " \n", " \n", " Instrument\n", - " SEE_RIC\n", - " ASK_TIM_NS\n", - " ACT_FLAG5\n", - " CRS_SEQNO\n", - " QUOTIM_MS\n", - " HLT_RSM_NS\n", - " GEN_VAL10\n", - " IRGPRC\n", - " HLT_RSM_MS\n", + " OFFBKTRDID\n", + " COLID_5\n", + " LIST_STAT\n", + " INT_AUC\n", + " INSTRD_DT\n", + " TURN_BLOCK\n", + " OPN_AUC\n", + " MMT_CLASS\n", + " ELG_TNOV\n", " ...\n", - " OF_NUM_MOV\n", - " TOT_MOVES\n", - " IMB_ACT_TP\n", - " LIST_DATE\n", - " OFFBK_HIGH\n", - " OFF_CD_IN2\n", - " BLKTIM_NS\n", - " HALT_RSN\n", - " PROV_SYMB\n", - " CAN_PRC\n", + " SEQ_NO\n", + " LONGLINK1\n", + " BLK_TRDID\n", + " HST_CLOSE\n", + " BCAST_REF\n", + " PDACVOL\n", + " PRICE_METH\n", + " 52W_LDAT\n", + " PDTRDP_XID\n", + " PERIOD_CDE\n", " \n", " \n", " \n", " \n", " 0\n", " LSEG.L\n", + " 755516009488724032\n", + " 15\n", + " 1\n", " None\n", - " 14:39:41.762\n", - " A\n", - " None\n", - " 52781762\n", - " 08:20:00.015\n", - " 88.11\n", " <NA>\n", - " 08:20:00.015\n", + " None\n", + " 8124.0\n", + " 12-------PH---\n", + " 412398290.0\n", " ...\n", - " 158\n", - " 3641\n", - " 6\n", - " 2006-05-15\n", - " 6790.0\n", - " 25\n", + " 142158\n", + " 0#.SET1\n", " None\n", - " 1\n", - " 5864\n", - " <NA>\n", + " 8140\n", + " LSEG.L\n", + " 2726\n", + " 28\n", + " 2022-02-24\n", + " XLON\n", + " T\n", " \n", " \n", " 1\n", " VOD.L\n", + " 440133375553634416\n", + " 15\n", + " 1\n", " None\n", - " 14:39:52.714149\n", - " R\n", + " 2022-04-05\n", " None\n", - " 52793124\n", - " 08:20:00.0121\n", - " 25.77\n", - " 113.0059\n", - " 08:20:00.012\n", + " 124.36\n", + " 45------MP----\n", + " 1401973070.9\n", " ...\n", - " 743\n", - " 10391\n", - " 6\n", - " 2014-02-24\n", - " 114.354\n", - " 25\n", + " 206979\n", + " 0#.SET1\n", " None\n", - " 1\n", - " 133215\n", - " 113.0059\n", + " 126\n", + " VOD.L\n", + " 1109\n", + " 28\n", + " 2021-11-03\n", + " XLON\n", + " T\n", " \n", " \n", "\n", @@ -245,26 +245,26 @@ "" ], "text/plain": [ - " Instrument SEE_RIC ASK_TIM_NS ACT_FLAG5 CRS_SEQNO QUOTIM_MS \\\n", - "0 LSEG.L None 14:39:41.762 A None 52781762 \n", - "1 VOD.L None 14:39:52.714149 R None 52793124 \n", + " Instrument OFFBKTRDID COLID_5 LIST_STAT INT_AUC INSTRD_DT \\\n", + "0 LSEG.L 755516009488724032 15 1 None \n", + "1 VOD.L 440133375553634416 15 1 None 2022-04-05 \n", "\n", - " HLT_RSM_NS GEN_VAL10 IRGPRC HLT_RSM_MS ... OF_NUM_MOV \\\n", - "0 08:20:00.015 88.11 08:20:00.015 ... 158 \n", - "1 08:20:00.0121 25.77 113.0059 08:20:00.012 ... 743 \n", + " TURN_BLOCK OPN_AUC MMT_CLASS ELG_TNOV ... SEQ_NO LONGLINK1 \\\n", + "0 None 8124.0 12-------PH--- 412398290.0 ... 142158 0#.SET1 \n", + "1 None 124.36 45------MP---- 1401973070.9 ... 206979 0#.SET1 \n", "\n", - " TOT_MOVES IMB_ACT_TP LIST_DATE OFFBK_HIGH OFF_CD_IN2 BLKTIM_NS \\\n", - "0 3641 6 2006-05-15 6790.0 25 None \n", - "1 10391 6 2014-02-24 114.354 25 None \n", + " BLK_TRDID HST_CLOSE BCAST_REF PDACVOL PRICE_METH 52W_LDAT PDTRDP_XID \\\n", + "0 None 8140 LSEG.L 2726 28 2022-02-24 XLON \n", + "1 None 126 VOD.L 1109 28 2021-11-03 XLON \n", "\n", - " HALT_RSN PROV_SYMB CAN_PRC \n", - "0 1 5864 \n", - "1 1 133215 113.0059 \n", + " PERIOD_CDE \n", + "0 T \n", + "1 T \n", "\n", "[2 rows x 387 columns]" ] }, - "execution_count": 4, + "execution_count": 5, "metadata": {}, "output_type": "execute_result" } @@ -275,7 +275,7 @@ }, { "cell_type": "code", - "execution_count": 5, + "execution_count": 6, "metadata": {}, "outputs": [ { @@ -308,14 +308,14 @@ " \n", " 0\n", " LSEG.L\n", - " 6764.0\n", - " 6770.0\n", + " 8314.0\n", + " 8318.0\n", " \n", " \n", " 1\n", " VOD.L\n", - " 113.94\n", - " 113.98\n", + " 123.5\n", + " 123.52\n", " \n", " \n", "\n", @@ -323,11 +323,11 @@ ], "text/plain": [ " Instrument BID ASK\n", - "0 LSEG.L 6764.0 6770.0\n", - "1 VOD.L 113.94 113.98" + "0 LSEG.L 8314.0 8318.0\n", + "1 VOD.L 123.5 123.52" ] }, - "execution_count": 5, + "execution_count": 6, "metadata": {}, "output_type": "execute_result" } @@ -348,7 +348,7 @@ }, { "cell_type": "code", - "execution_count": 6, + "execution_count": 7, "metadata": {}, "outputs": [ { @@ -373,7 +373,6 @@ " \n", " \n", " Instrument\n", - " Date\n", " Revenue\n", " \n", " \n", @@ -381,13 +380,11 @@ " \n", " 0\n", " LSEG.L\n", - " 2020-12-31T00:00:00Z\n", - " 2444000000\n", + " 6740000000\n", " \n", " \n", " 1\n", " VOD.L\n", - " 2021-03-31T00:00:00Z\n", " 43809000000\n", " \n", " \n", @@ -395,12 +392,12 @@ "" ], "text/plain": [ - " Instrument Date Revenue\n", - "0 LSEG.L 2020-12-31T00:00:00Z 2444000000\n", - "1 VOD.L 2021-03-31T00:00:00Z 43809000000" + " Instrument Revenue\n", + "0 LSEG.L 6740000000\n", + "1 VOD.L 43809000000" ] }, - "execution_count": 6, + "execution_count": 7, "metadata": {}, "output_type": "execute_result" } @@ -421,7 +418,7 @@ }, { "cell_type": "code", - "execution_count": 7, + "execution_count": 8, "metadata": {}, "outputs": [ { @@ -448,7 +445,6 @@ " Instrument\n", " BID\n", " ASK\n", - " Date\n", " Revenue\n", " \n", " \n", @@ -456,17 +452,15 @@ " \n", " 0\n", " LSEG.L\n", - " 6764.0\n", - " 6770.0\n", - " 2020-12-31T00:00:00Z\n", - " 2444000000\n", + " 8314.0\n", + " 8318.0\n", + " 6740000000\n", " \n", " \n", " 1\n", " VOD.L\n", - " 113.94\n", - " 113.98\n", - " 2021-03-31T00:00:00Z\n", + " 123.5\n", + " 123.52\n", " 43809000000\n", " \n", " \n", @@ -474,12 +468,12 @@ "" ], "text/plain": [ - " Instrument BID ASK Date Revenue\n", - "0 LSEG.L 6764.0 6770.0 2020-12-31T00:00:00Z 2444000000\n", - "1 VOD.L 113.94 113.98 2021-03-31T00:00:00Z 43809000000" + " Instrument BID ASK Revenue\n", + "0 LSEG.L 8314.0 8318.0 6740000000\n", + "1 VOD.L 123.5 123.52 43809000000" ] }, - "execution_count": 7, + "execution_count": 8, "metadata": {}, "output_type": "execute_result" } @@ -500,7 +494,7 @@ }, { "cell_type": "code", - "execution_count": 8, + "execution_count": 9, "metadata": {}, "outputs": [ { @@ -525,7 +519,6 @@ " \n", " \n", " Instrument\n", - " Date\n", " Price Target - Mean\n", " \n", " \n", @@ -533,26 +526,24 @@ " \n", " 0\n", " LSEG.L\n", - " 2021-12-14T00:00:00Z\n", - " 8835.64286\n", + " 8963.3125\n", " \n", " \n", " 1\n", " VOD.L\n", - " 2021-12-14T00:00:00Z\n", - " 166.09836\n", + " 164.67183\n", " \n", " \n", "\n", "" ], "text/plain": [ - " Instrument Date Price Target - Mean\n", - "0 LSEG.L 2021-12-14T00:00:00Z 8835.64286\n", - "1 VOD.L 2021-12-14T00:00:00Z 166.09836" + " Instrument Price Target - Mean\n", + "0 LSEG.L 8963.3125\n", + "1 VOD.L 164.67183" ] }, - "execution_count": 8, + "execution_count": 9, "metadata": {}, "output_type": "execute_result" } @@ -573,7 +564,7 @@ }, { "cell_type": "code", - "execution_count": 9, + "execution_count": 10, "metadata": {}, "outputs": [ { @@ -598,7 +589,6 @@ " \n", " \n", " Instrument\n", - " Date\n", " Enterprise Value (Daily Time Series)\n", " Enterprise Value To Sales (Daily Time Series Ratio)\n", " \n", @@ -607,32 +597,30 @@ " \n", " 0\n", " LSEG.L\n", - " 2020-12-31T00:00:00Z\n", - " 56552769131.751801\n", - " 14.755207\n", + " 79032976072.214\n", + " 11.236477984\n", " \n", " \n", " 1\n", " VOD.L\n", - " 2020-12-31T00:00:00Z\n", - " 140836307372.359009\n", - " 2.037394\n", + " 135558346326.843\n", + " 2.103461103\n", " \n", " \n", "\n", "" ], "text/plain": [ - " Instrument Date Enterprise Value (Daily Time Series) \\\n", - "0 LSEG.L 2020-12-31T00:00:00Z 56552769131.751801 \n", - "1 VOD.L 2020-12-31T00:00:00Z 140836307372.359009 \n", + " Instrument Enterprise Value (Daily Time Series) \\\n", + "0 LSEG.L 79032976072.214 \n", + "1 VOD.L 135558346326.843 \n", "\n", - " Enterprise Value To Sales (Daily Time Series Ratio) \n", - "0 14.755207 \n", - "1 2.037394 " + " Enterprise Value To Sales (Daily Time Series Ratio) \n", + "0 11.236477984 \n", + "1 2.103461103 " ] }, - "execution_count": 9, + "execution_count": 10, "metadata": {}, "output_type": "execute_result" } @@ -645,6 +633,231 @@ ")" ] }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "### Fundamental fields history (Not recommended - Please use get_history instead)\n", + "_**Important note:** get\\_data can be used with SDate and EDate parameters to retrieve fundamental time series. However, this practice (shown in the following two examples) is not recommended because it can cause alignment issues. This is due to the nature of get\\_data which was designed for retrieving current data. For time series please use get\\_history()._" + ] + }, + { + "cell_type": "code", + "execution_count": 13, + "metadata": {}, + "outputs": [ + { + "data": { + "text/html": [ + "
\n", + "\n", + "\n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
InstrumentDateRevenue
0LSEG.L2021-12-316740000000
1LSEG.L2020-12-312030000000
2LSEG.L2019-12-312314000000
3LSEG.L2018-12-312135000000
4VOD.L2022-03-3145580000000
5VOD.L2021-03-3143809000000
6VOD.L2020-03-3144974000000
7VOD.L2019-03-3143666000000
\n", + "
" + ], + "text/plain": [ + " Instrument Date Revenue\n", + "0 LSEG.L 2021-12-31 6740000000\n", + "1 LSEG.L 2020-12-31 2030000000\n", + "2 LSEG.L 2019-12-31 2314000000\n", + "3 LSEG.L 2018-12-31 2135000000\n", + "4 VOD.L 2022-03-31 45580000000\n", + "5 VOD.L 2021-03-31 43809000000\n", + "6 VOD.L 2020-03-31 44974000000\n", + "7 VOD.L 2019-03-31 43666000000" + ] + }, + "execution_count": 13, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "rd.get_data(\n", + " universe=['LSEG.L', 'VOD.L'], \n", + " fields=['TR.Revenue.date', 'TR.Revenue'],\n", + " parameters = {'SDate':0, 'EDate':-3}\n", + ")" + ] + }, + { + "cell_type": "code", + "execution_count": 14, + "metadata": {}, + "outputs": [ + { + "data": { + "text/html": [ + "
\n", + "\n", + "\n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
InstrumentDateRevenue
0LSEG.L2021-12-316740000000
1LSEG.L2020-12-312030000000
2LSEG.L2019-12-312314000000
3LSEG.L2018-12-312135000000
4VOD.L2022-03-3145580000000
5VOD.L2021-03-3143809000000
6VOD.L2020-03-3144974000000
7VOD.L2019-03-3143666000000
\n", + "
" + ], + "text/plain": [ + " Instrument Date Revenue\n", + "0 LSEG.L 2021-12-31 6740000000\n", + "1 LSEG.L 2020-12-31 2030000000\n", + "2 LSEG.L 2019-12-31 2314000000\n", + "3 LSEG.L 2018-12-31 2135000000\n", + "4 VOD.L 2022-03-31 45580000000\n", + "5 VOD.L 2021-03-31 43809000000\n", + "6 VOD.L 2020-03-31 44974000000\n", + "7 VOD.L 2019-03-31 43666000000" + ] + }, + "execution_count": 14, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "rd.get_data(\n", + " universe=['LSEG.L', 'VOD.L'], \n", + " fields=['TR.Revenue(SDate=0, EDate=-3).date', 'TR.Revenue(SDate=0, EDate=-3)']\n", + ")" + ] + }, { "cell_type": "markdown", "metadata": {}, @@ -654,17 +867,24 @@ }, { "cell_type": "code", - "execution_count": 10, + "execution_count": 11, "metadata": {}, "outputs": [], "source": [ "rd.close_session()" ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [] } ], "metadata": { "kernelspec": { - "display_name": "Python 3", + "display_name": "Python 3 (ipykernel)", "language": "python", "name": "python3" }, @@ -678,7 +898,7 @@ "name": "python", "nbconvert_exporter": "python", "pygments_lexer": "ipython3", - "version": "3.7.6" + "version": "3.9.7" } }, "nbformat": 4, diff --git a/Examples/1-Access/EX-1.01.02-GetHistory.ipynb b/Examples/1-Access/EX-1.01.02-GetHistory.ipynb index eb7d493..e0b55f1 100644 --- a/Examples/1-Access/EX-1.01.02-GetHistory.ipynb +++ b/Examples/1-Access/EX-1.01.02-GetHistory.ipynb @@ -17,7 +17,7 @@ "metadata": {}, "source": [ "## Access layer - Get history\n", - "This notebook demonstrates how to retrieve Pricing history and Fundamental & Reference history using the get_history() function." + "This notebook demonstrates how to retrieve Pricing history and Fundamental & Reference data history using the get_history() function." ] }, { @@ -31,23 +31,24 @@ "***get_history()*** parameters: \n", "- ***universe***: Single instrument or list of instruments to request\n", " - Type: String or list\n", - " - Optionnal: No \n", + " - Optional: No \n", "- ***fields***: Single field or list of fields to request\n", " - Type: String or list\n", - " - Optionnal: Yes \n", - "- ***interval***: Dat interval \n", + " - Optional: Yes \n", + "- ***interval***: Data sampling interval \n", " - Type: String\n", - " - Supported values: *tick, tas, taq, minute, 1min, 5min, 10min, 30min, 60min, hourly, 1h, daily, 1d, 1D, 7D, 7d, weekly, 1W, monthly, 1M, quarterly, 3M, 6M, yearly, 1Y* \n", - " - Optionnal: Yes \n", + " - Supported values: *tick, tas, taq, minute, 1min, 5min, 10min, 30min, 60min, hourly, 1h, daily, 1d, 1D, 7D, 7d, weekly, 1W, monthly, 1M, quarterly, 3M, 6M, yearly, 1Y* \n", + " - Optional: Yes \n", "- ***start***: The start date and timestamp of the requested history\n", " - Type: String expressed in ISO8601 with UTC only\n", - " - Optionnal: Yes \n", + " - Optional: Yes \n", "- ***end***: The end date and timestamp of the requested history \n", " - Type: String expressed in ISO8601 with UTC only\n", - " - Optionnal: Yes \n", - "- ***adjustments*** : Tells the system whether to apply or not apply CORAX (Corporate Actions) events or exchange/manual corrections or price and volume adjustment according to trade/quote qualifier summarization actions to historical time series data. \n", + " - Optional: Yes \n", + "- ***adjustments*** : Tells the system whether to apply or not CORAX (Corporate Actions) events or exchange/manual corrections or price and volume adjustment according to trade/quote qualifier summarization actions to historical time series data. \n", + " - **Important note:** This parameter only applies to pricing fields retrieved from the underlying Historical Pricing RDP API (fields that do not start with \"TR.\", such as BID and ASK). For the other fields (fields beginning with \"TR.\" such as TR.Revenue) this parameter is ignored.\n", " - Type: String expressed in ISO8601 with UTC only\n", - " - Optionnal: Yes \n", + " - Optional: Yes \n", " - Supported values:\n", " - exchangeCorrection - Apply exchange correction adjustment to historical pricing\n", " - manualCorrection - Apply manual correction adjustment to historical pricing i.e. annotations made by content analysts\n", @@ -86,7 +87,9 @@ }, { "cell_type": "markdown", - "metadata": {}, + "metadata": { + "tags": [] + }, "source": [ "## Set the configuration file location\n", "For a better ease of use, you have the option to set initialization parameters of the Refinitiv Data Library in the _refinitiv-data.config.json_ configuration file. This file must be located beside your notebook, in your user folder or in a folder defined by the _RD_LIB_CONFIG_PATH_ environment variable. The _RD_LIB_CONFIG_PATH_ environment variable is the option used by this series of examples. The following code sets this environment variable. " @@ -111,7 +114,7 @@ }, { "cell_type": "code", - "execution_count": 2, + "execution_count": 1, "metadata": {}, "outputs": [], "source": [ @@ -129,16 +132,16 @@ }, { "cell_type": "code", - "execution_count": 3, + "execution_count": 2, "metadata": {}, "outputs": [ { "data": { "text/plain": [ - "" + "" ] }, - "execution_count": 3, + "execution_count": 2, "metadata": {}, "output_type": "execute_result" } @@ -163,8 +166,10 @@ }, { "cell_type": "code", - "execution_count": 4, - "metadata": {}, + "execution_count": 3, + "metadata": { + "tags": [] + }, "outputs": [ { "data": { @@ -236,484 +241,484 @@ " \n", " \n", " \n", - " 2021-11-19\n", - " 6680.0\n", - " 6790.0\n", - " 6636\n", - " 1227919\n", - " 6680\n", - " 6702\n", - " 6704\n", - " 8217046746.09\n", - " 6691.84744\n", - " 6703\n", - " ...\n", - " 418259\n", - " 13540\n", - " 6680\n", - " 6704\n", - " 6726\n", - " 20380\n", - " 1282403\n", - " 6832\n", - " 6323\n", - " None\n", - " \n", - " \n", - " 2021-11-22\n", - " 6684.0\n", - " 6856.0\n", - " 6684\n", - " 625896\n", - " 6736\n", - " 6684\n", - " 6686\n", - " 4217182628.2061\n", - " 6737.83285\n", - " 6685\n", + " 2022-04-04 00:00:00+00:00\n", + " 8138.0\n", + " 8190\n", + " 8046\n", + " 293949\n", + " 8072\n", + " 8138\n", + " 8140\n", + " 2390985259.32292\n", + " 8134.01111\n", + " 8139\n", " ...\n", - " 242263\n", - " 13647\n", - " 6736\n", - " 6684\n", - " <NA>\n", - " <NA>\n", - " 688369\n", - " 6840\n", - " 6363\n", - " None\n", - " \n", - " \n", - " 2021-11-23\n", - " 6734.0\n", - " 6766.0\n", - " 6600\n", - " 642256\n", - " 6668\n", - " 6734\n", - " 6736\n", - " 4303886557.0328\n", - " 6701.20101\n", - " 6735\n", - " ...\n", - " 242516\n", - " 3217\n", - " 6668\n", - " 6734\n", - " <NA>\n", - " <NA>\n", - " 694941\n", - " 7210\n", - " 6752\n", - " None\n", - " \n", - " \n", - " 2021-11-24\n", - " 6824.0\n", - " 6832.0\n", - " 6552\n", - " 1809481\n", - " 6780\n", - " 6810\n", - " 6812\n", - " 12229515457.057541\n", - " 6758.57626\n", - " 6811\n", + " 146960\n", + " 5074\n", + " 8072\n", + " 8140\n", + " <NA>\n", + " <NA>\n", + " 402508\n", + " 3433\n", + " 3013\n", + " <NA>\n", + " \n", + " \n", + " 2022-04-01 00:00:00+00:00\n", + " 8084.0\n", + " 8084\n", + " 7958\n", + " 426822\n", + " 8000\n", + " 8076\n", + " 8084\n", + " 3434295356.9\n", + " 8046.2565\n", + " 8080\n", " ...\n", - " 276206\n", - " 9045\n", - " 6780\n", - " 6810\n", - " <NA>\n", - " <NA>\n", - " 1943949\n", - " 10446\n", - " 9849\n", - " None\n", - " \n", - " \n", - " 2021-11-25\n", - " 6822.0\n", - " 6872.0\n", - " 6738\n", - " 982614\n", - " 6822\n", - " 6824\n", - " 6826\n", - " 6702808788.36\n", - " 6821.40575\n", - " 6825\n", + " 140366\n", + " 17122\n", + " 8000\n", + " 8084\n", + " <NA>\n", + " <NA>\n", + " 558981\n", + " 4079\n", + " 3573\n", + " <NA>\n", + " \n", + " \n", + " 2022-03-31 00:00:00+00:00\n", + " 7952.4\n", + " 8014\n", + " 7874\n", + " 919332\n", + " 7996\n", + " 7964\n", + " 7966\n", + " 7311988160.0\n", + " 7953.8568\n", + " 7965\n", " ...\n", - " 198533\n", - " 2155\n", - " 6822\n", - " 6824\n", - " <NA>\n", - " <NA>\n", - " 1141701\n", - " 5848\n", - " 5560\n", - " None\n", - " \n", - " \n", - " 2021-11-26\n", - " 6704.0\n", - " 6880.52\n", - " 6680\n", - " 946540\n", - " 6704\n", - " 6824\n", - " 6850\n", - " 6433414329.78602\n", - " 6796.76963\n", - " 6837\n", + " 396369\n", + " 17384\n", + " 7996\n", + " 7966\n", + " <NA>\n", + " <NA>\n", + " 1053701\n", + " 6311\n", + " 5368\n", + " <NA>\n", + " \n", + " \n", + " 2022-03-30 00:00:00+00:00\n", + " 7912.0\n", + " 7912\n", + " 7808\n", + " 543416\n", + " 7854\n", + " 7900\n", + " 7912\n", + " 4287124681.56\n", + " 7889.21255\n", + " 7906\n", " ...\n", - " 230979\n", - " 5822\n", - " 6704\n", - " 6850\n", - " <NA>\n", - " <NA>\n", - " 1084983\n", - " 9173\n", - " 8736\n", - " None\n", - " \n", - " \n", - " 2021-11-29\n", - " 6764.3\n", - " 6926.0\n", - " 6754\n", - " 1119681\n", - " 6890\n", - " 6870\n", - " 6872\n", - " 7678850720.20644\n", - " 6858.06992\n", - " 6871\n", + " 271781\n", + " 6676\n", + " 7854\n", + " 7912\n", + " <NA>\n", + " <NA>\n", + " 610099\n", + " 5160\n", + " 4697\n", + " <NA>\n", + " \n", + " \n", + " 2022-03-29 00:00:00+00:00\n", + " 7867.9213\n", + " 7914\n", + " 7794\n", + " 622016\n", + " 7866\n", + " 7868\n", + " 7870\n", + " 4887848951.04\n", + " 7858.0756\n", + " 7869\n", " ...\n", - " 340426\n", - " 4129\n", - " 6890\n", - " 6870\n", - " <NA>\n", - " <NA>\n", - " 1293553\n", - " 8653\n", - " 8291\n", - " None\n", - " \n", - " \n", - " 2021-11-30\n", - " 6502.0\n", - " 6872.0\n", - " 6502\n", - " 2023297\n", - " 6870\n", - " 6502\n", - " 6512\n", - " 13234527793.25\n", - " 6541.07024\n", - " 6507\n", + " 167270\n", + " 4498\n", + " 7866\n", + " 7868\n", + " <NA>\n", + " <NA>\n", + " 937465\n", + " 5609\n", + " 5326\n", + " <NA>\n", + " \n", + " \n", + " 2022-03-28 00:00:00+00:00\n", + " 7834.0\n", + " 7940\n", + " 7834\n", + " 681426\n", + " 7834\n", + " 7862\n", + " 7864\n", + " 5356043043.46\n", + " 7860.0484\n", + " 7863\n", " ...\n", - " 1560106\n", - " 9295\n", - " 6870\n", - " 6502\n", - " <NA>\n", - " <NA>\n", - " 2495199\n", - " 7992\n", - " 7365\n", - " None\n", - " \n", - " \n", - " 2021-12-01\n", - " 6752.0\n", - " 6786.0\n", - " 6532\n", - " 1235156\n", - " 6532\n", - " 6752\n", - " 6754\n", - " 8239716493.48\n", - " 6670.9932\n", - " 6753\n", + " 163154\n", + " 3771\n", + " 7834\n", + " 7864\n", + " <NA>\n", + " <NA>\n", + " 804080\n", + " 4674\n", + " 3689\n", + " <NA>\n", + " \n", + " \n", + " 2022-03-25 00:00:00+00:00\n", + " 7822.0\n", + " 7874\n", + " 7744\n", + " 560199\n", + " 7800\n", + " 7824\n", + " 7828\n", + " 4375674501.08\n", + " 7810.92864\n", + " 7826\n", " ...\n", - " 379918\n", - " 9828\n", - " 6532\n", - " 6752\n", - " <NA>\n", - " <NA>\n", - " 1416407\n", - " 9035\n", - " 8404\n", - " None\n", - " \n", - " \n", - " 2021-12-02\n", - " 6610.0\n", - " 6704.0\n", - " 6570\n", - " 891113\n", - " 6690\n", - " 6580\n", - " 6582\n", - " 5898413269.72876\n", - " 6619.1528\n", - " 6581\n", + " 211572\n", + " 30099\n", + " 7800\n", + " 7828\n", + " <NA>\n", + " <NA>\n", + " 1090928\n", + " 6612\n", + " 6257\n", + " <NA>\n", + " \n", + " \n", + " 2022-03-24 00:00:00+00:00\n", + " 8000.0\n", + " 8000\n", + " 7802\n", + " 488513\n", + " 7890\n", + " 7824\n", + " 7832\n", + " 3845708902.39\n", + " 7872.27546\n", + " 7828\n", " ...\n", - " 300346\n", - " 7654\n", - " 6690\n", - " 6582\n", - " <NA>\n", - " <NA>\n", - " 951239\n", - " 9792\n", - " 9438\n", - " None\n", - " \n", - " \n", - " 2021-12-03\n", - " 6527.9473\n", - " 6690.0\n", - " 6506\n", - " 708073\n", - " 6640\n", - " 6522\n", - " 6524\n", - " 4650062824.8002\n", - " 6567.20803\n", - " 6523\n", + " 184438\n", + " 4761\n", + " 7890\n", + " 7824\n", + " <NA>\n", + " <NA>\n", + " 521382\n", + " 4153\n", + " 3949\n", + " <NA>\n", + " \n", + " \n", + " 2022-03-23 00:00:00+00:00\n", + " 7842.0\n", + " 7994\n", + " 7826\n", + " 435459\n", + " 7912\n", + " 7842\n", + " 7844\n", + " 3425923450.60216\n", + " 7867.3838\n", + " 7843\n", " ...\n", - " 206125\n", - " 7416\n", - " 6640\n", - " 6524\n", + " 202369\n", + " 4037\n", + " 7912\n", + " 7842\n", " <NA>\n", " <NA>\n", - " 730958\n", - " 5470\n", - " 5113\n", - " None\n", + " 481738\n", + " 4316\n", + " 4024\n", + " <NA>\n", " \n", " \n", - " 2021-12-06\n", - " 6590.0\n", - " 6636.0\n", - " 6522\n", - " 383706\n", - " 6556\n", - " 6586\n", - " 6590\n", - " 2529928546.25\n", - " 6593.40366\n", - " 6588\n", + " 2022-03-22 00:00:00+00:00\n", + " 7928.0\n", + " 7952\n", + " 7720\n", + " 861415\n", + " 7886\n", + " 7914\n", + " 7916\n", + " 6777632915.31\n", + " 7870.2698\n", + " 7915\n", " ...\n", - " 135949\n", - " 1630\n", - " 6556\n", + " 278345\n", + " 4538\n", + " 7886\n", + " 7914\n", + " <NA>\n", + " <NA>\n", + " 939352\n", + " 6880\n", " 6590\n", " <NA>\n", + " \n", + " \n", + " 2022-03-21 00:00:00+00:00\n", + " 7894.0\n", + " 8100\n", + " 7834\n", + " 582036\n", + " 8000\n", + " 7910\n", + " 7912\n", + " 4613945997.33\n", + " 7927.2455\n", + " 7911\n", + " ...\n", + " 208374\n", + " 21141\n", + " 8000\n", + " 7912\n", + " <NA>\n", + " <NA>\n", + " 799727\n", + " 6201\n", + " 5709\n", " <NA>\n", - " 396725\n", - " 4615\n", - " 4359\n", - " None\n", " \n", " \n", - " 2021-12-07\n", - " 6708.0\n", - " 6732.0\n", - " 6636\n", - " 798893\n", - " 6652\n", - " 6712\n", - " 6714\n", - " 5344809963.42\n", - " 6690.2698\n", - " 6713\n", + " 2022-03-18 00:00:00+00:00\n", + " 7964.0\n", + " 7970\n", + " 7686\n", + " 902123\n", + " 7826\n", + " 7958\n", + " 7960\n", + " 7093404617.52\n", + " 7862.98284\n", + " 7959\n", " ...\n", - " 227969\n", - " 11624\n", - " 6652\n", - " 6712\n", - " <NA>\n", - " <NA>\n", - " 814156\n", - " 5139\n", - " 4855\n", - " None\n", - " \n", - " \n", - " 2021-12-08\n", - " 6758.0\n", - " 6858.0\n", - " 6726\n", - " 932773\n", - " 6764\n", - " 6754\n", - " 6758\n", - " 6315136777.6166\n", - " 6770.28256\n", - " 6756\n", + " 447513\n", + " 2523\n", + " 7826\n", + " 7960\n", + " 7710\n", + " 144074\n", + " 927245\n", + " 6500\n", + " 6150\n", + " <NA>\n", + " \n", + " \n", + " 2022-03-17 00:00:00+00:00\n", + " 7810.0\n", + " 7946\n", + " 7748\n", + " 647205\n", + " 7926\n", + " 7810\n", + " 7814\n", + " 5058708482.15\n", + " 7816.243\n", + " 7812\n", " ...\n", - " 236695\n", - " 12198\n", - " 6764\n", - " 6758\n", - " <NA>\n", - " <NA>\n", - " 974768\n", - " 6431\n", - " 6020\n", - " None\n", - " \n", - " \n", - " 2021-12-09\n", - " 6794.0\n", - " 6818.0\n", - " 6632\n", - " 924176\n", - " 6794\n", - " 6640\n", - " 6642\n", - " 6182064712.96218\n", - " 6689.2718\n", - " 6641\n", + " 217020\n", + " 5302\n", + " 7926\n", + " 7810\n", + " <NA>\n", + " <NA>\n", + " 695528\n", + " 8134\n", + " 7814\n", + " <NA>\n", + " \n", + " \n", + " 2022-03-16 00:00:00+00:00\n", + " 7868.1132\n", + " 7950\n", + " 7668\n", + " 863646\n", + " 7706\n", + " 7902\n", + " 7904\n", + " 6770365314.17\n", + " 7839.27144\n", + " 7903\n", " ...\n", - " 261876\n", - " 7431\n", - " 6794\n", - " 6642\n", - " <NA>\n", - " <NA>\n", - " 1007129\n", - " 5293\n", - " 4975\n", - " None\n", - " \n", - " \n", - " 2021-12-10\n", - " 6742.0\n", - " 6750.0\n", - " 6622\n", - " 357852\n", - " 6640\n", - " 6740\n", - " 6742\n", - " 2405696489.967\n", - " 6722.60177\n", - " 6741\n", + " 331300\n", + " 5473\n", + " 7706\n", + " 7904\n", + " <NA>\n", + " <NA>\n", + " 946955\n", + " 7946\n", + " 7194\n", + " <NA>\n", + " \n", + " \n", + " 2022-03-15 00:00:00+00:00\n", + " 7614.0\n", + " 7776\n", + " 7546\n", + " 402890\n", + " 7648\n", + " 7664\n", + " 7666\n", + " 3087690629.56\n", + " 7663.1042\n", + " 7665\n", " ...\n", - " 163569\n", - " 6822\n", - " 6640\n", - " 6742\n", + " 119510\n", + " 1871\n", + " 7648\n", + " 7664\n", + " <NA>\n", " <NA>\n", + " 424637\n", + " 6311\n", + " 5849\n", " <NA>\n", - " 424150\n", - " 3787\n", - " 3495\n", - " None\n", " \n", " \n", - " 2021-12-13\n", - " 6700.0\n", - " 6723.8\n", - " 6598\n", - " 1522242\n", - " 6700\n", - " 6676\n", - " 6686\n", - " 10189932120.15\n", - " 6694.02902\n", - " 6681\n", + " 2022-03-14 00:00:00+00:00\n", + " 7718.0\n", + " 7758\n", + " 7418\n", + " 536156\n", + " 7492\n", + " 7718\n", + " 7720\n", + " 4118005470.95\n", + " 7666.3173\n", + " 7719\n", + " ...\n", + " 199521\n", + " 6206\n", + " 7492\n", + " 7718\n", + " <NA>\n", + " <NA>\n", + " 612693\n", + " 6166\n", + " 5639\n", + " <NA>\n", + " \n", + " \n", + " 2022-03-11 00:00:00+00:00\n", + " 7462.0\n", + " 7512\n", + " 7328\n", + " 797130\n", + " 7328\n", + " 7436\n", + " 7440\n", + " 5930200555.15\n", + " 7439.53902\n", + " 7438\n", " ...\n", - " 213392\n", - " 7457\n", - " 6700\n", - " 6686\n", - " <NA>\n", - " <NA>\n", - " 1564658\n", - " 4548\n", - " 4270\n", - " None\n", - " \n", - " \n", - " 2021-12-14\n", - " 6802.0\n", - " 6836.0\n", - " 6686\n", - " 635812\n", - " 6710\n", - " 6768\n", - " 6770\n", - " 4314747007.2712\n", - " 6786.19939\n", - " 6769\n", + " 377932\n", + " 2983\n", + " 7328\n", + " 7440\n", + " <NA>\n", + " <NA>\n", + " 850555\n", + " 6528\n", + " 6066\n", + " <NA>\n", + " \n", + " \n", + " 2022-03-10 00:00:00+00:00\n", + " 7316.0\n", + " 7320\n", + " 7186\n", + " 529805\n", + " 7250\n", + " 7272\n", + " 7316\n", + " 3862241119.46\n", + " 7289.939\n", + " 7294\n", " ...\n", - " 311439\n", - " 4350\n", - " 6710\n", - " 6770\n", - " <NA>\n", - " <NA>\n", - " 694552\n", - " 6191\n", - " 5666\n", - " None\n", - " \n", - " \n", - " 2021-12-15\n", - " 6750.0\n", - " 6820.0\n", - " 6674\n", - " 665560\n", - " 6750\n", - " 6740\n", - " 6742\n", - " 4495235717.6934\n", - " 6754.06532\n", - " 6741\n", + " 286154\n", + " 5645\n", + " 7250\n", + " 7316\n", + " <NA>\n", + " <NA>\n", + " 635697\n", + " 4925\n", + " 4409\n", + " <NA>\n", + " \n", + " \n", + " 2022-03-09 00:00:00+00:00\n", + " 7272.0\n", + " 7354\n", + " 6986\n", + " 890127\n", + " 7222\n", + " 7270\n", + " 7272\n", + " 6412027789.51\n", + " 7203.6415\n", + " 7271\n", " ...\n", - " 253956\n", - " 5951\n", - " 6750\n", - " 6740\n", - " <NA>\n", - " <NA>\n", - " 754432\n", - " 6753\n", - " 6438\n", - " None\n", - " \n", - " \n", - " 2021-12-16\n", - " 6740.0\n", - " 6908.0\n", - " 6730\n", - " 1185415\n", - " 6850\n", - " 6730\n", - " 6732\n", - " 8063666995.9519\n", - " 6802.4\n", - " 6731\n", + " 314324\n", + " 15650\n", + " 7222\n", + " 7272\n", + " <NA>\n", + " <NA>\n", + " 946588\n", + " 10030\n", + " 9410\n", + " <NA>\n", + " \n", + " \n", + " 2022-03-08 00:00:00+00:00\n", + " 6982.0\n", + " 7312\n", + " 6982\n", + " 858443\n", + " 7206\n", + " 6982\n", + " 6984\n", + " 6066068286.5221\n", + " 7066.36377\n", + " 6983\n", " ...\n", - " 284365\n", - " 8914\n", - " 6850\n", - " 6730\n", + " 327501\n", + " 16757\n", + " 7206\n", + " 6982\n", " <NA>\n", " <NA>\n", - " 1203861\n", - " 5264\n", - " 4912\n", - " None\n", + " 907259\n", + " 9978\n", + " 9443\n", + " <NA>\n", " \n", " \n", "\n", @@ -721,116 +726,137 @@ "" ], "text/plain": [ - "LSEG.L TRDPRC_1 MKT_HIGH MKT_LOW ACVOL_UNS MKT_OPEN BID ASK \\\n", - "Date \n", - "2021-11-19 6680.0 6790.0 6636 1227919 6680 6702 6704 \n", - "2021-11-22 6684.0 6856.0 6684 625896 6736 6684 6686 \n", - "2021-11-23 6734.0 6766.0 6600 642256 6668 6734 6736 \n", - "2021-11-24 6824.0 6832.0 6552 1809481 6780 6810 6812 \n", - "2021-11-25 6822.0 6872.0 6738 982614 6822 6824 6826 \n", - "2021-11-26 6704.0 6880.52 6680 946540 6704 6824 6850 \n", - "2021-11-29 6764.3 6926.0 6754 1119681 6890 6870 6872 \n", - "2021-11-30 6502.0 6872.0 6502 2023297 6870 6502 6512 \n", - "2021-12-01 6752.0 6786.0 6532 1235156 6532 6752 6754 \n", - "2021-12-02 6610.0 6704.0 6570 891113 6690 6580 6582 \n", - "2021-12-03 6527.9473 6690.0 6506 708073 6640 6522 6524 \n", - "2021-12-06 6590.0 6636.0 6522 383706 6556 6586 6590 \n", - "2021-12-07 6708.0 6732.0 6636 798893 6652 6712 6714 \n", - "2021-12-08 6758.0 6858.0 6726 932773 6764 6754 6758 \n", - "2021-12-09 6794.0 6818.0 6632 924176 6794 6640 6642 \n", - "2021-12-10 6742.0 6750.0 6622 357852 6640 6740 6742 \n", - "2021-12-13 6700.0 6723.8 6598 1522242 6700 6676 6686 \n", - "2021-12-14 6802.0 6836.0 6686 635812 6710 6768 6770 \n", - "2021-12-15 6750.0 6820.0 6674 665560 6750 6740 6742 \n", - "2021-12-16 6740.0 6908.0 6730 1185415 6850 6730 6732 \n", + "LSEG.L TRDPRC_1 MKT_HIGH MKT_LOW ACVOL_UNS MKT_OPEN \\\n", + "Date \n", + "2022-04-04 00:00:00+00:00 8138.0 8190 8046 293949 8072 \n", + "2022-04-01 00:00:00+00:00 8084.0 8084 7958 426822 8000 \n", + "2022-03-31 00:00:00+00:00 7952.4 8014 7874 919332 7996 \n", + "2022-03-30 00:00:00+00:00 7912.0 7912 7808 543416 7854 \n", + "2022-03-29 00:00:00+00:00 7867.9213 7914 7794 622016 7866 \n", + "2022-03-28 00:00:00+00:00 7834.0 7940 7834 681426 7834 \n", + "2022-03-25 00:00:00+00:00 7822.0 7874 7744 560199 7800 \n", + "2022-03-24 00:00:00+00:00 8000.0 8000 7802 488513 7890 \n", + "2022-03-23 00:00:00+00:00 7842.0 7994 7826 435459 7912 \n", + "2022-03-22 00:00:00+00:00 7928.0 7952 7720 861415 7886 \n", + "2022-03-21 00:00:00+00:00 7894.0 8100 7834 582036 8000 \n", + "2022-03-18 00:00:00+00:00 7964.0 7970 7686 902123 7826 \n", + "2022-03-17 00:00:00+00:00 7810.0 7946 7748 647205 7926 \n", + "2022-03-16 00:00:00+00:00 7868.1132 7950 7668 863646 7706 \n", + "2022-03-15 00:00:00+00:00 7614.0 7776 7546 402890 7648 \n", + "2022-03-14 00:00:00+00:00 7718.0 7758 7418 536156 7492 \n", + "2022-03-11 00:00:00+00:00 7462.0 7512 7328 797130 7328 \n", + "2022-03-10 00:00:00+00:00 7316.0 7320 7186 529805 7250 \n", + "2022-03-09 00:00:00+00:00 7272.0 7354 6986 890127 7222 \n", + "2022-03-08 00:00:00+00:00 6982.0 7312 6982 858443 7206 \n", + "\n", + "LSEG.L BID ASK TRNOVR_UNS VWAP \\\n", + "Date \n", + "2022-04-04 00:00:00+00:00 8138 8140 2390985259.32292 8134.01111 \n", + "2022-04-01 00:00:00+00:00 8076 8084 3434295356.9 8046.2565 \n", + "2022-03-31 00:00:00+00:00 7964 7966 7311988160.0 7953.8568 \n", + "2022-03-30 00:00:00+00:00 7900 7912 4287124681.56 7889.21255 \n", + "2022-03-29 00:00:00+00:00 7868 7870 4887848951.04 7858.0756 \n", + "2022-03-28 00:00:00+00:00 7862 7864 5356043043.46 7860.0484 \n", + "2022-03-25 00:00:00+00:00 7824 7828 4375674501.08 7810.92864 \n", + "2022-03-24 00:00:00+00:00 7824 7832 3845708902.39 7872.27546 \n", + "2022-03-23 00:00:00+00:00 7842 7844 3425923450.60216 7867.3838 \n", + "2022-03-22 00:00:00+00:00 7914 7916 6777632915.31 7870.2698 \n", + "2022-03-21 00:00:00+00:00 7910 7912 4613945997.33 7927.2455 \n", + "2022-03-18 00:00:00+00:00 7958 7960 7093404617.52 7862.98284 \n", + "2022-03-17 00:00:00+00:00 7810 7814 5058708482.15 7816.243 \n", + "2022-03-16 00:00:00+00:00 7902 7904 6770365314.17 7839.27144 \n", + "2022-03-15 00:00:00+00:00 7664 7666 3087690629.56 7663.1042 \n", + "2022-03-14 00:00:00+00:00 7718 7720 4118005470.95 7666.3173 \n", + "2022-03-11 00:00:00+00:00 7436 7440 5930200555.15 7439.53902 \n", + "2022-03-10 00:00:00+00:00 7272 7316 3862241119.46 7289.939 \n", + "2022-03-09 00:00:00+00:00 7270 7272 6412027789.51 7203.6415 \n", + "2022-03-08 00:00:00+00:00 6982 6984 6066068286.5221 7066.36377 \n", "\n", - "LSEG.L TRNOVR_UNS VWAP MID_PRICE ... CLS_AUCVOL \\\n", - "Date ... \n", - "2021-11-19 8217046746.09 6691.84744 6703 ... 418259 \n", - "2021-11-22 4217182628.2061 6737.83285 6685 ... 242263 \n", - "2021-11-23 4303886557.0328 6701.20101 6735 ... 242516 \n", - "2021-11-24 12229515457.057541 6758.57626 6811 ... 276206 \n", - "2021-11-25 6702808788.36 6821.40575 6825 ... 198533 \n", - "2021-11-26 6433414329.78602 6796.76963 6837 ... 230979 \n", - "2021-11-29 7678850720.20644 6858.06992 6871 ... 340426 \n", - "2021-11-30 13234527793.25 6541.07024 6507 ... 1560106 \n", - "2021-12-01 8239716493.48 6670.9932 6753 ... 379918 \n", - "2021-12-02 5898413269.72876 6619.1528 6581 ... 300346 \n", - "2021-12-03 4650062824.8002 6567.20803 6523 ... 206125 \n", - "2021-12-06 2529928546.25 6593.40366 6588 ... 135949 \n", - "2021-12-07 5344809963.42 6690.2698 6713 ... 227969 \n", - "2021-12-08 6315136777.6166 6770.28256 6756 ... 236695 \n", - "2021-12-09 6182064712.96218 6689.2718 6641 ... 261876 \n", - "2021-12-10 2405696489.967 6722.60177 6741 ... 163569 \n", - "2021-12-13 10189932120.15 6694.02902 6681 ... 213392 \n", - "2021-12-14 4314747007.2712 6786.19939 6769 ... 311439 \n", - "2021-12-15 4495235717.6934 6754.06532 6741 ... 253956 \n", - "2021-12-16 8063666995.9519 6802.4 6731 ... 284365 \n", + "LSEG.L MID_PRICE ... CLS_AUCVOL OPN_AUCVOL OPN_AUC \\\n", + "Date ... \n", + "2022-04-04 00:00:00+00:00 8139 ... 146960 5074 8072 \n", + "2022-04-01 00:00:00+00:00 8080 ... 140366 17122 8000 \n", + "2022-03-31 00:00:00+00:00 7965 ... 396369 17384 7996 \n", + "2022-03-30 00:00:00+00:00 7906 ... 271781 6676 7854 \n", + "2022-03-29 00:00:00+00:00 7869 ... 167270 4498 7866 \n", + "2022-03-28 00:00:00+00:00 7863 ... 163154 3771 7834 \n", + "2022-03-25 00:00:00+00:00 7826 ... 211572 30099 7800 \n", + "2022-03-24 00:00:00+00:00 7828 ... 184438 4761 7890 \n", + "2022-03-23 00:00:00+00:00 7843 ... 202369 4037 7912 \n", + "2022-03-22 00:00:00+00:00 7915 ... 278345 4538 7886 \n", + "2022-03-21 00:00:00+00:00 7911 ... 208374 21141 8000 \n", + "2022-03-18 00:00:00+00:00 7959 ... 447513 2523 7826 \n", + "2022-03-17 00:00:00+00:00 7812 ... 217020 5302 7926 \n", + "2022-03-16 00:00:00+00:00 7903 ... 331300 5473 7706 \n", + "2022-03-15 00:00:00+00:00 7665 ... 119510 1871 7648 \n", + "2022-03-14 00:00:00+00:00 7719 ... 199521 6206 7492 \n", + "2022-03-11 00:00:00+00:00 7438 ... 377932 2983 7328 \n", + "2022-03-10 00:00:00+00:00 7294 ... 286154 5645 7250 \n", + "2022-03-09 00:00:00+00:00 7271 ... 314324 15650 7222 \n", + "2022-03-08 00:00:00+00:00 6983 ... 327501 16757 7206 \n", "\n", - "LSEG.L OPN_AUCVOL OPN_AUC CLS_AUC INT_AUC INT_AUCVOL EX_VOL_UNS \\\n", - "Date \n", - "2021-11-19 13540 6680 6704 6726 20380 1282403 \n", - "2021-11-22 13647 6736 6684 688369 \n", - "2021-11-23 3217 6668 6734 694941 \n", - "2021-11-24 9045 6780 6810 1943949 \n", - "2021-11-25 2155 6822 6824 1141701 \n", - "2021-11-26 5822 6704 6850 1084983 \n", - "2021-11-29 4129 6890 6870 1293553 \n", - "2021-11-30 9295 6870 6502 2495199 \n", - "2021-12-01 9828 6532 6752 1416407 \n", - "2021-12-02 7654 6690 6582 951239 \n", - "2021-12-03 7416 6640 6524 730958 \n", - "2021-12-06 1630 6556 6590 396725 \n", - "2021-12-07 11624 6652 6712 814156 \n", - "2021-12-08 12198 6764 6758 974768 \n", - "2021-12-09 7431 6794 6642 1007129 \n", - "2021-12-10 6822 6640 6742 424150 \n", - "2021-12-13 7457 6700 6686 1564658 \n", - "2021-12-14 4350 6710 6770 694552 \n", - "2021-12-15 5951 6750 6740 754432 \n", - "2021-12-16 8914 6850 6730 1203861 \n", + "LSEG.L CLS_AUC INT_AUC INT_AUCVOL EX_VOL_UNS \\\n", + "Date \n", + "2022-04-04 00:00:00+00:00 8140 402508 \n", + "2022-04-01 00:00:00+00:00 8084 558981 \n", + "2022-03-31 00:00:00+00:00 7966 1053701 \n", + "2022-03-30 00:00:00+00:00 7912 610099 \n", + "2022-03-29 00:00:00+00:00 7868 937465 \n", + "2022-03-28 00:00:00+00:00 7864 804080 \n", + "2022-03-25 00:00:00+00:00 7828 1090928 \n", + "2022-03-24 00:00:00+00:00 7824 521382 \n", + "2022-03-23 00:00:00+00:00 7842 481738 \n", + "2022-03-22 00:00:00+00:00 7914 939352 \n", + "2022-03-21 00:00:00+00:00 7912 799727 \n", + "2022-03-18 00:00:00+00:00 7960 7710 144074 927245 \n", + "2022-03-17 00:00:00+00:00 7810 695528 \n", + "2022-03-16 00:00:00+00:00 7904 946955 \n", + "2022-03-15 00:00:00+00:00 7664 424637 \n", + "2022-03-14 00:00:00+00:00 7718 612693 \n", + "2022-03-11 00:00:00+00:00 7440 850555 \n", + "2022-03-10 00:00:00+00:00 7316 635697 \n", + "2022-03-09 00:00:00+00:00 7272 946588 \n", + "2022-03-08 00:00:00+00:00 6982 907259 \n", "\n", - "LSEG.L ALL_C_MOVE ELG_NUMMOV NAVALUE \n", - "Date \n", - "2021-11-19 6832 6323 None \n", - "2021-11-22 6840 6363 None \n", - "2021-11-23 7210 6752 None \n", - "2021-11-24 10446 9849 None \n", - "2021-11-25 5848 5560 None \n", - "2021-11-26 9173 8736 None \n", - "2021-11-29 8653 8291 None \n", - "2021-11-30 7992 7365 None \n", - "2021-12-01 9035 8404 None \n", - "2021-12-02 9792 9438 None \n", - "2021-12-03 5470 5113 None \n", - "2021-12-06 4615 4359 None \n", - "2021-12-07 5139 4855 None \n", - "2021-12-08 6431 6020 None \n", - "2021-12-09 5293 4975 None \n", - "2021-12-10 3787 3495 None \n", - "2021-12-13 4548 4270 None \n", - "2021-12-14 6191 5666 None \n", - "2021-12-15 6753 6438 None \n", - "2021-12-16 5264 4912 None \n", + "LSEG.L ALL_C_MOVE ELG_NUMMOV NAVALUE \n", + "Date \n", + "2022-04-04 00:00:00+00:00 3433 3013 \n", + "2022-04-01 00:00:00+00:00 4079 3573 \n", + "2022-03-31 00:00:00+00:00 6311 5368 \n", + "2022-03-30 00:00:00+00:00 5160 4697 \n", + "2022-03-29 00:00:00+00:00 5609 5326 \n", + "2022-03-28 00:00:00+00:00 4674 3689 \n", + "2022-03-25 00:00:00+00:00 6612 6257 \n", + "2022-03-24 00:00:00+00:00 4153 3949 \n", + "2022-03-23 00:00:00+00:00 4316 4024 \n", + "2022-03-22 00:00:00+00:00 6880 6590 \n", + "2022-03-21 00:00:00+00:00 6201 5709 \n", + "2022-03-18 00:00:00+00:00 6500 6150 \n", + "2022-03-17 00:00:00+00:00 8134 7814 \n", + "2022-03-16 00:00:00+00:00 7946 7194 \n", + "2022-03-15 00:00:00+00:00 6311 5849 \n", + "2022-03-14 00:00:00+00:00 6166 5639 \n", + "2022-03-11 00:00:00+00:00 6528 6066 \n", + "2022-03-10 00:00:00+00:00 4925 4409 \n", + "2022-03-09 00:00:00+00:00 10030 9410 \n", + "2022-03-08 00:00:00+00:00 9978 9443 \n", "\n", "[20 rows x 31 columns]" ] }, - "execution_count": 4, + "execution_count": 3, "metadata": {}, "output_type": "execute_result" } ], "source": [ - "rd.get_history(\"LSEG.L\")" + "rd.get_history(universe=\"LSEG.L\")" ] }, { "cell_type": "code", - "execution_count": 5, - "metadata": { - "tags": [] - }, + "execution_count": 4, + "metadata": {}, "outputs": [ { "data": { @@ -845,14 +871,25 @@ " vertical-align: top;\n", " }\n", "\n", - " .dataframe thead th {\n", + " .dataframe thead tr th {\n", + " text-align: left;\n", + " }\n", + "\n", + " .dataframe thead tr:last-of-type th {\n", " text-align: right;\n", " }\n", "\n", "\n", " \n", - " \n", - " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", " \n", " \n", " \n", @@ -860,153 +897,201 @@ " \n", " \n", " \n", + " \n", + " \n", " \n", " \n", " \n", " \n", - " \n", - " \n", - " \n", + " \n", + " \n", + " \n", + " \n", + " \n", " \n", " \n", - " \n", - " \n", - " \n", + " \n", + " \n", + " \n", + " \n", + " \n", " \n", " \n", - " \n", - " \n", - " \n", + " \n", + " \n", + " \n", + " \n", + " \n", " \n", " \n", - " \n", - " \n", - " \n", + " \n", + " \n", + " \n", + " \n", + " \n", " \n", " \n", - " \n", - " \n", - " \n", + " \n", + " \n", + " \n", + " \n", + " \n", " \n", " \n", - " \n", - " \n", - " \n", + " \n", + " \n", + " \n", + " \n", + " \n", " \n", " \n", - " \n", - " \n", - " \n", + " \n", + " \n", + " \n", + " \n", + " \n", " \n", " \n", - " \n", - " \n", - " \n", + " \n", + " \n", + " \n", + " \n", + " \n", " \n", " \n", - " \n", - " \n", - " \n", + " \n", + " \n", + " \n", + " \n", + " \n", " \n", " \n", - " \n", - " \n", - " \n", + " \n", + " \n", + " \n", + " \n", + " \n", " \n", " \n", - " \n", + " \n", + " \n", + " \n", " \n", " \n", " \n", " \n", - " \n", - " \n", - " \n", + " \n", + " \n", + " \n", + " \n", + " \n", " \n", " \n", - " \n", - " \n", - " \n", + " \n", + " \n", + " \n", + " \n", + " \n", " \n", " \n", - " \n", - " \n", - " \n", + " \n", + " \n", + " \n", + " \n", + " \n", " \n", " \n", - " \n", - " \n", - " \n", + " \n", + " \n", + " \n", + " \n", + " \n", " \n", " \n", - " \n", - " \n", - " \n", + " \n", + " \n", + " \n", + " \n", + " \n", " \n", " \n", - " \n", - " \n", - " \n", + " \n", + " \n", + " \n", + " \n", + " \n", " \n", " \n", - " \n", - " \n", - " \n", + " \n", + " \n", + " \n", + " \n", + " \n", " \n", " \n", - " \n", - " \n", - " \n", + " \n", + " \n", + " \n", + " \n", + " \n", " \n", " \n", - " \n", - " \n", - " \n", + " \n", + " \n", + " \n", + " \n", + " \n", " \n", " \n", "
LSEG.L
VOD.LLSEG.L
BIDASKBIDASK
Date
2002-12-31289.272527292.4815732022-12-31 00:00:00+00:00125.96126.08138.08140.0
2003-12-31304.400885308.9852352021-12-31 00:00:00+00:00112.18112.266930.06938.0
2004-12-31534.342576536.1851362020-12-31 00:00:00+00:00120.94120.969008.09016.0
2005-12-31567.048027571.1937882019-12-31 00:00:00+00:00146.76146.867722.07750.0
2006-12-311205.7801141206.701262018-12-31 00:00:00+00:00152.9153.064060.04062.0
2007-12-311822.9479341823.869082017-12-31 00:00:00+00:00234.85235.03786.03793.0
2008-12-31469.78446476.2324822016-12-31 00:00:00+00:00199.8199.852873.02914.0
2009-12-31658.61939661.3828282015-12-31 00:00:00+00:00221.0221.12742.02744.0
2010-12-31771.459775771.9203482014-12-31 00:00:00+00:00222.65222.72213.02221.0
2011-12-31729.547632732.311072013-12-31 00:00:00+00:00242.902706243.0564421595.4248721596.346018
2012-12-312012-12-31 00:00:00+00:00158.245476158.296721997.6011181002.206848
2013-12-311595.4248721596.3460182011-12-31 00:00:00+00:00183.355671183.458162729.547632732.31107
2014-12-312213.02221.02010-12-31 00:00:00+00:00166.194695166.345052771.459775771.920348
2015-12-312742.02744.02009-12-31 00:00:00+00:00143.741371144.042085658.61939661.382828
2016-12-312873.02914.02008-12-31 00:00:00+00:00139.280777139.330896469.78446476.232482
2017-12-313786.03793.02007-12-31 00:00:00+00:00188.146829188.2470671822.9479341823.86908
2018-12-314060.04062.02006-12-31 00:00:00+00:00141.586252141.8368481205.7801141206.70126
2019-12-317722.07750.02005-12-31 00:00:00+00:00125.435296125.685666567.048027571.193788
2020-12-319008.09016.02004-12-31 00:00:00+00:00141.208597141.458966534.342576536.185136
2021-12-316730.06732.02003-12-31 00:00:00+00:00138.204158138.454528304.400885308.985235
\n", "" ], "text/plain": [ - "LSEG.L BID ASK\n", - "Date \n", - "2002-12-31 289.272527 292.481573\n", - "2003-12-31 304.400885 308.985235\n", - "2004-12-31 534.342576 536.185136\n", - "2005-12-31 567.048027 571.193788\n", - "2006-12-31 1205.780114 1206.70126\n", - "2007-12-31 1822.947934 1823.86908\n", - "2008-12-31 469.78446 476.232482\n", - "2009-12-31 658.61939 661.382828\n", - "2010-12-31 771.459775 771.920348\n", - "2011-12-31 729.547632 732.31107\n", - "2012-12-31 997.601118 1002.206848\n", - "2013-12-31 1595.424872 1596.346018\n", - "2014-12-31 2213.0 2221.0\n", - "2015-12-31 2742.0 2744.0\n", - "2016-12-31 2873.0 2914.0\n", - "2017-12-31 3786.0 3793.0\n", - "2018-12-31 4060.0 4062.0\n", - "2019-12-31 7722.0 7750.0\n", - "2020-12-31 9008.0 9016.0\n", - "2021-12-31 6730.0 6732.0" + " VOD.L LSEG.L \n", + " BID ASK BID ASK\n", + "Date \n", + "2022-12-31 00:00:00+00:00 125.96 126.0 8138.0 8140.0\n", + "2021-12-31 00:00:00+00:00 112.18 112.26 6930.0 6938.0\n", + "2020-12-31 00:00:00+00:00 120.94 120.96 9008.0 9016.0\n", + "2019-12-31 00:00:00+00:00 146.76 146.86 7722.0 7750.0\n", + "2018-12-31 00:00:00+00:00 152.9 153.06 4060.0 4062.0\n", + "2017-12-31 00:00:00+00:00 234.85 235.0 3786.0 3793.0\n", + "2016-12-31 00:00:00+00:00 199.8 199.85 2873.0 2914.0\n", + "2015-12-31 00:00:00+00:00 221.0 221.1 2742.0 2744.0\n", + "2014-12-31 00:00:00+00:00 222.65 222.7 2213.0 2221.0\n", + "2013-12-31 00:00:00+00:00 242.902706 243.056442 1595.424872 1596.346018\n", + "2012-12-31 00:00:00+00:00 158.245476 158.296721 997.601118 1002.206848\n", + "2011-12-31 00:00:00+00:00 183.355671 183.458162 729.547632 732.31107\n", + "2010-12-31 00:00:00+00:00 166.194695 166.345052 771.459775 771.920348\n", + "2009-12-31 00:00:00+00:00 143.741371 144.042085 658.61939 661.382828\n", + "2008-12-31 00:00:00+00:00 139.280777 139.330896 469.78446 476.232482\n", + "2007-12-31 00:00:00+00:00 188.146829 188.247067 1822.947934 1823.86908\n", + "2006-12-31 00:00:00+00:00 141.586252 141.836848 1205.780114 1206.70126\n", + "2005-12-31 00:00:00+00:00 125.435296 125.685666 567.048027 571.193788\n", + "2004-12-31 00:00:00+00:00 141.208597 141.458966 534.342576 536.185136\n", + "2003-12-31 00:00:00+00:00 138.204158 138.454528 304.400885 308.985235" ] }, - "execution_count": 5, + "execution_count": 4, "metadata": {}, "output_type": "execute_result" } ], "source": [ - "rd.get_history(universe=\"LSEG.L\", fields=[\"BID\", \"ASK\"], interval=\"1Y\")" + "rd.get_history(universe=[\"LSEG.L\", \"VOD.L\"], fields=[\"BID\", \"ASK\"], interval=\"1Y\")" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "### Fundamental data" ] }, { "cell_type": "code", - "execution_count": 6, - "metadata": { - "tags": [] - }, + "execution_count": 5, + "metadata": {}, "outputs": [ { "data": { @@ -1033,1569 +1118,212 @@ " \n", " \n", " \n", - " VOD.L\n", " LSEG.L\n", + " VOD.L\n", " \n", " \n", " \n", - " BID\n", - " BID\n", - " \n", - " \n", - " Date\n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " 2002-12-31\n", - " 113.417543\n", - " 289.272527\n", - " \n", - " \n", - " 2003-12-31\n", - " 138.204158\n", - " 304.400885\n", - " \n", - " \n", - " 2004-12-31\n", - " 141.208597\n", - " 534.342576\n", - " \n", - " \n", - " 2005-12-31\n", - " 125.435296\n", - " 567.048027\n", - " \n", - " \n", - " 2006-12-31\n", - " 141.586252\n", - " 1205.780114\n", - " \n", - " \n", - " 2007-12-31\n", - " 188.146829\n", - " 1822.947934\n", - " \n", - " \n", - " 2008-12-31\n", - " 139.280777\n", - " 469.78446\n", - " \n", - " \n", - " 2009-12-31\n", - " 143.741371\n", - " 658.61939\n", - " \n", - " \n", - " 2010-12-31\n", - " 166.194695\n", - " 771.459775\n", - " \n", - " \n", - " 2011-12-31\n", - " 183.355671\n", - " 729.547632\n", - " \n", - " \n", - " 2012-12-31\n", - " 158.245476\n", - " 997.601118\n", - " \n", - " \n", - " 2013-12-31\n", - " 242.902706\n", - " 1595.424872\n", - " \n", - " \n", - " 2014-12-31\n", - " 222.65\n", - " 2213.0\n", - " \n", - " \n", - " 2015-12-31\n", - " 221.0\n", - " 2742.0\n", - " \n", - " \n", - " 2016-12-31\n", - " 199.8\n", - " 2873.0\n", - " \n", - " \n", - " 2017-12-31\n", - " 234.85\n", - " 3786.0\n", - " \n", - " \n", - " 2018-12-31\n", - " 152.9\n", - " 4060.0\n", - " \n", - " \n", - " 2019-12-31\n", - " 146.76\n", - " 7722.0\n", - " \n", - " \n", - " 2020-12-31\n", - " 120.94\n", - " 9008.0\n", - " \n", - " \n", - " 2021-12-31\n", - " 111.68\n", - " 6730.0\n", - " \n", - " \n", - "\n", - "" - ], - "text/plain": [ - " VOD.L LSEG.L\n", - " BID BID\n", - "Date \n", - "2002-12-31 113.417543 289.272527\n", - "2003-12-31 138.204158 304.400885\n", - "2004-12-31 141.208597 534.342576\n", - "2005-12-31 125.435296 567.048027\n", - "2006-12-31 141.586252 1205.780114\n", - "2007-12-31 188.146829 1822.947934\n", - "2008-12-31 139.280777 469.78446\n", - "2009-12-31 143.741371 658.61939\n", - "2010-12-31 166.194695 771.459775\n", - "2011-12-31 183.355671 729.547632\n", - "2012-12-31 158.245476 997.601118\n", - "2013-12-31 242.902706 1595.424872\n", - "2014-12-31 222.65 2213.0\n", - "2015-12-31 221.0 2742.0\n", - "2016-12-31 199.8 2873.0\n", - "2017-12-31 234.85 3786.0\n", - "2018-12-31 152.9 4060.0\n", - "2019-12-31 146.76 7722.0\n", - "2020-12-31 120.94 9008.0\n", - "2021-12-31 111.68 6730.0" - ] - }, - "execution_count": 6, - "metadata": {}, - "output_type": "execute_result" - } - ], - "source": [ - "rd.get_history(universe=[\"LSEG.L\", \"VOD.L\"], fields=\"BID\", interval=\"1Y\")" - ] - }, - { - "cell_type": "code", - "execution_count": 7, - "metadata": {}, - "outputs": [ - { - "data": { - "text/html": [ - "
\n", - "\n", - "\n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - "
VOD.LLSEG.L
BIDASKBIDASK
Date
2002-12-31113.417543113.667913289.272527292.481573
2003-12-31138.204158138.454528304.400885308.985235
2004-12-31141.208597141.458966534.342576536.185136
2005-12-31125.435296125.685666567.048027571.193788
2006-12-31141.586252141.8368481205.7801141206.70126
2007-12-31188.146829188.2470671822.9479341823.86908
2008-12-31139.280777139.330896469.78446476.232482
2009-12-31143.741371144.042085658.61939661.382828
2010-12-31166.194695166.345052771.459775771.920348
2011-12-31183.355671183.458162729.547632732.31107
2012-12-31158.245476158.296721997.6011181002.206848
2013-12-31242.902706243.0564421595.4248721596.346018
2014-12-31222.65222.72213.02221.0
2015-12-31221.0221.12742.02744.0
2016-12-31199.8199.852873.02914.0
2017-12-31234.85235.03786.03793.0
2018-12-31152.9153.064060.04062.0
2019-12-31146.76146.867722.07750.0
2020-12-31120.94120.969008.09016.0
2021-12-31111.68111.76730.06732.0
\n", - "
" - ], - "text/plain": [ - " VOD.L LSEG.L \n", - " BID ASK BID ASK\n", - "Date \n", - "2002-12-31 113.417543 113.667913 289.272527 292.481573\n", - "2003-12-31 138.204158 138.454528 304.400885 308.985235\n", - "2004-12-31 141.208597 141.458966 534.342576 536.185136\n", - "2005-12-31 125.435296 125.685666 567.048027 571.193788\n", - "2006-12-31 141.586252 141.836848 1205.780114 1206.70126\n", - "2007-12-31 188.146829 188.247067 1822.947934 1823.86908\n", - "2008-12-31 139.280777 139.330896 469.78446 476.232482\n", - "2009-12-31 143.741371 144.042085 658.61939 661.382828\n", - "2010-12-31 166.194695 166.345052 771.459775 771.920348\n", - "2011-12-31 183.355671 183.458162 729.547632 732.31107\n", - "2012-12-31 158.245476 158.296721 997.601118 1002.206848\n", - "2013-12-31 242.902706 243.056442 1595.424872 1596.346018\n", - "2014-12-31 222.65 222.7 2213.0 2221.0\n", - "2015-12-31 221.0 221.1 2742.0 2744.0\n", - "2016-12-31 199.8 199.85 2873.0 2914.0\n", - "2017-12-31 234.85 235.0 3786.0 3793.0\n", - "2018-12-31 152.9 153.06 4060.0 4062.0\n", - "2019-12-31 146.76 146.86 7722.0 7750.0\n", - "2020-12-31 120.94 120.96 9008.0 9016.0\n", - "2021-12-31 111.68 111.7 6730.0 6732.0" - ] - }, - "execution_count": 7, - "metadata": {}, - "output_type": "execute_result" - } - ], - "source": [ - "rd.get_history(universe=[\"LSEG.L\", \"VOD.L\"], fields=[\"BID\", \"ASK\"], interval=\"1Y\")" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "### Fundamental data" - ] - }, - { - "cell_type": "code", - "execution_count": 8, - "metadata": { - "tags": [] - }, - "outputs": [ - { - "data": { - "text/html": [ - "
\n", - "\n", - "\n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - "
InstrumentDateRevenue
0LSEG.L2014-12-31T00:00:00Z957300000
1LSEG.L2015-12-31T00:00:00Z1418600000
2LSEG.L2016-12-31T00:00:00Z1657000000
3LSEG.L2017-12-31T00:00:00Z1955000000
4LSEG.L2018-12-31T00:00:00Z2135000000
\n", - "
" - ], - "text/plain": [ - " Instrument Date Revenue\n", - "0 LSEG.L 2014-12-31T00:00:00Z 957300000\n", - "1 LSEG.L 2015-12-31T00:00:00Z 1418600000\n", - "2 LSEG.L 2016-12-31T00:00:00Z 1657000000\n", - "3 LSEG.L 2017-12-31T00:00:00Z 1955000000\n", - "4 LSEG.L 2018-12-31T00:00:00Z 2135000000" - ] - }, - "execution_count": 8, - "metadata": {}, - "output_type": "execute_result" - } - ], - "source": [ - "rd.get_history(universe=\"LSEG.L\", fields=\"TR.Revenue\", interval=\"1Y\", start=\"2015-01-01\", end=\"2020-10-01\")" - ] - }, - { - "cell_type": "code", - "execution_count": 9, - "metadata": {}, - "outputs": [ - { - "data": { - "text/html": [ - "
\n", - "\n", - "\n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - "
InstrumentDateRevenue
0LSEG.L2014-12-31T00:00:00Z957300000
1LSEG.L2015-12-31T00:00:00Z1418600000
2LSEG.L2016-12-31T00:00:00Z1657000000
3LSEG.L2017-12-31T00:00:00Z1955000000
4LSEG.L2018-12-31T00:00:00Z2135000000
5VOD.L2015-03-31T00:00:00Z48385000000
6VOD.L2016-03-31T00:00:00Z49810000000
7VOD.L2017-03-31T00:00:00Z47631000000
8VOD.L2018-03-31T00:00:00Z46571000000
9VOD.L2019-03-31T00:00:00Z43666000000
\n", - "
" - ], - "text/plain": [ - " Instrument Date Revenue\n", - "0 LSEG.L 2014-12-31T00:00:00Z 957300000\n", - "1 LSEG.L 2015-12-31T00:00:00Z 1418600000\n", - "2 LSEG.L 2016-12-31T00:00:00Z 1657000000\n", - "3 LSEG.L 2017-12-31T00:00:00Z 1955000000\n", - "4 LSEG.L 2018-12-31T00:00:00Z 2135000000\n", - "5 VOD.L 2015-03-31T00:00:00Z 48385000000\n", - "6 VOD.L 2016-03-31T00:00:00Z 49810000000\n", - "7 VOD.L 2017-03-31T00:00:00Z 47631000000\n", - "8 VOD.L 2018-03-31T00:00:00Z 46571000000\n", - "9 VOD.L 2019-03-31T00:00:00Z 43666000000" - ] - }, - "execution_count": 9, - "metadata": {}, - "output_type": "execute_result" - } - ], - "source": [ - "rd.get_history(universe=[\"LSEG.L\", \"VOD.L\"], fields=\"TR.Revenue\", interval=\"1Y\", start=\"2015-01-01\", end=\"2020-10-01\")" - ] - }, - { - "cell_type": "markdown", - "metadata": { - "tags": [] - }, - "source": [ - "### Fundamental and pricing" - ] - }, - { - "cell_type": "code", - "execution_count": 10, - "metadata": { - "tags": [] - }, - "outputs": [ - { - "data": { - "text/html": [ - "
\n", - "\n", - "\n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - "
LSEG.LASKBIDRevenue
Date
2014-12-31<NA><NA>957300000
2015-12-31274427421418600000
2016-12-31291428731657000000
2017-12-31379337861955000000
2018-12-3140624060<NA>
2019-12-3177507722<NA>
\n", - "
" - ], - "text/plain": [ - "LSEG.L ASK BID Revenue\n", - "Date \n", - "2014-12-31 957300000\n", - "2015-12-31 2744 2742 1418600000\n", - "2016-12-31 2914 2873 1657000000\n", - "2017-12-31 3793 3786 1955000000\n", - "2018-12-31 4062 4060 \n", - "2019-12-31 7750 7722 " - ] - }, - "execution_count": 10, - "metadata": {}, - "output_type": "execute_result" - } - ], - "source": [ - "rd.get_history(\n", - " universe='LSEG.L',\n", - " fields=[\"BID\", \"ASK\", \"TR.Revenue\"],\n", - " interval=\"1Y\",\n", - " start=\"2015-01-01\",\n", - " end=\"2019-10-01\",\n", - ")" - ] - }, - { - "cell_type": "code", - "execution_count": 11, - "metadata": { - "tags": [] - }, - "outputs": [ - { - "data": { - "text/html": [ - "
\n", - "\n", - "\n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - "
IBM.NVOD.L
ASKBIDRevenueASKBIDRevenue
Date
2014-12-31<NA><NA>92793000000<NA><NA><NA>
2015-03-31<NA><NA><NA><NA><NA>48385000000
2015-12-31131.411463131.3923681741000000221.1221.0<NA>
2016-03-31<NA><NA><NA><NA><NA>49810000000
2016-12-31158.576327158.54767279919000000199.85199.8<NA>
2017-03-31<NA><NA><NA><NA><NA>47631000000
2017-12-31146.636777146.62722679139000000235.0234.85<NA>
2018-03-31<NA><NA><NA><NA><NA>46571000000
2018-12-31108.535285108.51618279591000000153.06152.9<NA>
2019-03-31<NA><NA><NA><NA><NA>43666000000
2019-12-31127.991976127.963321<NA>146.86146.76<NA>
2020-12-31120.236044120.159631<NA>120.96120.94<NA>
\n", - "
" - ], - "text/plain": [ - " IBM.N VOD.L \n", - " ASK BID Revenue ASK BID Revenue\n", - "Date \n", - "2014-12-31 92793000000 \n", - "2015-03-31 48385000000\n", - "2015-12-31 131.411463 131.39236 81741000000 221.1 221.0 \n", - "2016-03-31 49810000000\n", - "2016-12-31 158.576327 158.547672 79919000000 199.85 199.8 \n", - "2017-03-31 47631000000\n", - "2017-12-31 146.636777 146.627226 79139000000 235.0 234.85 \n", - "2018-03-31 46571000000\n", - "2018-12-31 108.535285 108.516182 79591000000 153.06 152.9 \n", - "2019-03-31 43666000000\n", - "2019-12-31 127.991976 127.963321 146.86 146.76 \n", - "2020-12-31 120.236044 120.159631 120.96 120.94 " - ] - }, - "execution_count": 11, - "metadata": {}, - "output_type": "execute_result" - } - ], - "source": [ - "rd.get_history(\n", - " universe=[\"IBM.N\", \"VOD.L\"],\n", - " fields=[\"BID\", \"ASK\", \"TR.Revenue\"],\n", - " interval=\"1Y\",\n", - " start=\"2015-01-01\",\n", - " end=\"2020-10-01\",\n", - ")" - ] - }, - { - "cell_type": "code", - "execution_count": 12, - "metadata": {}, - "outputs": [ - { - "data": { - "text/html": [ - "
\n", - "\n", - "\n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", + " \n", + " \n", " \n", " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", + " \n", + " \n", + " \n", " \n", + " \n", + " \n", " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", + " \n", " \n", + " \n", " \n", " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", + " \n", + " \n", " \n", " \n", " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", + " \n", " \n", + " \n", " \n", " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", + " \n", + " \n", " \n", " \n", " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", + " \n", " \n", + " \n", " \n", " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", + " \n", + " \n", " \n", " \n", " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", + " \n", " \n", + " \n", " \n", " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", + " \n", + " \n", " \n", " \n", " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", + " \n", " \n", + " \n", " \n", " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", + " \n", + " \n", " \n", " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", + " \n", + "
IBM.NVOD.L
ASKBIDNet Income after TaxRevenue - MeanASKBIDNet Income after TaxRevenue - Mean
Timestamp
2020-12-31 00:00:00.000<NA><NA>5611000000<NA><NA><NA><NA><NA>
2021-03-31 00:00:00.000<NA><NA><NA><NA><NA><NA>536000000<NA>
2021-12-14 00:00:00.000<NA><NA><NA>68675200000<NA><NA><NA><NA>
2021-12-15 00:00:00.000<NA><NA><NA><NA><NA><NA><NA>45183014220
2021-12-17 14:40:48.038<NA><NA><NA><NA>113.98113.94<NA><NA>
2021-12-17 14:40:48.446<NA><NA><NA><NA>113.98113.94<NA><NA>
2021-12-17 14:40:48.525<NA><NA><NA><NA>113.98113.94<NA><NA>
2021-12-17 14:40:48.525<NA><NA><NA><NA>113.98113.94<NA><NA>
2021-12-17 14:40:48.525<NA><NA><NA><NA>113.98113.94<NA><NA>
2021-12-17 14:40:49.344<NA><NA><NA><NA>113.98113.94<NA><NA>
2021-12-17 14:40:49.344<NA><NA><NA><NA>113.98113.94<NA><NA>
2021-12-17 14:40:49.736<NA><NA><NA><NA>113.98113.94<NA><NA>
2021-12-17 14:40:49.851125.98125.84<NA><NA><NA><NA><NA><NA>
2021-12-17 14:40:49.851125.97125.87<NA><NA><NA><NA><NA><NA>
2021-12-17 14:40:49.851125.97125.86<NA><NA><NA><NA><NA><NA>
2021-12-17 14:40:49.851125.97125.85<NA><NA><NA><NA><NA><NA>
2021-12-17 14:40:49.851125.97125.84<NA><NA><NA><NA><NA><NA>
2021-12-17 14:40:49.851125.97125.83<NA><NA><NA><NA><NA><NA>
2021-12-17 14:40:49.851125.97125.82<NA><NA><NA><NA><NA><NA>
2021-12-17 14:40:49.851125.97125.79<NA><NA><NA><NA><NA><NA>
2021-12-17 14:40:49.851125.98125.79<NA><NA><NA><NA><NA><NA>
2021-12-17 14:40:49.851125.97125.89<NA><NA><NA><NA><NA><NA>
2021-12-17 14:40:49.851125.98125.85<NA><NA><NA><NA><NA><NA>
2021-12-17 14:40:49.851125.96125.85<NA><NA><NA><NA><NA><NA>
2021-12-17 14:40:49.851125.97125.88<NA><NA><NA><NA><NA><NA>RevenueRevenue
2021-12-17 14:40:49.852125.98125.85<NA><NA><NA><NA><NA><NA>Date
2021-12-17 14:40:49.866<NA><NA><NA><NA>113.98113.94<NA>2019-03-31 00:00:00+00:00<NA>43666000000
2021-12-17 14:40:49.871125.98125.85<NA><NA><NA><NA><NA>2018-12-31 00:00:00+00:002135000000<NA>
2021-12-17 14:40:49.871125.98125.86<NA><NA><NA><NA><NA>2018-03-31 00:00:00+00:00<NA>46571000000
2021-12-17 14:40:50.662<NA><NA><NA><NA>113.98113.94<NA>2017-12-31 00:00:00+00:001955000000<NA>
2021-12-17 14:40:50.806<NA><NA><NA><NA>113.98113.94<NA>2017-03-31 00:00:00+00:00<NA>47631000000
2021-12-17 14:40:50.852126.01125.86<NA><NA><NA><NA><NA>2016-12-31 00:00:00+00:001657000000<NA>
2021-12-17 14:40:50.852126125.86<NA><NA><NA><NA><NA>2016-03-31 00:00:00+00:00<NA>49810000000
2021-12-17 14:40:52.407<NA><NA><NA><NA>113.98113.94<NA>2015-12-31 00:00:00+00:001418600000<NA>
2021-12-17 14:40:52.407<NA><NA><NA><NA>113.98113.94<NA>2015-03-31 00:00:00+00:00<NA>48385000000
2021-12-17 14:40:52.408<NA><NA><NA><NA>113.98113.94<NA>2014-12-31 00:00:00+00:00957300000<NA>
2021-12-17 14:40:52.457<NA><NA><NA><NA>113.98113.94<NA><NA>
\n", + "
" + ], + "text/plain": [ + " LSEG.L VOD.L\n", + " Revenue Revenue\n", + "Date \n", + "2019-03-31 00:00:00+00:00 43666000000\n", + "2018-12-31 00:00:00+00:00 2135000000 \n", + "2018-03-31 00:00:00+00:00 46571000000\n", + "2017-12-31 00:00:00+00:00 1955000000 \n", + "2017-03-31 00:00:00+00:00 47631000000\n", + "2016-12-31 00:00:00+00:00 1657000000 \n", + "2016-03-31 00:00:00+00:00 49810000000\n", + "2015-12-31 00:00:00+00:00 1418600000 \n", + "2015-03-31 00:00:00+00:00 48385000000\n", + "2014-12-31 00:00:00+00:00 957300000 " + ] + }, + "execution_count": 5, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "rd.get_history(universe=[\"LSEG.L\", \"VOD.L\"], fields=\"TR.Revenue\", interval=\"1Y\", start=\"2015-01-01\", end=\"2020-10-01\")" + ] + }, + { + "cell_type": "markdown", + "metadata": { + "tags": [] + }, + "source": [ + "### Fundamental and pricing" + ] + }, + { + "cell_type": "code", + "execution_count": 6, + "metadata": { + "tags": [] + }, + "outputs": [ + { + "data": { + "text/html": [ + "
\n", + "\n", + "\n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", " \n", " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", + " \n", + " \n", + " \n", + " \n", " \n", + " \n", + " \n", " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", + " \n", + " \n", + " \n", " \n", " \n", " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", + " \n", + " \n", + " \n", " \n", " \n", " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", + " \n", + " \n", + " \n", + " \n", " \n", " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", + " \n", + " \n", + " \n", + " \n", " \n", " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", + " \n", + " \n", + " \n", + " \n", " \n", " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", + " \n", " \n", " \n", + " \n", " \n", " \n", "
LSEG.LASKBIDRevenue
2021-12-17 14:40:52.457<NA><NA><NA><NA>113.98113.94<NA><NA>Date
2021-12-17 14:40:53.009126125.85<NA><NA><NA><NA><NA>2019-12-31 00:00:00+00:0077507722<NA>
2021-12-17 14:40:53.009126.01125.85<NA><NA><NA><NA><NA>2018-12-31 00:00:00+00:0040624060<NA>
2021-12-17 14:40:53.688<NA><NA><NA><NA>113.98113.94<NA><NA>2017-12-31 00:00:00+00:00379337861955000000
2021-12-17 14:40:53.691<NA><NA><NA><NA>113.98113.94<NA><NA>2016-12-31 00:00:00+00:00291428731657000000
2021-12-17 14:40:53.814<NA><NA><NA><NA>113.98113.94<NA><NA>2015-12-31 00:00:00+00:00274427421418600000
2021-12-17 14:40:54.703<NA><NA><NA><NA>113.98113.942014-12-31 00:00:00+00:00<NA><NA>957300000
\n", "
" ], "text/plain": [ - " IBM.N \\\n", - " ASK BID Net Income after Tax Revenue - Mean \n", - "Timestamp \n", - "2020-12-31 00:00:00.000 5611000000 \n", - "2021-03-31 00:00:00.000 \n", - "2021-12-14 00:00:00.000 68675200000 \n", - "2021-12-15 00:00:00.000 \n", - "2021-12-17 14:40:48.038 \n", - "2021-12-17 14:40:48.446 \n", - "2021-12-17 14:40:48.525 \n", - "2021-12-17 14:40:48.525 \n", - "2021-12-17 14:40:48.525 \n", - "2021-12-17 14:40:49.344 \n", - "2021-12-17 14:40:49.344 \n", - "2021-12-17 14:40:49.736 \n", - "2021-12-17 14:40:49.851 125.98 125.84 \n", - "2021-12-17 14:40:49.851 125.97 125.87 \n", - "2021-12-17 14:40:49.851 125.97 125.86 \n", - "2021-12-17 14:40:49.851 125.97 125.85 \n", - "2021-12-17 14:40:49.851 125.97 125.84 \n", - "2021-12-17 14:40:49.851 125.97 125.83 \n", - "2021-12-17 14:40:49.851 125.97 125.82 \n", - "2021-12-17 14:40:49.851 125.97 125.79 \n", - "2021-12-17 14:40:49.851 125.98 125.79 \n", - "2021-12-17 14:40:49.851 125.97 125.89 \n", - "2021-12-17 14:40:49.851 125.98 125.85 \n", - "2021-12-17 14:40:49.851 125.96 125.85 \n", - "2021-12-17 14:40:49.851 125.97 125.88 \n", - "2021-12-17 14:40:49.852 125.98 125.85 \n", - "2021-12-17 14:40:49.866 \n", - "2021-12-17 14:40:49.871 125.98 125.85 \n", - "2021-12-17 14:40:49.871 125.98 125.86 \n", - "2021-12-17 14:40:50.662 \n", - "2021-12-17 14:40:50.806 \n", - "2021-12-17 14:40:50.852 126.01 125.86 \n", - "2021-12-17 14:40:50.852 126 125.86 \n", - "2021-12-17 14:40:52.407 \n", - "2021-12-17 14:40:52.407 \n", - "2021-12-17 14:40:52.408 \n", - "2021-12-17 14:40:52.457 \n", - "2021-12-17 14:40:52.457 \n", - "2021-12-17 14:40:53.009 126 125.85 \n", - "2021-12-17 14:40:53.009 126.01 125.85 \n", - "2021-12-17 14:40:53.688 \n", - "2021-12-17 14:40:53.691 \n", - "2021-12-17 14:40:53.814 \n", - "2021-12-17 14:40:54.703 \n", - "\n", - " VOD.L \n", - " ASK BID Net Income after Tax Revenue - Mean \n", - "Timestamp \n", - "2020-12-31 00:00:00.000 \n", - "2021-03-31 00:00:00.000 536000000 \n", - "2021-12-14 00:00:00.000 \n", - "2021-12-15 00:00:00.000 45183014220 \n", - "2021-12-17 14:40:48.038 113.98 113.94 \n", - "2021-12-17 14:40:48.446 113.98 113.94 \n", - "2021-12-17 14:40:48.525 113.98 113.94 \n", - "2021-12-17 14:40:48.525 113.98 113.94 \n", - "2021-12-17 14:40:48.525 113.98 113.94 \n", - "2021-12-17 14:40:49.344 113.98 113.94 \n", - "2021-12-17 14:40:49.344 113.98 113.94 \n", - "2021-12-17 14:40:49.736 113.98 113.94 \n", - "2021-12-17 14:40:49.851 \n", - "2021-12-17 14:40:49.851 \n", - "2021-12-17 14:40:49.851 \n", - "2021-12-17 14:40:49.851 \n", - "2021-12-17 14:40:49.851 \n", - "2021-12-17 14:40:49.851 \n", - "2021-12-17 14:40:49.851 \n", - "2021-12-17 14:40:49.851 \n", - "2021-12-17 14:40:49.851 \n", - "2021-12-17 14:40:49.851 \n", - "2021-12-17 14:40:49.851 \n", - "2021-12-17 14:40:49.851 \n", - "2021-12-17 14:40:49.851 \n", - "2021-12-17 14:40:49.852 \n", - "2021-12-17 14:40:49.866 113.98 113.94 \n", - "2021-12-17 14:40:49.871 \n", - "2021-12-17 14:40:49.871 \n", - "2021-12-17 14:40:50.662 113.98 113.94 \n", - "2021-12-17 14:40:50.806 113.98 113.94 \n", - "2021-12-17 14:40:50.852 \n", - "2021-12-17 14:40:50.852 \n", - "2021-12-17 14:40:52.407 113.98 113.94 \n", - "2021-12-17 14:40:52.407 113.98 113.94 \n", - "2021-12-17 14:40:52.408 113.98 113.94 \n", - "2021-12-17 14:40:52.457 113.98 113.94 \n", - "2021-12-17 14:40:52.457 113.98 113.94 \n", - "2021-12-17 14:40:53.009 \n", - "2021-12-17 14:40:53.009 \n", - "2021-12-17 14:40:53.688 113.98 113.94 \n", - "2021-12-17 14:40:53.691 113.98 113.94 \n", - "2021-12-17 14:40:53.814 113.98 113.94 \n", - "2021-12-17 14:40:54.703 113.98 113.94 " + "LSEG.L ASK BID Revenue\n", + "Date \n", + "2019-12-31 00:00:00+00:00 7750 7722 \n", + "2018-12-31 00:00:00+00:00 4062 4060 \n", + "2017-12-31 00:00:00+00:00 3793 3786 1955000000\n", + "2016-12-31 00:00:00+00:00 2914 2873 1657000000\n", + "2015-12-31 00:00:00+00:00 2744 2742 1418600000\n", + "2014-12-31 00:00:00+00:00 957300000" ] }, - "execution_count": 12, + "execution_count": 6, "metadata": {}, "output_type": "execute_result" } ], "source": [ "rd.get_history(\n", - " universe=[\"IBM.N\", \"VOD.L\"],\n", - " fields=[\"BID\", \"ASK\", 'TR.F.NetIncAfterTax', 'TR.RevenueMean'],\n", - " interval=\"tick\",\n", - " \n", + " universe='LSEG.L',\n", + " fields=[\"BID\", \"ASK\", \"TR.Revenue\"],\n", + " interval=\"1Y\",\n", + " start=\"2015-01-01\",\n", + " end=\"2019-10-01\",\n", ")" ] }, @@ -2612,7 +1340,7 @@ }, { "cell_type": "code", - "execution_count": 13, + "execution_count": 7, "metadata": { "tags": [] }, @@ -2649,29 +1377,29 @@ " \n", " \n", " \n", - " 2021-12-17 14:38:42.765\n", - " 2853.22\n", - " 2859.24\n", + " 2022-04-05 09:25:23.870000+00:00\n", + " 2870.01\n", + " 2880\n", " \n", " \n", - " 2021-12-17 14:38:43.620\n", - " 2853.21\n", - " 2859.24\n", + " 2022-04-05 09:25:23.870000+00:00\n", + " 2870.01\n", + " 2883\n", " \n", " \n", - " 2021-12-17 14:38:43.736\n", - " 2853.21\n", - " 2859.23\n", + " 2022-04-05 09:25:23.655000+00:00\n", + " 2870.01\n", + " 2880\n", " \n", " \n", - " 2021-12-17 14:38:43.736\n", - " 2853.21\n", - " 2859.24\n", + " 2022-04-05 09:25:09.959000+00:00\n", + " 2870.01\n", + " 2880.5\n", " \n", " \n", - " 2021-12-17 14:38:43.737\n", - " 2853.21\n", - " 2859.23\n", + " 2022-04-05 09:25:09.959000+00:00\n", + " 2870.01\n", + " 2885\n", " \n", " \n", " ...\n", @@ -2679,29 +1407,29 @@ " ...\n", " \n", " \n", - " 2021-12-17 14:40:54.813\n", - " 2857.22\n", - " 2860.56\n", + " 2022-04-05 08:12:11.209000+00:00\n", + " 2868.9\n", + " 2881.4\n", " \n", " \n", - " 2021-12-17 14:40:54.813\n", - " 2857.23\n", - " 2860.56\n", + " 2022-04-05 08:12:11.209000+00:00\n", + " 2868.9\n", + " 2882.2\n", " \n", " \n", - " 2021-12-17 14:40:54.839\n", - " 2857.22\n", - " 2860.56\n", + " 2022-04-05 08:12:10.364000+00:00\n", + " 2868.9\n", + " 2881.4\n", " \n", " \n", - " 2021-12-17 14:40:54.839\n", - " 2857.22\n", - " 2862\n", + " 2022-04-05 08:12:08.151000+00:00\n", + " 2869.57\n", + " 2881.4\n", " \n", " \n", - " 2021-12-17 14:40:54.844\n", - " 2857.22\n", - " 2861.99\n", + " 2022-04-05 08:12:08.150000+00:00\n", + " 2869.57\n", + " 2882.2\n", " \n", " \n", "\n", @@ -2709,24 +1437,24 @@ "" ], "text/plain": [ - "GOOG.O BID ASK\n", - "Timestamp \n", - "2021-12-17 14:38:42.765 2853.22 2859.24\n", - "2021-12-17 14:38:43.620 2853.21 2859.24\n", - "2021-12-17 14:38:43.736 2853.21 2859.23\n", - "2021-12-17 14:38:43.736 2853.21 2859.24\n", - "2021-12-17 14:38:43.737 2853.21 2859.23\n", - "... ... ...\n", - "2021-12-17 14:40:54.813 2857.22 2860.56\n", - "2021-12-17 14:40:54.813 2857.23 2860.56\n", - "2021-12-17 14:40:54.839 2857.22 2860.56\n", - "2021-12-17 14:40:54.839 2857.22 2862\n", - "2021-12-17 14:40:54.844 2857.22 2861.99\n", + "GOOG.O BID ASK\n", + "Timestamp \n", + "2022-04-05 09:25:23.870000+00:00 2870.01 2880\n", + "2022-04-05 09:25:23.870000+00:00 2870.01 2883\n", + "2022-04-05 09:25:23.655000+00:00 2870.01 2880\n", + "2022-04-05 09:25:09.959000+00:00 2870.01 2880.5\n", + "2022-04-05 09:25:09.959000+00:00 2870.01 2885\n", + "... ... ...\n", + "2022-04-05 08:12:11.209000+00:00 2868.9 2881.4\n", + "2022-04-05 08:12:11.209000+00:00 2868.9 2882.2\n", + "2022-04-05 08:12:10.364000+00:00 2868.9 2881.4\n", + "2022-04-05 08:12:08.151000+00:00 2869.57 2881.4\n", + "2022-04-05 08:12:08.150000+00:00 2869.57 2882.2\n", "\n", "[2000 rows x 2 columns]" ] }, - "execution_count": 13, + "execution_count": 7, "metadata": {}, "output_type": "execute_result" } @@ -2745,7 +1473,7 @@ }, { "cell_type": "code", - "execution_count": 14, + "execution_count": 8, "metadata": {}, "outputs": [ { @@ -2801,371 +1529,166 @@ " \n", " \n", " \n", - " 2021-12-17 14:38:40\n", - " 2853.22\n", - " 2853.23\n", - " 2853.21\n", - " 2853.23\n", - " 2859.24\n", - " 2859.24\n", - " 2859.22\n", - " 2859.22\n", - " \n", - " \n", - " 2021-12-17 14:38:45\n", - " 2853.22\n", - " 2853.23\n", - " 2853.21\n", - " 2853.22\n", - " 2859.22\n", - " 2859.22\n", - " 2859.19\n", - " 2859.19\n", - " \n", - " \n", - " 2021-12-17 14:38:50\n", - " 2853.22\n", - " 2853.23\n", - " 2853.21\n", - " 2853.23\n", - " 2859.19\n", - " 2859.21\n", - " 2859.17\n", - " 2859.20\n", - " \n", - " \n", - " 2021-12-17 14:38:55\n", - " 2853.22\n", - " 2853.23\n", - " 2853.21\n", - " 2853.22\n", - " 2859.20\n", - " 2859.21\n", - " 2859.17\n", - " 2859.20\n", - " \n", - " \n", - " 2021-12-17 14:39:00\n", - " 2853.22\n", - " 2854.97\n", - " 2853.21\n", - " 2853.22\n", - " 2859.20\n", - " 2859.20\n", - " 2859.12\n", - " 2859.12\n", - " \n", - " \n", - " 2021-12-17 14:39:05\n", - " 2853.22\n", - " 2854.16\n", - " 2853.21\n", - " 2853.22\n", - " 2859.12\n", - " 2859.12\n", - " 2857.93\n", - " 2857.93\n", - " \n", - " \n", - " 2021-12-17 14:39:10\n", - " 2853.22\n", - " 2853.23\n", - " 2853.17\n", - " 2853.19\n", - " 2857.93\n", - " 2859.20\n", - " 2857.54\n", - " 2857.54\n", - " \n", - " \n", - " 2021-12-17 14:39:15\n", - " 2853.20\n", - " 2854.95\n", - " 2853.19\n", - " 2854.95\n", - " 2857.53\n", - " 2857.55\n", - " 2857.53\n", - " 2857.55\n", - " \n", - " \n", - " 2021-12-17 14:39:20\n", - " 2854.95\n", - " 2857.45\n", - " 2854.54\n", - " 2856.00\n", - " 2857.55\n", - " 2859.21\n", - " 2857.55\n", - " 2859.21\n", - " \n", - " \n", - " 2021-12-17 14:39:25\n", - " 2856.01\n", - " 2856.02\n", - " 2856.00\n", - " 2856.01\n", - " 2859.21\n", - " 2859.21\n", - " 2859.21\n", - " 2859.21\n", - " \n", - " \n", - " 2021-12-17 14:39:30\n", - " 2856.01\n", - " 2858.59\n", - " 2856.00\n", - " 2856.00\n", - " 2859.21\n", - " 2861.12\n", - " 2859.21\n", - " 2861.11\n", - " \n", - " \n", - " 2021-12-17 14:39:35\n", - " 2856.00\n", - " 2857.61\n", - " 2856.00\n", - " 2857.61\n", - " 2861.11\n", - " 2861.12\n", - " 2861.10\n", - " 2861.12\n", - " \n", - " \n", - " 2021-12-17 14:39:40\n", - " 2857.61\n", - " 2858.87\n", - " 2857.01\n", - " 2857.01\n", - " 2861.12\n", - " 2861.48\n", - " 2859.94\n", - " 2861.48\n", - " \n", - " \n", - " 2021-12-17 14:39:45\n", - " 2857.01\n", - " 2857.01\n", - " 2856.00\n", - " 2856.00\n", - " 2861.48\n", - " 2861.48\n", - " 2861.37\n", - " 2861.37\n", - " \n", - " \n", - " 2021-12-17 14:39:50\n", - " 2856.01\n", - " 2856.04\n", - " 2856.00\n", - " 2856.00\n", - " 2861.37\n", - " 2861.37\n", - " 2861.36\n", - " 2861.37\n", - " \n", - " \n", - " 2021-12-17 14:39:55\n", - " 2856.00\n", - " 2857.44\n", - " 2856.00\n", - " 2856.00\n", - " 2861.37\n", - " 2861.37\n", - " 2858.67\n", - " 2861.35\n", - " \n", - " \n", - " 2021-12-17 14:40:00\n", - " 2856.00\n", - " 2856.16\n", - " 2856.00\n", - " 2856.01\n", - " 2861.35\n", - " 2861.37\n", - " 2860.53\n", - " 2861.37\n", - " \n", - " \n", - " 2021-12-17 14:40:05\n", - " 2856.01\n", - " 2856.08\n", - " 2856.01\n", - " 2856.01\n", - " 2861.37\n", - " 2861.37\n", - " 2858.89\n", - " 2861.33\n", - " \n", - " \n", - " 2021-12-17 14:40:10\n", - " 2856.01\n", - " 2857.17\n", - " 2856.01\n", - " 2856.02\n", - " 2861.33\n", - " 2861.35\n", - " 2859.43\n", - " 2859.43\n", - " \n", - " \n", - " 2021-12-17 14:40:15\n", - " 2857.82\n", - " 2857.82\n", - " 2856.02\n", - " 2856.04\n", - " 2861.34\n", - " 2861.35\n", - " 2859.43\n", - " 2861.35\n", - " \n", - " \n", - " 2021-12-17 14:40:20\n", - " 2856.04\n", - " 2856.53\n", - " 2856.01\n", - " 2856.01\n", - " 2861.35\n", - " 2861.35\n", - " 2856.52\n", - " 2858.10\n", - " \n", - " \n", - " 2021-12-17 14:40:25\n", - " 2856.01\n", - " 2856.01\n", - " 2856.01\n", - " 2856.01\n", - " 2858.10\n", - " 2858.10\n", - " 2858.09\n", - " 2858.09\n", - " \n", - " \n", - " 2021-12-17 14:40:30\n", - " 2856.01\n", - " 2856.01\n", - " 2854.00\n", - " 2854.00\n", - " 2858.09\n", - " 2858.10\n", - " 2857.06\n", - " 2858.10\n", - " \n", - " \n", - " 2021-12-17 14:40:35\n", - " 2854.00\n", - " 2855.01\n", - " 2854.00\n", - " 2855.00\n", - " 2858.10\n", - " 2858.10\n", - " 2858.09\n", - " 2858.10\n", - " \n", - " \n", - " 2021-12-17 14:40:40\n", - " 2855.00\n", - " 2855.01\n", - " 2855.00\n", - " 2855.00\n", - " 2858.10\n", - " 2858.10\n", - " 2858.10\n", - " 2858.10\n", - " \n", - " \n", - " 2021-12-17 14:40:45\n", - " 2855.00\n", - " 2855.01\n", - " 2855.00\n", - " 2855.00\n", - " 2858.10\n", - " 2858.10\n", - " 2856.54\n", - " 2858.10\n", - " \n", - " \n", - " 2021-12-17 14:40:50\n", - " 2855.00\n", - " 2857.23\n", - " 2855.00\n", - " 2857.22\n", - " 2858.10\n", - " 2862.00\n", - " 2858.10\n", - " 2861.99\n", + " 2022-04-05 08:12:05+00:00\n", + " 2869.57\n", + " 2869.57\n", + " 2869.57\n", + " 2869.57\n", + " 2882.2\n", + " 2882.2\n", + " 2881.4\n", + " 2881.40\n", + " \n", + " \n", + " 2022-04-05 08:12:10+00:00\n", + " 2868.90\n", + " 2870.07\n", + " 2868.90\n", + " 2870.07\n", + " 2881.4\n", + " 2882.2\n", + " 2881.4\n", + " 2881.40\n", + " \n", + " \n", + " 2022-04-05 08:12:15+00:00\n", + " NaN\n", + " NaN\n", + " NaN\n", + " NaN\n", + " NaN\n", + " NaN\n", + " NaN\n", + " NaN\n", + " \n", + " \n", + " 2022-04-05 08:12:20+00:00\n", + " 2868.90\n", + " 2870.97\n", + " 2868.90\n", + " 2869.07\n", + " 2881.4\n", + " 2881.4\n", + " 2881.4\n", + " 2881.40\n", + " \n", + " \n", + " 2022-04-05 08:12:25+00:00\n", + " 2869.07\n", + " 2870.07\n", + " 2868.90\n", + " 2870.07\n", + " 2881.4\n", + " 2881.4\n", + " 2881.4\n", + " 2881.40\n", + " \n", + " \n", + " ...\n", + " ...\n", + " ...\n", + " ...\n", + " ...\n", + " ...\n", + " ...\n", + " ...\n", + " ...\n", + " \n", + " \n", + " 2022-04-05 09:25:00+00:00\n", + " 2870.01\n", + " 2870.01\n", + " 2870.01\n", + " 2870.01\n", + " 2880.0\n", + " 2888.0\n", + " 2880.0\n", + " 2886.92\n", + " \n", + " \n", + " 2022-04-05 09:25:05+00:00\n", + " 2870.01\n", + " 2870.01\n", + " 2870.01\n", + " 2870.01\n", + " 2888.0\n", + " 2888.0\n", + " 2880.5\n", + " 2885.00\n", + " \n", + " \n", + " 2022-04-05 09:25:10+00:00\n", + " NaN\n", + " NaN\n", + " NaN\n", + " NaN\n", + " NaN\n", + " NaN\n", + " NaN\n", + " NaN\n", + " \n", + " \n", + " 2022-04-05 09:25:15+00:00\n", + " NaN\n", + " NaN\n", + " NaN\n", + " NaN\n", + " NaN\n", + " NaN\n", + " NaN\n", + " NaN\n", + " \n", + " \n", + " 2022-04-05 09:25:20+00:00\n", + " 2870.01\n", + " 2870.01\n", + " 2870.01\n", + " 2870.01\n", + " 2880.0\n", + " 2883.0\n", + " 2880.0\n", + " 2883.00\n", " \n", " \n", "\n", + "

880 rows × 8 columns

\n", "" ], "text/plain": [ - "GOOG.O BID ASK \\\n", - " open high low close open high \n", - "Timestamp \n", - "2021-12-17 14:38:40 2853.22 2853.23 2853.21 2853.23 2859.24 2859.24 \n", - "2021-12-17 14:38:45 2853.22 2853.23 2853.21 2853.22 2859.22 2859.22 \n", - "2021-12-17 14:38:50 2853.22 2853.23 2853.21 2853.23 2859.19 2859.21 \n", - "2021-12-17 14:38:55 2853.22 2853.23 2853.21 2853.22 2859.20 2859.21 \n", - "2021-12-17 14:39:00 2853.22 2854.97 2853.21 2853.22 2859.20 2859.20 \n", - "2021-12-17 14:39:05 2853.22 2854.16 2853.21 2853.22 2859.12 2859.12 \n", - "2021-12-17 14:39:10 2853.22 2853.23 2853.17 2853.19 2857.93 2859.20 \n", - "2021-12-17 14:39:15 2853.20 2854.95 2853.19 2854.95 2857.53 2857.55 \n", - "2021-12-17 14:39:20 2854.95 2857.45 2854.54 2856.00 2857.55 2859.21 \n", - "2021-12-17 14:39:25 2856.01 2856.02 2856.00 2856.01 2859.21 2859.21 \n", - "2021-12-17 14:39:30 2856.01 2858.59 2856.00 2856.00 2859.21 2861.12 \n", - "2021-12-17 14:39:35 2856.00 2857.61 2856.00 2857.61 2861.11 2861.12 \n", - "2021-12-17 14:39:40 2857.61 2858.87 2857.01 2857.01 2861.12 2861.48 \n", - "2021-12-17 14:39:45 2857.01 2857.01 2856.00 2856.00 2861.48 2861.48 \n", - "2021-12-17 14:39:50 2856.01 2856.04 2856.00 2856.00 2861.37 2861.37 \n", - "2021-12-17 14:39:55 2856.00 2857.44 2856.00 2856.00 2861.37 2861.37 \n", - "2021-12-17 14:40:00 2856.00 2856.16 2856.00 2856.01 2861.35 2861.37 \n", - "2021-12-17 14:40:05 2856.01 2856.08 2856.01 2856.01 2861.37 2861.37 \n", - "2021-12-17 14:40:10 2856.01 2857.17 2856.01 2856.02 2861.33 2861.35 \n", - "2021-12-17 14:40:15 2857.82 2857.82 2856.02 2856.04 2861.34 2861.35 \n", - "2021-12-17 14:40:20 2856.04 2856.53 2856.01 2856.01 2861.35 2861.35 \n", - "2021-12-17 14:40:25 2856.01 2856.01 2856.01 2856.01 2858.10 2858.10 \n", - "2021-12-17 14:40:30 2856.01 2856.01 2854.00 2854.00 2858.09 2858.10 \n", - "2021-12-17 14:40:35 2854.00 2855.01 2854.00 2855.00 2858.10 2858.10 \n", - "2021-12-17 14:40:40 2855.00 2855.01 2855.00 2855.00 2858.10 2858.10 \n", - "2021-12-17 14:40:45 2855.00 2855.01 2855.00 2855.00 2858.10 2858.10 \n", - "2021-12-17 14:40:50 2855.00 2857.23 2855.00 2857.22 2858.10 2862.00 \n", + "GOOG.O BID ASK \\\n", + " open high low close open high \n", + "Timestamp \n", + "2022-04-05 08:12:05+00:00 2869.57 2869.57 2869.57 2869.57 2882.2 2882.2 \n", + "2022-04-05 08:12:10+00:00 2868.90 2870.07 2868.90 2870.07 2881.4 2882.2 \n", + "2022-04-05 08:12:15+00:00 NaN NaN NaN NaN NaN NaN \n", + "2022-04-05 08:12:20+00:00 2868.90 2870.97 2868.90 2869.07 2881.4 2881.4 \n", + "2022-04-05 08:12:25+00:00 2869.07 2870.07 2868.90 2870.07 2881.4 2881.4 \n", + "... ... ... ... ... ... ... \n", + "2022-04-05 09:25:00+00:00 2870.01 2870.01 2870.01 2870.01 2880.0 2888.0 \n", + "2022-04-05 09:25:05+00:00 2870.01 2870.01 2870.01 2870.01 2888.0 2888.0 \n", + "2022-04-05 09:25:10+00:00 NaN NaN NaN NaN NaN NaN \n", + "2022-04-05 09:25:15+00:00 NaN NaN NaN NaN NaN NaN \n", + "2022-04-05 09:25:20+00:00 2870.01 2870.01 2870.01 2870.01 2880.0 2883.0 \n", + "\n", + "GOOG.O \n", + " low close \n", + "Timestamp \n", + "2022-04-05 08:12:05+00:00 2881.4 2881.40 \n", + "2022-04-05 08:12:10+00:00 2881.4 2881.40 \n", + "2022-04-05 08:12:15+00:00 NaN NaN \n", + "2022-04-05 08:12:20+00:00 2881.4 2881.40 \n", + "2022-04-05 08:12:25+00:00 2881.4 2881.40 \n", + "... ... ... \n", + "2022-04-05 09:25:00+00:00 2880.0 2886.92 \n", + "2022-04-05 09:25:05+00:00 2880.5 2885.00 \n", + "2022-04-05 09:25:10+00:00 NaN NaN \n", + "2022-04-05 09:25:15+00:00 NaN NaN \n", + "2022-04-05 09:25:20+00:00 2880.0 2883.00 \n", "\n", - "GOOG.O \n", - " low close \n", - "Timestamp \n", - "2021-12-17 14:38:40 2859.22 2859.22 \n", - "2021-12-17 14:38:45 2859.19 2859.19 \n", - "2021-12-17 14:38:50 2859.17 2859.20 \n", - "2021-12-17 14:38:55 2859.17 2859.20 \n", - "2021-12-17 14:39:00 2859.12 2859.12 \n", - "2021-12-17 14:39:05 2857.93 2857.93 \n", - "2021-12-17 14:39:10 2857.54 2857.54 \n", - "2021-12-17 14:39:15 2857.53 2857.55 \n", - "2021-12-17 14:39:20 2857.55 2859.21 \n", - "2021-12-17 14:39:25 2859.21 2859.21 \n", - "2021-12-17 14:39:30 2859.21 2861.11 \n", - "2021-12-17 14:39:35 2861.10 2861.12 \n", - "2021-12-17 14:39:40 2859.94 2861.48 \n", - "2021-12-17 14:39:45 2861.37 2861.37 \n", - "2021-12-17 14:39:50 2861.36 2861.37 \n", - "2021-12-17 14:39:55 2858.67 2861.35 \n", - "2021-12-17 14:40:00 2860.53 2861.37 \n", - "2021-12-17 14:40:05 2858.89 2861.33 \n", - "2021-12-17 14:40:10 2859.43 2859.43 \n", - "2021-12-17 14:40:15 2859.43 2861.35 \n", - "2021-12-17 14:40:20 2856.52 2858.10 \n", - "2021-12-17 14:40:25 2858.09 2858.09 \n", - "2021-12-17 14:40:30 2857.06 2858.10 \n", - "2021-12-17 14:40:35 2858.09 2858.10 \n", - "2021-12-17 14:40:40 2858.10 2858.10 \n", - "2021-12-17 14:40:45 2856.54 2858.10 \n", - "2021-12-17 14:40:50 2858.10 2861.99 " + "[880 rows x 8 columns]" ] }, - "execution_count": 14, + "execution_count": 8, "metadata": {}, "output_type": "execute_result" } @@ -3183,7 +1706,7 @@ }, { "cell_type": "code", - "execution_count": 15, + "execution_count": 9, "metadata": {}, "outputs": [], "source": [ @@ -3200,7 +1723,7 @@ ], "metadata": { "kernelspec": { - "display_name": "Python 3", + "display_name": "Python 3 (ipykernel)", "language": "python", "name": "python3" }, @@ -3214,7 +1737,7 @@ "name": "python", "nbconvert_exporter": "python", "pygments_lexer": "ipython3", - "version": "3.7.6" + "version": "3.9.7" } }, "nbformat": 4, diff --git a/Examples/1-Access/EX-1.01.03-PricingStream.ipynb b/Examples/1-Access/EX-1.01.03-PricingStream.ipynb new file mode 100644 index 0000000..9193c51 --- /dev/null +++ b/Examples/1-Access/EX-1.01.03-PricingStream.ipynb @@ -0,0 +1,668 @@ +{ + "cells": [ + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "----\n", + "\n", + "\n", + "# Data Library for Python\n", + "\n", + "----" + ] + }, + { + "cell_type": "markdown", + "metadata": { + "tags": [] + }, + "source": [ + "## Access layer - Pricing streams\n", + "This notebook demonstrates how to use the pricing stream of the Access layer to retrieve streaming level 1 pricing data. The Access layer provides a simplified pricing streams interface designed for FinCoders. The complete pricing stream interface is available in the Content layer of the library." + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "#### About the open_pricing_stream function \n", + "The **open_pricing_stream()** function allows you create and open a pricing stream object to retrieve streaming data via a single function call.\n", + "\n", + "\n", + "***open_pricing_stream()*** parameters: \n", + "- ***universe***: Single instrument or list of instruments to subscribe to\n", + " - Type: String or list\n", + " - Optional: No \n", + "- ***fields***: Single field or list of requested fields\n", + " - Type: String or list\n", + " - Optional: Yes \n", + "- ***service***: Name of the streaming service publishing the instruments\n", + " - Type: String\n", + " - Optional: Yes \n", + "- ***on_data***: Callback function to receive incoming data events\n", + " - Type: Function\n", + " - Optional: Yes \n", + "\n", + "**open_pricing_stream()** returns a PricingStream object." + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "#### Learn more\n", + "\n", + "To learn more about the Refinitiv Data Library for Python please join the Refinitiv Developer Community. By [registering](https://developers.refinitiv.com/iam/register) and [logging](https://developers.refinitiv.com/content/devportal/en_us/initCookie.html) into the Refinitiv Developer Community portal you will have free access to a number of learning materials like \n", + " [Quick Start guides](https://developers.refinitiv.com/en/api-catalog/refinitiv-data-platform/refinitiv-data-library-for-python/quick-start), \n", + " [Tutorials](https://developers.refinitiv.com/en/api-catalog/refinitiv-data-platform/refinitiv-data-library-for-python/learning), \n", + " [Documentation](https://developers.refinitiv.com/en/api-catalog/refinitiv-data-platform/refinitiv-data-library-for-python/docs)\n", + " and much more.\n", + "\n", + "#### Getting Help and Support\n", + "\n", + "If you have any questions regarding using the API, please post them on \n", + "the [Refinitiv Data Q&A Forum](https://community.developers.refinitiv.com/spaces/321/index.html). \n", + "The Refinitiv Developer Community will be happy to help. \n", + "\n", + "----" + ] + }, + { + "cell_type": "markdown", + "metadata": { + "tags": [] + }, + "source": [ + "## Set the configuration file location\n", + "For a better ease of use, you have the option to set initialization parameters of the Refinitiv Data Library in the _refinitiv-data.config.json_ configuration file. This file must be located beside your notebook, in your user folder or in a folder defined by the _RD_LIB_CONFIG_PATH_ environment variable. The _RD_LIB_CONFIG_PATH_ environment variable is the option used by this series of examples. The following code sets this environment variable. " + ] + }, + { + "cell_type": "code", + "execution_count": 1, + "metadata": {}, + "outputs": [], + "source": [ + "import os\n", + "os.environ[\"RD_LIB_CONFIG_PATH\"] = \"../../Configuration\"" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Some Imports to start with" + ] + }, + { + "cell_type": "code", + "execution_count": 1, + "metadata": {}, + "outputs": [], + "source": [ + "import refinitiv.data as rd\n", + "import datetime\n", + "from IPython.display import display, clear_output" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Open the data session\n", + "\n", + "The open_session() function creates and open sessions based on the information contained in the refinitiv-data.config.json configuration file. Please edit this file to set the session type and other parameters required for the session you want to open." + ] + }, + { + "cell_type": "code", + "execution_count": 2, + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "" + ] + }, + "execution_count": 2, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "rd.open_session()" + ] + }, + { + "cell_type": "markdown", + "metadata": { + "tags": [] + }, + "source": [ + "## Retrieve data" + ] + }, + { + "cell_type": "markdown", + "metadata": { + "tags": [] + }, + "source": [ + "### Using pricing streams with events" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "#### Define a callback to receive data events" + ] + }, + { + "cell_type": "code", + "execution_count": 3, + "metadata": {}, + "outputs": [], + "source": [ + "def display_data(data, instrument, stream):\n", + " clear_output(wait=True)\n", + " current_time = datetime.datetime.now().time()\n", + " print(current_time, \"- Data received for\", instrument)\n", + " display(data)" + ] + }, + { + "cell_type": "markdown", + "metadata": { + "tags": [] + }, + "source": [ + "#### Open the stream and register the callback" + ] + }, + { + "cell_type": "code", + "execution_count": 4, + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "11:27:37.419180 - Data received for EUR=\n" + ] + }, + { + "data": { + "text/html": [ + "
\n", + "\n", + "\n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
BIDASK
EUR=1.09831.0985
\n", + "
" + ], + "text/plain": [ + " BID ASK\n", + "EUR= 1.0983 1.0985" + ] + }, + "metadata": {}, + "output_type": "display_data" + } + ], + "source": [ + "stream = rd.open_pricing_stream(\n", + " universe=['GBP=', 'EUR=', 'JPY='],\n", + " fields=['BID', 'ASK'],\n", + " on_data=display_data\n", + ")" + ] + }, + { + "cell_type": "markdown", + "metadata": { + "tags": [] + }, + "source": [ + "#### Close the stream" + ] + }, + { + "cell_type": "code", + "execution_count": 5, + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "" + ] + }, + "execution_count": 5, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "stream.close()" + ] + }, + { + "cell_type": "markdown", + "metadata": { + "tags": [] + }, + "source": [ + "### Using pricing streams as a data cache" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "#### Create and open a Pricing stream object\n", + "\n", + "The Pricing stream object is created for a list of instruments and fields. The fields parameter is optionnal. If you omit it, the Pricing stream will retrieve all fields available for the requested instruments" + ] + }, + { + "cell_type": "code", + "execution_count": 6, + "metadata": {}, + "outputs": [], + "source": [ + "stream = rd.open_pricing_stream(\n", + " universe=['GBP=', 'EUR=', 'JPY='],\n", + " fields=['BID', 'ASK']\n", + ")" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "As soon as the method returns, the stream object is ready to be used. Its internal cache is constantly kept updated with the latest streaming information received from Eikon, Refinitiv Workspace or the Refinitiv Data Platform. All this happens behind the scene, waiting for your application to pull out data from the cache. " + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "#### Extract snapshot data from the streaming cache\n", + "Once the stream is opened, you can use the get_snapshot method to pull out data from its internal cache. get_snapshot can be called any number of times. As these calls return the latest received values, successive calls to get_snapshot may return different values. Returned DataFrames do not change in real-time, get_snapshot must be called every time your application needs fresh values. " + ] + }, + { + "cell_type": "code", + "execution_count": 7, + "metadata": {}, + "outputs": [ + { + "data": { + "text/html": [ + "
\n", + "\n", + "\n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
InstrumentBIDASK
0GBP=1.31341.3138
1EUR=1.09811.0985
2JPY=122.77122.8
\n", + "
" + ], + "text/plain": [ + " Instrument BID ASK\n", + "0 GBP= 1.3134 1.3138\n", + "1 EUR= 1.0981 1.0985\n", + "2 JPY= 122.77 122.8" + ] + }, + "execution_count": 7, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "stream.get_snapshot()" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "#### Get a snapshot for a subset of instruments and fields" + ] + }, + { + "cell_type": "code", + "execution_count": 8, + "metadata": {}, + "outputs": [ + { + "data": { + "text/html": [ + "
\n", + "\n", + "\n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
InstrumentBIDASK
0EUR=1.09811.0983
1GBP=1.31331.3137
\n", + "
" + ], + "text/plain": [ + " Instrument BID ASK\n", + "0 EUR= 1.0981 1.0983\n", + "1 GBP= 1.3133 1.3137" + ] + }, + "execution_count": 8, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "stream.get_snapshot(\n", + " universe = ['EUR=', 'GBP='], \n", + " fields = ['BID', 'ASK']\n", + ")" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "#### Other options to get values from the streaming cache" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "##### Direct access to real-time fields" + ] + }, + { + "cell_type": "code", + "execution_count": 9, + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "GBP/BID: 1.3133\n", + "EUR/BID: 1.0981\n" + ] + } + ], + "source": [ + "print('GBP/BID:', stream['GBP=']['BID'])\n", + "print('EUR/BID:', stream['EUR=']['BID'])" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "##### Direct acces to a streaming instrument" + ] + }, + { + "cell_type": "code", + "execution_count": 10, + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "1.3134\n" + ] + } + ], + "source": [ + "gbp = stream['GBP=']\n", + "print(gbp['BID'])" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "##### Iterate on fields" + ] + }, + { + "cell_type": "code", + "execution_count": 11, + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "GBP=\n", + "\tBID: 1.3133\n", + "\tASK: 1.3137\n", + "JPY=\n", + "\tBID: 122.76\n", + "\tASK: 122.79\n" + ] + } + ], + "source": [ + "print('GBP=')\n", + "for field_name, field_value in stream['GBP=']:\n", + " print('\\t' + field_name + ': ', field_value)\n", + " \n", + "print('JPY=')\n", + "for field_name, field_value in stream['JPY=']:\n", + " print('\\t' + field_name + ': ', field_value)" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "##### Iterate on streaming instruments and fields" + ] + }, + { + "cell_type": "code", + "execution_count": 12, + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "GBP=\n", + "\tBID: 1.3134\n", + "\tASK: 1.3135\n", + "EUR=\n", + "\tBID: 1.0981\n", + "\tASK: 1.0983\n", + "JPY=\n", + "\tBID: 122.76\n", + "\tASK: 122.79\n" + ] + } + ], + "source": [ + "for streaming_instrument in stream:\n", + " print(streaming_instrument.name)\n", + " for field_name, field_value in streaming_instrument:\n", + " print('\\t' + field_name + ': ', field_value)" + ] + }, + { + "cell_type": "markdown", + "metadata": { + "tags": [] + }, + "source": [ + "#### Close the stream" + ] + }, + { + "cell_type": "code", + "execution_count": 13, + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "" + ] + }, + "execution_count": 13, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "stream.close()" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "### Close the session" + ] + }, + { + "cell_type": "code", + "execution_count": 14, + "metadata": {}, + "outputs": [], + "source": [ + "rd.close_session()" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [] + } + ], + "metadata": { + "kernelspec": { + "display_name": "Python 3 (ipykernel)", + "language": "python", + "name": "python3" + }, + "language_info": { + "codemirror_mode": { + "name": "ipython", + "version": 3 + }, + "file_extension": ".py", + "mimetype": "text/x-python", + "name": "python", + "nbconvert_exporter": "python", + "pygments_lexer": "ipython3", + "version": "3.9.7" + } + }, + "nbformat": 4, + "nbformat_minor": 4 +} diff --git a/Examples/1-Access/EX-1.01.04-PricingStream-Recorder.ipynb b/Examples/1-Access/EX-1.01.04-PricingStream-Recorder.ipynb new file mode 100644 index 0000000..44bc086 --- /dev/null +++ b/Examples/1-Access/EX-1.01.04-PricingStream-Recorder.ipynb @@ -0,0 +1,1890 @@ +{ + "cells": [ + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "----\n", + "\n", + "\n", + "# Data Library for Python\n", + "\n", + "----" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Access layer - Pricing Stream Recorder\n", + "This notebook demonstrates how to use the pricing recorder to record a history of streaming data and generate Open High Low Close bars." + ] + }, + { + "cell_type": "markdown", + "metadata": { + "tags": [] + }, + "source": [ + "#### About the record() method\n", + "The **record()** method allows you record data events received by a PricingStream object. Received data can be used to automatically generate OHLC bars stored by the recorder.\n", + "\n", + "***record()*** parameters: \n", + "- ***frequency***: Frequency used to generate OHLC bars\n", + " - Type: String\n", + " - Optional: Yes \n", + "- ***duration***: Recording duration. Can be provided in seconds, minutes, hours\n", + " - Type: String\n", + " - Optional: Yes \n", + "- ***ticks_per_bar***: Number of ticks to record for Tick Bars recording \n", + " - Type: String\n", + " - Optional: Yes \n", + "- ***on_data***: Callback function called when a new tick is received or when a new bar is calculated\n", + " - Type: Function\n", + " - Optional: Yes \n", + "\n" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "#### Learn more\n", + "\n", + "To learn more about the Refinitiv Data Library for Python please join the Refinitiv Developer Community. By [registering](https://developers.refinitiv.com/iam/register) and [logging](https://developers.refinitiv.com/content/devportal/en_us/initCookie.html) into the Refinitiv Developer Community portal you will have free access to a number of learning materials like \n", + " [Quick Start guides](https://developers.refinitiv.com/en/api-catalog/refinitiv-data-platform/refinitiv-data-library-for-python/quick-start), \n", + " [Tutorials](https://developers.refinitiv.com/en/api-catalog/refinitiv-data-platform/refinitiv-data-library-for-python/learning), \n", + " [Documentation](https://developers.refinitiv.com/en/api-catalog/refinitiv-data-platform/refinitiv-data-library-for-python/docs)\n", + " and much more.\n", + "\n", + "#### Getting Help and Support\n", + "\n", + "If you have any questions regarding using the API, please post them on \n", + "the [Refinitiv Data Q&A Forum](https://community.developers.refinitiv.com/spaces/321/index.html). \n", + "The Refinitiv Developer Community will be happy to help. \n", + "\n", + "----" + ] + }, + { + "cell_type": "markdown", + "metadata": { + "tags": [] + }, + "source": [ + "## Set the configuration file location\n", + "For a better ease of use, you have the option to set initialization parameters of the Refinitiv Data Library in the _refinitiv-data.config.json_ configuration file. This file must be located beside your notebook, in your user folder or in a folder defined by the _RD_LIB_CONFIG_PATH_ environment variable. The _RD_LIB_CONFIG_PATH_ environment variable is the option used by this series of examples. The following code sets this environment variable. " + ] + }, + { + "cell_type": "code", + "execution_count": 19, + "metadata": {}, + "outputs": [], + "source": [ + "import os\n", + "os.environ[\"RD_LIB_CONFIG_PATH\"] = \"../../Configuration\"" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Some Imports to start with" + ] + }, + { + "cell_type": "code", + "execution_count": 27, + "metadata": {}, + "outputs": [], + "source": [ + "import refinitiv.data as rd\n", + "import datetime\n", + "from IPython.display import display, clear_output" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Open the data session\n", + "\n", + "The open_session() function creates and open sessions based on the information contained in the refinitiv-data.config.json configuration file. Please edit this file to set the session type and other parameters required for the session you want to open." + ] + }, + { + "cell_type": "code", + "execution_count": 28, + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "" + ] + }, + "execution_count": 28, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "rd.open_session()" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Retrieve data" + ] + }, + { + "cell_type": "markdown", + "metadata": { + "tags": [] + }, + "source": [ + "### Record ticks" + ] + }, + { + "cell_type": "markdown", + "metadata": { + "tags": [] + }, + "source": [ + "#### Create and open a Pricing stream" + ] + }, + { + "cell_type": "code", + "execution_count": 29, + "metadata": {}, + "outputs": [], + "source": [ + "stream = rd.open_pricing_stream(\n", + " universe=['GBP=', 'EUR=', 'JPY='],\n", + " fields=['BID', 'ASK']\n", + ")" + ] + }, + { + "cell_type": "markdown", + "metadata": { + "tags": [] + }, + "source": [ + "#### Start recording" + ] + }, + { + "cell_type": "code", + "execution_count": 30, + "metadata": {}, + "outputs": [], + "source": [ + "stream.recorder.record(frequency='tick')" + ] + }, + { + "cell_type": "markdown", + "metadata": { + "tags": [] + }, + "source": [ + "... Wait for a little while (20 to 30 seconds) ...\n", + "\n", + "#### Stop recording and display the recorded history" + ] + }, + { + "cell_type": "code", + "execution_count": 31, + "metadata": {}, + "outputs": [ + { + "data": { + "text/html": [ + "
\n", + "\n", + "\n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
EUR=GBP=JPY=
BIDASKBIDASKBIDASK
Timestamp
2022-04-06 09:51:06.992352<NA><NA>1.30651.3073<NA><NA>
2022-04-06 09:51:07.117399<NA><NA><NA><NA>123.85123.86
2022-04-06 09:51:07.1179311.08931.0897<NA><NA><NA><NA>
2022-04-06 09:51:07.266327<NA><NA>1.30681.3072<NA><NA>
2022-04-06 09:51:07.370310<NA><NA><NA><NA>123.85123.86
2022-04-06 09:51:08.135952<NA><NA>1.30681.3072<NA><NA>
2022-04-06 09:51:08.1368251.08931.0897<NA><NA><NA><NA>
2022-04-06 09:51:08.137607<NA><NA><NA><NA>123.84123.87
2022-04-06 09:51:09.188348<NA><NA><NA><NA>123.85123.88
2022-04-06 09:51:09.3741231.08941.0895<NA><NA><NA><NA>
2022-04-06 09:51:09.429889<NA><NA><NA><NA>123.86123.87
2022-04-06 09:51:09.787422<NA><NA><NA><NA>123.84123.89
2022-04-06 09:51:10.082099<NA><NA><NA><NA>123.85123.86
2022-04-06 09:51:10.155077<NA><NA>1.30681.3072<NA><NA>
2022-04-06 09:51:10.1554721.08931.0897<NA><NA><NA><NA>
2022-04-06 09:51:10.361769<NA><NA><NA><NA>123.86123.89
2022-04-06 09:51:11.1581321.08931.0897<NA><NA><NA><NA>
2022-04-06 09:51:11.158744<NA><NA>1.30681.3072<NA><NA>
2022-04-06 09:51:11.181274<NA><NA><NA><NA>123.85123.88
2022-04-06 09:51:11.4369071.08941.0895<NA><NA><NA><NA>
2022-04-06 09:51:11.758030<NA><NA><NA><NA>123.85123.9
2022-04-06 09:51:12.161178<NA><NA>1.30681.3072<NA><NA>
2022-04-06 09:51:12.1617061.08931.0897<NA><NA><NA><NA>
2022-04-06 09:51:12.420921<NA><NA><NA><NA>123.86123.87
2022-04-06 09:51:13.1933751.08921.0896<NA><NA><NA><NA>
2022-04-06 09:51:13.193554<NA><NA><NA><NA>123.86123.89
2022-04-06 09:51:14.1868871.08931.0897<NA><NA><NA><NA>
2022-04-06 09:51:14.187412<NA><NA>1.30681.3072<NA><NA>
2022-04-06 09:51:14.663303<NA><NA><NA><NA>123.84123.89
\n", + "
" + ], + "text/plain": [ + " EUR= GBP= JPY= \n", + " BID ASK BID ASK BID ASK\n", + "Timestamp \n", + "2022-04-06 09:51:06.992352 1.3065 1.3073 \n", + "2022-04-06 09:51:07.117399 123.85 123.86\n", + "2022-04-06 09:51:07.117931 1.0893 1.0897 \n", + "2022-04-06 09:51:07.266327 1.3068 1.3072 \n", + "2022-04-06 09:51:07.370310 123.85 123.86\n", + "2022-04-06 09:51:08.135952 1.3068 1.3072 \n", + "2022-04-06 09:51:08.136825 1.0893 1.0897 \n", + "2022-04-06 09:51:08.137607 123.84 123.87\n", + "2022-04-06 09:51:09.188348 123.85 123.88\n", + "2022-04-06 09:51:09.374123 1.0894 1.0895 \n", + "2022-04-06 09:51:09.429889 123.86 123.87\n", + "2022-04-06 09:51:09.787422 123.84 123.89\n", + "2022-04-06 09:51:10.082099 123.85 123.86\n", + "2022-04-06 09:51:10.155077 1.3068 1.3072 \n", + "2022-04-06 09:51:10.155472 1.0893 1.0897 \n", + "2022-04-06 09:51:10.361769 123.86 123.89\n", + "2022-04-06 09:51:11.158132 1.0893 1.0897 \n", + "2022-04-06 09:51:11.158744 1.3068 1.3072 \n", + "2022-04-06 09:51:11.181274 123.85 123.88\n", + "2022-04-06 09:51:11.436907 1.0894 1.0895 \n", + "2022-04-06 09:51:11.758030 123.85 123.9\n", + "2022-04-06 09:51:12.161178 1.3068 1.3072 \n", + "2022-04-06 09:51:12.161706 1.0893 1.0897 \n", + "2022-04-06 09:51:12.420921 123.86 123.87\n", + "2022-04-06 09:51:13.193375 1.0892 1.0896 \n", + "2022-04-06 09:51:13.193554 123.86 123.89\n", + "2022-04-06 09:51:14.186887 1.0893 1.0897 \n", + "2022-04-06 09:51:14.187412 1.3068 1.3072 \n", + "2022-04-06 09:51:14.663303 123.84 123.89" + ] + }, + "metadata": {}, + "output_type": "display_data" + } + ], + "source": [ + "stream.recorder.stop()\n", + "tick_history = stream.recorder.get_history()\n", + "display(tick_history)" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "#### Resample the tick history to 5 seconds bars" + ] + }, + { + "cell_type": "code", + "execution_count": 32, + "metadata": {}, + "outputs": [ + { + "data": { + "text/html": [ + "
\n", + "\n", + "\n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
EUR=GBP=JPY=
BIDASKBID...ASKBIDASK
openhighlowcloseopenhighlowcloseopenhigh...lowcloseopenhighlowcloseopenhighlowclose
Timestamp
2022-04-06 09:51:051.08931.08941.08931.08941.08971.08971.08951.08951.30651.3068...1.30721.3072123.85123.86123.84123.84123.86123.89123.86123.89
2022-04-06 09:51:101.08941.08941.08921.08931.08951.08971.08951.08971.30681.3068...1.30721.3072123.85123.86123.84123.84123.86123.90123.86123.89
\n", + "

2 rows × 24 columns

\n", + "
" + ], + "text/plain": [ + " EUR= \\\n", + " BID ASK \n", + " open high low close open high low \n", + "Timestamp \n", + "2022-04-06 09:51:05 1.0893 1.0894 1.0893 1.0894 1.0897 1.0897 1.0895 \n", + "2022-04-06 09:51:10 1.0894 1.0894 1.0892 1.0893 1.0895 1.0897 1.0895 \n", + "\n", + " GBP= ... JPY= \\\n", + " BID ... ASK BID \n", + " close open high ... low close open \n", + "Timestamp ... \n", + "2022-04-06 09:51:05 1.0895 1.3065 1.3068 ... 1.3072 1.3072 123.85 \n", + "2022-04-06 09:51:10 1.0897 1.3068 1.3068 ... 1.3072 1.3072 123.85 \n", + "\n", + " \n", + " ASK \n", + " high low close open high low close \n", + "Timestamp \n", + "2022-04-06 09:51:05 123.86 123.84 123.84 123.86 123.89 123.86 123.89 \n", + "2022-04-06 09:51:10 123.86 123.84 123.84 123.86 123.90 123.86 123.89 \n", + "\n", + "[2 rows x 24 columns]" + ] + }, + "execution_count": 32, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "tick_history.ohlc(\"5s\")" + ] + }, + { + "cell_type": "markdown", + "metadata": { + "tags": [] + }, + "source": [ + "#### Close the stream" + ] + }, + { + "cell_type": "code", + "execution_count": 33, + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "" + ] + }, + "execution_count": 33, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "stream.close()" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "### Record OHLC bars for a given duration" + ] + }, + { + "cell_type": "markdown", + "metadata": { + "tags": [] + }, + "source": [ + "#### Create and open a Pricing stream" + ] + }, + { + "cell_type": "code", + "execution_count": 34, + "metadata": {}, + "outputs": [], + "source": [ + "stream = rd.open_pricing_stream(\n", + " universe=['GBP=', 'EUR=', 'JPY='],\n", + " fields=['BID', 'ASK']\n", + ")" + ] + }, + { + "cell_type": "markdown", + "metadata": { + "tags": [] + }, + "source": [ + "#### Start recording\n", + "\n", + "Start recording 2 seconds OHLC bars for a duration of 10 seconds" + ] + }, + { + "cell_type": "code", + "execution_count": 35, + "metadata": {}, + "outputs": [], + "source": [ + "stream.recorder.record(frequency='2s', duration='10s')" + ] + }, + { + "cell_type": "markdown", + "metadata": { + "tags": [] + }, + "source": [ + "#### Display the recorded history" + ] + }, + { + "cell_type": "code", + "execution_count": 36, + "metadata": {}, + "outputs": [ + { + "data": { + "text/html": [ + "
\n", + "\n", + "\n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
EUR=GBP=JPY=ticks count
ASKBIDASK...BIDASKBID
closehighlowopenclosehighlowopenclosehigh...openclosehighlowopenclosehighlowopen
Timestamp
2022-04-06 09:51:27.4423621.08981.08981.08981.08981.08941.08941.08941.08941.30741.3074...1.3065123.87123.90123.87123.90123.86123.86123.86123.864
2022-04-06 09:51:29.4671831.08981.08981.08981.08981.08941.08941.08941.08941.30721.3072...1.3068123.87123.87123.87123.87123.86123.86123.86123.866
2022-04-06 09:51:31.4926281.08961.08981.08961.08961.08951.08951.08931.08951.30721.3072...1.3068123.90123.90123.88123.88123.86123.86123.85123.858
2022-04-06 09:51:33.5187791.08961.08971.08961.08961.08951.08951.08931.08941.30721.3072...1.3068123.87123.88123.87123.88123.86123.86123.85123.857
2022-04-06 09:51:35.5409471.08971.08971.08961.08961.08931.08951.08931.0895<NA><NA>...<NA>123.88123.88123.88123.88123.85123.85123.85123.853
\n", + "

5 rows × 25 columns

\n", + "
" + ], + "text/plain": [ + " EUR= \\\n", + " ASK BID \n", + " close high low open close high \n", + "Timestamp \n", + "2022-04-06 09:51:27.442362 1.0898 1.0898 1.0898 1.0898 1.0894 1.0894 \n", + "2022-04-06 09:51:29.467183 1.0898 1.0898 1.0898 1.0898 1.0894 1.0894 \n", + "2022-04-06 09:51:31.492628 1.0896 1.0898 1.0896 1.0896 1.0895 1.0895 \n", + "2022-04-06 09:51:33.518779 1.0896 1.0897 1.0896 1.0896 1.0895 1.0895 \n", + "2022-04-06 09:51:35.540947 1.0897 1.0897 1.0896 1.0896 1.0893 1.0895 \n", + "\n", + " GBP= ... \\\n", + " ASK ... BID \n", + " low open close high ... open \n", + "Timestamp ... \n", + "2022-04-06 09:51:27.442362 1.0894 1.0894 1.3074 1.3074 ... 1.3065 \n", + "2022-04-06 09:51:29.467183 1.0894 1.0894 1.3072 1.3072 ... 1.3068 \n", + "2022-04-06 09:51:31.492628 1.0893 1.0895 1.3072 1.3072 ... 1.3068 \n", + "2022-04-06 09:51:33.518779 1.0893 1.0894 1.3072 1.3072 ... 1.3068 \n", + "2022-04-06 09:51:35.540947 1.0893 1.0895 ... \n", + "\n", + " JPY= \\\n", + " ASK BID \n", + " close high low open close high \n", + "Timestamp \n", + "2022-04-06 09:51:27.442362 123.87 123.90 123.87 123.90 123.86 123.86 \n", + "2022-04-06 09:51:29.467183 123.87 123.87 123.87 123.87 123.86 123.86 \n", + "2022-04-06 09:51:31.492628 123.90 123.90 123.88 123.88 123.86 123.86 \n", + "2022-04-06 09:51:33.518779 123.87 123.88 123.87 123.88 123.86 123.86 \n", + "2022-04-06 09:51:35.540947 123.88 123.88 123.88 123.88 123.85 123.85 \n", + "\n", + " ticks count \n", + " \n", + " low open \n", + "Timestamp \n", + "2022-04-06 09:51:27.442362 123.86 123.86 4 \n", + "2022-04-06 09:51:29.467183 123.86 123.86 6 \n", + "2022-04-06 09:51:31.492628 123.85 123.85 8 \n", + "2022-04-06 09:51:33.518779 123.85 123.85 7 \n", + "2022-04-06 09:51:35.540947 123.85 123.85 3 \n", + "\n", + "[5 rows x 25 columns]" + ] + }, + "execution_count": 36, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "stream.recorder.get_history()" + ] + }, + { + "cell_type": "markdown", + "metadata": { + "tags": [] + }, + "source": [ + "#### Close the stream" + ] + }, + { + "cell_type": "code", + "execution_count": 37, + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "" + ] + }, + "execution_count": 37, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "stream.close()" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "### Record OHLC bars with events" + ] + }, + { + "cell_type": "markdown", + "metadata": { + "tags": [] + }, + "source": [ + "#### Create and open a Pricing stream" + ] + }, + { + "cell_type": "code", + "execution_count": 38, + "metadata": {}, + "outputs": [], + "source": [ + "stream = rd.open_pricing_stream(\n", + " universe=['GBP=', 'EUR=', 'JPY='],\n", + " fields=['BID', 'ASK']\n", + ")" + ] + }, + { + "cell_type": "markdown", + "metadata": { + "tags": [] + }, + "source": [ + "#### Define a callback to receive new bars" + ] + }, + { + "cell_type": "code", + "execution_count": 39, + "metadata": {}, + "outputs": [], + "source": [ + "def print_history(bar, recorder):\n", + " clear_output(wait=True)\n", + " current_time = datetime.datetime.now().time()\n", + " print(\"New bar received at\", current_time)\n", + " display(bar)" + ] + }, + { + "cell_type": "markdown", + "metadata": { + "tags": [] + }, + "source": [ + "#### Start recording\n", + "\n", + "Start recording 5 seconds OHLC bars" + ] + }, + { + "cell_type": "code", + "execution_count": 40, + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "New bar received at 09:52:09.192136\n" + ] + }, + { + "data": { + "text/html": [ + "
\n", + "\n", + "\n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
GBP=JPY=EUR=ticks count
BIDASKBID...ASKBIDASK
openhighlowcloseopenhighlowcloseopenhigh...closeopenhighlowcloseopenhighlowclose
Timestamp
2022-04-06 09:52:09.1744361.30661.30681.30651.30661.3071.30721.30691.307123.86123.86...123.881.08911.08941.08911.08931.08951.08951.08941.089416
\n", + "

1 rows × 25 columns

\n", + "
" + ], + "text/plain": [ + " GBP= \\\n", + " BID ASK \n", + " open high low close open high \n", + "Timestamp \n", + "2022-04-06 09:52:09.174436 1.3066 1.3068 1.3065 1.3066 1.307 1.3072 \n", + "\n", + " JPY= ... \\\n", + " BID ... ASK \n", + " low close open high ... close \n", + "Timestamp ... \n", + "2022-04-06 09:52:09.174436 1.3069 1.307 123.86 123.86 ... 123.88 \n", + "\n", + " EUR= \\\n", + " BID ASK \n", + " open high low close open high \n", + "Timestamp \n", + "2022-04-06 09:52:09.174436 1.0891 1.0894 1.0891 1.0893 1.0895 1.0895 \n", + "\n", + " ticks count \n", + " \n", + " low close \n", + "Timestamp \n", + "2022-04-06 09:52:09.174436 1.0894 1.0894 16 \n", + "\n", + "[1 rows x 25 columns]" + ] + }, + "metadata": {}, + "output_type": "display_data" + } + ], + "source": [ + "stream.recorder.record(frequency='5s', on_data=print_history)" + ] + }, + { + "cell_type": "markdown", + "metadata": { + "tags": [] + }, + "source": [ + "... Wait for a little while (20 to 30 seconds) ...\n", + "\n", + "#### Stop recording and display the recorded history" + ] + }, + { + "cell_type": "code", + "execution_count": 41, + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "New bar received at 09:52:09.646821\n" + ] + }, + { + "data": { + "text/html": [ + "
\n", + "\n", + "\n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
EUR=GBP=JPY=ticks count
ASKBIDASK...BIDASKBID
closehighlowopenclosehighlowopenclosehigh...openclosehighlowopenclosehighlowopen
Timestamp
2022-04-06 09:51:54.1039821.08981.08981.08971.08971.08941.08951.08941.08951.30721.3072...1.3068123.88123.91123.88123.89123.87123.87123.86123.8615
2022-04-06 09:51:59.1258341.08961.08981.08951.08981.08951.08951.08921.08941.30721.3072...1.3068123.88123.9123.88123.9123.87123.87123.85123.8519
2022-04-06 09:52:04.1482931.08971.08971.08951.08961.08931.08941.08921.08941.30711.3072...1.3067123.89123.89123.88123.88123.86123.87123.85123.8715
2022-04-06 09:52:09.1744361.08941.08951.08941.08951.08931.08941.08911.08911.30701.3072...1.3066123.88123.89123.88123.89123.85123.86123.85123.8616
2022-04-06 09:52:09.600084<NA><NA><NA><NA><NA><NA><NA><NA>1.30711.3071...1.3067<NA><NA><NA><NA><NA><NA><NA><NA>1
\n", + "

5 rows × 25 columns

\n", + "
" + ], + "text/plain": [ + " EUR= \\\n", + " ASK BID \n", + " close high low open close high \n", + "Timestamp \n", + "2022-04-06 09:51:54.103982 1.0898 1.0898 1.0897 1.0897 1.0894 1.0895 \n", + "2022-04-06 09:51:59.125834 1.0896 1.0898 1.0895 1.0898 1.0895 1.0895 \n", + "2022-04-06 09:52:04.148293 1.0897 1.0897 1.0895 1.0896 1.0893 1.0894 \n", + "2022-04-06 09:52:09.174436 1.0894 1.0895 1.0894 1.0895 1.0893 1.0894 \n", + "2022-04-06 09:52:09.600084 \n", + "\n", + " GBP= ... \\\n", + " ASK ... BID \n", + " low open close high ... open \n", + "Timestamp ... \n", + "2022-04-06 09:51:54.103982 1.0894 1.0895 1.3072 1.3072 ... 1.3068 \n", + "2022-04-06 09:51:59.125834 1.0892 1.0894 1.3072 1.3072 ... 1.3068 \n", + "2022-04-06 09:52:04.148293 1.0892 1.0894 1.3071 1.3072 ... 1.3067 \n", + "2022-04-06 09:52:09.174436 1.0891 1.0891 1.3070 1.3072 ... 1.3066 \n", + "2022-04-06 09:52:09.600084 1.3071 1.3071 ... 1.3067 \n", + "\n", + " JPY= \\\n", + " ASK BID \n", + " close high low open close high \n", + "Timestamp \n", + "2022-04-06 09:51:54.103982 123.88 123.91 123.88 123.89 123.87 123.87 \n", + "2022-04-06 09:51:59.125834 123.88 123.9 123.88 123.9 123.87 123.87 \n", + "2022-04-06 09:52:04.148293 123.89 123.89 123.88 123.88 123.86 123.87 \n", + "2022-04-06 09:52:09.174436 123.88 123.89 123.88 123.89 123.85 123.86 \n", + "2022-04-06 09:52:09.600084 \n", + "\n", + " ticks count \n", + " \n", + " low open \n", + "Timestamp \n", + "2022-04-06 09:51:54.103982 123.86 123.86 15 \n", + "2022-04-06 09:51:59.125834 123.85 123.85 19 \n", + "2022-04-06 09:52:04.148293 123.85 123.87 15 \n", + "2022-04-06 09:52:09.174436 123.85 123.86 16 \n", + "2022-04-06 09:52:09.600084 1 \n", + "\n", + "[5 rows x 25 columns]" + ] + }, + "execution_count": 41, + "metadata": {}, + "output_type": "execute_result" + }, + { + "data": { + "text/html": [ + "
\n", + "\n", + "\n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
GBP=ticks count
BIDASK
openhighlowcloseopenhighlowclose
Timestamp
2022-04-06 09:52:09.6000841.30671.30671.30671.30671.30711.30711.30711.30711
\n", + "
" + ], + "text/plain": [ + " GBP= \\\n", + " BID ASK \n", + " open high low close open high \n", + "Timestamp \n", + "2022-04-06 09:52:09.600084 1.3067 1.3067 1.3067 1.3067 1.3071 1.3071 \n", + "\n", + " ticks count \n", + " \n", + " low close \n", + "Timestamp \n", + "2022-04-06 09:52:09.600084 1.3071 1.3071 1 " + ] + }, + "metadata": {}, + "output_type": "display_data" + } + ], + "source": [ + "stream.recorder.stop()\n", + "stream.recorder.get_history()" + ] + }, + { + "cell_type": "markdown", + "metadata": { + "tags": [] + }, + "source": [ + "#### Delete history" + ] + }, + { + "cell_type": "code", + "execution_count": 20, + "metadata": {}, + "outputs": [ + { + "data": { + "text/html": [ + "
\n", + "\n", + "\n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
\n", + "
" + ], + "text/plain": [ + "Empty DataFrame\n", + "Columns: []\n", + "Index: []" + ] + }, + "execution_count": 20, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "stream.recorder.delete()\n", + "stream.recorder.get_history()" + ] + }, + { + "cell_type": "markdown", + "metadata": { + "tags": [] + }, + "source": [ + "#### Close the stream" + ] + }, + { + "cell_type": "code", + "execution_count": 42, + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "" + ] + }, + "execution_count": 42, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "stream.close()" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "### Close the session" + ] + }, + { + "cell_type": "code", + "execution_count": 44, + "metadata": {}, + "outputs": [], + "source": [ + "rd.close_session()" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [] + } + ], + "metadata": { + "kernelspec": { + "display_name": "Python 3 (ipykernel)", + "language": "python", + "name": "python3" + }, + "language_info": { + "codemirror_mode": { + "name": "ipython", + "version": 3 + }, + "file_extension": ".py", + "mimetype": "text/x-python", + "name": "python", + "nbconvert_exporter": "python", + "pygments_lexer": "ipython3", + "version": "3.9.7" + } + }, + "nbformat": 4, + "nbformat_minor": 4 +} diff --git a/Examples/1-Access/EX-1.01.05-News.ipynb b/Examples/1-Access/EX-1.01.05-News.ipynb new file mode 100644 index 0000000..d82e099 --- /dev/null +++ b/Examples/1-Access/EX-1.01.05-News.ipynb @@ -0,0 +1,408 @@ +{ + "cells": [ + { + "cell_type": "markdown", + "id": "3cd7a646-7bf9-419e-96bf-5b3df1ca2d4a", + "metadata": {}, + "source": [ + "----\n", + "\n", + "\n", + "# Data Library for Python\n", + "\n", + "----" + ] + }, + { + "cell_type": "markdown", + "id": "21de9fed", + "metadata": {}, + "source": [ + "## Access layer - News\n", + "This notebook demonstrates how to retrieve News story and headlines data using the get_story() and get_headlines() functions." + ] + }, + { + "cell_type": "markdown", + "id": "0dbb74e0-321b-4a2f-9f1f-e7cbf4c00d2f", + "metadata": { + "jp-MarkdownHeadingCollapsed": true, + "tags": [] + }, + "source": [ + "#### About the get_headlines function\n", + "The get_headlines() function allows you to retrieve news headlines via a single function call.\n", + "\n", + "***get_headlines()*** parameters: \n", + "- ***query***: The user search query.\n", + " - Type: String\n", + " - Optionnal: No \n", + "- ***count***: Count to limit number of headlines. Min value is 0. Default: 10\n", + " - Type: int\n", + " - Optionnal: Yes \n", + "- ***start***: Beginning of date range. String format is: '%Y-%m-%dT%H:%M:%S'. e.g. '2016-01-20T15:04:05'.\n", + " - Type: str or timedelta, optional\n", + " - Optionnal: Yes \n", + "- ***end***: End of date range. String format is: '%Y-%m-%dT%H:%M:%S'. e.g. '2016-01-20T15:04:05'.\n", + " - Type: str or timedelta, optional\n", + " - Optionnal: Yes \n", + "- ***order_by***: Value from SortOrder enum. Default: SortOrder.new_to_old\n", + " - Type: SortOrder\n", + " - Optionnal: Yes \n", + " \n", + "**get_headlines()** pd.DataFrame. Headlines dataframe.\n", + "\n", + "#### About the get_story function\n", + "The get_story() function allows you to retrieve news story data.\n", + "\n", + "***get_story()*** parameters: \n", + "- ***story_id***: News Story ID\n", + " - Type: String\n", + " - Optionnal: No \n", + "- ***format***: Specifies the type of response. If parameter Format.TEXT return text string, otherwise returns HTML response\n", + " - Type: String or Format enum\n", + " - Optionnal: Yes \n", + " \n", + "**get_story()** returns a story html or text response" + ] + }, + { + "cell_type": "markdown", + "id": "487b8730-3f8c-4d8d-a35c-b67e57647d7b", + "metadata": {}, + "source": [ + "#### Learn more\n", + "\n", + "To learn more about the Refinitiv Data Library for Python please join the Refinitiv Developer Community. By [registering](https://developers.refinitiv.com/iam/register) and [logging](https://developers.refinitiv.com/content/devportal/en_us/initCookie.html) into the Refinitiv Developer Community portal you will have free access to a number of learning materials like \n", + " [Quick Start guides](https://developers.refinitiv.com/en/api-catalog/refinitiv-data-platform/refinitiv-data-library-for-python/quick-start), \n", + " [Tutorials](https://developers.refinitiv.com/en/api-catalog/refinitiv-data-platform/refinitiv-data-library-for-python/learning), \n", + " [Documentation](https://developers.refinitiv.com/en/api-catalog/refinitiv-data-platform/refinitiv-data-library-for-python/docs)\n", + " and much more.\n", + "\n", + "#### Getting Help and Support\n", + "\n", + "If you have any questions regarding using the API, please post them on \n", + "the [Refinitiv Data Q&A Forum](https://community.developers.refinitiv.com/spaces/321/index.html). \n", + "The Refinitiv Developer Community will be happy to help. \n", + "\n", + "----" + ] + }, + { + "cell_type": "markdown", + "id": "4b2bee84-023e-4e96-9efb-5159fab4f00e", + "metadata": { + "tags": [] + }, + "source": [ + "## Set the configuration file location\n", + "For a better ease of use, you have the option to set initialization parameters of the Refinitiv Data Library in the _refinitiv-data.config.json_ configuration file. This file must be located beside your notebook, in your user folder or in a folder defined by the _RD_LIB_CONFIG_PATH_ environment variable. The _RD_LIB_CONFIG_PATH_ environment variable is the option used by this series of examples. The following code sets this environment variable. " + ] + }, + { + "cell_type": "code", + "execution_count": 1, + "id": "37736150-28f7-43fe-badc-0ed895a1e722", + "metadata": {}, + "outputs": [], + "source": [ + "import os\n", + "os.environ[\"RD_LIB_CONFIG_PATH\"] = \"../../Configuration\"" + ] + }, + { + "cell_type": "markdown", + "id": "1dd95573", + "metadata": {}, + "source": [ + "## Some Imports to start with" + ] + }, + { + "cell_type": "code", + "execution_count": 2, + "id": "3e6d79fd", + "metadata": {}, + "outputs": [], + "source": [ + "import refinitiv.data as rd\n", + "from datetime import timedelta\n", + "from IPython.display import HTML\n", + "import pandas as pd\n", + "pd.options.display.max_colwidth = 100" + ] + }, + { + "cell_type": "markdown", + "id": "a34e7d8a", + "metadata": {}, + "source": [ + "## Open the data session\n", + "\n", + "The open_session() function creates and open sessions based on the information contained in the refinitiv-data.config.json configuration file. Please edit this file to set the session type and other parameters required for the session you want to open." + ] + }, + { + "cell_type": "code", + "execution_count": 3, + "id": "478baaad-c743-4776-9286-7951cbbd157a", + "metadata": { + "tags": [] + }, + "outputs": [ + { + "data": { + "text/plain": [ + "" + ] + }, + "execution_count": 3, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "rd.open_session()" + ] + }, + { + "cell_type": "markdown", + "id": "442e6240", + "metadata": {}, + "source": [ + "## Retrieve data" + ] + }, + { + "cell_type": "markdown", + "id": "5507075a", + "metadata": {}, + "source": [ + "### Get headlines" + ] + }, + { + "cell_type": "code", + "execution_count": 4, + "id": "22fd4706", + "metadata": { + "scrolled": true + }, + "outputs": [ + { + "data": { + "text/html": [ + "
\n", + "\n", + "\n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
headlinestoryIdsourceCode
versionCreated
2023-01-27 18:37:24.875MARKET POST: LONGER-DATED MUNIS WEAKER AT MIDDAYurn:newsml:newswire.refinitiv.com:20230127:nMnw145079:1NS:TM3
2023-01-27 14:57:18.237GENERAL OBLIGATION TOPS TYPE OF SECURITIESurn:newsml:newswire.refinitiv.com:20230127:nMnw145064:1NS:TM3
2023-01-27 10:53:26.611CORRECTION-UPDATE 1 - NowCM takes over Nivaura's digital debt operationsurn:newsml:newswire.refinitiv.com:20230125:nIfp8TShzv:1NS:IFR
\n", + "
" + ], + "text/plain": [ + " headline \\\n", + "versionCreated \n", + "2023-01-27 18:37:24.875 MARKET POST: LONGER-DATED MUNIS WEAKER AT MIDDAY \n", + "2023-01-27 14:57:18.237 GENERAL OBLIGATION TOPS TYPE OF SECURITIES \n", + "2023-01-27 10:53:26.611 CORRECTION-UPDATE 1 - NowCM takes over Nivaura's digital debt operations \n", + "\n", + " storyId \\\n", + "versionCreated \n", + "2023-01-27 18:37:24.875 urn:newsml:newswire.refinitiv.com:20230127:nMnw145079:1 \n", + "2023-01-27 14:57:18.237 urn:newsml:newswire.refinitiv.com:20230127:nMnw145064:1 \n", + "2023-01-27 10:53:26.611 urn:newsml:newswire.refinitiv.com:20230125:nIfp8TShzv:1 \n", + "\n", + " sourceCode \n", + "versionCreated \n", + "2023-01-27 18:37:24.875 NS:TM3 \n", + "2023-01-27 14:57:18.237 NS:TM3 \n", + "2023-01-27 10:53:26.611 NS:IFR " + ] + }, + "execution_count": 4, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "rd.news.get_headlines(\"LSEG\", start=\"20.03.2021\", end=timedelta(days=-4), count=3)" + ] + }, + { + "cell_type": "markdown", + "id": "b07a9aa4", + "metadata": {}, + "source": [ + "### Get story" + ] + }, + { + "cell_type": "code", + "execution_count": 5, + "id": "4ca8f820", + "metadata": {}, + "outputs": [ + { + "data": { + "text/html": [ + "

Adds details, Biden, analyst comments, updates markets

  • Consumer price index jumps 1.3% in June
  • Year-on-year CPI soars 9.1%, largest gain since 1981
  • Core CPI increases 0.7%; up 5.9% on year-on-year basis

By Lucia Mutikani

- U.S. annual consumer prices jumped 9.1% in June, the largest increase in more than four decades, leaving Americans to dig deeper to pay for gasoline, food, healthcare and rents, and the Federal Reserve most certain to hike interest rates by another 75 basis points at the end of the month.

The bigger-than-expected rise in the year-on-year consumer price index reported by the Labor Department on Wednesday also reflected higher prices for a range of other goods and services, including motor vehicles, apparel and household furniture. The CPI increased by the most in nearly 17 years on a monthly basis.

The inflation data followed stronger-than-expected job growth in June and suggested that the U.S. central bank's aggressive monetary policy stance had made little progress thus far in cooling demand and bringing inflation down to its 2% target. With rents surging by the most in 36 years, inflation could become entrenched.

Though a global problem, stubbornly high inflation is a political risk for U.S. President Joe Biden and his Democratic Party heading into congressional elections in November.

\"Despite the Fed's best intentions, the economy looks to be moving into a higher inflation regime,\" said Christopher Rupkey, chief economist at FWDBONDS in New York. \"The Fed is even further behind the curve after today's sizzling report.\"

The consumer price index increased 1.3% last month, the biggest monthly gain since September 2005, after advancing 1.0% in May. A 7.5% surge in energy prices accounted for nearly half of the increase in the CPI. Gasoline prices jumped 11.2% after rebounding by 4.1% in May. Prices at the pump have since declined considerably from June's record highs.

Natural gas prices rose 8.2%, the most since October 2005. The cost of food consumed at home rose 1.0%, posting the sixth straight monthly increase of at least 1.0%.

In the 12 months through June, the CPI jumped 9.1%. That was the biggest gain since November 1981 and followed an 8.6% rise in May. Economists polled by Reuters had forecast the CPI would rise 1.1% and accelerating 8.8% year-on-year.

Consumer prices are surging, driven by snarled global supply chains and massive fiscal stimulus from governments early in the COVID-19 pandemic.

The ongoing war in Ukraine, which has caused a spike in global food and fuel prices, has worsened the situation.

President Biden sought to draw some comfort from the retreat in gasoline prices from June, when they averaged above $5 per gallon, according to data from motorist advocacy group AAA. They were averaging $4.631 per gallon on Wednesday, which could ease some of the pressure on consumers.

\"Those savings are providing important breathing room for American families,\" Biden said in a statement. \"And, other commodities like wheat have fallen sharply since this report.\"

Annual food prices are rising at their fastest pace since February 1981, with energy prices posting their largest jump in more than 42 years.

Financial markets overwhelmingly expect the Fed to raise its policy rate by 75 basis points at its July 26-27 meeting. A full-percentage-point increase has not been ruled out and attention now shifts to the University of Michigan's consumer inflation expectations survey on Friday.

The Bank of Canada surprised by hiking its policy rate by 100 basis points on Wednesday, a super-sized increase last seen in 1998. (Full Story)

The Fed has raised its overnight interest rate by 150 basis points since March.

U.S. stocks were mixed. The dollar fell against a basket of currencies. U.S. Treasury prices rose.


UNDERLYING INFLATION

The economy created 372,000 jobs in June, with a broader measure of unemployment hitting a record low. (Full Story)

There had been hope that a shift in spending from goods to services would help cool inflation. But the very tight labor market is boosting wages, adding to higher prices for services.

Underlying inflation pressures sizzled last month. Excluding the volatile food and energy components, the CPI gained 0.7% in June after climbing 0.6% in May. The so-called core CPI was lifted by the cost of rent, which shot up 0.8%, the largest monthly increase since April 1986.

Rents are one of the largest and stickiest inflation categories, which raises the risk of the Fed maintaining its aggressive rate hikes into the second-half of the year.

\"There remain miles to go before getting back toward anything resembling price stability,\" said Sarah House, a senior economist at Wells Fargo in Charlotte, North Carolina.

New vehicle prices maintained their upward trend as did those for used cars and trucks. The cost of motor vehicle maintenance and repairs surged 2.0%, the most since September 1974. Healthcare costs rose 0.7%, with a record increase in the cost of dental services.

Apparel prices increased 0.8%, despite retailers like Walmart WMT.N and Target TGT.N reporting excess inventory that would require discounts. But prices for hotels, car rentals and airfares declined. Still, core goods prices rose a strong 0.8%, while services gained 0.7%.

The core CPI increased 5.9% in the 12 months through June. That followed a 6.0% rise in the 12 months through May and marked a third straight month of deceleration.

High inflation is eroding wage gains, which together with rising borrowing costs could crimp consumer spending, leaving economists to expect a mild recession at the turn of the year. Inflation-adjusted average weekly earning fell 1.0% in June.


(Reporting by Lucia Mutikani; Editing by Chizu Nomiyama and Paul Simao)

(( Lucia.Mutikani@thomsonreuters.com ))


(c) Copyright Thomson Reuters 2022. Click For Restrictions - https://agency.reuters.com/en/copyright.html


Keywords: USA-ECONOMY/ (WRAPUP 2, PIX, GRAPHICS)

" + ], + "text/plain": [ + "" + ] + }, + "execution_count": 5, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "story = rd.news.get_story(\"urn:newsml:reuters.com:20220713:nL1N2YU10J\", format=rd.news.Format.HTML)\n", + "HTML(story)" + ] + }, + { + "cell_type": "code", + "execution_count": 6, + "id": "2153c3f6", + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Adds details, Biden, analyst comments, updates markets\n", + "By Lucia Mutikani\n", + "WASHINGTON, July 13 (Reuters)\n", + "The bigger-than-expected rise in the year-on-year consumer price index reported by the Labor Department on Wednesday also reflected higher prices for \n", + "The inflation data followed stronger-than-expected job growth in June and suggested that the U.S. central bank's aggressive monetary policy stance had made little progress thus far in cooling demand and bringing inflation down to its 2% target\n", + "Though a global problem, stubbornly high inflation is a political risk for U.S. President Joe Biden and his Democratic Party heading into congressional elections in November. \n", + "\"Despite the Fed's best intentions, the economy looks to be moving into a higher inflation regime,\" said Christopher Rupkey, chief economist at FWDBONDS in New York. \"The Fed is even further behind the curve after today's sizzling report.\" \n", + "The consumer price index increased 1.3% last month, the biggest monthly gain since September 2005, after advancing 1.0% in May. A 7.5% surge in energy prices accounted for nearly half of the increase in the CPI. Gasoline prices jumped 11.2% after rebounding by 4.1% in May. \n", + "Natural gas prices rose 8.2%, the most since October 2005. The cost of food consumed at home rose 1.0%, posting the sixth straight monthly increase of at least 1.0%.\n", + "In the 12 months through June, the CPI jumped 9.1%. That was the biggest gain since November 1981 and followed an 8.6% rise in May. Economists polled by Reuters had forecast the CPI would rise 1.1% and accelerating 8.8% year-on-year. \n", + "Consumer prices are surging, driven by snarled global supply chains and massive fiscal stimulus from governments early in the COVID-19 pandemic.\n", + "The ongoing war in Ukraine, which has caused a spike in global food and fuel prices, has worsened the situation.\n", + "President Biden sought to draw some comfort from the retreat in gasoline prices \n", + "\"Those savings are providing important breathing room for American families,\" Biden said in a statement. \"And, other commodities like wheat have fallen sharply since this report.\"\n", + " Annual food prices are rising at their fastest pace since February 1981, with energy prices posting their largest jump in more than 42 years.\n", + " Financial markets overwhelmingly expect the Fed to raise its policy rate by 75 basis points at its July 26-27 meeting. \n", + "The Bank of Canada surprised by hiking its policy rate by 100 basis points on Wednesday, a super-sized increase last seen in 1998. (\n", + "The Fed has raised its overnight interest rate by 150 basis points since March. \n", + "U.S. stocks were mixed. The dollar fell against a basket of currencies. U.S. Treasury prices rose.\n", + "UNDERLYING INFLATION \n", + "The economy created 372,000 jobs in June, with a broader measure of unemployment hitting a record low. (\n", + "There had been hope that a shift in spending from goods to services would help cool inflation. But the very tight labor market is boosting wages, adding to higher prices for services.\n", + "Underlying inflation pressures sizzled last month. Excluding the volatile food and energy components, the CPI gained 0.7% in June after climbing 0.6% in May. The so-called core CPI was lifted by the cost of rent, which shot up 0.8%, the largest monthly increase since April 1986. \n", + "Rents are one of the largest and stickiest inflation categories, which raises the risk of the Fed maintaining its aggressive rate hikes into the second-half of the year.\n", + "\"There remain miles to go before getting back toward anything resembling price stability,\" said Sarah House, a senior economist at Wells Fargo in Charlotte, North Carolina.\n", + "New vehicle prices maintained their upward trend as did those for used cars and trucks. The cost of motor vehicle maintenance and repairs surged 2.0%, the most since September 1974. Healthcare costs rose 0.7%, with a record increase in the cost of dental services. \n", + "Apparel prices increased 0.8%, despite retailers like Walmart \n", + "The core CPI increased 5.9% in the 12 months through June. That followed a 6.0% rise in the 12 months through May \n", + "High inflation is eroding wage gains, which together with rising borrowing costs could crimp consumer spending, leaving economists to expect a mild recession at the turn of the year. Inflation-adjusted average weekly earning fell 1.0% in June.\n", + " (Reporting by Lucia Mutikani; Editing by Chizu Nomiyama and Paul Simao)\n", + "(( \n", + "(c) Copyright Thomson Reuters 2022. Click For Restrictions - https://agency.reuters.com/en/copyright.html\n", + "Keywords: USA-ECONOMY/ (WRAPUP 2, PIX, GRAPHICS)\n" + ] + } + ], + "source": [ + "text = rd.news.get_story(\"urn:newsml:reuters.com:20220713:nL1N2YU10J\", format=rd.news.Format.TEXT)\n", + "print(text)" + ] + }, + { + "cell_type": "markdown", + "id": "5927b518", + "metadata": {}, + "source": [ + "### Close the session" + ] + }, + { + "cell_type": "code", + "execution_count": 7, + "id": "a3284410", + "metadata": {}, + "outputs": [], + "source": [ + "rd.close_session()" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "id": "9110fb0b-f565-4e25-bf46-b7af1e46a507", + "metadata": {}, + "outputs": [], + "source": [] + } + ], + "metadata": { + "kernelspec": { + "display_name": "Python 3 (ipykernel)", + "language": "python", + "name": "python3" + }, + "language_info": { + "codemirror_mode": { + "name": "ipython", + "version": 3 + }, + "file_extension": ".py", + "mimetype": "text/x-python", + "name": "python", + "nbconvert_exporter": "python", + "pygments_lexer": "ipython3", + "version": "3.9.7" + } + }, + "nbformat": 4, + "nbformat_minor": 5 +} diff --git a/Examples/1-Access/EX-1.01.06-Search.ipynb b/Examples/1-Access/EX-1.01.06-Search.ipynb new file mode 100644 index 0000000..aded3f2 --- /dev/null +++ b/Examples/1-Access/EX-1.01.06-Search.ipynb @@ -0,0 +1,1556 @@ +{ + "cells": [ + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "----\n", + "\n", + "\n", + "# Data Library for Python\n", + "\n", + "----" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Access layer - Search\n", + "This notebook demonstrates how to use the search function of the Access Layer." + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "#### About the search function\n", + "The search() function identifies a matching set of documents which satisfy the caller's criteria, sorts it, and selects a subset of the matches to return as the result.\n", + "\n", + "***search()*** parameters: \n", + "\n", + "- ***query***: One of two parameters (the other being Filter) which restricts the set of documents matched. It's primarily intended for \"sloppy\" unstructured input, the kind of thing that an end-user might type into a search input textbox. Structured input with more specificity should usually go through Filter instead.\n", + " - Type: String\n", + " - Optional: Yes \n", + "- ***filter***: Where 'query' is for unstructured end-user-oriented restriction, 'filter' is for structured programmatic restriction. As with Query, the default is empty, i.e. doesn't restrict search in any way. Filter values are boolean predicate expressions to be applied to documents\n", + " - Type: String\n", + " - Optional: Yes \n", + "- ***view***: Identifies a subset of the overall search data universe.\n", + " - Type: Views\n", + " - Optional: Yes \n", + " - Default: Views.SEARCH_ALL\n", + "- ***order_by***: Defines the order in which matching documents should be returned.\n", + " - Type: String\n", + " - Optional: Yes \n", + "- ***boost***: This argument supports exactly the same predicate expression syntax as filter, but where filter restricts which documents are matched at all, boost just applies a large scoring boost to documents it matches, which will almost always guarantee that they appear at the top of the results.\n", + " - Type: String\n", + " - Optional: Yes \n", + "- ***select***: A comma-separated list of the properties of a document to be returned in the response.\n", + " - Type: String\n", + " - Optional: Yes \n", + "- ***top***: The maximum number of documents to retrieve. Must be non-negative.\n", + " - Type: int\n", + " - Optional: Yes \n", + "- ***skip***: The number of documents to skip in the sorted result set before returning the next top.\n", + " - Type: int\n", + " - Optional: Yes \n", + "- ***group_by***: If specified, this must name a single Groupable property. Returned documents are grouped into buckets based on their value for this property.\n", + " - Type: String\n", + " - Optional: Yes \n", + "- ***group_count***: When supplied in combination with group_by, sets the maximum number of documents to be returned per bucket.\n", + " - Type: int\n", + " - Optional: Yes \n", + " \n", + "**search()** returns a pandas.DataFrame containing the search result with document properties in columns and search hits in rows. \n", + "It raises exceptions on error and when no data is available" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "#### Learn more\n", + "\n", + "To learn more about the Refinitiv Data Library for Python please join the Refinitiv Developer Community. By [registering](https://developers.refinitiv.com/iam/register) and [logging](https://developers.refinitiv.com/content/devportal/en_us/initCookie.html) into the Refinitiv Developer Community portal you will have free access to a number of learning materials like \n", + " [Quick Start guides](https://developers.refinitiv.com/en/api-catalog/refinitiv-data-platform/refinitiv-data-library-for-python/quick-start), \n", + " [Tutorials](https://developers.refinitiv.com/en/api-catalog/refinitiv-data-platform/refinitiv-data-library-for-python/learning), \n", + " [Documentation](https://developers.refinitiv.com/en/api-catalog/refinitiv-data-platform/refinitiv-data-library-for-python/docs)\n", + " and much more.\n", + "\n", + "#### Getting Help and Support\n", + "\n", + "If you have any questions regarding using the API, please post them on \n", + "the [Refinitiv Data Q&A Forum](https://community.developers.refinitiv.com/spaces/321/index.html). \n", + "The Refinitiv Developer Community will be happy to help. \n", + "\n", + "----" + ] + }, + { + "cell_type": "markdown", + "metadata": { + "tags": [] + }, + "source": [ + "## Set the configuration file location\n", + "For a better ease of use, you have the option to set initialization parameters of the Refinitiv Data Library in the _refinitiv-data.config.json_ configuration file. This file must be located beside your notebook, in your user folder or in a folder defined by the _RD_LIB_CONFIG_PATH_ environment variable. The _RD_LIB_CONFIG_PATH_ environment variable is the option used by this series of examples. The following code sets this environment variable. " + ] + }, + { + "cell_type": "code", + "execution_count": 19, + "metadata": {}, + "outputs": [], + "source": [ + "import os\n", + "os.environ[\"RD_LIB_CONFIG_PATH\"] = \"../../Configuration\"" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Some Imports to start with" + ] + }, + { + "cell_type": "code", + "execution_count": 2, + "metadata": {}, + "outputs": [], + "source": [ + "import refinitiv.data as rd" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Open the data session\n", + "\n", + "The open_session() function creates and open sessions based on the information contained in the refinitiv-data.config.json configuration file. Please edit this file to set the session type and other parameters required for the session you want to open." + ] + }, + { + "cell_type": "code", + "execution_count": 3, + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "" + ] + }, + "execution_count": 3, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "rd.open_session()" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Retrieve data" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "### General Search" + ] + }, + { + "cell_type": "code", + "execution_count": 7, + "metadata": {}, + "outputs": [ + { + "data": { + "text/html": [ + "
\n", + "\n", + "\n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
BusinessEntityDocumentTitlePermIDPIRIC
0INSTRUMENTxFIXEDINCOMExGOVCORPInternational Business Machines Corp, Plain Va...466370383580x00102c80bf6b046c459200JC6=
1INSTRUMENTxFIXEDINCOMExGOVCORPInternational Business Machines Corp, Plain Va...1928268993630x00102c53ff1f1897US194445601=
2INSTRUMENTxFIXEDINCOMExGOVCORPInternational Business Machines Corp, Plain Va...446578430410x0004051bd47954e3US114316318=
3INSTRUMENTxFIXEDINCOMExGOVCORPInternational Business Machines Corp, Plain Va...446491296420x00040513a4865c6c459200HP9=
4INSTRUMENTxFIXEDINCOMExGOVCORPInternational Business Machines Corp, Plain Va...446536951610x00040517bba31719459200HU8=
5INSTRUMENTxFIXEDINCOMExGOVCORPInternational Business Machines Corp, Plain Va...1928419294000x00102c2052251a71459200JY8=
6INSTRUMENTxFIXEDINCOMExGOVCORPInternational Business Machines Corp, Plain Va...466384700740x00102cf964da067dUS137584123=
7INSTRUMENTxFIXEDINCOMExGOVCORPInternational Business Machines Corp, Plain Va...1928268958810x00102c8de61f1850US194445610=
8INSTRUMENTxFIXEDINCOMExGOVCORPInternational Business Machines Corp, Plain Va...466446111900x00102c00c0900d61US161784508=
9INSTRUMENTxFIXEDINCOMExGOVCORPInternational Business Machines Corp, Plain Va...2327960021530x00102cfffd953398459200KS9=
\n", + "
" + ], + "text/plain": [ + " BusinessEntity \\\n", + "0 INSTRUMENTxFIXEDINCOMExGOVCORP \n", + "1 INSTRUMENTxFIXEDINCOMExGOVCORP \n", + "2 INSTRUMENTxFIXEDINCOMExGOVCORP \n", + "3 INSTRUMENTxFIXEDINCOMExGOVCORP \n", + "4 INSTRUMENTxFIXEDINCOMExGOVCORP \n", + "5 INSTRUMENTxFIXEDINCOMExGOVCORP \n", + "6 INSTRUMENTxFIXEDINCOMExGOVCORP \n", + "7 INSTRUMENTxFIXEDINCOMExGOVCORP \n", + "8 INSTRUMENTxFIXEDINCOMExGOVCORP \n", + "9 INSTRUMENTxFIXEDINCOMExGOVCORP \n", + "\n", + " DocumentTitle PermID \\\n", + "0 International Business Machines Corp, Plain Va... 46637038358 \n", + "1 International Business Machines Corp, Plain Va... 192826899363 \n", + "2 International Business Machines Corp, Plain Va... 44657843041 \n", + "3 International Business Machines Corp, Plain Va... 44649129642 \n", + "4 International Business Machines Corp, Plain Va... 44653695161 \n", + "5 International Business Machines Corp, Plain Va... 192841929400 \n", + "6 International Business Machines Corp, Plain Va... 46638470074 \n", + "7 International Business Machines Corp, Plain Va... 192826895881 \n", + "8 International Business Machines Corp, Plain Va... 46644611190 \n", + "9 International Business Machines Corp, Plain Va... 232796002153 \n", + "\n", + " PI RIC \n", + "0 0x00102c80bf6b046c 459200JC6= \n", + "1 0x00102c53ff1f1897 US194445601= \n", + "2 0x0004051bd47954e3 US114316318= \n", + "3 0x00040513a4865c6c 459200HP9= \n", + "4 0x00040517bba31719 459200HU8= \n", + "5 0x00102c2052251a71 459200JY8= \n", + "6 0x00102cf964da067d US137584123= \n", + "7 0x00102c8de61f1850 US194445610= \n", + "8 0x00102c00c0900d61 US161784508= \n", + "9 0x00102cfffd953398 459200KS9= " + ] + }, + "execution_count": 7, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "rd.discovery.search(\"IBM Bonds\")" + ] + }, + { + "cell_type": "code", + "execution_count": 9, + "metadata": {}, + "outputs": [ + { + "data": { + "text/html": [ + "
\n", + "\n", + "\n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
DTSubjectNameExchangeNameRICIssueISINGicsAssetStateBusinessEntityPISearchAllCategoryv3SearchAllCategoryv2...CUSIPAvgVol5DRCSCurrencyLeafRCSTRBC2012LeafExDividendDateAvgVol30DAvgVol90DMktCapCompanyUsdPeOpProfitUsd
0Lucent Tech CommonNYSE ConsolidatedLU^L06US5494631071<NA>DCQUOTExEQUITY727519EquitiesEquities...549463107244204460US DollarPhones & Smart Phones2002-06-0376498576.052460507.01278585631523.1818181261000000
1Sprint Nextel Ord ShsNYSE ConsolidatedS^G13US8520611000Communication Services/Telecommunication Servi...DCQUOTExEQUITY726511EquitiesEquities...852061100164931003US DollarWireless Telecommunications Services (NEC)2007-12-0591782568.064730316.021993953820<NA>-1522000000
2Ford Motor CoNYSE ConsolidatedFUS3453708600Consumer Discretionary/Automobiles & Component...ACQUOTExEQUITY1384687EquitiesEquities...34537086091332912US DollarAuto & Truck Manufacturers (NEC)2022-08-1067747815.063329878.0478810288394.1536324523000000
3Countrywide Financial Ord ShsNYSE ConsolidatedCFC^G08US2223721042<NA>DCQUOTExEQUITY1330084EquitiesEquities...22237210473608584US DollarConsumer Lending (NEC)2008-05-1232484512.027215682.02479213865<NA>-1310274000
4Carnival CorpNYSE ConsolidatedCCLPA1436583006Consumer Discretionary/Consumer Services/Hotel...ACQUOTExEQUITY725216EquitiesEquities...14365830065863429US DollarCruise Lines2020-02-2047130806.052372656.010112088549<NA>-6272000000
5Baxalta Ord ShsNYSE ConsolidatedBXLT.K^F16US07177M1036Health Care/Pharmaceuticals, Biotechnology & L...DCQUOTExEQUITY193687667EquitiesEquities...07177M10363377939US DollarGeneric Pharmaceuticals2016-06-0818908611.012542023.03145650849938.8085881203000000
6Citigroup Ord ShsNYSE ConsolidatedCw^G09US1729674242Financials/Banks/Banks/Diversified BanksDCQUOTExEQUITY61935203EquitiesEquities...17296742460747495US DollarBanks (NEC)NaT<NA><NA>82484462843<NA>29429000000
7GGP Ord ShsNYSE ConsolidatedGGP^H18US36174X1019<NA>DCQUOTExEQUITY726801EquitiesEquities...36174X10155250184US DollarRetail REITs2018-07-1219154015.011301129.069930847237.593729215728000
8Itau Unibanco Holding SANYSE ConsolidatedITUB.KUS4655621062Financials/Banks/Banks/Diversified BanksACQUOTExEQUITY6800552EquitiesEquities...46556210652648351US DollarBanks (NEC)2022-10-0334700370.042843347.0461759837037.9107757042769024
9EMC Ord ShsNYSE ConsolidatedEMC^I16US2686481027Information Technology/Technology Hardware & E...DCQUOTExEQUITY725293EquitiesEquities...26864810252014633US DollarComputer Hardware (NEC)2016-06-2918421363.014637469.05684626184327.1279823291000000
\n", + "

10 rows × 22 columns

\n", + "
" + ], + "text/plain": [ + " DTSubjectName ExchangeName RIC IssueISIN \\\n", + "0 Lucent Tech Common NYSE Consolidated LU^L06 US5494631071 \n", + "1 Sprint Nextel Ord Shs NYSE Consolidated S^G13 US8520611000 \n", + "2 Ford Motor Co NYSE Consolidated F US3453708600 \n", + "3 Countrywide Financial Ord Shs NYSE Consolidated CFC^G08 US2223721042 \n", + "4 Carnival Corp NYSE Consolidated CCL PA1436583006 \n", + "5 Baxalta Ord Shs NYSE Consolidated BXLT.K^F16 US07177M1036 \n", + "6 Citigroup Ord Shs NYSE Consolidated Cw^G09 US1729674242 \n", + "7 GGP Ord Shs NYSE Consolidated GGP^H18 US36174X1019 \n", + "8 Itau Unibanco Holding SA NYSE Consolidated ITUB.K US4655621062 \n", + "9 EMC Ord Shs NYSE Consolidated EMC^I16 US2686481027 \n", + "\n", + " Gics AssetState \\\n", + "0 DC \n", + "1 Communication Services/Telecommunication Servi... DC \n", + "2 Consumer Discretionary/Automobiles & Component... AC \n", + "3 DC \n", + "4 Consumer Discretionary/Consumer Services/Hotel... AC \n", + "5 Health Care/Pharmaceuticals, Biotechnology & L... DC \n", + "6 Financials/Banks/Banks/Diversified Banks DC \n", + "7 DC \n", + "8 Financials/Banks/Banks/Diversified Banks AC \n", + "9 Information Technology/Technology Hardware & E... DC \n", + "\n", + " BusinessEntity PI SearchAllCategoryv3 SearchAllCategoryv2 ... \\\n", + "0 QUOTExEQUITY 727519 Equities Equities ... \n", + "1 QUOTExEQUITY 726511 Equities Equities ... \n", + "2 QUOTExEQUITY 1384687 Equities Equities ... \n", + "3 QUOTExEQUITY 1330084 Equities Equities ... \n", + "4 QUOTExEQUITY 725216 Equities Equities ... \n", + "5 QUOTExEQUITY 193687667 Equities Equities ... \n", + "6 QUOTExEQUITY 61935203 Equities Equities ... \n", + "7 QUOTExEQUITY 726801 Equities Equities ... \n", + "8 QUOTExEQUITY 6800552 Equities Equities ... \n", + "9 QUOTExEQUITY 725293 Equities Equities ... \n", + "\n", + " CUSIP AvgVol5D RCSCurrencyLeaf \\\n", + "0 549463107 244204460 US Dollar \n", + "1 852061100 164931003 US Dollar \n", + "2 345370860 91332912 US Dollar \n", + "3 222372104 73608584 US Dollar \n", + "4 143658300 65863429 US Dollar \n", + "5 07177M103 63377939 US Dollar \n", + "6 172967424 60747495 US Dollar \n", + "7 36174X101 55250184 US Dollar \n", + "8 465562106 52648351 US Dollar \n", + "9 268648102 52014633 US Dollar \n", + "\n", + " RCSTRBC2012Leaf ExDividendDate AvgVol30D \\\n", + "0 Phones & Smart Phones 2002-06-03 76498576.0 \n", + "1 Wireless Telecommunications Services (NEC) 2007-12-05 91782568.0 \n", + "2 Auto & Truck Manufacturers (NEC) 2022-08-10 67747815.0 \n", + "3 Consumer Lending (NEC) 2008-05-12 32484512.0 \n", + "4 Cruise Lines 2020-02-20 47130806.0 \n", + "5 Generic Pharmaceuticals 2016-06-08 18908611.0 \n", + "6 Banks (NEC) NaT \n", + "7 Retail REITs 2018-07-12 19154015.0 \n", + "8 Banks (NEC) 2022-10-03 34700370.0 \n", + "9 Computer Hardware (NEC) 2016-06-29 18421363.0 \n", + "\n", + " AvgVol90D MktCapCompanyUsd Pe OpProfitUsd \n", + "0 52460507.0 12785856315 23.181818 1261000000 \n", + "1 64730316.0 21993953820 -1522000000 \n", + "2 63329878.0 47881028839 4.153632 4523000000 \n", + "3 27215682.0 2479213865 -1310274000 \n", + "4 52372656.0 10112088549 -6272000000 \n", + "5 12542023.0 31456508499 38.808588 1203000000 \n", + "6 82484462843 29429000000 \n", + "7 11301129.0 699308472 37.593729 215728000 \n", + "8 42843347.0 46175983703 7.910775 7042769024 \n", + "9 14637469.0 56846261843 27.127982 3291000000 \n", + "\n", + "[10 rows x 22 columns]" + ] + }, + "execution_count": 9, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "rd.discovery.search(\n", + " view = rd.discovery.Views.EQUITY_QUOTES,\n", + " top = 10,\n", + " filter = \"( SearchAllCategoryv2 eq 'Equities' and (AvgVol5D gt 2000000 and ExchangeName xeq 'NYSE Consolidated'))\",\n", + " select = \"DTSubjectName,ExchangeName,RIC,IssueISIN,Gics,AssetState,BusinessEntity,PI,SearchAllCategoryv3,SearchAllCategoryv2,SearchAllCategory,TickerSymbol,CUSIP,CinCUSIP,AvgVol5D,RCSCurrencyLeaf,RCSTRBC2012Leaf,ExDividendDate,AvgVol30D,AvgVol90D,MktCapCompanyUsd,Pe,OpProfitUsd\",\n", + " order_by = \"AvgVol5D desc\"\n", + ")" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "### Specify number of rows to fetch" + ] + }, + { + "cell_type": "code", + "execution_count": 10, + "metadata": { + "tags": [] + }, + "outputs": [ + { + "data": { + "text/html": [ + "
\n", + "\n", + "\n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
BusinessEntityDocumentTitlePermIDPIRIC
0INSTRUMENTxFIXEDINCOMExGOVCORPInternational Business Machines Corp, Plain Va...466370383580x00102c80bf6b046c459200JC6=
1INSTRUMENTxFIXEDINCOMExGOVCORPInternational Business Machines Corp, Plain Va...1928268993630x00102c53ff1f1897US194445601=
2INSTRUMENTxFIXEDINCOMExGOVCORPInternational Business Machines Corp, Plain Va...446578430410x0004051bd47954e3US114316318=
3INSTRUMENTxFIXEDINCOMExGOVCORPInternational Business Machines Corp, Plain Va...446491296420x00040513a4865c6c459200HP9=
4INSTRUMENTxFIXEDINCOMExGOVCORPInternational Business Machines Corp, Plain Va...446536951610x00040517bba31719459200HU8=
..................
95INSTRUMENTxFIXEDINCOMExGOVCORPIBM Credit LLC, Plain Vanilla Fixed Coupon Bon...<NA>0x000034000037e1e2<NA>
96INSTRUMENTxFIXEDINCOMExGOVCORPIBM Credit LLC, Plain Vanilla Fixed Coupon Bon...<NA>0x000034000037e3e0<NA>
97INSTRUMENTxFIXEDINCOMExGOVCORPIBM Credit LLC, Plain Vanilla Fixed Coupon Bon...<NA>0x000034000037e4e7<NA>
98INSTRUMENTxFIXEDINCOMExGOVCORPIBM Credit LLC, Plain Vanilla Fixed Coupon Bon...<NA>0x000034000037e5e6<NA>
99INSTRUMENTxFIXEDINCOMExGOVCORPIBM Credit LLC, Plain Vanilla Fixed Coupon Bon...<NA>0x000034000037e6e5<NA>
\n", + "

100 rows × 5 columns

\n", + "
" + ], + "text/plain": [ + " BusinessEntity \\\n", + "0 INSTRUMENTxFIXEDINCOMExGOVCORP \n", + "1 INSTRUMENTxFIXEDINCOMExGOVCORP \n", + "2 INSTRUMENTxFIXEDINCOMExGOVCORP \n", + "3 INSTRUMENTxFIXEDINCOMExGOVCORP \n", + "4 INSTRUMENTxFIXEDINCOMExGOVCORP \n", + ".. ... \n", + "95 INSTRUMENTxFIXEDINCOMExGOVCORP \n", + "96 INSTRUMENTxFIXEDINCOMExGOVCORP \n", + "97 INSTRUMENTxFIXEDINCOMExGOVCORP \n", + "98 INSTRUMENTxFIXEDINCOMExGOVCORP \n", + "99 INSTRUMENTxFIXEDINCOMExGOVCORP \n", + "\n", + " DocumentTitle PermID \\\n", + "0 International Business Machines Corp, Plain Va... 46637038358 \n", + "1 International Business Machines Corp, Plain Va... 192826899363 \n", + "2 International Business Machines Corp, Plain Va... 44657843041 \n", + "3 International Business Machines Corp, Plain Va... 44649129642 \n", + "4 International Business Machines Corp, Plain Va... 44653695161 \n", + ".. ... ... \n", + "95 IBM Credit LLC, Plain Vanilla Fixed Coupon Bon... \n", + "96 IBM Credit LLC, Plain Vanilla Fixed Coupon Bon... \n", + "97 IBM Credit LLC, Plain Vanilla Fixed Coupon Bon... \n", + "98 IBM Credit LLC, Plain Vanilla Fixed Coupon Bon... \n", + "99 IBM Credit LLC, Plain Vanilla Fixed Coupon Bon... \n", + "\n", + " PI RIC \n", + "0 0x00102c80bf6b046c 459200JC6= \n", + "1 0x00102c53ff1f1897 US194445601= \n", + "2 0x0004051bd47954e3 US114316318= \n", + "3 0x00040513a4865c6c 459200HP9= \n", + "4 0x00040517bba31719 459200HU8= \n", + ".. ... ... \n", + "95 0x000034000037e1e2 \n", + "96 0x000034000037e3e0 \n", + "97 0x000034000037e4e7 \n", + "98 0x000034000037e5e6 \n", + "99 0x000034000037e6e5 \n", + "\n", + "[100 rows x 5 columns]" + ] + }, + "execution_count": 10, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "rd.discovery.search(\"IBM Bonds\", top=100)" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "### Filter Expressions" + ] + }, + { + "cell_type": "code", + "execution_count": 11, + "metadata": {}, + "outputs": [ + { + "data": { + "text/html": [ + "
\n", + "\n", + "\n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
ISINRICIssueDateCurrencyFaceIssuedTotalCouponRateMaturityDate
0US459200JC60459200JC6=2015-11-09USD9000000002.8752022-11-09
1XS1944456018US194445601=2019-01-31EUR17500000000.3752023-01-31
2XS1143163183US114316318=2014-11-26EUR10000000001.252023-05-26
3US459200HP91459200HP9=2013-08-01USD15000000003.3752023-08-01
4US459200HU86459200HU8=2014-02-12USD20000000003.6252024-02-12
5US459200JY80459200JY8=2019-05-15USD30000000003.02024-05-15
6XS1375841233US137584123=2016-03-07EUR7500000001.1252024-09-06
7XS1944456109US194445610=2019-01-31EUR10000000000.8752025-01-31
8XS1617845083US161784508=2017-05-23EUR10000000000.952025-05-23
9US459200KS93459200KS9=2022-07-27USD10000000004.02025-07-27
\n", + "
" + ], + "text/plain": [ + " ISIN RIC IssueDate Currency FaceIssuedTotal \\\n", + "0 US459200JC60 459200JC6= 2015-11-09 USD 900000000 \n", + "1 XS1944456018 US194445601= 2019-01-31 EUR 1750000000 \n", + "2 XS1143163183 US114316318= 2014-11-26 EUR 1000000000 \n", + "3 US459200HP91 459200HP9= 2013-08-01 USD 1500000000 \n", + "4 US459200HU86 459200HU8= 2014-02-12 USD 2000000000 \n", + "5 US459200JY80 459200JY8= 2019-05-15 USD 3000000000 \n", + "6 XS1375841233 US137584123= 2016-03-07 EUR 750000000 \n", + "7 XS1944456109 US194445610= 2019-01-31 EUR 1000000000 \n", + "8 XS1617845083 US161784508= 2017-05-23 EUR 1000000000 \n", + "9 US459200KS93 459200KS9= 2022-07-27 USD 1000000000 \n", + "\n", + " CouponRate MaturityDate \n", + "0 2.875 2022-11-09 \n", + "1 0.375 2023-01-31 \n", + "2 1.25 2023-05-26 \n", + "3 3.375 2023-08-01 \n", + "4 3.625 2024-02-12 \n", + "5 3.0 2024-05-15 \n", + "6 1.125 2024-09-06 \n", + "7 0.875 2025-01-31 \n", + "8 0.95 2025-05-23 \n", + "9 4.0 2025-07-27 " + ] + }, + "execution_count": 11, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "rd.discovery.search(\n", + " view=rd.discovery.Views.GOV_CORP_INSTRUMENTS,\n", + " select=\"ISIN,RIC,IssueDate,Currency,FaceIssuedTotal,CouponRate,MaturityDate\", \n", + " filter=\"IssuerTicker eq 'IBM' and IsActive eq true and AssetStatus ne 'MAT'\"\n", + ")" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "### Search with order_by option" + ] + }, + { + "cell_type": "code", + "execution_count": 12, + "metadata": { + "scrolled": true + }, + "outputs": [ + { + "data": { + "text/html": [ + "
\n", + "\n", + "\n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
YearOfBirthDocumentTitle
01996Hiroyasu Saito - Gracia Inc - Chief Executive ...
11996Shu Yao - Dongjiang Environmental Co Ltd - Ex-...
21994Connor Campbell - Osler Diagnostics Ltd - Chie...
31993Yiduitakuya Iwamoto - Polyuse Inc - Chief Exec...
41993Alberto Rizzoli - V7 Ltd - Chief Executive Off...
51993Tongda Wu - Paifang Technology Tianjin Co Ltd ...
61992Ross Bailey - Appear Here Ltd - Chief Executiv...
71992Christian Besenbruch - Deep Render Ltd - Chief...
81992Ed Leon Klinger - Flock Ltd - Chief Executive ...
91992Snigdha Mothukuri - Jeevan Scientific Technolo...
\n", + "
" + ], + "text/plain": [ + " YearOfBirth DocumentTitle\n", + "0 1996 Hiroyasu Saito - Gracia Inc - Chief Executive ...\n", + "1 1996 Shu Yao - Dongjiang Environmental Co Ltd - Ex-...\n", + "2 1994 Connor Campbell - Osler Diagnostics Ltd - Chie...\n", + "3 1993 Yiduitakuya Iwamoto - Polyuse Inc - Chief Exec...\n", + "4 1993 Alberto Rizzoli - V7 Ltd - Chief Executive Off...\n", + "5 1993 Tongda Wu - Paifang Technology Tianjin Co Ltd ...\n", + "6 1992 Ross Bailey - Appear Here Ltd - Chief Executiv...\n", + "7 1992 Christian Besenbruch - Deep Render Ltd - Chief...\n", + "8 1992 Ed Leon Klinger - Flock Ltd - Chief Executive ...\n", + "9 1992 Snigdha Mothukuri - Jeevan Scientific Technolo..." + ] + }, + "execution_count": 12, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "rd.discovery.search(\n", + " view=rd.discovery.Views.PEOPLE,\n", + " query=\"ceo\",\n", + " order_by=\"YearOfBirth desc,LastName,FirstName\",\n", + " select=\"YearOfBirth,DocumentTitle\"\n", + ")" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "### Search with group_by option" + ] + }, + { + "cell_type": "code", + "execution_count": 13, + "metadata": {}, + "outputs": [ + { + "data": { + "text/html": [ + "
\n", + "\n", + "\n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
CentralBankNameDocumentTitleRIC
0Federal Reserve SystemUnited States, Policy Rates, Fed Funds Target ...USFOMC=ECI
1Federal Reserve SystemUnited States, Policy Rates, Fed Overnight Rep...USRRP=ECI
2European Central BankEuro Zone, Policy Rates, ECB Main refinancing,...EUECBR=ECI
3European Central BankEuro Zone, Policy Rates, ECB Deposit Rate, Reu...EUECBD=ECI
4Sveriges RiksbankSweden, Policy Rates, Repo Rate (Effective Dat...SERATE=ECI
5Sveriges RiksbankSweden, Riksbank Rate-Median, Reuters Polls, D...pSERATE=M
6Magyar Nemzeti BankHungary, Policy Rates, Base Rate, Reuters Poll...HUINT=ECI
7Magyar Nemzeti BankHungary, Policy Rates, Base Rate, Reuters Poll...HUOD2=ECI
8Central Bank of ColombiaColombia, Policy Rates, Intervention Rate, Reu...COCBIR=ECI
9Central Bank of ColombiaColombia, Interest Rate-Median, Reuters Polls,...pCOCBIR=M
\n", + "
" + ], + "text/plain": [ + " CentralBankName \\\n", + "0 Federal Reserve System \n", + "1 Federal Reserve System \n", + "2 European Central Bank \n", + "3 European Central Bank \n", + "4 Sveriges Riksbank \n", + "5 Sveriges Riksbank \n", + "6 Magyar Nemzeti Bank \n", + "7 Magyar Nemzeti Bank \n", + "8 Central Bank of Colombia \n", + "9 Central Bank of Colombia \n", + "\n", + " DocumentTitle RIC \n", + "0 United States, Policy Rates, Fed Funds Target ... USFOMC=ECI \n", + "1 United States, Policy Rates, Fed Overnight Rep... USRRP=ECI \n", + "2 Euro Zone, Policy Rates, ECB Main refinancing,... EUECBR=ECI \n", + "3 Euro Zone, Policy Rates, ECB Deposit Rate, Reu... EUECBD=ECI \n", + "4 Sweden, Policy Rates, Repo Rate (Effective Dat... SERATE=ECI \n", + "5 Sweden, Riksbank Rate-Median, Reuters Polls, D... pSERATE=M \n", + "6 Hungary, Policy Rates, Base Rate, Reuters Poll... HUINT=ECI \n", + "7 Hungary, Policy Rates, Base Rate, Reuters Poll... HUOD2=ECI \n", + "8 Colombia, Policy Rates, Intervention Rate, Reu... COCBIR=ECI \n", + "9 Colombia, Interest Rate-Median, Reuters Polls,... pCOCBIR=M " + ] + }, + "execution_count": 13, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "rd.discovery.search(\n", + " view=rd.discovery.Views.INDICATOR_QUOTES,\n", + " query=\"rate\",\n", + " group_by=\"CentralBankName\",\n", + " group_count=2,\n", + " select=\"CentralBankName,DocumentTitle,RIC\"\n", + ")" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "### Search For People" + ] + }, + { + "cell_type": "code", + "execution_count": 14, + "metadata": {}, + "outputs": [ + { + "data": { + "text/html": [ + "
\n", + "\n", + "\n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
BusinessEntityDocumentTitlePermIDPI
0PERSONAmy E. Hood - Microsoft Corp - Chief Financial...3441555338334415553383
1PERSONLuca Maestri - Apple Inc - Chief Financial Off...3441455474834414554748
2PERSONBrian T. Olsavsky - Amazon.com Inc - Chief Fin...3441761089434417610894
3PERSONRuth M. Porat - Alphabet Inc - Chief Financial...3441396066534413960665
4PERSONDavid M. Wehner - Meta Platforms Inc - Chief F...3441480424134414804241
5PERSONMarc D. Hamburg - Berkshire Hathaway Inc - Chi...3441315267234413152672
6PERSONAndrew K. Klatt - Berkshire Hathaway Inc - CFO...3441496625034414966250
7PERSONXu Hong - Alibaba Group Holding Ltd - Chief Fi...3442565237134425652371
8PERSONJohn Lo - Tencent Holdings Ltd - Chief Financi...3441490713134414907131
9PERSONVasant M. Prabhu - Visa Inc - Vice Chairman of...3441334052334413340523
\n", + "
" + ], + "text/plain": [ + " BusinessEntity DocumentTitle \\\n", + "0 PERSON Amy E. Hood - Microsoft Corp - Chief Financial... \n", + "1 PERSON Luca Maestri - Apple Inc - Chief Financial Off... \n", + "2 PERSON Brian T. Olsavsky - Amazon.com Inc - Chief Fin... \n", + "3 PERSON Ruth M. Porat - Alphabet Inc - Chief Financial... \n", + "4 PERSON David M. Wehner - Meta Platforms Inc - Chief F... \n", + "5 PERSON Marc D. Hamburg - Berkshire Hathaway Inc - Chi... \n", + "6 PERSON Andrew K. Klatt - Berkshire Hathaway Inc - CFO... \n", + "7 PERSON Xu Hong - Alibaba Group Holding Ltd - Chief Fi... \n", + "8 PERSON John Lo - Tencent Holdings Ltd - Chief Financi... \n", + "9 PERSON Vasant M. Prabhu - Visa Inc - Vice Chairman of... \n", + "\n", + " PermID PI \n", + "0 34415553383 34415553383 \n", + "1 34414554748 34414554748 \n", + "2 34417610894 34417610894 \n", + "3 34413960665 34413960665 \n", + "4 34414804241 34414804241 \n", + "5 34413152672 34413152672 \n", + "6 34414966250 34414966250 \n", + "7 34425652371 34425652371 \n", + "8 34414907131 34414907131 \n", + "9 34413340523 34413340523 " + ] + }, + "execution_count": 14, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "rd.discovery.search(\n", + " query=\"cfo\",\n", + " view=rd.discovery.Views.PEOPLE\n", + ")" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "### Close the session" + ] + }, + { + "cell_type": "code", + "execution_count": 15, + "metadata": {}, + "outputs": [], + "source": [ + "rd.close_session()" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [] + } + ], + "metadata": { + "kernelspec": { + "display_name": "Python 3 (ipykernel)", + "language": "python", + "name": "python3" + }, + "language_info": { + "codemirror_mode": { + "name": "ipython", + "version": 3 + }, + "file_extension": ".py", + "mimetype": "text/x-python", + "name": "python", + "nbconvert_exporter": "python", + "pygments_lexer": "ipython3", + "version": "3.9.7" + } + }, + "nbformat": 4, + "nbformat_minor": 4 +} diff --git a/Examples/1-Access/EX-1.01.06.1-SearchTemplates-Equities.ipynb b/Examples/1-Access/EX-1.01.06.1-SearchTemplates-Equities.ipynb new file mode 100644 index 0000000..b34bca1 --- /dev/null +++ b/Examples/1-Access/EX-1.01.06.1-SearchTemplates-Equities.ipynb @@ -0,0 +1,8657 @@ +{ + "cells": [ + { + "cell_type": "markdown", + "id": "c5b30ef8-32e8-4422-a8c2-ba4daa1c1466", + "metadata": {}, + "source": [ + "----\n", + "\n", + "\n", + "# Data Library for Python\n", + "\n", + "----" + ] + }, + { + "cell_type": "markdown", + "id": "18176618-72be-44ed-8197-265710fcc98a", + "metadata": { + "tags": [] + }, + "source": [ + "## Access layer - Search templates examples - Equity Search\n", + "\n", + "This notebook illustrates the Search Template functionality of the Refinitiv Data Library. The \"Equity\" template shown here are template examples that you can modify and adapt to your needs. They are defined in the \"search-templates.config.json\" configuration file. Below is a brief description of the parameters you can use for each template definition." + ] + }, + { + "cell_type": "markdown", + "id": "dd8a8da8-7280-4b3d-84e9-cdbf8fe4a22c", + "metadata": { + "jp-MarkdownHeadingCollapsed": true, + "tags": [] + }, + "source": [ + "**Search templates are defined using the following JSON structure:**\n", + "\n", + "- **description** (string): Description of the template.\n", + "- **parameters** (object): Parameters of the template. These parameters can be used as placeholders in the request_body of the template and as named parameters of the search() method of the template. Each parameter has a name, a description, and an optional default value.\n", + "- **request_body** (object): Body of the request sent to the Search REST API. This request body can include template parameters surrounded by '#{' and '}' (for example: “#{my_param}”). More details on the structure of the request body can be found in the [Search API reference guide](https://apidocs.refinitiv.com/Apps/ApiDocs#/details/L2Rpc2NvdmVyeS9zZWFyY2gvdjE=/Lw==/POST/README) (access to this guide requires a Refinitiv Workspace account or RDP account to log in).\n", + " \n", + "**Template example:**\n", + " \n", + "```json\n", + "\"MyTemplate\": {\n", + " \"description\": \"Search template example.\",\n", + " \"parameters\": {\n", + " \"name\": {\n", + " \"description\": \"Name of the person to search for.\",\n", + " \"default\": \"Edison\"\n", + " }\n", + " },\n", + " \"request_body\": {\n", + " \"Query\": \"#{name}\",\n", + " \"View\":\"People\",\n", + " \"Top\":10\n", + " }\n", + "} \n", + "``` \n", + "\n", + "**Example of usage:**\n", + "\n", + "``` \n", + "rd.discovery.search_templates[\"MyTemplate\"].search(name=\"Pasteur\")\n", + "``` \n", + " " + ] + }, + { + "cell_type": "markdown", + "id": "3adbdf43-1b2e-438b-a285-2e00bec17dd6", + "metadata": {}, + "source": [ + "#### Learn more\n", + "\n", + "To learn more about the Refinitiv Data Library for Python please join the Refinitiv Developer Community. By [registering](https://developers.refinitiv.com/iam/register) and [logging](https://developers.refinitiv.com/content/devportal/en_us/initCookie.html) into the Refinitiv Developer Community portal you will have free access to a number of learning materials like \n", + " [Quick Start guides](https://developers.refinitiv.com/en/api-catalog/refinitiv-data-platform/refinitiv-data-library-for-python/quick-start), \n", + " [Tutorials](https://developers.refinitiv.com/en/api-catalog/refinitiv-data-platform/refinitiv-data-library-for-python/learning), \n", + " [Documentation](https://developers.refinitiv.com/en/api-catalog/refinitiv-data-platform/refinitiv-data-library-for-python/docs)\n", + " and much more.\n", + "\n", + "#### Getting Help and Support\n", + "\n", + "If you have any questions regarding using the API, please post them on \n", + "the [Refinitiv Data Q&A Forum](https://community.developers.refinitiv.com/spaces/321/index.html). \n", + "The Refinitiv Developer Community will be happy to help. \n", + "\n", + "----" + ] + }, + { + "cell_type": "markdown", + "id": "f325bc29-da70-46c3-9478-2987919cc2a6", + "metadata": { + "tags": [] + }, + "source": [ + "## Set the configuration file location\n", + "For a better ease of use, you have the option to set initialization parameters of the Refinitiv Data Library in the _refinitiv-data.config.json_ configuration file. This file must be located beside your notebook, in your user folder or in a folder defined by the _RD_LIB_CONFIG_PATH_ environment variable. The _RD_LIB_CONFIG_PATH_ environment variable is the option used by this series of examples. The following code sets this environment variable. " + ] + }, + { + "cell_type": "code", + "execution_count": 1, + "id": "d21ce5da-447a-4160-9ef7-4380ae98125c", + "metadata": {}, + "outputs": [], + "source": [ + "import os\n", + "os.environ[\"RD_LIB_CONFIG_PATH\"] = \"../../Configuration\"" + ] + }, + { + "cell_type": "markdown", + "id": "3d4118bb-4a09-4218-bc58-f8b1fc101c79", + "metadata": {}, + "source": [ + "## Some Imports to start with" + ] + }, + { + "cell_type": "code", + "execution_count": 2, + "id": "c64c1a81-45a7-4a12-a1af-3a2f8f13e183", + "metadata": {}, + "outputs": [], + "source": [ + "import refinitiv.data as rd\n", + "import cufflinks" + ] + }, + { + "cell_type": "markdown", + "id": "a71c711f-c3e7-48ed-be3c-e0eb86527c07", + "metadata": {}, + "source": [ + "## Open the data session\n", + "\n", + "The open_session() function creates and open sessions based on the information contained in the refinitiv-data.config.json configuration file. Please edit this file to set the session type and other parameters required for the session you want to open." + ] + }, + { + "cell_type": "code", + "execution_count": 3, + "id": "16ab932c-1941-4d8f-aa35-13bb88dab0a2", + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "" + ] + }, + "execution_count": 3, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "rd.open_session()" + ] + }, + { + "cell_type": "markdown", + "id": "a426a705-3dd7-4a41-bb49-ac71afe78527", + "metadata": {}, + "source": [ + "## Load the search templates configuration file" + ] + }, + { + "cell_type": "code", + "execution_count": 4, + "id": "5b44ea18-5618-43ce-8b38-20c70abc7339", + "metadata": { + "tags": [] + }, + "outputs": [ + { + "data": { + "text/plain": [ + "" + ] + }, + "execution_count": 4, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "rd.load_config(\"search-templates.config.json\")" + ] + }, + { + "cell_type": "markdown", + "id": "1f76d2d9-68ad-4355-886a-c18ef29d5729", + "metadata": {}, + "source": [ + "## Equities Search Template example" + ] + }, + { + "cell_type": "markdown", + "id": "8ead5f20-7a83-49c0-ba7c-f5c632ceccb9", + "metadata": {}, + "source": [ + "### Access the template" + ] + }, + { + "cell_type": "code", + "execution_count": 5, + "id": "67c9da5d-5eb0-4314-8e13-66766189c5fd", + "metadata": {}, + "outputs": [], + "source": [ + "equity = rd.discovery.search_templates['Equity']" + ] + }, + { + "cell_type": "markdown", + "id": "6be3db99-4fb7-421a-8bf6-82facac6dd01", + "metadata": { + "tags": [] + }, + "source": [ + "### Get help about this template" + ] + }, + { + "cell_type": "code", + "execution_count": 6, + "id": "df18471e-8c5f-49e6-8c52-7124be23f127", + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Help on DiscoverySearchTemplate in module refinitiv.data.discovery._search_templates.search:\n", + "\n", + "\n", + " Search for Ordinary Shares of a particular exchange.\n", + " \n", + " Methods\n", + " -------\n", + " search\n", + " exchange_name\n", + " Name of the exchange where this equity is traded. For example: 'London Stock Exchange', 'Euronext Paris', 'Shanghai Stock Exchange', 'The Toronto Stock Exchange', 'NYSE Consolidated', etc.\n", + " \n", + " what\n", + " What to search for\n", + " default: ''\n", + "\n" + ] + } + ], + "source": [ + "help(equity)" + ] + }, + { + "cell_type": "markdown", + "id": "8d342013-93b6-493c-a77c-253df5171c36", + "metadata": { + "tags": [] + }, + "source": [ + "### Search for Equities of the New York Stock Exchange Consolidated" + ] + }, + { + "cell_type": "code", + "execution_count": 7, + "id": "61f1d57a-03ca-4114-83c4-91cfd758a1ad", + "metadata": {}, + "outputs": [ + { + "data": { + "text/html": [ + "
\n", + "\n", + "\n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
DTSubjectNameExchangeNameRICMktCapCompanyUsdShareholdersEquityUsdPeDebtToAssetsBetaEpsGics...SearchAllCategoryRCSAssetCategoryRCSCurrencyLeafAssetStateBusinessEntityPIIssueISINCUSIPCinCUSIPSolvencyMargin
0Berkshire Hathaway IncNYSE ConsolidatedBRKa693513590760506199000000<NA>0.4629340.896323-1189.17575Financials/Diversified Financials/Diversified ......EquitiesA:1LUS DollarACQUOTExEQUITY727363US0846701086084670108<NA><NA>
1Walt Disney CoNYSE ConsolidatedDIS1677339910568855300000052.6192340.497941.2397821.74803Communication Services/Media & Entertainment/E......EquitiesA:1LUS DollarACQUOTExEQUITY1096946US2546871060254687106<NA><NA>
2Exxon Mobil CorpNYSE ConsolidatedXOM4398847600001685770000008.7117220.4816431.12276612.26164Energy/Energy/Oil, Gas & Consumable Fuels/Inte......EquitiesA:1LUS DollarACQUOTExEQUITY728548US30231G102230231G102<NA><NA>
3UnitedHealth Group IncNYSE ConsolidatedUNH4713791073287176000000024.7119430.63960.69395520.41523Health Care/Health Care Equipment & Services/H......EquitiesA:1LUS DollarACQUOTExEQUITY1096631US91324P102191324P102<NA>24.05608
4JPMorgan Chase & CoNYSE ConsolidatedJPM40003048262525928900000011.5152160.9214311.13384911.84346Financials/Banks/Banks/Diversified Banks...EquitiesA:1LUS DollarACQUOTExEQUITY1113813US46625H100546625H100<NA><NA>
..................................................................
1934Test ZxzNYSE ConsolidatedZXZ<NA><NA><NA><NA><NA><NA><NA>...EquitiesA:1LUS DollarACQUOTExEQUITY214389816<NA><NA><NA><NA>
1935NYSE Tick Pilot Test Sym G1NYSE ConsolidatedNTESTa.K<NA><NA><NA><NA><NA><NA><NA>...EquitiesA:1LUS DollarACQUOTExEQUITY237876615<NA><NA><NA><NA>
1936NYSE Tick Pilot Test Sym-G2NYSE ConsolidatedNTESTb.K<NA><NA><NA><NA><NA><NA><NA>...EquitiesA:1LUS DollarACQUOTExEQUITY237876637<NA><NA><NA><NA>
1937NYSE Tick Pilot Test Sym G2NYSE ConsolidatedNTESTc.K<NA><NA><NA><NA><NA><NA><NA>...EquitiesA:1LUS DollarACQUOTExEQUITY237876655<NA><NA><NA><NA>
1938Test Symbol NTEST DNYSE ConsolidatedNTESTd.K<NA><NA><NA><NA><NA><NA><NA>...EquitiesA:1LUS DollarACQUOTExEQUITY299363939<NA><NA><NA><NA>
\n", + "

1939 rows × 42 columns

\n", + "
" + ], + "text/plain": [ + " DTSubjectName ExchangeName RIC \\\n", + "0 Berkshire Hathaway Inc NYSE Consolidated BRKa \n", + "1 Walt Disney Co NYSE Consolidated DIS \n", + "2 Exxon Mobil Corp NYSE Consolidated XOM \n", + "3 UnitedHealth Group Inc NYSE Consolidated UNH \n", + "4 JPMorgan Chase & Co NYSE Consolidated JPM \n", + "... ... ... ... \n", + "1934 Test Zxz NYSE Consolidated ZXZ \n", + "1935 NYSE Tick Pilot Test Sym G1 NYSE Consolidated NTESTa.K \n", + "1936 NYSE Tick Pilot Test Sym-G2 NYSE Consolidated NTESTb.K \n", + "1937 NYSE Tick Pilot Test Sym G2 NYSE Consolidated NTESTc.K \n", + "1938 Test Symbol NTEST D NYSE Consolidated NTESTd.K \n", + "\n", + " MktCapCompanyUsd ShareholdersEquityUsd Pe DebtToAssets \\\n", + "0 693513590760 506199000000 0.462934 \n", + "1 167733991056 88553000000 52.619234 0.49794 \n", + "2 439884760000 168577000000 8.711722 0.481643 \n", + "3 471379107328 71760000000 24.711943 0.6396 \n", + "4 400030482625 259289000000 11.515216 0.921431 \n", + "... ... ... ... ... \n", + "1934 \n", + "1935 \n", + "1936 \n", + "1937 \n", + "1938 \n", + "\n", + " Beta Eps Gics \\\n", + "0 0.896323 -1189.17575 Financials/Diversified Financials/Diversified ... \n", + "1 1.239782 1.74803 Communication Services/Media & Entertainment/E... \n", + "2 1.122766 12.26164 Energy/Energy/Oil, Gas & Consumable Fuels/Inte... \n", + "3 0.693955 20.41523 Health Care/Health Care Equipment & Services/H... \n", + "4 1.133849 11.84346 Financials/Banks/Banks/Diversified Banks \n", + "... ... ... ... \n", + "1934 \n", + "1935 \n", + "1936 \n", + "1937 \n", + "1938 \n", + "\n", + " ... SearchAllCategory RCSAssetCategory RCSCurrencyLeaf AssetState \\\n", + "0 ... Equities A:1L US Dollar AC \n", + "1 ... Equities A:1L US Dollar AC \n", + "2 ... Equities A:1L US Dollar AC \n", + "3 ... Equities A:1L US Dollar AC \n", + "4 ... Equities A:1L US Dollar AC \n", + "... ... ... ... ... ... \n", + "1934 ... Equities A:1L US Dollar AC \n", + "1935 ... Equities A:1L US Dollar AC \n", + "1936 ... Equities A:1L US Dollar AC \n", + "1937 ... Equities A:1L US Dollar AC \n", + "1938 ... Equities A:1L US Dollar AC \n", + "\n", + " BusinessEntity PI IssueISIN CUSIP CinCUSIP \\\n", + "0 QUOTExEQUITY 727363 US0846701086 084670108 \n", + "1 QUOTExEQUITY 1096946 US2546871060 254687106 \n", + "2 QUOTExEQUITY 728548 US30231G1022 30231G102 \n", + "3 QUOTExEQUITY 1096631 US91324P1021 91324P102 \n", + "4 QUOTExEQUITY 1113813 US46625H1005 46625H100 \n", + "... ... ... ... ... ... \n", + "1934 QUOTExEQUITY 214389816 \n", + "1935 QUOTExEQUITY 237876615 \n", + "1936 QUOTExEQUITY 237876637 \n", + "1937 QUOTExEQUITY 237876655 \n", + "1938 QUOTExEQUITY 299363939 \n", + "\n", + " SolvencyMargin \n", + "0 \n", + "1 \n", + "2 \n", + "3 24.05608 \n", + "4 \n", + "... ... \n", + "1934 \n", + "1935 \n", + "1936 \n", + "1937 \n", + "1938 \n", + "\n", + "[1939 rows x 42 columns]" + ] + }, + "metadata": {}, + "output_type": "display_data" + } + ], + "source": [ + "nyse_equities = equity.search(exchange_name='NYSE Consolidated')\n", + "display(nyse_equities)" + ] + }, + { + "cell_type": "markdown", + "id": "ab59a8eb-9d2f-4286-894b-4af21ef1c249", + "metadata": { + "tags": [] + }, + "source": [ + "### Experiment with the returned DataFrame " + ] + }, + { + "cell_type": "markdown", + "id": "b077bd3f-a38b-4f6f-ab2f-ff6b15a0ed87", + "metadata": { + "tags": [] + }, + "source": [ + "#### Define a function to plot and display data" + ] + }, + { + "cell_type": "code", + "execution_count": 8, + "id": "e3411f1b-028f-45c5-9c79-a4311e89cce7", + "metadata": {}, + "outputs": [], + "source": [ + "def plot_and_display(df, column_name):\n", + " df = df.sort_values(column_name,ascending = False)\n", + " df[['DTSubjectName', column_name]].iplot(x='DTSubjectName')\n", + " display(df)" + ] + }, + { + "cell_type": "markdown", + "id": "bd5e6d07-d25c-4df2-ba82-832178512b42", + "metadata": { + "tags": [] + }, + "source": [ + "#### Get the Equities by Market Cap" + ] + }, + { + "cell_type": "code", + "execution_count": 9, + "id": "5c95c0f2-6f73-47d4-a783-da5d6cc092f8", + "metadata": { + "tags": [] + }, + "outputs": [ + { + "data": { + "application/vnd.plotly.v1+json": { + "config": { + "linkText": "Export to plot.ly", + "plotlyServerURL": "https://plot.ly", + "showLink": true + }, + "data": [ + { + "line": { + "color": "rgba(255, 153, 51, 1.0)", + "dash": "solid", + "shape": "linear", + "width": 1.3 + }, + "mode": "lines", + "name": "MktCapCompanyUsd", + "text": "", + "type": "scatter", + "x": [ + "Berkshire Hathaway Inc", + "Berkshire Hathaway Inc", + "UnitedHealth Group Inc", + "Johnson & Johnson", + "Exxon Mobil Corp", + "Visa Inc", + "JPMorgan Chase & Co", + "Walmart Inc", + "Procter & Gamble Co", + "Eli Lilly and Co", + "Mastercard Inc", + "Chevron Corp", + "Home Depot Inc", + "Abbvie Inc", + "Merck & Co Inc", + "Pfizer Inc", + "Bank of America Corp", + "Coca-Cola Co", + "Oracle Corp", + "Thermo Fisher Scientific Inc", + "Danaher Corp", + "Abbott Laboratories", + "McDonald's Corp", + "Nike Inc", + "Accenture PLC", + "Verizon Communications Inc", + "Nextera Energy Inc", + "Walt Disney Co", + "Wells Fargo & Co", + "Philip Morris International Inc", + "Linde PLC", + "Charles Schwab Corp", + "Bristol-Myers Squibb Co", + "United Parcel Service Inc", + "Raytheon Technologies Corp", + "Morgan Stanley", + "Conocophillips", + "Salesforce Inc", + "AT&T Inc", + "Royal Bank of Canada", + "International Business Machines Corp", + "Union Pacific Corp", + "Deere & Co", + "Caterpillar Inc", + "Lockheed Martin Corp", + "Lowe's Companies Inc", + "Boeing Co", + "CVS Health Corp", + "Toronto-Dominion Bank", + "Goldman Sachs Group Inc", + "Elevance Health Inc", + "American Express Co", + "S&P Global Inc", + "BlackRock Inc", + "Prologis Inc", + "Medtronic PLC", + "American Tower Corp", + "Stryker Corp", + "Cigna Corp", + "Blackstone Inc", + "Estee Lauder Companies Inc", + "Chubb Ltd", + "TJX Companies Inc", + "Citigroup Inc", + "Marsh & McLennan Companies Inc", + "Canadian National Railway Co", + "Altria Group Inc", + "Northrop Grumman Corp", + "Duke Energy Corp", + "Enbridge Inc", + "ServiceNow Inc", + "Southern Co", + "Progressive Corp", + "General Electric Co", + "Schlumberger NV", + "Becton Dickinson and Co", + "EOG Resources Inc", + "Canadian Pacific Railway Ltd", + "US Bancorp", + "HCA Healthcare Inc", + "Target Corp", + "Zoetis Inc", + "3M Co", + "UBS Group AG", + "Air Products and Chemicals Inc", + "Illinois Tool Works Inc", + "General Dynamics Corp", + "Boston Scientific Corp", + "Colgate-Palmolive Co", + "PNC Financial Services Group Inc", + "Waste Management Inc", + "Bank of Montreal", + "Sherwin-Williams Co", + "Eaton Corporation PLC", + "Aon PLC", + "Humana Inc", + "Crown Castle Inc", + "Truist Financial Corp", + "Bank of Nova Scotia", + "Norfolk Southern Corp", + "Intercontinental Exchange Inc", + "Canadian Natural Resources Ltd", + "MetLife Inc", + "Thomson Reuters Corp", + "Emerson Electric Co", + "Freeport-McMoRan Inc", + "Occidental Petroleum Corp", + "Dollar General Corp", + "Brookfield Corp", + "Mckesson Corp", + "Pioneer Natural Resources Co", + "Dominion Energy Inc", + "VMware Inc", + "Moody's Corp", + "Marathon Petroleum Corp", + "Uber Technologies Inc", + "Constellation Brands Inc", + "General Mills Inc", + "General Motors Co", + "Southern Copper Corp", + "Public Storage", + "Sempra Energy", + "Stellantis NV", + "Ford Motor Co", + "Phillips 66", + "Archer-Daniels-Midland Co", + "American International Group Inc", + "Edwards Lifesciences Corp", + "Shopify Inc", + "Roper Technologies Inc", + "Kimberly-Clark Corp", + "Amphenol Corp", + "Valero Energy Corp", + "Autozone Inc", + "FedEx Corp", + "Hershey Co", + "Johnson Controls International PLC", + "Centene Corp", + "Agilent Technologies Inc", + "Aflac Inc", + "Travelers Companies Inc", + "Motorola Solutions Inc", + "Ecolab Inc", + "Corteva Inc", + "Ferrari NV", + "Hess Corp", + "Snowflake Inc.", + "Simon Property Group Inc", + "KKR & Co Inc", + "Fidelity National Information Services Inc", + "Kinder Morgan Inc", + "BCE Inc", + "Newmont Corporation", + "Republic Services Inc", + "Realty Income Corp", + "Suncor Energy Inc", + "Trane Technologies PLC", + "TC Energy Corp", + "Arthur J. Gallagher & Co.", + "Las Vegas Sands Corp", + "Block Inc", + "Williams Companies Inc", + "L3harris Technologies Inc", + "PG&E Corp", + "Sysco Corp", + "IQVIA Holdings Inc", + "Devon Energy Corp", + "Bank of New York Mellon Corp", + "Chipotle Mexican Grill Inc", + "Parker-Hannifin Corp", + "MSCI Inc", + "Canadian Imperial Bank of Commerce", + "Nutrien Ltd", + "TE Connectivity Ltd", + "Prudential Financial Inc", + "Allstate Corp", + "Apollo Global Management Inc", + "Dow Inc", + "Capital One Financial Corp", + "Yum! Brands Inc", + "Carrier Global Corp", + "Nucor Corp", + "Dupont De Nemours Inc", + "Alcon AG", + "Halliburton Co", + "Arista Networks Inc", + "Cenovus Energy Inc", + "Hilton Worldwide Holdings Inc", + "TransDigm Group Inc", + "Manulife Financial Corp", + "Consolidated Edison Inc", + "Waste Connections Inc", + "Cummins Inc", + "Otis Worldwide Corp", + "Ameriprise Financial Inc", + "Barrick Gold Corp", + "Mettler-Toledo International Inc", + "Amerisourcebergen Corp", + "Welltower Inc", + "AMETEK Inc", + "Kroger Co", + "VICI Properties Inc", + "D R Horton Inc", + "Brown-Forman Corp", + "Brown-Forman Corp", + "Public Service Enterprise Group Inc", + "Resmed Inc", + "PPG Industries Inc", + "Keysight Technologies Inc" + ], + "y": [ + 693513590760, + 693513590760, + 471379107328, + 470946932128, + 439884760000, + 438335389155, + 400030482625, + 387691975763, + 360739431000, + 345009595490, + 341462439091, + 332856539308, + 325864346814, + 289482574354, + 284167180765, + 281395457739, + 273885836639, + 272098374570, + 227779453440, + 220382527389, + 193907424931, + 193902839740, + 193645552805, + 189644067958, + 177330362091, + 172738491595, + 167895456957, + 167733991056, + 162517436799, + 156926979335, + 156028465293, + 155592726656, + 154401764399, + 153185654963, + 148240928551, + 146447981156, + 141229694620, + 139590000000, + 136410780000, + 132811532632, + 128928419363, + 128640919392, + 126297513594, + 125606001922, + 124878243369, + 121781051579, + 121366017218, + 120858676565, + 120052244843, + 117743246247, + 115936461406, + 112488410055, + 111299796000, + 108426187036, + 107963270365, + 107704672818, + 101967627057, + 95542216000, + 94870812941, + 94633271737, + 93452716564, + 93137281485, + 92278561339, + 90954610493, + 83929768510, + 81630649527, + 81382558583, + 81027054526, + 80710279133, + 80566364302, + 79557700000, + 78939666758, + 76775400000, + 76705303428, + 73310600000, + 73136458415, + 73047757722, + 71340264520, + 70437037234, + 70362532296, + 70298556639, + 69426084375, + 69175775812, + 69078157603, + 68059211089, + 67832896210, + 67324896216, + 66602474613, + 66516459684, + 66035425273, + 64407961133, + 63544996118, + 63277639318, + 63162714000, + 62618520785, + 62302548494, + 62077430943, + 59505455100, + 58711205149, + 58086916041, + 58050270386, + 57904258824, + 57425328143, + 56581690010, + 56431388000, + 55743760449, + 55543743645, + 54440463556, + 53888084332, + 53109420000, + 52996397395, + 52671325708, + 52293428330, + 52048952000, + 51824514913, + 51675094179, + 49813560368, + 49462443049, + 49283971541, + 48875285210, + 48846792086, + 48734244599, + 48335868976, + 48286134128, + 47584611204, + 47456983870, + 47446703438, + 47278380358, + 47261793488, + 46953486387, + 46172293380, + 46137679686, + 46116294514, + 45890697803, + 45797461053, + 45788786743, + 45185115896, + 44994995205, + 44905246306, + 44719033235, + 43876887105, + 43141771986, + 42655850265, + 42648027480, + 42361694369, + 42105687201, + 41949504000, + 41547389846, + 41419480610, + 41103394917, + 40976337954, + 40961626145, + 40885482033, + 40527120042, + 40520410959, + 40235083780, + 40144864765, + 40084904231, + 40004781600, + 39652587231, + 39652113797, + 39402300000, + 39400050369, + 39151245559, + 38858933893, + 38593061978, + 38502930000, + 38344803200, + 38145636167, + 38122377476, + 37909765663, + 37635873339, + 37465854886, + 37312658820, + 37234240000, + 36853522403, + 36832174105, + 36827722546, + 36566723197, + 36247594596, + 35148071475, + 35146488270, + 35038524502, + 34915556272, + 34896237640, + 34786386605, + 34785142377, + 34575097213, + 34449569041, + 34427107157, + 34276202488, + 34098104500, + 33904860000, + 33647657439, + 33295813223, + 33257789919, + 33253343486, + 32971633423, + 32528376342, + 32346821817, + 32190509718, + 31866055688, + 31574373496, + 31403785144, + 31403785144, + 31189348497, + 30893401785, + 30546510398, + 30482837975 + ] + } + ], + "layout": { + "autosize": true, + "legend": { + "bgcolor": "#151516", + "font": { + "color": "#D9D9D9" + } + }, + "paper_bgcolor": "#151516", + "plot_bgcolor": "#151516", + "template": { + "data": { + "bar": [ + { + "error_x": { + "color": "#2a3f5f" + }, + "error_y": { + "color": "#2a3f5f" + }, + "marker": { + "line": { + "color": "#E5ECF6", + "width": 0.5 + }, + "pattern": { + "fillmode": "overlay", + "size": 10, + "solidity": 0.2 + } + }, + "type": "bar" + } + ], + "barpolar": [ + { + "marker": { + "line": { + "color": "#E5ECF6", + "width": 0.5 + }, + "pattern": { + "fillmode": "overlay", + "size": 10, + "solidity": 0.2 + } + }, + "type": "barpolar" + } + ], + "carpet": [ + { + "aaxis": { + "endlinecolor": "#2a3f5f", + "gridcolor": "white", + "linecolor": "white", + "minorgridcolor": "white", + "startlinecolor": "#2a3f5f" + }, + "baxis": { + "endlinecolor": "#2a3f5f", + "gridcolor": "white", + "linecolor": "white", + "minorgridcolor": "white", + "startlinecolor": "#2a3f5f" + }, + "type": "carpet" + } + ], + "choropleth": [ + { + "colorbar": { + "outlinewidth": 0, + "ticks": "" + }, + "type": "choropleth" + } + ], + "contour": [ + { + "colorbar": { + "outlinewidth": 0, + "ticks": "" + }, + "colorscale": [ + [ + 0, + "#0d0887" + ], + [ + 0.1111111111111111, + "#46039f" + ], + [ + 0.2222222222222222, + "#7201a8" + ], + [ + 0.3333333333333333, + "#9c179e" + ], + [ + 0.4444444444444444, + "#bd3786" + ], + [ + 0.5555555555555556, + "#d8576b" + ], + [ + 0.6666666666666666, + "#ed7953" + ], + [ + 0.7777777777777778, + "#fb9f3a" + ], + [ + 0.8888888888888888, + "#fdca26" + ], + [ + 1, + "#f0f921" + ] + ], + "type": "contour" + } + ], + "contourcarpet": [ + { + "colorbar": { + "outlinewidth": 0, + "ticks": "" + }, + "type": "contourcarpet" + } + ], + "heatmap": [ + { + "colorbar": { + "outlinewidth": 0, + "ticks": "" + }, + "colorscale": [ + [ + 0, + "#0d0887" + ], + [ + 0.1111111111111111, + "#46039f" + ], + [ + 0.2222222222222222, + "#7201a8" + ], + [ + 0.3333333333333333, + "#9c179e" + ], + [ + 0.4444444444444444, + "#bd3786" + ], + [ + 0.5555555555555556, + "#d8576b" + ], + [ + 0.6666666666666666, + "#ed7953" + ], + [ + 0.7777777777777778, + "#fb9f3a" + ], + [ + 0.8888888888888888, + "#fdca26" + ], + [ + 1, + "#f0f921" + ] + ], + "type": "heatmap" + } + ], + "heatmapgl": [ + { + "colorbar": { + "outlinewidth": 0, + "ticks": "" + }, + "colorscale": [ + [ + 0, + "#0d0887" + ], + [ + 0.1111111111111111, + "#46039f" + ], + [ + 0.2222222222222222, + "#7201a8" + ], + [ + 0.3333333333333333, + "#9c179e" + ], + [ + 0.4444444444444444, + "#bd3786" + ], + [ + 0.5555555555555556, + "#d8576b" + ], + [ + 0.6666666666666666, + "#ed7953" + ], + [ + 0.7777777777777778, + "#fb9f3a" + ], + [ + 0.8888888888888888, + "#fdca26" + ], + [ + 1, + "#f0f921" + ] + ], + "type": "heatmapgl" + } + ], + "histogram": [ + { + "marker": { + "pattern": { + "fillmode": "overlay", + "size": 10, + "solidity": 0.2 + } + }, + "type": "histogram" + } + ], + "histogram2d": [ + { + "colorbar": { + "outlinewidth": 0, + "ticks": "" + }, + "colorscale": [ + [ + 0, + "#0d0887" + ], + [ + 0.1111111111111111, + "#46039f" + ], + [ + 0.2222222222222222, + "#7201a8" + ], + [ + 0.3333333333333333, + "#9c179e" + ], + [ + 0.4444444444444444, + "#bd3786" + ], + [ + 0.5555555555555556, + "#d8576b" + ], + [ + 0.6666666666666666, + "#ed7953" + ], + [ + 0.7777777777777778, + "#fb9f3a" + ], + [ + 0.8888888888888888, + "#fdca26" + ], + [ + 1, + "#f0f921" + ] + ], + "type": "histogram2d" + } + ], + "histogram2dcontour": [ + { + "colorbar": { + "outlinewidth": 0, + "ticks": "" + }, + "colorscale": [ + [ + 0, + "#0d0887" + ], + [ + 0.1111111111111111, + "#46039f" + ], + [ + 0.2222222222222222, + "#7201a8" + ], + [ + 0.3333333333333333, + "#9c179e" + ], + [ + 0.4444444444444444, + "#bd3786" + ], + [ + 0.5555555555555556, + "#d8576b" + ], + [ + 0.6666666666666666, + "#ed7953" + ], + [ + 0.7777777777777778, + "#fb9f3a" + ], + [ + 0.8888888888888888, + "#fdca26" + ], + [ + 1, + "#f0f921" + ] + ], + "type": "histogram2dcontour" + } + ], + "mesh3d": [ + { + "colorbar": { + "outlinewidth": 0, + "ticks": "" + }, + "type": "mesh3d" + } + ], + "parcoords": [ + { + "line": { + "colorbar": { + "outlinewidth": 0, + "ticks": "" + } + }, + "type": "parcoords" + } + ], + "pie": [ + { + "automargin": true, + "type": "pie" + } + ], + "scatter": [ + { + "marker": { + "colorbar": { + "outlinewidth": 0, + "ticks": "" + } + }, + "type": "scatter" + } + ], + "scatter3d": [ + { + "line": { + "colorbar": { + "outlinewidth": 0, + "ticks": "" + } + }, + "marker": { + "colorbar": { + "outlinewidth": 0, + "ticks": "" + } + }, + "type": "scatter3d" + } + ], + "scattercarpet": [ + { + "marker": { + "colorbar": { + "outlinewidth": 0, + "ticks": "" + } + }, + "type": "scattercarpet" + } + ], + "scattergeo": [ + { + "marker": { + "colorbar": { + "outlinewidth": 0, + "ticks": "" + } + }, + "type": "scattergeo" + } + ], + "scattergl": [ + { + "marker": { + "colorbar": { + "outlinewidth": 0, + "ticks": "" + } + }, + "type": "scattergl" + } + ], + "scattermapbox": [ + { + "marker": { + "colorbar": { + "outlinewidth": 0, + "ticks": "" + } + }, + "type": "scattermapbox" + } + ], + "scatterpolar": [ + { + "marker": { + "colorbar": { + "outlinewidth": 0, + "ticks": "" + } + }, + "type": "scatterpolar" + } + ], + "scatterpolargl": [ + { + "marker": { + "colorbar": { + "outlinewidth": 0, + "ticks": "" + } + }, + "type": "scatterpolargl" + } + ], + "scatterternary": [ + { + "marker": { + "colorbar": { + "outlinewidth": 0, + "ticks": "" + } + }, + "type": "scatterternary" + } + ], + "surface": [ + { + "colorbar": { + "outlinewidth": 0, + "ticks": "" + }, + "colorscale": [ + [ + 0, + "#0d0887" + ], + [ + 0.1111111111111111, + "#46039f" + ], + [ + 0.2222222222222222, + "#7201a8" + ], + [ + 0.3333333333333333, + "#9c179e" + ], + [ + 0.4444444444444444, + "#bd3786" + ], + [ + 0.5555555555555556, + "#d8576b" + ], + [ + 0.6666666666666666, + "#ed7953" + ], + [ + 0.7777777777777778, + "#fb9f3a" + ], + [ + 0.8888888888888888, + "#fdca26" + ], + [ + 1, + "#f0f921" + ] + ], + "type": "surface" + } + ], + "table": [ + { + "cells": { + "fill": { + "color": "#EBF0F8" + }, + "line": { + "color": "white" + } + }, + "header": { + "fill": { + "color": "#C8D4E3" + }, + "line": { + "color": "white" + } + }, + "type": "table" + } + ] + }, + "layout": { + "annotationdefaults": { + "arrowcolor": "#2a3f5f", + "arrowhead": 0, + "arrowwidth": 1 + }, + "autotypenumbers": "strict", + "coloraxis": { + "colorbar": { + "outlinewidth": 0, + "ticks": "" + } + }, + "colorscale": { + "diverging": [ + [ + 0, + "#8e0152" + ], + [ + 0.1, + "#c51b7d" + ], + [ + 0.2, + "#de77ae" + ], + [ + 0.3, + "#f1b6da" + ], + [ + 0.4, + "#fde0ef" + ], + [ + 0.5, + "#f7f7f7" + ], + [ + 0.6, + "#e6f5d0" + ], + [ + 0.7, + "#b8e186" + ], + [ + 0.8, + "#7fbc41" + ], + [ + 0.9, + "#4d9221" + ], + [ + 1, + "#276419" + ] + ], + "sequential": [ + [ + 0, + "#0d0887" + ], + [ + 0.1111111111111111, + "#46039f" + ], + [ + 0.2222222222222222, + "#7201a8" + ], + [ + 0.3333333333333333, + "#9c179e" + ], + [ + 0.4444444444444444, + "#bd3786" + ], + [ + 0.5555555555555556, + "#d8576b" + ], + [ + 0.6666666666666666, + "#ed7953" + ], + [ + 0.7777777777777778, + "#fb9f3a" + ], + [ + 0.8888888888888888, + "#fdca26" + ], + [ + 1, + "#f0f921" + ] + ], + "sequentialminus": [ + [ + 0, + "#0d0887" + ], + [ + 0.1111111111111111, + "#46039f" + ], + [ + 0.2222222222222222, + "#7201a8" + ], + [ + 0.3333333333333333, + "#9c179e" + ], + [ + 0.4444444444444444, + "#bd3786" + ], + [ + 0.5555555555555556, + "#d8576b" + ], + [ + 0.6666666666666666, + "#ed7953" + ], + [ + 0.7777777777777778, + "#fb9f3a" + ], + [ + 0.8888888888888888, + "#fdca26" + ], + [ + 1, + "#f0f921" + ] + ] + }, + "colorway": [ + "#636efa", + "#EF553B", + "#00cc96", + "#ab63fa", + "#FFA15A", + "#19d3f3", + "#FF6692", + "#B6E880", + "#FF97FF", + "#FECB52" + ], + "font": { + "color": "#2a3f5f" + }, + "geo": { + "bgcolor": "white", + "lakecolor": "white", + "landcolor": "#E5ECF6", + "showlakes": true, + "showland": true, + "subunitcolor": "white" + }, + "hoverlabel": { + "align": "left" + }, + "hovermode": "closest", + "mapbox": { + "style": "light" + }, + "paper_bgcolor": "white", + "plot_bgcolor": "#E5ECF6", + "polar": { + "angularaxis": { + "gridcolor": "white", + "linecolor": "white", + "ticks": "" + }, + "bgcolor": "#E5ECF6", + "radialaxis": { + "gridcolor": "white", + "linecolor": "white", + "ticks": "" + } + }, + "scene": { + "xaxis": { + "backgroundcolor": "#E5ECF6", + "gridcolor": "white", + "gridwidth": 2, + "linecolor": "white", + "showbackground": true, + "ticks": "", + "zerolinecolor": "white" + }, + "yaxis": { + "backgroundcolor": "#E5ECF6", + "gridcolor": "white", + "gridwidth": 2, + "linecolor": "white", + "showbackground": true, + "ticks": "", + "zerolinecolor": "white" + }, + "zaxis": { + "backgroundcolor": "#E5ECF6", + "gridcolor": "white", + "gridwidth": 2, + "linecolor": "white", + "showbackground": true, + "ticks": "", + "zerolinecolor": "white" + } + }, + "shapedefaults": { + "line": { + "color": "#2a3f5f" + } + }, + "ternary": { + "aaxis": { + "gridcolor": "white", + "linecolor": "white", + "ticks": "" + }, + "baxis": { + "gridcolor": "white", + "linecolor": "white", + "ticks": "" + }, + "bgcolor": "#E5ECF6", + "caxis": { + "gridcolor": "white", + "linecolor": "white", + "ticks": "" + } + }, + "title": { + "x": 0.05 + }, + "xaxis": { + "automargin": true, + "gridcolor": "white", + "linecolor": "white", + "ticks": "", + "title": { + "standoff": 15 + }, + "zerolinecolor": "white", + "zerolinewidth": 2 + }, + "yaxis": { + "automargin": true, + "gridcolor": "white", + "linecolor": "white", + "ticks": "", + "title": { + "standoff": 15 + }, + "zerolinecolor": "white", + "zerolinewidth": 2 + } + } + }, + "title": { + "font": { + "color": "#D9D9D9" + } + }, + "xaxis": { + "autorange": true, + "gridcolor": "#434343", + "range": [ + 0, + 206 + ], + "showgrid": true, + "tickfont": { + "color": "#C2C2C2" + }, + "title": { + "font": { + "color": "#D9D9D9" + }, + "text": "" + }, + "type": "category", + "zerolinecolor": "#666570" + }, + "yaxis": { + "autorange": true, + "gridcolor": "#434343", + "range": [ + -6352203846.388893, + 730348632581.3889 + ], + "showgrid": true, + "tickfont": { + "color": "#C2C2C2" + }, + "title": { + "font": { + "color": "#D9D9D9" + }, + "text": "" + }, + "type": "linear", + "zerolinecolor": "#666570" + } + } + }, + "image/png": "iVBORw0KGgoAAAANSUhEUgAABEwAAAFoCAYAAABNBG49AAAAAXNSR0IArs4c6QAAIABJREFUeF7snQeYVcX5/9+7vbELC1voRVSQkkRiiRJbJCYYTfwJxA52rBQLRYgIaFABQxEFG2IFITFq/tGYKCaxt4gU6b0vbGV7+T/fuXsud+/evTP3ntl1Wb/j48Pu3rlz5nxmzpyZ77zvO56MjMwaYSIBEiABEiABEiABEiABEiABEiABEiABEvAR8FAwYW8gARIgARIgARIgARIgARIgARIgARIggboEKJiwR5AACZAACZAACZAACZAACZAACZAACZBAAAEKJuwSJEACJEACJEACJEACJEACJEACJEACJEDBhH2ABEiABEiABEiABEiABEiABEiABEiABEIToIUJewgJkAAJkAAJkAAJkAAJkAAJkAAJkAAJBBCgYMIuQQIkQAIkQAIkQAIkQAIkQAIkQAIkQAIUTNgHSIAESIAESIAESIAESIAESIAESIAESCA0AVqYsIeQAAmQAAmQAAmQAAmQAAmQAAmQAAmQQAABCibsEiRAAiRAAiRAAiRAAiRAAiRAAiRAAiRAwYR9gARIgARIgARIgARIgARIgARIgARIgARCE6CFCXsICZAACZAACZAACZAACZAACZAACZAACQQQoGDCLkECJEACJEACJEACJEACJEACJEACJEACFEzYB0iABEiABEiABEiABEiABEiABEiABEggNAFamLCHkAAJkAAJkAAJkAAJkAAJkAAJkAAJkEAAAQom7BIkQAIkQAIkQAIkQAIkQAIkQAIkQAIkQMGEfYAESIAESIAESIAESIAESIAESIAESIAEQhOghQl7CAmQAAmQAAmQAAmQAAmQAAmQAAmQAAkEEKBgwi5BAiRAAiRAAiRAAiRAAiRAAiRAAiRAAhRM2AdIgARIgARIgARIgARIgARIgARIgARIIDQBWpiwh5AACZAACZAACZAACZAACZAACZAACZBAAAEKJuwSJEACJEACJEACJEACJEACJEACJEACJEDBhH2ABEiABEiABEiABEiABEiABEiABEiABEIToIUJewgJkAAJkAAJkAAJkAAJkAAJkAAJkAAJBBCgYMIuQQIkQAIkQAIkQAIkQAIkQAIkQAIkQAIUTNgHSIAESIAESIAESIAESIAESIAESIAESCA0AVqYsIeQAAmQAAmQAAmQAAmQAAmQAAmQAAmQQAABCibsEiRAAiRAAiRAAiRAAiRAAiRAAiRAAiRAwYR9gARIgARIgARIgARIgARIgARIgARIgARCE6CFCXsICZAACZAACZAACZAACZAACZAACZAACQQQoGDCLkECJEACJEACJEACJEACJEACJEACJEACFEzYB0iABEiABEiABEiABEiABEiABEiABEggNAFamLCHkAAJkAAJkAAJkAAJkAAJkAAJkAAJkEAAAQom7BIkQAIkQAIkQAIkQAIkQAIkQAIkQAIkQMGEfYAESIAESIAESIAESIAESIAESIAESIAEQhOghQl7CAmQAAmQAAmQAAmQAAmQAAmQAAmQAAkEEKBgwi5BAiRAAiRAAiRAAiRAAiRAAiRAAiRAAhRM2AdIgARIgARIgARIgARIgARIgARIgARIIDQBWpiwh5AACZAACZAACZAACZAACZAACZAACZBAAAEKJuwSJEACJEACJEACJEACJEACJEACJEACJEDBhH2ABEiABEiABEiABEiABEiABEiABEiABEIToIUJewgJkAAJkAAJkAAJkAAJkAAJkAAJkAAJBBCgYMIuQQIkQAIkQAIkQAIkQAIkQAIkQAIkQAIUTNgHSIAESIAESIAESIAESIAESIAESIAESCA0AVqYsIeQAAmQAAmQAAmQAAmQAAmQAAmQAAmQQAABCibsEiRAAiRAAiRAAiRAAiRAAiRAAiRAAiRAwYR9gARIgARIgARIgARIgARIgARIgARIgARCE6CFCXsICZAACZAACZAACZAACZAACZAACZAACQQQoGDCLkECJEACJEACJEACJEACJEACJEACJEACFEzYB0iABEiABEiABEiABEiABEiABEiABEggNAFamLCHkAAJkAAJkAAJkAAJkAAJkAAJkAAJkEAAAQom7BIkQAIkQAIkQAIkQAIkQAIkQAIkQAIkQMGEfYAESIAESIAESIAESIAESIAESIAESIAEQhOghQl7CAmQAAmQAAmQAAmQAAmQAAmQAAmQAAkEEKBgwi5BAiRAAiRAAiRAAiRAAiRAAiRAAiRAAhRM2AdIgARIgARIgARIgARIgARIgARIgARIIDQBWpiwh5AACZAACZAACZAACZAACZAACZAACZBAAAEKJuwSJEACJEACJEACJEACJEACJEACJEACJEDBhH2A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", + "text/html": [ + "
" + ] + }, + "metadata": {}, + "output_type": "display_data" + }, + { + "data": { + "text/html": [ + "
\n", + "\n", + "\n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
DTSubjectNameExchangeNameRICMktCapCompanyUsdShareholdersEquityUsdPeDebtToAssetsBetaEpsGics...SearchAllCategoryRCSAssetCategoryRCSCurrencyLeafAssetStateBusinessEntityPIIssueISINCUSIPCinCUSIPSolvencyMargin
0Berkshire Hathaway IncNYSE ConsolidatedBRKa693513590760506199000000<NA>0.4629340.896323-1189.17575Financials/Diversified Financials/Diversified ......EquitiesA:1LUS DollarACQUOTExEQUITY727363US0846701086084670108<NA><NA>
1796Berkshire Hathaway IncNYSE ConsolidatedBRKb693513590760506199000000<NA>0.4629340.891957-0.8Financials/Diversified Financials/Diversified ......EquitiesA:1LUS DollarACQUOTExEQUITY727365US0846707026084670702<NA><NA>
3UnitedHealth Group IncNYSE ConsolidatedUNH4713791073287176000000024.7119430.63960.69395520.41523Health Care/Health Care Equipment & Services/H......EquitiesA:1LUS DollarACQUOTExEQUITY1096631US91324P102191324P102<NA>24.05608
10Johnson & JohnsonNYSE ConsolidatedJNJ4709469321287402300000025.0777550.593320.5609987.18286Health Care/Pharmaceuticals, Biotechnology & L......EquitiesA:1LUS DollarACQUOTExEQUITY1097390US4781601046478160104<NA><NA>
2Exxon Mobil CorpNYSE ConsolidatedXOM4398847600001685770000008.7117220.4816431.12276612.26164Energy/Energy/Oil, Gas & Consumable Fuels/Inte......EquitiesA:1LUS DollarACQUOTExEQUITY728548US30231G102230231G102<NA><NA>
..................................................................
488Brown-Forman CorpNYSE ConsolidatedBFb31403785144273700000035.5314810.5705320.6871911.84428Consumer Staples/Food, Beverage & Tobacco/Beve......EquitiesA:1LUS DollarACQUOTExEQUITY725177US1156372096115637209<NA><NA>
264Public Service Enterprise Group IncNYSE ConsolidatedPEG311893484971443800000045.6627340.7053410.5950181.36895Utilities/Utilities/Multi-Utilities/Multi-Util......EquitiesA:1LUS DollarACQUOTExEQUITY724638US7445731067744573106<NA><NA>
250Resmed IncNYSE ConsolidatedRMD30893401785336075100039.4427520.3404930.4623115.34699Health Care/Health Care Equipment & Services/H......EquitiesA:1LUS DollarACQUOTExEQUITY726786US7611521078761152107<NA><NA>
306PPG Industries IncNYSE ConsolidatedPPG30546510398628600000029.224670.6997331.1946834.44727Materials/Materials/Chemicals/Specialty Chemicals...EquitiesA:1LUS DollarACQUOTExEQUITY724680US6935061076693506107<NA><NA>
286Keysight Technologies IncNYSE ConsolidatedKEYS.K30482837975416100000027.6559820.4861691.0264816.16467Information Technology/Technology Hardware & E......EquitiesA:1LUS DollarACQUOTExEQUITY169648531US49338L103549338L103<NA><NA>
\n", + "

209 rows × 42 columns

\n", + "
" + ], + "text/plain": [ + " DTSubjectName ExchangeName RIC \\\n", + "0 Berkshire Hathaway Inc NYSE Consolidated BRKa \n", + "1796 Berkshire Hathaway Inc NYSE Consolidated BRKb \n", + "3 UnitedHealth Group Inc NYSE Consolidated UNH \n", + "10 Johnson & Johnson NYSE Consolidated JNJ \n", + "2 Exxon Mobil Corp NYSE Consolidated XOM \n", + "... ... ... ... \n", + "488 Brown-Forman Corp NYSE Consolidated BFb \n", + "264 Public Service Enterprise Group Inc NYSE Consolidated PEG \n", + "250 Resmed Inc NYSE Consolidated RMD \n", + "306 PPG Industries Inc NYSE Consolidated PPG \n", + "286 Keysight Technologies Inc NYSE Consolidated KEYS.K \n", + "\n", + " MktCapCompanyUsd ShareholdersEquityUsd Pe DebtToAssets \\\n", + "0 693513590760 506199000000 0.462934 \n", + "1796 693513590760 506199000000 0.462934 \n", + "3 471379107328 71760000000 24.711943 0.6396 \n", + "10 470946932128 74023000000 25.077755 0.59332 \n", + "2 439884760000 168577000000 8.711722 0.481643 \n", + "... ... ... ... ... \n", + "488 31403785144 2737000000 35.531481 0.570532 \n", + "264 31189348497 14438000000 45.662734 0.705341 \n", + "250 30893401785 3360751000 39.442752 0.340493 \n", + "306 30546510398 6286000000 29.22467 0.699733 \n", + "286 30482837975 4161000000 27.655982 0.486169 \n", + "\n", + " Beta Eps Gics \\\n", + "0 0.896323 -1189.17575 Financials/Diversified Financials/Diversified ... \n", + "1796 0.891957 -0.8 Financials/Diversified Financials/Diversified ... \n", + "3 0.693955 20.41523 Health Care/Health Care Equipment & Services/H... \n", + "10 0.560998 7.18286 Health Care/Pharmaceuticals, Biotechnology & L... \n", + "2 1.122766 12.26164 Energy/Energy/Oil, Gas & Consumable Fuels/Inte... \n", + "... ... ... ... \n", + "488 0.687191 1.84428 Consumer Staples/Food, Beverage & Tobacco/Beve... \n", + "264 0.595018 1.36895 Utilities/Utilities/Multi-Utilities/Multi-Util... \n", + "250 0.462311 5.34699 Health Care/Health Care Equipment & Services/H... \n", + "306 1.194683 4.44727 Materials/Materials/Chemicals/Specialty Chemicals \n", + "286 1.026481 6.16467 Information Technology/Technology Hardware & E... \n", + "\n", + " ... SearchAllCategory RCSAssetCategory RCSCurrencyLeaf AssetState \\\n", + "0 ... Equities A:1L US Dollar AC \n", + "1796 ... Equities A:1L US Dollar AC \n", + "3 ... Equities A:1L US Dollar AC \n", + "10 ... Equities A:1L US Dollar AC \n", + "2 ... Equities A:1L US Dollar AC \n", + "... ... ... ... ... ... \n", + "488 ... Equities A:1L US Dollar AC \n", + "264 ... Equities A:1L US Dollar AC \n", + "250 ... Equities A:1L US Dollar AC \n", + "306 ... Equities A:1L US Dollar AC \n", + "286 ... Equities A:1L US Dollar AC \n", + "\n", + " BusinessEntity PI IssueISIN CUSIP CinCUSIP \\\n", + "0 QUOTExEQUITY 727363 US0846701086 084670108 \n", + "1796 QUOTExEQUITY 727365 US0846707026 084670702 \n", + "3 QUOTExEQUITY 1096631 US91324P1021 91324P102 \n", + "10 QUOTExEQUITY 1097390 US4781601046 478160104 \n", + "2 QUOTExEQUITY 728548 US30231G1022 30231G102 \n", + "... ... ... ... ... ... \n", + "488 QUOTExEQUITY 725177 US1156372096 115637209 \n", + "264 QUOTExEQUITY 724638 US7445731067 744573106 \n", + "250 QUOTExEQUITY 726786 US7611521078 761152107 \n", + "306 QUOTExEQUITY 724680 US6935061076 693506107 \n", + "286 QUOTExEQUITY 169648531 US49338L1035 49338L103 \n", + "\n", + " SolvencyMargin \n", + "0 \n", + "1796 \n", + "3 24.05608 \n", + "10 \n", + "2 \n", + "... ... \n", + "488 \n", + "264 \n", + "250 \n", + "306 \n", + "286 \n", + "\n", + "[209 rows x 42 columns]" + ] + }, + "metadata": {}, + "output_type": "display_data" + } + ], + "source": [ + "equities = nyse_equities.query(\"MktCapCompanyUsd >= 30_000_000_000\")\n", + "plot_and_display(equities, \"MktCapCompanyUsd\")" + ] + }, + { + "cell_type": "code", + "execution_count": 10, + "id": "d1395725-3c07-4ba9-a498-c83b7485a114", + "metadata": { + "tags": [] + }, + "outputs": [ + { + "data": { + "application/vnd.plotly.v1+json": { + "config": { + "linkText": "Export to plot.ly", + "plotlyServerURL": "https://plot.ly", + "showLink": true + }, + "data": [ + { + "line": { + "color": "rgba(255, 153, 51, 1.0)", + "dash": "solid", + "shape": "linear", + "width": 1.3 + }, + "mode": "lines", + "name": "Beta", + "text": "", + "type": "scatter", + "x": [ + "Permian Resources Corp", + "SM Energy Co", + "Independence Contract Drilling Inc", + "Borr Drilling Ltd", + "Matador Resources Co", + "Sunlight Financial Holdings Inc", + "Nine Energy Service Inc", + "Quantumscape Corp", + "Rayonier Advanced Materials Inc", + "Innovid Corp", + "Oil States International Inc", + "Helix Energy Solutions Group Inc", + "Superior Industries International Inc", + "Forum Energy Technologies Inc", + "Laredo Petroleum Inc", + "Nabors Industries Ltd", + "Amplify Energy Corp", + "Oceaneering International Inc", + "Bakkt Holdings Inc", + "Newpark Resources Inc", + "Ovintiv Inc", + "Kosmos Energy Ltd", + "Seritage Growth Properties" + ], + "y": [ + 4.102281, + 4.099876, + 3.603619, + 3.546276, + 3.501395, + 3.406618, + 3.404719, + 3.381766, + 3.374165, + 3.373576, + 3.343317, + 3.241385, + 3.217959, + 3.188829, + 3.165203, + 3.161918, + 3.120985, + 3.103988, + 3.103145, + 3.098999, + 3.09392, + 3.059593, + 3.02347 + ] + } + ], + "layout": { + "autosize": true, + "legend": { + "bgcolor": "#151516", + "font": { + "color": "#D9D9D9" + } + }, + "paper_bgcolor": "#151516", + "plot_bgcolor": "#151516", + "template": { + "data": { + "bar": [ + { + "error_x": { + "color": "#2a3f5f" + }, + "error_y": { + "color": "#2a3f5f" + }, + "marker": { + "line": { + "color": "#E5ECF6", + "width": 0.5 + }, + "pattern": { + "fillmode": "overlay", + "size": 10, + "solidity": 0.2 + } + }, + "type": "bar" + } + ], + "barpolar": [ + { + "marker": { + "line": { + "color": "#E5ECF6", + "width": 0.5 + }, + "pattern": { + "fillmode": "overlay", + "size": 10, + "solidity": 0.2 + } + }, + "type": "barpolar" + } + ], + "carpet": [ + { + "aaxis": { + "endlinecolor": "#2a3f5f", + "gridcolor": "white", + "linecolor": "white", + "minorgridcolor": "white", + "startlinecolor": "#2a3f5f" + }, + "baxis": { + "endlinecolor": "#2a3f5f", + "gridcolor": "white", + "linecolor": "white", + "minorgridcolor": "white", + "startlinecolor": "#2a3f5f" + }, + "type": "carpet" + } + ], + "choropleth": [ + { + "colorbar": { + "outlinewidth": 0, + "ticks": "" + }, + "type": "choropleth" + } + ], + "contour": [ + { + "colorbar": { + "outlinewidth": 0, + "ticks": "" + }, + "colorscale": [ + [ + 0, + "#0d0887" + ], + [ + 0.1111111111111111, + "#46039f" + ], + [ + 0.2222222222222222, + "#7201a8" + ], + [ + 0.3333333333333333, + "#9c179e" + ], + [ + 0.4444444444444444, + "#bd3786" + ], + [ + 0.5555555555555556, + "#d8576b" + ], + [ + 0.6666666666666666, + "#ed7953" + ], + [ + 0.7777777777777778, + "#fb9f3a" + ], + [ + 0.8888888888888888, + "#fdca26" + ], + [ + 1, + "#f0f921" + ] + ], + "type": "contour" + } + ], + "contourcarpet": [ + { + "colorbar": { + "outlinewidth": 0, + "ticks": "" + }, + "type": "contourcarpet" + } + ], + "heatmap": [ + { + "colorbar": { + "outlinewidth": 0, + "ticks": "" + }, + "colorscale": [ + [ + 0, + "#0d0887" + ], + [ + 0.1111111111111111, + "#46039f" + ], + [ + 0.2222222222222222, + "#7201a8" + ], + [ + 0.3333333333333333, + "#9c179e" + ], + [ + 0.4444444444444444, + "#bd3786" + ], + [ + 0.5555555555555556, + "#d8576b" + ], + [ + 0.6666666666666666, + "#ed7953" + ], + [ + 0.7777777777777778, + "#fb9f3a" + ], + [ + 0.8888888888888888, + "#fdca26" + ], + [ + 1, + "#f0f921" + ] + ], + "type": "heatmap" + } + ], + "heatmapgl": [ + { + "colorbar": { + "outlinewidth": 0, + "ticks": "" + }, + "colorscale": [ + [ + 0, + "#0d0887" + ], + [ + 0.1111111111111111, + "#46039f" + ], + [ + 0.2222222222222222, + "#7201a8" + ], + [ + 0.3333333333333333, + "#9c179e" + ], + [ + 0.4444444444444444, + "#bd3786" + ], + [ + 0.5555555555555556, + "#d8576b" + ], + [ + 0.6666666666666666, + "#ed7953" + ], + [ + 0.7777777777777778, + "#fb9f3a" + ], + [ + 0.8888888888888888, + "#fdca26" + ], + [ + 1, + "#f0f921" + ] + ], + "type": "heatmapgl" + } + ], + "histogram": [ + { + "marker": { + "pattern": { + "fillmode": "overlay", + "size": 10, + "solidity": 0.2 + } + }, + "type": "histogram" + } + ], + "histogram2d": [ + { + "colorbar": { + "outlinewidth": 0, + "ticks": "" + }, + "colorscale": [ + [ + 0, + "#0d0887" + ], + [ + 0.1111111111111111, + "#46039f" + ], + [ + 0.2222222222222222, + "#7201a8" + ], + [ + 0.3333333333333333, + "#9c179e" + ], + [ + 0.4444444444444444, + "#bd3786" + ], + [ + 0.5555555555555556, + "#d8576b" + ], + [ + 0.6666666666666666, + "#ed7953" + ], + [ + 0.7777777777777778, + "#fb9f3a" + ], + [ + 0.8888888888888888, + "#fdca26" + ], + [ + 1, + "#f0f921" + ] + ], + "type": "histogram2d" + } + ], + "histogram2dcontour": [ + { + "colorbar": { + "outlinewidth": 0, + "ticks": "" + }, + "colorscale": [ + [ + 0, + "#0d0887" + ], + [ + 0.1111111111111111, + "#46039f" + ], + [ + 0.2222222222222222, + "#7201a8" + ], + [ + 0.3333333333333333, + "#9c179e" + ], + [ + 0.4444444444444444, + "#bd3786" + ], + [ + 0.5555555555555556, + "#d8576b" + ], + [ + 0.6666666666666666, + "#ed7953" + ], + [ + 0.7777777777777778, + "#fb9f3a" + ], + [ + 0.8888888888888888, + "#fdca26" + ], + [ + 1, + "#f0f921" + ] + ], + "type": "histogram2dcontour" + } + ], + "mesh3d": [ + { + "colorbar": { + "outlinewidth": 0, + "ticks": "" + }, + "type": "mesh3d" + } + ], + "parcoords": [ + { + "line": { + "colorbar": { + "outlinewidth": 0, + "ticks": "" + } + }, + "type": "parcoords" + } + ], + "pie": [ + { + "automargin": true, + "type": "pie" + } + ], + "scatter": [ + { + "marker": { + "colorbar": { + "outlinewidth": 0, + "ticks": "" + } + }, + "type": "scatter" + } + ], + "scatter3d": [ + { + "line": { + "colorbar": { + "outlinewidth": 0, + "ticks": "" + } + }, + "marker": { + "colorbar": { + "outlinewidth": 0, + "ticks": "" + } + }, + "type": "scatter3d" + } + ], + "scattercarpet": [ + { + "marker": { + "colorbar": { + "outlinewidth": 0, + "ticks": "" + } + }, + "type": "scattercarpet" + } + ], + "scattergeo": [ + { + "marker": { + "colorbar": { + "outlinewidth": 0, + "ticks": "" + } + }, + "type": "scattergeo" + } + ], + "scattergl": [ + { + "marker": { + "colorbar": { + "outlinewidth": 0, + "ticks": "" + } + }, + "type": "scattergl" + } + ], + "scattermapbox": [ + { + "marker": { + "colorbar": { + "outlinewidth": 0, + "ticks": "" + } + }, + "type": "scattermapbox" + } + ], + "scatterpolar": [ + { + "marker": { + "colorbar": { + "outlinewidth": 0, + "ticks": "" + } + }, + "type": "scatterpolar" + } + ], + "scatterpolargl": [ + { + "marker": { + "colorbar": { + "outlinewidth": 0, + "ticks": "" + } + }, + "type": "scatterpolargl" + } + ], + "scatterternary": [ + { + "marker": { + "colorbar": { + "outlinewidth": 0, + "ticks": "" + } + }, + "type": "scatterternary" + } + ], + "surface": [ + { + "colorbar": { + "outlinewidth": 0, + "ticks": "" + }, + "colorscale": [ + [ + 0, + "#0d0887" + ], + [ + 0.1111111111111111, + "#46039f" + ], + [ + 0.2222222222222222, + "#7201a8" + ], + [ + 0.3333333333333333, + "#9c179e" + ], + [ + 0.4444444444444444, + "#bd3786" + ], + [ + 0.5555555555555556, + "#d8576b" + ], + [ + 0.6666666666666666, + "#ed7953" + ], + [ + 0.7777777777777778, + "#fb9f3a" + ], + [ + 0.8888888888888888, + "#fdca26" + ], + [ + 1, + "#f0f921" + ] + ], + "type": "surface" + } + ], + "table": [ + { + "cells": { + "fill": { + "color": "#EBF0F8" + }, + "line": { + "color": "white" + } + }, + "header": { + "fill": { + "color": "#C8D4E3" + }, + "line": { + "color": "white" + } + }, + "type": "table" + } + ] + }, + "layout": { + "annotationdefaults": { + "arrowcolor": "#2a3f5f", + "arrowhead": 0, + "arrowwidth": 1 + }, + "autotypenumbers": "strict", + "coloraxis": { + "colorbar": { + "outlinewidth": 0, + "ticks": "" + } + }, + "colorscale": { + "diverging": [ + [ + 0, + "#8e0152" + ], + [ + 0.1, + "#c51b7d" + ], + [ + 0.2, + "#de77ae" + ], + [ + 0.3, + "#f1b6da" + ], + [ + 0.4, + "#fde0ef" + ], + [ + 0.5, + "#f7f7f7" + ], + [ + 0.6, + "#e6f5d0" + ], + [ + 0.7, + "#b8e186" + ], + [ + 0.8, + "#7fbc41" + ], + [ + 0.9, + "#4d9221" + ], + [ + 1, + "#276419" + ] + ], + "sequential": [ + [ + 0, + "#0d0887" + ], + [ + 0.1111111111111111, + "#46039f" + ], + [ + 0.2222222222222222, + "#7201a8" + ], + [ + 0.3333333333333333, + "#9c179e" + ], + [ + 0.4444444444444444, + "#bd3786" + ], + [ + 0.5555555555555556, + "#d8576b" + ], + [ + 0.6666666666666666, + "#ed7953" + ], + [ + 0.7777777777777778, + "#fb9f3a" + ], + [ + 0.8888888888888888, + "#fdca26" + ], + [ + 1, + "#f0f921" + ] + ], + "sequentialminus": [ + [ + 0, + "#0d0887" + ], + [ + 0.1111111111111111, + "#46039f" + ], + [ + 0.2222222222222222, + "#7201a8" + ], + [ + 0.3333333333333333, + "#9c179e" + ], + [ + 0.4444444444444444, + "#bd3786" + ], + [ + 0.5555555555555556, + "#d8576b" + ], + [ + 0.6666666666666666, + "#ed7953" + ], + [ + 0.7777777777777778, + "#fb9f3a" + ], + [ + 0.8888888888888888, + "#fdca26" + ], + [ + 1, + "#f0f921" + ] + ] + }, + "colorway": [ + "#636efa", + "#EF553B", + "#00cc96", + "#ab63fa", + "#FFA15A", + "#19d3f3", + "#FF6692", + "#B6E880", + "#FF97FF", + "#FECB52" + ], + "font": { + "color": "#2a3f5f" + }, + "geo": { + "bgcolor": "white", + "lakecolor": "white", + "landcolor": "#E5ECF6", + "showlakes": true, + "showland": true, + "subunitcolor": "white" + }, + "hoverlabel": { + "align": "left" + }, + "hovermode": "closest", + "mapbox": { + "style": "light" + }, + "paper_bgcolor": "white", + "plot_bgcolor": "#E5ECF6", + "polar": { + "angularaxis": { + "gridcolor": "white", + "linecolor": "white", + "ticks": "" + }, + "bgcolor": "#E5ECF6", + "radialaxis": { + "gridcolor": "white", + "linecolor": "white", + "ticks": "" + } + }, + "scene": { + "xaxis": { + "backgroundcolor": "#E5ECF6", + "gridcolor": "white", + "gridwidth": 2, + "linecolor": "white", + "showbackground": true, + "ticks": "", + "zerolinecolor": "white" + }, + "yaxis": { + "backgroundcolor": "#E5ECF6", + "gridcolor": "white", + "gridwidth": 2, + "linecolor": "white", + "showbackground": true, + "ticks": "", + "zerolinecolor": "white" + }, + "zaxis": { + "backgroundcolor": "#E5ECF6", + "gridcolor": "white", + "gridwidth": 2, + "linecolor": "white", + "showbackground": true, + "ticks": "", + "zerolinecolor": "white" + } + }, + "shapedefaults": { + "line": { + "color": "#2a3f5f" + } + }, + "ternary": { + "aaxis": { + "gridcolor": "white", + "linecolor": "white", + "ticks": "" + }, + "baxis": { + "gridcolor": "white", + "linecolor": "white", + "ticks": "" + }, + "bgcolor": "#E5ECF6", + "caxis": { + "gridcolor": "white", + "linecolor": "white", + "ticks": "" + } + }, + "title": { + "x": 0.05 + }, + "xaxis": { + "automargin": true, + "gridcolor": "white", + "linecolor": "white", + "ticks": "", + "title": { + "standoff": 15 + }, + "zerolinecolor": "white", + "zerolinewidth": 2 + }, + "yaxis": { + "automargin": true, + "gridcolor": "white", + "linecolor": "white", + "ticks": "", + "title": { + "standoff": 15 + }, + "zerolinecolor": "white", + "zerolinewidth": 2 + } + } + }, + "title": { + "font": { + "color": "#D9D9D9" + } + }, + "xaxis": { + "autorange": true, + "gridcolor": "#434343", + "range": [ + 0, + 22 + ], + "showgrid": true, + "tickfont": { + "color": "#C2C2C2" + }, + "title": { + "font": { + "color": "#D9D9D9" + }, + "text": "" + }, + "type": "category", + "zerolinecolor": "#666570" + }, + "yaxis": { + "autorange": true, + "gridcolor": "#434343", + "range": [ + 2.9635360555555557, + 4.162214944444444 + ], + "showgrid": true, + "tickfont": { + "color": "#C2C2C2" + }, + "title": { + "font": { + "color": "#D9D9D9" + }, + "text": "" + }, + "type": "linear", + "zerolinecolor": "#666570" + } + } + }, + "image/png": "iVBORw0KGgoAAAANSUhEUgAABEwAAAFoCAYAAABNBG49AAAAAXNSR0IArs4c6QAAIABJREFUeF7snQeYXUX5h7/tm+xusukkEKogHQX0LyoqYgU7oBRFQKSqKE26iBSliCggRQWUIiDYG6jYBRVUOigESCN9k91skq3/5527s7l7s/Xbe849LL95njy7uXvnnDnvzJnym+/7pmzatOndpiQCIiACIiACIiACIiACIiACIiACIiACItBLoEyCiVqDCIiACIiACIiACIiACIiACIiACIiACPQlIMFELUIEREAEREAEREAEREAEREAEREAEREAECghIMFGTEAEREAEREAEREAEREAEREAEREAEREAEJJmoDIiACIiACIiACIiACIiACIiACIiACIjA4AVmYqIWIgAiIgAiIgAiIgAiIgAiIgAiIgAiIQAEBCSZqEiIgAiIgAiIgAiIgAiIgAiIgAiIgAiIgwURtQAREQAREQAREQAREQAREQAREQAREQAQGJyALE7UQERABERABERABERABERABERABERABESggIMFETUIEREAEREAEREAEREAEREAEREAEREAEJJioDYiACIiACIiACIiACIiACIiACIiACIjA4ARkYaIWIgIiIAIiIAIiIAIiIAIiIAIiIAIiIAIFBCSYqEmIgAiIgAiIgAiIgAiIgAiIgAiIgAiIgAQTtQEREAEREAEREAEREAEREAEREAEREAERGJyALEzUQkRABERABERABERABERABERABERABESggIAEEzUJERABERABERABERABERABERABERABEZBgojYgAiIgAiIgAiIgAiIgAiIgAiIgAiIgAoMTkIWJWogIiIAIiIAIiIAIiIAIiIAIiIAIiIAIFBCQYKImIQIiIAIiIAIiIAIiIAIiIAIiIAIiIAISTNQGREAEREAEREAEREAEREAEREAEREAERGBwArIwUQsRAREQAREQAREQAREQAREQAREQAREQgQICEkzUJERABERABERABERABERABERABERABERAgonagAiIgAiIgAiIgAiIgAiIgAiIgAiIgAgMTkAWJmohIiACIiACIiACIiACIiACIiACIiACIlBAQIKJmoQIiIAIiIAIiIAIiIAIiIAIiIAIiIAISDBRGxABERABERABERABERABERABERABERCBwQnIwkQtRAREQAREQAREQAREQAREQAREQAREQAQKCEgwUZMQAREQAREQAREQAREQAREQAREQAREQAQkmagMiIAIiIAIiIAIiIAIiIAIiIAIiIAIiMDgBWZiohYiACIiACIiACIiACIiACIiACIiACIhAAQEJJmoSIiACIiACIiACIiACIiACIiACIiACIiDBRG1ABERABERABERABERABERABERABERABAYnIAsTtRAREAEREAEREAEREAEREAEREAEREAERKCAgwURNQgREQAREQAREQAREQAREQAREQAREQAQkmKgNiIAIiIAIiIAIiIAIiIAIiIAIiIAIiMDgBGRhohYiAiIgAiIgAiIgAiIgAiIgAiIgAiIgAgUEJJioSYiACIiACIiACIiACIiACIiACIiACIiABBO1AREQAREQAREQAREQAREQAREQAREQAREYnIAsTNRCREAEREAEREAEREAEREAEREAEREAERKCAgAQTNQkREAEREAEREAEREAEREAEREAEREAERkGCiNiACIiACIiACIiACIiACIiACIiACIiACgxOQhYlaiAiIgAiIgAiIgAiIgAiIgAiIgAiIgAgUEJBgoiYhAiIgAiIgAiIgAiIgAiIgAiIgAiIgAhJM1AZEQAREQAREQAREQAREQAREQAREQAREYHACsjBRCxEBERABERABERABERABERABERABERCBAgISTNQkREAEREAEREAEREAEREAEREAEREAERECCidqACIiACIiACIiACIiACIiACIiACIiACAxOQBYmaiEiIAIiIAIiIAIiIAIiIAIiIAIiIAIiUEBAgomahAiIgAiIgAiIgAiIgAiIgAiIgAiIgAhIMFEbEAEREAEREAEREAEREAEREAEREAEREIHBCcjCRC1EBERABERABERABERABERABERABERABAoISDBRkxABERABERABERABERABERABERABERABCSZqAyIgAiIgAiIgAiIgAiIgAiIgAiIgAiIwOAFZmKiFiIAIiIAIiIAIiIAIiIAIiIAIiIAIiEABAQkmahIiIAIiIAIiIAIiIAIiIAIiIAIiIAIiIMFEbUAEREAEREAEREAEREAEREAEREAEREAEBicgCxO1EBEQAREQAREQAREQAREQAREQAREQAREoICDBRE1CBERABERABERABERABERABERABERABCSYqA2IgAiIgAiIgAiIgAiIgAiIgAiIgAiIwOAEZGGiFiICIiACIiACIiACIiACIiACIiACIiACBQQkmKhJiIAIiIAIiIAIiIAIiIAIiIAIiIAIiIAEE7UBERABERABERABERABERABERABERABERicgCxM1EJEQAREQAREQAREQAREQAREQAREQAREoICABBM1CREQAREQAREQAREQAREQAREQAREQARGQYKI2IAIiIAIiIAIiIAIiIAIiIAIiIAIiIAKDE5CFiVqICIiACIiACIiACIiACIiACIiACIiACBQQkGCiJiECIiACIiACIiACIiACIiACIiACIiACEkzUBkRABERABERABERABERABERABERABERgcAKyMFELEQEREAEREAEREAEREAEREAEREAEREIECAhJM1CREQAREQAREQAREQAREQAREQAREQAREQIKJ2oAIiIAIiIAIiIAIiIAIiIAIiIAIiIAIDE5AFiZqISIgAiIgAiIgAiIgAiIgAiIgAiIgAiJQQECCiZqECIiACIiACIiACIiACIiACIiACIiACEgwURsQAREQAREQAREQAREQAREQAREQAREQgcEJyMJELUQEREAEREAEREAEREAEREAEREAEREAECghIMFGTEAEREAEREAEREAEREAEREAEREAEREAEJJmoDIiACIiACIiACIiACIiACIiACIiACIjA4AVmYqIWIgAiIgAiIgAiIgAiIgAiIgAiIgAiIQAEBCSZqEiIgAiIgAiIgAiIgAiIgAiIgAiIgAiIgwURtQAREQAREQAREQAREQAREQAREQAREQAQGJyALE7UQERABERABERABERABERABERABERABESggIMFETUIEREAEREAEREAEREAEREAEREAEREAEJJioDYiACIiACIiACIiACIiACIiACIiACIjA4ARkYaIWIgIiIAIiIAIiIAIiIAIiIAIiIAIiIAIFBCSYqEmIgAiIgAiIgAiIgAiIgAiIgAiIgAiIgAQTtQEREAEREAEREAEREAEREAEREAEREAERGJyALEzUQkRABERABERABERABERABERABERABESggIAEEzUJERABERABERABERABERABERABERABEZBgojYgAiIgAiIgAiIgAiIgAiIgAiIgAiIgAoMTkIWJWogIiIAIiIAIiIAIiIAIiIAIiIAIiIAIFBCQYKImIQIiIAIiIAIiIAIiIAIiIAIiIAIiIAISTNQGREAEREAEREAEREAEREAEREAEREAERGBwArIwUQsRAREQAREQAREQAREQAREQAREQAREQgQICEkzUJERABERABERABERABERABERABERABERAgonagAiIgAiIgAiIgAiIgAiIgAiIgAiIgAgMTkAWJmohIiACIiACIiACIiACIiACIiACIiACIlBAQIKJmoQIiIAIiIAIiIAIiIAIiIAIiIAIiIAISDBRGxABERABERABERABERABERABERABERCBwQnIwkQtRAREQAREQAREQAREQAREQAREQAREQAQKCEgwUZMQAREQAREQAREQAREQAREQAREQAREQAQkmL4820NBQb1OnTrM5c+Zk7oHLy8tt++23s0cffSxzZaNA22yztb3wwlxbu3Zt5sq38cYb29q1a2zZsuWZK9ukSY1WX99gc+fOzVzZqqurbcstt7Ann3wqc2WjQLwPTz/9X+vo6Mhc+TbbbDNralphK1euylzZpk2bapWVVbZw4cLMla2ubrxttNFMe+aZZzJXNgq088472cMPP5LJsr3iFVvZggULrbW1NXPlmzlzpnV0tNuSJUszV7aJEydYY+Mke/755zNXtsrKyjC2Pv74E5krGwXadttX2rPPzrG2trbMlW/27NnW0tJsK1Y0Za5sU6ZMttracTZ//vzMla22ttY23XR2GFuzmHbccYfwPnR1dWWueMyXFi9eYi0tLZkrmwokAqUgIAuTUlBP4Z4STPyQJZj42Ekw8XGTYOLnJsHEz06CiY+dBBMfNwkmPm7kkmDiYyfBxMeNXBJM/OyUc2wSkGAyNuvVJJj4K1aCiY+dBBMfNwkmfm4STPzsJJj42Ekw8XGTYOLjJsHEz02CiZ+dBBM/O+UcmwQkmIzNepVgMop6lWDigyfBxMdNgomfmwQTPzsJJj52Ekx83CSY+LhJMPFzk2DiZyfBxM9OOccmAQkmo6zXu4+Ybt3d3YYHYne3WVd3/Nnd+/++f+vO+45Zt5Fn/XfXX6O/a3Lt9Z8P9t2q6mobN268nXl39nyZFcPE3+gUw8THTjFMfNzIpRgmPnaKYeLjRi7FMPGxUwwTHzdyKYaJj51imPi4kUsxTPzslFME0iYgwWSUxE/de6KVm1lZmVl5WfxZtv7/tv7zsrKy9d/pzZP3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RUAEREAEREAEREAEREAEREAEREAEXuIEJJi8xCtQxRcBERABERABERABERABERABERABESg+AQkmRWBaVVVll156id122/ft/vvvL8IVi3sJykeEegLWZi1961vX2zPPPGtf+9rXMle+rbfe2o477li77LKv2rx58zKFTm3OXx1nn322PfvsM3bLLbf6L/IyzJnl9+Htb3+bfexjH7NrrrnG/vrXv70Ma8f/yAceeKDNnr2JXXLJpf6LJJhzwoQGW7WqOcE7+C4d++Dbb789k22Ofu4///mP/eQnP/E9YIK5aHNbbLFFJsf9BB97TF8663MSjfu+5rfFFpvbpz/9GTv33HNt1apVvoskmGv8+PG2bt066+zsTPAuurQImIK+FqMRnHDCZ+xNb3pTuNRzzz1nX/ziFzMzwXvve98TjkAuKyuzpqYm+/Wv77E77rijGI9dlGu85S1vsU9/+lOhs/v2t78dypeVdO2119iUKVNCcf7xj3/YV796ubW3t2eieLHNtbSsztwR11luc6997Wvs85//fKhD6vMvf/lLJuqTQjDhPO644+zVr36VdXV12T//+U/73vdutubmbCwW89+Hv/71r/a1r10RypmFVFFRYdddd601Njba3Lnz7JRTTsnMuzp9+nT77GdPsNmzZ1tLS4v99re/sx/84AdZwGYNDQ327W9/y/73v//ZGWecmYkyxUJQtksuudimTZsWxodnn302vLOLFy/ORDnzx33a3CWXXGLz58/PRNliP3frrbfaXXfdnYky5dcrbY53lg2mrAp1hx12mM2YMcO+/vWvZ2Yz5/3vf78xvtbU1NhTTz1lt9xyi82Z81wm6rfwfbjooots0aJFmSibxn1/NVx55Tds6tSpdsghH82cKHHaaZ+317zmNdbd3R0O5LjxxpvCvElJBJIgIAuTUVJlMnz11VeFl5SJyVlnnWUVFeV25JGftLVr147y6qPLXl5ebnfeeYc9//zzQYx429vebm96055hgD311FMzsdi5/PKv2qxZs4yJ3bx58+3BBx8c3UMXKfc73/lOO+qoT9o3vnFlmNh98pNHhgXY8ccfX3IxLLY52tfq1avt6KOPKdJTj/4yWW9zN910Y9gloc1deOFFve0NQZFBt1SJk7hY8PPz4Ycftra2Ntt5551DmU4//Qx74YUXSlW0cN/89wFhh/dhyZIldvzxnyppueLNt912W7vggvPtj3/8k61Z02rXXXd9Zsp1/vlfChPN++9/wKZMmWyUdeHChXbyyaeEnbFSJnZdd9llZzvqqKNt+fLlvUXhPS61GHbOOWeHd+D663N1+eEPf9gmTpxoX/3qV0tu0ZE/7v/8578Ighhle+CBB+zrX/9GyeuVfo42d8QRnyhl8+r33rS5HXfcIcyPHnroIbviiq+H75W6D46FpRznnvsF23HHHcNHWA5nQeC88MIL7JWvfKU9//wLYU630047BoH4qquutvvuu6+k9dx3HnxXmF9OmjTJzjvvS2E8K3XSuO+rgTe/+c32mc982gimA4UAACAASURBVL71rW/ZL3/5q96LYNXR2trqu2iRcr3hDW+wE0/8nN1zz71h/XXAAfsbVrC//OUv7Vvf+naR7qLLiMB6AhJMRtka2AHbbLPN7OMfPyzsQmA+fMMNNwQBoNQ7O5Trq1+9zL7zne8YkzrSbrvtZqeffpr97W/322WXXTbKpx9d9te97nV2yikn23e/+z378Y9/PLqLFTE3Asn3vvfdsLMfxYgJEybYd77zbfv9739vV155VRHvNvJL0eZY8D/66GNh9/XEE08MF6GMZ5xxuv3jH4h3d438wkXIkeU2d9BBB9r+++9vp576ebv44q/YWWedbU888UQQKXANu/ba6+yPf/xjESiM/BKXXXZp6EfOPPNMe+qpp8MF2EW86qorraOjw4455tiRX7RIOeL7sGLFil6B5NWvfrWdddaZYUKM2X+p0/XXXxfq8WMfO7Skwlc+h9ra2tBnsHClH4kTzE022ST0y3/+85/D4rpUaauttrSLL744WM99+ctf6VMM3odHH300WBGVKn3zm1dbXV2dHXrox0MRaIdYcWy66Wxj9x/rulIl+mBcSmhv0dWV3f/999/PPve5E23p0qWlKprFfi4r72Y+iNjmECHe+973GpZq1157bfjKN77x9WDpFAWUUgCMVk3sqFPGgw8+yM488yx78sknS1Gc3nt+9KMftQ9+8AP2/e/fbnfeeWfv5+yw77777vbRj36spBt0/b0P9CFsMh177HElZadx34cf4fDmm78XrCIZvxi3eGd3223XIIYh3GHJWSpXmEMPPdTe//732Sc+cWSwnicdccThtu+++9rll38tjK9KIlBMAhJMRkEzLhrwmY/iAwMtpuvs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", + "text/html": [ + "
" + ] + }, + "metadata": {}, + "output_type": "display_data" + }, + { + "data": { + "text/html": [ + "
\n", + "\n", + "\n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
DTSubjectNameExchangeNameRICMktCapCompanyUsdShareholdersEquityUsdPeDebtToAssetsBetaEpsGics...SearchAllCategoryRCSAssetCategoryRCSCurrencyLeafAssetStateBusinessEntityPIIssueISINCUSIPCinCUSIPSolvencyMargin
507Permian Resources CorpNYSE ConsolidatedPR482497466227507200004.7306540.2774.1022811.8285Energy/Energy/Oil, Gas & Consumable Fuels/Oil ......EquitiesA:1LUS DollarACQUOTExEQUITY223957549US71424F105771424F105<NA><NA>
476SM Energy CoNYSE ConsolidatedSM368879322120631310003.0344690.605824.0998769.89959Energy/Energy/Oil, Gas & Consumable Fuels/Oil ......EquitiesA:1LUS DollarACQUOTExEQUITY10189842US78454L100878454L100<NA><NA>
1589Independence Contract Drilling IncNYSE ConsolidatedICD41123355195229000<NA>0.5083683.603619-9.16037Energy/Energy/Energy Equipment & Services/Oil ......EquitiesA:1LUS DollarACQUOTExEQUITY163898233US4534156066453415606<NA><NA>
1883Borr Drilling LtdNYSE ConsolidatedBORR.K1079716528889900000<NA>0.71113.546276-2.0769Energy/Energy/Energy Equipment & Services/Oil ......EquitiesA:1LUS DollarACQUOTExEQUITY305320672BMG1466R1732<NA>G1466R173<NA>
463Matador Resources CoNYSE ConsolidatedMTDR.K635472654519072100005.488830.5008653.5013959.79808Energy/Energy/Oil, Gas & Consumable Fuels/Oil ......EquitiesA:1LUS DollarACQUOTExEQUITY91596806US5764852050576485205<NA><NA>
1346Sunlight Financial Holdings IncNYSE ConsolidatedSUNL.K160354820562818000<NA>0.1230083.406618-5.04392Financials/Diversified Financials/Consumer Fin......EquitiesA:1LUS DollarACQUOTExEQUITY487508575US86738J106086738J106<NA><NA>
772Nine Energy Service IncNYSE ConsolidatedNINE.K400980680-39267000<NA>1.1028973.404719-0.32771Energy/Energy/Energy Equipment & Services/Oil ......EquitiesA:1LUS DollarACQUOTExEQUITY269524295US65441V101765441V101<NA><NA>
627Quantumscape CorpNYSE ConsolidatedQS24239228541606895000<NA>0.0624023.381766-0.85948Consumer Discretionary/Automobiles & Component......EquitiesA:1LUS DollarACQUOTExEQUITY452653999US74767V109874767V109<NA><NA>
1206Rayonier Advanced Materials IncNYSE ConsolidatedRYAM.K614762905814343000<NA>0.6669393.374165-0.93897Materials/Materials/Chemicals/Specialty Chemicals...EquitiesA:1LUS DollarACQUOTExEQUITY160720930US75508B104475508B104<NA><NA>
1528Innovid CorpNYSE ConsolidatedCTV203148880161255000<NA>0.2154263.373576-0.38396Communication Services/Media & Entertainment/M......EquitiesA:1LUS DollarACQUOTExEQUITY505191096US4576791085457679108<NA><NA>
1325Oil States International IncNYSE ConsolidatedOIS466485643695826000<NA>0.3591283.343317-0.5354Energy/Energy/Energy Equipment & Services/Oil ......EquitiesA:1LUS DollarACQUOTExEQUITY829798US6780261052678026105<NA><NA>
936Helix Energy Solutions Group IncNYSE ConsolidatedHLX10551567561647469000<NA>0.2917243.241385-0.77102Energy/Energy/Energy Equipment & Services/Oil ......EquitiesA:1LUS DollarACQUOTExEQUITY747038US42330P107542330P107<NA><NA>
1660Superior Industries International IncNYSE ConsolidatedSUP121842723<NA><NA><NA>3.217959-0.72482Consumer Discretionary/Automobiles & Component......EquitiesA:1LUS DollarACQUOTExEQUITY725723US8681681057868168105<NA><NA>
1429Forum Energy Technologies IncNYSE ConsolidatedFET156812991329126000<NA>0.5840883.188829-2.6347Energy/Energy/Energy Equipment & Services/Oil ......EquitiesA:1LUS DollarACQUOTExEQUITY92927968US34984V209734984V209<NA><NA>
637Laredo Petroleum IncNYSE ConsolidatedLPI8078905975137800001.1253760.7986623.16520342.69683Energy/Energy/Oil, Gas & Consumable Fuels/Oil ......EquitiesA:1LUS DollarACQUOTExEQUITY92425611US5168062058516806205<NA><NA>
843Nabors Industries LtdNYSE ConsolidatedNBR1398705948590656000<NA>0.7476693.161918-48.31725Energy/Energy/Energy Equipment & Services/Oil ......EquitiesA:1LUS DollarACQUOTExEQUITY731116BMG6359F1370<NA>G6359F137<NA>
1237Amplify Energy CorpNYSE ConsolidatedAMPY.K304851443-648410004.9479621.1424763.1209851.60268Energy/Energy/Oil, Gas & Consumable Fuels/Oil ......EquitiesA:1LUS DollarACQUOTExEQUITY240601293US03212B103503212B103<NA><NA>
812Oceaneering International IncNYSE ConsolidatedOII1691378186504961000<NA>0.7396533.103988-0.36374Energy/Energy/Energy Equipment & Services/Oil ......EquitiesA:1LUS DollarACQUOTExEQUITY725290US6752321025675232102<NA><NA>
1421Bakkt Holdings IncNYSE ConsolidatedBKKT.K340605466468396000<NA>0.0497513.103145-9.44427Financials/Diversified Financials/Capital Mark......EquitiesA:1LUS DollarACQUOTExEQUITY473952645US05759B107005759B107<NA><NA>
1345Newpark Resources IncNYSE ConsolidatedNR404401571462386000<NA>0.3858493.098999-0.35919Energy/Energy/Energy Equipment & Services/Oil ......EquitiesA:1LUS DollarACQUOTExEQUITY727179US6517185046651718504<NA><NA>
232Ovintiv IncNYSE ConsolidatedOVV1159632021550740000003.3127380.638993.0939214.10012Energy/Energy/Oil, Gas & Consumable Fuels/Oil ......EquitiesA:1LUS DollarACQUOTExEQUITY7169639US69047Q102269047Q102<NA><NA>
721Kosmos Energy LtdNYSE ConsolidatedKOS2753596746<NA>6.437242<NA>3.0595930.93829Energy/Energy/Oil, Gas & Consumable Fuels/Oil ......EquitiesA:1LUS DollarACQUOTExEQUITY80906316US5006881065500688106<NA><NA>
1250Seritage Growth PropertiesNYSE ConsolidatedSRG677991810687713000<NA>0.6500613.02347-2.2167Real Estate/Real Estate/Real Estate Management......EquitiesA:1LUS DollarACQUOTExEQUITY194140961US81752R100581752R100<NA><NA>
\n", + "

23 rows × 42 columns

\n", + "
" + ], + "text/plain": [ + " DTSubjectName ExchangeName RIC \\\n", + "507 Permian Resources Corp NYSE Consolidated PR \n", + "476 SM Energy Co NYSE Consolidated SM \n", + "1589 Independence Contract Drilling Inc NYSE Consolidated ICD \n", + "1883 Borr Drilling Ltd NYSE Consolidated BORR.K \n", + "463 Matador Resources Co NYSE Consolidated MTDR.K \n", + "1346 Sunlight Financial Holdings Inc NYSE Consolidated SUNL.K \n", + "772 Nine Energy Service Inc NYSE Consolidated NINE.K \n", + "627 Quantumscape Corp NYSE Consolidated QS \n", + "1206 Rayonier Advanced Materials Inc NYSE Consolidated RYAM.K \n", + "1528 Innovid Corp NYSE Consolidated CTV \n", + "1325 Oil States International Inc NYSE Consolidated OIS \n", + "936 Helix Energy Solutions Group Inc NYSE Consolidated HLX \n", + "1660 Superior Industries International Inc NYSE Consolidated SUP \n", + "1429 Forum Energy Technologies Inc NYSE Consolidated FET \n", + "637 Laredo Petroleum Inc NYSE Consolidated LPI \n", + "843 Nabors Industries Ltd NYSE Consolidated NBR \n", + "1237 Amplify Energy Corp NYSE Consolidated AMPY.K \n", + "812 Oceaneering International Inc NYSE Consolidated OII \n", + "1421 Bakkt Holdings Inc NYSE Consolidated BKKT.K \n", + "1345 Newpark Resources Inc NYSE Consolidated NR \n", + "232 Ovintiv Inc NYSE Consolidated OVV \n", + "721 Kosmos Energy Ltd NYSE Consolidated KOS \n", + "1250 Seritage Growth Properties NYSE Consolidated SRG \n", + "\n", + " MktCapCompanyUsd ShareholdersEquityUsd Pe DebtToAssets \\\n", + "507 4824974662 2750720000 4.730654 0.277 \n", + "476 3688793221 2063131000 3.034469 0.60582 \n", + "1589 41123355 195229000 0.508368 \n", + "1883 1079716528 889900000 0.7111 \n", + "463 6354726545 1907210000 5.48883 0.500865 \n", + "1346 160354820 562818000 0.123008 \n", + "772 400980680 -39267000 1.102897 \n", + "627 2423922854 1606895000 0.062402 \n", + "1206 614762905 814343000 0.666939 \n", + "1528 203148880 161255000 0.215426 \n", + "1325 466485643 695826000 0.359128 \n", + "936 1055156756 1647469000 0.291724 \n", + "1660 121842723 \n", + "1429 156812991 329126000 0.584088 \n", + "637 807890597 513780000 1.125376 0.798662 \n", + "843 1398705948 590656000 0.747669 \n", + "1237 304851443 -64841000 4.947962 1.142476 \n", + "812 1691378186 504961000 0.739653 \n", + "1421 340605466 468396000 0.049751 \n", + "1345 404401571 462386000 0.385849 \n", + "232 11596320215 5074000000 3.312738 0.63899 \n", + "721 2753596746 6.437242 \n", + "1250 677991810 687713000 0.650061 \n", + "\n", + " Beta Eps Gics \\\n", + "507 4.102281 1.8285 Energy/Energy/Oil, Gas & Consumable Fuels/Oil ... \n", + "476 4.099876 9.89959 Energy/Energy/Oil, Gas & Consumable Fuels/Oil ... \n", + "1589 3.603619 -9.16037 Energy/Energy/Energy Equipment & Services/Oil ... \n", + "1883 3.546276 -2.0769 Energy/Energy/Energy Equipment & Services/Oil ... \n", + "463 3.501395 9.79808 Energy/Energy/Oil, Gas & Consumable Fuels/Oil ... \n", + "1346 3.406618 -5.04392 Financials/Diversified Financials/Consumer Fin... \n", + "772 3.404719 -0.32771 Energy/Energy/Energy Equipment & Services/Oil ... \n", + "627 3.381766 -0.85948 Consumer Discretionary/Automobiles & Component... \n", + "1206 3.374165 -0.93897 Materials/Materials/Chemicals/Specialty Chemicals \n", + "1528 3.373576 -0.38396 Communication Services/Media & Entertainment/M... \n", + "1325 3.343317 -0.5354 Energy/Energy/Energy Equipment & Services/Oil ... \n", + "936 3.241385 -0.77102 Energy/Energy/Energy Equipment & Services/Oil ... \n", + "1660 3.217959 -0.72482 Consumer Discretionary/Automobiles & Component... \n", + "1429 3.188829 -2.6347 Energy/Energy/Energy Equipment & Services/Oil ... \n", + "637 3.165203 42.69683 Energy/Energy/Oil, Gas & Consumable Fuels/Oil ... \n", + "843 3.161918 -48.31725 Energy/Energy/Energy Equipment & Services/Oil ... \n", + "1237 3.120985 1.60268 Energy/Energy/Oil, Gas & Consumable Fuels/Oil ... \n", + "812 3.103988 -0.36374 Energy/Energy/Energy Equipment & Services/Oil ... \n", + "1421 3.103145 -9.44427 Financials/Diversified Financials/Capital Mark... \n", + "1345 3.098999 -0.35919 Energy/Energy/Energy Equipment & Services/Oil ... \n", + "232 3.09392 14.10012 Energy/Energy/Oil, Gas & Consumable Fuels/Oil ... \n", + "721 3.059593 0.93829 Energy/Energy/Oil, Gas & Consumable Fuels/Oil ... \n", + "1250 3.02347 -2.2167 Real Estate/Real Estate/Real Estate Management... \n", + "\n", + " ... SearchAllCategory RCSAssetCategory RCSCurrencyLeaf AssetState \\\n", + "507 ... Equities A:1L US Dollar AC \n", + "476 ... Equities A:1L US Dollar AC \n", + "1589 ... Equities A:1L US Dollar AC \n", + "1883 ... Equities A:1L US Dollar AC \n", + "463 ... Equities A:1L US Dollar AC \n", + "1346 ... Equities A:1L US Dollar AC \n", + "772 ... Equities A:1L US Dollar AC \n", + "627 ... Equities A:1L US Dollar AC \n", + "1206 ... Equities A:1L US Dollar AC \n", + "1528 ... Equities A:1L US Dollar AC \n", + "1325 ... Equities A:1L US Dollar AC \n", + "936 ... Equities A:1L US Dollar AC \n", + "1660 ... Equities A:1L US Dollar AC \n", + "1429 ... Equities A:1L US Dollar AC \n", + "637 ... Equities A:1L US Dollar AC \n", + "843 ... Equities A:1L US Dollar AC \n", + "1237 ... Equities A:1L US Dollar AC \n", + "812 ... Equities A:1L US Dollar AC \n", + "1421 ... Equities A:1L US Dollar AC \n", + "1345 ... Equities A:1L US Dollar AC \n", + "232 ... Equities A:1L US Dollar AC \n", + "721 ... Equities A:1L US Dollar AC \n", + "1250 ... Equities A:1L US Dollar AC \n", + "\n", + " BusinessEntity PI IssueISIN CUSIP CinCUSIP \\\n", + "507 QUOTExEQUITY 223957549 US71424F1057 71424F105 \n", + "476 QUOTExEQUITY 10189842 US78454L1008 78454L100 \n", + "1589 QUOTExEQUITY 163898233 US4534156066 453415606 \n", + "1883 QUOTExEQUITY 305320672 BMG1466R1732 G1466R173 \n", + "463 QUOTExEQUITY 91596806 US5764852050 576485205 \n", + "1346 QUOTExEQUITY 487508575 US86738J1060 86738J106 \n", + "772 QUOTExEQUITY 269524295 US65441V1017 65441V101 \n", + "627 QUOTExEQUITY 452653999 US74767V1098 74767V109 \n", + "1206 QUOTExEQUITY 160720930 US75508B1044 75508B104 \n", + "1528 QUOTExEQUITY 505191096 US4576791085 457679108 \n", + "1325 QUOTExEQUITY 829798 US6780261052 678026105 \n", + "936 QUOTExEQUITY 747038 US42330P1075 42330P107 \n", + "1660 QUOTExEQUITY 725723 US8681681057 868168105 \n", + "1429 QUOTExEQUITY 92927968 US34984V2097 34984V209 \n", + "637 QUOTExEQUITY 92425611 US5168062058 516806205 \n", + "843 QUOTExEQUITY 731116 BMG6359F1370 G6359F137 \n", + "1237 QUOTExEQUITY 240601293 US03212B1035 03212B103 \n", + "812 QUOTExEQUITY 725290 US6752321025 675232102 \n", + "1421 QUOTExEQUITY 473952645 US05759B1070 05759B107 \n", + "1345 QUOTExEQUITY 727179 US6517185046 651718504 \n", + "232 QUOTExEQUITY 7169639 US69047Q1022 69047Q102 \n", + "721 QUOTExEQUITY 80906316 US5006881065 500688106 \n", + "1250 QUOTExEQUITY 194140961 US81752R1005 81752R100 \n", + "\n", + " SolvencyMargin \n", + "507 \n", + "476 \n", + "1589 \n", + "1883 \n", + "463 \n", + "1346 \n", + "772 \n", + "627 \n", + "1206 \n", + "1528 \n", + "1325 \n", + "936 \n", + "1660 \n", + "1429 \n", + "637 \n", + "843 \n", + "1237 \n", + "812 \n", + "1421 \n", + "1345 \n", + "232 \n", + "721 \n", + "1250 \n", + "\n", + "[23 rows x 42 columns]" + ] + }, + "metadata": {}, + "output_type": "display_data" + } + ], + "source": [ + "equities = nyse_equities.query(\"Beta >= 3\")\n", + "plot_and_display(equities, \"Beta\")" + ] + }, + { + "cell_type": "markdown", + "id": "1ae0e1d1-957d-4246-9e8b-67ffe18ab724", + "metadata": { + "tags": [] + }, + "source": [ + "#### Get the Equities by Share Holders Equity" + ] + }, + { + "cell_type": "code", + "execution_count": 11, + "id": "894eae3f-ba13-4c32-af94-71c3e6fd254a", + "metadata": { + "tags": [] + }, + "outputs": [ + { + "data": { + "application/vnd.plotly.v1+json": { + "config": { + "linkText": "Export to plot.ly", + "plotlyServerURL": "https://plot.ly", + "showLink": true + }, + "data": [ + { + "line": { + "color": "rgba(255, 153, 51, 1.0)", + "dash": "solid", + "shape": "linear", + "width": 1.3 + }, + "mode": "lines", + "name": "ShareholdersEquityUsd", + "text": "", + "type": "scatter", + "x": [ + "Berkshire Hathaway Inc", + "Berkshire Hathaway Inc", + "JPMorgan Chase & Co", + "Bank of America Corp", + "Citigroup Inc", + "Exxon Mobil Corp", + "Wells Fargo & Co", + "AT&T Inc", + "Chevron Corp", + "Goldman Sachs Group Inc", + "Morgan Stanley", + "Walt Disney Co", + "Walmart Inc", + "Verizon Communications Inc", + "Pfizer Inc", + "CVS Health Corp", + "Royal Bank of Canada", + "Toronto-Dominion Bank", + "Johnson & Johnson", + "Raytheon Technologies Corp", + "UnitedHealth Group Inc", + "Deutsche Bank AG", + "MetLife Inc", + "American International Group Inc", + "Truist Financial Corp", + "Prudential Financial Inc", + "UBS Group AG", + "General Motors Co", + "Chubb Ltd", + "Stellantis NV", + "Salesforce Inc", + "Capital One Financial Corp", + "PNC Financial Services Group Inc", + "Medtronic PLC", + "Bank of Montreal", + "US Bancorp", + "Ford Motor Co", + "Bank of Nova Scotia", + "Fidelity National Information Services Inc", + "Duke Energy Corp", + "Charles Schwab Corp", + "Procter & Gamble Co", + "Conocophillips", + "Brookfield Corp", + "Danaher Corp", + "Thermo Fisher Scientific Inc", + "General Electric Co", + "Enbridge Inc", + "Bank of New York Mellon Corp", + "Merck & Co Inc", + "BlackRock Inc", + "Manulife Financial Corp", + "Nextera Energy Inc", + "Elevance Health Inc", + "Bristol-Myers Squibb Co", + "Abbott Laboratories", + "Canadian Imperial Bank of Commerce", + "Prologis Inc", + "Visa Inc", + "Aflac Inc", + "Kinder Morgan Inc" + ], + "y": [ + 506199000000, + 506199000000, + 259289000000, + 245358000000, + 182977000000, + 168577000000, + 167549000000, + 166332000000, + 139067000000, + 99223000000, + 97691000000, + 88553000000, + 83253000000, + 81790000000, + 77200000000, + 75075000000, + 74759572573, + 74307658058, + 74023000000, + 73068000000, + 71760000000, + 70305286800, + 67482000000, + 65471000000, + 62598000000, + 61876000000, + 60662000000, + 59744000000, + 59714000000, + 59255829300, + 58131000000, + 56184000000, + 55695000000, + 52551000000, + 50747996438, + 48547000000, + 48519000000, + 48345206292, + 47347000000, + 47334000000, + 46307000000, + 45746000000, + 45406000000, + 42210000000, + 41899000000, + 40793000000, + 40304000000, + 39387800534, + 38196000000, + 38184000000, + 37693000000, + 37692193529, + 37202000000, + 36060000000, + 35946000000, + 35802000000, + 33584149599, + 33362925000, + 33257001000, + 33253000000, + 30823000000 + ] + } + ], + "layout": { + "autosize": true, + "legend": { + "bgcolor": "#151516", + "font": { + "color": "#D9D9D9" + } + }, + "paper_bgcolor": "#151516", + "plot_bgcolor": "#151516", + "template": { + "data": { + "bar": [ + { + "error_x": { + "color": "#2a3f5f" + }, + "error_y": { + "color": "#2a3f5f" + }, + "marker": { + "line": { + "color": "#E5ECF6", + "width": 0.5 + }, + "pattern": { + "fillmode": "overlay", + "size": 10, + "solidity": 0.2 + } + }, + "type": "bar" + } + ], + "barpolar": [ + { + "marker": { + "line": { + "color": "#E5ECF6", + "width": 0.5 + }, + "pattern": { + "fillmode": "overlay", + "size": 10, + "solidity": 0.2 + } + }, + "type": "barpolar" + } + ], + "carpet": [ + { + "aaxis": { + "endlinecolor": "#2a3f5f", + "gridcolor": "white", + "linecolor": "white", + "minorgridcolor": "white", + "startlinecolor": "#2a3f5f" + }, + "baxis": { + "endlinecolor": "#2a3f5f", + "gridcolor": "white", + "linecolor": "white", + "minorgridcolor": "white", + "startlinecolor": "#2a3f5f" + }, + "type": "carpet" + } + ], + "choropleth": [ + { + "colorbar": { + "outlinewidth": 0, + "ticks": "" + }, + "type": "choropleth" + } + ], + "contour": [ + { + "colorbar": { + "outlinewidth": 0, + "ticks": "" + }, + "colorscale": [ + [ + 0, + "#0d0887" + ], + [ + 0.1111111111111111, + "#46039f" + ], + [ + 0.2222222222222222, + "#7201a8" + ], + [ + 0.3333333333333333, + "#9c179e" + ], + [ + 0.4444444444444444, + "#bd3786" + ], + [ + 0.5555555555555556, + "#d8576b" + ], + [ + 0.6666666666666666, + "#ed7953" + ], + [ + 0.7777777777777778, + "#fb9f3a" + ], + [ + 0.8888888888888888, + "#fdca26" + ], + [ + 1, + "#f0f921" + ] + ], + "type": "contour" + } + ], + "contourcarpet": [ + { + "colorbar": { + "outlinewidth": 0, + "ticks": "" + }, + "type": "contourcarpet" + } + ], + "heatmap": [ + { + "colorbar": { + "outlinewidth": 0, + "ticks": "" + }, + "colorscale": [ + [ + 0, + "#0d0887" + ], + [ + 0.1111111111111111, + "#46039f" + ], + [ + 0.2222222222222222, + "#7201a8" + ], + [ + 0.3333333333333333, + "#9c179e" + ], + [ + 0.4444444444444444, + "#bd3786" + ], + [ + 0.5555555555555556, + "#d8576b" + ], + [ + 0.6666666666666666, + "#ed7953" + ], + [ + 0.7777777777777778, + "#fb9f3a" + ], + [ + 0.8888888888888888, + "#fdca26" + ], + [ + 1, + "#f0f921" + ] + ], + "type": "heatmap" + } + ], + "heatmapgl": [ + { + "colorbar": { + "outlinewidth": 0, + "ticks": "" + }, + "colorscale": [ + [ + 0, + "#0d0887" + ], + [ + 0.1111111111111111, + "#46039f" + ], + [ + 0.2222222222222222, + "#7201a8" + ], + [ + 0.3333333333333333, + "#9c179e" + ], + [ + 0.4444444444444444, + "#bd3786" + ], + [ + 0.5555555555555556, + "#d8576b" + ], + [ + 0.6666666666666666, + "#ed7953" + ], + [ + 0.7777777777777778, + "#fb9f3a" + ], + [ + 0.8888888888888888, + "#fdca26" + ], + [ + 1, + "#f0f921" + ] + ], + "type": "heatmapgl" + } + ], + "histogram": [ + { + "marker": { + "pattern": { + "fillmode": "overlay", + "size": 10, + "solidity": 0.2 + } + }, + "type": "histogram" + } + ], + "histogram2d": [ + { + "colorbar": { + "outlinewidth": 0, + "ticks": "" + }, + "colorscale": [ + [ + 0, + "#0d0887" + ], + [ + 0.1111111111111111, + "#46039f" + ], + [ + 0.2222222222222222, + "#7201a8" + ], + [ + 0.3333333333333333, + "#9c179e" + ], + [ + 0.4444444444444444, + "#bd3786" + ], + [ + 0.5555555555555556, + "#d8576b" + ], + [ + 0.6666666666666666, + "#ed7953" + ], + [ + 0.7777777777777778, + "#fb9f3a" + ], + [ + 0.8888888888888888, + "#fdca26" + ], + [ + 1, + "#f0f921" + ] + ], + "type": "histogram2d" + } + ], + "histogram2dcontour": [ + { + "colorbar": { + "outlinewidth": 0, + "ticks": "" + }, + "colorscale": [ + [ + 0, + "#0d0887" + ], + [ + 0.1111111111111111, + "#46039f" + ], + [ + 0.2222222222222222, + "#7201a8" + ], + [ + 0.3333333333333333, + "#9c179e" + ], + [ + 0.4444444444444444, + "#bd3786" + ], + [ + 0.5555555555555556, + "#d8576b" + ], + [ + 0.6666666666666666, + "#ed7953" + ], + [ + 0.7777777777777778, + "#fb9f3a" + ], + [ + 0.8888888888888888, + "#fdca26" + ], + [ + 1, + "#f0f921" + ] + ], + "type": "histogram2dcontour" + } + ], + "mesh3d": [ + { + "colorbar": { + "outlinewidth": 0, + "ticks": "" + }, + "type": "mesh3d" + } + ], + "parcoords": [ + { + "line": { + "colorbar": { + "outlinewidth": 0, + "ticks": "" + } + }, + "type": "parcoords" + } + ], + "pie": [ + { + "automargin": true, + "type": "pie" + } + ], + "scatter": [ + { + "marker": { + "colorbar": { + "outlinewidth": 0, + "ticks": "" + } + }, + "type": "scatter" + } + ], + "scatter3d": [ + { + "line": { + "colorbar": { + "outlinewidth": 0, + "ticks": "" + } + }, + "marker": { + "colorbar": { + "outlinewidth": 0, + "ticks": "" + } + }, + "type": "scatter3d" + } + ], + "scattercarpet": [ + { + "marker": { + "colorbar": { + "outlinewidth": 0, + "ticks": "" + } + }, + "type": "scattercarpet" + } + ], + "scattergeo": [ + { + "marker": { + "colorbar": { + "outlinewidth": 0, + "ticks": "" + } + }, + "type": "scattergeo" + } + ], + "scattergl": [ + { + "marker": { + "colorbar": { + "outlinewidth": 0, + "ticks": "" + } + }, + "type": "scattergl" + } + ], + "scattermapbox": [ + { + "marker": { + "colorbar": { + "outlinewidth": 0, + "ticks": "" + } + }, + "type": "scattermapbox" + } + ], + "scatterpolar": [ + { + "marker": { + "colorbar": { + "outlinewidth": 0, + "ticks": "" + } + }, + "type": "scatterpolar" + } + ], + "scatterpolargl": [ + { + "marker": { + "colorbar": { + "outlinewidth": 0, + "ticks": "" + } + }, + "type": "scatterpolargl" + } + ], + "scatterternary": [ + { + "marker": { + "colorbar": { + "outlinewidth": 0, + "ticks": "" + } + }, + "type": "scatterternary" + } + ], + "surface": [ + { + "colorbar": { + "outlinewidth": 0, + "ticks": "" + }, + "colorscale": [ + [ + 0, + "#0d0887" + ], + [ + 0.1111111111111111, + "#46039f" + ], + [ + 0.2222222222222222, + "#7201a8" + ], + [ + 0.3333333333333333, + "#9c179e" + ], + [ + 0.4444444444444444, + "#bd3786" + ], + [ + 0.5555555555555556, + "#d8576b" + ], + [ + 0.6666666666666666, + "#ed7953" + ], + [ + 0.7777777777777778, + "#fb9f3a" + ], + [ + 0.8888888888888888, + "#fdca26" + ], + [ + 1, + "#f0f921" + ] + ], + "type": "surface" + } + ], + "table": [ + { + "cells": { + "fill": { + "color": "#EBF0F8" + }, + "line": { + "color": "white" + } + }, + "header": { + "fill": { + "color": "#C8D4E3" + }, + "line": { + "color": "white" + } + }, + "type": "table" + } + ] + }, + "layout": { + "annotationdefaults": { + "arrowcolor": "#2a3f5f", + "arrowhead": 0, + "arrowwidth": 1 + }, + "autotypenumbers": "strict", + "coloraxis": { + "colorbar": { + "outlinewidth": 0, + "ticks": "" + } + }, + "colorscale": { + "diverging": [ + [ + 0, + "#8e0152" + ], + [ + 0.1, + "#c51b7d" + ], + [ + 0.2, + "#de77ae" + ], + [ + 0.3, + "#f1b6da" + ], + [ + 0.4, + "#fde0ef" + ], + [ + 0.5, + "#f7f7f7" + ], + [ + 0.6, + "#e6f5d0" + ], + [ + 0.7, + "#b8e186" + ], + [ + 0.8, + "#7fbc41" + ], + [ + 0.9, + "#4d9221" + ], + [ + 1, + "#276419" + ] + ], + "sequential": [ + [ + 0, + "#0d0887" + ], + [ + 0.1111111111111111, + "#46039f" + ], + [ + 0.2222222222222222, + "#7201a8" + ], + [ + 0.3333333333333333, + "#9c179e" + ], + [ + 0.4444444444444444, + "#bd3786" + ], + [ + 0.5555555555555556, + "#d8576b" + ], + [ + 0.6666666666666666, + "#ed7953" + ], + [ + 0.7777777777777778, + "#fb9f3a" + ], + [ + 0.8888888888888888, + "#fdca26" + ], + [ + 1, + "#f0f921" + ] + ], + "sequentialminus": [ + [ + 0, + "#0d0887" + ], + [ + 0.1111111111111111, + "#46039f" + ], + [ + 0.2222222222222222, + "#7201a8" + ], + [ + 0.3333333333333333, + "#9c179e" + ], + [ + 0.4444444444444444, + "#bd3786" + ], + [ + 0.5555555555555556, + "#d8576b" + ], + [ + 0.6666666666666666, + "#ed7953" + ], + [ + 0.7777777777777778, + "#fb9f3a" + ], + [ + 0.8888888888888888, + "#fdca26" + ], + [ + 1, + "#f0f921" + ] + ] + }, + "colorway": [ + "#636efa", + "#EF553B", + "#00cc96", + "#ab63fa", + "#FFA15A", + "#19d3f3", + "#FF6692", + "#B6E880", + "#FF97FF", + "#FECB52" + ], + "font": { + "color": "#2a3f5f" + }, + "geo": { + "bgcolor": "white", + "lakecolor": "white", + "landcolor": "#E5ECF6", + "showlakes": true, + "showland": true, + "subunitcolor": "white" + }, + "hoverlabel": { + "align": "left" + }, + "hovermode": "closest", + "mapbox": { + "style": "light" + }, + "paper_bgcolor": "white", + "plot_bgcolor": "#E5ECF6", + "polar": { + "angularaxis": { + "gridcolor": "white", + "linecolor": "white", + "ticks": "" + }, + "bgcolor": "#E5ECF6", + "radialaxis": { + "gridcolor": "white", + "linecolor": "white", + "ticks": "" + } + }, + "scene": { + "xaxis": { + "backgroundcolor": "#E5ECF6", + "gridcolor": "white", + "gridwidth": 2, + "linecolor": "white", + "showbackground": true, + "ticks": "", + "zerolinecolor": "white" + }, + "yaxis": { + "backgroundcolor": "#E5ECF6", + "gridcolor": "white", + "gridwidth": 2, + "linecolor": "white", + "showbackground": true, + "ticks": "", + "zerolinecolor": "white" + }, + "zaxis": { + "backgroundcolor": "#E5ECF6", + "gridcolor": "white", + "gridwidth": 2, + "linecolor": "white", + "showbackground": true, + "ticks": "", + "zerolinecolor": "white" + } + }, + "shapedefaults": { + "line": { + "color": "#2a3f5f" + } + }, + "ternary": { + "aaxis": { + "gridcolor": "white", + "linecolor": "white", + "ticks": "" + }, + "baxis": { + "gridcolor": "white", + "linecolor": "white", + "ticks": "" + }, + "bgcolor": "#E5ECF6", + "caxis": { + "gridcolor": "white", + "linecolor": "white", + "ticks": "" + } + }, + "title": { + "x": 0.05 + }, + "xaxis": { + "automargin": true, + "gridcolor": "white", + "linecolor": "white", + "ticks": "", + "title": { + "standoff": 15 + }, + "zerolinecolor": "white", + "zerolinewidth": 2 + }, + "yaxis": { + "automargin": true, + "gridcolor": "white", + "linecolor": "white", + "ticks": "", + "title": { + "standoff": 15 + }, + "zerolinecolor": "white", + "zerolinewidth": 2 + } + } + }, + "title": { + "font": { + "color": "#D9D9D9" + } + }, + "xaxis": { + "autorange": true, + "gridcolor": "#434343", + "range": [ + 0, + 59 + ], + "showgrid": true, + "tickfont": { + "color": "#C2C2C2" + }, + "title": { + "font": { + "color": "#D9D9D9" + }, + "text": "" + }, + "type": "category", + "zerolinecolor": "#666570" + }, + "yaxis": { + "autorange": true, + "gridcolor": "#434343", + "range": [ + 4413222222.222218, + 532608777777.7778 + ], + "showgrid": true, + "tickfont": { + "color": "#C2C2C2" + }, + "title": { + "font": { + "color": "#D9D9D9" + }, + "text": "" + }, + "type": "linear", + "zerolinecolor": "#666570" + } + } + }, + "image/png": "iVBORw0KGgoAAAANSUhEUgAABEwAAAFoCAYAAABNBG49AAAAAXNSR0IArs4c6QAAIABJREFUeF7snQeYVcX5xr/tfZe6LL2D1BiN7a+JmkCM3cQSO9hLNAoWUMECaCyACljAjoqKYBJLYkkMmlhiYlSkqPS2tGX7Ltv3/7xz99w9e/eeNnNxdX3neXwQ7plz5vymnJl3vu+buK5dcxuFiQRIgARIgARIgARIgARIgARIgARIgARIIEwgjoIJWwMJkAAJkAAJkAAJkAAJkAAJkAAJkAAJtCRAwYQtggRIgARIgARIgARIgARIgARIgARIgAQiCFAwYZMgARIgARIgARIgARIgARIgARIgARIgAQombAMkQAIkQAIkQAIkQAIkQAIkQAIkQAIk4E6AFiZsISRAAiRAAiRAAiRAAiRAAiRAAiRAAiQQQYCCCZsECZAACZAACZAACZAACZAACZAACZAACVAwYRsgARIgARIgARIgARIgARIgARIgARIgAXcCtDBhCyEBEiABEiABEiABEiABEiABEiABEiCBCAIUTNgkSIAESIAESIAESIAESIAESIAESIAESICCCdsACZAACZAACZAACZAACZAACZAACZAACbgToIUJWwgJkAAJkAAJkAAJkAAJkAAJkAAJkAAJRBCgYMImQQIkQAIkQAIkQAIkQAIkQAIkQAIkQAIUTNgGSIAESIAESIAESIAESIAESIAESIAESMCdAC1M2EJIgARIgARIgARIgARIgARIgARIgARIIIIABRM2CRIgARIgARIgARIgARIgARIgARIgARKgYMI2QAIkQAIkQAIkQAIkQAIkQAIkQAIkQALuBGhhwhZCAiRAAiRAAiRAAiRAAiRAAiRAAiRAAhEEKJiwSZAACZAACZAACZAACZAACZAACZAACZAABRO2ARIgARIgARIgARIgARIgARIgARIgARJwJ0ALE7YQEiABEiABEiABEiABEiABEiABEiABEoggQMGETYIESIAESIAESIAESIAESIAESIAESIAEKJiwDZAACZAACZAACZAACZAACZAACZAACZCAOwFamLCFkAAJkAAJkAAJkAAJkAAJkAAJkAAJkEAEAQombBIkQAIkQAIkQAIkQAIkQAIkQAIkQAIkQMGEbYAESIAESIAESIAESIAESIAESIAESIAE3AnQwoQthARIgARIgARIgARIgARIgARIgARIgAQiCFAwYZMgARIgARIgARIgARIgARIgARIgARIgAQombAMkQAIkQAIkQAIkQAIkQAIkQAIkQAIk4E6AFiZsISRAAiRAAiRAAiRAAiRAAiRAAiRAAiQQQYCCCZsECZAACZAACZAACZAACZAACZAACZAACVAwYRsgARIgARIgARIgARIgARIgARIgARIgAXcCtDBhCyEBEiABEiABEiABEiABEiABEiABEiCBCAIUTNgkSIAESIAESIAESIAESIAESIAESIAESICCCdsACZAACZAACZAACZAACZAACZAACZAACbgToIUJWwgJkAAJkAAJkAAJkAAJkAAJkAAJkAAJRBCgYMImQQIkQAIkQAIkQAIkQAIkQAIkQAIkQAIUTNgGSIAESIAESIAESIAESIAESIAESIAESMCdAC1M2EJIgARIgARIgARIgARIgARIgARIgARIIIIABRM2CRIgARIgARIgARIgARIgARIgARIgARKgYMI2QAIkQAIkQAIkQAIkQAIkQAIkQAIkQALuBGhhwhZCAiRAAiRAAiRAAiRAAiRAAiRAAiRAAhEEKJiwSZAACZAACZAACZAACZAACZAACZAACZAABRO2ARIgARIgARIgARIgARIgARIgARIgARJwJ0ALE7YQEiABEiABEiABEiABEiABEiABEiABEoggQMGETYIESIAESIAESIAESIAESIAESIAESIAEKJiwDZAACZAACZAACZAACZAACZAACZAACZCAOwFamLCFkAAJkAAJkAAJkAAJkAAJkAAJkAAJkEAEAQombBIkQAIkQAIkQAIkQAIkQAIkQAIkQAIkQMGEbYAESIAESIAESIAESIAESIAESIAESIAE3AnQwoQthARIgARIgARIgARIgARIgARIgARIgAQiCFAwYZMgARIgARIgARIgARIgARIgARIgARIgAQombAMkQAIkQAIkQAIkQAIkQAIkQAIkQAIk4E6AFiZsISRAAiRAAiRAAiRAAiRAAiRAAiRAAiQQQYCCCZsECZAACZAACZAACZAACZAACZAACZAACVAwYRsgARIgARIgARIgARIgARIgARIgARIgAXcCtDBhCyEBEiABEiABEiABEiABEiABEiABEiCBCAIUTNgkSIAESIAESIAESIAESIAESIAESIAESICCCdsACZAACZAACZAACZAACZAACZAACZAACbgToIUJWwgJkAAJkAAJkAAJkAAJkAAJkAAJkAAJRBCgYMImQQIkQAIkQAIkQAIkQAIkQAIkQAIkQAIUTNgGSIAESIAESIAESIAESIAESIAESIAESMCdAC1M2EJIgARIgARIgARIgARIgARIgARIgARIIIIABRM2CRIgARIgARIgARIgARIgARIgARIgARKgYMI2QAIkQAIkQAIkQAIkQAIkQAIkQAIkQALuBGhhwhZCAiRAAiRAAiRAAiRAAiRAAiRAAiRAAhEEKJiwSZAACZAACZAACZAACZAACZAACZAACZAABRO2ARIgARIgARIgARIgARIgARIgARIgARJwJ0ALE7YQEiABEiABEiABEiABEiABEiABEiABEoggQMGETYIESIAESIAESIAESIAESIAESIAESIAEKJiwDZAACZAACZAACZAACZAACZAACZAACZCAOwFamLCFkAAJkAAJkAAJkAAJkAAJkAAJkAAJkEAEAQombBIkQAIkQAIkQAIkQAIkQAIkQAIkQAIkQMGEbYAESIAESIAESIAESIAESIAESIAESIAE3AnQwoQthARIgARIgARIgARIgARIgARIgARIgAQiCFAwacMm0aNHD6mpqZaCgj1apejdu7eUl5dJUVGxVv5+/fpJYeEeKS0t08o/aNBAyc/fLpWVlVr5hw4dIhs3bpLq6mqt/MOHD5NvvlkjdXV1WvlHjRopK1aslMbGxsD54+PjBc9Hfp2UlJQk4Ld69Vc62SU1NVX69Omt3l8nZWRkSLdu3WT9+vU62SU7O1s6deqo6k8nIW96eoZs3bpVJ7t07dpFEhOTZPv27Vr58/LypKGhXnbt2q2Vv2fPHlJVVS179uj1XdQd+l1xsV7f7d+/vxQU7JaysnKt8g8aNEjy87dJZeVerfz77TdU1q/fIDU1NVr5Tfvu6NGjZPnyL7WenZCQICj/ypWrtPInJyfLgAH95auvvtbKn5aWJr169ZQ1a9Zq5c/MzJTc3K6Kv07KycmRDh1yZNOmzTrZpXPnTpKamibbtm3Tyo+yx8cnyI4dO7Tym/ZdsEe7Lyws1Hp+3759pLi4REpKSrTyo+1g3Ckv1+u7gwcPlq1bt8jevVVazzftuyNGDFdtv76+PvDz4+LiZOTIEfLllysC50WGxMREGTJksKxatVorv2nf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z9NPP13NWzD+en23Tcofu2frjTtt3XZMn2/CHs9uzq/Pz2TsNB27TOecpvzauu+bPt8pP+rlJz85UM35nTZK2pq96TfftO+ZfjdM58ym74/yn3XWWeo22BPH+hIJ65fGxtDdsd56/fXXHee1/CE6AQomPlqGNYDA7cBa2L/44gvy/PPPq0UjdtyOP/54x0UTHnHbbbfJ6NGj1GIzWoKA4GTWb/r8tLQ0tWhauHCh/PnPrUURWJ50795dLrroYtdF0zXXXCtbt25V10AA+vvf/y5PPvmUeO02WOVHPliSzJ+/QJYvX+6DfOtL5syZIzt37pR7771XTjjhBBk7doxgYg5LEyfF1OT9MfigrsEN/CLTzJkzJSsrUy677HJf7wOB5NJLL5EDDjhAWWe8/fbb8uyzzwncIqIlU3am+SGWPPHE46po27blq/J6iVNuINBukP+5555Xl51//vmqDs877/yo2UzqLtoN779/tlrw3X77Hernc889R371q1959j23d3Kz0DDt+5HPDVr+oUOHyF133SVXXvk71W+CpuzsbHnqqSeV9Vc01z3U35gxv5Dzz49uXRf5vKDt354/aN+3t32n9/aqO3u+oG3XlL3p2GPadzCpvummyXLOOecqgRvi8G233RoWiCHyH3fccer3aMk0v2n5I8sUtP5M267pd9u0/USrk8WLX1LuVX/84598f7dN5j32MgR5tum409Ztx/T5pm3HlJ/p2Gk6dlnPN51zxqrtBv1umdaf6dgTre/DKvjKK69QG6X4ls+bN09Wr25tHfhdYh/0m4/3Nu17pt+NWM6Zdd7fXn70wwcffECtkTZu3KjCQmDzjEmPAAUTH9xgFv3MM8/IhAkTw8EdX3rpRfnrX9+Up59+Wi699FI5/PD/k3HjxrveDVYoRx11lGDnKDJBiHGy8DB9PgbKKVNukTPO+G1UKwwsWC+55BL1e7RkOoDifY855pdy0EEHycCBAyUzM1MJBBBf/ve//8l7770v27Zt81ETIi0HkONlzJgxys0Ilj9OizaT9x82bD+ZMWOGWlBjcTVw4AApKysPx3w4/vjj1KL/t78Nmam7pauu+p2K14LFB+r65ZeXeA5epuxM88O08fHHH1PtBruSS5e+4miN4PX++B0WQoh7cNNNN6vLp027Q4l1TjFQTOousjxXXnml/OIXP5eioqKwi8Hk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", + "text/html": [ + "
" + ] + }, + "metadata": {}, + "output_type": "display_data" + }, + { + "data": { + "text/html": [ + "
\n", + "\n", + "\n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
DTSubjectNameExchangeNameRICMktCapCompanyUsdShareholdersEquityUsdPeDebtToAssetsBetaEpsGics...SearchAllCategoryRCSAssetCategoryRCSCurrencyLeafAssetStateBusinessEntityPIIssueISINCUSIPCinCUSIPSolvencyMargin
0Berkshire Hathaway IncNYSE ConsolidatedBRKa693513590760506199000000<NA>0.4629340.896323-1189.17575Financials/Diversified Financials/Diversified ......EquitiesA:1LUS DollarACQUOTExEQUITY727363US0846701086084670108<NA><NA>
1796Berkshire Hathaway IncNYSE ConsolidatedBRKb693513590760506199000000<NA>0.4629340.891957-0.8Financials/Diversified Financials/Diversified ......EquitiesA:1LUS DollarACQUOTExEQUITY727365US0846707026084670702<NA><NA>
4JPMorgan Chase & CoNYSE ConsolidatedJPM40003048262525928900000011.5152160.9214311.13384911.84346Financials/Banks/Banks/Diversified Banks...EquitiesA:1LUS DollarACQUOTExEQUITY1113813US46625H100546625H100<NA><NA>
8Bank of America CorpNYSE ConsolidatedBAC27388583663924535800000010.8160170.9147921.427053.15643Financials/Banks/Banks/Diversified Banks...EquitiesA:1LUS DollarACQUOTExEQUITY728529US0605051046060505104<NA><NA>
15Citigroup IncNYSE ConsolidatedC909546104931829770000006.3304620.9115521.6062597.4181Financials/Banks/Banks/Diversified Banks...EquitiesA:1LUS DollarACQUOTExEQUITY727057US1729674242172967424<NA><NA>
..................................................................
1850Canadian Imperial Bank of CommerceNYSE ConsolidatedCM37635873339335841495998.4601670.9466061.0817516.685275Financials/Banks/Banks/Diversified Banks...EquitiesA:1LUS DollarACQUOTExEQUITY728714CA1360691010136069101<NA><NA>
92Prologis IncNYSE ConsolidatedPLD1079632703653336292500021.6643140.3546820.9762775.39874Real Estate/Real Estate/Equity Real Estate Inv......EquitiesA:1LUS DollarACQUOTExEQUITY728942US74340W103674340W103<NA><NA>
11Visa IncNYSE ConsolidatedV4383353891553325700100030.4163090.5838530.9270276.99Information Technology/Software & Services/IT ......EquitiesA:1LUS DollarACQUOTExEQUITY42290789US92826C839492826C839<NA><NA>
175Aflac IncNYSE ConsolidatedAFL44719033235332530000009.1818780.7889260.9302077.83282Financials/Insurance/Insurance/Life & Health I......EquitiesA:1LUS DollarACQUOTExEQUITY1096564US0010551028001055102<NA>187.463524
174Kinder Morgan IncNYSE ConsolidatedKMI409763379543082300000016.5008730.546680.9795411.10479Energy/Energy/Oil, Gas & Consumable Fuels/Oil ......EquitiesA:1LUS DollarACQUOTExEQUITY79405805US49456B101749456B101<NA><NA>
\n", + "

61 rows × 42 columns

\n", + "
" + ], + "text/plain": [ + " DTSubjectName ExchangeName RIC \\\n", + "0 Berkshire Hathaway Inc NYSE Consolidated BRKa \n", + "1796 Berkshire Hathaway Inc NYSE Consolidated BRKb \n", + "4 JPMorgan Chase & Co NYSE Consolidated JPM \n", + "8 Bank of America Corp NYSE Consolidated BAC \n", + "15 Citigroup Inc NYSE Consolidated C \n", + "... ... ... ... \n", + "1850 Canadian Imperial Bank of Commerce NYSE Consolidated CM \n", + "92 Prologis Inc NYSE Consolidated PLD \n", + "11 Visa Inc NYSE Consolidated V \n", + "175 Aflac Inc NYSE Consolidated AFL \n", + "174 Kinder Morgan Inc NYSE Consolidated KMI \n", + "\n", + " MktCapCompanyUsd ShareholdersEquityUsd Pe DebtToAssets \\\n", + "0 693513590760 506199000000 0.462934 \n", + "1796 693513590760 506199000000 0.462934 \n", + "4 400030482625 259289000000 11.515216 0.921431 \n", + "8 273885836639 245358000000 10.816017 0.914792 \n", + "15 90954610493 182977000000 6.330462 0.911552 \n", + "... ... ... ... ... \n", + "1850 37635873339 33584149599 8.460167 0.946606 \n", + "92 107963270365 33362925000 21.664314 0.354682 \n", + "11 438335389155 33257001000 30.416309 0.583853 \n", + "175 44719033235 33253000000 9.181878 0.788926 \n", + "174 40976337954 30823000000 16.500873 0.54668 \n", + "\n", + " Beta Eps Gics \\\n", + "0 0.896323 -1189.17575 Financials/Diversified Financials/Diversified ... \n", + "1796 0.891957 -0.8 Financials/Diversified Financials/Diversified ... \n", + "4 1.133849 11.84346 Financials/Banks/Banks/Diversified Banks \n", + "8 1.42705 3.15643 Financials/Banks/Banks/Diversified Banks \n", + "15 1.606259 7.4181 Financials/Banks/Banks/Diversified Banks \n", + "... ... ... ... \n", + "1850 1.081751 6.685275 Financials/Banks/Banks/Diversified Banks \n", + "92 0.976277 5.39874 Real Estate/Real Estate/Equity Real Estate Inv... \n", + "11 0.927027 6.99 Information Technology/Software & Services/IT ... \n", + "175 0.930207 7.83282 Financials/Insurance/Insurance/Life & Health I... \n", + "174 0.979541 1.10479 Energy/Energy/Oil, Gas & Consumable Fuels/Oil ... \n", + "\n", + " ... SearchAllCategory RCSAssetCategory RCSCurrencyLeaf AssetState \\\n", + "0 ... Equities A:1L US Dollar AC \n", + "1796 ... Equities A:1L US Dollar AC \n", + "4 ... Equities A:1L US Dollar AC \n", + "8 ... Equities A:1L US Dollar AC \n", + "15 ... Equities A:1L US Dollar AC \n", + "... ... ... ... ... ... \n", + "1850 ... Equities A:1L US Dollar AC \n", + "92 ... Equities A:1L US Dollar AC \n", + "11 ... Equities A:1L US Dollar AC \n", + "175 ... Equities A:1L US Dollar AC \n", + "174 ... Equities A:1L US Dollar AC \n", + "\n", + " BusinessEntity PI IssueISIN CUSIP CinCUSIP \\\n", + "0 QUOTExEQUITY 727363 US0846701086 084670108 \n", + "1796 QUOTExEQUITY 727365 US0846707026 084670702 \n", + "4 QUOTExEQUITY 1113813 US46625H1005 46625H100 \n", + "8 QUOTExEQUITY 728529 US0605051046 060505104 \n", + "15 QUOTExEQUITY 727057 US1729674242 172967424 \n", + "... ... ... ... ... ... \n", + "1850 QUOTExEQUITY 728714 CA1360691010 136069101 \n", + "92 QUOTExEQUITY 728942 US74340W1036 74340W103 \n", + "11 QUOTExEQUITY 42290789 US92826C8394 92826C839 \n", + "175 QUOTExEQUITY 1096564 US0010551028 001055102 \n", + "174 QUOTExEQUITY 79405805 US49456B1017 49456B101 \n", + "\n", + " SolvencyMargin \n", + "0 \n", + "1796 \n", + "4 \n", + "8 \n", + "15 \n", + "... ... \n", + "1850 \n", + "92 \n", + "11 \n", + "175 187.463524 \n", + "174 \n", + "\n", + "[61 rows x 42 columns]" + ] + }, + "metadata": {}, + "output_type": "display_data" + } + ], + "source": [ + "equities = nyse_equities.query(\"ShareholdersEquityUsd >= 30_000_000_000\")\n", + "plot_and_display(equities, \"ShareholdersEquityUsd\")" + ] + }, + { + "cell_type": "markdown", + "id": "473eaf10-db64-414e-b282-c6182722810d", + "metadata": { + "tags": [] + }, + "source": [ + "#### Get Equities by PE" + ] + }, + { + "cell_type": "code", + "execution_count": 12, + "id": "166d52ea-9473-416b-ab7f-5dcb1b84eba3", + "metadata": { + "tags": [] + }, + "outputs": [ + { + "data": { + "application/vnd.plotly.v1+json": { + "config": { + "linkText": "Export to plot.ly", + "plotlyServerURL": "https://plot.ly", + "showLink": true + }, + "data": [ + { + "line": { + "color": "rgba(255, 153, 51, 1.0)", + "dash": "solid", + "shape": "linear", + "width": 1.3 + }, + "mode": "lines", + "name": "Pe", + "text": "", + "type": "scatter", + "x": [ + "Bite Acquisition Corp", + "ShoulderUP Technology Acquisition Corp", + "Pinterest Inc", + "Global Net Lease Inc", + "AP Acquisition Corp", + "AltC Acquisition Corp", + "Excelerate Energy Inc", + "GoGreen Investments Corp", + "Cars.com Inc", + "Braemar Hotels & Resorts Inc", + "Motive Capital Corp II", + "Helmerich and Payne Inc", + "EVe Mobility Acquisition Corp", + "Nov Inc", + "Andretti Acquisition Corp", + "Waverley Capital Acquisition Corp 1", + "Constellation Brands Inc", + "Nabors Energy Transition Corp", + "10X Capital Venture Acquisition III Corp", + "Pure Storage Inc", + "Marcus Corp", + "Metals Acquisition Corp", + "Salesforce Inc", + "Paramount Group Inc", + "Global Payments Inc", + "Equity Commonwealth", + "Dynatrace Inc", + "ServiceNow Inc", + "Custom Truck One Source Inc", + "Navigator Holdings Ltd", + "Paymentus Holdings Inc", + "ATI Inc", + "Meridianlink Inc", + "Delta Air Lines Inc", + "American Axle & Manufacturing Holdings Inc", + "Cadre Holdings Inc", + "dMY Technology Group Inc VI", + "Vertiv Holdings Co", + "EngageSmart Inc", + "Welltower Inc", + "Seabridge Gold Inc", + "Maxar Technologies Inc", + "Crown PropTech Acquisitions", + "Alamos Gold Inc", + "N-Able Inc", + "Boston Beer Company Inc", + "Alaska Air Group Inc", + "Prudential Financial Inc", + "Shift4 Payments Inc", + "Adit EdTech Acquisition Cor", + "Aris Water Solutions Inc", + "Empire State Realty Trust Inc", + "Algonquin Power & Utilities Corp", + "DHI Group Inc", + "Netstreit Corp", + "Enovis Corp", + "Brightview Holdings Inc", + "Altus Power Inc", + "Ryan Specialty Holdings Inc", + "Boston Scientific Corp", + "Postal Realty Trust Inc", + "RPT Realty", + "Gap Inc", + "Coty Inc", + "Cameco Corp", + "CTO Realty Growth Inc", + "WideOpenWest Inc", + "Live Nation Entertainment Inc", + "Bausch + Lomb Corp", + "Markforged Holding Corp", + "Mayville Engineering Company Inc", + "Calix Inc", + "Greenhill & Co Inc", + "Planet Fitness Inc", + "Progressive Corp", + "Madison Square Garden Sports Corp", + "elf Beauty Inc", + "International Business Machines Corp", + "Burlington Stores Inc", + "Aptiv PLC", + "PennantPark Floating Rate Capital Ltd", + "Black Spade Acquisition Co", + "MSA Safety Inc", + "Ares Management Corp", + "Barnes Group Inc", + "Zimmer Biomet Holdings Inc", + "UDR Inc", + "Hyatt Hotels Corp", + "WEX Inc", + "ESM Acquisition Corp", + "Ryman Hospitality Properties Inc", + "DoubleVerify Holdings Inc", + "Tyler Technologies Inc", + "Alta Equipment Group Inc", + "Ormat Technologies Inc", + "Westwood Holdings Group Inc", + "Paycom Software Inc", + "EG Acquisition Corp" + ], + "y": [ + 15287.878788, + 13666.666667, + 12194.871795, + 5351.020408, + 2960, + 1721.070812, + 1504.975124, + 1362.565445, + 1347.497639, + 1302.469136, + 1052.523172, + 992.950224, + 966.981132, + 834.437086, + 826.923077, + 728.924419, + 713.434771, + 687.51045, + 669.761273, + 665.100173, + 550.188679, + 507.099391, + 503.081414, + 486.042693, + 461.716937, + 426.700252, + 399.151841, + 398.097702, + 384.023669, + 330.996202, + 329.253366, + 327.73553, + 323.663773, + 302.436021, + 301.682243, + 240.418528, + 222.492267, + 212.73243, + 199.56367, + 181.996034, + 174.878304, + 170.278121, + 164.524003, + 164.021164, + 159.496005, + 152.289076, + 149.945843, + 140.055092, + 139.08008, + 135.326305, + 131.206657, + 124.727273, + 124.591355, + 122.626026, + 120.297407, + 120.197326, + 118.296782, + 114.790638, + 113.139876, + 112.031995, + 110.968521, + 109.652427, + 109.084174, + 108.640788, + 107.689109, + 107.326747, + 106.669587, + 103.406096, + 98.847384, + 98.785425, + 94.874673, + 93.644264, + 93.241951, + 92.969467, + 92.91459, + 91.651186, + 89.440378, + 88.047518, + 87.423499, + 83.718981, + 83.043059, + 82.844635, + 82.333597, + 82.301599, + 81.443603, + 79.94623, + 79.485622, + 79.048145, + 73.513894, + 73.230858, + 73.07734, + 73.027439, + 72.402481, + 72.336316, + 71.809748, + 71.467873, + 70.638606, + 70.375053 + ] + } + ], + "layout": { + "autosize": true, + "legend": { + "bgcolor": "#151516", + "font": { + "color": "#D9D9D9" + } + }, + "paper_bgcolor": "#151516", + "plot_bgcolor": "#151516", + "template": { + "data": { + "bar": [ + { + "error_x": { + "color": "#2a3f5f" + }, + "error_y": { + "color": "#2a3f5f" + }, + "marker": { + "line": { + "color": "#E5ECF6", + "width": 0.5 + }, + "pattern": { + "fillmode": "overlay", + "size": 10, + "solidity": 0.2 + } + }, + "type": "bar" + } + ], + "barpolar": [ + { + "marker": { + "line": { + "color": "#E5ECF6", + "width": 0.5 + }, + "pattern": { + "fillmode": "overlay", + "size": 10, + "solidity": 0.2 + } + }, + "type": "barpolar" + } + ], + "carpet": [ + { + "aaxis": { + "endlinecolor": "#2a3f5f", + "gridcolor": "white", + "linecolor": "white", + "minorgridcolor": "white", + "startlinecolor": "#2a3f5f" + }, + "baxis": { + "endlinecolor": "#2a3f5f", + "gridcolor": "white", + "linecolor": "white", + "minorgridcolor": "white", + "startlinecolor": "#2a3f5f" + }, + "type": "carpet" + } + ], + "choropleth": [ + { + "colorbar": { + "outlinewidth": 0, + "ticks": "" + }, + "type": "choropleth" + } + ], + "contour": [ + { + "colorbar": { + "outlinewidth": 0, + "ticks": "" + }, + "colorscale": [ + [ + 0, + "#0d0887" + ], + [ + 0.1111111111111111, + "#46039f" + ], + [ + 0.2222222222222222, + "#7201a8" + ], + [ + 0.3333333333333333, + "#9c179e" + ], + [ + 0.4444444444444444, + "#bd3786" + ], + [ + 0.5555555555555556, + "#d8576b" + ], + [ + 0.6666666666666666, + "#ed7953" + ], + [ + 0.7777777777777778, + "#fb9f3a" + ], + [ + 0.8888888888888888, + "#fdca26" + ], + [ + 1, + "#f0f921" + ] + ], + "type": "contour" + } + ], + "contourcarpet": [ + { + "colorbar": { + "outlinewidth": 0, + "ticks": "" + }, + "type": "contourcarpet" + } + ], + "heatmap": [ + { + "colorbar": { + "outlinewidth": 0, + "ticks": "" + }, + "colorscale": [ + [ + 0, + "#0d0887" + ], + [ + 0.1111111111111111, + "#46039f" + ], + [ + 0.2222222222222222, + "#7201a8" + ], + [ + 0.3333333333333333, + "#9c179e" + ], + [ + 0.4444444444444444, + "#bd3786" + ], + [ + 0.5555555555555556, + "#d8576b" + ], + [ + 0.6666666666666666, + "#ed7953" + ], + [ + 0.7777777777777778, + "#fb9f3a" + ], + [ + 0.8888888888888888, + "#fdca26" + ], + [ + 1, + "#f0f921" + ] + ], + "type": "heatmap" + } + ], + "heatmapgl": [ + { + "colorbar": { + "outlinewidth": 0, + "ticks": "" + }, + "colorscale": [ + [ + 0, + "#0d0887" + ], + [ + 0.1111111111111111, + "#46039f" + ], + [ + 0.2222222222222222, + "#7201a8" + ], + [ + 0.3333333333333333, + "#9c179e" + ], + [ + 0.4444444444444444, + "#bd3786" + ], + [ + 0.5555555555555556, + "#d8576b" + ], + [ + 0.6666666666666666, + "#ed7953" + ], + [ + 0.7777777777777778, + "#fb9f3a" + ], + [ + 0.8888888888888888, + "#fdca26" + ], + [ + 1, + "#f0f921" + ] + ], + "type": "heatmapgl" + } + ], + "histogram": [ + { + "marker": { + "pattern": { + "fillmode": "overlay", + "size": 10, + "solidity": 0.2 + } + }, + "type": "histogram" + } + ], + "histogram2d": [ + { + "colorbar": { + "outlinewidth": 0, + "ticks": "" + }, + "colorscale": [ + [ + 0, + "#0d0887" + ], + [ + 0.1111111111111111, + "#46039f" + ], + [ + 0.2222222222222222, + "#7201a8" + ], + [ + 0.3333333333333333, + "#9c179e" + ], + [ + 0.4444444444444444, + "#bd3786" + ], + [ + 0.5555555555555556, + "#d8576b" + ], + [ + 0.6666666666666666, + "#ed7953" + ], + [ + 0.7777777777777778, + "#fb9f3a" + ], + [ + 0.8888888888888888, + "#fdca26" + ], + [ + 1, + "#f0f921" + ] + ], + "type": "histogram2d" + } + ], + "histogram2dcontour": [ + { + "colorbar": { + "outlinewidth": 0, + "ticks": "" + }, + "colorscale": [ + [ + 0, + "#0d0887" + ], + [ + 0.1111111111111111, + "#46039f" + ], + [ + 0.2222222222222222, + "#7201a8" + ], + [ + 0.3333333333333333, + "#9c179e" + ], + [ + 0.4444444444444444, + "#bd3786" + ], + [ + 0.5555555555555556, + "#d8576b" + ], + [ + 0.6666666666666666, + "#ed7953" + ], + [ + 0.7777777777777778, + "#fb9f3a" + ], + [ + 0.8888888888888888, + "#fdca26" + ], + [ + 1, + "#f0f921" + ] + ], + "type": "histogram2dcontour" + } + ], + "mesh3d": [ + { + "colorbar": { + "outlinewidth": 0, + "ticks": "" + }, + "type": "mesh3d" + } + ], + "parcoords": [ + { + "line": { + "colorbar": { + "outlinewidth": 0, + "ticks": "" + } + }, + "type": "parcoords" + } + ], + "pie": [ + { + "automargin": true, + "type": "pie" + } + ], + "scatter": [ + { + "marker": { + "colorbar": { + "outlinewidth": 0, + "ticks": "" + } + }, + "type": "scatter" + } + ], + "scatter3d": [ + { + "line": { + "colorbar": { + "outlinewidth": 0, + "ticks": "" + } + }, + "marker": { + "colorbar": { + "outlinewidth": 0, + "ticks": "" + } + }, + "type": "scatter3d" + } + ], + "scattercarpet": [ + { + "marker": { + "colorbar": { + "outlinewidth": 0, + "ticks": "" + } + }, + "type": "scattercarpet" + } + ], + "scattergeo": [ + { + "marker": { + "colorbar": { + "outlinewidth": 0, + "ticks": "" + } + }, + "type": "scattergeo" + } + ], + "scattergl": [ + { + "marker": { + "colorbar": { + "outlinewidth": 0, + "ticks": "" + } + }, + "type": "scattergl" + } + ], + "scattermapbox": [ + { + "marker": { + "colorbar": { + "outlinewidth": 0, + "ticks": "" + } + }, + "type": "scattermapbox" + } + ], + "scatterpolar": [ + { + "marker": { + "colorbar": { + "outlinewidth": 0, + "ticks": "" + } + }, + "type": "scatterpolar" + } + ], + "scatterpolargl": [ + { + "marker": { + "colorbar": { + "outlinewidth": 0, + "ticks": "" + } + }, + "type": "scatterpolargl" + } + ], + "scatterternary": [ + { + "marker": { + "colorbar": { + "outlinewidth": 0, + "ticks": "" + } + }, + "type": "scatterternary" + } + ], + "surface": [ + { + "colorbar": { + "outlinewidth": 0, + "ticks": "" + }, + "colorscale": [ + [ + 0, + "#0d0887" + ], + [ + 0.1111111111111111, + "#46039f" + ], + [ + 0.2222222222222222, + "#7201a8" + ], + [ + 0.3333333333333333, + "#9c179e" + ], + [ + 0.4444444444444444, + "#bd3786" + ], + [ + 0.5555555555555556, + "#d8576b" + ], + [ + 0.6666666666666666, + "#ed7953" + ], + [ + 0.7777777777777778, + "#fb9f3a" + ], + [ + 0.8888888888888888, + "#fdca26" + ], + [ + 1, + "#f0f921" + ] + ], + "type": "surface" + } + ], + "table": [ + { + "cells": { + "fill": { + "color": "#EBF0F8" + }, + "line": { + "color": "white" + } + }, + "header": { + "fill": { + "color": "#C8D4E3" + }, + "line": { + "color": "white" + } + }, + "type": "table" + } + ] + }, + "layout": { + "annotationdefaults": { + "arrowcolor": "#2a3f5f", + "arrowhead": 0, + "arrowwidth": 1 + }, + "autotypenumbers": "strict", + "coloraxis": { + "colorbar": { + "outlinewidth": 0, + "ticks": "" + } + }, + "colorscale": { + "diverging": [ + [ + 0, + "#8e0152" + ], + [ + 0.1, + "#c51b7d" + ], + [ + 0.2, + "#de77ae" + ], + [ + 0.3, + "#f1b6da" + ], + [ + 0.4, + "#fde0ef" + ], + [ + 0.5, + "#f7f7f7" + ], + [ + 0.6, + "#e6f5d0" + ], + [ + 0.7, + "#b8e186" + ], + [ + 0.8, + "#7fbc41" + ], + [ + 0.9, + "#4d9221" + ], + [ + 1, + "#276419" + ] + ], + "sequential": [ + [ + 0, + "#0d0887" + ], + [ + 0.1111111111111111, + "#46039f" + ], + [ + 0.2222222222222222, + "#7201a8" + ], + [ + 0.3333333333333333, + "#9c179e" + ], + [ + 0.4444444444444444, + "#bd3786" + ], + [ + 0.5555555555555556, + "#d8576b" + ], + [ + 0.6666666666666666, + "#ed7953" + ], + [ + 0.7777777777777778, + "#fb9f3a" + ], + [ + 0.8888888888888888, + "#fdca26" + ], + [ + 1, + "#f0f921" + ] + ], + "sequentialminus": [ + [ + 0, + "#0d0887" + ], + [ + 0.1111111111111111, + "#46039f" + ], + [ + 0.2222222222222222, + "#7201a8" + ], + [ + 0.3333333333333333, + "#9c179e" + ], + [ + 0.4444444444444444, + "#bd3786" + ], + [ + 0.5555555555555556, + "#d8576b" + ], + [ + 0.6666666666666666, + "#ed7953" + ], + [ + 0.7777777777777778, + "#fb9f3a" + ], + [ + 0.8888888888888888, + "#fdca26" + ], + [ + 1, + "#f0f921" + ] + ] + }, + "colorway": [ + "#636efa", + "#EF553B", + "#00cc96", + "#ab63fa", + "#FFA15A", + "#19d3f3", + "#FF6692", + "#B6E880", + "#FF97FF", + "#FECB52" + ], + "font": { + "color": "#2a3f5f" + }, + "geo": { + "bgcolor": "white", + "lakecolor": "white", + "landcolor": "#E5ECF6", + "showlakes": true, + "showland": true, + "subunitcolor": "white" + }, + "hoverlabel": { + "align": "left" + }, + "hovermode": "closest", + "mapbox": { + "style": "light" + }, + "paper_bgcolor": "white", + "plot_bgcolor": "#E5ECF6", + "polar": { + "angularaxis": { + "gridcolor": "white", + "linecolor": "white", + "ticks": "" + }, + "bgcolor": "#E5ECF6", + "radialaxis": { + "gridcolor": "white", + "linecolor": "white", + "ticks": "" + } + }, + "scene": { + "xaxis": { + "backgroundcolor": "#E5ECF6", + "gridcolor": "white", + "gridwidth": 2, + "linecolor": "white", + "showbackground": true, + "ticks": "", + "zerolinecolor": "white" + }, + "yaxis": { + "backgroundcolor": "#E5ECF6", + "gridcolor": "white", + "gridwidth": 2, + "linecolor": "white", + "showbackground": true, + "ticks": "", + "zerolinecolor": "white" + }, + "zaxis": { + "backgroundcolor": "#E5ECF6", + "gridcolor": "white", + "gridwidth": 2, + "linecolor": "white", + "showbackground": true, + "ticks": "", + "zerolinecolor": "white" + } + }, + "shapedefaults": { + "line": { + "color": "#2a3f5f" + } + }, + "ternary": { + "aaxis": { + "gridcolor": "white", + "linecolor": "white", + "ticks": "" + }, + "baxis": { + "gridcolor": "white", + "linecolor": "white", + "ticks": "" + }, + "bgcolor": "#E5ECF6", + "caxis": { + "gridcolor": "white", + "linecolor": "white", + "ticks": "" + } + }, + "title": { + "x": 0.05 + }, + "xaxis": { + "automargin": true, + "gridcolor": "white", + "linecolor": "white", + "ticks": "", + "title": { + "standoff": 15 + }, + "zerolinecolor": "white", + "zerolinewidth": 2 + }, + "yaxis": { + "automargin": true, + "gridcolor": "white", + "linecolor": "white", + "ticks": "", + "title": { + "standoff": 15 + }, + "zerolinecolor": "white", + "zerolinewidth": 2 + } + } + }, + "title": { + "font": { + "color": "#D9D9D9" + } + }, + "xaxis": { + "autorange": true, + "gridcolor": "#434343", + "range": [ + 0, + 97 + ], + "showgrid": true, + "tickfont": { + "color": "#C2C2C2" + }, + "title": { + "font": { + "color": "#D9D9D9" + }, + "text": "" + }, + "type": "category", + "zerolinecolor": "#666570" + }, + "yaxis": { + "autorange": true, + "gridcolor": "#434343", + "range": [ + -775.0418211666669, + 16133.295662166667 + ], + "showgrid": true, + "tickfont": { + "color": "#C2C2C2" + }, + "title": { + "font": { + "color": "#D9D9D9" + }, + "text": "" + }, + "type": "linear", + "zerolinecolor": "#666570" + } + } + }, + "image/png": "iVBORw0KGgoAAAANSUhEUgAABEwAAAFoCAYAAABNBG49AAAAAXNSR0IArs4c6QAAIABJREFUeF7snQd4VUX6xr8UQjqhd5GqqKhrd3VXUddeUMECKnal2MAGoiIgYkEFe1kREAviWta2q6i79v9aFpGi9B5KIBBKCCn/553khJubm3vPzPkCd8M7z+MDcs/MmfObOWdm3vm+bxKaNm1WJkwkQAIkQAIkQAIkQAIkQAIkQAIkQAIkQAKVBBIomLA3kAAJkAAJkAAJkAAJkAAJkAAJkAAJkEBVAhRM2CNIgARIgARIgARIgARIgARIgARIgARIIIwABRN2CRIgARIgARIgARIgARIgARIgARIgARKgYMI+QAIkQAIkQAIkQAIkQAIkQAIkQAIkQALRCdDChD2EBEiABEiABEiABEiABEiABEiABEiABMIIUDBhlyABEiABEiABEiABEiABEiABEiABEiABCibsAyRAAiRAAiRAAiRAAiRAAiRAAiRAAiQQnQAtTNhDSIAESIAESIAESIAESIAESIAESIAESCCMAAUTdgkSIAESIAESIAESIAESIAESIAESIAESoGDCPkACJEACJEACJEACJEACJEACJEACJEAC0QnQwoQ9hARIgARIgARIgARIgARIgARIgARIgATCCFAwYZcgARIgARIgARIgARIgARIgARIgARIgAQom7AMkQAIkQAIkQAIkQAIkQAIkQAIkQAIkEJ0ALUzYQ0iABEiABEiABEiABEiABEiABEiABEggjAAFE3YJEiABEiABEiABEiABEiABEiABEiABEqBgwj5AAiRAAiRAAiRAAiRAAiRAAiRAAiRAAtEJ0MKEPYQESIAESIAESIAESIAESIAESIAESIAEwghQMGGXIAESIAESIAESIAESIAESIAESIAESIAEKJuwDJEACJEACJEACJEACJEACJEACJEACJBCdAC1M2ENIgARIgARIgARIgARIgARIgARIgARIIIwABRN2CRIgARIgARIgARIgARIgARIgARIgARKgYMI+QAIkQAIkQAIkQAIkQAIkQAIkQAIkQALRCdDChD2EBEiABEiABEiABEiABEiABEiABEiABMIIUDBhlyABEiABEiABEiABEiABEiABEiABEiABCibsAyRAAiRAAiRAAiRAAiRAAiRAAiRAAiQQnQAtTNhDSIAESIAESIAESIAESIAESIAESIAESCCMAAUTdgkSIAESIAESIAESIAESIAESIAESIAESoGDCPkACJEACJEACJEACJEACJEACJEACJEAC0QnQwoQ9hARIgARIgARIgARIgARIgARIgARIgATCCFAwYZcgARIgARIgARIgARIgARIgARIgARIgAQom7AMkQAIkQAIkQAIkQAIkQAIkQAIkQAIkEJ0ALUzYQ0iABEiABEiABEiABEiABEiABEiABEggjAAFE3YJEiABEiABEiABEiABEiABEiABEiABEqBgwj5AAiRAAiRAAiRAAiRAAiRAAiRAAiRAAtEJ0MKEPYQESIAESIAESIAESIAESIAESIAESIAEwghQMGGXIAESIAESIAESIAESIAESIAESIAESIAEKJuwDJEACJEACJEACJEACJEACJEACJEACJBCdAC1M2ENIgARIgARIgARIgARIgARIgARIgARIIIwABRN2CRIgARIgARIgARIgARIgARIgARIgARKgYMI+QAIkQAIkQAIkQAIkQAIkQAIkQAIkQALRCdDChD2EBEiABEiABEiABEiABEiABEiABEiABMIIUDBhlyABEiABEiABEiABEiABEiABEiABEiABCibsAyRAAiRAAiRAAiRAAiRAAiRAAiRAAiQQnQAtTNhDSIAESIAESIAESIAESIAESIAESIAESCCMAAUTdgkSIAESIAESIAESIAESIAESIAESIAESoGDCPkACJEACJEACJEACJEACJEACJEACJEAC0QnQwoQ9hARIgARIgARIgARIgARIgARIgARIgATCCFAwYZcgARIgARIgARIgARIgARIgARIgARIgAQom7AMkQAIkQAIkQAIkQAIkQAIkQAIkQAIkEJ0ALUzYQ0iABEiABEiABEiABEiABEiABEiABEggjAAFE3YJEiABEiABEiABEiABEiABEiABEiABEqBgwj5AAiRAAiRAAiRAAiRAAiRAAiRAAiRAAtEJ0MKEPYQESIAESIAESIAESIAESIAESIAESIAEwghQMGGXIAESIAESIAESIAESIAESIAESIAESIAEKJuwDJEACJEACJEACJEACJEACJEACJEACJBCdAC1M2ENIgARIgARIgARIgARIgARIgARIgARIIIwABRN2CRIgARIgARIgARIgARIgARIgARIgARKgYMI+QAIkQAIkQAIkQAIkQAIkQAIkQAIkQALRCdDChD2EBEiABEiABEiABEiABEiABEiABEiABMIIUDBhlyABEiABEiABEiABEiABEiABEiABEiABCibsAyRAAiRAAiRAAiRAAiRAAiRAAiRAAiQQnQAtTNhDSIAESIAESIAESIAESIAESIAESIAESCCMAAUTdgkSIAESIAESIAESIAESIAESIAESIAESoGDCPkACJEACJEACJEACJEACJEACJEACJEAC0QnQwoQ9hARIgARIgARIgARIgARIgARIgARIgATCCFAwYZcgARIgARIgARIgARIgARIgARIgARIgAQom7AMkQAIkQAIkQAIkQAIkQAIkQAIkQAIkEJ0ALUzYQ0iABEiABEiABEiABEiABEiABEiABEggjAAFE3YJEiABEiABEiABEiABEiABEiABEiABEqBgwj5AAiRAAiRAAiRAAiRAAiRAAiRAAiRAAtEJ7HEWJvXq1ZOSkhIpLS313TcuuaSPfPnlV7JkyRLfeXghCZAACZAACZAACZAACZAACZAACZDA/y6BPUowyc7Okueff16mT58uL7zwYmWr9enTW84777xqrXjppZfJ1q1bZdq0N2XKlCny9tvv/O+2NGtOAiRAAiRAAiRAAiRAAiRAAiRAAiTgm8AeI5g8+OAY6dSpkwHz8ccfVxFMYEHSo0cPGTFiZBVwM2fOlLKysl0imKSk1JMOHTrK3LlzfTdetAs7dGgva9aslc2bNwcur2HDHMnMzJJly5YFLgsFdOt2gPz66yzDNmhq3bq1FBZuk7y89UGLkvT0NGnVqpXMn78gcFkooEuXzrJ06TIpLCwMXF7Tpk0kObmerFq1KnBZSUlJsu+++8isWbMDl4UC9t67naxfv0E2bdoUuLzs7Gxp1KihLF6sY821335d5fff50lxcXHgurVs2UKKi0tk7dq1gcuqX7++4fbbb78HLgsFdOrUUVauXGUE3qCpceNGkpqaJitWrAhalCQkJMgBB+wvM2f+GrgsFNC2bRvZvHmLbNiwIXB5GRkZ0rx5c1m4cGHgslAA3qmFCxdJUVFR4PKaN28mIgmyevXqwGXBqhL9Y86c+BtbcnJyBBsZ+E5qJPS12bPnWFmQ1nTf1q1bSWHhdsnLywtctbS0NGnTprXMmzc/cFnaY0uTJk0E8w98P4Im7bGlXbt2kp+/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QXBqaHJycpUqY1zWmGfF+zt15ZVXygkndJdLLrnUqskOPvhgswZq3LixLF26TP7zn//I8uXLrcrgxbuXAAUTH/wxoXrhheejXrl58xbp27dvzNI0y8LN6tevL0OHDhEMJklJSbJp0yb58ssvZdq0t8zfbZJ23XDvhg0byqhRI6VFixamKmVlZYIPLtK///1vGTduvK8qatZNsyztNtBklpaWJjfffJM88MCYaowxkezSpYtMmzbNF39cpM3t1VenyNatW+Xqq68xdejZs6dcfPFFlf1k2LC7Ze7cub7rl5mZISNGjJB27dpV6Wvocx9++JG89NJLvsrSfk6td0C7DTSfU/M75DXSgw+OkU6dOplvRmlpqfm+bd++XW6++RariZnmc3p10+y7Wv1D+zm121STmWbdNMvSbgPN8uK1LO+d0vp+a46h4QNGvXr15JhjjpFjjz1GOnfuIqgzEjZ/BgwYGHN82VPaQPM5AfWSSy6Rc8/tYTZWMA4gYSwYOPAGWb9+fUzuoRdo1k2zrHge31G3fffdV2677VbJycmJyHvbtm3WIgIKiqd3yk9HshVMsEl8//2jzGYxUuga6L//nSEjR470c1v1+bevm/KiKgQomPjoEFAEn3/+Ofnggw9ky5YtJsf5558vs2fPljlz5pjd7L322svXxwIfh/POO7fyrigHi8JZs2aZf7MpK7TqECGeeeZp8zGD8ov/X7lypfzjH/+Ujz76qHIHP9rjes/5z39+Ivn5Gyqfc/HiJfLjjz/IoYceJq1atfT1nN59xo59xCxg33rrLXnnnXcFH1UMMtddd60cdthhMnHiJHnvvfditgIGyRNOOKHadenp6XL66aeZj9HGjRvlyiuvillWbTwnbqrRBihHi5n3nOef37MakwsvvEBOOeUUX7y8zJpt0Lx5c2MZ9fjj44zAB3avvfaqacMXXnhRbrjhBlmwYL6MGOFvMEEdhw+/Vw444ADT31999bXKvnbDDQMFAtGjjz4mX3/9te/+8cEHH8qWLZurXW/7jmq1pze50Pp+aLanB0nrHejcubOMGfOA/Otf/5Inn3zKCCaYsI0YcZ8sWrRI7rjjzpjt6F2g/b5r912t/lFTe4LDYYcdar63LpNajTbVZqbd37S+39ptUJtzD3z/sej84osvrOcetTGP0fp+a46h3jd3wID+ZmzB/ArvQ2Fh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", + "text/html": [ + "
" + ] + }, + "metadata": {}, + "output_type": "display_data" + }, + { + "data": { + "text/html": [ + "
\n", + "\n", + "\n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
DTSubjectNameExchangeNameRICMktCapCompanyUsdShareholdersEquityUsdPeDebtToAssetsBetaEpsGics...SearchAllCategoryRCSAssetCategoryRCSCurrencyLeafAssetStateBusinessEntityPIIssueISINCUSIPCinCUSIPSolvencyMargin
1617Bite Acquisition CorpNYSE ConsolidatedBITE.K25870760019985890015287.8787880.0032530.0176740.00066<NA>...EquitiesA:1LUS DollarACQUOTExEQUITY505192748US09175K105109175K105<NA><NA>
1687ShoulderUP Technology Acquisition CorpNYSE ConsolidatedSUAC.K42845000029567497013666.6666670.037916<NA>0.00075<NA>...EquitiesA:1LUS DollarACQUOTExEQUITY574895596US82537G104082537G104<NA><NA>
113Pinterest IncNYSE ConsolidatedPINS.K16128330778303874300012194.8717950.1409280.9435030.00195Communication Services/Media & Entertainment/I......EquitiesA:1LUS DollarACQUOTExEQUITY357509714US72352L106172352L106<NA><NA>
1085Global Net Lease IncNYSE ConsolidatedGNL136075722216206070005351.0204080.6111281.2619840.00245Real Estate/Real Estate/Equity Real Estate Inv......EquitiesA:1LUS DollarACQUOTExEQUITY192602150US3793782018379378201<NA><NA>
1758AP Acquisition CorpNYSE ConsolidatedAPCA.K2233875001726386702960.00.035847<NA>0.0035<NA>...EquitiesA:1LUS DollarACQUOTExEQUITY581981758KYG040581061<NA>G04058106<NA>
..................................................................
1461Alta Equipment Group IncNYSE ConsolidatedALTG.K45812407713470000072.3363160.8629151.6991070.19672Industrials/Capital Goods/Trading Companies & ......EquitiesA:1LUS DollarACQUOTExEQUITY361993873US02128L106102128L106<NA><NA>
770Ormat Technologies IncNYSE ConsolidatedORA4759051388185499900071.8097480.5463320.4785551.18243Utilities/Utilities/Independent Power and Rene......EquitiesA:1LUS DollarACQUOTExEQUITY18634332US6866881021686688102<NA><NA>
1671Westwood Holdings Group IncNYSE ConsolidatedWHG9835057611790600071.4678730.1554311.2308690.16357Financials/Diversified Financials/Capital Mark......EquitiesA:1LUS DollarACQUOTExEQUITY7929251US9617651040961765104<NA><NA>
289Paycom Software IncNYSE ConsolidatedPAYC.K1758561871389371400070.6386060.722031.3623454.30218Information Technology/Software & Services/Sof......EquitiesA:1LUS DollarACQUOTExEQUITY156409257US70432V102670432V102<NA><NA>
1393EG Acquisition CorpNYSE ConsolidatedEGGF.K28181250021035607070.3750530.069105<NA>0.14238<NA>...EquitiesA:1LUS DollarACQUOTExEQUITY526501048US26846A100726846A100<NA><NA>
\n", + "

98 rows × 42 columns

\n", + "
" + ], + "text/plain": [ + " DTSubjectName ExchangeName RIC \\\n", + "1617 Bite Acquisition Corp NYSE Consolidated BITE.K \n", + "1687 ShoulderUP Technology Acquisition Corp NYSE Consolidated SUAC.K \n", + "113 Pinterest Inc NYSE Consolidated PINS.K \n", + "1085 Global Net Lease Inc NYSE Consolidated GNL \n", + "1758 AP Acquisition Corp NYSE Consolidated APCA.K \n", + "... ... ... ... \n", + "1461 Alta Equipment Group Inc NYSE Consolidated ALTG.K \n", + "770 Ormat Technologies Inc NYSE Consolidated ORA \n", + "1671 Westwood Holdings Group Inc NYSE Consolidated WHG \n", + "289 Paycom Software Inc NYSE Consolidated PAYC.K \n", + "1393 EG Acquisition Corp NYSE Consolidated EGGF.K \n", + "\n", + " MktCapCompanyUsd ShareholdersEquityUsd Pe DebtToAssets \\\n", + "1617 258707600 199858900 15287.878788 0.003253 \n", + "1687 428450000 295674970 13666.666667 0.037916 \n", + "113 16128330778 3038743000 12194.871795 0.140928 \n", + "1085 1360757222 1620607000 5351.020408 0.611128 \n", + "1758 223387500 172638670 2960.0 0.035847 \n", + "... ... ... ... ... \n", + "1461 458124077 134700000 72.336316 0.862915 \n", + "770 4759051388 1854999000 71.809748 0.546332 \n", + "1671 98350576 117906000 71.467873 0.155431 \n", + "289 17585618713 893714000 70.638606 0.72203 \n", + "1393 281812500 210356070 70.375053 0.069105 \n", + "\n", + " Beta Eps Gics \\\n", + "1617 0.017674 0.00066 \n", + "1687 0.00075 \n", + "113 0.943503 0.00195 Communication Services/Media & Entertainment/I... \n", + "1085 1.261984 0.00245 Real Estate/Real Estate/Equity Real Estate Inv... \n", + "1758 0.0035 \n", + "... ... ... ... \n", + "1461 1.699107 0.19672 Industrials/Capital Goods/Trading Companies & ... \n", + "770 0.478555 1.18243 Utilities/Utilities/Independent Power and Rene... \n", + "1671 1.230869 0.16357 Financials/Diversified Financials/Capital Mark... \n", + "289 1.362345 4.30218 Information Technology/Software & Services/Sof... \n", + "1393 0.14238 \n", + "\n", + " ... SearchAllCategory RCSAssetCategory RCSCurrencyLeaf AssetState \\\n", + "1617 ... Equities A:1L US Dollar AC \n", + "1687 ... Equities A:1L US Dollar AC \n", + "113 ... Equities A:1L US Dollar AC \n", + "1085 ... Equities A:1L US Dollar AC \n", + "1758 ... Equities A:1L US Dollar AC \n", + "... ... ... ... ... ... \n", + "1461 ... Equities A:1L US Dollar AC \n", + "770 ... Equities A:1L US Dollar AC \n", + "1671 ... Equities A:1L US Dollar AC \n", + "289 ... Equities A:1L US Dollar AC \n", + "1393 ... Equities A:1L US Dollar AC \n", + "\n", + " BusinessEntity PI IssueISIN CUSIP CinCUSIP \\\n", + "1617 QUOTExEQUITY 505192748 US09175K1051 09175K105 \n", + "1687 QUOTExEQUITY 574895596 US82537G1040 82537G104 \n", + "113 QUOTExEQUITY 357509714 US72352L1061 72352L106 \n", + "1085 QUOTExEQUITY 192602150 US3793782018 379378201 \n", + "1758 QUOTExEQUITY 581981758 KYG040581061 G04058106 \n", + "... ... ... ... ... ... \n", + "1461 QUOTExEQUITY 361993873 US02128L1061 02128L106 \n", + "770 QUOTExEQUITY 18634332 US6866881021 686688102 \n", + "1671 QUOTExEQUITY 7929251 US9617651040 961765104 \n", + "289 QUOTExEQUITY 156409257 US70432V1026 70432V102 \n", + "1393 QUOTExEQUITY 526501048 US26846A1007 26846A100 \n", + "\n", + " SolvencyMargin \n", + "1617 \n", + "1687 \n", + "113 \n", + "1085 \n", + "1758 \n", + "... ... \n", + "1461 \n", + "770 \n", + "1671 \n", + "289 \n", + "1393 \n", + "\n", + "[98 rows x 42 columns]" + ] + }, + "metadata": {}, + "output_type": "display_data" + } + ], + "source": [ + "equities = nyse_equities.query(\"Pe >= 70\")\n", + "plot_and_display(equities, \"Pe\")" + ] + }, + { + "cell_type": "markdown", + "id": "e9b0f2ff-9f9e-46fe-926c-c48f0f619097", + "metadata": { + "tags": [] + }, + "source": [ + "#### Get Equities by Debt Ratio" + ] + }, + { + "cell_type": "code", + "execution_count": 13, + "id": "6353722d-e72e-4823-b2de-b3d96fb52564", + "metadata": { + "tags": [] + }, + "outputs": [ + { + "data": { + "application/vnd.plotly.v1+json": { + "config": { + "linkText": "Export to plot.ly", + "plotlyServerURL": "https://plot.ly", + "showLink": true + }, + "data": [ + { + "line": { + "color": "rgba(255, 153, 51, 1.0)", + "dash": "solid", + "shape": "linear", + "width": 1.3 + }, + "mode": "lines", + "name": "DebtToAssets", + "text": "", + "type": "scatter", + "x": [ + "Domino's Pizza Inc", + "Perfect Corp", + "Yum! Brands Inc", + "Chinos Holdings Inc" + ], + "y": [ + 3.517942, + 3.142108, + 2.403453, + 2.123781 + ] + } + ], + "layout": { + "autosize": true, + "legend": { + "bgcolor": "#151516", + "font": { + "color": "#D9D9D9" + } + }, + "paper_bgcolor": "#151516", + "plot_bgcolor": "#151516", + "template": { + "data": { + "bar": [ + { + "error_x": { + "color": "#2a3f5f" + }, + "error_y": { + "color": "#2a3f5f" + }, + "marker": { + "line": { + "color": "#E5ECF6", + "width": 0.5 + }, + "pattern": { + "fillmode": "overlay", + "size": 10, + "solidity": 0.2 + } + }, + "type": "bar" + } + ], + "barpolar": [ + { + "marker": { + "line": { + "color": "#E5ECF6", + "width": 0.5 + }, + "pattern": { + "fillmode": "overlay", + "size": 10, + "solidity": 0.2 + } + }, + "type": "barpolar" + } + ], + "carpet": [ + { + "aaxis": { + "endlinecolor": "#2a3f5f", + "gridcolor": "white", + "linecolor": "white", + "minorgridcolor": "white", + "startlinecolor": "#2a3f5f" + }, + "baxis": { + "endlinecolor": "#2a3f5f", + "gridcolor": "white", + "linecolor": "white", + "minorgridcolor": "white", + "startlinecolor": "#2a3f5f" + }, + "type": "carpet" + } + ], + "choropleth": [ + { + "colorbar": { + "outlinewidth": 0, + "ticks": "" + }, + "type": "choropleth" + } + ], + "contour": [ + { + "colorbar": { + "outlinewidth": 0, + "ticks": "" + }, + "colorscale": [ + [ + 0, + "#0d0887" + ], + [ + 0.1111111111111111, + "#46039f" + ], + [ + 0.2222222222222222, + "#7201a8" + ], + [ + 0.3333333333333333, + "#9c179e" + ], + [ + 0.4444444444444444, + "#bd3786" + ], + [ + 0.5555555555555556, + "#d8576b" + ], + [ + 0.6666666666666666, + "#ed7953" + ], + [ + 0.7777777777777778, + "#fb9f3a" + ], + [ + 0.8888888888888888, + "#fdca26" + ], + [ + 1, + "#f0f921" + ] + ], + "type": "contour" + } + ], + "contourcarpet": [ + { + "colorbar": { + "outlinewidth": 0, + "ticks": "" + }, + "type": "contourcarpet" + } + ], + "heatmap": [ + { + "colorbar": { + "outlinewidth": 0, + "ticks": "" + }, + "colorscale": [ + [ + 0, + "#0d0887" + ], + [ + 0.1111111111111111, + "#46039f" + ], + [ + 0.2222222222222222, + "#7201a8" + ], + [ + 0.3333333333333333, + "#9c179e" + ], + [ + 0.4444444444444444, + "#bd3786" + ], + [ + 0.5555555555555556, + "#d8576b" + ], + [ + 0.6666666666666666, + "#ed7953" + ], + [ + 0.7777777777777778, + "#fb9f3a" + ], + [ + 0.8888888888888888, + "#fdca26" + ], + [ + 1, + "#f0f921" + ] + ], + "type": "heatmap" + } + ], + "heatmapgl": [ + { + "colorbar": { + "outlinewidth": 0, + "ticks": "" + }, + "colorscale": [ + [ + 0, + "#0d0887" + ], + [ + 0.1111111111111111, + "#46039f" + ], + [ + 0.2222222222222222, + "#7201a8" + ], + [ + 0.3333333333333333, + "#9c179e" + ], + [ + 0.4444444444444444, + "#bd3786" + ], + [ + 0.5555555555555556, + "#d8576b" + ], + [ + 0.6666666666666666, + "#ed7953" + ], + [ + 0.7777777777777778, + "#fb9f3a" + ], + [ + 0.8888888888888888, + "#fdca26" + ], + [ + 1, + "#f0f921" + ] + ], + "type": "heatmapgl" + } + ], + "histogram": [ + { + "marker": { + "pattern": { + "fillmode": "overlay", + "size": 10, + "solidity": 0.2 + } + }, + "type": "histogram" + } + ], + "histogram2d": [ + { + "colorbar": { + "outlinewidth": 0, + "ticks": "" + }, + "colorscale": [ + [ + 0, + "#0d0887" + ], + [ + 0.1111111111111111, + "#46039f" + ], + [ + 0.2222222222222222, + "#7201a8" + ], + [ + 0.3333333333333333, + "#9c179e" + ], + [ + 0.4444444444444444, + "#bd3786" + ], + [ + 0.5555555555555556, + "#d8576b" + ], + [ + 0.6666666666666666, + "#ed7953" + ], + [ + 0.7777777777777778, + "#fb9f3a" + ], + [ + 0.8888888888888888, + "#fdca26" + ], + [ + 1, + "#f0f921" + ] + ], + "type": "histogram2d" + } + ], + "histogram2dcontour": [ + { + "colorbar": { + "outlinewidth": 0, + "ticks": "" + }, + "colorscale": [ + [ + 0, + "#0d0887" + ], + [ + 0.1111111111111111, + "#46039f" + ], + [ + 0.2222222222222222, + "#7201a8" + ], + [ + 0.3333333333333333, + "#9c179e" + ], + [ + 0.4444444444444444, + "#bd3786" + ], + [ + 0.5555555555555556, + "#d8576b" + ], + [ + 0.6666666666666666, + "#ed7953" + ], + [ + 0.7777777777777778, + "#fb9f3a" + ], + [ + 0.8888888888888888, + "#fdca26" + ], + [ + 1, + "#f0f921" + ] + ], + "type": "histogram2dcontour" + } + ], + "mesh3d": [ + { + "colorbar": { + "outlinewidth": 0, + "ticks": "" + }, + "type": "mesh3d" + } + ], + "parcoords": [ + { + "line": { + "colorbar": { + "outlinewidth": 0, + "ticks": "" + } + }, + "type": "parcoords" + } + ], + "pie": [ + { + "automargin": true, + "type": "pie" + } + ], + "scatter": [ + { + "marker": { + "colorbar": { + "outlinewidth": 0, + "ticks": "" + } + }, + "type": "scatter" + } + ], + "scatter3d": [ + { + "line": { + "colorbar": { + "outlinewidth": 0, + "ticks": "" + } + }, + "marker": { + "colorbar": { + "outlinewidth": 0, + "ticks": "" + } + }, + "type": "scatter3d" + } + ], + "scattercarpet": [ + { + "marker": { + "colorbar": { + "outlinewidth": 0, + "ticks": "" + } + }, + "type": "scattercarpet" + } + ], + "scattergeo": [ + { + "marker": { + "colorbar": { + "outlinewidth": 0, + "ticks": "" + } + }, + "type": "scattergeo" + } + ], + "scattergl": [ + { + "marker": { + "colorbar": { + "outlinewidth": 0, + "ticks": "" + } + }, + "type": "scattergl" + } + ], + "scattermapbox": [ + { + "marker": { + "colorbar": { + "outlinewidth": 0, + "ticks": "" + } + }, + "type": "scattermapbox" + } + ], + "scatterpolar": [ + { + "marker": { + "colorbar": { + "outlinewidth": 0, + "ticks": "" + } + }, + "type": "scatterpolar" + } + ], + "scatterpolargl": [ + { + "marker": { + "colorbar": { + "outlinewidth": 0, + "ticks": "" + } + }, + "type": "scatterpolargl" + } + ], + "scatterternary": [ + { + "marker": { + "colorbar": { + "outlinewidth": 0, + "ticks": "" + } + }, + "type": "scatterternary" + } + ], + "surface": [ + { + "colorbar": { + "outlinewidth": 0, + "ticks": "" + }, + "colorscale": [ + [ + 0, + "#0d0887" + ], + [ + 0.1111111111111111, + "#46039f" + ], + [ + 0.2222222222222222, + "#7201a8" + ], + [ + 0.3333333333333333, + "#9c179e" + ], + [ + 0.4444444444444444, + "#bd3786" + ], + [ + 0.5555555555555556, + "#d8576b" + ], + [ + 0.6666666666666666, + "#ed7953" + ], + [ + 0.7777777777777778, + "#fb9f3a" + ], + [ + 0.8888888888888888, + "#fdca26" + ], + [ + 1, + "#f0f921" + ] + ], + "type": "surface" + } + ], + "table": [ + { + "cells": { + "fill": { + "color": "#EBF0F8" + }, + "line": { + "color": "white" + } + }, + "header": { + "fill": { + "color": "#C8D4E3" + }, + "line": { + "color": "white" + } + }, + "type": "table" + } + ] + }, + "layout": { + "annotationdefaults": { + "arrowcolor": "#2a3f5f", + "arrowhead": 0, + "arrowwidth": 1 + }, + "autotypenumbers": "strict", + "coloraxis": { + "colorbar": { + "outlinewidth": 0, + "ticks": "" + } + }, + "colorscale": { + "diverging": [ + [ + 0, + "#8e0152" + ], + [ + 0.1, + "#c51b7d" + ], + [ + 0.2, + "#de77ae" + ], + [ + 0.3, + "#f1b6da" + ], + [ + 0.4, + "#fde0ef" + ], + [ + 0.5, + "#f7f7f7" + ], + [ + 0.6, + "#e6f5d0" + ], + [ + 0.7, + "#b8e186" + ], + [ + 0.8, + "#7fbc41" + ], + [ + 0.9, + "#4d9221" + ], + [ + 1, + "#276419" + ] + ], + "sequential": [ + [ + 0, + "#0d0887" + ], + [ + 0.1111111111111111, + "#46039f" + ], + [ + 0.2222222222222222, + "#7201a8" + ], + [ + 0.3333333333333333, + "#9c179e" + ], + [ + 0.4444444444444444, + "#bd3786" + ], + [ + 0.5555555555555556, + "#d8576b" + ], + [ + 0.6666666666666666, + "#ed7953" + ], + [ + 0.7777777777777778, + "#fb9f3a" + ], + [ + 0.8888888888888888, + "#fdca26" + ], + [ + 1, + "#f0f921" + ] + ], + "sequentialminus": [ + [ + 0, + "#0d0887" + ], + [ + 0.1111111111111111, + "#46039f" + ], + [ + 0.2222222222222222, + "#7201a8" + ], + [ + 0.3333333333333333, + "#9c179e" + ], + [ + 0.4444444444444444, + "#bd3786" + ], + [ + 0.5555555555555556, + "#d8576b" + ], + [ + 0.6666666666666666, + "#ed7953" + ], + [ + 0.7777777777777778, + "#fb9f3a" + ], + [ + 0.8888888888888888, + "#fdca26" + ], + [ + 1, + "#f0f921" + ] + ] + }, + "colorway": [ + "#636efa", + "#EF553B", + "#00cc96", + "#ab63fa", + "#FFA15A", + "#19d3f3", + "#FF6692", + "#B6E880", + "#FF97FF", + "#FECB52" + ], + "font": { + "color": "#2a3f5f" + }, + "geo": { + "bgcolor": "white", + "lakecolor": "white", + "landcolor": "#E5ECF6", + "showlakes": true, + "showland": true, + "subunitcolor": "white" + }, + "hoverlabel": { + "align": "left" + }, + "hovermode": "closest", + "mapbox": { + "style": "light" + }, + "paper_bgcolor": "white", + "plot_bgcolor": "#E5ECF6", + "polar": { + "angularaxis": { + "gridcolor": "white", + "linecolor": "white", + "ticks": "" + }, + "bgcolor": "#E5ECF6", + "radialaxis": { + "gridcolor": "white", + "linecolor": "white", + "ticks": "" + } + }, + "scene": { + "xaxis": { + "backgroundcolor": "#E5ECF6", + "gridcolor": "white", + "gridwidth": 2, + "linecolor": "white", + "showbackground": true, + "ticks": "", + "zerolinecolor": "white" + }, + "yaxis": { + "backgroundcolor": "#E5ECF6", + "gridcolor": "white", + "gridwidth": 2, + "linecolor": "white", + "showbackground": true, + "ticks": "", + "zerolinecolor": "white" + }, + "zaxis": { + "backgroundcolor": "#E5ECF6", + "gridcolor": "white", + "gridwidth": 2, + "linecolor": "white", + "showbackground": true, + "ticks": "", + "zerolinecolor": "white" + } + }, + "shapedefaults": { + "line": { + "color": "#2a3f5f" + } + }, + "ternary": { + "aaxis": { + "gridcolor": "white", + "linecolor": "white", + "ticks": "" + }, + "baxis": { + "gridcolor": "white", + "linecolor": "white", + "ticks": "" + }, + "bgcolor": "#E5ECF6", + "caxis": { + "gridcolor": "white", + "linecolor": "white", + "ticks": "" + } + }, + "title": { + "x": 0.05 + }, + "xaxis": { + "automargin": true, + "gridcolor": "white", + "linecolor": "white", + "ticks": "", + "title": { + "standoff": 15 + }, + "zerolinecolor": "white", + "zerolinewidth": 2 + }, + "yaxis": { + "automargin": true, + "gridcolor": "white", + "linecolor": "white", + "ticks": "", + "title": { + "standoff": 15 + }, + "zerolinecolor": "white", + "zerolinewidth": 2 + } + } + }, + "title": { + "font": { + "color": "#D9D9D9" + } + }, + "xaxis": { + "autorange": true, + "gridcolor": "#434343", + "range": [ + 0, + 3 + ], + "showgrid": true, + "tickfont": { + "color": "#C2C2C2" + }, + "title": { + "font": { + "color": "#D9D9D9" + }, + "text": "" + }, + "type": "category", + "zerolinecolor": "#666570" + }, + "yaxis": { + "autorange": true, + "gridcolor": "#434343", + "range": [ + 2.0463276111111113, + 3.595395388888889 + ], + "showgrid": true, + "tickfont": { + "color": "#C2C2C2" + }, + "title": { + "font": { + "color": "#D9D9D9" + }, + "text": "" + }, + "type": "linear", + "zerolinecolor": "#666570" + } + } + }, + "image/png": "iVBORw0KGgoAAAANSUhEUgAABEwAAAFoCAYAAABNBG49AAAAAXNSR0IArs4c6QAAIABJREFUeF7t3QeYZFWdN+DTaQKTmQBMIggmZI0roiLi6hpXBcFFohgIsuaEAoIIBswJdI2g7mdcV9ewRhAxYFYUFAaGDJOHScxMp+/53+rqrq7u6elQ3V331nufh2eAqbp1zntO3771uyc0LVy4qDs5CBAgQIAAAQIECBAgQIAAAQIEegWaBCZ6AwECBAgQIECAAAECBAgQIECgv4DARI8gQIAAAQIECBAgQIAAAQIECFQJCEx0CQIECBAgQIAAAQIECBAgQICAwEQfIECAAAECBAgQIECAAAECBAgMLWCEiR5CgAABAgQIECBAgAABAgQIEKgSEJjoEgQIECBAgAABAgQIECBAgAABgYk+QIAAAQIECBAgQIAAAQIECBAYWsAIEz2EAAECBAgQIECAAAECBAgQIFAlIDDRJQgQIECAAAECBAgQIECAAAECAhN9gAABAgQIECBAgAABAgQIECAwtIARJnoIAQIECBAgQIAAAQIECBAgQKBKQGCiSxAgQIAAAQIECBAgQIAAAQIEBCb6AAECBAgQIECAAAECBAgQIEBgaAEjTPQQAgQIECBAgAABAgQIECBAgECVgMBElyBAgAABAgQIECBAgAABAgQICEz0AQIECBAgQIAAAQIECBAgQIDA0AJGmOghBAgQIECAAAECBAgQIECAAIEqAYGJLkGAAAECBAgQIECAAAECBAgQEJjoAwQIECBAgAABAgQIECBAgACBoQWMMNFDCBAgQIAAAQIECBAgQIAAAQJVAgITXYIAAQIECBAgQIAAAQIECBAgIDDRBwgQIECAAAECBAgQIECAAAECQwsYYaKHECBAgAABAgQIECBAgAABAgSqBAQmugQBAgQIECBAgAABAgQIECBAQGCiDxAgQIAAAQIECBAgQIAAAQIEhhYwwkQPIUCAAAECBAgQIECAAAECBAhUCQhMdAkCBAgQIECAAAECBAgQIECAgMBEHyBAgAABAgQIECBAgAABAgQIDC1ghIkeQoAAAQIECBAgQIAAAQIECBCoEhCY6BIECBAgQIAAAQIECBAgQIAAAYGJPkCAAAECBAgQIECAAAECBAgQGFrACBM9hAABAgQIECBAgAABAgQIECBQJSAw0SUIECBAgAABAgQIECBAgAABAgITfYAAAQIECBAgQIAAAQIECBAgMLSAESZ6CAECBAgQIECAAAECBAgQIECgSkBgoksQIECAAAECBAgQIECAAAECBAQm+gABAgQIECBAgAABAgQIECBAYGgBI0z0EAIECBAgQIAAAQIECBAgQIBAlYDARJcgQIAAAQIECBAgQIAAAQIECAhM9AECBAgQIECAAAECBAgQIECAwNACRpjoIQQIECBAgAABAgQIECBAgACBKgGBiS5BgAABAgQIECBAgAABAgQIEBCY6AMECBAgQIAAAQIECBAgQIAAgaEFjDDRQwgQIECAAAECBAgQIECAAAECVQICE12CAAECBAgQIECAAAECBAgQICAw0QcIECBAgAABAgQIECBAgAABAkMLGGGihxAgQIAAAQIECBAgQIAAAQIEqgQEJroEAQIECBAgQIAAAQIECBAgQEBgog8QIECAAAECBAgQIECAAAECBIYWMMJEDyFAgAABAgQIECBAgAABAgQIVAkITHQJAgQIECBAgAABAgQIECBAgIDARB8gQIAAAQIECBAgQIAAAQIECAwtYISJHkKAAAECBAgQIECAAAECBAgQqBIQmOgSBAgQIECAAAECBAgQIECAAAGBiT5AgAABAgQIECBAgAABAgQIEBhawAgTPYQAAQIECBAgQIAAAQIECBAgUCUgMNElCBAgQIAAAQIECBAgQIAAAQICE32AAAECBAgQIECAAAECBAgQIDC0gBEmeggBAgQIECBAgAABAgQIECBAoEpAYKJLECBAgAABAgQIECBAgAABAgQEJvoAAQIECBAgQIAAAQIECBAgQGBoASNM9BACBAgQIECAAAECBAgQIECAQJWAwESXIECAAAECBAgQIECAAAECBAgITPQBAgQIECBAgAABAgQIECBAgMDQAkaY6CEECBAgQIAAAQIECBAgQIAAgSoBgYkuQYAAAQIECBAgQIAAAQIECBAQmOgDBAgQIECAAAECBAgQIECAAIGhBYww0UMIECBAgAABAgQIECBAgAABAlUCAhNdggABAgQIECBAgAABAgQIECAgMNEHCBAgQIAAAQIECBAgQIAAAQJDCxhhoocQIECAAAECBAgQIECAAAECBKoEBCa6BAECBAgQIECAAAECBAgQIEBAYKIPECBAgAABAgQIECBAgAABAgSGFjDCRA8hQIAAAQIECBAgQIAAAQIECFQJCEx0CQIECBAgQIAAAQIECBAgQICAwEQfIECAAAECBAgQIECAAAECBAgMLWCEiR5CgAABAgQIECBAgAABAgQIEKgSEJjoEgQIECBAgAABAgQIECBAgAABgYk+QIAAAQIECBAgQIAAAQIECBAYWsAIEz2EAAECBAgQIECAAAECBAgQIFAlIDDRJQgQIECAAAECBAgQIECAAAECAhN9gAABAgQIECBAgAABAgQIECAwtIARJnoIAQIECBAgQIAAAQIECBAgQKBKQGCiSxAgQIAAAQIECBAgQIAAAQIEBCb6AAECBAgQIECAAAECBAgQIEBgaAEjTPQQAgQIECBAgAABAgQIECBAgECVgMBElyBAgAABAgQIECBAgAABAgQICEz0AQIECBAgQIAAAQIECBAgQIDA0AJGmOghBAgQIECAAAECBAgQIECAAIEqAYGJLkGAAAECBAgQIECAAAECBAgQEJjoAwQIECBAgAABAgQIECBAgACBoQWMMNFDCBAgQIAAAQIECBAgQIAAAQJVAgITXYIAAQIECBAgQIAAAQIECBAgIDDRBwgQIECAAAECBAgQIECAAAECQwsYYaKHECBAgAABAgQIECBAgAABAgSqBAQmugQBAgQIECBAgAABAgQIECBAQGCiDxAgQIAAAQIECBAgQIAAAQIEhhYwwkQPIUCAAAECBAgQIECAAAECBAhUCQhMdAkCBAgQIECAAAECBAgQIECAgMBEHyBAgACB4QhMmzYtLV++LN14403DebnXECBAIHcCD3zgQen22+9I27dvz13ZFZgAAQIExl/ACJPxN/YJBAgQyKWAwCSXzabQBAiMQEBgMgIsLyVAgEADCghMGrDRVZkAAQLDERCYDEfJawgQyLOAwCTPrafsBAgQGH8Bgcn4G/sEAgQI5FJAYJLLZlNoAgRGICAwGQGWlxIgQKABBQQmDdjoqkyAAIHhCAhMhqPkNQQI5FlAYJLn1lN2AgQIjL9AQwYmTU1NafHixWnu3Dlp5cpb07Zt28Zf2icQIEAgZwICk5w1mOISIDBiAYHJiMm8gQABAg0l0HCByZFHHpnOOusVKUKTOLq7u9NPf3pluvTSSwdt+BNOOD4dffTRA/7upJNOFrQ01I+KyhJoPAGBSeO1uRoTaDQBgUmjtbj6EiBAYGQCDReYPOUpT0kH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6TsRoDxu39L0nQ3b+k/fuWdTY0/fEZj48SFAgACBoQQEJvoHAQIECAwqIDDRMQgUR2B6W1Pf1sUHTUv779maVe4fq9v7rX/S2VWcOg+nJgKT4Sh5DQECBBpXoCEDk+bm5rR48eK0c+fOtHr16sZtfTUnQIDAEAICE92DQHEF9tuztV+AskdbU1bZn9+8vSdA2ZGuu6f403cEJsXt42pGgACBWgg0XGDyvOc9N5100kmpqal0Y7B169b06U9/Jl199dWDep5wwvHp6KOPHvB3J510ctq2bVst2sA5CBAgUJcCApO6bBaFIjAuAofuO7U3QHn0sinZZ6zb2pWuXFEOULan1ZuLN31HYDIu3clJCRAgUBiBhgtM/u3fnpP22Wdx+p//+Z80a9bM9Na3vjULT17ykpcO2qgnnnhCev7zn58uvPAd/f7+uuuuS93dVp0vzE+CihAgMEBAYKJTEGhMgVnTmrNFY7P1Tw6clpbObckgrl/Vnq66qS9AKYKOwKQIragOBAgQGD+BhgtMqilPO+209PSn/2s67rgXpfb29gHS5cDkmGOOHb9WcGYCBAjUoYDApA4bRZEITILAgQtae3feiQClraU0SveqitEn19878B5qEoo64o8UmIyYzBsIECDQUAINH5hcdtmlac6cOen4408YtOEjMDnqqKPSqlWrskAlRpZcfvkVg4YrDdVzVJYAgcILCEwK38QqSGBUAk/Yf2pvgPJPi0vTd1Zv6ew3+mTt1nysHiswGVUX8CYCBAg0jEBDByannfby9PSnPz1dccUX0re+9a1BG/2II45Iz3rWM9OWLVvSggUL0tKlS9Ntt92eXve612Wv32OPPRqms6goAQKNJTBlypS09957pdtvv6OxKq62BAgMW2De9Kb0pAOmpMP3b0tPOqAtLZrZnL33+lUd6epb2tPPV7anX9xav6NPli9flu69d1W2EYCDAAECRRSw7ubYWrVhA5MYNRKjR66++ufpwx/+8LAVzzrrrPSUpxzZO4XnwAMfMOz3eiEBAgTyJBA7ikVosn379jwVW1kJEJhEgQfM606PXdyVHrukOx26uDTKpKs7pd/c3Zyuvasp+3PlxtKUnno4YiRdhCVdXfkYEVMPZspAgEC+BFasuDlfBa6z0jZkYHLKKSen5z73ueknP/lJuvTSy0bUJC94wdHp+OOPT6ecckra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Vj0CBAgQIECAAAECBAgQIEBg5AKFC0ymTp2a2tpa05YtW0euUfGOJz7xiWnhwgXpm9/8nzGdp/LNtSpbzQrkRAQIFF4grjvPetaz0qJFi9JXvvKVtHHjxnGv81577ZVaWlrSPffck7q7u8f983wAAQIEJlugubk5vfjFp6TvfOe7afXq1ZNdHJ9PgMAIBGbPnpXmz5+f7rzzrtTe3p69M+5lnv3sZ6XPfvZzg55p5swZqaOjM23fvn0EnzS5L33mM5+R1qxZm373u98NKMjSpUvTU55yZLriii9kfzd79ux0//3393pMbskn99PHPTD56Ec/khYvXtxby+iE11331/TBD34wbdu2rea1v+iid6QDDzwwHXfci8Z07osvvigtW7YsnXzyKSM6T3V977vvvvSRj3w0/elPf0q1KttwCvS2t52XHv7wh/e+9OUvPy2tX79+OG/1GgIEJlFgqGvISIvV1taWvvSlL6aurq60devWdMkll6R//OPGkZ4mnXPOOemuu+5Kn//853f53ghIXv3qV6XHP/7xqampKXtdhCUrVqxIZ5/9lhF/pjcQIFDfAnFz/aEPfTD9/OfXpA9/+MO9hT3vvPPSIYc8LL3kJS8Z88OrSoH3ve99afHifdLxx58wKMxDHvLgdNFFF/X7u3h49v73vz/95S9/GXfMWCQ7rrcf+MAH0y9+8Ythf577tWFTeSGBmgs897nPTccf/6IU90vlIwLPiy9+Z/Z98pWv/I90zDHHDvrw54tf/EL2YOiNb3xTzcu1qxN+9atfST/5yU/TJz/5yd6XvPSlL0nPfOYzs3Lu7vjMZz6dbr/99vT2t1844KXPfvaz00tecmp6wQuOSbNmzUqf//zn0te//vX0//7fl3d32pr8fT1fCyckMIlfIu9//wfSnnvOS//8z49Nhx/+xOwp55lnvqLmqdX++++f9txzz/T73/9+TI335je/OR144ANSBA0jOeLLTtQ3frHvs8/idOqpL07Tp0/PApx99923JmUbTnniy8tLX/rS9K//+rR04okn5Sr9HE79vIZAUQWGuoZE8DGSI56MnHrqqenf//241NnZOZK39nvtpz/9qSwwOf/8C3Z5jviS9PCH/1P6/ve/n77xjf9OM2bMSE9/+tPTM57x9PTCF/77qD/bGwkQqF+BN7zh9elxj3tces1rXpvuvPPO9JCH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gUlNGJ2EAAECBAgQIECAAAECBAgQKJKAwKRIrakuBAgQIECAAAECBAgQIECAQE0EBCY1YXQSAgQIECBAgAABAgQIECBAoEgCApMitaa6ECBAgAABAgQIECBAgAABAjUREJjUhNFJCBAgQIAAAQIECBAgQIAAgSIJCEyK1JrqQoAAAQIECBAgQIAAAQIECNREQGBSE0YnIUCAAAECBAgQIECAAAECBIokIDApUmuqCwECBAgQIECAAAECBAgQIFATAYFJTRidhAABAgQIECBAgAABAgQIECiSgMCkSK2pLgQIECBAgAABAgQIECBAgEBNBAQmNWF0EgIECBAgQIAAAQIECBAgQKBIAgKTIrWmuhAgQIAAAQIECBAgQIAAAQI1ERCY1ITRSQgQIECAAAECBAgQIECAAIEiCQhMitSa6kKAAAECBAgQIECAAAECBAjUREBgUhNGJyFAgAABAgQIECBAgAABAgSKJCAwKVJrqgsBAgQIECBAgAABAgQIECBQEwGBSU0YnYQAAQIECBAgQIAAAQIECBAokoDApEitqS4ECBAgQIAAAQIECBAgQIBATQQEJjVhdBICBAgQIECAAAECBAgQIECgSAICkyK1proQIECAAAECBAgQIECAAAECNREQmNSE0UkIECBAgAABAgQIECBAgACBIgkITIrUmupCgAABAgQIECBAgAABAgQI1ERAYFITRichQIAAAQIECBAgQIAAAQIEiiQgMClSa6oLAQIECBAgQIAAAQIECBAgUBMBgUlNGJ2EAAECBAgQIECAAAECBAgQKJKAwKRIrakuBAgQIECAAAECBAgQIECAQE0EBCY1YXQSAgQIECBAgAABAgQIECBAoEgCApMitaa6ECBAgAABAgQIECBAgAABAjUREJjUhNFJCBAgQIAAAQIECBAgQIAAgSIJCEyK1JrqQoAAAQIECBAgQIAAAQIECNREQGBSE0YnIUCAAAECBAgQIECAAAECBIokIDApUmuqCwECBAgQIECAAAECBAgQIFATAYFJTRidhAABAgQIECBAgAABAgQIECiSgMCkSK2pLgQIECBAgAABAgQIECBAgEBNBAQmNWF0EgIECBAgQIAAAQIECBAgQKBIAgKTIrWmuhAgQIAAAQIECBAgQIAAAQI1ERCY1ITRSQgQIECAAAECBAgQIECAAIEiCQhMitSa6kKAAAECBAgQIECAAAECBAjUREBgUhNGJyFAgAABAgQIECBAgAABAgSKJCAwKVJrqgsBAgQIECBAgAABAgQIECBQEwGBSU0YnYQAAQIECBAgQIAAAQIECBAokoDApEitqS4ECBAgQIAAAQIECBAgQIBATQQEJjVhdBICBAgQIECAAAECBAgQIECgSAICkyK1proQIECAAAECBAgQIECAAAECNREQmNSE0UkIECBAgAABAgQIECBAgACBIgkITIrUmupCgAABAgQIECBAgAABAgQI1ERAYFITRichQIAAAQIECBAgQIAAAQIEiiQgMClSa6oLAQIECBAgQIAAAQIECBAgUBMBgUlNGJ2EAAECBAgQIECAAAECBAgQKJKAwKRIrakuBAgQIECAAAECBAgQIECAQE0EBCY1YXQSAgQIECBAgAABAgQIECBAoEgCApMitaa6ECBAgAABAgQIECBAgAABAjUREJjUhNFJCBAgQIAAAQIECBAgQIAAgSIJCEyK1JrqQoAAAQIECBAgQIAAAQIECNREQGBSE0YnIUCAAAECBAgQIECAAAECBIokIDApUmuqCwECBAgQIECAAAECBAgQIFATAYFJTRidhAABAgQIECBAgAABAgQIECiSgMCkSK2pLgQIECBAgAABAgQIECBAgEBNBAQmNWF0EgIECBAgQIAAAQIECBAgQKBIAv8fMsRGLFewubMAAAAASUVORK5CYII=", + "text/html": [ + "
" + ] + }, + "metadata": {}, + "output_type": "display_data" + }, + { + "data": { + "text/html": [ + "
\n", + "\n", + "\n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
DTSubjectNameExchangeNameRICMktCapCompanyUsdShareholdersEquityUsdPeDebtToAssetsBetaEpsGics...SearchAllCategoryRCSAssetCategoryRCSCurrencyLeafAssetStateBusinessEntityPIIssueISINCUSIPCinCUSIPSolvencyMargin
216Domino's Pizza IncNYSE ConsolidatedDPZ12191192133-420953600027.9036113.5179420.74782912.34213Consumer Discretionary/Consumer Services/Hotel......EquitiesA:1LUS DollarACQUOTExEQUITY17480310US25754A201525754A201<NA><NA>
1720Perfect CorpNYSE ConsolidatedPERF.K864508341-19044200022.7399993.142108-0.2018580.32146Information Technology/Software & Services/Sof......EquitiesA:1LUS DollarACQUOTExEQUITY497816921KYG7006A1094<NA>G7006A109<NA>
165Yum! Brands IncNYSE ConsolidatedYUM36247594596-837300000029.3138092.4034530.9906154.38974Consumer Discretionary/Consumer Services/Hotel......EquitiesA:1LUS DollarACQUOTExEQUITY728177US9884981013988498101<NA><NA>
1765Chinos Holdings IncNYSE ConsolidatedCHIHO.K<NA>-1569749000<NA>2.123781<NA><NA><NA>...EquitiesA:1LUS DollarACQUOTExEQUITY439963932<NA><NA><NA><NA>
\n", + "

4 rows × 42 columns

\n", + "
" + ], + "text/plain": [ + " DTSubjectName ExchangeName RIC MktCapCompanyUsd \\\n", + "216 Domino's Pizza Inc NYSE Consolidated DPZ 12191192133 \n", + "1720 Perfect Corp NYSE Consolidated PERF.K 864508341 \n", + "165 Yum! Brands Inc NYSE Consolidated YUM 36247594596 \n", + "1765 Chinos Holdings Inc NYSE Consolidated CHIHO.K \n", + "\n", + " ShareholdersEquityUsd Pe DebtToAssets Beta Eps \\\n", + "216 -4209536000 27.903611 3.517942 0.747829 12.34213 \n", + "1720 -190442000 22.739999 3.142108 -0.201858 0.32146 \n", + "165 -8373000000 29.313809 2.403453 0.990615 4.38974 \n", + "1765 -1569749000 2.123781 \n", + "\n", + " Gics ... \\\n", + "216 Consumer Discretionary/Consumer Services/Hotel... ... \n", + "1720 Information Technology/Software & Services/Sof... ... \n", + "165 Consumer Discretionary/Consumer Services/Hotel... ... \n", + "1765 ... \n", + "\n", + " SearchAllCategory RCSAssetCategory RCSCurrencyLeaf AssetState \\\n", + "216 Equities A:1L US Dollar AC \n", + "1720 Equities A:1L US Dollar AC \n", + "165 Equities A:1L US Dollar AC \n", + "1765 Equities A:1L US Dollar AC \n", + "\n", + " BusinessEntity PI IssueISIN CUSIP CinCUSIP \\\n", + "216 QUOTExEQUITY 17480310 US25754A2015 25754A201 \n", + "1720 QUOTExEQUITY 497816921 KYG7006A1094 G7006A109 \n", + "165 QUOTExEQUITY 728177 US9884981013 988498101 \n", + "1765 QUOTExEQUITY 439963932 \n", + "\n", + " SolvencyMargin \n", + "216 \n", + "1720 \n", + "165 \n", + "1765 \n", + "\n", + "[4 rows x 42 columns]" + ] + }, + "metadata": {}, + "output_type": "display_data" + } + ], + "source": [ + "equities = nyse_equities.query(\"DebtToAssets >= 2\")\n", + "plot_and_display(equities, \"DebtToAssets\")" + ] + }, + { + "cell_type": "markdown", + "id": "6b21e8fc-5207-4272-a947-c2f6874ff76c", + "metadata": { + "tags": [] + }, + "source": [ + "### Get Vodafone related equities and use get_data() to retrieve additional information " + ] + }, + { + "cell_type": "code", + "execution_count": 14, + "id": "8637a711-90ea-4642-b517-e793ae70327f", + "metadata": {}, + "outputs": [ + { + "data": { + "text/html": [ + "
\n", + "\n", + "\n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
InstrumentDateRevenue - SmartEstimate®Net Income - SmartEstimate®Earnings Per Share - SmartEstimate®
0VOD.L2023-01-044591225437030122922300.10508
1VODA.NS2023-01-02426431254480-285111247260-8.93096
2IPO-VOD.NZNaT<NA><NA><NA>
3SYN.ICNaT<NA><NA><NA>
4VFQS.QA2022-12-2129769098404539323800.10543
..................
77VODl.TWEA2023-01-044591225437030122922300.10508
78SYNr.BCONaT<NA><NA><NA>
79VODl.TRXA2023-01-044591225437030122922300.10508
80AU0000090128.TWEA2023-01-0453455134602943312000.16103
81VODl.STp2023-01-044591225437030122922300.10508
\n", + "

82 rows × 5 columns

\n", + "
" + ], + "text/plain": [ + " Instrument Date Revenue - SmartEstimate® \\\n", + "0 VOD.L 2023-01-04 45912254370 \n", + "1 VODA.NS 2023-01-02 426431254480 \n", + "2 IPO-VOD.NZ NaT \n", + "3 SYN.IC NaT \n", + "4 VFQS.QA 2022-12-21 2976909840 \n", + ".. ... ... ... \n", + "77 VODl.TWEA 2023-01-04 45912254370 \n", + "78 SYNr.BCO NaT \n", + "79 VODl.TRXA 2023-01-04 45912254370 \n", + "80 AU0000090128.TWEA 2023-01-04 5345513460 \n", + "81 VODl.STp 2023-01-04 45912254370 \n", + "\n", + " Net Income - SmartEstimate® Earnings Per Share - SmartEstimate® \n", + "0 3012292230 0.10508 \n", + "1 -285111247260 -8.93096 \n", + "2 \n", + "3 \n", + "4 453932380 0.10543 \n", + ".. ... ... \n", + "77 3012292230 0.10508 \n", + "78 \n", + "79 3012292230 0.10508 \n", + "80 294331200 0.16103 \n", + "81 3012292230 0.10508 \n", + "\n", + "[82 rows x 5 columns]" + ] + }, + "execution_count": 14, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "vod_equities = equity.search(what=\"vodafone\")\n", + "rd.get_data(\n", + " universe=vod_equities['RIC'].to_list(),\n", + " fields=['TR.RevenueSmartEst.date', 'TR.RevenueSmartEst', 'TR.NetprofitSmartEst', 'TR.EpsSmartEst']\n", + ")" + ] + }, + { + "cell_type": "markdown", + "id": "6ad8f2b3-9d4e-43a6-be6a-eb61501d40bd", + "metadata": {}, + "source": [ + "## Close the session" + ] + }, + { + "cell_type": "code", + "execution_count": 15, + "id": "856a79a5-6862-44ba-8b4d-e4b1cdc4da18", + "metadata": { + "tags": [] + }, + "outputs": [], + "source": [ + "rd.close_session()" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "id": "7e28cae5-e84e-495c-8698-fa19e908187c", + "metadata": {}, + "outputs": [], + "source": [] + } + ], + "metadata": { + "kernelspec": { + "display_name": "Python 3 (ipykernel)", + "language": "python", + "name": "python3" + }, + "language_info": { + "codemirror_mode": { + "name": "ipython", + "version": 3 + }, + "file_extension": ".py", + "mimetype": "text/x-python", + "name": "python", + "nbconvert_exporter": "python", + "pygments_lexer": "ipython3", + "version": "3.9.7" + } + }, + "nbformat": 4, + "nbformat_minor": 5 +} diff --git a/Examples/1-Access/EX-1.01.06.2-SearchTemplates-PhysicalAssets.ipynb b/Examples/1-Access/EX-1.01.06.2-SearchTemplates-PhysicalAssets.ipynb new file mode 100644 index 0000000..619e357 --- /dev/null +++ b/Examples/1-Access/EX-1.01.06.2-SearchTemplates-PhysicalAssets.ipynb @@ -0,0 +1,832 @@ +{ + "cells": [ + { + "cell_type": "markdown", + "id": "c5b30ef8-32e8-4422-a8c2-ba4daa1c1466", + "metadata": {}, + "source": [ + "----\n", + "\n", + "\n", + "# Data Library for Python\n", + "\n", + "----" + ] + }, + { + "cell_type": "markdown", + "id": "39e8ef94-7bca-43d7-945a-f883bdfd4622", + "metadata": { + "tags": [] + }, + "source": [ + "## Access layer - Search templates examples - Physical Assets Search\n", + "\n", + "This notebook illustrates the Search Template functionality of the Refinitiv Data Library. The \"Mines\" and \"VesselsBoundFor\" templates shown here are template examples that you can modify and adapt to your needs. They are defined in the \"search-templates.config.json\" configuration file. Below is a brief description of the parameters you can use for each template definition." + ] + }, + { + "cell_type": "markdown", + "id": "0eb115d7-2c74-401a-890e-1abc71275e72", + "metadata": { + "tags": [] + }, + "source": [ + "**Search templates are defined using the following JSON structure:**\n", + "- **description** (string): Description of the template.\n", + "- **parameters** (object): Parameters of the template. These parameters can be used as placeholders in the request_body of the template and as named parameters of the search() method of the template. Each parameter has a name, a description, and an optional default value.\n", + "- **request_body** (object): Body of the request sent to the Search REST API. This request body can include template parameters surrounded by '#{' and '}' (for example: “#{my_param}”). More details on the structure of the request body can be found in the [Search API reference guide](https://apidocs.refinitiv.com/Apps/ApiDocs#/details/L2Rpc2NvdmVyeS9zZWFyY2gvdjE=/Lw==/POST/README) (access to this guide requires a Refinitiv Workspace account or RDP account to log in).\n", + " \n", + "**Template example:**\n", + " \n", + "```json\n", + "\"MyTemplate\": {\n", + " \"description\": \"Search template example.\",\n", + " \"parameters\": {\n", + " \"name\": {\n", + " \"description\": \"Name of the person to search for.\",\n", + " \"default\": \"Edison\"\n", + " }\n", + " },\n", + " \"request_body\": {\n", + " \"Query\": \"#{name}\",\n", + " \"View\":\"People\",\n", + " \"Top\":10\n", + " }\n", + "} \n", + "``` \n", + "\n", + "**Example of usage:**\n", + "\n", + "``` \n", + "rd.discovery.search_templates[\"MyTemplate\"].search(name=\"Pasteur\")\n", + "``` \n", + " " + ] + }, + { + "cell_type": "markdown", + "id": "aad3a1d6-80aa-4dda-a86c-191ba30d42bf", + "metadata": {}, + "source": [ + "#### Learn more\n", + "\n", + "To learn more about the Refinitiv Data Library for Python please join the Refinitiv Developer Community. By [registering](https://developers.refinitiv.com/iam/register) and [logging](https://developers.refinitiv.com/content/devportal/en_us/initCookie.html) into the Refinitiv Developer Community portal you will have free access to a number of learning materials like \n", + " [Quick Start guides](https://developers.refinitiv.com/en/api-catalog/refinitiv-data-platform/refinitiv-data-library-for-python/quick-start), \n", + " [Tutorials](https://developers.refinitiv.com/en/api-catalog/refinitiv-data-platform/refinitiv-data-library-for-python/learning), \n", + " [Documentation](https://developers.refinitiv.com/en/api-catalog/refinitiv-data-platform/refinitiv-data-library-for-python/docs)\n", + " and much more.\n", + "\n", + "#### Getting Help and Support\n", + "\n", + "If you have any questions regarding using the API, please post them on \n", + "the [Refinitiv Data Q&A Forum](https://community.developers.refinitiv.com/spaces/321/index.html). \n", + "The Refinitiv Developer Community will be happy to help. \n", + "\n", + "----" + ] + }, + { + "cell_type": "markdown", + "id": "842b6e91-6cd4-472f-9b28-54d04f25f4c2", + "metadata": { + "tags": [] + }, + "source": [ + "## Set the configuration file location\n", + "For a better ease of use, you have the option to set initialization parameters of the Refinitiv Data Library in the _refinitiv-data.config.json_ configuration file. This file must be located beside your notebook, in your user folder or in a folder defined by the _RD_LIB_CONFIG_PATH_ environment variable. The _RD_LIB_CONFIG_PATH_ environment variable is the option used by this series of examples. The following code sets this environment variable. " + ] + }, + { + "cell_type": "code", + "execution_count": 1, + "id": "92bb79b3-cd2c-4e98-b79e-2d4f873856d6", + "metadata": {}, + "outputs": [], + "source": [ + "import os\n", + "os.environ[\"RD_LIB_CONFIG_PATH\"] = \"../../Configuration\"" + ] + }, + { + "cell_type": "markdown", + "id": "018d3917-d879-4651-961f-067e47ec1f2f", + "metadata": {}, + "source": [ + "## Some Imports to start with" + ] + }, + { + "cell_type": "code", + "execution_count": 2, + "id": "72e9936a-da3c-439f-a4c7-4a86c017581a", + "metadata": {}, + "outputs": [], + "source": [ + "import refinitiv.data as rd\n", + "from physical_assets_map import PhysicalAssetsMap" + ] + }, + { + "cell_type": "markdown", + "id": "9a4038d0-89fa-46e2-93aa-513e04a8643e", + "metadata": {}, + "source": [ + "## Open the data session\n", + "\n", + "The open_session() function creates and open sessions based on the information contained in the refinitiv-data.config.json configuration file. Please edit this file to set the session type and other parameters required for the session you want to open." + ] + }, + { + "cell_type": "code", + "execution_count": 3, + "id": "9807577a-b58e-449a-863d-cff7b55050c5", + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "" + ] + }, + "execution_count": 3, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "rd.open_session()" + ] + }, + { + "cell_type": "markdown", + "id": "8483d5d5-c4d2-41e0-831d-8141788ac740", + "metadata": {}, + "source": [ + "## Load the search templates configuration file" + ] + }, + { + "cell_type": "code", + "execution_count": 4, + "id": "5cd7d982-ac37-43e5-a420-09246c0e74df", + "metadata": { + "tags": [] + }, + "outputs": [ + { + "data": { + "text/plain": [ + "" + ] + }, + "execution_count": 4, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "rd.load_config(\"search-templates.config.json\")" + ] + }, + { + "cell_type": "markdown", + "id": "9e4763b3-8258-4b30-bb35-2169c0beac6d", + "metadata": {}, + "source": [ + "## Mines Search Template example" + ] + }, + { + "cell_type": "markdown", + "id": "3304dcdd-c4c9-4c5f-b8fe-ebd5312a7ee3", + "metadata": {}, + "source": [ + "### Access the template" + ] + }, + { + "cell_type": "code", + "execution_count": 5, + "id": "4213c4fd", + "metadata": {}, + "outputs": [], + "source": [ + "mines = rd.discovery.search_templates[\"Mines\"]" + ] + }, + { + "cell_type": "markdown", + "id": "932cbe35-96b4-47f4-a311-f5e5399dbea8", + "metadata": { + "tags": [] + }, + "source": [ + "### Get help about this template" + ] + }, + { + "cell_type": "code", + "execution_count": 6, + "id": "ff38bf27", + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Help on DiscoverySearchTemplate in module refinitiv.data.discovery._search_templates.search:\n", + "\n", + "\n", + " Find coordinates of mines in a region.\n", + " \n", + " Methods\n", + " -------\n", + " search\n", + " commodity\n", + " Commodity extracted from the mine. For example: 'Gold', 'Nickel', 'Zinc', 'Cooper', 'Palladium', 'Lead', etc.\n", + " \n", + " region\n", + " Region to search in. For example: 'Botswana', 'Brazil', 'Canada', 'Chile', 'Costa Rica', 'Cuba', 'United States', 'Guyana', 'Peru', 'South Africa', etc\n", + "\n" + ] + } + ], + "source": [ + "help(mines)" + ] + }, + { + "cell_type": "markdown", + "id": "5bb0c4b9-072f-47fc-a5f7-182a39b5cf5b", + "metadata": { + "tags": [] + }, + "source": [ + "### Use the predefined parameters of the template to search for gold mines in south Africa" + ] + }, + { + "cell_type": "code", + "execution_count": 7, + "id": "632a8500-bf51-4c39-8d83-360d9c6500aa", + "metadata": {}, + "outputs": [ + { + "data": { + "application/vnd.jupyter.widget-view+json": { + "model_id": "92b9c5198b4e4d6c9e4558b8490d50a3", + "version_major": 2, + "version_minor": 0 + }, + "text/plain": [ + "Map(center=[-26.416700363159, 27.666700363159], controls=(ZoomControl(options=['position', 'zoom_in_text', 'zo…" + ] + }, + "metadata": {}, + "output_type": "display_data" + }, + { + "data": { + "text/html": [ + "
\n", + "\n", + "\n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
RICRCSRegionLeafRCSCommodityTypeLeafDTSubjectNamePhysicalAssetStatusLatitudeLongitude
0C}PX7309413492South AfricaGoldSouth DeepNormal Operation-26.416727.6667
1C}PX7309413493South AfricaGoldTargetNormal Operation-27.7626.629999
2C}PX7309413494South AfricaGoldTshepongNormal Operation-27.86669926.6833
3C}PX7309413495South AfricaGoldTau LekoaNormal Operation-27.026.613001
4C}PX7309413496South AfricaGoldKopanangNormal Operation-26.9826.745001
........................
87C}PX7310050420South AfricaGoldMispahPrefeasibility-26.99656126.785402
88C}PX7310050444South AfricaGoldBloemhoekFeasibility-27.53497927.196499
89C}PX7310050445South AfricaGoldDe Bron MerriespruitFeasibility-27.57172827.19503
90C}PX7310050461South AfricaGoldMoab MODNormal Operation-26.98962226.802376
91C}PX7310054031South AfricaGoldFar West Gold Recoveries (FWGR)Normal Operation-26.38946527.360319
\n", + "

92 rows × 7 columns

\n", + "
" + ], + "text/plain": [ + " RIC RCSRegionLeaf RCSCommodityTypeLeaf \\\n", + "0 C}PX7309413492 South Africa Gold \n", + "1 C}PX7309413493 South Africa Gold \n", + "2 C}PX7309413494 South Africa Gold \n", + "3 C}PX7309413495 South Africa Gold \n", + "4 C}PX7309413496 South Africa Gold \n", + ".. ... ... ... \n", + "87 C}PX7310050420 South Africa Gold \n", + "88 C}PX7310050444 South Africa Gold \n", + "89 C}PX7310050445 South Africa Gold \n", + "90 C}PX7310050461 South Africa Gold \n", + "91 C}PX7310054031 South Africa Gold \n", + "\n", + " DTSubjectName PhysicalAssetStatus Latitude Longitude \n", + "0 South Deep Normal Operation -26.4167 27.6667 \n", + "1 Target Normal Operation -27.76 26.629999 \n", + "2 Tshepong Normal Operation -27.866699 26.6833 \n", + "3 Tau Lekoa Normal Operation -27.0 26.613001 \n", + "4 Kopanang Normal Operation -26.98 26.745001 \n", + ".. ... ... ... ... \n", + "87 Mispah Prefeasibility -26.996561 26.785402 \n", + "88 Bloemhoek Feasibility -27.534979 27.196499 \n", + "89 De Bron Merriespruit Feasibility -27.571728 27.19503 \n", + "90 Moab MOD Normal Operation -26.989622 26.802376 \n", + "91 Far West Gold Recoveries (FWGR) Normal Operation -26.389465 27.360319 \n", + "\n", + "[92 rows x 7 columns]" + ] + }, + "metadata": {}, + "output_type": "display_data" + } + ], + "source": [ + "mines_coordinates = mines.search(commodity=\"Gold\", region=\"South Africa\")\n", + "\n", + "PhysicalAssetsMap().plot(mines_coordinates).show()\n", + "display(mines_coordinates)" + ] + }, + { + "cell_type": "markdown", + "id": "c43add9f-dc22-4309-bbc4-1f030cfcea99", + "metadata": {}, + "source": [ + "## VesselsBoundFor Search Template example" + ] + }, + { + "cell_type": "markdown", + "id": "2b426576-4679-4bf9-bf9e-caaf71e39455", + "metadata": {}, + "source": [ + "### Access the template" + ] + }, + { + "cell_type": "code", + "execution_count": 8, + "id": "236edd44-4a3d-41c5-8850-f4e69af95e75", + "metadata": {}, + "outputs": [], + "source": [ + "vessels = rd.discovery.search_templates[\"VesselsBoundFor\"]" + ] + }, + { + "cell_type": "markdown", + "id": "c5cab7bf-5759-415f-9d85-4954e1c867eb", + "metadata": { + "tags": [] + }, + "source": [ + "### Get help about this template" + ] + }, + { + "cell_type": "code", + "execution_count": 9, + "id": "1a03cf21-4a98-441a-baa6-f00e1dbe744b", + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Help on DiscoverySearchTemplate in module refinitiv.data.discovery._search_templates.search:\n", + "\n", + "\n", + " Search for vessels heading to a destination.\n", + " \n", + " Methods\n", + " -------\n", + " search\n", + " destination\n", + " Vessel's destination\n", + "\n" + ] + } + ], + "source": [ + "help(vessels)" + ] + }, + { + "cell_type": "markdown", + "id": "b4a54bbb-7a0f-42d3-925b-db93e3ab5e88", + "metadata": { + "tags": [] + }, + "source": [ + "### Use the predefined parameters of the template to search for vessels heading to Le Havre" + ] + }, + { + "cell_type": "code", + "execution_count": 10, + "id": "d67bdfb3-8559-4bc0-908c-5fb1fd38d6a4", + "metadata": {}, + "outputs": [ + { + "data": { + "application/vnd.jupyter.widget-view+json": { + "model_id": "ae1e546b2e864828837ff18ac7351979", + "version_major": 2, + "version_minor": 0 + }, + "text/plain": [ + "Map(center=[49.62451171875, -0.222780004144], controls=(ZoomControl(options=['position', 'zoom_in_text', 'zoom…" + ] + }, + "metadata": {}, + "output_type": "display_data" + }, + { + "data": { + "text/html": [ + "
\n", + "\n", + "\n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
RICDestinationPortDTSubjectNameDTSimpleTypeAISStatusGrossTonnageLatitudeLongitude
0C}KV7309507586[FRLEH [Le Havre]]BLUE NOVAVLCCAt Anchor15722549.624512-0.22278
1C}CC7309502358[FRLEH [Le Havre]]COSCO FAITHContainerAt Anchor14182349.607471-0.215615
2C}CC7309488784[FRLEH [Le Havre]]ONE OLYMPUSContainerUnderway Using Engine9879950.6841960.838658
3C}CC7309490282[FRLEH [Le Havre]]MAERSK SURABAYAContainerUnderway Using Engine9432250.9511451.354597
4C}KS7309500780[FR LEH [Le Havre]]AFRODITISuezmaxAt Anchor8471649.61507-0.252658
...........................
59C}VX7309985382[LE HAVRE [Le Havre]]FV PARTI DE RIENOther MiscellaneousUnderway Using Engine<NA>49.4823530.11704
60C}BT7309985659[LEHAVRE [Le Havre]]ROUEN BEN0Other DryUnderway Using Engine<NA>49.485550.114852
61C}VX7309986488[LE HAVRE [Le Havre]]FV LOCEANOther MiscellaneousEngaged In Fishing<NA>50.4001050.308875
62C}VX7310029866[LE HAVRE [Le Havre]]MA VICTOIREOther MiscellaneousEngaged In Fishing<NA>49.4812740.11961
63C}VX7310029871[LE HAVRE [Le Havre]]FV MALOUOther MiscellaneousUnderway Using Engine<NA>49.3640860.078948
\n", + "

64 rows × 8 columns

\n", + "
" + ], + "text/plain": [ + " RIC DestinationPort DTSubjectName \\\n", + "0 C}KV7309507586 [FRLEH [Le Havre]] BLUE NOVA \n", + "1 C}CC7309502358 [FRLEH [Le Havre]] COSCO FAITH \n", + "2 C}CC7309488784 [FRLEH [Le Havre]] ONE OLYMPUS \n", + "3 C}CC7309490282 [FRLEH [Le Havre]] MAERSK SURABAYA \n", + "4 C}KS7309500780 [FR LEH [Le Havre]] AFRODITI \n", + ".. ... ... ... \n", + "59 C}VX7309985382 [LE HAVRE [Le Havre]] FV PARTI DE RIEN \n", + "60 C}BT7309985659 [LEHAVRE [Le Havre]] ROUEN BEN0 \n", + "61 C}VX7309986488 [LE HAVRE [Le Havre]] FV LOCEAN \n", + "62 C}VX7310029866 [LE HAVRE [Le Havre]] MA VICTOIRE \n", + "63 C}VX7310029871 [LE HAVRE [Le Havre]] FV MALOU \n", + "\n", + " DTSimpleType AISStatus GrossTonnage Latitude \\\n", + "0 VLCC At Anchor 157225 49.624512 \n", + "1 Container At Anchor 141823 49.607471 \n", + "2 Container Underway Using Engine 98799 50.684196 \n", + "3 Container Underway Using Engine 94322 50.951145 \n", + "4 Suezmax At Anchor 84716 49.61507 \n", + ".. ... ... ... ... \n", + "59 Other Miscellaneous Underway Using Engine 49.482353 \n", + "60 Other Dry Underway Using Engine 49.48555 \n", + "61 Other Miscellaneous Engaged In Fishing 50.400105 \n", + "62 Other Miscellaneous Engaged In Fishing 49.481274 \n", + "63 Other Miscellaneous Underway Using Engine 49.364086 \n", + "\n", + " Longitude \n", + "0 -0.22278 \n", + "1 -0.215615 \n", + "2 0.838658 \n", + "3 1.354597 \n", + "4 -0.252658 \n", + ".. ... \n", + "59 0.11704 \n", + "60 0.114852 \n", + "61 0.308875 \n", + "62 0.11961 \n", + "63 0.078948 \n", + "\n", + "[64 rows x 8 columns]" + ] + }, + "metadata": {}, + "output_type": "display_data" + } + ], + "source": [ + "vessels_coordinates = vessels.search(destination=\"Le Havre\")\n", + "\n", + "PhysicalAssetsMap().plot(vessels_coordinates).show()\n", + "display(vessels_coordinates)" + ] + }, + { + "cell_type": "markdown", + "id": "3374548d-a4dd-4210-9635-3e4aa4a884a7", + "metadata": {}, + "source": [ + "## Close the session" + ] + }, + { + "cell_type": "code", + "execution_count": 11, + "id": "1dc09a74-816f-4229-8d47-4a49573a2668", + "metadata": { + "tags": [] + }, + "outputs": [], + "source": [ + "rd.close_session()" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "id": "9cd3e0fe-bd42-4838-b3ec-a45f26e75943", + "metadata": {}, + "outputs": [], + "source": [] + } + ], + "metadata": { + "kernelspec": { + "display_name": "Python 3 (ipykernel)", + "language": "python", + "name": "python3" + }, + "language_info": { + "codemirror_mode": { + "name": "ipython", + "version": 3 + }, + "file_extension": ".py", + "mimetype": "text/x-python", + "name": "python", + "nbconvert_exporter": "python", + "pygments_lexer": "ipython3", + "version": "3.9.7" + } + }, + "nbformat": 4, + "nbformat_minor": 5 +} diff --git a/Examples/1-Access/EX-1.01.06.3-SearchTemplates-BuiltIn.ipynb b/Examples/1-Access/EX-1.01.06.3-SearchTemplates-BuiltIn.ipynb new file mode 100644 index 0000000..51ea671 --- /dev/null +++ b/Examples/1-Access/EX-1.01.06.3-SearchTemplates-BuiltIn.ipynb @@ -0,0 +1,833 @@ +{ + "cells": [ + { + "cell_type": "markdown", + "id": "c5b30ef8-32e8-4422-a8c2-ba4daa1c1466", + "metadata": {}, + "source": [ + "----\n", + "\n", + "\n", + "# Data Library for Python\n", + "\n", + "----" + ] + }, + { + "cell_type": "markdown", + "id": "39e8ef94-7bca-43d7-945a-f883bdfd4622", + "metadata": { + "tags": [] + }, + "source": [ + "## Access layer - Search templates examples - Built-In search templates\n", + "\n", + "This notebook demonstrates built-in Search Templates pre-defined by LSEG. Because these templates are built in the Refinitiv Data Library, they do not require any additional search template configuration file. " + ] + }, + { + "cell_type": "markdown", + "id": "317eafb5-e6cf-4832-9547-f8b481bb4cb4", + "metadata": {}, + "source": [ + "#### Learn more\n", + "\n", + "To learn more about the Refinitiv Data Library for Python please join the Refinitiv Developer Community. By [registering](https://developers.refinitiv.com/iam/register) and [logging](https://developers.refinitiv.com/content/devportal/en_us/initCookie.html) into the Refinitiv Developer Community portal you will have free access to a number of learning materials like \n", + " [Quick Start guides](https://developers.refinitiv.com/en/api-catalog/refinitiv-data-platform/refinitiv-data-library-for-python/quick-start), \n", + " [Tutorials](https://developers.refinitiv.com/en/api-catalog/refinitiv-data-platform/refinitiv-data-library-for-python/learning), \n", + " [Documentation](https://developers.refinitiv.com/en/api-catalog/refinitiv-data-platform/refinitiv-data-library-for-python/docs)\n", + " and much more.\n", + "\n", + "#### Getting Help and Support\n", + "\n", + "If you have any questions regarding using the API, please post them on \n", + "the [Refinitiv Data Q&A Forum](https://community.developers.refinitiv.com/spaces/321/index.html). \n", + "The Refinitiv Developer Community will be happy to help. \n", + "\n", + "----" + ] + }, + { + "cell_type": "markdown", + "id": "fd27f87c-b88e-41d3-aaa9-3c988f3cd840", + "metadata": { + "tags": [] + }, + "source": [ + "## Set the configuration file location\n", + "For a better ease of use, you have the option to set initialization parameters of the Refinitiv Data Library in the _refinitiv-data.config.json_ configuration file. This file must be located beside your notebook, in your user folder or in a folder defined by the _RD_LIB_CONFIG_PATH_ environment variable. The _RD_LIB_CONFIG_PATH_ environment variable is the option used by this series of examples. The following code sets this environment variable. " + ] + }, + { + "cell_type": "code", + "execution_count": 1, + "id": "739a2e80-35ea-4356-a97a-8192920aac0f", + "metadata": {}, + "outputs": [], + "source": [ + "import os\n", + "os.environ[\"RD_LIB_CONFIG_PATH\"] = \"../../Configuration\"" + ] + }, + { + "cell_type": "markdown", + "id": "018d3917-d879-4651-961f-067e47ec1f2f", + "metadata": { + "tags": [] + }, + "source": [ + "## Some Imports to start with" + ] + }, + { + "cell_type": "code", + "execution_count": 2, + "id": "72e9936a-da3c-439f-a4c7-4a86c017581a", + "metadata": { + "tags": [] + }, + "outputs": [], + "source": [ + "import refinitiv.data as rd\n", + "from refinitiv.data.discovery import search_templates as st" + ] + }, + { + "cell_type": "markdown", + "id": "9a4038d0-89fa-46e2-93aa-513e04a8643e", + "metadata": {}, + "source": [ + "## Open the data session\n", + "\n", + "The open_session() function creates and open sessions based on the information contained in the refinitiv-data.config.json configuration file. Please edit this file to set the session type and other parameters required for the session you want to open." + ] + }, + { + "cell_type": "code", + "execution_count": 3, + "id": "9807577a-b58e-449a-863d-cff7b55050c5", + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "" + ] + }, + "execution_count": 3, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "rd.open_session()" + ] + }, + { + "cell_type": "markdown", + "id": "a7216d47-65a0-4498-a1a2-43de0e6a50ad", + "metadata": { + "tags": [] + }, + "source": [ + "## Use BuiltIn Search Templates" + ] + }, + { + "cell_type": "markdown", + "id": "b415933a-deed-4776-a239-b542aa6d6b68", + "metadata": {}, + "source": [ + "### Get category for RIC" + ] + }, + { + "cell_type": "code", + "execution_count": 4, + "id": "f22d23e1-a980-48bd-9e90-e3d85a199835", + "metadata": {}, + "outputs": [ + { + "data": { + "text/html": [ + "
\n", + "\n", + "\n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
RCSAssetCategoryLeaf
0Ordinary Share
\n", + "
" + ], + "text/plain": [ + " RCSAssetCategoryLeaf\n", + "0 Ordinary Share" + ] + }, + "execution_count": 4, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "st.RICCategory.search(ric='VOD.L')" + ] + }, + { + "cell_type": "markdown", + "id": "b264d873-5137-4728-8ab6-0ec516a89472", + "metadata": { + "tags": [] + }, + "source": [ + "### Simple search for options on any underlying" + ] + }, + { + "cell_type": "code", + "execution_count": 5, + "id": "af7c64db-901d-4e44-a64d-ae13eb405e1c", + "metadata": {}, + "outputs": [ + { + "data": { + "text/html": [ + "
\n", + "\n", + "\n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
RICDTSubjectNameExpiryDateStringStrikePriceCallPutOptionContractTypeCurrency
0VOD010bA3.EXEurex Vodafone Group Equity Option 1 Call Jan ...2023-01-201CallStandardGBp
1VOD010bM3.EXEurex Vodafone Group Equity Option 1 Put Jan 20232023-01-201PutStandardGBp
2VOD060A3.LIntercontinental Exchange (ICE) Vodafone Group...2023-01-2060CallStandardGBp
3VOD060M3.LIntercontinental Exchange (ICE) Vodafone Group...2023-01-2060PutStandardGBp
4VOD640bA3.EXEurex Vodafone Group Equity Option 64 Call Jan...2023-01-2064CallStandardGBp
........................
995VOD100M26.LIntercontinental Exchange (ICE) Vodafone Group...2026-01-16100PutStandardGBp
996VOD120A26.LIntercontinental Exchange (ICE) Vodafone Group...2026-01-16120CallStandardGBp
997VOD120M26.LIntercontinental Exchange (ICE) Vodafone Group...2026-01-16120PutStandardGBp
998VOD140A26.LIntercontinental Exchange (ICE) Vodafone Group...2026-01-16140CallStandardGBp
999VOD140M26.LIntercontinental Exchange (ICE) Vodafone Group...2026-01-16140PutStandardGBp
\n", + "

1000 rows × 7 columns

\n", + "
" + ], + "text/plain": [ + " RIC DTSubjectName \\\n", + "0 VOD010bA3.EX Eurex Vodafone Group Equity Option 1 Call Jan ... \n", + "1 VOD010bM3.EX Eurex Vodafone Group Equity Option 1 Put Jan 2023 \n", + "2 VOD060A3.L Intercontinental Exchange (ICE) Vodafone Group... \n", + "3 VOD060M3.L Intercontinental Exchange (ICE) Vodafone Group... \n", + "4 VOD640bA3.EX Eurex Vodafone Group Equity Option 64 Call Jan... \n", + ".. ... ... \n", + "995 VOD100M26.L Intercontinental Exchange (ICE) Vodafone Group... \n", + "996 VOD120A26.L Intercontinental Exchange (ICE) Vodafone Group... \n", + "997 VOD120M26.L Intercontinental Exchange (ICE) Vodafone Group... \n", + "998 VOD140A26.L Intercontinental Exchange (ICE) Vodafone Group... \n", + "999 VOD140M26.L Intercontinental Exchange (ICE) Vodafone Group... \n", + "\n", + " ExpiryDateString StrikePrice CallPutOption ContractType Currency \n", + "0 2023-01-20 1 Call Standard GBp \n", + "1 2023-01-20 1 Put Standard GBp \n", + "2 2023-01-20 60 Call Standard GBp \n", + "3 2023-01-20 60 Put Standard GBp \n", + "4 2023-01-20 64 Call Standard GBp \n", + ".. ... ... ... ... ... \n", + "995 2026-01-16 100 Put Standard GBp \n", + "996 2026-01-16 120 Call Standard GBp \n", + "997 2026-01-16 120 Put Standard GBp \n", + "998 2026-01-16 140 Call Standard GBp \n", + "999 2026-01-16 140 Put Standard GBp \n", + "\n", + "[1000 rows x 7 columns]" + ] + }, + "execution_count": 5, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "st.UnderlyingRICToOption.search(ric='VOD.L')" + ] + }, + { + "cell_type": "markdown", + "id": "73666e6f-a2fc-4d93-9a9f-8b115a4a6451", + "metadata": { + "tags": [] + }, + "source": [ + "### Search options with optional filter parameters" + ] + }, + { + "cell_type": "code", + "execution_count": 6, + "id": "0b19dd5b-d8a7-4a64-80ce-7b0232ce7f84", + "metadata": {}, + "outputs": [ + { + "data": { + "text/html": [ + "
\n", + "\n", + "\n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
RICDTSubjectNameExpiryDateStringStrikePriceCallPutOptionContractTypeCurrency
0VOD060B3.LIntercontinental Exchange (ICE) Vodafone Group...2023-02-1760CallStandardGBp
\n", + "
" + ], + "text/plain": [ + " RIC DTSubjectName \\\n", + "0 VOD060B3.L Intercontinental Exchange (ICE) Vodafone Group... \n", + "\n", + " ExpiryDateString StrikePrice CallPutOption ContractType Currency \n", + "0 2023-02-17 60 Call Standard GBp " + ] + }, + "execution_count": 6, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "st.UnderlyingRICToOption.search(ric='VOD.L', strike_price=60, expiry_date='2023-02-17', put_call='Call')" + ] + }, + { + "cell_type": "markdown", + "id": "6a74f429-478f-4b93-9961-7c329bf29feb", + "metadata": {}, + "source": [ + "### Search Futures of a RIC" + ] + }, + { + "cell_type": "code", + "execution_count": 7, + "id": "62268665-afa5-4ad3-9c81-a17e376b312e", + "metadata": {}, + "outputs": [ + { + "data": { + "text/html": [ + "
\n", + "\n", + "\n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
RICDTSubjectNameExpiryDateStringContractTypeCurrency
0FTUKM2Eurex Exchange FTSE 100 Index Future Jun 20222022-06-17StandardGBP
1FTUKU2Eurex Exchange FTSE 100 Index Future Sep 20222022-09-16StandardGBP
2FTUKZ2Eurex Exchange FTSE 100 Index Future Dec 20222022-12-16StandardGBP
3FFITIH3Intercontinental Exchange Europe FTSE 100 Inde...2023-03-16TIC – Trade at Index CloseGBP
4DVTH3CME Chicago Mercantile Exchange Developed Euro...2023-03-16TIC – Trade at Index CloseEUR
..................
276DE000VX8JJC6=TXEAVontobel Financial Products GmbH Frankfurt am ...NaT<NA>EUR
277DE000VV4E1F5=TXEAVontobel Financial Products GmbH Frankfurt am ...NaT<NA>EUR
278DE000VX6R3Y1=TXEAVontobel Financial Products GmbH Frankfurt am ...NaT<NA>EUR
279DE000VV08S00=TXEAVontobel Financial Products GmbH Frankfurt am ...NaT<NA>EUR
280DE000VV88PP8=TXEAVontobel Financial Products GmbH Frankfurt am ...NaT<NA>EUR
\n", + "

281 rows × 5 columns

\n", + "
" + ], + "text/plain": [ + " RIC DTSubjectName \\\n", + "0 FTUKM2 Eurex Exchange FTSE 100 Index Future Jun 2022 \n", + "1 FTUKU2 Eurex Exchange FTSE 100 Index Future Sep 2022 \n", + "2 FTUKZ2 Eurex Exchange FTSE 100 Index Future Dec 2022 \n", + "3 FFITIH3 Intercontinental Exchange Europe FTSE 100 Inde... \n", + "4 DVTH3 CME Chicago Mercantile Exchange Developed Euro... \n", + ".. ... ... \n", + "276 DE000VX8JJC6=TXEA Vontobel Financial Products GmbH Frankfurt am ... \n", + "277 DE000VV4E1F5=TXEA Vontobel Financial Products GmbH Frankfurt am ... \n", + "278 DE000VX6R3Y1=TXEA Vontobel Financial Products GmbH Frankfurt am ... \n", + "279 DE000VV08S00=TXEA Vontobel Financial Products GmbH Frankfurt am ... \n", + "280 DE000VV88PP8=TXEA Vontobel Financial Products GmbH Frankfurt am ... \n", + "\n", + " ExpiryDateString ContractType Currency \n", + "0 2022-06-17 Standard GBP \n", + "1 2022-09-16 Standard GBP \n", + "2 2022-12-16 Standard GBP \n", + "3 2023-03-16 TIC – Trade at Index Close GBP \n", + "4 2023-03-16 TIC – Trade at Index Close EUR \n", + ".. ... ... ... \n", + "276 NaT EUR \n", + "277 NaT EUR \n", + "278 NaT EUR \n", + "279 NaT EUR \n", + "280 NaT EUR \n", + "\n", + "[281 rows x 5 columns]" + ] + }, + "execution_count": 7, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "st.UnderlyingRICToFuture.search(ric='.FTSE')" + ] + }, + { + "cell_type": "markdown", + "id": "75e32851-cedd-4b23-a790-3d99b16cf896", + "metadata": { + "tags": [] + }, + "source": [ + "### Find issuer of a RIC" + ] + }, + { + "cell_type": "code", + "execution_count": 8, + "id": "0fd4ca64-ea34-4f7c-9fab-e66a5dc9de49", + "metadata": {}, + "outputs": [ + { + "data": { + "text/html": [ + "
\n", + "\n", + "\n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
DTSubjectNameRCSIssuerCountryLeafIssuerOAPermIDPrimaryRIC
0Microsoft CorpUnited States4295907168MSFT.O
\n", + "
" + ], + "text/plain": [ + " DTSubjectName RCSIssuerCountryLeaf IssuerOAPermID PrimaryRIC\n", + "0 Microsoft Corp United States 4295907168 MSFT.O" + ] + }, + "execution_count": 8, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "st.RICToIssuer.search(ric='0QYP.L')" + ] + }, + { + "cell_type": "markdown", + "id": "859abbcb-2faf-454e-8004-cf5d2b04c36a", + "metadata": {}, + "source": [ + "### Find ultimate parent of an organisation" + ] + }, + { + "cell_type": "code", + "execution_count": 9, + "id": "98de4e11-e1e2-42e8-966d-2a8ff6c3deb2", + "metadata": {}, + "outputs": [ + { + "data": { + "text/html": [ + "
\n", + "\n", + "\n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
UltimateParentCompanyOAPermIDUltimateParentOrganisationName
05030853586Alphabet Inc
\n", + "
" + ], + "text/plain": [ + " UltimateParentCompanyOAPermID UltimateParentOrganisationName\n", + "0 5030853586 Alphabet Inc" + ] + }, + "execution_count": 9, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "st.OrganisationPermIDToUP.search(entity_id='5076100562')" + ] + }, + { + "cell_type": "markdown", + "id": "3374548d-a4dd-4210-9635-3e4aa4a884a7", + "metadata": {}, + "source": [ + "## Close the session" + ] + }, + { + "cell_type": "code", + "execution_count": 10, + "id": "1dc09a74-816f-4229-8d47-4a49573a2668", + "metadata": { + "tags": [] + }, + "outputs": [], + "source": [ + "rd.close_session()" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "id": "24371314-a45a-4b69-8319-dea6a47d89cd", + "metadata": {}, + "outputs": [], + "source": [] + } + ], + "metadata": { + "kernelspec": { + "display_name": "Python 3 (ipykernel)", + "language": "python", + "name": "python3" + }, + "language_info": { + "codemirror_mode": { + "name": "ipython", + "version": 3 + }, + "file_extension": ".py", + "mimetype": "text/x-python", + "name": "python", + "nbconvert_exporter": "python", + "pygments_lexer": "ipython3", + "version": "3.9.7" + } + }, + "nbformat": 4, + "nbformat_minor": 5 +} diff --git a/Examples/1-Access/EX-1.01.07-Chains.ipynb b/Examples/1-Access/EX-1.01.07-Chains.ipynb new file mode 100644 index 0000000..ab9622f --- /dev/null +++ b/Examples/1-Access/EX-1.01.07-Chains.ipynb @@ -0,0 +1,1399 @@ +{ + "cells": [ + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "----\n", + "\n", + "\n", + "# Data Library for Python\n", + "\n", + "----" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Access layer - Chains\n", + "This notebook demonstrates how to use the Chain object of the Access layer in conjunction with get_data, get_history and pricing streams. The Access layer provides a simplified Chain interface designed for FinCoders. The complete Chain interface is available in the pricing module of the Content layer of the library." + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "#### Learn more\n", + "\n", + "To learn more about the Refinitiv Data Library for Python please join the Refinitiv Developer Community. By [registering](https://developers.refinitiv.com/iam/register) and [logging](https://developers.refinitiv.com/content/devportal/en_us/initCookie.html) into the Refinitiv Developer Community portal you will have free access to a number of learning materials like \n", + " [Quick Start guides](https://developers.refinitiv.com/en/api-catalog/refinitiv-data-platform/refinitiv-data-library-for-python/quick-start), \n", + " [Tutorials](https://developers.refinitiv.com/en/api-catalog/refinitiv-data-platform/refinitiv-data-library-for-python/learning), \n", + " [Documentation](https://developers.refinitiv.com/en/api-catalog/refinitiv-data-platform/refinitiv-data-library-for-python/docs)\n", + " and much more.\n", + "\n", + "#### Getting Help and Support\n", + "\n", + "If you have any questions regarding using the API, please post them on \n", + "the [Refinitiv Data Q&A Forum](https://community.developers.refinitiv.com/spaces/321/index.html). \n", + "The Refinitiv Developer Community will be happy to help. \n", + "\n", + "----" + ] + }, + { + "cell_type": "markdown", + "metadata": { + "tags": [] + }, + "source": [ + "## Set the configuration file location\n", + "For a better ease of use, you have the option to set initialization parameters of the Refinitiv Data Library in the _refinitiv-data.config.json_ configuration file. This file must be located beside your notebook, in your user folder or in a folder defined by the _RD_LIB_CONFIG_PATH_ environment variable. The _RD_LIB_CONFIG_PATH_ environment variable is the option used by this series of examples. The following code sets this environment variable. " + ] + }, + { + "cell_type": "code", + "execution_count": 1, + "metadata": {}, + "outputs": [], + "source": [ + "import os\n", + "os.environ[\"RD_LIB_CONFIG_PATH\"] = \"../../Configuration\"" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Some Imports to start with" + ] + }, + { + "cell_type": "code", + "execution_count": 2, + "metadata": {}, + "outputs": [], + "source": [ + "import refinitiv.data as rd\n", + "from refinitiv.data.discovery import Chain\n", + "import datetime\n", + "from IPython.display import display, clear_output" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Open the data session\n", + "\n", + "The open_session() function creates and open sessions based on the information contained in the refinitiv-data.config.json configuration file. Please edit this file to set the session type and other parameters required for the session you want to open." + ] + }, + { + "cell_type": "code", + "execution_count": 3, + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "" + ] + }, + "execution_count": 3, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "rd.open_session()" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Retrieve data" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "### Create a chain object for the CAC40 index" + ] + }, + { + "cell_type": "code", + "execution_count": 4, + "metadata": {}, + "outputs": [], + "source": [ + "fchi = Chain(\"0#.FCHI\")" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "### Print the constituents" + ] + }, + { + "cell_type": "code", + "execution_count": 5, + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "['AIRP.PA', 'AIR.PA', 'ALSO.PA', 'MT.AS', 'AXAF.PA', 'BNPP.PA', 'BOUY.PA', 'CAPP.PA', 'CARR.PA', 'CAGR.PA', 'DANO.PA', 'DAST.PA', 'ENGIE.PA', 'ESLX.PA', 'EUFI.PA', 'HRMS.PA', 'PRTP.PA', 'OREP.PA', 'LVMH.PA', 'LEGD.PA', 'MICP.PA', 'ORAN.PA', 'PERP.PA', 'PUBP.PA', 'RENA.PA', 'SAF.PA', 'SGOB.PA', 'SASY.PA', 'SCHN.PA', 'SOGN.PA', 'STLA.PA', 'STM.PA', 'TEPRF.PA', 'TCFP.PA', 'TTEF.PA', 'URW.AS', 'VIE.PA', 'SGEF.PA', 'VIV.PA', 'WLN.PA']\n" + ] + } + ], + "source": [ + "print(fchi.constituents)" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "### Print the summary links" + ] + }, + { + "cell_type": "code", + "execution_count": 6, + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "['.DJI', 'EUR=', '/.STOXX50E', '.FCHI', '.AD.FCHI']\n" + ] + } + ], + "source": [ + "print(fchi.summary_links)" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "### Use the chain with get_data()" + ] + }, + { + "cell_type": "code", + "execution_count": 7, + "metadata": {}, + "outputs": [ + { + "data": { + "text/html": [ + "
\n", + "\n", + "\n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
InstrumentRevenueBIDASK
0AIRP.PA23334800000137.58137.6
1AIR.PA52149000000115.52115.56
2ALSO.PA1547100000024.8224.84
3MT.AS7657100000026.4826.485
4AXAF.PA<NA>26.7126.715
5BNPP.PA<NA>58.8958.9
6BOUY.PA3758900000029.629.61
7CAPP.PA18160000000163.4163.45
8CARR.PA7428600000015.7615.77
9CAGR.PA<NA>10.4710.472
10DANO.PA2428100000050.650.61
11DAST.PA486010000035.16535.175
12ENGIE.PA5786600000013.31213.314
13ESLX.PA19820000000174.3174.35
14EUFI.PA671770000066.3866.42
15HRMS.PA89820000001550.01550.5
16PRTP.PA17645200000518.8519.0
17OREP.PA32287600000357.3357.35
18LVMH.PA64215000000729.4729.5
19LEGD.PA699420000078.4678.48
20MICP.PA2379500000028.46528.47
21ORAN.PA425220000009.8859.886
22PERP.PA10701000000185.05185.1
23PUBP.PA1173800000061.5861.6
24RENA.PA4165900000035.2435.25
25SAF.PA15133000000119.28119.3
26SGOB.PA4416000000051.4851.49
27SASY.PA3917500000090.2790.28
28SCHN.PA28905000000139.86139.88
29SOGN.PA<NA>25.6125.615
30STLA.PA14941900000014.38214.384
31STM.PA1276100000034.7634.77
32TEPRF.PA7115000000233.1233.2
33TCFP.PA16192000000113.85113.9
34TTEF.PA18463400000057.9457.95
35URW.AS251970000052.3852.39
36VIE.PA2850810000025.9325.94
37SGEF.PA4998200000097.9297.94
38VIV.PA95720000009.399.394
39WLN.PA368940000038.6538.66
\n", + "
" + ], + "text/plain": [ + " Instrument Revenue BID ASK\n", + "0 AIRP.PA 23334800000 137.58 137.6\n", + "1 AIR.PA 52149000000 115.52 115.56\n", + "2 ALSO.PA 15471000000 24.82 24.84\n", + "3 MT.AS 76571000000 26.48 26.485\n", + "4 AXAF.PA 26.71 26.715\n", + "5 BNPP.PA 58.89 58.9\n", + "6 BOUY.PA 37589000000 29.6 29.61\n", + "7 CAPP.PA 18160000000 163.4 163.45\n", + "8 CARR.PA 74286000000 15.76 15.77\n", + "9 CAGR.PA 10.47 10.472\n", + "10 DANO.PA 24281000000 50.6 50.61\n", + "11 DAST.PA 4860100000 35.165 35.175\n", + "12 ENGIE.PA 57866000000 13.312 13.314\n", + "13 ESLX.PA 19820000000 174.3 174.35\n", + "14 EUFI.PA 6717700000 66.38 66.42\n", + "15 HRMS.PA 8982000000 1550.0 1550.5\n", + "16 PRTP.PA 17645200000 518.8 519.0\n", + "17 OREP.PA 32287600000 357.3 357.35\n", + "18 LVMH.PA 64215000000 729.4 729.5\n", + "19 LEGD.PA 6994200000 78.46 78.48\n", + "20 MICP.PA 23795000000 28.465 28.47\n", + "21 ORAN.PA 42522000000 9.885 9.886\n", + "22 PERP.PA 10701000000 185.05 185.1\n", + "23 PUBP.PA 11738000000 61.58 61.6\n", + "24 RENA.PA 41659000000 35.24 35.25\n", + "25 SAF.PA 15133000000 119.28 119.3\n", + "26 SGOB.PA 44160000000 51.48 51.49\n", + "27 SASY.PA 39175000000 90.27 90.28\n", + "28 SCHN.PA 28905000000 139.86 139.88\n", + "29 SOGN.PA 25.61 25.615\n", + "30 STLA.PA 149419000000 14.382 14.384\n", + "31 STM.PA 12761000000 34.76 34.77\n", + "32 TEPRF.PA 7115000000 233.1 233.2\n", + "33 TCFP.PA 16192000000 113.85 113.9\n", + "34 TTEF.PA 184634000000 57.94 57.95\n", + "35 URW.AS 2519700000 52.38 52.39\n", + "36 VIE.PA 28508100000 25.93 25.94\n", + "37 SGEF.PA 49982000000 97.92 97.94\n", + "38 VIV.PA 9572000000 9.39 9.394\n", + "39 WLN.PA 3689400000 38.65 38.66" + ] + }, + "execution_count": 7, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "rd.get_data(fchi, ['BID', 'ASK', 'TR.Revenue'])" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "### Use the chain with get_history()" + ] + }, + { + "cell_type": "code", + "execution_count": 8, + "metadata": {}, + "outputs": [ + { + "data": { + "text/html": [ + "
\n", + "\n", + "\n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
AIRP.PAAIR.PAALSO.PAMT.ASAXAF.PA...URW.ASVIE.PASGEF.PAVIV.PAWLN.PA
BIDASKBIDASKBIDASKBIDASKBIDASK...BIDASKBIDASKBIDASKBIDASKBIDASK
Date
2022-12-07138.1138.12108.4108.4423.8223.8725.2425.2527.26527.28...50.7750.8324.624.6397.8197.898.9248.93242.142.17
2022-12-08138.0138.02110.14110.1623.523.5125.825.8127.01527.025...51.3651.3924.524.5197.9297.948.9228.9342.6342.71
2022-12-09136.84136.86111.64111.6624.0324.0425.94525.95527.3527.355...52.3452.4925.2225.2398.5798.629.09.00441.1341.18
2022-12-12136.2136.26112.08112.1223.7623.8325.53525.5427.0127.025...50.7950.824.7424.7597.3297.388.9088.91241.3341.34
2022-12-13138.2138.22113.42113.524.2324.2426.1526.1827.40527.41...52.752.7225.1125.1297.4497.458.9348.95641.5741.62
2022-12-14138.16138.18113.0113.0223.9423.9825.0425.0627.0627.08...53.0753.0925.325.3995.4895.498.9268.92840.9140.92
2022-12-15134.08134.12110.68110.723.2323.2624.45524.4626.21526.22...51.8751.8824.324.3193.9393.988.7128.71838.1438.15
2022-12-16132.76132.88109.98110.022.8222.8324.0624.06526.0326.035...49.449.4324.2324.2492.3992.48.678.67637.0637.07
2022-12-19133.1133.12110.92110.9423.0723.0824.0424.07526.2626.265...50.0850.0924.1724.292.8692.878.7328.73437.3137.35
2022-12-20133.36133.6111.04111.0822.6622.7424.22524.24526.3726.395...47.68547.723.7923.8193.4393.468.728.72636.6936.7
2022-12-21135.46135.5113.2113.323.0623.0824.93524.9426.6826.695...49.749.7224.2724.2894.1794.188.988.98237.2637.27
2022-12-22133.62133.64111.82111.8422.7422.7624.6524.65526.55526.575...48.73548.7623.9223.9393.7593.768.9388.9436.8636.95
2022-12-23133.7133.72111.72111.7422.9923.025.06525.126.4326.435...48.89548.9323.9223.9394.1694.228.9388.9436.9436.96
2022-12-27133.92133.94112.68112.8223.1423.1625.12525.1326.526.51...49.0749.08523.9924.093.9494.18.8728.8937.037.01
2022-12-28133.36133.46111.6111.6222.8122.8224.7624.78526.34526.355...49.38549.39523.9323.9493.4893.498.8768.8836.536.56
2022-12-29134.68134.72111.92112.0623.1423.1524.9624.9726.426.405...49.70549.73524.3524.3694.1594.259.0149.01636.9337.05
2022-12-30132.4132.42111.02111.0822.8122.8224.5724.57526.05526.065...48.6348.6424.024.0193.2793.368.9128.91636.436.54
2023-01-02135.0135.02113.86113.8823.3623.3825.33525.3426.48526.56...50.7150.7324.8724.8994.994.969.069.07237.1837.27
2023-01-03134.66134.8114.52114.5423.2223.2925.32525.3326.65526.66...50.8850.8924.7824.8694.8494.99.2889.32637.4337.47
2023-01-04138.28138.3115.38115.424.7224.7325.68525.71527.04527.05...52.4352.4525.9825.9997.0897.099.5469.54838.5238.53
\n", + "

20 rows × 80 columns

\n", + "
" + ], + "text/plain": [ + " AIRP.PA AIR.PA ALSO.PA MT.AS \\\n", + " BID ASK BID ASK BID ASK BID ASK \n", + "Date \n", + "2022-12-07 138.1 138.12 108.4 108.44 23.82 23.87 25.24 25.25 \n", + "2022-12-08 138.0 138.02 110.14 110.16 23.5 23.51 25.8 25.81 \n", + "2022-12-09 136.84 136.86 111.64 111.66 24.03 24.04 25.945 25.955 \n", + "2022-12-12 136.2 136.26 112.08 112.12 23.76 23.83 25.535 25.54 \n", + "2022-12-13 138.2 138.22 113.42 113.5 24.23 24.24 26.15 26.18 \n", + "2022-12-14 138.16 138.18 113.0 113.02 23.94 23.98 25.04 25.06 \n", + "2022-12-15 134.08 134.12 110.68 110.7 23.23 23.26 24.455 24.46 \n", + "2022-12-16 132.76 132.88 109.98 110.0 22.82 22.83 24.06 24.065 \n", + "2022-12-19 133.1 133.12 110.92 110.94 23.07 23.08 24.04 24.075 \n", + "2022-12-20 133.36 133.6 111.04 111.08 22.66 22.74 24.225 24.245 \n", + "2022-12-21 135.46 135.5 113.2 113.3 23.06 23.08 24.935 24.94 \n", + "2022-12-22 133.62 133.64 111.82 111.84 22.74 22.76 24.65 24.655 \n", + "2022-12-23 133.7 133.72 111.72 111.74 22.99 23.0 25.065 25.1 \n", + "2022-12-27 133.92 133.94 112.68 112.82 23.14 23.16 25.125 25.13 \n", + "2022-12-28 133.36 133.46 111.6 111.62 22.81 22.82 24.76 24.785 \n", + "2022-12-29 134.68 134.72 111.92 112.06 23.14 23.15 24.96 24.97 \n", + "2022-12-30 132.4 132.42 111.02 111.08 22.81 22.82 24.57 24.575 \n", + "2023-01-02 135.0 135.02 113.86 113.88 23.36 23.38 25.335 25.34 \n", + "2023-01-03 134.66 134.8 114.52 114.54 23.22 23.29 25.325 25.33 \n", + "2023-01-04 138.28 138.3 115.38 115.4 24.72 24.73 25.685 25.715 \n", + "\n", + " AXAF.PA ... URW.AS VIE.PA SGEF.PA \\\n", + " BID ASK ... BID ASK BID ASK BID ASK \n", + "Date ... \n", + "2022-12-07 27.265 27.28 ... 50.77 50.83 24.6 24.63 97.81 97.89 \n", + "2022-12-08 27.015 27.025 ... 51.36 51.39 24.5 24.51 97.92 97.94 \n", + "2022-12-09 27.35 27.355 ... 52.34 52.49 25.22 25.23 98.57 98.62 \n", + "2022-12-12 27.01 27.025 ... 50.79 50.8 24.74 24.75 97.32 97.38 \n", + "2022-12-13 27.405 27.41 ... 52.7 52.72 25.11 25.12 97.44 97.45 \n", + "2022-12-14 27.06 27.08 ... 53.07 53.09 25.3 25.39 95.48 95.49 \n", + "2022-12-15 26.215 26.22 ... 51.87 51.88 24.3 24.31 93.93 93.98 \n", + "2022-12-16 26.03 26.035 ... 49.4 49.43 24.23 24.24 92.39 92.4 \n", + "2022-12-19 26.26 26.265 ... 50.08 50.09 24.17 24.2 92.86 92.87 \n", + "2022-12-20 26.37 26.395 ... 47.685 47.7 23.79 23.81 93.43 93.46 \n", + "2022-12-21 26.68 26.695 ... 49.7 49.72 24.27 24.28 94.17 94.18 \n", + "2022-12-22 26.555 26.575 ... 48.735 48.76 23.92 23.93 93.75 93.76 \n", + "2022-12-23 26.43 26.435 ... 48.895 48.93 23.92 23.93 94.16 94.22 \n", + "2022-12-27 26.5 26.51 ... 49.07 49.085 23.99 24.0 93.94 94.1 \n", + "2022-12-28 26.345 26.355 ... 49.385 49.395 23.93 23.94 93.48 93.49 \n", + "2022-12-29 26.4 26.405 ... 49.705 49.735 24.35 24.36 94.15 94.25 \n", + "2022-12-30 26.055 26.065 ... 48.63 48.64 24.0 24.01 93.27 93.36 \n", + "2023-01-02 26.485 26.56 ... 50.71 50.73 24.87 24.89 94.9 94.96 \n", + "2023-01-03 26.655 26.66 ... 50.88 50.89 24.78 24.86 94.84 94.9 \n", + "2023-01-04 27.045 27.05 ... 52.43 52.45 25.98 25.99 97.08 97.09 \n", + "\n", + " VIV.PA WLN.PA \n", + " BID ASK BID ASK \n", + "Date \n", + "2022-12-07 8.924 8.932 42.1 42.17 \n", + "2022-12-08 8.922 8.93 42.63 42.71 \n", + "2022-12-09 9.0 9.004 41.13 41.18 \n", + "2022-12-12 8.908 8.912 41.33 41.34 \n", + "2022-12-13 8.934 8.956 41.57 41.62 \n", + "2022-12-14 8.926 8.928 40.91 40.92 \n", + "2022-12-15 8.712 8.718 38.14 38.15 \n", + "2022-12-16 8.67 8.676 37.06 37.07 \n", + "2022-12-19 8.732 8.734 37.31 37.35 \n", + "2022-12-20 8.72 8.726 36.69 36.7 \n", + "2022-12-21 8.98 8.982 37.26 37.27 \n", + "2022-12-22 8.938 8.94 36.86 36.95 \n", + "2022-12-23 8.938 8.94 36.94 36.96 \n", + "2022-12-27 8.872 8.89 37.0 37.01 \n", + "2022-12-28 8.876 8.88 36.5 36.56 \n", + "2022-12-29 9.014 9.016 36.93 37.05 \n", + "2022-12-30 8.912 8.916 36.4 36.54 \n", + "2023-01-02 9.06 9.072 37.18 37.27 \n", + "2023-01-03 9.288 9.326 37.43 37.47 \n", + "2023-01-04 9.546 9.548 38.52 38.53 \n", + "\n", + "[20 rows x 80 columns]" + ] + }, + "execution_count": 8, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "rd.get_history(fchi, ['BID', 'ASK'])" + ] + }, + { + "cell_type": "markdown", + "metadata": { + "tags": [] + }, + "source": [ + "### Use the chain with pricing streams" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "#### Define a callback to receive data events" + ] + }, + { + "cell_type": "code", + "execution_count": 9, + "metadata": {}, + "outputs": [], + "source": [ + "def display_data(data, instrument, stream):\n", + " clear_output(wait=True)\n", + " current_time = datetime.datetime.now().time()\n", + " print(current_time, \"- Data received for\", instrument)\n", + " display(data)" + ] + }, + { + "cell_type": "markdown", + "metadata": { + "tags": [] + }, + "source": [ + "#### Open the stream and register the callback" + ] + }, + { + "cell_type": "code", + "execution_count": 10, + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "16:51:36.825358 - Data received for VIE.PA\n" + ] + }, + { + "data": { + "text/html": [ + "
\n", + "\n", + "\n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
ASK
VIE.PA25.94
\n", + "
" + ], + "text/plain": [ + " ASK\n", + "VIE.PA 25.94" + ] + }, + "metadata": {}, + "output_type": "display_data" + } + ], + "source": [ + "stream = rd.open_pricing_stream(fchi, ['BID', 'ASK'], on_data=display_data)" + ] + }, + { + "cell_type": "markdown", + "metadata": { + "tags": [] + }, + "source": [ + "#### Close the stream" + ] + }, + { + "cell_type": "code", + "execution_count": 11, + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "" + ] + }, + "execution_count": 11, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "stream.close()" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "### Close the session" + ] + }, + { + "cell_type": "code", + "execution_count": 12, + "metadata": {}, + "outputs": [], + "source": [ + "rd.close_session()" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [] + } + ], + "metadata": { + "kernelspec": { + "display_name": "Python 3 (ipykernel)", + "language": "python", + "name": "python3" + }, + "language_info": { + "codemirror_mode": { + "name": "ipython", + "version": 3 + }, + "file_extension": ".py", + "mimetype": "text/x-python", + "name": "python", + "nbconvert_exporter": "python", + "pygments_lexer": "ipython3", + "version": "3.9.7" + } + }, + "nbformat": 4, + "nbformat_minor": 4 +} diff --git a/Examples/1-Access/EX-1.01.08-Screeners.ipynb b/Examples/1-Access/EX-1.01.08-Screeners.ipynb new file mode 100644 index 0000000..227b4b2 --- /dev/null +++ b/Examples/1-Access/EX-1.01.08-Screeners.ipynb @@ -0,0 +1,1513 @@ +{ + "cells": [ + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "----\n", + "\n", + "\n", + "# Data Library for Python\n", + "\n", + "----" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Access layer - Screeners\n", + "This notebook demonstrates how to use the Screener object of the Access layer in conjunction with get_data, get_history and pricing streams." + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "#### Learn more\n", + "\n", + "To learn more about the Refinitiv Data Library for Python please join the Refinitiv Developer Community. By [registering](https://developers.refinitiv.com/iam/register) and [logging](https://developers.refinitiv.com/content/devportal/en_us/initCookie.html) into the Refinitiv Developer Community portal you will have free access to a number of learning materials like \n", + " [Quick Start guides](https://developers.refinitiv.com/en/api-catalog/refinitiv-data-platform/refinitiv-data-library-for-python/quick-start), \n", + " [Tutorials](https://developers.refinitiv.com/en/api-catalog/refinitiv-data-platform/refinitiv-data-library-for-python/learning), \n", + " [Documentation](https://developers.refinitiv.com/en/api-catalog/refinitiv-data-platform/refinitiv-data-library-for-python/docs)\n", + " and much more.\n", + "\n", + "#### Getting Help and Support\n", + "\n", + "If you have any questions regarding using the API, please post them on \n", + "the [Refinitiv Data Q&A Forum](https://community.developers.refinitiv.com/spaces/321/index.html). \n", + "The Refinitiv Developer Community will be happy to help. \n", + "\n", + "----" + ] + }, + { + "cell_type": "markdown", + "metadata": { + "tags": [] + }, + "source": [ + "## Set the configuration file location\n", + "For a better ease of use, you have the option to set initialization parameters of the Refinitiv Data Library in the _refinitiv-data.config.json_ configuration file. This file must be located beside your notebook, in your user folder or in a folder defined by the _RD_LIB_CONFIG_PATH_ environment variable. The _RD_LIB_CONFIG_PATH_ environment variable is the option used by this series of examples. The following code sets this environment variable. " + ] + }, + { + "cell_type": "code", + "execution_count": 1, + "metadata": {}, + "outputs": [], + "source": [ + "import os\n", + "os.environ[\"RD_LIB_CONFIG_PATH\"] = \"../../Configuration\"" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Some Imports to start with" + ] + }, + { + "cell_type": "code", + "execution_count": 2, + "metadata": {}, + "outputs": [], + "source": [ + "import refinitiv.data as rd\n", + "from refinitiv.data.discovery import Screener\n", + "import datetime\n", + "from IPython.display import display, clear_output" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Open the data session\n", + "\n", + "The open_session() function creates and open sessions based on the information contained in the refinitiv-data.config.json configuration file. Please edit this file to set the session type and other parameters required for the session you want to open." + ] + }, + { + "cell_type": "code", + "execution_count": 3, + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "" + ] + }, + "execution_count": 3, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "rd.open_session()" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Retrieve data" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "### Create a screener for EU Large Growth companies" + ] + }, + { + "cell_type": "code", + "execution_count": 4, + "metadata": {}, + "outputs": [], + "source": [ + "ue_large_growth = Screener('U(IN(indices(19262093/*Thomson Reuters Europe*/))/*UNV:Public*/), TR.CompanyMarketCap>=3604900000, TR.ValMoRegionRank>=70, TR.EQCountryListRank(Period=FY0)>=20, TR.IVPriceToIntrinsicValue<=0.85, TR.PriceMoMidTermComponent>=30,CURN=EUR')" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "### Print the screened instruments" + ] + }, + { + "cell_type": "code", + "execution_count": 5, + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "['PZU.WA', 'WAWI.OL', 'GLEN.L', 'TLXGn.DE', 'CCH.L', 'CNHI.MI', 'UBSG.S', 'ABNd.AS', 'ASRNL.AS', 'IG.MI', 'BAWG.VI', 'VRLA.PA', 'DTGGe.DE', 'CARR.PA', 'AXAF.PA', 'CAGR.PA', 'FOUG.PA', 'SGEF.PA', 'AKE.PA', 'BOUY.PA', 'RXL.PA', 'LOIM.PA', 'TTEF.PA', 'VLOF.PA', 'EURA.PA', 'EXHO.PA', 'PUBP.PA', 'URW.AS', 'BNPP.PA', 'TCFP.PA', 'SASY.PA', 'SOGN.PA', 'SGOB.PA', 'AIBG.I', 'BIRG.I', 'BATS.L', 'BARC.L', 'AV.L', 'BAES.L', 'BEZG.L', 'CNA.L', 'HSBA.L', 'SMDS.L', 'FRAS.L', 'INCH.L', 'NWG.L', 'SHEL.L', 'LLOY.L', 'JMAT.L', 'IGG.L', 'SSE.L', 'TSCO.L', 'BP.L', 'LGEN.L', 'CRH.L', 'IMB.L', 'ALVG.DE', 'MBGn.DE', 'DTEGn.DE', 'HNRGn.DE', 'HOTG.DE', 'MUVGn.DE', 'VOWG_p.DE', 'BAMI.MI', 'BZU.MI', 'ENI.MI', 'STLA.MI', 'GASI.MI', 'US.MI', 'LDOF.MI', 'HRA.MI', 'MDBI.MI', 'CRDI.MI', 'TENR.MI', 'TRN.MI', 'AD.AS', 'NDASE.ST', 'SHBa.ST', 'SWEDa.ST', 'BBVA.MC', 'BKT.MC', 'CABK.MC', 'IBE.MC', 'MAP.MC', 'REP.MC', 'SAN.MC', 'SABE.MC', 'ANDR.VI', 'ERST.VI', 'MOLB.BU', 'OTPB.BU', 'OBER.VI', 'STRV.VI', 'OMVV.VI', 'RBIV.VI', 'TELA.VI', 'ACKB.BR', 'AKBNK.IS', 'BKOM.PR', 'BIMAS.IS', 'DNB.OL', 'EREGL.IS', 'EURBr.AT', 'FROTO.IS', 'GALP.LS', 'GARAN.IS', 'ISCTR.IS', 'KBC.BR', 'NHY.OL', 'OPAr.AT', 'PEO.WA', 'PKO.WA', 'PKN.WA', 'SOLB.BR', 'STB.OL', 'TCELL.IS', 'THYAO.IS', 'TOASO.IS', 'TUPRS.IS', 'YAR.OL', 'YKBNK.IS', 'ZURN.S', 'TTKOM.IS', 'ENGIE.PA', 'BOL.ST', 'SEBa.ST', 'BAER.S', 'TEF.MC', 'PHNX.L']\n" + ] + } + ], + "source": [ + "print(list(ue_large_growth))" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "### Use the screener with get_data()" + ] + }, + { + "cell_type": "code", + "execution_count": 6, + "metadata": {}, + "outputs": [ + { + "data": { + "text/html": [ + "
\n", + "\n", + "\n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
InstrumentRevenueBIDASK
0PZU.WA<NA>35.7535.76
1WAWI.OL3416599440.0<NA><NA>
2GLEN.L179231604660.0518.4518.6
3TLXGn.DE<NA>45.2645.34
4CCH.L7168400000.01970.51972.0
...............
124BOL.ST6679390184.97212<NA><NA>
125SEBa.ST<NA><NA><NA>
126BAER.S<NA>56.2856.3
127TEF.MC39277000000.03.5513.553
128PHNX.L<NA>621.2621.8
\n", + "

129 rows × 4 columns

\n", + "
" + ], + "text/plain": [ + " Instrument Revenue BID ASK\n", + "0 PZU.WA 35.75 35.76\n", + "1 WAWI.OL 3416599440.0 \n", + "2 GLEN.L 179231604660.0 518.4 518.6\n", + "3 TLXGn.DE 45.26 45.34\n", + "4 CCH.L 7168400000.0 1970.5 1972.0\n", + ".. ... ... ... ...\n", + "124 BOL.ST 6679390184.97212 \n", + "125 SEBa.ST \n", + "126 BAER.S 56.28 56.3\n", + "127 TEF.MC 39277000000.0 3.551 3.553\n", + "128 PHNX.L 621.2 621.8\n", + "\n", + "[129 rows x 4 columns]" + ] + }, + "execution_count": 6, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "rd.get_data(ue_large_growth, ['BID', 'ASK', 'TR.Revenue'], parameters={'curn':'eur'})" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "### Use the screener with get_history()" + ] + }, + { + "cell_type": "code", + "execution_count": 7, + "metadata": {}, + "outputs": [ + { + "data": { + "text/html": [ + "
\n", + "\n", + "\n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
PZU.WAWAWI.OLGLEN.LTLXGn.DECCH.L...BOL.STSEBa.STBAER.STEF.MCPHNX.L
BIDASKBIDASKBIDASKBIDASKBIDASK...BIDASKBIDASKBIDASKBIDASKBIDASK
Date
2022-11-09<NA><NA><NA><NA><NA><NA><NA><NA><NA><NA>...<NA><NA><NA><NA><NA><NA><NA><NA><NA><NA>
2022-11-11<NA><NA><NA><NA><NA><NA><NA><NA><NA><NA>...<NA><NA><NA><NA><NA><NA><NA><NA><NA><NA>
2022-11-16<NA><NA><NA><NA><NA><NA><NA><NA><NA><NA>...<NA><NA><NA><NA><NA><NA><NA><NA><NA><NA>
2022-11-21<NA><NA><NA><NA><NA><NA><NA><NA><NA><NA>...<NA><NA><NA><NA><NA><NA><NA><NA><NA><NA>
2022-11-24<NA><NA><NA><NA><NA><NA><NA><NA><NA><NA>...<NA><NA><NA><NA><NA><NA><NA><NA><NA><NA>
2022-11-25<NA><NA><NA><NA><NA><NA><NA><NA><NA><NA>...<NA><NA><NA><NA><NA><NA><NA><NA><NA><NA>
2022-11-28<NA><NA><NA><NA><NA><NA><NA><NA><NA><NA>...<NA><NA><NA><NA><NA><NA><NA><NA><NA><NA>
2022-11-29<NA><NA><NA><NA><NA><NA><NA><NA><NA><NA>...<NA><NA><NA><NA><NA><NA><NA><NA><NA><NA>
2022-12-01<NA><NA><NA><NA><NA><NA><NA><NA><NA><NA>...<NA><NA><NA><NA><NA><NA><NA><NA><NA><NA>
2022-12-02<NA><NA><NA><NA><NA><NA><NA><NA><NA><NA>...<NA><NA><NA><NA><NA><NA><NA><NA><NA><NA>
2022-12-05<NA><NA><NA><NA><NA><NA><NA><NA><NA><NA>...<NA><NA><NA><NA><NA><NA><NA><NA><NA><NA>
2022-12-06<NA><NA><NA><NA>556.0556.1<NA><NA>2008.02009.0...<NA><NA><NA><NA><NA><NA><NA><NA>611.4611.6
2022-12-07<NA><NA><NA><NA>540.3540.4<NA><NA>1989.01989.5...<NA><NA><NA><NA>54.154.24<NA><NA>605.4605.6
2022-12-0832.5832.6892.6592.7548.5548.643.6443.71972.01972.5...397.35397.4117.5117.654.1254.143.4233.424600.6600.8
2022-12-0932.4732.4894.5594.75542.4542.543.7443.781989.51990.0...399.15399.25118.6118.6554.3254.343.4743.475603.6603.8
2022-12-1232.832.8294.3594.4537.3537.443.9443.961962.51963.0...390.4390.5118.95119.0553.6653.683.4613.462599.0599.4
2022-12-1333.933.9195.6596.55545.4545.543.7843.821980.51981.0...400.5400.65120.2120.354.7654.783.2913.292609.2609.4
2022-12-1433.5533.6594.594.55541.0541.143.8643.91980.51981.0...399.95400.05121.25121.354.5654.583.3263.327615.4615.6
2022-12-1533.4333.7193.7594.55532.5532.642.7242.781941.51942.0...395.95396.05119.55119.6553.6853.73.3063.309611.6612.2
2022-12-1633.4933.594.4594.9531.1531.242.2642.321933.51936.0...392.65392.75117.35117.4552.9452.963.2453.246596.6596.8
2022-12-1933.833.8296.096.05536.6536.843.0243.081961.01961.5...394.6394.75117.95118.053.1653.183.293.291598.4598.6
2022-12-2034.5834.697.5597.9547.9548.043.2843.321936.01937.5...397.3397.4118.25118.3552.9252.943.2843.285593.8594.0
2022-12-2134.6134.67100.2100.4560.8560.943.943.961963.51964.0...401.0401.15119.4119.553.7453.763.3413.342610.8611.6
2022-12-2234.8234.9599.95100.2557.0557.144.1844.261950.51951.0...392.2392.3119.8119.953.2653.283.3573.358607.6607.8
2022-12-2334.634.6599.95100.2558.0558.244.0644.121950.51951.0...397.1397.2120.6120.753.753.723.3833.384610.0611.8
2022-12-26<NA><NA><NA><NA><NA><NA><NA><NA><NA><NA>...<NA><NA><NA><NA><NA><NA><NA><NA><NA><NA>
2022-12-2734.5534.58101.1101.2<NA><NA>44.4444.5<NA><NA>...398.3398.4121.45121.5554.0854.13.3723.375<NA><NA>
2022-12-2834.734.7498.698.7559.7559.944.3844.421934.01934.5...402.15402.25120.35120.453.7653.783.3873.388610.8611.0
2022-12-2935.6435.798.798.9558.3558.444.844.861929.01929.5...401.05401.15121.6121.6554.2454.263.4453.446612.6612.8
2022-12-3035.4235.4697.097.05552.4552.944.3244.361968.51973.0...391.95392.1119.75119.8553.8653.883.3843.385608.6608.8
2023-01-0234.6134.6999.599.9<NA><NA>44.044.06<NA><NA>...400.95401.1120.75120.85<NA><NA>3.4443.446<NA><NA>
2023-01-0334.8234.8496.3596.4544.4545.044.7244.781938.51939.0...397.1397.25121.25121.3555.3255.343.4543.455615.8616.2
2023-01-0435.8235.8592.592.85506.6506.745.6245.641967.01967.5...391.0391.1122.6122.6556.6456.663.5373.538623.6623.8
2023-01-0535.7535.7692.2592.3513.9514.045.245.241973.51974.0...404.8404.85123.75123.8556.7656.783.5423.543620.6620.8
\n", + "

34 rows × 258 columns

\n", + "
" + ], + "text/plain": [ + " PZU.WA WAWI.OL GLEN.L TLXGn.DE CCH.L \\\n", + " BID ASK BID ASK BID ASK BID ASK BID \n", + "Date \n", + "2022-11-09 \n", + "2022-11-11 \n", + "2022-11-16 \n", + "2022-11-21 \n", + "2022-11-24 \n", + "2022-11-25 \n", + "2022-11-28 \n", + "2022-11-29 \n", + "2022-12-01 \n", + "2022-12-02 \n", + "2022-12-05 \n", + "2022-12-06 556.0 556.1 2008.0 \n", + "2022-12-07 540.3 540.4 1989.0 \n", + "2022-12-08 32.58 32.68 92.65 92.7 548.5 548.6 43.64 43.7 1972.0 \n", + "2022-12-09 32.47 32.48 94.55 94.75 542.4 542.5 43.74 43.78 1989.5 \n", + "2022-12-12 32.8 32.82 94.35 94.4 537.3 537.4 43.94 43.96 1962.5 \n", + "2022-12-13 33.9 33.91 95.65 96.55 545.4 545.5 43.78 43.82 1980.5 \n", + "2022-12-14 33.55 33.65 94.5 94.55 541.0 541.1 43.86 43.9 1980.5 \n", + "2022-12-15 33.43 33.71 93.75 94.55 532.5 532.6 42.72 42.78 1941.5 \n", + "2022-12-16 33.49 33.5 94.45 94.9 531.1 531.2 42.26 42.32 1933.5 \n", + "2022-12-19 33.8 33.82 96.0 96.05 536.6 536.8 43.02 43.08 1961.0 \n", + "2022-12-20 34.58 34.6 97.55 97.9 547.9 548.0 43.28 43.32 1936.0 \n", + "2022-12-21 34.61 34.67 100.2 100.4 560.8 560.9 43.9 43.96 1963.5 \n", + "2022-12-22 34.82 34.95 99.95 100.2 557.0 557.1 44.18 44.26 1950.5 \n", + "2022-12-23 34.6 34.65 99.95 100.2 558.0 558.2 44.06 44.12 1950.5 \n", + "2022-12-26 \n", + "2022-12-27 34.55 34.58 101.1 101.2 44.44 44.5 \n", + "2022-12-28 34.7 34.74 98.6 98.7 559.7 559.9 44.38 44.42 1934.0 \n", + "2022-12-29 35.64 35.7 98.7 98.9 558.3 558.4 44.8 44.86 1929.0 \n", + "2022-12-30 35.42 35.46 97.0 97.05 552.4 552.9 44.32 44.36 1968.5 \n", + "2023-01-02 34.61 34.69 99.5 99.9 44.0 44.06 \n", + "2023-01-03 34.82 34.84 96.35 96.4 544.4 545.0 44.72 44.78 1938.5 \n", + "2023-01-04 35.82 35.85 92.5 92.85 506.6 506.7 45.62 45.64 1967.0 \n", + "2023-01-05 35.75 35.76 92.25 92.3 513.9 514.0 45.2 45.24 1973.5 \n", + "\n", + " ... BOL.ST SEBa.ST BAER.S TEF.MC \\\n", + " ASK ... BID ASK BID ASK BID ASK BID \n", + "Date ... \n", + "2022-11-09 ... \n", + "2022-11-11 ... \n", + "2022-11-16 ... \n", + "2022-11-21 ... \n", + "2022-11-24 ... \n", + "2022-11-25 ... \n", + "2022-11-28 ... \n", + "2022-11-29 ... \n", + "2022-12-01 ... \n", + "2022-12-02 ... \n", + "2022-12-05 ... \n", + "2022-12-06 2009.0 ... \n", + "2022-12-07 1989.5 ... 54.1 54.24 \n", + "2022-12-08 1972.5 ... 397.35 397.4 117.5 117.6 54.12 54.14 3.423 \n", + "2022-12-09 1990.0 ... 399.15 399.25 118.6 118.65 54.32 54.34 3.474 \n", + "2022-12-12 1963.0 ... 390.4 390.5 118.95 119.05 53.66 53.68 3.461 \n", + "2022-12-13 1981.0 ... 400.5 400.65 120.2 120.3 54.76 54.78 3.291 \n", + "2022-12-14 1981.0 ... 399.95 400.05 121.25 121.3 54.56 54.58 3.326 \n", + "2022-12-15 1942.0 ... 395.95 396.05 119.55 119.65 53.68 53.7 3.306 \n", + "2022-12-16 1936.0 ... 392.65 392.75 117.35 117.45 52.94 52.96 3.245 \n", + "2022-12-19 1961.5 ... 394.6 394.75 117.95 118.0 53.16 53.18 3.29 \n", + "2022-12-20 1937.5 ... 397.3 397.4 118.25 118.35 52.92 52.94 3.284 \n", + "2022-12-21 1964.0 ... 401.0 401.15 119.4 119.5 53.74 53.76 3.341 \n", + "2022-12-22 1951.0 ... 392.2 392.3 119.8 119.9 53.26 53.28 3.357 \n", + "2022-12-23 1951.0 ... 397.1 397.2 120.6 120.7 53.7 53.72 3.383 \n", + "2022-12-26 ... \n", + "2022-12-27 ... 398.3 398.4 121.45 121.55 54.08 54.1 3.372 \n", + "2022-12-28 1934.5 ... 402.15 402.25 120.35 120.4 53.76 53.78 3.387 \n", + "2022-12-29 1929.5 ... 401.05 401.15 121.6 121.65 54.24 54.26 3.445 \n", + "2022-12-30 1973.0 ... 391.95 392.1 119.75 119.85 53.86 53.88 3.384 \n", + "2023-01-02 ... 400.95 401.1 120.75 120.85 3.444 \n", + "2023-01-03 1939.0 ... 397.1 397.25 121.25 121.35 55.32 55.34 3.454 \n", + "2023-01-04 1967.5 ... 391.0 391.1 122.6 122.65 56.64 56.66 3.537 \n", + "2023-01-05 1974.0 ... 404.8 404.85 123.75 123.85 56.76 56.78 3.542 \n", + "\n", + " PHNX.L \n", + " ASK BID ASK \n", + "Date \n", + "2022-11-09 \n", + "2022-11-11 \n", + "2022-11-16 \n", + "2022-11-21 \n", + "2022-11-24 \n", + "2022-11-25 \n", + "2022-11-28 \n", + "2022-11-29 \n", + "2022-12-01 \n", + "2022-12-02 \n", + "2022-12-05 \n", + "2022-12-06 611.4 611.6 \n", + "2022-12-07 605.4 605.6 \n", + "2022-12-08 3.424 600.6 600.8 \n", + "2022-12-09 3.475 603.6 603.8 \n", + "2022-12-12 3.462 599.0 599.4 \n", + "2022-12-13 3.292 609.2 609.4 \n", + "2022-12-14 3.327 615.4 615.6 \n", + "2022-12-15 3.309 611.6 612.2 \n", + "2022-12-16 3.246 596.6 596.8 \n", + "2022-12-19 3.291 598.4 598.6 \n", + "2022-12-20 3.285 593.8 594.0 \n", + "2022-12-21 3.342 610.8 611.6 \n", + "2022-12-22 3.358 607.6 607.8 \n", + "2022-12-23 3.384 610.0 611.8 \n", + "2022-12-26 \n", + "2022-12-27 3.375 \n", + "2022-12-28 3.388 610.8 611.0 \n", + "2022-12-29 3.446 612.6 612.8 \n", + "2022-12-30 3.385 608.6 608.8 \n", + "2023-01-02 3.446 \n", + "2023-01-03 3.455 615.8 616.2 \n", + "2023-01-04 3.538 623.6 623.8 \n", + "2023-01-05 3.543 620.6 620.8 \n", + "\n", + "[34 rows x 258 columns]" + ] + }, + "execution_count": 7, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "rd.get_history(ue_large_growth, ['BID', 'ASK'])" + ] + }, + { + "cell_type": "markdown", + "metadata": { + "tags": [] + }, + "source": [ + "### Use the chain with pricing streams" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "#### Define a callback to receive data events" + ] + }, + { + "cell_type": "code", + "execution_count": 8, + "metadata": {}, + "outputs": [], + "source": [ + "def display_data(data, instrument, stream):\n", + " clear_output(wait=True)\n", + " current_time = datetime.datetime.now().time()\n", + " print(current_time, \"- Data received for\", instrument)\n", + " display(data)" + ] + }, + { + "cell_type": "markdown", + "metadata": { + "tags": [] + }, + "source": [ + "#### Open the stream and register the callback" + ] + }, + { + "cell_type": "code", + "execution_count": 9, + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "09:57:04.204025 - Data received for TOASO.IS\n" + ] + }, + { + "data": { + "text/html": [ + "
\n", + "\n", + "\n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
BID
TOASO.IS161.7
\n", + "
" + ], + "text/plain": [ + " BID\n", + "TOASO.IS 161.7" + ] + }, + "metadata": {}, + "output_type": "display_data" + } + ], + "source": [ + "stream = rd.open_pricing_stream(ue_large_growth, ['BID', 'ASK'], on_data=display_data)" + ] + }, + { + "cell_type": "markdown", + "metadata": { + "tags": [] + }, + "source": [ + "#### Close the stream" + ] + }, + { + "cell_type": "code", + "execution_count": 10, + "metadata": {}, + "outputs": [], + "source": [ + "stream.close()" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "### Close the session" + ] + }, + { + "cell_type": "code", + "execution_count": 11, + "metadata": {}, + "outputs": [], + "source": [ + "rd.close_session()" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [] + } + ], + "metadata": { + "kernelspec": { + "display_name": "Python 3 (ipykernel)", + "language": "python", + "name": "python3" + }, + "language_info": { + "codemirror_mode": { + "name": "ipython", + "version": 3 + }, + "file_extension": ".py", + "mimetype": "text/x-python", + "name": "python", + "nbconvert_exporter": "python", + "pygments_lexer": "ipython3", + "version": "3.9.7" + } + }, + "nbformat": 4, + "nbformat_minor": 4 +} diff --git a/Examples/1-Access/EX-1.01.09-Dates&Calendars.ipynb b/Examples/1-Access/EX-1.01.09-Dates&Calendars.ipynb new file mode 100644 index 0000000..421a4f1 --- /dev/null +++ b/Examples/1-Access/EX-1.01.09-Dates&Calendars.ipynb @@ -0,0 +1,709 @@ +{ + "cells": [ + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "----\n", + "\n", + "\n", + "# Data Library for Python\n", + "\n", + "----" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Access layer - Dates & Calendars\n", + "This notebook demonstrates how to use the Access layer of the library to get Calendars information and how to use Calendars to generate date ranges with DataFrames." + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "#### Learn more\n", + "\n", + "To learn more about the Refinitiv Data Library for Python please join the Refinitiv Developer Community. By [registering](https://developers.refinitiv.com/iam/register) and [logging](https://developers.refinitiv.com/content/devportal/en_us/initCookie.html) into the Refinitiv Developer Community portal you will have free access to a number of learning materials like \n", + " [Quick Start guides](https://developers.refinitiv.com/en/api-catalog/refinitiv-data-platform/refinitiv-data-library-for-python/quick-start), \n", + " [Tutorials](https://developers.refinitiv.com/en/api-catalog/refinitiv-data-platform/refinitiv-data-library-for-python/learning), \n", + " [Documentation](https://developers.refinitiv.com/en/api-catalog/refinitiv-data-platform/refinitiv-data-library-for-python/docs)\n", + " and much more.\n", + "\n", + "#### Getting Help and Support\n", + "\n", + "If you have any questions regarding using the API, please post them on \n", + "the [Refinitiv Data Q&A Forum](https://community.developers.refinitiv.com/spaces/321/index.html). \n", + "The Refinitiv Developer Community will be happy to help. \n", + "\n", + "----" + ] + }, + { + "cell_type": "markdown", + "metadata": { + "tags": [] + }, + "source": [ + "## Set the configuration file location\n", + "For a better ease of use, you have the option to set initialization parameters of the Refinitiv Data Library in the _refinitiv-data.config.json_ configuration file. This file must be located beside your notebook, in your user folder or in a folder defined by the _RD_LIB_CONFIG_PATH_ environment variable. The _RD_LIB_CONFIG_PATH_ environment variable is the option used by this series of examples. The following code sets this environment variable. " + ] + }, + { + "cell_type": "code", + "execution_count": 1, + "metadata": {}, + "outputs": [], + "source": [ + "import os\n", + "os.environ[\"RD_LIB_CONFIG_PATH\"] = \"../../Configuration\"" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Some Imports to start with" + ] + }, + { + "cell_type": "code", + "execution_count": 2, + "metadata": {}, + "outputs": [], + "source": [ + "import refinitiv.data as rd\n", + "import pandas as pd\n", + "from datetime import date, datetime, timedelta" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Open the data session\n", + "\n", + "The open_session() function creates and open sessions based on the information contained in the refinitiv-data.config.json configuration file. Please edit this file to set the session type and other parameters required for the session you want to open." + ] + }, + { + "cell_type": "code", + "execution_count": 3, + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "" + ] + }, + "execution_count": 3, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "rd.open_session()" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Retrieve data" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "### Add Periods" + ] + }, + { + "cell_type": "code", + "execution_count": 4, + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "numpy.datetime64('2015-01-02')" + ] + }, + "execution_count": 4, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "calculated_date = rd.dates_and_calendars.add_periods(\n", + " start_date=\"2014-01-01\",\n", + " period=\"1Y\",\n", + " calendars=[\"BAR\", \"KOR\"],\n", + " date_moving_convention=\"NextBusinessDay\",\n", + " end_of_month_convention=\"Last28\"\n", + ")\n", + "calculated_date" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "### Count Periods" + ] + }, + { + "cell_type": "code", + "execution_count": 5, + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "CountedPeriods(count=4.0, tenor='WD')" + ] + }, + "execution_count": 5, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "rd.dates_and_calendars.count_periods(\n", + " start_date= timedelta(-11),\n", + " end_date= timedelta(-3),\n", + " period_type=rd.dates_and_calendars.PeriodType.WORKING_DAY,\n", + " currencies=[\"EUR\"]\n", + ")" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "### Date Schedule" + ] + }, + { + "cell_type": "code", + "execution_count": 6, + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "[numpy.datetime64('2019-05-07'),\n", + " numpy.datetime64('2019-05-14'),\n", + " numpy.datetime64('2019-05-21'),\n", + " numpy.datetime64('2019-05-28'),\n", + " numpy.datetime64('2019-06-04'),\n", + " numpy.datetime64('2019-06-11'),\n", + " numpy.datetime64('2019-06-18'),\n", + " numpy.datetime64('2019-06-25'),\n", + " numpy.datetime64('2019-07-02'),\n", + " numpy.datetime64('2019-07-09')]" + ] + }, + "execution_count": 6, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "schedule = rd.dates_and_calendars.date_schedule(\n", + " start_date=\"2019-04-30\",\n", + " count=10,\n", + " frequency=\"Weekly\",\n", + " calendars=[\"EMU\", \"GER\"],\n", + " day_of_week=rd.dates_and_calendars.DayOfWeek.TUESDAY\n", + ")\n", + "schedule" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "### Holidays" + ] + }, + { + "cell_type": "code", + "execution_count": 7, + "metadata": { + "tags": [] + }, + "outputs": [ + { + "data": { + "text/html": [ + "
\n", + "\n", + "\n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
namecalendarscountriestagdate
0New Year's Day[USA, FRA][USA, FRA]None2023-01-01
1New Year's Day (Observed)[USA][USA]None2023-01-02
2Martin Luther King's Birthday[USA][USA]None2023-01-16
3Washington's Birthday[USA][USA]None2023-02-20
4Memorial Day[USA][USA]None2023-05-29
5Whit Monday[FRA][FRA]None2023-05-29
6Juneteenth National Independence Day[USA][USA]None2023-06-19
7Independence Day[USA][USA]None2023-07-04
8Labor Day[USA][USA]None2023-09-04
9Columbus Day[USA][USA]None2023-10-09
10Veterans' Day[USA][USA]None2023-11-11
11Remembrance Day[FRA][FRA]None2023-11-11
12Thanksgiving Day[USA][USA]None2023-11-23
13Christmas Day[USA, FRA][USA, FRA]None2023-12-25
14Good Friday[FRA][FRA]None2023-04-07
15Easter Monday[FRA][FRA]None2023-04-10
16Labour Day[FRA][FRA]None2023-05-01
171945 Victory Day[FRA][FRA]None2023-05-08
18Ascension Day[FRA][FRA]None2023-05-18
19Whit Sunday[FRA][FRA]None2023-05-28
20French National Holiday[FRA][FRA]None2023-07-14
21Assumption[FRA][FRA]None2023-08-15
22All Saint's Day[FRA][FRA]None2023-11-01
23Boxing Day[FRA][FRA]None2023-12-26
\n", + "
" + ], + "text/plain": [ + " name calendars countries tag \\\n", + "0 New Year's Day [USA, FRA] [USA, FRA] None \n", + "1 New Year's Day (Observed) [USA] [USA] None \n", + "2 Martin Luther King's Birthday [USA] [USA] None \n", + "3 Washington's Birthday [USA] [USA] None \n", + "4 Memorial Day [USA] [USA] None \n", + "5 Whit Monday [FRA] [FRA] None \n", + "6 Juneteenth National Independence Day [USA] [USA] None \n", + "7 Independence Day [USA] [USA] None \n", + "8 Labor Day [USA] [USA] None \n", + "9 Columbus Day [USA] [USA] None \n", + "10 Veterans' Day [USA] [USA] None \n", + "11 Remembrance Day [FRA] [FRA] None \n", + "12 Thanksgiving Day [USA] [USA] None \n", + "13 Christmas Day [USA, FRA] [USA, FRA] None \n", + "14 Good Friday [FRA] [FRA] None \n", + "15 Easter Monday [FRA] [FRA] None \n", + "16 Labour Day [FRA] [FRA] None \n", + "17 1945 Victory Day [FRA] [FRA] None \n", + "18 Ascension Day [FRA] [FRA] None \n", + "19 Whit Sunday [FRA] [FRA] None \n", + "20 French National Holiday [FRA] [FRA] None \n", + "21 Assumption [FRA] [FRA] None \n", + "22 All Saint's Day [FRA] [FRA] None \n", + "23 Boxing Day [FRA] [FRA] None \n", + "\n", + " date \n", + "0 2023-01-01 \n", + "1 2023-01-02 \n", + "2 2023-01-16 \n", + "3 2023-02-20 \n", + "4 2023-05-29 \n", + "5 2023-05-29 \n", + "6 2023-06-19 \n", + "7 2023-07-04 \n", + "8 2023-09-04 \n", + "9 2023-10-09 \n", + "10 2023-11-11 \n", + "11 2023-11-11 \n", + "12 2023-11-23 \n", + "13 2023-12-25 \n", + "14 2023-04-07 \n", + "15 2023-04-10 \n", + "16 2023-05-01 \n", + "17 2023-05-08 \n", + "18 2023-05-18 \n", + "19 2023-05-28 \n", + "20 2023-07-14 \n", + "21 2023-08-15 \n", + "22 2023-11-01 \n", + "23 2023-12-26 " + ] + }, + "execution_count": 7, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "holidays = rd.dates_and_calendars.holidays(\n", + " start_date=\"2023-01-01\",\n", + " end_date=\"2023-12-31\",\n", + " calendars=[\"USA\", \"FRA\"]\n", + ")\n", + " \n", + "holidays.df" + ] + }, + { + "cell_type": "markdown", + "metadata": { + "tags": [] + }, + "source": [ + "### Using Pandas DataFrames to generating date ranges based on Holidays calendars" + ] + }, + { + "cell_type": "code", + "execution_count": 8, + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "DatetimeIndex(['2023-07-03', '2023-07-05', '2023-07-06', '2023-07-07',\n", + " '2023-07-10', '2023-07-11', '2023-07-12', '2023-07-13',\n", + " '2023-07-14', '2023-07-17', '2023-07-18', '2023-07-19',\n", + " '2023-07-20', '2023-07-21', '2023-07-24', '2023-07-25',\n", + " '2023-07-26', '2023-07-27', '2023-07-28', '2023-07-31'],\n", + " dtype='datetime64[ns]', freq='C')" + ] + }, + "execution_count": 8, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "# US business days\n", + "pd.date_range(\n", + " start='2023-07-01', \n", + " end=\"2023-07-31\", \n", + " freq=holidays.calendars[\"USA\"].offset\n", + ")" + ] + }, + { + "cell_type": "code", + "execution_count": 9, + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "DatetimeIndex(['2023-07-03', '2023-07-04', '2023-07-05', '2023-07-06',\n", + " '2023-07-07', '2023-07-10', '2023-07-11', '2023-07-12',\n", + " '2023-07-13', '2023-07-17', '2023-07-18', '2023-07-19',\n", + " '2023-07-20', '2023-07-21', '2023-07-24', '2023-07-25',\n", + " '2023-07-26', '2023-07-27', '2023-07-28', '2023-07-31'],\n", + " dtype='datetime64[ns]', freq='C')" + ] + }, + "execution_count": 9, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "# French business days\n", + "pd.date_range(\n", + " start='2023-07-01', \n", + " end=\"2023-07-31\", \n", + " freq=holidays.calendars[\"FRA\"].offset\n", + ")" + ] + }, + { + "cell_type": "code", + "execution_count": 10, + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "DatetimeIndex(['2023-07-03', '2023-07-05', '2023-07-06', '2023-07-07',\n", + " '2023-07-10', '2023-07-11', '2023-07-12', '2023-07-13',\n", + " '2023-07-17', '2023-07-18', '2023-07-19', '2023-07-20',\n", + " '2023-07-21', '2023-07-24', '2023-07-25', '2023-07-26',\n", + " '2023-07-27', '2023-07-28', '2023-07-31'],\n", + " dtype='datetime64[ns]', freq='C')" + ] + }, + "execution_count": 10, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "# US and French business days\n", + "pd.date_range(\n", + " start='2023-07-01', \n", + " end=\"2023-07-31\", \n", + " freq=holidays.offset\n", + ")" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "### Working Days" + ] + }, + { + "cell_type": "code", + "execution_count": 11, + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "False" + ] + }, + "execution_count": 11, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "rd.dates_and_calendars.is_working_day( \n", + " date=\"2025-01-01\",\n", + " calendars=[\"FRA\"]\n", + ")" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Close the session" + ] + }, + { + "cell_type": "code", + "execution_count": 12, + "metadata": {}, + "outputs": [], + "source": [ + "rd.close_session()" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [] + } + ], + "metadata": { + "kernelspec": { + "display_name": "Python 3 (ipykernel)", + "language": "python", + "name": "python3" + }, + "language_info": { + "codemirror_mode": { + "name": "ipython", + "version": 3 + }, + "file_extension": ".py", + "mimetype": "text/x-python", + "name": "python", + "nbconvert_exporter": "python", + "pygments_lexer": "ipython3", + "version": "3.9.7" + } + }, + "nbformat": 4, + "nbformat_minor": 4 +} diff --git a/Examples/1-Access/physical_assets_map.py b/Examples/1-Access/physical_assets_map.py new file mode 100644 index 0000000..c60c70d --- /dev/null +++ b/Examples/1-Access/physical_assets_map.py @@ -0,0 +1,60 @@ +from ipyleaflet import Map, Marker,basemaps,LayersControl,ScaleControl,FullScreenControl,basemap_to_tiles,SplitMapControl,SearchControl +import pandas +class PhysicalAssetsMap(): + def __init__(self,zoom=None): + #self.right_layer = basemap_to_tiles(basemaps.NASAGIBS.ModisTerraTrueColorCR, "2017-04-08") + self.right_layer = basemap_to_tiles(basemaps.Gaode.Satellite) + self.left_layer = basemap_to_tiles(basemaps.OpenStreetMap.HOT) + if zoom is None: + self.zoom = 5 + else: + self.zoom = zoom + + + def _add_map_controls(self,center): + m = Map(center=center,zoom=5) + control = LayersControl(position='topright') + m.add_control(control) + m.add_control(ScaleControl(position='bottomleft')) + m.add_control(FullScreenControl()) + m.add_control(SplitMapControl(left_layer=self.left_layer, right_layer=self.right_layer)) + m.add_control(SearchControl( + position="topleft", + url='https://nominatim.openstreetmap.org/search?format=json&q={s}', + zoom=self.zoom)) + self.map = m + + + def plot(self,df): + count = 0 + center = None + if 'Latitude' not in df.columns: + self.map = Map(zoom=self.zoom) + return self + + for index,row in df.iterrows(): + name = row['DTSubjectName'] + lat = row['Latitude'] + lon = row['Longitude'] + if type(lat) == pandas._libs.missing.NAType or type(lon) == pandas._libs.missing.NAType: + continue + if center is None: + center = (lat,lon) + if center is not None: + self._add_map_controls(center) + else: + self.map = Map(zoom=self.zoom) + + for index,row in df.iterrows(): + name = row['DTSubjectName'] + lat = row['Latitude'] + lon = row['Longitude'] + if type(lat) == pandas._libs.missing.NAType or type(lon) == pandas._libs.missing.NAType: + continue + count+= 1 + marker = Marker(name=name,location=tuple([lat,lon]), draggable=False) + self.map.add_layer(marker) + return self + + def show(self): + display(self.map) diff --git a/Examples/1-Access/search-templates.config.json b/Examples/1-Access/search-templates.config.json new file mode 100644 index 0000000..231e526 --- /dev/null +++ b/Examples/1-Access/search-templates.config.json @@ -0,0 +1,67 @@ +{ + "search": { + "templates": { + "Equity": { + "description": "Search for Ordinary Shares of a particular exchange.", + "parameters": { + "what": { + "description": "What to search for", + "default": "" + }, + "exchange_name": { + "description": "Name of the exchange where this equity is traded. For example: 'London Stock Exchange', 'Euronext Paris', 'Shanghai Stock Exchange', 'The Toronto Stock Exchange', 'NYSE Consolidated', etc.", + "optional":true + } + }, + "request_body": { + "Query":"#{what}", + "Filter":"AssetState ne 'DC' and SearchAllCategoryv2 eq 'Equities' {{if exchange_name is defined}} and ExchangeName xeq '#{exchange_name}'{{endif}} and RCSAssetCategoryGenealogy eq 'A:1L'", + "Select": "DTSubjectName,ExchangeName,RIC,MktCapCompanyUsd,ShareholdersEquityUsd,Pe,DebtToAssets,Beta,Eps,Gics,EpsGrowth5Y,RevenueGrowth5Y,DivYld,EstDivYldFy1,EstDivYldFy2,TotalAssetsUsd,TotalLiabilitiesUsd,PretaxProfitMargin,Roe,PeRelIndex,DivYldHigh,DivYldRelIndex,SolvencyMargin,PricePctChg3MRelIndex,PricePctChgYtdRelIndex,Volatility30D,Volatility200D,EstEpsFy1,EstEpsFy2,ExDividendDate,RCSIssuerCountryLeaf,RCSIssuerCountryGenealogy,RCSAssetCategoryGenealogy,SearchAllCategoryv3,SearchAllCategoryv2,SearchAllCategory,RCSAssetCategory,RCSCurrencyLeaf,AssetState,BusinessEntity,PI,IssueISIN,CUSIP,CinCUSIP,SEDOL", + "Top":10000, + "Skip":0, + "GroupCount":3, + "View":"EquityQuotes" + } + }, + "Mines": { + "description": "Find coordinates of mines in a region.", + "parameters": { + "commodity": { + "description": "Commodity extracted from the mine. For example: 'Gold', 'Nickel', 'Zinc', 'Cooper', 'Palladium', 'Lead', etc.", + "optional":true + }, + "region": { + "description": "Region to search in. For example: 'Botswana', 'Brazil', 'Canada', 'Chile', 'Costa Rica', 'Cuba', 'United States', 'Guyana', 'Peru', 'South Africa', etc", + "optional":true + } + }, + "request_body": { + "Filter":"RCSAssetTypeLeaf eq 'Mine' {{if commodity is defined}} and RCSCommodityTypeLeaf xeq '#{commodity}'{{endif}} {{if region is defined}} and RCSRegionLeaf eq '#{region}'{{endif}}", + "Select":"RIC,RCSRegionLeaf,RCSCommodityTypeLeaf,DTSubjectName,PhysicalAssetStatus,Latitude,Longitude", + "Top":10000, + "Skip":0, + "GroupCount":3, + "View":"PhysicalAssets" + } + }, + "VesselsBoundFor": { + "description": "Search for vessels heading to a destination.", + "parameters": { + "destination": { + "description": "Vessel's destination", + "optional":true + } + }, + "request_body": { + "Filter":"AISStatus ne null and AISStatus ne 'Moored' and AISStatus ne '*defined*' {{if destination is defined}} and DestinationPort eq '#{destination}'{{endif}}", + "OrderBy":"GrossTonnage desc", + "Select":"RIC,DestinationPort,DTSubjectName,DTSimpleType,AISStatus,GrossTonnage,Latitude,Longitude", + "Top":500, + "Skip":0, + "GroupCount":3, + "View":"VesselPhysicalAssets" + } + } + } + } +} diff --git a/Examples/2-Content/2.01-HistoricalPricing/EX-2.01.02-HistoricalPricing-ParallelRequests.ipynb b/Examples/2-Content/2.01-HistoricalPricing/EX-2.01.02-HistoricalPricing-ParallelRequests.ipynb index 2b563a8..0101a57 100644 --- a/Examples/2-Content/2.01-HistoricalPricing/EX-2.01.02-HistoricalPricing-ParallelRequests.ipynb +++ b/Examples/2-Content/2.01-HistoricalPricing/EX-2.01.02-HistoricalPricing-ParallelRequests.ipynb @@ -66,7 +66,7 @@ }, { "cell_type": "code", - "execution_count": 2, + "execution_count": 1, "metadata": {}, "outputs": [], "source": [ @@ -86,16 +86,16 @@ }, { "cell_type": "code", - "execution_count": 3, + "execution_count": 2, "metadata": {}, "outputs": [ { "data": { "text/plain": [ - "" + "" ] }, - "execution_count": 3, + "execution_count": 2, "metadata": {}, "output_type": "execute_result" } @@ -120,14 +120,14 @@ }, { "cell_type": "code", - "execution_count": 4, + "execution_count": 3, "metadata": {}, "outputs": [], "source": [ "tasks = asyncio.gather(\n", - " historical_pricing.events.Definition('VOD.L', closure='Vodafone').get_data_async(),\n", - " historical_pricing.summaries.Definition('AAPL.O', closure='Apple').get_data_async(),\n", - " historical_pricing.summaries.Definition('MSFT.O', closure='Microsoft').get_data_async()\n", + " historical_pricing.events.Definition('VOD.L').get_data_async(closure='Vodafone'),\n", + " historical_pricing.summaries.Definition('AAPL.O').get_data_async(closure='Apple'),\n", + " historical_pricing.summaries.Definition('MSFT.O').get_data_async(closure='Microsoft')\n", ")" ] }, @@ -135,39 +135,21 @@ "cell_type": "markdown", "metadata": {}, "source": [ - "### Wait for all tasks to be complete " - ] - }, - { - "cell_type": "code", - "execution_count": 5, - "metadata": {}, - "outputs": [], - "source": [ - "asyncio.get_event_loop().run_until_complete(tasks)\n", - "vodafone, apple, microsoft = tasks.result()" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "### Check Response and display results\n", - "When using async calls, we should check the response's ***is_success*** flag to ensure it worked. If it failed, the ***http_status*** should provide a reason for the failure." + "### Wait for all tasks to be complete, check responses and display results " ] }, { "cell_type": "code", - "execution_count": 6, + "execution_count": 4, "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ - "\n", + "\n", "\n", - "Reponse received for Vodafone\n" + "Reponse received for ['Vodafone']\n" ] }, { @@ -240,17 +222,17 @@ " \n", " \n", " \n", - " 2021-12-17 11:21:16.547\n", + " 2022-12-12 14:18:28.906\n", " quote\n", - " 55408\n", - " 2700478\n", + " 12384\n", + " 3904822\n", " <NA>\n", " <NA>\n", " <NA>\n", " <NA>\n", - " 113.42\n", - " 12983\n", - " 113.48\n", + " 86.7\n", + " 19762\n", + " 86.71\n", " ...\n", " <NA>\n", " <NA>\n", @@ -258,23 +240,23 @@ " <NA>\n", " <NA>\n", " <NA>\n", - " 113.45\n", - " None\n", - " None\n", - " [ASK_TONE]\n", + " 86.705\n", + " <NA>\n", + " <NA>\n", + " [BID_TONE]\n", " \n", " \n", - " 2021-12-17 11:21:16.547\n", + " 2022-12-12 14:18:28.906\n", " quote\n", - " 55440\n", - " 2700480\n", + " 12400\n", + " 3904823\n", " <NA>\n", " <NA>\n", " <NA>\n", " <NA>\n", - " 113.42\n", - " 13802\n", - " 113.48\n", + " 86.7\n", + " 21603\n", + " 86.71\n", " ...\n", " <NA>\n", " <NA>\n", @@ -282,23 +264,23 @@ " <NA>\n", " <NA>\n", " <NA>\n", - " 113.45\n", - " None\n", - " None\n", + " 86.705\n", + " <NA>\n", + " <NA>\n", " [BID_TONE]\n", " \n", " \n", - " 2021-12-17 11:21:16.547\n", + " 2022-12-12 14:18:28.907\n", " quote\n", - " 55424\n", - " 2700479\n", + " 12448\n", + " 3904826\n", " <NA>\n", " <NA>\n", " <NA>\n", " <NA>\n", - " 113.42\n", - " 12983\n", - " 113.48\n", + " 86.7\n", + " 21603\n", + " 86.72\n", " ...\n", " <NA>\n", " <NA>\n", @@ -306,47 +288,23 @@ " <NA>\n", " <NA>\n", " <NA>\n", - " 113.45\n", - " None\n", - " None\n", - " [ASK_TONE]\n", - " \n", - " \n", - " 2021-12-17 11:21:16.548\n", - " trade\n", - " 55486\n", - " 276989\n", - " XLON\n", - " 113.46\n", - " 2221\n", - " 113.0254\n", - " 113.42\n", - " 13802\n", - " 113.46\n", - " ...\n", - " 12-------PH---\n", - " OB\n", - " 76625752\n", - " 111.12\n", - " 113.76\n", - " 111.12\n", + " 86.71\n", " <NA>\n", - " None\n", - " None\n", - " A[ACT_FLAG1];A[CONDCODE_1];[CONDCODE_2];Y [EL...\n", + " <NA>\n", + " [ASK_TONE]\n", " \n", " \n", - " 2021-12-17 11:21:16.548\n", + " 2022-12-12 14:18:28.907\n", " quote\n", - " 55456\n", - " 2700482\n", + " 12464\n", + " 3904827\n", " <NA>\n", " <NA>\n", " <NA>\n", " <NA>\n", - " 113.42\n", - " 13802\n", - " 113.46\n", + " 86.7\n", + " 25346\n", + " 86.72\n", " ...\n", " <NA>\n", " <NA>\n", @@ -354,23 +312,23 @@ " <NA>\n", " <NA>\n", " <NA>\n", - " 113.44\n", - " None\n", - " None\n", - " [ASK_TONE]\n", + " 86.71\n", + " <NA>\n", + " <NA>\n", + " [BID_TONE]\n", " \n", " \n", - " 2021-12-17 11:21:16.548\n", + " 2022-12-12 14:18:29.283\n", " quote\n", - " 55504\n", - " 2700485\n", + " 12480\n", + " 3904872\n", " <NA>\n", " <NA>\n", " <NA>\n", " <NA>\n", - " 113.42\n", - " 13802\n", - " 113.48\n", + " 86.7\n", + " 21603\n", + " 86.72\n", " ...\n", " <NA>\n", " <NA>\n", @@ -378,23 +336,23 @@ " <NA>\n", " <NA>\n", " <NA>\n", - " 113.45\n", - " None\n", - " None\n", - " [ASK_TONE]\n", + " 86.71\n", + " <NA>\n", + " <NA>\n", + " [BID_TONE]\n", " \n", " \n", - " 2021-12-17 11:21:16.563\n", + " 2022-12-12 14:18:29.283\n", " quote\n", - " 55520\n", - " 2700493\n", + " 12496\n", + " 3904873\n", " <NA>\n", " <NA>\n", " <NA>\n", " <NA>\n", - " 113.42\n", - " 13532\n", - " 113.48\n", + " 86.7\n", + " 19762\n", + " 86.72\n", " ...\n", " <NA>\n", " <NA>\n", @@ -402,23 +360,23 @@ " <NA>\n", " <NA>\n", " <NA>\n", - " 113.45\n", - " None\n", - " None\n", + " 86.71\n", + " <NA>\n", + " <NA>\n", " [BID_TONE]\n", " \n", " \n", - " 2021-12-17 11:21:16.563\n", + " 2022-12-12 14:18:29.283\n", " quote\n", - " 55536\n", - " 2700494\n", + " 12512\n", + " 3904874\n", " <NA>\n", " <NA>\n", " <NA>\n", " <NA>\n", - " 113.42\n", - " 7088\n", - " 113.48\n", + " 86.7\n", + " 17605\n", + " 86.72\n", " ...\n", " <NA>\n", " <NA>\n", @@ -426,23 +384,23 @@ " <NA>\n", " <NA>\n", " <NA>\n", - " 113.45\n", - " None\n", - " None\n", + " 86.71\n", + " <NA>\n", + " <NA>\n", " [BID_TONE]\n", " \n", " \n", - " 2021-12-17 11:21:16.563\n", + " 2022-12-12 14:18:29.654\n", " quote\n", - " 55552\n", - " 2700495\n", + " 12528\n", + " 3904927\n", " <NA>\n", " <NA>\n", " <NA>\n", " <NA>\n", - " 113.42\n", - " 3819\n", - " 113.48\n", + " 86.7\n", + " 19386\n", + " 86.72\n", " ...\n", " <NA>\n", " <NA>\n", @@ -450,23 +408,23 @@ " <NA>\n", " <NA>\n", " <NA>\n", - " 113.45\n", - " None\n", - " None\n", + " 86.71\n", + " <NA>\n", + " <NA>\n", " [BID_TONE]\n", " \n", " \n", - " 2021-12-17 11:21:16.680\n", + " 2022-12-12 14:18:29.992\n", " quote\n", - " 55568\n", - " 2700511\n", + " 12544\n", + " 3904938\n", " <NA>\n", " <NA>\n", " <NA>\n", " <NA>\n", - " 113.42\n", - " 3819\n", - " 113.48\n", + " 86.7\n", + " 19662\n", + " 86.72\n", " ...\n", " <NA>\n", " <NA>\n", @@ -474,23 +432,23 @@ " <NA>\n", " <NA>\n", " <NA>\n", - " 113.45\n", - " None\n", - " None\n", - " [ASK_TONE]\n", + " 86.71\n", + " <NA>\n", + " <NA>\n", + " [BID_TONE]\n", " \n", " \n", - " 2021-12-17 11:21:16.680\n", + " 2022-12-12 14:18:30.777\n", " quote\n", - " 55584\n", - " 2700512\n", + " 12560\n", + " 3905043\n", " <NA>\n", " <NA>\n", " <NA>\n", " <NA>\n", - " 113.42\n", - " 3819\n", - " 113.48\n", + " 86.7\n", + " 17881\n", + " 86.72\n", " ...\n", " <NA>\n", " <NA>\n", @@ -498,23 +456,47 @@ " <NA>\n", " <NA>\n", " <NA>\n", - " 113.45\n", - " None\n", - " None\n", - " [ASK_TONE]\n", + " 86.71\n", + " <NA>\n", + " <NA>\n", + " [BID_TONE]\n", + " \n", + " \n", + " 2022-12-12 14:18:39.007\n", + " trade\n", + " 12590\n", + " 220848\n", + " SINT\n", + " 86.7\n", + " 4630\n", + " 86.6065\n", + " 86.7\n", + " 17881\n", + " 86.72\n", + " ...\n", + " 47------MP----\n", + " SI\n", + " 72268548\n", + " 86.45\n", + " 87.64\n", + " 85.94\n", + " <NA>\n", + " <NA>\n", + " <NA>\n", + " S[ACT_FLAG1];S[CONDCODE_1];[CONDCODE_2];N [EL...\n", " \n", " \n", - " 2021-12-17 11:21:16.681\n", + " 2022-12-12 14:18:39.547\n", " quote\n", - " 55600\n", - " 2700513\n", + " 12608\n", + " 3906151\n", " <NA>\n", " <NA>\n", " <NA>\n", " <NA>\n", - " 113.42\n", - " 3819\n", - " 113.46\n", + " 86.7\n", + " 17909\n", + " 86.72\n", " ...\n", " <NA>\n", " <NA>\n", @@ -522,23 +504,23 @@ " <NA>\n", " <NA>\n", " <NA>\n", - " 113.44\n", - " None\n", - " None\n", - " [ASK_TONE]\n", + " 86.71\n", + " <NA>\n", + " <NA>\n", + " [BID_TONE]\n", " \n", " \n", - " 2021-12-17 11:21:17.598\n", + " 2022-12-12 14:18:43.163\n", " quote\n", - " 55616\n", - " 2700557\n", + " 12624\n", + " 3906662\n", " <NA>\n", " <NA>\n", " <NA>\n", " <NA>\n", - " 113.42\n", - " 3819\n", - " 113.48\n", + " 86.7\n", + " 17909\n", + " 86.72\n", " ...\n", " <NA>\n", " <NA>\n", @@ -546,23 +528,23 @@ " <NA>\n", " <NA>\n", " <NA>\n", - " 113.45\n", - " None\n", - " None\n", + " 86.71\n", + " <NA>\n", + " <NA>\n", " [ASK_TONE]\n", " \n", " \n", - " 2021-12-17 11:21:17.598\n", + " 2022-12-12 14:18:45.954\n", " quote\n", - " 55632\n", - " 2700558\n", + " 12640\n", + " 3907126\n", " <NA>\n", " <NA>\n", " <NA>\n", " <NA>\n", - " 113.42\n", - " 7088\n", - " 113.48\n", + " 86.7\n", + " 17909\n", + " 86.72\n", " ...\n", " <NA>\n", " <NA>\n", @@ -570,47 +552,47 @@ " <NA>\n", " <NA>\n", " <NA>\n", - " 113.45\n", - " None\n", - " None\n", - " [BID_TONE]\n", - " \n", - " \n", - " 2021-12-17 11:21:17.864\n", - " quote\n", - " 55648\n", - " 2700623\n", + " 86.71\n", " <NA>\n", " <NA>\n", - " <NA>\n", - " <NA>\n", - " 113.42\n", - " 3819\n", - " 113.48\n", + " [ASK_TONE]\n", + " \n", + " \n", + " 2022-12-12 14:18:50.000\n", + " trade\n", + " 12670\n", + " 220912\n", + " XLON\n", + " 86.705\n", + " 2000\n", + " 86.6065\n", + " 86.7\n", + " 17909\n", + " 86.72\n", " ...\n", + " 45------MP----\n", + " RX\n", + " 72270548\n", + " 86.45\n", + " 87.64\n", + " 85.94\n", " <NA>\n", " <NA>\n", " <NA>\n", - " <NA>\n", - " <NA>\n", - " <NA>\n", - " 113.45\n", - " None\n", - " None\n", - " [BID_TONE]\n", + " R[ACT_FLAG1];R[CONDCODE_1];[CONDCODE_2];N [EL...\n", " \n", " \n", - " 2021-12-17 11:21:18.874\n", + " 2022-12-12 14:18:54.481\n", " quote\n", - " 55664\n", - " 2701006\n", + " 12688\n", + " 3908493\n", " <NA>\n", " <NA>\n", " <NA>\n", " <NA>\n", - " 113.42\n", - " 4693\n", - " 113.48\n", + " 86.7\n", + " 17909\n", + " 86.72\n", " ...\n", " <NA>\n", " <NA>\n", @@ -618,23 +600,23 @@ " <NA>\n", " <NA>\n", " <NA>\n", - " 113.45\n", - " None\n", - " None\n", - " [BID_TONE]\n", + " 86.71\n", + " <NA>\n", + " <NA>\n", + " [ASK_TONE]\n", " \n", " \n", - " 2021-12-17 11:21:25.251\n", + " 2022-12-12 14:19:00.037\n", " quote\n", - " 55680\n", - " 2701534\n", + " 12704\n", + " 3909488\n", " <NA>\n", " <NA>\n", " <NA>\n", " <NA>\n", - " 113.42\n", - " 4693\n", - " 113.48\n", + " 86.7\n", + " 17909\n", + " 86.72\n", " ...\n", " <NA>\n", " <NA>\n", @@ -642,23 +624,23 @@ " <NA>\n", " <NA>\n", " <NA>\n", - " 113.45\n", - " None\n", - " None\n", + " 86.71\n", + " <NA>\n", + " <NA>\n", " [ASK_TONE]\n", " \n", " \n", - " 2021-12-17 11:21:25.251\n", + " 2022-12-12 14:19:00.061\n", " quote\n", - " 55696\n", - " 2701535\n", + " 12720\n", + " 3909542\n", " <NA>\n", " <NA>\n", " <NA>\n", " <NA>\n", - " 113.42\n", - " 4693\n", - " 113.48\n", + " 86.7\n", + " 17909\n", + " 86.72\n", " ...\n", " <NA>\n", " <NA>\n", @@ -666,23 +648,23 @@ " <NA>\n", " <NA>\n", " <NA>\n", - " 113.45\n", - " None\n", - " None\n", + " 86.71\n", + " <NA>\n", + " <NA>\n", " [ASK_TONE]\n", " \n", " \n", - " 2021-12-17 11:21:25.252\n", + " 2022-12-12 14:19:00.100\n", " quote\n", - " 55712\n", - " 2701545\n", + " 12736\n", + " 3909547\n", " <NA>\n", " <NA>\n", " <NA>\n", " <NA>\n", - " 113.42\n", - " 7962\n", - " 113.48\n", + " 86.7\n", + " 17909\n", + " 86.72\n", " ...\n", " <NA>\n", " <NA>\n", @@ -690,23 +672,23 @@ " <NA>\n", " <NA>\n", " <NA>\n", - " 113.45\n", - " None\n", - " None\n", - " [BID_TONE]\n", + " 86.71\n", + " <NA>\n", + " <NA>\n", + " [ASK_TONE]\n", " \n", " \n", - " 2021-12-17 11:21:37.849\n", + " 2022-12-12 14:19:01.546\n", " quote\n", - " 55728\n", - " 2702386\n", + " 12752\n", + " 3909820\n", " <NA>\n", " <NA>\n", " <NA>\n", " <NA>\n", - " 113.42\n", - " 10724\n", - " 113.48\n", + " 86.7\n", + " 17909\n", + " 86.72\n", " ...\n", " <NA>\n", " <NA>\n", @@ -714,10 +696,10 @@ " <NA>\n", " <NA>\n", " <NA>\n", - " 113.45\n", - " None\n", - " None\n", - " [BID_TONE]\n", + " 86.71\n", + " <NA>\n", + " <NA>\n", + " [ASK_TONE]\n", " \n", " \n", "\n", @@ -727,118 +709,118 @@ "text/plain": [ "VOD.L EVENT_TYPE RTL SEQNUM TRDXID_1 TRDPRC_1 \\\n", "Timestamp \n", - "2021-12-17 11:21:16.547 quote 55408 2700478 \n", - "2021-12-17 11:21:16.547 quote 55440 2700480 \n", - "2021-12-17 11:21:16.547 quote 55424 2700479 \n", - "2021-12-17 11:21:16.548 trade 55486 276989 XLON 113.46 \n", - "2021-12-17 11:21:16.548 quote 55456 2700482 \n", - "2021-12-17 11:21:16.548 quote 55504 2700485 \n", - "2021-12-17 11:21:16.563 quote 55520 2700493 \n", - "2021-12-17 11:21:16.563 quote 55536 2700494 \n", - "2021-12-17 11:21:16.563 quote 55552 2700495 \n", - "2021-12-17 11:21:16.680 quote 55568 2700511 \n", - "2021-12-17 11:21:16.680 quote 55584 2700512 \n", - "2021-12-17 11:21:16.681 quote 55600 2700513 \n", - "2021-12-17 11:21:17.598 quote 55616 2700557 \n", - "2021-12-17 11:21:17.598 quote 55632 2700558 \n", - "2021-12-17 11:21:17.864 quote 55648 2700623 \n", - "2021-12-17 11:21:18.874 quote 55664 2701006 \n", - "2021-12-17 11:21:25.251 quote 55680 2701534 \n", - "2021-12-17 11:21:25.251 quote 55696 2701535 \n", - "2021-12-17 11:21:25.252 quote 55712 2701545 \n", - "2021-12-17 11:21:37.849 quote 55728 2702386 \n", + "2022-12-12 14:18:28.906 quote 12384 3904822 \n", + "2022-12-12 14:18:28.906 quote 12400 3904823 \n", + "2022-12-12 14:18:28.907 quote 12448 3904826 \n", + "2022-12-12 14:18:28.907 quote 12464 3904827 \n", + "2022-12-12 14:18:29.283 quote 12480 3904872 \n", + "2022-12-12 14:18:29.283 quote 12496 3904873 \n", + "2022-12-12 14:18:29.283 quote 12512 3904874 \n", + "2022-12-12 14:18:29.654 quote 12528 3904927 \n", + "2022-12-12 14:18:29.992 quote 12544 3904938 \n", + "2022-12-12 14:18:30.777 quote 12560 3905043 \n", + "2022-12-12 14:18:39.007 trade 12590 220848 SINT 86.7 \n", + "2022-12-12 14:18:39.547 quote 12608 3906151 \n", + "2022-12-12 14:18:43.163 quote 12624 3906662 \n", + "2022-12-12 14:18:45.954 quote 12640 3907126 \n", + "2022-12-12 14:18:50.000 trade 12670 220912 XLON 86.705 \n", + "2022-12-12 14:18:54.481 quote 12688 3908493 \n", + "2022-12-12 14:19:00.037 quote 12704 3909488 \n", + "2022-12-12 14:19:00.061 quote 12720 3909542 \n", + "2022-12-12 14:19:00.100 quote 12736 3909547 \n", + "2022-12-12 14:19:01.546 quote 12752 3909820 \n", "\n", - "VOD.L TRDVOL_1 VWAP BID BIDSIZE ASK ... \\\n", - "Timestamp ... \n", - "2021-12-17 11:21:16.547 113.42 12983 113.48 ... \n", - "2021-12-17 11:21:16.547 113.42 13802 113.48 ... \n", - "2021-12-17 11:21:16.547 113.42 12983 113.48 ... \n", - "2021-12-17 11:21:16.548 2221 113.0254 113.42 13802 113.46 ... \n", - "2021-12-17 11:21:16.548 113.42 13802 113.46 ... \n", - "2021-12-17 11:21:16.548 113.42 13802 113.48 ... \n", - "2021-12-17 11:21:16.563 113.42 13532 113.48 ... \n", - "2021-12-17 11:21:16.563 113.42 7088 113.48 ... \n", - "2021-12-17 11:21:16.563 113.42 3819 113.48 ... \n", - "2021-12-17 11:21:16.680 113.42 3819 113.48 ... \n", - "2021-12-17 11:21:16.680 113.42 3819 113.48 ... \n", - "2021-12-17 11:21:16.681 113.42 3819 113.46 ... \n", - "2021-12-17 11:21:17.598 113.42 3819 113.48 ... \n", - "2021-12-17 11:21:17.598 113.42 7088 113.48 ... \n", - "2021-12-17 11:21:17.864 113.42 3819 113.48 ... \n", - "2021-12-17 11:21:18.874 113.42 4693 113.48 ... \n", - "2021-12-17 11:21:25.251 113.42 4693 113.48 ... \n", - "2021-12-17 11:21:25.251 113.42 4693 113.48 ... \n", - "2021-12-17 11:21:25.252 113.42 7962 113.48 ... \n", - "2021-12-17 11:21:37.849 113.42 10724 113.48 ... \n", + "VOD.L TRDVOL_1 VWAP BID BIDSIZE ASK ... \\\n", + "Timestamp ... \n", + "2022-12-12 14:18:28.906 86.7 19762 86.71 ... \n", + "2022-12-12 14:18:28.906 86.7 21603 86.71 ... \n", + "2022-12-12 14:18:28.907 86.7 21603 86.72 ... \n", + "2022-12-12 14:18:28.907 86.7 25346 86.72 ... \n", + "2022-12-12 14:18:29.283 86.7 21603 86.72 ... \n", + "2022-12-12 14:18:29.283 86.7 19762 86.72 ... \n", + "2022-12-12 14:18:29.283 86.7 17605 86.72 ... \n", + "2022-12-12 14:18:29.654 86.7 19386 86.72 ... \n", + "2022-12-12 14:18:29.992 86.7 19662 86.72 ... \n", + "2022-12-12 14:18:30.777 86.7 17881 86.72 ... \n", + "2022-12-12 14:18:39.007 4630 86.6065 86.7 17881 86.72 ... \n", + "2022-12-12 14:18:39.547 86.7 17909 86.72 ... \n", + "2022-12-12 14:18:43.163 86.7 17909 86.72 ... \n", + "2022-12-12 14:18:45.954 86.7 17909 86.72 ... \n", + "2022-12-12 14:18:50.000 2000 86.6065 86.7 17909 86.72 ... \n", + "2022-12-12 14:18:54.481 86.7 17909 86.72 ... \n", + "2022-12-12 14:19:00.037 86.7 17909 86.72 ... \n", + "2022-12-12 14:19:00.061 86.7 17909 86.72 ... \n", + "2022-12-12 14:19:00.100 86.7 17909 86.72 ... \n", + "2022-12-12 14:19:01.546 86.7 17909 86.72 ... \n", "\n", - "VOD.L MMT_CLASS TR_TRD_FLG ACVOL_UNS OPEN_PRC \\\n", - "Timestamp \n", - "2021-12-17 11:21:16.547 \n", - "2021-12-17 11:21:16.547 \n", - "2021-12-17 11:21:16.547 \n", - "2021-12-17 11:21:16.548 12-------PH--- OB 76625752 111.12 \n", - "2021-12-17 11:21:16.548 \n", - "2021-12-17 11:21:16.548 \n", - "2021-12-17 11:21:16.563 \n", - "2021-12-17 11:21:16.563 \n", - "2021-12-17 11:21:16.563 \n", - "2021-12-17 11:21:16.680 \n", - "2021-12-17 11:21:16.680 \n", - "2021-12-17 11:21:16.681 \n", - "2021-12-17 11:21:17.598 \n", - "2021-12-17 11:21:17.598 \n", - "2021-12-17 11:21:17.864 \n", - "2021-12-17 11:21:18.874 \n", - "2021-12-17 11:21:25.251 \n", - "2021-12-17 11:21:25.251 \n", - "2021-12-17 11:21:25.252 \n", - "2021-12-17 11:21:37.849 \n", + "VOD.L MMT_CLASS TR_TRD_FLG ACVOL_UNS OPEN_PRC \\\n", + "Timestamp \n", + "2022-12-12 14:18:28.906 \n", + "2022-12-12 14:18:28.906 \n", + "2022-12-12 14:18:28.907 \n", + "2022-12-12 14:18:28.907 \n", + "2022-12-12 14:18:29.283 \n", + "2022-12-12 14:18:29.283 \n", + "2022-12-12 14:18:29.283 \n", + "2022-12-12 14:18:29.654 \n", + "2022-12-12 14:18:29.992 \n", + "2022-12-12 14:18:30.777 \n", + "2022-12-12 14:18:39.007 47------MP---- SI 72268548 86.45 \n", + "2022-12-12 14:18:39.547 \n", + "2022-12-12 14:18:43.163 \n", + "2022-12-12 14:18:45.954 \n", + "2022-12-12 14:18:50.000 45------MP---- RX 72270548 86.45 \n", + "2022-12-12 14:18:54.481 \n", + "2022-12-12 14:19:00.037 \n", + "2022-12-12 14:19:00.061 \n", + "2022-12-12 14:19:00.100 \n", + "2022-12-12 14:19:01.546 \n", "\n", - "VOD.L HIGH_1 LOW_1 MID_PRICE IMB_SH IMB_SIDE \\\n", - "Timestamp \n", - "2021-12-17 11:21:16.547 113.45 None None \n", - "2021-12-17 11:21:16.547 113.45 None None \n", - "2021-12-17 11:21:16.547 113.45 None None \n", - "2021-12-17 11:21:16.548 113.76 111.12 None None \n", - "2021-12-17 11:21:16.548 113.44 None None \n", - "2021-12-17 11:21:16.548 113.45 None None \n", - "2021-12-17 11:21:16.563 113.45 None None \n", - "2021-12-17 11:21:16.563 113.45 None None \n", - "2021-12-17 11:21:16.563 113.45 None None \n", - "2021-12-17 11:21:16.680 113.45 None None \n", - "2021-12-17 11:21:16.680 113.45 None None \n", - "2021-12-17 11:21:16.681 113.44 None None \n", - "2021-12-17 11:21:17.598 113.45 None None \n", - "2021-12-17 11:21:17.598 113.45 None None \n", - "2021-12-17 11:21:17.864 113.45 None None \n", - "2021-12-17 11:21:18.874 113.45 None None \n", - "2021-12-17 11:21:25.251 113.45 None None \n", - "2021-12-17 11:21:25.251 113.45 None None \n", - "2021-12-17 11:21:25.252 113.45 None None \n", - "2021-12-17 11:21:37.849 113.45 None None \n", + "VOD.L HIGH_1 LOW_1 MID_PRICE IMB_SH IMB_SIDE \\\n", + "Timestamp \n", + "2022-12-12 14:18:28.906 86.705 \n", + "2022-12-12 14:18:28.906 86.705 \n", + "2022-12-12 14:18:28.907 86.71 \n", + "2022-12-12 14:18:28.907 86.71 \n", + "2022-12-12 14:18:29.283 86.71 \n", + "2022-12-12 14:18:29.283 86.71 \n", + "2022-12-12 14:18:29.283 86.71 \n", + "2022-12-12 14:18:29.654 86.71 \n", + "2022-12-12 14:18:29.992 86.71 \n", + "2022-12-12 14:18:30.777 86.71 \n", + "2022-12-12 14:18:39.007 87.64 85.94 \n", + "2022-12-12 14:18:39.547 86.71 \n", + "2022-12-12 14:18:43.163 86.71 \n", + "2022-12-12 14:18:45.954 86.71 \n", + "2022-12-12 14:18:50.000 87.64 85.94 \n", + "2022-12-12 14:18:54.481 86.71 \n", + "2022-12-12 14:19:00.037 86.71 \n", + "2022-12-12 14:19:00.061 86.71 \n", + "2022-12-12 14:19:00.100 86.71 \n", + "2022-12-12 14:19:01.546 86.71 \n", "\n", "VOD.L QUALIFIERS \n", "Timestamp \n", - "2021-12-17 11:21:16.547 [ASK_TONE] \n", - "2021-12-17 11:21:16.547 [BID_TONE] \n", - "2021-12-17 11:21:16.547 [ASK_TONE] \n", - "2021-12-17 11:21:16.548 A[ACT_FLAG1];A[CONDCODE_1];[CONDCODE_2];Y [EL... \n", - "2021-12-17 11:21:16.548 [ASK_TONE] \n", - "2021-12-17 11:21:16.548 [ASK_TONE] \n", - "2021-12-17 11:21:16.563 [BID_TONE] \n", - "2021-12-17 11:21:16.563 [BID_TONE] \n", - "2021-12-17 11:21:16.563 [BID_TONE] \n", - "2021-12-17 11:21:16.680 [ASK_TONE] \n", - "2021-12-17 11:21:16.680 [ASK_TONE] \n", - "2021-12-17 11:21:16.681 [ASK_TONE] \n", - "2021-12-17 11:21:17.598 [ASK_TONE] \n", - "2021-12-17 11:21:17.598 [BID_TONE] \n", - "2021-12-17 11:21:17.864 [BID_TONE] \n", - "2021-12-17 11:21:18.874 [BID_TONE] \n", - "2021-12-17 11:21:25.251 [ASK_TONE] \n", - "2021-12-17 11:21:25.251 [ASK_TONE] \n", - "2021-12-17 11:21:25.252 [BID_TONE] \n", - "2021-12-17 11:21:37.849 [BID_TONE] \n", + "2022-12-12 14:18:28.906 [BID_TONE] \n", + "2022-12-12 14:18:28.906 [BID_TONE] \n", + "2022-12-12 14:18:28.907 [ASK_TONE] \n", + "2022-12-12 14:18:28.907 [BID_TONE] \n", + "2022-12-12 14:18:29.283 [BID_TONE] \n", + "2022-12-12 14:18:29.283 [BID_TONE] \n", + "2022-12-12 14:18:29.283 [BID_TONE] \n", + "2022-12-12 14:18:29.654 [BID_TONE] \n", + "2022-12-12 14:18:29.992 [BID_TONE] \n", + "2022-12-12 14:18:30.777 [BID_TONE] \n", + "2022-12-12 14:18:39.007 S[ACT_FLAG1];S[CONDCODE_1];[CONDCODE_2];N [EL... \n", + "2022-12-12 14:18:39.547 [BID_TONE] \n", + "2022-12-12 14:18:43.163 [ASK_TONE] \n", + "2022-12-12 14:18:45.954 [ASK_TONE] \n", + "2022-12-12 14:18:50.000 R[ACT_FLAG1];R[CONDCODE_1];[CONDCODE_2];N [EL... \n", + "2022-12-12 14:18:54.481 [ASK_TONE] \n", + "2022-12-12 14:19:00.037 [ASK_TONE] \n", + "2022-12-12 14:19:00.061 [ASK_TONE] \n", + "2022-12-12 14:19:00.100 [ASK_TONE] \n", + "2022-12-12 14:19:01.546 [ASK_TONE] \n", "\n", "[20 rows x 31 columns]" ] @@ -850,9 +832,9 @@ "name": "stdout", "output_type": "stream", "text": [ - "\n", + "\n", "\n", - "Reponse received for Apple\n" + "Reponse received for ['Apple']\n" ] }, { @@ -913,364 +895,364 @@ " \n", " \n", " \n", - " 2021-11-18\n", - " 157.87\n", - " 158.67\n", - " 153.05\n", - " 137827673\n", - " 153.71\n", - " 157.87\n", - " 157.9\n", - " 21546183658.414494\n", - " 156.6134\n", - " 160\n", - " 28784383\n", - " 865062\n", + " 2022-11-11\n", + " 149.7\n", + " 150.01\n", + " 144.37\n", + " 93979665\n", + " 145.82\n", + " 149.63\n", + " 149.7\n", + " 13927137702\n", + " 148.1722\n", + " 114\n", + " 14856172\n", + " 742242\n", " 1\n", " 75601\n", - " None\n", + " <NA>\n", " \n", " \n", - " 2021-11-19\n", - " 160.55\n", - " 161.02\n", - " 156.5328\n", - " 117305597\n", - " 157.65\n", - " 160.56\n", - " 160.57\n", - " 18718899811.474983\n", - " 159.5801\n", - " 137\n", - " 18360255\n", - " 816966\n", + " 2022-11-14\n", + " 148.28\n", + " 150.28\n", + " 147.43\n", + " 73374114\n", + " 148.97\n", + " 148.37\n", + " 148.4\n", + " 10912461561\n", + " 148.7515\n", + " 87\n", + " 15247887\n", + " 576289\n", " 1\n", - " 75600\n", - " None\n", + " 75601\n", + " <NA>\n", " \n", " \n", - " 2021-11-22\n", - " 161.02\n", - " 165.7\n", - " 161.0\n", - " 117467889\n", - " 161.68\n", - " 161.08\n", - " 161.16\n", - " 19216499295.54108\n", - " 163.7825\n", - " 153\n", - " 15069918\n", - " 890336\n", + " 2022-11-15\n", + " 150.04\n", + " 153.59\n", + " 148.5613\n", + " 89868332\n", + " 152.215\n", + " 150.06\n", + " 150.07\n", + " 13591294797\n", + " 151.2912\n", + " 134\n", + " 13458073\n", + " 703669\n", " 1\n", " 75600\n", - " None\n", + " <NA>\n", " \n", " \n", - " 2021-11-23\n", - " 161.41\n", - " 161.8\n", - " 159.0601\n", - " 96041899\n", - " 161.12\n", - " 161.41\n", - " 161.42\n", - " 15399388703.615358\n", - " 160.2864\n", - " 102\n", - " 16073525\n", - " 712378\n", + " 2022-11-16\n", + " 148.79\n", + " 149.87\n", + " 147.29\n", + " 64218266\n", + " 149.13\n", + " 148.77\n", + " 148.79\n", + " 9546664607\n", + " 148.6148\n", + " 74\n", + " 12719161\n", + " 472247\n", " 1\n", " 75600\n", - " None\n", + " <NA>\n", " \n", " \n", - " 2021-11-24\n", - " 161.94\n", - " 162.14\n", - " 159.64\n", - " 69463623\n", - " 160.75\n", - " 161.94\n", - " 161.99\n", - " 11191309458.871893\n", - " 161.0753\n", - " 68\n", - " 8287842\n", - " 505242\n", + " 2022-11-17\n", + " 150.72\n", + " 151.48\n", + " 146.15\n", + " 80389400\n", + " 146.43\n", + " 150.74\n", + " 150.77\n", + " 12034776024\n", + " 149.6508\n", + " 101\n", + " 15668225\n", + " 563714\n", " 1\n", " 75600\n", - " None\n", + " <NA>\n", " \n", " \n", - " 2021-11-26\n", - " 156.81\n", - " 160.45\n", - " 156.36\n", - " 76959752\n", - " 159.565\n", - " 156.61\n", - " 156.88\n", - " 12147613380.104168\n", - " 157.8642\n", - " 93\n", - " 12822728\n", - " 666768\n", + " 2022-11-18\n", + " 151.29\n", + " 152.7\n", + " 149.97\n", + " 74829573\n", + " 152.305\n", + " 151.31\n", + " 151.38\n", + " 11313815191\n", + " 151.1809\n", + " 115\n", + " 17263190\n", + " 514103\n", " 1\n", - " 64801\n", - " None\n", + " 75600\n", + " <NA>\n", " \n", " \n", - " 2021-11-29\n", - " 160.24\n", - " 161.19\n", - " 158.7901\n", - " 88748217\n", - " 159.37\n", - " 160.22\n", - " 160.23\n", - " 14211654402.14835\n", - " 160.128\n", - " 69\n", - " 16249253\n", - " 663949\n", + " 2022-11-21\n", + " 148.01\n", + " 150.37\n", + " 147.715\n", + " 58724070\n", + " 150.16\n", + " 148.01\n", + " 148.03\n", + " 8719447896\n", + " 148.4819\n", + " 58\n", + " 9834687\n", + " 504777\n", " 1\n", " 75600\n", - " None\n", + " <NA>\n", " \n", " \n", - " 2021-11-30\n", - " 165.3\n", - " 165.52\n", - " 159.92\n", - " 174048056\n", - " 159.985\n", - " 165.43\n", - " 165.44\n", - " 28504680552.178757\n", - " 163.6656\n", - " 239\n", - " 37439320\n", - " 1139626\n", + " 2022-11-22\n", + " 150.18\n", + " 150.42\n", + " 146.925\n", + " 51804132\n", + " 148.13\n", + " 150.22\n", + " 150.26\n", + " 7728951933\n", + " 149.1762\n", + " 60\n", + " 8992667\n", + " 405185\n", " 1\n", - " 75600\n", - " None\n", + " 75601\n", + " <NA>\n", " \n", " \n", - " 2021-12-01\n", - " 164.77\n", - " 170.3\n", - " 164.53\n", - " 152423003\n", - " 167.48\n", - " 164.63\n", - " 164.65\n", - " 25559287927.670628\n", - " 167.8689\n", - " 160\n", - " 18072254\n", - " 1191151\n", + " 2022-11-23\n", + " 151.07\n", + " 151.83\n", + " 149.34\n", + " 58301395\n", + " 149.45\n", + " 151.11\n", + " 151.14\n", + " 8791105977\n", + " 150.8082\n", + " 50\n", + " 8413512\n", + " 444424\n", " 1\n", " 75600\n", - " None\n", + " <NA>\n", " \n", " \n", - " 2021-12-02\n", - " 163.76\n", - " 164.2\n", - " 157.8\n", - " 136739174\n", - " 158.735\n", - " 163.79\n", - " 163.93\n", - " 22128515931.675037\n", - " 161.8636\n", - " 120\n", - " 14322748\n", - " 1163153\n", + " 2022-11-25\n", + " 148.11\n", + " 148.88\n", + " 147.12\n", + " 35195860\n", + " 148.305\n", + " 148.14\n", + " 148.17\n", + " 5214858457\n", + " 148.1158\n", + " 38\n", + " 5292584\n", + " 319570\n", " 1\n", - " 75600\n", - " None\n", + " 64800\n", + " <NA>\n", " \n", " \n", - " 2021-12-03\n", - " 161.84\n", - " 164.96\n", - " 159.72\n", - " 118023116\n", - " 164.02\n", - " 161.84\n", - " 161.85\n", - " 19098939663.508007\n", - " 161.7871\n", - " 102\n", - " 16311417\n", - " 950982\n", + " 2022-11-28\n", + " 144.22\n", + " 146.64\n", + " 143.38\n", + " 69346522\n", + " 145.14\n", + " 144.2\n", + " 144.23\n", + " 10040129171\n", + " 144.7836\n", + " 72\n", + " 12121182\n", + " 614357\n", " 1\n", - " 75601\n", - " None\n", + " 75600\n", + " <NA>\n", " \n", " \n", - " 2021-12-06\n", - " 165.32\n", - " 167.8799\n", - " 164.28\n", - " 107496982\n", - " 164.29\n", - " 165.28\n", - " 165.31\n", - " 17825511666.176003\n", - " 165.903\n", - " 110\n", - " 19690860\n", - " 840677\n", + " 2022-11-29\n", + " 141.17\n", + " 144.81\n", + " 140.355\n", + " 83763803\n", + " 144.29\n", + " 141.15\n", + " 141.16\n", + " 11898755525\n", + " 142.0416\n", + " 112\n", + " 9281182\n", + " 713282\n", " 1\n", - " 75601\n", - " None\n", + " 75600\n", + " <NA>\n", " \n", " \n", - " 2021-12-07\n", - " 171.18\n", - " 171.58\n", - " 168.34\n", - " 120405352\n", - " 169.08\n", - " 171.2\n", - " 171.21\n", - " 20536477262.396648\n", - " 170.5208\n", - " 162\n", - " 23198268\n", - " 834822\n", + " 2022-11-30\n", + " 148.03\n", + " 148.72\n", + " 140.55\n", + " 111380880\n", + " 141.395\n", + " 148.0\n", + " 148.03\n", + " 16169177551\n", + " 144.8308\n", + " 161\n", + " 33754199\n", + " 707648\n", " 1\n", " 75600\n", - " None\n", + " <NA>\n", " \n", " \n", - " 2021-12-08\n", - " 175.08\n", - " 175.96\n", - " 170.7\n", - " 116998901\n", - " 172.125\n", - " 175.0\n", - " 175.12\n", - " 20359881587.412888\n", - " 174.0423\n", - " 139\n", - " 15291039\n", - " 871404\n", + " 2022-12-01\n", + " 148.31\n", + " 149.13\n", + " 146.61\n", + " 71250416\n", + " 148.21\n", + " 148.33\n", + " 148.35\n", + " 10552543042\n", + " 148.0948\n", + " 91\n", + " 16883470\n", + " 525985\n", " 1\n", " 75600\n", - " None\n", + " <NA>\n", " \n", " \n", - " 2021-12-09\n", - " 174.56\n", - " 176.75\n", - " 173.92\n", - " 108923739\n", - " 174.91\n", - " 174.58\n", - " 174.62\n", - " 19091821172.180668\n", - " 175.3148\n", - " 101\n", - " 13317318\n", - " 786130\n", + " 2022-12-02\n", + " 147.81\n", + " 148.0\n", + " 145.65\n", + " 65447446\n", + " 145.96\n", + " 147.8\n", + " 147.81\n", + " 9611567391\n", + " 146.8366\n", + " 88\n", + " 15610336\n", + " 464551\n", " 1\n", - " 75601\n", - " None\n", + " 75600\n", + " <NA>\n", " \n", " \n", - " 2021-12-10\n", - " 179.45\n", - " 179.63\n", - " 174.69\n", - " 115402731\n", - " 175.205\n", - " 179.49\n", - " 179.5\n", - " 20457681323.501358\n", - " 177.221\n", - " 119\n", - " 15310267\n", - " 855797\n", + " 2022-12-05\n", + " 146.63\n", + " 150.9199\n", + " 145.77\n", + " 68826442\n", + " 147.77\n", + " 146.6\n", + " 146.62\n", + " 10161426989\n", + " 147.6801\n", + " 83\n", + " 10313427\n", + " 586791\n", " 1\n", - " 75601\n", - " None\n", + " 75600\n", + " <NA>\n", " \n", " \n", - " 2021-12-13\n", - " 175.74\n", - " 182.13\n", - " 175.53\n", - " 153237019\n", - " 181.115\n", - " 175.81\n", - " 175.98\n", - " 27367945820.327057\n", - " 178.6805\n", - " 144\n", - " 22949925\n", - " 1148448\n", + " 2022-12-06\n", + " 142.91\n", + " 147.3\n", + " 141.92\n", + " 64727186\n", + " 147.075\n", + " 142.91\n", + " 142.94\n", + " 9307137614\n", + " 143.7888\n", + " 72\n", + " 10054895\n", + " 537304\n", " 1\n", " 75600\n", - " None\n", + " <NA>\n", " \n", " \n", - " 2021-12-14\n", - " 174.33\n", - " 177.74\n", - " 172.21\n", - " 139380382\n", - " 175.25\n", - " 174.33\n", - " 174.34\n", - " 24307948368.175224\n", - " 174.3665\n", - " 93\n", - " 30287513\n", - " 985605\n", + " 2022-12-07\n", + " 140.94\n", + " 143.37\n", + " 140.0\n", + " 69721094\n", + " 142.19\n", + " 140.93\n", + " 140.94\n", + " 9841839231\n", + " 141.1593\n", + " 98\n", + " 11979287\n", + " 565392\n", " 1\n", " 75600\n", - " None\n", + " <NA>\n", " \n", " \n", - " 2021-12-15\n", - " 179.3\n", - " 179.5\n", - " 172.3108\n", - " 131063257\n", - " 175.11\n", - " 179.3\n", - " 179.31\n", - " 23077234364.543365\n", - " 175.8461\n", - " 127\n", - " 21047216\n", - " 937053\n", + " 2022-12-08\n", + " 142.65\n", + " 143.52\n", + " 141.1\n", + " 62128338\n", + " 142.36\n", + " 142.66\n", + " 142.67\n", + " 8854240078\n", + " 142.5123\n", + " 83\n", + " 12507243\n", + " 456121\n", " 1\n", " 75600\n", - " None\n", + " <NA>\n", " \n", " \n", - " 2021-12-16\n", - " 172.26\n", - " 181.14\n", - " 170.75\n", - " 150185843\n", - " 179.28\n", - " 172.25\n", - " 172.32\n", - " 26194488556.159618\n", - " 174.3595\n", - " 132\n", - " 15214122\n", - " 1202732\n", + " 2022-12-09\n", + " 142.16\n", + " 145.57\n", + " 140.9\n", + " 76097011\n", + " 142.34\n", + " 142.19\n", + " 142.2\n", + " 10898656591\n", + " 143.3413\n", + " 84\n", + " 17411661\n", + " 530237\n", " 1\n", - " 75601\n", - " None\n", + " 75600\n", + " <NA>\n", " \n", " \n", "\n", @@ -1279,72 +1261,72 @@ "text/plain": [ "AAPL.O TRDPRC_1 HIGH_1 LOW_1 ACVOL_UNS OPEN_PRC BID ASK \\\n", "Date \n", - "2021-11-18 157.87 158.67 153.05 137827673 153.71 157.87 157.9 \n", - "2021-11-19 160.55 161.02 156.5328 117305597 157.65 160.56 160.57 \n", - "2021-11-22 161.02 165.7 161.0 117467889 161.68 161.08 161.16 \n", - "2021-11-23 161.41 161.8 159.0601 96041899 161.12 161.41 161.42 \n", - "2021-11-24 161.94 162.14 159.64 69463623 160.75 161.94 161.99 \n", - "2021-11-26 156.81 160.45 156.36 76959752 159.565 156.61 156.88 \n", - "2021-11-29 160.24 161.19 158.7901 88748217 159.37 160.22 160.23 \n", - "2021-11-30 165.3 165.52 159.92 174048056 159.985 165.43 165.44 \n", - "2021-12-01 164.77 170.3 164.53 152423003 167.48 164.63 164.65 \n", - "2021-12-02 163.76 164.2 157.8 136739174 158.735 163.79 163.93 \n", - "2021-12-03 161.84 164.96 159.72 118023116 164.02 161.84 161.85 \n", - "2021-12-06 165.32 167.8799 164.28 107496982 164.29 165.28 165.31 \n", - "2021-12-07 171.18 171.58 168.34 120405352 169.08 171.2 171.21 \n", - "2021-12-08 175.08 175.96 170.7 116998901 172.125 175.0 175.12 \n", - "2021-12-09 174.56 176.75 173.92 108923739 174.91 174.58 174.62 \n", - "2021-12-10 179.45 179.63 174.69 115402731 175.205 179.49 179.5 \n", - "2021-12-13 175.74 182.13 175.53 153237019 181.115 175.81 175.98 \n", - "2021-12-14 174.33 177.74 172.21 139380382 175.25 174.33 174.34 \n", - "2021-12-15 179.3 179.5 172.3108 131063257 175.11 179.3 179.31 \n", - "2021-12-16 172.26 181.14 170.75 150185843 179.28 172.25 172.32 \n", + "2022-11-11 149.7 150.01 144.37 93979665 145.82 149.63 149.7 \n", + "2022-11-14 148.28 150.28 147.43 73374114 148.97 148.37 148.4 \n", + "2022-11-15 150.04 153.59 148.5613 89868332 152.215 150.06 150.07 \n", + "2022-11-16 148.79 149.87 147.29 64218266 149.13 148.77 148.79 \n", + "2022-11-17 150.72 151.48 146.15 80389400 146.43 150.74 150.77 \n", + "2022-11-18 151.29 152.7 149.97 74829573 152.305 151.31 151.38 \n", + "2022-11-21 148.01 150.37 147.715 58724070 150.16 148.01 148.03 \n", + "2022-11-22 150.18 150.42 146.925 51804132 148.13 150.22 150.26 \n", + "2022-11-23 151.07 151.83 149.34 58301395 149.45 151.11 151.14 \n", + "2022-11-25 148.11 148.88 147.12 35195860 148.305 148.14 148.17 \n", + "2022-11-28 144.22 146.64 143.38 69346522 145.14 144.2 144.23 \n", + "2022-11-29 141.17 144.81 140.355 83763803 144.29 141.15 141.16 \n", + "2022-11-30 148.03 148.72 140.55 111380880 141.395 148.0 148.03 \n", + "2022-12-01 148.31 149.13 146.61 71250416 148.21 148.33 148.35 \n", + "2022-12-02 147.81 148.0 145.65 65447446 145.96 147.8 147.81 \n", + "2022-12-05 146.63 150.9199 145.77 68826442 147.77 146.6 146.62 \n", + "2022-12-06 142.91 147.3 141.92 64727186 147.075 142.91 142.94 \n", + "2022-12-07 140.94 143.37 140.0 69721094 142.19 140.93 140.94 \n", + "2022-12-08 142.65 143.52 141.1 62128338 142.36 142.66 142.67 \n", + "2022-12-09 142.16 145.57 140.9 76097011 142.34 142.19 142.2 \n", "\n", - "AAPL.O TRNOVR_UNS VWAP BLKCOUNT BLKVOLUM NUM_MOVES \\\n", - "Date \n", - "2021-11-18 21546183658.414494 156.6134 160 28784383 865062 \n", - "2021-11-19 18718899811.474983 159.5801 137 18360255 816966 \n", - "2021-11-22 19216499295.54108 163.7825 153 15069918 890336 \n", - "2021-11-23 15399388703.615358 160.2864 102 16073525 712378 \n", - "2021-11-24 11191309458.871893 161.0753 68 8287842 505242 \n", - "2021-11-26 12147613380.104168 157.8642 93 12822728 666768 \n", - "2021-11-29 14211654402.14835 160.128 69 16249253 663949 \n", - "2021-11-30 28504680552.178757 163.6656 239 37439320 1139626 \n", - "2021-12-01 25559287927.670628 167.8689 160 18072254 1191151 \n", - "2021-12-02 22128515931.675037 161.8636 120 14322748 1163153 \n", - "2021-12-03 19098939663.508007 161.7871 102 16311417 950982 \n", - "2021-12-06 17825511666.176003 165.903 110 19690860 840677 \n", - "2021-12-07 20536477262.396648 170.5208 162 23198268 834822 \n", - "2021-12-08 20359881587.412888 174.0423 139 15291039 871404 \n", - "2021-12-09 19091821172.180668 175.3148 101 13317318 786130 \n", - "2021-12-10 20457681323.501358 177.221 119 15310267 855797 \n", - "2021-12-13 27367945820.327057 178.6805 144 22949925 1148448 \n", - "2021-12-14 24307948368.175224 174.3665 93 30287513 985605 \n", - "2021-12-15 23077234364.543365 175.8461 127 21047216 937053 \n", - "2021-12-16 26194488556.159618 174.3595 132 15214122 1202732 \n", + "AAPL.O TRNOVR_UNS VWAP BLKCOUNT BLKVOLUM NUM_MOVES TRD_STATUS \\\n", + "Date \n", + "2022-11-11 13927137702 148.1722 114 14856172 742242 1 \n", + "2022-11-14 10912461561 148.7515 87 15247887 576289 1 \n", + "2022-11-15 13591294797 151.2912 134 13458073 703669 1 \n", + "2022-11-16 9546664607 148.6148 74 12719161 472247 1 \n", + "2022-11-17 12034776024 149.6508 101 15668225 563714 1 \n", + "2022-11-18 11313815191 151.1809 115 17263190 514103 1 \n", + "2022-11-21 8719447896 148.4819 58 9834687 504777 1 \n", + "2022-11-22 7728951933 149.1762 60 8992667 405185 1 \n", + "2022-11-23 8791105977 150.8082 50 8413512 444424 1 \n", + "2022-11-25 5214858457 148.1158 38 5292584 319570 1 \n", + "2022-11-28 10040129171 144.7836 72 12121182 614357 1 \n", + "2022-11-29 11898755525 142.0416 112 9281182 713282 1 \n", + "2022-11-30 16169177551 144.8308 161 33754199 707648 1 \n", + "2022-12-01 10552543042 148.0948 91 16883470 525985 1 \n", + "2022-12-02 9611567391 146.8366 88 15610336 464551 1 \n", + "2022-12-05 10161426989 147.6801 83 10313427 586791 1 \n", + "2022-12-06 9307137614 143.7888 72 10054895 537304 1 \n", + "2022-12-07 9841839231 141.1593 98 11979287 565392 1 \n", + "2022-12-08 8854240078 142.5123 83 12507243 456121 1 \n", + "2022-12-09 10898656591 143.3413 84 17411661 530237 1 \n", "\n", - "AAPL.O TRD_STATUS SALTIM NAVALUE \n", - "Date \n", - "2021-11-18 1 75601 None \n", - "2021-11-19 1 75600 None \n", - "2021-11-22 1 75600 None \n", - "2021-11-23 1 75600 None \n", - "2021-11-24 1 75600 None \n", - "2021-11-26 1 64801 None \n", - "2021-11-29 1 75600 None \n", - "2021-11-30 1 75600 None \n", - "2021-12-01 1 75600 None \n", - "2021-12-02 1 75600 None \n", - "2021-12-03 1 75601 None \n", - "2021-12-06 1 75601 None \n", - "2021-12-07 1 75600 None \n", - "2021-12-08 1 75600 None \n", - "2021-12-09 1 75601 None \n", - "2021-12-10 1 75601 None \n", - "2021-12-13 1 75600 None \n", - "2021-12-14 1 75600 None \n", - "2021-12-15 1 75600 None \n", - "2021-12-16 1 75601 None " + "AAPL.O SALTIM NAVALUE \n", + "Date \n", + "2022-11-11 75601 \n", + "2022-11-14 75601 \n", + "2022-11-15 75600 \n", + "2022-11-16 75600 \n", + "2022-11-17 75600 \n", + "2022-11-18 75600 \n", + "2022-11-21 75600 \n", + "2022-11-22 75601 \n", + "2022-11-23 75600 \n", + "2022-11-25 64800 \n", + "2022-11-28 75600 \n", + "2022-11-29 75600 \n", + "2022-11-30 75600 \n", + "2022-12-01 75600 \n", + "2022-12-02 75600 \n", + "2022-12-05 75600 \n", + "2022-12-06 75600 \n", + "2022-12-07 75600 \n", + "2022-12-08 75600 \n", + "2022-12-09 75600 " ] }, "metadata": {}, @@ -1354,9 +1336,9 @@ "name": "stdout", "output_type": "stream", "text": [ - "\n", + "\n", "\n", - "Reponse received for Microsoft\n" + "Reponse received for ['Microsoft']\n" ] }, { @@ -1417,364 +1399,364 @@ " \n", " \n", " \n", - " 2021-11-18\n", - " 341.27\n", - " 342.45\n", - " 337.12\n", - " 22463533\n", - " 338.18\n", - " 341.26\n", - " 341.27\n", - " 7641262614.73162\n", - " 340.6207\n", - " 37\n", - " 8873307\n", - " 252478\n", + " 2022-11-11\n", + " 247.11\n", + " 247.99\n", + " 241.93\n", + " 34620246\n", + " 242.99\n", + " 247.09\n", + " 247.2\n", + " 8502169857\n", + " 245.7428\n", + " 50\n", + " 9288722\n", + " 368001\n", " 1\n", " 75600\n", - " None\n", + " <NA>\n", " \n", " \n", - " 2021-11-19\n", - " 343.11\n", - " 345.1\n", - " 342.2\n", - " 21963403\n", - " 342.64\n", - " 343.03\n", - " 343.11\n", - " 7540543542.476606\n", - " 343.3571\n", - " 29\n", - " 6706321\n", - " 267654\n", + " 2022-11-14\n", + " 241.55\n", + " 243.91\n", + " 239.21\n", + " 31123340\n", + " 241.985\n", + " 241.56\n", + " 241.61\n", + " 7534857693\n", + " 242.0873\n", + " 39\n", + " 6842106\n", + " 351680\n", " 1\n", " 75600\n", - " None\n", - " \n", - " \n", - " 2021-11-22\n", - " 339.83\n", - " 349.67\n", - " 339.55\n", - " 31031113\n", - " 344.62\n", - " 339.83\n", - " 339.91\n", - " 10673635009.485346\n", - " 344.34\n", - " 52\n", - " 6966294\n", - " 407010\n", - " 1\n", - " 75601\n", - " None\n", + " <NA>\n", " \n", " \n", - " 2021-11-23\n", - " 337.68\n", - " 339.45\n", - " 333.56\n", - " 30427563\n", - " 337.05\n", - " 337.68\n", - " 337.75\n", - " 10240538695.845694\n", - " 336.1095\n", - " 52\n", - " 9028133\n", - " 388981\n", + " 2022-11-15\n", + " 241.97\n", + " 247.0\n", + " 240.03\n", + " 31390117\n", + " 245.66\n", + " 242.03\n", + " 242.09\n", + " 7638630192\n", + " 243.3878\n", + " 49\n", + " 7538896\n", + " 377450\n", " 1\n", " 75600\n", - " None\n", + " <NA>\n", " \n", " \n", - " 2021-11-24\n", - " 337.91\n", - " 338.16\n", - " 333.911\n", - " 21661307\n", - " 336.28\n", - " 337.9\n", - " 337.92\n", - " 7292088024.379446\n", - " 336.3246\n", - " 34\n", - " 7625209\n", - " 266155\n", + " 2022-11-16\n", + " 241.73\n", + " 243.8\n", + " 240.42\n", + " 24093272\n", + " 242.79\n", + " 241.73\n", + " 241.82\n", + " 5832014868\n", + " 242.0972\n", + " 31\n", + " 6699796\n", + " 270175\n", " 1\n", " 75600\n", - " None\n", + " <NA>\n", " \n", " \n", - " 2021-11-26\n", - " 329.68\n", - " 337.93\n", - " 328.12\n", - " 24217242\n", - " 334.35\n", - " 329.74\n", - " 329.99\n", - " 8046948775.923566\n", - " 332.3595\n", - " 20\n", - " 4647037\n", - " 360134\n", + " 2022-11-17\n", + " 241.68\n", + " 243.25\n", + " 237.63\n", + " 23123544\n", + " 237.78\n", + " 241.7\n", + " 241.77\n", + " 5577532837\n", + " 241.1985\n", + " 43\n", + " 5693568\n", + " 267476\n", " 1\n", - " 64801\n", - " None\n", + " 75600\n", + " <NA>\n", " \n", " \n", - " 2021-11-29\n", - " 336.63\n", - " 339.03\n", - " 334.74\n", - " 28563481\n", - " 334.94\n", - " 336.54\n", - " 336.55\n", - " 9625361420.98243\n", - " 337.0748\n", - " 27\n", - " 7826666\n", - " 361924\n", + " 2022-11-18\n", + " 241.22\n", + " 243.74\n", + " 239.03\n", + " 27613523\n", + " 243.51\n", + " 241.23\n", + " 241.32\n", + " 6648449615\n", + " 240.6324\n", + " 48\n", + " 10327474\n", + " 265827\n", " 1\n", " 75600\n", - " None\n", + " <NA>\n", " \n", " \n", - " 2021-11-30\n", - " 330.59\n", - " 337.78\n", - " 328.99\n", - " 42885609\n", - " 335.32\n", - " 330.58\n", - " 330.68\n", - " 14232317926.584055\n", - " 331.9261\n", - " 75\n", - " 17286210\n", - " 466083\n", + " 2022-11-21\n", + " 242.05\n", + " 244.67\n", + " 241.19\n", + " 26394700\n", + " 241.43\n", + " 242.05\n", + " 242.13\n", + " 6394989590\n", + " 242.4189\n", + " 34\n", + " 6929500\n", + " 270840\n", " 1\n", - " 75601\n", - " None\n", + " 75600\n", + " <NA>\n", " \n", " \n", - " 2021-12-01\n", - " 330.08\n", - " 339.28\n", - " 329.39\n", - " 33401146\n", - " 335.13\n", - " 329.9\n", - " 329.98\n", - " 11168511862.019682\n", - " 334.5846\n", - " 37\n", - " 4839974\n", - " 489735\n", + " 2022-11-22\n", + " 245.03\n", + " 245.31\n", + " 240.71\n", + " 19665699\n", + " 243.59\n", + " 245.04\n", + " 245.08\n", + " 4791556003\n", + " 243.5814\n", + " 31\n", + " 4832958\n", + " 216514\n", " 1\n", - " 75601\n", - " None\n", + " 75600\n", + " <NA>\n", " \n", " \n", - " 2021-12-02\n", - " 329.49\n", - " 333.49\n", - " 327.8028\n", - " 30765980\n", - " 330.3\n", - " 329.49\n", - " 329.74\n", - " 10155383640.704012\n", - " 330.1249\n", - " 34\n", - " 6813136\n", - " 435981\n", + " 2022-11-23\n", + " 247.58\n", + " 248.28\n", + " 244.27\n", + " 19508462\n", + " 245.105\n", + " 247.62\n", + " 247.76\n", + " 4816185581\n", + " 246.8568\n", + " 23\n", + " 5169587\n", + " 229081\n", " 1\n", " 75600\n", - " None\n", + " <NA>\n", " \n", " \n", - " 2021-12-03\n", - " 323.01\n", - " 332.7\n", - " 318.03\n", - " 41779279\n", - " 331.99\n", - " 323.1\n", - " 323.18\n", - " 13479796998.943327\n", - " 322.5139\n", - " 46\n", - " 8855765\n", - " 626436\n", + " 2022-11-25\n", + " 247.49\n", + " 248.7\n", + " 246.73\n", + " 9200772\n", + " 247.31\n", + " 247.57\n", + " 247.67\n", + " 2278816560\n", + " 247.6949\n", + " 19\n", + " 2064848\n", + " 126714\n", " 1\n", - " 75601\n", - " None\n", + " 64801\n", + " <NA>\n", " \n", " \n", - " 2021-12-06\n", - " 326.19\n", - " 327.45\n", - " 319.23\n", - " 30032556\n", - " 323.95\n", - " 326.47\n", - " 326.63\n", - " 9739995532.748207\n", - " 324.2414\n", + " 2022-11-28\n", + " 241.76\n", + " 246.65\n", + " 240.8\n", + " 24810271\n", + " 246.08\n", + " 241.72\n", + " 241.77\n", + " 6017327058\n", + " 242.6139\n", " 40\n", - " 6503796\n", - " 416525\n", + " 7483707\n", + " 273059\n", " 1\n", - " 75601\n", - " None\n", + " 75600\n", + " <NA>\n", " \n", " \n", - " 2021-12-07\n", - " 334.92\n", - " 335.8\n", - " 330.1\n", - " 31021936\n", - " 331.64\n", - " 334.92\n", - " 334.93\n", - " 10364687077.912527\n", - " 334.0932\n", - " 30\n", - " 6173264\n", - " 418516\n", + " 2022-11-29\n", + " 240.33\n", + " 242.79\n", + " 238.21\n", + " 17956313\n", + " 241.4\n", + " 240.27\n", + " 240.29\n", + " 4314464827\n", + " 240.2065\n", + " 29\n", + " 4221269\n", + " 222057\n", " 1\n", " 75600\n", - " None\n", + " <NA>\n", " \n", " \n", - " 2021-12-08\n", - " 334.97\n", - " 335.5\n", - " 330.8\n", - " 24760988\n", - " 335.31\n", - " 334.85\n", - " 334.96\n", - " 8255190131.761828\n", - " 333.189\n", - " 21\n", - " 6496590\n", - " 354291\n", + " 2022-11-30\n", + " 255.14\n", + " 255.33\n", + " 239.86\n", + " 47594239\n", + " 240.57\n", + " 255.03\n", + " 255.16\n", + " 11918187215\n", + " 249.7503\n", + " 83\n", + " 17884150\n", + " 448911\n", " 1\n", " 75600\n", - " None\n", + " <NA>\n", " \n", " \n", - " 2021-12-09\n", - " 333.1\n", - " 336.489\n", - " 332.12\n", - " 22214158\n", - " 334.41\n", - " 333.11\n", - " 333.13\n", - " 7417329533.582886\n", - " 333.9582\n", + " 2022-12-01\n", + " 254.69\n", + " 256.12\n", + " 250.9156\n", + " 26041524\n", + " 253.87\n", + " 254.69\n", + " 254.72\n", + " 6623908617\n", + " 254.3498\n", " 30\n", - " 5722611\n", - " 323815\n", + " 5911232\n", + " 352799\n", " 1\n", " 75600\n", - " None\n", + " <NA>\n", " \n", " \n", - " 2021-12-10\n", - " 342.54\n", - " 343.0\n", - " 334.79\n", - " 38095694\n", - " 334.98\n", - " 342.22\n", - " 342.54\n", - " 12966545775.419449\n", - " 340.312\n", - " 31\n", - " 6709227\n", - " 415946\n", + " 2022-12-02\n", + " 255.02\n", + " 256.06\n", + " 249.69\n", + " 21528520\n", + " 249.82\n", + " 255.02\n", + " 255.03\n", + " 5449171987\n", + " 253.1121\n", + " 40\n", + " 4328011\n", + " 278398\n", " 1\n", - " 75601\n", - " None\n", + " 75600\n", + " <NA>\n", " \n", " \n", - " 2021-12-13\n", - " 339.4\n", - " 343.79\n", - " 339.08\n", - " 28899431\n", - " 340.68\n", - " 339.39\n", - " 339.44\n", - " 9848983930.303616\n", - " 340.909\n", - " 37\n", - " 9005669\n", - " 333627\n", + " 2022-12-05\n", + " 250.2\n", + " 253.819\n", + " 248.06\n", + " 23435294\n", + " 252.01\n", + " 250.19\n", + " 250.21\n", + " 5874748591\n", + " 250.6104\n", + " 40\n", + " 6367078\n", + " 276722\n", " 1\n", - " 75601\n", - " None\n", + " 75600\n", + " <NA>\n", " \n", " \n", - " 2021-12-14\n", - " 328.34\n", - " 334.64\n", - " 324.11\n", - " 44438699\n", - " 333.22\n", - " 328.48\n", - " 328.52\n", - " 14576812986.834417\n", - " 327.9334\n", - " 52\n", - " 9563565\n", - " 586400\n", + " 2022-12-06\n", + " 245.12\n", + " 251.86\n", + " 243.78\n", + " 22463727\n", + " 250.82\n", + " 245.07\n", + " 245.09\n", + " 5529889578\n", + " 246.2096\n", + " 32\n", + " 5823112\n", + " 274238\n", + " 1\n", + " 75600\n", + " <NA>\n", + " \n", + " \n", + " 2022-12-07\n", + " 244.37\n", + " 246.16\n", + " 242.205\n", + " 20481522\n", + " 244.83\n", + " 244.3\n", + " 244.31\n", + " 5006944630\n", + " 244.4755\n", + " 29\n", + " 6023628\n", + " 226750\n", " 1\n", " 75601\n", - " None\n", + " <NA>\n", " \n", " \n", - " 2021-12-15\n", - " 334.65\n", - " 335.19\n", - " 324.5\n", - " 35381122\n", - " 328.61\n", - " 334.66\n", - " 334.67\n", - " 11689304409.466953\n", - " 330.2373\n", - " 41\n", - " 8692880\n", - " 459466\n", + " 2022-12-08\n", + " 247.4\n", + " 248.74\n", + " 243.06\n", + " 22611757\n", + " 244.84\n", + " 247.4\n", + " 247.41\n", + " 5579491513\n", + " 246.7075\n", + " 35\n", + " 5063932\n", + " 248284\n", " 1\n", " 75600\n", - " None\n", + " <NA>\n", " \n", " \n", - " 2021-12-16\n", - " 324.9\n", - " 336.76\n", - " 323.02\n", - " 35034831\n", - " 335.71\n", - " 324.88\n", - " 325.0\n", - " 11480125871.839542\n", - " 327.6695\n", - " 30\n", - " 7293879\n", - " 502538\n", + " 2022-12-09\n", + " 245.42\n", + " 248.31\n", + " 244.16\n", + " 20609743\n", + " 244.695\n", + " 245.42\n", + " 245.45\n", + " 5074538910\n", + " 246.2822\n", + " 34\n", + " 5870263\n", + " 238476\n", " 1\n", - " 75601\n", - " None\n", + " 75600\n", + " <NA>\n", " \n", " \n", "\n", @@ -1783,72 +1765,72 @@ "text/plain": [ "MSFT.O TRDPRC_1 HIGH_1 LOW_1 ACVOL_UNS OPEN_PRC BID ASK \\\n", "Date \n", - "2021-11-18 341.27 342.45 337.12 22463533 338.18 341.26 341.27 \n", - "2021-11-19 343.11 345.1 342.2 21963403 342.64 343.03 343.11 \n", - "2021-11-22 339.83 349.67 339.55 31031113 344.62 339.83 339.91 \n", - "2021-11-23 337.68 339.45 333.56 30427563 337.05 337.68 337.75 \n", - "2021-11-24 337.91 338.16 333.911 21661307 336.28 337.9 337.92 \n", - "2021-11-26 329.68 337.93 328.12 24217242 334.35 329.74 329.99 \n", - "2021-11-29 336.63 339.03 334.74 28563481 334.94 336.54 336.55 \n", - "2021-11-30 330.59 337.78 328.99 42885609 335.32 330.58 330.68 \n", - "2021-12-01 330.08 339.28 329.39 33401146 335.13 329.9 329.98 \n", - "2021-12-02 329.49 333.49 327.8028 30765980 330.3 329.49 329.74 \n", - "2021-12-03 323.01 332.7 318.03 41779279 331.99 323.1 323.18 \n", - "2021-12-06 326.19 327.45 319.23 30032556 323.95 326.47 326.63 \n", - "2021-12-07 334.92 335.8 330.1 31021936 331.64 334.92 334.93 \n", - "2021-12-08 334.97 335.5 330.8 24760988 335.31 334.85 334.96 \n", - "2021-12-09 333.1 336.489 332.12 22214158 334.41 333.11 333.13 \n", - "2021-12-10 342.54 343.0 334.79 38095694 334.98 342.22 342.54 \n", - "2021-12-13 339.4 343.79 339.08 28899431 340.68 339.39 339.44 \n", - "2021-12-14 328.34 334.64 324.11 44438699 333.22 328.48 328.52 \n", - "2021-12-15 334.65 335.19 324.5 35381122 328.61 334.66 334.67 \n", - "2021-12-16 324.9 336.76 323.02 35034831 335.71 324.88 325.0 \n", + "2022-11-11 247.11 247.99 241.93 34620246 242.99 247.09 247.2 \n", + "2022-11-14 241.55 243.91 239.21 31123340 241.985 241.56 241.61 \n", + "2022-11-15 241.97 247.0 240.03 31390117 245.66 242.03 242.09 \n", + "2022-11-16 241.73 243.8 240.42 24093272 242.79 241.73 241.82 \n", + "2022-11-17 241.68 243.25 237.63 23123544 237.78 241.7 241.77 \n", + "2022-11-18 241.22 243.74 239.03 27613523 243.51 241.23 241.32 \n", + "2022-11-21 242.05 244.67 241.19 26394700 241.43 242.05 242.13 \n", + "2022-11-22 245.03 245.31 240.71 19665699 243.59 245.04 245.08 \n", + "2022-11-23 247.58 248.28 244.27 19508462 245.105 247.62 247.76 \n", + "2022-11-25 247.49 248.7 246.73 9200772 247.31 247.57 247.67 \n", + "2022-11-28 241.76 246.65 240.8 24810271 246.08 241.72 241.77 \n", + "2022-11-29 240.33 242.79 238.21 17956313 241.4 240.27 240.29 \n", + "2022-11-30 255.14 255.33 239.86 47594239 240.57 255.03 255.16 \n", + "2022-12-01 254.69 256.12 250.9156 26041524 253.87 254.69 254.72 \n", + "2022-12-02 255.02 256.06 249.69 21528520 249.82 255.02 255.03 \n", + "2022-12-05 250.2 253.819 248.06 23435294 252.01 250.19 250.21 \n", + "2022-12-06 245.12 251.86 243.78 22463727 250.82 245.07 245.09 \n", + "2022-12-07 244.37 246.16 242.205 20481522 244.83 244.3 244.31 \n", + "2022-12-08 247.4 248.74 243.06 22611757 244.84 247.4 247.41 \n", + "2022-12-09 245.42 248.31 244.16 20609743 244.695 245.42 245.45 \n", "\n", - "MSFT.O TRNOVR_UNS VWAP BLKCOUNT BLKVOLUM NUM_MOVES \\\n", - "Date \n", - "2021-11-18 7641262614.73162 340.6207 37 8873307 252478 \n", - "2021-11-19 7540543542.476606 343.3571 29 6706321 267654 \n", - "2021-11-22 10673635009.485346 344.34 52 6966294 407010 \n", - "2021-11-23 10240538695.845694 336.1095 52 9028133 388981 \n", - "2021-11-24 7292088024.379446 336.3246 34 7625209 266155 \n", - "2021-11-26 8046948775.923566 332.3595 20 4647037 360134 \n", - "2021-11-29 9625361420.98243 337.0748 27 7826666 361924 \n", - "2021-11-30 14232317926.584055 331.9261 75 17286210 466083 \n", - "2021-12-01 11168511862.019682 334.5846 37 4839974 489735 \n", - "2021-12-02 10155383640.704012 330.1249 34 6813136 435981 \n", - "2021-12-03 13479796998.943327 322.5139 46 8855765 626436 \n", - "2021-12-06 9739995532.748207 324.2414 40 6503796 416525 \n", - "2021-12-07 10364687077.912527 334.0932 30 6173264 418516 \n", - "2021-12-08 8255190131.761828 333.189 21 6496590 354291 \n", - "2021-12-09 7417329533.582886 333.9582 30 5722611 323815 \n", - "2021-12-10 12966545775.419449 340.312 31 6709227 415946 \n", - "2021-12-13 9848983930.303616 340.909 37 9005669 333627 \n", - "2021-12-14 14576812986.834417 327.9334 52 9563565 586400 \n", - "2021-12-15 11689304409.466953 330.2373 41 8692880 459466 \n", - "2021-12-16 11480125871.839542 327.6695 30 7293879 502538 \n", + "MSFT.O TRNOVR_UNS VWAP BLKCOUNT BLKVOLUM NUM_MOVES TRD_STATUS \\\n", + "Date \n", + "2022-11-11 8502169857 245.7428 50 9288722 368001 1 \n", + "2022-11-14 7534857693 242.0873 39 6842106 351680 1 \n", + "2022-11-15 7638630192 243.3878 49 7538896 377450 1 \n", + "2022-11-16 5832014868 242.0972 31 6699796 270175 1 \n", + "2022-11-17 5577532837 241.1985 43 5693568 267476 1 \n", + "2022-11-18 6648449615 240.6324 48 10327474 265827 1 \n", + "2022-11-21 6394989590 242.4189 34 6929500 270840 1 \n", + "2022-11-22 4791556003 243.5814 31 4832958 216514 1 \n", + "2022-11-23 4816185581 246.8568 23 5169587 229081 1 \n", + "2022-11-25 2278816560 247.6949 19 2064848 126714 1 \n", + "2022-11-28 6017327058 242.6139 40 7483707 273059 1 \n", + "2022-11-29 4314464827 240.2065 29 4221269 222057 1 \n", + "2022-11-30 11918187215 249.7503 83 17884150 448911 1 \n", + "2022-12-01 6623908617 254.3498 30 5911232 352799 1 \n", + "2022-12-02 5449171987 253.1121 40 4328011 278398 1 \n", + "2022-12-05 5874748591 250.6104 40 6367078 276722 1 \n", + "2022-12-06 5529889578 246.2096 32 5823112 274238 1 \n", + "2022-12-07 5006944630 244.4755 29 6023628 226750 1 \n", + "2022-12-08 5579491513 246.7075 35 5063932 248284 1 \n", + "2022-12-09 5074538910 246.2822 34 5870263 238476 1 \n", "\n", - "MSFT.O TRD_STATUS SALTIM NAVALUE \n", - "Date \n", - "2021-11-18 1 75600 None \n", - "2021-11-19 1 75600 None \n", - "2021-11-22 1 75601 None \n", - "2021-11-23 1 75600 None \n", - "2021-11-24 1 75600 None \n", - "2021-11-26 1 64801 None \n", - "2021-11-29 1 75600 None \n", - "2021-11-30 1 75601 None \n", - "2021-12-01 1 75601 None \n", - "2021-12-02 1 75600 None \n", - "2021-12-03 1 75601 None \n", - "2021-12-06 1 75601 None \n", - "2021-12-07 1 75600 None \n", - "2021-12-08 1 75600 None \n", - "2021-12-09 1 75600 None \n", - "2021-12-10 1 75601 None \n", - "2021-12-13 1 75601 None \n", - "2021-12-14 1 75601 None \n", - "2021-12-15 1 75600 None \n", - "2021-12-16 1 75601 None " + "MSFT.O SALTIM NAVALUE \n", + "Date \n", + "2022-11-11 75600 \n", + "2022-11-14 75600 \n", + "2022-11-15 75600 \n", + "2022-11-16 75600 \n", + "2022-11-17 75600 \n", + "2022-11-18 75600 \n", + "2022-11-21 75600 \n", + "2022-11-22 75600 \n", + "2022-11-23 75600 \n", + "2022-11-25 64801 \n", + "2022-11-28 75600 \n", + "2022-11-29 75600 \n", + "2022-11-30 75600 \n", + "2022-12-01 75600 \n", + "2022-12-02 75600 \n", + "2022-12-05 75600 \n", + "2022-12-06 75600 \n", + "2022-12-07 75601 \n", + "2022-12-08 75600 \n", + "2022-12-09 75600 " ] }, "metadata": {}, @@ -1856,6 +1838,8 @@ } ], "source": [ + "await tasks\n", + "\n", "def display_reponse(response):\n", " print(response)\n", " print(\"\\nReponse received for\", response.closure)\n", @@ -1864,6 +1848,8 @@ " else:\n", " print(response.http_status)\n", "\n", + "vodafone, apple, microsoft = tasks.result()\n", + "\n", "display_reponse(vodafone)\n", "display_reponse(apple)\n", "display_reponse(microsoft)" @@ -1878,7 +1864,7 @@ }, { "cell_type": "code", - "execution_count": 7, + "execution_count": 5, "metadata": {}, "outputs": [], "source": [ @@ -1895,9 +1881,9 @@ ], "metadata": { "kernelspec": { - "display_name": "RevData39", + "display_name": "Python 3 (ipykernel)", "language": "python", - "name": "rd39" + "name": "python3" }, "language_info": { "codemirror_mode": { @@ -1909,7 +1895,7 @@ "name": "python", "nbconvert_exporter": "python", "pygments_lexer": "ipython3", - "version": "3.9.4" + "version": "3.9.7" } }, "nbformat": 4, diff --git a/Examples/2-Content/2.01-HistoricalPricing/EX-2.01.03-HistoricalPricing-RequestsWithEvents.ipynb b/Examples/2-Content/2.01-HistoricalPricing/EX-2.01.03-HistoricalPricing-RequestsWithEvents.ipynb index 913d620..957a10d 100644 --- a/Examples/2-Content/2.01-HistoricalPricing/EX-2.01.03-HistoricalPricing-RequestsWithEvents.ipynb +++ b/Examples/2-Content/2.01-HistoricalPricing/EX-2.01.03-HistoricalPricing-RequestsWithEvents.ipynb @@ -68,12 +68,13 @@ }, { "cell_type": "code", - "execution_count": 56, + "execution_count": 1, "metadata": {}, "outputs": [], "source": [ "import refinitiv.data as rd\n", "from refinitiv.data.content import historical_pricing\n", + "from refinitiv.data.content.historical_pricing import Intervals\n", "import asyncio\n", "import datetime" ] @@ -89,16 +90,16 @@ }, { "cell_type": "code", - "execution_count": 57, + "execution_count": 2, "metadata": {}, "outputs": [ { "data": { "text/plain": [ - "" + "" ] }, - "execution_count": 57, + "execution_count": 2, "metadata": {}, "output_type": "execute_result" } @@ -123,7 +124,7 @@ }, { "cell_type": "code", - "execution_count": 58, + "execution_count": 3, "metadata": {}, "outputs": [], "source": [ @@ -146,7 +147,7 @@ }, { "cell_type": "code", - "execution_count": 59, + "execution_count": 4, "metadata": { "tags": [] }, @@ -154,17 +155,17 @@ { "data": { "text/plain": [ - ">" + ">" ] }, - "execution_count": 59, + "execution_count": 4, "metadata": {}, "output_type": "execute_result" }, { "data": { "text/plain": [ - "'LSEG.L Historical Summaries response received at 14:04:00.459873'" + "\"['LSEG.L Daily Historical Summaries'] response received at 15:31:36.295303\"" ] }, "metadata": {}, @@ -240,484 +241,484 @@ " \n", " \n", " \n", - " 2021-11-18\n", - " 6728.7024\n", - " 6839.7811\n", - " 6680\n", - " 697709\n", - " 6700\n", - " 6680\n", - " 6684\n", - " 4694048229.6\n", - " 6727.80232\n", - " 6682\n", + " 2022-11-14\n", + " 8101.504\n", + " 8269\n", + " 8022\n", + " 818552\n", + " 8208\n", + " 8022\n", + " 8024\n", + " 6668909108.56\n", + " 8147.2026\n", + " 8023\n", " ...\n", - " 235971\n", - " 18712\n", - " 6700\n", - " 6680\n", + " 191720\n", + " 8505\n", + " 8208\n", + " 8022\n", " <NA>\n", " <NA>\n", - " 725223\n", - " 6648\n", - " 5982\n", - " None\n", + " 867074\n", + " 3907\n", + " 3526\n", + " <NA>\n", " \n", " \n", - " 2021-11-19\n", - " 6680.0\n", - " 6790.0\n", - " 6636\n", - " 1227919\n", - " 6680\n", - " 6702\n", - " 6704\n", - " 8217046746.09\n", - " 6691.84744\n", - " 6703\n", + " 2022-11-15\n", + " 7980.0\n", + " 8062\n", + " 7960\n", + " 354336\n", + " 8030\n", + " 7984\n", + " 7986\n", + " 2834718747.55\n", + " 8000.0745\n", + " 7985\n", " ...\n", - " 418259\n", - " 13540\n", - " 6680\n", - " 6704\n", - " 6726\n", - " 20380\n", - " 1282403\n", - " 6832\n", - " 6323\n", - " None\n", + " 142909\n", + " 6319\n", + " 8030\n", + " 7986\n", + " <NA>\n", + " <NA>\n", + " 374395\n", + " 4694\n", + " 4399\n", + " <NA>\n", " \n", " \n", - " 2021-11-22\n", - " 6684.0\n", - " 6856.0\n", - " 6684\n", - " 625896\n", - " 6736\n", - " 6684\n", - " 6686\n", - " 4217182628.2061\n", - " 6737.83285\n", - " 6685\n", + " 2022-11-16\n", + " 7996.0\n", + " 8060\n", + " 7942\n", + " 383289\n", + " 8022\n", + " 7996\n", + " 7998\n", + " 3063037947.99\n", + " 7991.45801\n", + " 7997\n", " ...\n", - " 242263\n", - " 13647\n", - " 6736\n", - " 6684\n", + " 168417\n", + " 4867\n", + " 8022\n", + " 7996\n", " <NA>\n", " <NA>\n", - " 688369\n", - " 6840\n", - " 6363\n", - " None\n", + " 718489\n", + " 4981\n", + " 4689\n", + " <NA>\n", " \n", " \n", - " 2021-11-23\n", - " 6734.0\n", - " 6766.0\n", - " 6600\n", - " 642256\n", - " 6668\n", - " 6734\n", - " 6736\n", - " 4303886557.0328\n", - " 6701.20101\n", - " 6735\n", + " 2022-11-17\n", + " 8036.0\n", + " 8074\n", + " 7958\n", + " 250752\n", + " 8020\n", + " 8034\n", + " 8036\n", + " 2012039935.09\n", + " 8024.50862\n", + " 8035\n", " ...\n", - " 242516\n", - " 3217\n", - " 6668\n", - " 6734\n", + " 119501\n", + " 7131\n", + " 8020\n", + " 8036\n", + " <NA>\n", " <NA>\n", + " 299563\n", + " 2964\n", + " 2708\n", " <NA>\n", - " 694941\n", - " 7210\n", - " 6752\n", - " None\n", " \n", " \n", - " 2021-11-24\n", - " 6824.0\n", - " 6832.0\n", - " 6552\n", - " 1809481\n", - " 6780\n", - " 6810\n", - " 6812\n", - " 12229515457.057541\n", - " 6758.57626\n", - " 6811\n", + " 2022-11-18\n", + " 8122.0\n", + " 8156\n", + " 8030\n", + " 449147\n", + " 8066\n", + " 8120\n", + " 8122\n", + " 3643058057.44674\n", + " 8111.0593\n", + " 8121\n", " ...\n", - " 276206\n", - " 9045\n", - " 6780\n", - " 6810\n", - " <NA>\n", + " 165293\n", + " 5102\n", + " 8066\n", + " 8122\n", + " 8104\n", + " 95291\n", + " 463214\n", + " 3015\n", + " 2883\n", " <NA>\n", - " 1943949\n", - " 10446\n", - " 9849\n", - " None\n", " \n", " \n", - " 2021-11-25\n", - " 6822.0\n", - " 6872.0\n", - " 6738\n", - " 982614\n", - " 6822\n", - " 6824\n", - " 6826\n", - " 6702808788.36\n", - " 6821.40575\n", - " 6825\n", + " 2022-11-21\n", + " 8126.694\n", + " 8166\n", + " 8044\n", + " 426866\n", + " 8086\n", + " 8156\n", + " 8166\n", + " 3461767094.34\n", + " 8109.7226\n", + " 8161\n", " ...\n", - " 198533\n", - " 2155\n", - " 6822\n", - " 6824\n", + " 107361\n", + " 8880\n", + " 8086\n", + " 8166\n", " <NA>\n", " <NA>\n", - " 1141701\n", - " 5848\n", - " 5560\n", - " None\n", + " 446777\n", + " 2457\n", + " 2284\n", + " <NA>\n", " \n", " \n", - " 2021-11-26\n", - " 6704.0\n", - " 6880.52\n", - " 6680\n", - " 946540\n", - " 6704\n", - " 6824\n", - " 6850\n", - " 6433414329.78602\n", - " 6796.76963\n", - " 6837\n", + " 2022-11-22\n", + " 8156.53\n", + " 8200\n", + " 8128\n", + " 276294\n", + " 8170\n", + " 8164\n", + " 8168\n", + " 2255065047.70422\n", + " 8161.8288\n", + " 8166\n", " ...\n", - " 230979\n", - " 5822\n", - " 6704\n", - " 6850\n", + " 126394\n", + " 12168\n", + " 8170\n", + " 8164\n", + " <NA>\n", " <NA>\n", + " 302588\n", + " 3512\n", + " 3218\n", " <NA>\n", - " 1084983\n", - " 9173\n", - " 8736\n", - " None\n", " \n", " \n", - " 2021-11-29\n", - " 6764.3\n", - " 6926.0\n", - " 6754\n", - " 1119681\n", - " 6890\n", - " 6870\n", - " 6872\n", - " 7678850720.20644\n", - " 6858.06992\n", - " 6871\n", + " 2022-11-23\n", + " 8222.2937\n", + " 8264\n", + " 8140\n", + " 230793\n", + " 8166\n", + " 8232\n", + " 8234\n", + " 1898970901.9867\n", + " 8228.0373\n", + " 8233\n", " ...\n", - " 340426\n", - " 4129\n", - " 6890\n", - " 6870\n", + " 129204\n", + " 3255\n", + " 8166\n", + " 8232\n", + " <NA>\n", " <NA>\n", + " 258016\n", + " 2420\n", + " 2256\n", " <NA>\n", - " 1293553\n", - " 8653\n", - " 8291\n", - " None\n", " \n", " \n", - " 2021-11-30\n", - " 6502.0\n", - " 6872.0\n", - " 6502\n", - " 2023297\n", - " 6870\n", - " 6502\n", - " 6512\n", - " 13234527793.25\n", - " 6541.07024\n", - " 6507\n", + " 2022-11-24\n", + " 8110.2397\n", + " 8250\n", + " 8054\n", + " 284774\n", + " 8242\n", + " 8080\n", + " 8082\n", + " 2308312978.82\n", + " 8105.7607\n", + " 8081\n", " ...\n", - " 1560106\n", - " 9295\n", - " 6870\n", - " 6502\n", + " 125594\n", + " 4881\n", + " 8242\n", + " 8080\n", " <NA>\n", " <NA>\n", - " 2495199\n", - " 7992\n", - " 7365\n", - " None\n", + " 342624\n", + " 3255\n", + " 2998\n", + " <NA>\n", " \n", " \n", - " 2021-12-01\n", - " 6752.0\n", - " 6786.0\n", - " 6532\n", - " 1235156\n", - " 6532\n", - " 6752\n", - " 6754\n", - " 8239716493.48\n", - " 6670.9932\n", - " 6753\n", + " 2022-11-25\n", + " 8109.3928\n", + " 8176\n", + " 8052\n", + " 227432\n", + " 8088\n", + " 8114\n", + " 8116\n", + " 1845631055.83\n", + " 8115.09855\n", + " 8115\n", " ...\n", - " 379918\n", - " 9828\n", - " 6532\n", - " 6752\n", + " 139923\n", + " 2266\n", + " 8088\n", + " 8116\n", + " <NA>\n", " <NA>\n", + " 264375\n", + " 2158\n", + " 1999\n", " <NA>\n", - " 1416407\n", - " 9035\n", - " 8404\n", - " None\n", " \n", " \n", - " 2021-12-02\n", - " 6610.0\n", - " 6704.0\n", - " 6570\n", - " 891113\n", - " 6690\n", - " 6580\n", - " 6582\n", - " 5898413269.72876\n", - " 6619.1528\n", - " 6581\n", + " 2022-11-28\n", + " 8103.0\n", + " 8186\n", + " 8044\n", + " 323606\n", + " 8096\n", + " 8138\n", + " 8146\n", + " 2631920632.98\n", + " 8133.1347\n", + " 8142\n", " ...\n", - " 300346\n", - " 7654\n", - " 6690\n", - " 6582\n", + " 169302\n", + " 3450\n", + " 8096\n", + " 8138\n", + " <NA>\n", " <NA>\n", + " 377736\n", + " 4165\n", + " 3957\n", " <NA>\n", - " 951239\n", - " 9792\n", - " 9438\n", - " None\n", " \n", " \n", - " 2021-12-03\n", - " 6527.9473\n", - " 6690.0\n", - " 6506\n", - " 708073\n", - " 6640\n", - " 6522\n", - " 6524\n", - " 4650062824.8002\n", - " 6567.20803\n", - " 6523\n", + " 2022-11-29\n", + " 8135.4615\n", + " 8166\n", + " 8030\n", + " 550994\n", + " 8146\n", + " 8044\n", + " 8046\n", + " 4469707191.36\n", + " 8111.91975\n", + " 8045\n", " ...\n", - " 206125\n", - " 7416\n", - " 6640\n", - " 6524\n", + " 102697\n", + " 3789\n", + " 8146\n", + " 8044\n", " <NA>\n", " <NA>\n", - " 730958\n", - " 5470\n", - " 5113\n", - " None\n", + " 633677\n", + " 2649\n", + " 2465\n", + " <NA>\n", " \n", " \n", - " 2021-12-06\n", - " 6590.0\n", - " 6636.0\n", - " 6522\n", - " 383706\n", - " 6556\n", - " 6586\n", - " 6590\n", - " 2529928546.25\n", - " 6593.40366\n", - " 6588\n", + " 2022-11-30\n", + " 8091.87755\n", + " 8318\n", + " 8044\n", + " 802380\n", + " 8094\n", + " 8244\n", + " 8248\n", + " 6606924811.33\n", + " 8234.15\n", + " 8246\n", " ...\n", - " 135949\n", - " 1630\n", - " 6556\n", - " 6590\n", + " 552525\n", + " 6224\n", + " 8094\n", + " 8248\n", " <NA>\n", " <NA>\n", - " 396725\n", - " 4615\n", - " 4359\n", - " None\n", + " 902777\n", + " 5486\n", + " 5030\n", + " <NA>\n", " \n", " \n", - " 2021-12-07\n", - " 6708.0\n", - " 6732.0\n", - " 6636\n", - " 798893\n", - " 6652\n", - " 6712\n", - " 6714\n", - " 5344809963.42\n", - " 6690.2698\n", - " 6713\n", + " 2022-12-01\n", + " 8296.2759\n", + " 8362\n", + " 8252\n", + " 513053\n", + " 8332\n", + " 8270\n", + " 8274\n", + " 4255867260.52\n", + " 8295.1753\n", + " 8272\n", " ...\n", - " 227969\n", - " 11624\n", - " 6652\n", - " 6712\n", + " 159344\n", + " 5112\n", + " 8332\n", + " 8270\n", " <NA>\n", " <NA>\n", - " 814156\n", - " 5139\n", - " 4855\n", - " None\n", + " 588162\n", + " 5341\n", + " 4770\n", + " <NA>\n", " \n", " \n", - " 2021-12-08\n", - " 6758.0\n", - " 6858.0\n", - " 6726\n", - " 932773\n", - " 6764\n", - " 6754\n", - " 6758\n", - " 6315136777.6166\n", - " 6770.28256\n", - " 6756\n", + " 2022-12-02\n", + " 8295.1128\n", + " 8410\n", + " 8266\n", + " 480284\n", + " 8272\n", + " 8272\n", + " 8280\n", + " 3989653507.75\n", + " 8306.8642\n", + " 8276\n", " ...\n", - " 236695\n", - " 12198\n", - " 6764\n", - " 6758\n", + " 191647\n", + " 13448\n", + " 8272\n", + " 8272\n", + " <NA>\n", " <NA>\n", + " 547475\n", + " 3718\n", + " 3420\n", " <NA>\n", - " 974768\n", - " 6431\n", - " 6020\n", - " None\n", " \n", " \n", - " 2021-12-09\n", - " 6794.0\n", - " 6818.0\n", - " 6632\n", - " 924176\n", - " 6794\n", - " 6640\n", - " 6642\n", - " 6182064712.96218\n", - " 6689.2718\n", - " 6641\n", + " 2022-12-05\n", + " 7980.0\n", + " 8276\n", + " 7980\n", + " 576625\n", + " 8262\n", + " 7978\n", + " 7980\n", + " 4633626459.51\n", + " 8035.7619\n", + " 7979\n", " ...\n", - " 261876\n", - " 7431\n", - " 6794\n", - " 6642\n", + " 329617\n", + " 6134\n", + " 8262\n", + " 7980\n", + " <NA>\n", " <NA>\n", + " 609294\n", + " 4430\n", + " 4050\n", " <NA>\n", - " 1007129\n", - " 5293\n", - " 4975\n", - " None\n", " \n", " \n", - " 2021-12-10\n", - " 6742.0\n", - " 6750.0\n", - " 6622\n", - " 357852\n", - " 6640\n", - " 6740\n", - " 6742\n", - " 2405696489.967\n", - " 6722.60177\n", - " 6741\n", + " 2022-12-06\n", + " 7909.5824\n", + " 8058\n", + " 7850\n", + " 506376\n", + " 8026\n", + " 7850\n", + " 7854\n", + " 3994836961.32\n", + " 7888.9244\n", + " 7852\n", " ...\n", - " 163569\n", - " 6822\n", - " 6640\n", - " 6742\n", + " 282484\n", + " 9127\n", + " 8026\n", + " 7850\n", " <NA>\n", " <NA>\n", - " 424150\n", - " 3787\n", - " 3495\n", - " None\n", + " 556496\n", + " 4617\n", + " 4216\n", + " <NA>\n", " \n", " \n", - " 2021-12-13\n", - " 6700.0\n", - " 6723.8\n", - " 6598\n", - " 1522242\n", - " 6700\n", - " 6676\n", - " 6686\n", - " 10189932120.15\n", - " 6694.02902\n", - " 6681\n", + " 2022-12-07\n", + " 7880.2756\n", + " 7902\n", + " 7828\n", + " 355572\n", + " 7840\n", + " 7886\n", + " 7888\n", + " 2802304223.03\n", + " 7881.1629\n", + " 7887\n", " ...\n", - " 213392\n", - " 7457\n", - " 6700\n", - " 6686\n", + " 169651\n", + " 7218\n", + " 7840\n", + " 7888\n", + " <NA>\n", " <NA>\n", + " 373777\n", + " 3451\n", + " 3260\n", " <NA>\n", - " 1564658\n", - " 4548\n", - " 4270\n", - " None\n", " \n", " \n", - " 2021-12-14\n", - " 6802.0\n", - " 6836.0\n", - " 6686\n", - " 635812\n", - " 6710\n", - " 6768\n", - " 6770\n", - " 4314747007.2712\n", - " 6786.19939\n", - " 6769\n", + " 2022-12-08\n", + " 7548.03547\n", + " 7800\n", + " 7366\n", + " 902245\n", + " 7776\n", + " 7380\n", + " 7382\n", + " 6741507445.99262\n", + " 7471.924\n", + " 7381\n", " ...\n", - " 311439\n", - " 4350\n", - " 6710\n", - " 6770\n", + " 394212\n", + " 16940\n", + " 7776\n", + " 7380\n", + " <NA>\n", " <NA>\n", + " 1082760\n", + " 8370\n", + " 7678\n", " <NA>\n", - " 694552\n", - " 6191\n", - " 5666\n", - " None\n", " \n", " \n", - " 2021-12-15\n", - " 6750.0\n", - " 6820.0\n", - " 6674\n", - " 665560\n", - " 6750\n", - " 6740\n", - " 6742\n", - " 4495235717.6934\n", - " 6754.06532\n", - " 6741\n", + " 2022-12-09\n", + " 7387.21352\n", + " 7434\n", + " 7306\n", + " 687991\n", + " 7380\n", + " 7404\n", + " 7406\n", + " 5092135227.45618\n", + " 7401.4557\n", + " 7405\n", " ...\n", - " 253956\n", - " 5951\n", - " 6750\n", - " 6740\n", + " 333628\n", + " 8870\n", + " 7380\n", + " 7406\n", " <NA>\n", " <NA>\n", - " 754432\n", - " 6753\n", - " 6438\n", - " None\n", + " 778074\n", + " 4825\n", + " 4160\n", + " <NA>\n", " \n", " \n", "\n", @@ -725,97 +726,97 @@ "" ], "text/plain": [ - "LSEG.L TRDPRC_1 MKT_HIGH MKT_LOW ACVOL_UNS MKT_OPEN BID ASK \\\n", + "LSEG.L TRDPRC_1 MKT_HIGH MKT_LOW ACVOL_UNS MKT_OPEN BID ASK \\\n", "Date \n", - "2021-11-18 6728.7024 6839.7811 6680 697709 6700 6680 6684 \n", - "2021-11-19 6680.0 6790.0 6636 1227919 6680 6702 6704 \n", - "2021-11-22 6684.0 6856.0 6684 625896 6736 6684 6686 \n", - "2021-11-23 6734.0 6766.0 6600 642256 6668 6734 6736 \n", - "2021-11-24 6824.0 6832.0 6552 1809481 6780 6810 6812 \n", - "2021-11-25 6822.0 6872.0 6738 982614 6822 6824 6826 \n", - "2021-11-26 6704.0 6880.52 6680 946540 6704 6824 6850 \n", - "2021-11-29 6764.3 6926.0 6754 1119681 6890 6870 6872 \n", - "2021-11-30 6502.0 6872.0 6502 2023297 6870 6502 6512 \n", - "2021-12-01 6752.0 6786.0 6532 1235156 6532 6752 6754 \n", - "2021-12-02 6610.0 6704.0 6570 891113 6690 6580 6582 \n", - "2021-12-03 6527.9473 6690.0 6506 708073 6640 6522 6524 \n", - "2021-12-06 6590.0 6636.0 6522 383706 6556 6586 6590 \n", - "2021-12-07 6708.0 6732.0 6636 798893 6652 6712 6714 \n", - "2021-12-08 6758.0 6858.0 6726 932773 6764 6754 6758 \n", - "2021-12-09 6794.0 6818.0 6632 924176 6794 6640 6642 \n", - "2021-12-10 6742.0 6750.0 6622 357852 6640 6740 6742 \n", - "2021-12-13 6700.0 6723.8 6598 1522242 6700 6676 6686 \n", - "2021-12-14 6802.0 6836.0 6686 635812 6710 6768 6770 \n", - "2021-12-15 6750.0 6820.0 6674 665560 6750 6740 6742 \n", + "2022-11-14 8101.504 8269 8022 818552 8208 8022 8024 \n", + "2022-11-15 7980.0 8062 7960 354336 8030 7984 7986 \n", + "2022-11-16 7996.0 8060 7942 383289 8022 7996 7998 \n", + "2022-11-17 8036.0 8074 7958 250752 8020 8034 8036 \n", + "2022-11-18 8122.0 8156 8030 449147 8066 8120 8122 \n", + "2022-11-21 8126.694 8166 8044 426866 8086 8156 8166 \n", + "2022-11-22 8156.53 8200 8128 276294 8170 8164 8168 \n", + "2022-11-23 8222.2937 8264 8140 230793 8166 8232 8234 \n", + "2022-11-24 8110.2397 8250 8054 284774 8242 8080 8082 \n", + "2022-11-25 8109.3928 8176 8052 227432 8088 8114 8116 \n", + "2022-11-28 8103.0 8186 8044 323606 8096 8138 8146 \n", + "2022-11-29 8135.4615 8166 8030 550994 8146 8044 8046 \n", + "2022-11-30 8091.87755 8318 8044 802380 8094 8244 8248 \n", + "2022-12-01 8296.2759 8362 8252 513053 8332 8270 8274 \n", + "2022-12-02 8295.1128 8410 8266 480284 8272 8272 8280 \n", + "2022-12-05 7980.0 8276 7980 576625 8262 7978 7980 \n", + "2022-12-06 7909.5824 8058 7850 506376 8026 7850 7854 \n", + "2022-12-07 7880.2756 7902 7828 355572 7840 7886 7888 \n", + "2022-12-08 7548.03547 7800 7366 902245 7776 7380 7382 \n", + "2022-12-09 7387.21352 7434 7306 687991 7380 7404 7406 \n", "\n", - "LSEG.L TRNOVR_UNS VWAP MID_PRICE ... CLS_AUCVOL \\\n", - "Date ... \n", - "2021-11-18 4694048229.6 6727.80232 6682 ... 235971 \n", - "2021-11-19 8217046746.09 6691.84744 6703 ... 418259 \n", - "2021-11-22 4217182628.2061 6737.83285 6685 ... 242263 \n", - "2021-11-23 4303886557.0328 6701.20101 6735 ... 242516 \n", - "2021-11-24 12229515457.057541 6758.57626 6811 ... 276206 \n", - "2021-11-25 6702808788.36 6821.40575 6825 ... 198533 \n", - "2021-11-26 6433414329.78602 6796.76963 6837 ... 230979 \n", - "2021-11-29 7678850720.20644 6858.06992 6871 ... 340426 \n", - "2021-11-30 13234527793.25 6541.07024 6507 ... 1560106 \n", - "2021-12-01 8239716493.48 6670.9932 6753 ... 379918 \n", - "2021-12-02 5898413269.72876 6619.1528 6581 ... 300346 \n", - "2021-12-03 4650062824.8002 6567.20803 6523 ... 206125 \n", - "2021-12-06 2529928546.25 6593.40366 6588 ... 135949 \n", - "2021-12-07 5344809963.42 6690.2698 6713 ... 227969 \n", - "2021-12-08 6315136777.6166 6770.28256 6756 ... 236695 \n", - "2021-12-09 6182064712.96218 6689.2718 6641 ... 261876 \n", - "2021-12-10 2405696489.967 6722.60177 6741 ... 163569 \n", - "2021-12-13 10189932120.15 6694.02902 6681 ... 213392 \n", - "2021-12-14 4314747007.2712 6786.19939 6769 ... 311439 \n", - "2021-12-15 4495235717.6934 6754.06532 6741 ... 253956 \n", + "LSEG.L TRNOVR_UNS VWAP MID_PRICE ... CLS_AUCVOL \\\n", + "Date ... \n", + "2022-11-14 6668909108.56 8147.2026 8023 ... 191720 \n", + "2022-11-15 2834718747.55 8000.0745 7985 ... 142909 \n", + "2022-11-16 3063037947.99 7991.45801 7997 ... 168417 \n", + "2022-11-17 2012039935.09 8024.50862 8035 ... 119501 \n", + "2022-11-18 3643058057.44674 8111.0593 8121 ... 165293 \n", + "2022-11-21 3461767094.34 8109.7226 8161 ... 107361 \n", + "2022-11-22 2255065047.70422 8161.8288 8166 ... 126394 \n", + "2022-11-23 1898970901.9867 8228.0373 8233 ... 129204 \n", + "2022-11-24 2308312978.82 8105.7607 8081 ... 125594 \n", + "2022-11-25 1845631055.83 8115.09855 8115 ... 139923 \n", + "2022-11-28 2631920632.98 8133.1347 8142 ... 169302 \n", + "2022-11-29 4469707191.36 8111.91975 8045 ... 102697 \n", + "2022-11-30 6606924811.33 8234.15 8246 ... 552525 \n", + "2022-12-01 4255867260.52 8295.1753 8272 ... 159344 \n", + "2022-12-02 3989653507.75 8306.8642 8276 ... 191647 \n", + "2022-12-05 4633626459.51 8035.7619 7979 ... 329617 \n", + "2022-12-06 3994836961.32 7888.9244 7852 ... 282484 \n", + "2022-12-07 2802304223.03 7881.1629 7887 ... 169651 \n", + "2022-12-08 6741507445.99262 7471.924 7381 ... 394212 \n", + "2022-12-09 5092135227.45618 7401.4557 7405 ... 333628 \n", "\n", "LSEG.L OPN_AUCVOL OPN_AUC CLS_AUC INT_AUC INT_AUCVOL EX_VOL_UNS \\\n", "Date \n", - "2021-11-18 18712 6700 6680 725223 \n", - "2021-11-19 13540 6680 6704 6726 20380 1282403 \n", - "2021-11-22 13647 6736 6684 688369 \n", - "2021-11-23 3217 6668 6734 694941 \n", - "2021-11-24 9045 6780 6810 1943949 \n", - "2021-11-25 2155 6822 6824 1141701 \n", - "2021-11-26 5822 6704 6850 1084983 \n", - "2021-11-29 4129 6890 6870 1293553 \n", - "2021-11-30 9295 6870 6502 2495199 \n", - "2021-12-01 9828 6532 6752 1416407 \n", - "2021-12-02 7654 6690 6582 951239 \n", - "2021-12-03 7416 6640 6524 730958 \n", - "2021-12-06 1630 6556 6590 396725 \n", - "2021-12-07 11624 6652 6712 814156 \n", - "2021-12-08 12198 6764 6758 974768 \n", - "2021-12-09 7431 6794 6642 1007129 \n", - "2021-12-10 6822 6640 6742 424150 \n", - "2021-12-13 7457 6700 6686 1564658 \n", - "2021-12-14 4350 6710 6770 694552 \n", - "2021-12-15 5951 6750 6740 754432 \n", + "2022-11-14 8505 8208 8022 867074 \n", + "2022-11-15 6319 8030 7986 374395 \n", + "2022-11-16 4867 8022 7996 718489 \n", + "2022-11-17 7131 8020 8036 299563 \n", + "2022-11-18 5102 8066 8122 8104 95291 463214 \n", + "2022-11-21 8880 8086 8166 446777 \n", + "2022-11-22 12168 8170 8164 302588 \n", + "2022-11-23 3255 8166 8232 258016 \n", + "2022-11-24 4881 8242 8080 342624 \n", + "2022-11-25 2266 8088 8116 264375 \n", + "2022-11-28 3450 8096 8138 377736 \n", + "2022-11-29 3789 8146 8044 633677 \n", + "2022-11-30 6224 8094 8248 902777 \n", + "2022-12-01 5112 8332 8270 588162 \n", + "2022-12-02 13448 8272 8272 547475 \n", + "2022-12-05 6134 8262 7980 609294 \n", + "2022-12-06 9127 8026 7850 556496 \n", + "2022-12-07 7218 7840 7888 373777 \n", + "2022-12-08 16940 7776 7380 1082760 \n", + "2022-12-09 8870 7380 7406 778074 \n", "\n", "LSEG.L ALL_C_MOVE ELG_NUMMOV NAVALUE \n", "Date \n", - "2021-11-18 6648 5982 None \n", - "2021-11-19 6832 6323 None \n", - "2021-11-22 6840 6363 None \n", - "2021-11-23 7210 6752 None \n", - "2021-11-24 10446 9849 None \n", - "2021-11-25 5848 5560 None \n", - "2021-11-26 9173 8736 None \n", - "2021-11-29 8653 8291 None \n", - "2021-11-30 7992 7365 None \n", - "2021-12-01 9035 8404 None \n", - "2021-12-02 9792 9438 None \n", - "2021-12-03 5470 5113 None \n", - "2021-12-06 4615 4359 None \n", - "2021-12-07 5139 4855 None \n", - "2021-12-08 6431 6020 None \n", - "2021-12-09 5293 4975 None \n", - "2021-12-10 3787 3495 None \n", - "2021-12-13 4548 4270 None \n", - "2021-12-14 6191 5666 None \n", - "2021-12-15 6753 6438 None \n", + "2022-11-14 3907 3526 \n", + "2022-11-15 4694 4399 \n", + "2022-11-16 4981 4689 \n", + "2022-11-17 2964 2708 \n", + "2022-11-18 3015 2883 \n", + "2022-11-21 2457 2284 \n", + "2022-11-22 3512 3218 \n", + "2022-11-23 2420 2256 \n", + "2022-11-24 3255 2998 \n", + "2022-11-25 2158 1999 \n", + "2022-11-28 4165 3957 \n", + "2022-11-29 2649 2465 \n", + "2022-11-30 5486 5030 \n", + "2022-12-01 5341 4770 \n", + "2022-12-02 3718 3420 \n", + "2022-12-05 4430 4050 \n", + "2022-12-06 4617 4216 \n", + "2022-12-07 3451 3260 \n", + "2022-12-08 8370 7678 \n", + "2022-12-09 4825 4160 \n", "\n", "[20 rows x 31 columns]" ] @@ -826,7 +827,7 @@ { "data": { "text/plain": [ - "'LSEG.L Historical Summaries response received at 14:04:00.848837'" + "\"['LSEG.L 5 minutes Historical Summaries'] response received at 15:31:36.533460\"" ] }, "metadata": {}, @@ -853,30 +854,30 @@ " \n", " \n", " LSEG.L\n", + " HIGH_1\n", + " LOW_1\n", + " OPEN_PRC\n", " TRDPRC_1\n", - " MKT_HIGH\n", - " MKT_LOW\n", + " NUM_MOVES\n", " ACVOL_UNS\n", - " MKT_OPEN\n", - " BID\n", + " HIGH_YLD\n", + " LOW_YLD\n", + " OPEN_YLD\n", + " YIELD\n", + " ...\n", + " BID_NUMMOV\n", + " ASK_HIGH_1\n", + " ASK_LOW_1\n", + " OPEN_ASK\n", " ASK\n", - " TRNOVR_UNS\n", - " VWAP\n", + " ASK_NUMMOV\n", + " MID_HIGH\n", + " MID_LOW\n", + " MID_OPEN\n", " MID_PRICE\n", - " ...\n", - " CLS_AUCVOL\n", - " OPN_AUCVOL\n", - " OPN_AUC\n", - " CLS_AUC\n", - " INT_AUC\n", - " INT_AUCVOL\n", - " EX_VOL_UNS\n", - " ALL_C_MOVE\n", - " ELG_NUMMOV\n", - " NAVALUE\n", " \n", " \n", - " Date\n", + " Timestamp\n", " \n", " \n", " \n", @@ -902,584 +903,584 @@ " \n", " \n", " \n", - " 2021-11-18\n", - " 6728.7024\n", - " 6839.7811\n", - " 6680\n", - " 697709\n", - " 6700\n", - " 6680\n", - " 6684\n", - " 4694048229.6\n", - " 6727.80232\n", - " 6682\n", - " ...\n", - " 235971\n", - " 18712\n", - " 6700\n", - " 6680\n", + " 2022-12-12 12:55:00\n", + " 7563.8\n", + " 7560.502\n", + " 7563.5293\n", + " 7563.8\n", + " 5\n", + " 410\n", + " <NA>\n", + " <NA>\n", " <NA>\n", " <NA>\n", - " 725223\n", - " 6648\n", - " 5982\n", - " None\n", + " ...\n", + " 178\n", + " 7564\n", + " 7562\n", + " 7564\n", + " 7564\n", + " 178\n", + " 7563\n", + " 7560\n", + " 7562\n", + " 7562\n", " \n", " \n", - " 2021-11-19\n", - " 6680.0\n", - " 6790.0\n", - " 6636\n", - " 1227919\n", - " 6680\n", - " 6702\n", - " 6704\n", - " 8217046746.09\n", - " 6691.84744\n", - " 6703\n", + " 2022-12-12 13:00:00\n", + " 7588.0\n", + " 7562.0\n", + " 7562.0\n", + " 7588.0\n", + " 64\n", + " 2644\n", + " <NA>\n", + " <NA>\n", + " <NA>\n", + " <NA>\n", " ...\n", - " 418259\n", - " 13540\n", - " 6680\n", - " 6704\n", - " 6726\n", - " 20380\n", - " 1282403\n", - " 6832\n", - " 6323\n", - " None\n", + " 738\n", + " 7592\n", + " 7562\n", + " 7564\n", + " 7592\n", + " 738\n", + " 7590\n", + " 7560\n", + " 7563\n", + " 7589\n", " \n", " \n", - " 2021-11-22\n", - " 6684.0\n", - " 6856.0\n", - " 6684\n", - " 625896\n", - " 6736\n", - " 6684\n", - " 6686\n", - " 4217182628.2061\n", - " 6737.83285\n", - " 6685\n", - " ...\n", - " 242263\n", - " 13647\n", - " 6736\n", - " 6684\n", + " 2022-12-12 13:05:00\n", + " 7602.0\n", + " 7588.0\n", + " 7590.494\n", + " 7600.0\n", + " 92\n", + " 4359\n", + " <NA>\n", + " <NA>\n", " <NA>\n", " <NA>\n", - " 688369\n", - " 6840\n", - " 6363\n", - " None\n", + " ...\n", + " 957\n", + " 7604\n", + " 7588\n", + " 7592\n", + " 7600\n", + " 957\n", + " 7602\n", + " 7586\n", + " 7589\n", + " 7598\n", " \n", " \n", - " 2021-11-23\n", - " 6734.0\n", - " 6766.0\n", - " 6600\n", - " 642256\n", - " 6668\n", - " 6734\n", - " 6736\n", - " 4303886557.0328\n", - " 6701.20101\n", - " 6735\n", - " ...\n", - " 242516\n", - " 3217\n", - " 6668\n", - " 6734\n", + " 2022-12-12 13:10:00\n", + " 7596.0\n", + " 7572.0\n", + " 7596.0\n", + " 7584.0\n", + " 94\n", + " 4693\n", + " <NA>\n", " <NA>\n", " <NA>\n", - " 694941\n", - " 7210\n", - " 6752\n", - " None\n", + " <NA>\n", + " ...\n", + " 897\n", + " 7600\n", + " 7574\n", + " 7600\n", + " 7586\n", + " 897\n", + " 7598\n", + " 7572\n", + " 7598\n", + " 7584\n", " \n", " \n", - " 2021-11-24\n", - " 6824.0\n", - " 6832.0\n", - " 6552\n", - " 1809481\n", - " 6780\n", - " 6810\n", - " 6812\n", - " 12229515457.057541\n", - " 6758.57626\n", - " 6811\n", - " ...\n", - " 276206\n", - " 9045\n", - " 6780\n", - " 6810\n", + " 2022-12-12 13:15:00\n", + " 7588.0302\n", + " 7582.0\n", + " 7584.998\n", + " 7582.0\n", + " 24\n", + " 1257\n", " <NA>\n", " <NA>\n", - " 1943949\n", - " 10446\n", - " 9849\n", - " None\n", + " <NA>\n", + " <NA>\n", + " ...\n", + " 224\n", + " 7592\n", + " 7582\n", + " 7586\n", + " 7584\n", + " 224\n", + " 7589\n", + " 7581\n", + " 7584\n", + " 7582\n", " \n", " \n", - " 2021-11-25\n", - " 6822.0\n", - " 6872.0\n", - " 6738\n", - " 982614\n", - " 6822\n", - " 6824\n", - " 6826\n", - " 6702808788.36\n", - " 6821.40575\n", - " 6825\n", - " ...\n", - " 198533\n", - " 2155\n", - " 6822\n", - " 6824\n", + " 2022-12-12 13:20:00\n", + " 7580.0\n", + " 7560.0\n", + " 7580.0\n", + " 7560.0\n", + " 12\n", + " 322\n", + " <NA>\n", + " <NA>\n", " <NA>\n", " <NA>\n", - " 1141701\n", - " 5848\n", - " 5560\n", - " None\n", + " ...\n", + " 424\n", + " 7584\n", + " 7562\n", + " 7584\n", + " 7564\n", + " 424\n", + " 7582\n", + " 7560\n", + " 7582\n", + " 7562\n", " \n", " \n", - " 2021-11-26\n", - " 6704.0\n", - " 6880.52\n", - " 6680\n", - " 946540\n", - " 6704\n", - " 6824\n", - " 6850\n", - " 6433414329.78602\n", - " 6796.76963\n", - " 6837\n", - " ...\n", - " 230979\n", - " 5822\n", - " 6704\n", - " 6850\n", + " 2022-12-12 13:25:00\n", + " 7563.0\n", + " 7556.0\n", + " 7560.0\n", + " 7563.0\n", + " 33\n", + " 1198\n", + " <NA>\n", " <NA>\n", " <NA>\n", - " 1084983\n", - " 9173\n", - " 8736\n", - " None\n", + " <NA>\n", + " ...\n", + " 625\n", + " 7566\n", + " 7556\n", + " 7564\n", + " 7564\n", + " 625\n", + " 7564\n", + " 7553\n", + " 7562\n", + " 7561\n", " \n", " \n", - " 2021-11-29\n", - " 6764.3\n", - " 6926.0\n", - " 6754\n", - " 1119681\n", - " 6890\n", - " 6870\n", - " 6872\n", - " 7678850720.20644\n", - " 6858.06992\n", - " 6871\n", - " ...\n", - " 340426\n", - " 4129\n", - " 6890\n", - " 6870\n", + " 2022-12-12 13:30:00\n", + " 7564.0\n", + " 7552.0\n", + " 7552.0\n", + " 7558.0\n", + " 21\n", + " 978\n", " <NA>\n", " <NA>\n", - " 1293553\n", - " 8653\n", - " 8291\n", - " None\n", + " <NA>\n", + " <NA>\n", + " ...\n", + " 431\n", + " 7568\n", + " 7552\n", + " 7564\n", + " 7560\n", + " 431\n", + " 7566\n", + " 7550\n", + " 7561\n", + " 7558\n", " \n", " \n", - " 2021-11-30\n", - " 6502.0\n", - " 6872.0\n", - " 6502\n", - " 2023297\n", - " 6870\n", - " 6502\n", - " 6512\n", - " 13234527793.25\n", - " 6541.07024\n", - " 6507\n", - " ...\n", - " 1560106\n", - " 9295\n", - " 6870\n", - " 6502\n", + " 2022-12-12 13:35:00\n", + " 7558.0\n", + " 7558.0\n", + " 7558.0\n", + " 7558.0\n", + " 2\n", + " 93\n", + " <NA>\n", + " <NA>\n", " <NA>\n", " <NA>\n", - " 2495199\n", - " 7992\n", - " 7365\n", - " None\n", + " ...\n", + " 173\n", + " 7560\n", + " 7558\n", + " 7560\n", + " 7560\n", + " 173\n", + " 7558\n", + " 7555\n", + " 7558\n", + " 7558\n", " \n", " \n", - " 2021-12-01\n", - " 6752.0\n", - " 6786.0\n", - " 6532\n", - " 1235156\n", - " 6532\n", - " 6752\n", - " 6754\n", - " 8239716493.48\n", - " 6670.9932\n", - " 6753\n", - " ...\n", - " 379918\n", - " 9828\n", - " 6532\n", - " 6752\n", + " 2022-12-12 13:40:00\n", + " 7580.0\n", + " 7560.0\n", + " 7560.0\n", + " 7580.0\n", + " 40\n", + " 1698\n", + " <NA>\n", " <NA>\n", " <NA>\n", - " 1416407\n", - " 9035\n", - " 8404\n", - " None\n", + " <NA>\n", + " ...\n", + " 503\n", + " 7574\n", + " 7560\n", + " 7560\n", + " 7568\n", + " 503\n", + " 7571\n", + " 7558\n", + " 7558\n", + " 7566\n", " \n", " \n", - " 2021-12-02\n", - " 6610.0\n", - " 6704.0\n", - " 6570\n", - " 891113\n", - " 6690\n", - " 6580\n", - " 6582\n", - " 5898413269.72876\n", - " 6619.1528\n", - " 6581\n", - " ...\n", - " 300346\n", - " 7654\n", - " 6690\n", - " 6582\n", + " 2022-12-12 13:45:00\n", + " 7571.631\n", + " 7562.753\n", + " 7566.0\n", + " 7568.0\n", + " 18\n", + " 1145\n", " <NA>\n", " <NA>\n", - " 951239\n", - " 9792\n", - " 9438\n", - " None\n", + " <NA>\n", + " <NA>\n", + " ...\n", + " 491\n", + " 7574\n", + " 7566\n", + " 7568\n", + " 7566\n", + " 491\n", + " 7571\n", + " 7564\n", + " 7565\n", + " 7565\n", " \n", " \n", - " 2021-12-03\n", - " 6527.9473\n", - " 6690.0\n", - " 6506\n", - " 708073\n", - " 6640\n", - " 6522\n", - " 6524\n", - " 4650062824.8002\n", - " 6567.20803\n", - " 6523\n", - " ...\n", - " 206125\n", - " 7416\n", - " 6640\n", - " 6524\n", + " 2022-12-12 13:50:00\n", + " 7564.0\n", + " 7556.0\n", + " 7564.0\n", + " 7560.0\n", + " 41\n", + " 1228\n", + " <NA>\n", + " <NA>\n", " <NA>\n", " <NA>\n", - " 730958\n", - " 5470\n", - " 5113\n", - " None\n", + " ...\n", + " 592\n", + " 7566\n", + " 7558\n", + " 7566\n", + " 7560\n", + " 592\n", + " 7565\n", + " 7555\n", + " 7565\n", + " 7559\n", " \n", " \n", - " 2021-12-06\n", - " 6590.0\n", - " 6636.0\n", - " 6522\n", - " 383706\n", - " 6556\n", - " 6586\n", - " 6590\n", - " 2529928546.25\n", - " 6593.40366\n", - " 6588\n", - " ...\n", - " 135949\n", - " 1630\n", - " 6556\n", - " 6590\n", + " 2022-12-12 13:55:00\n", + " 7570.0\n", + " 7558.0\n", + " 7560.0\n", + " 7560.0\n", + " 57\n", + " 2249\n", " <NA>\n", " <NA>\n", - " 396725\n", - " 4615\n", - " 4359\n", - " None\n", + " <NA>\n", + " <NA>\n", + " ...\n", + " 560\n", + " 7572\n", + " 7558\n", + " 7560\n", + " 7564\n", + " 560\n", + " 7570\n", + " 7556\n", + " 7559\n", + " 7562\n", " \n", " \n", - " 2021-12-07\n", - " 6708.0\n", - " 6732.0\n", - " 6636\n", - " 798893\n", - " 6652\n", - " 6712\n", - " 6714\n", - " 5344809963.42\n", - " 6690.2698\n", - " 6713\n", - " ...\n", - " 227969\n", - " 11624\n", - " 6652\n", - " 6712\n", + " 2022-12-12 14:00:00\n", + " 7564.0\n", + " 7554.0\n", + " 7560.0\n", + " 7554.0\n", + " 79\n", + " 3625\n", " <NA>\n", " <NA>\n", - " 814156\n", - " 5139\n", - " 4855\n", - " None\n", + " <NA>\n", + " <NA>\n", + " ...\n", + " 1045\n", + " 7566\n", + " 7554\n", + " 7564\n", + " 7556\n", + " 1045\n", + " 7564\n", + " 7552\n", + " 7562\n", + " 7554\n", " \n", " \n", - " 2021-12-08\n", - " 6758.0\n", - " 6858.0\n", - " 6726\n", - " 932773\n", - " 6764\n", - " 6754\n", - " 6758\n", - " 6315136777.6166\n", - " 6770.28256\n", - " 6756\n", - " ...\n", - " 236695\n", - " 12198\n", - " 6764\n", - " 6758\n", + " 2022-12-12 14:05:00\n", + " 7556.0\n", + " 7536.0\n", + " 7556.0\n", + " 7540.0\n", + " 67\n", + " 2908\n", + " <NA>\n", + " <NA>\n", " <NA>\n", " <NA>\n", - " 974768\n", - " 6431\n", - " 6020\n", - " None\n", + " ...\n", + " 877\n", + " 7560\n", + " 7538\n", + " 7558\n", + " 7542\n", + " 877\n", + " 7557\n", + " 7536\n", + " 7555\n", + " 7540\n", " \n", " \n", - " 2021-12-09\n", - " 6794.0\n", - " 6818.0\n", - " 6632\n", - " 924176\n", - " 6794\n", - " 6640\n", - " 6642\n", - " 6182064712.96218\n", - " 6689.2718\n", - " 6641\n", - " ...\n", - " 261876\n", - " 7431\n", - " 6794\n", - " 6642\n", + " 2022-12-12 14:10:00\n", + " 7556.0\n", + " 7542.0\n", + " 7542.0\n", + " 7552.0\n", + " 41\n", + " 2893\n", + " <NA>\n", " <NA>\n", " <NA>\n", - " 1007129\n", - " 5293\n", - " 4975\n", - " None\n", + " <NA>\n", + " ...\n", + " 555\n", + " 7558\n", + " 7542\n", + " 7542\n", + " 7556\n", + " 555\n", + " 7557\n", + " 7540\n", + " 7540\n", + " 7554\n", " \n", " \n", - " 2021-12-10\n", - " 6742.0\n", - " 6750.0\n", - " 6622\n", - " 357852\n", - " 6640\n", - " 6740\n", - " 6742\n", - " 2405696489.967\n", - " 6722.60177\n", - " 6741\n", - " ...\n", - " 163569\n", - " 6822\n", - " 6640\n", - " 6742\n", + " 2022-12-12 14:15:00\n", + " 7552.996\n", + " 7548.0\n", + " 7552.0\n", + " 7552.0\n", + " 30\n", + " 2599\n", " <NA>\n", " <NA>\n", - " 424150\n", - " 3787\n", - " 3495\n", - " None\n", + " <NA>\n", + " <NA>\n", + " ...\n", + " 396\n", + " 7556\n", + " 7550\n", + " 7556\n", + " 7554\n", + " 396\n", + " 7554\n", + " 7548\n", + " 7554\n", + " 7552\n", " \n", " \n", - " 2021-12-13\n", - " 6700.0\n", - " 6723.8\n", - " 6598\n", - " 1522242\n", - " 6700\n", - " 6676\n", - " 6686\n", - " 10189932120.15\n", - " 6694.02902\n", - " 6681\n", - " ...\n", - " 213392\n", - " 7457\n", - " 6700\n", - " 6686\n", + " 2022-12-12 14:20:00\n", + " 7558.0\n", + " 7548.0\n", + " 7554.0\n", + " 7550.0\n", + " 67\n", + " 2881\n", + " <NA>\n", + " <NA>\n", " <NA>\n", " <NA>\n", - " 1564658\n", - " 4548\n", - " 4270\n", - " None\n", + " ...\n", + " 690\n", + " 7562\n", + " 7550\n", + " 7554\n", + " 7552\n", + " 690\n", + " 7559\n", + " 7549\n", + " 7552\n", + " 7550\n", " \n", " \n", - " 2021-12-14\n", - " 6802.0\n", - " 6836.0\n", - " 6686\n", - " 635812\n", - " 6710\n", - " 6768\n", - " 6770\n", - " 4314747007.2712\n", - " 6786.19939\n", - " 6769\n", - " ...\n", - " 311439\n", - " 4350\n", - " 6710\n", - " 6770\n", + " 2022-12-12 14:25:00\n", + " 7554.0\n", + " 7544.0\n", + " 7550.0\n", + " 7544.0\n", + " 21\n", + " 1225\n", + " <NA>\n", " <NA>\n", " <NA>\n", - " 694552\n", - " 6191\n", - " 5666\n", - " None\n", + " <NA>\n", + " ...\n", + " 413\n", + " 7556\n", + " 7548\n", + " 7552\n", + " 7548\n", + " 413\n", + " 7554\n", + " 7545\n", + " 7550\n", + " 7546\n", " \n", " \n", - " 2021-12-15\n", - " 6750.0\n", - " 6820.0\n", - " 6674\n", - " 665560\n", - " 6750\n", - " 6740\n", - " 6742\n", - " 4495235717.6934\n", - " 6754.06532\n", - " 6741\n", - " ...\n", - " 253956\n", - " 5951\n", - " 6750\n", - " 6740\n", + " 2022-12-12 14:30:00\n", + " 7566.0\n", + " 7546.0\n", + " 7546.0\n", + " 7560.0\n", + " 107\n", + " 5220\n", " <NA>\n", " <NA>\n", - " 754432\n", - " 6753\n", - " 6438\n", - " None\n", + " <NA>\n", + " <NA>\n", + " ...\n", + " 877\n", + " 7566\n", + " 7548\n", + " 7548\n", + " 7564\n", + " 877\n", + " 7564\n", + " 7546\n", + " 7546\n", + " 7561\n", " \n", " \n", "\n", - "

20 rows × 31 columns

\n", + "

20 rows × 24 columns

\n", "" ], "text/plain": [ - "LSEG.L TRDPRC_1 MKT_HIGH MKT_LOW ACVOL_UNS MKT_OPEN BID ASK \\\n", - "Date \n", - "2021-11-18 6728.7024 6839.7811 6680 697709 6700 6680 6684 \n", - "2021-11-19 6680.0 6790.0 6636 1227919 6680 6702 6704 \n", - "2021-11-22 6684.0 6856.0 6684 625896 6736 6684 6686 \n", - "2021-11-23 6734.0 6766.0 6600 642256 6668 6734 6736 \n", - "2021-11-24 6824.0 6832.0 6552 1809481 6780 6810 6812 \n", - "2021-11-25 6822.0 6872.0 6738 982614 6822 6824 6826 \n", - "2021-11-26 6704.0 6880.52 6680 946540 6704 6824 6850 \n", - "2021-11-29 6764.3 6926.0 6754 1119681 6890 6870 6872 \n", - "2021-11-30 6502.0 6872.0 6502 2023297 6870 6502 6512 \n", - "2021-12-01 6752.0 6786.0 6532 1235156 6532 6752 6754 \n", - "2021-12-02 6610.0 6704.0 6570 891113 6690 6580 6582 \n", - "2021-12-03 6527.9473 6690.0 6506 708073 6640 6522 6524 \n", - "2021-12-06 6590.0 6636.0 6522 383706 6556 6586 6590 \n", - "2021-12-07 6708.0 6732.0 6636 798893 6652 6712 6714 \n", - "2021-12-08 6758.0 6858.0 6726 932773 6764 6754 6758 \n", - "2021-12-09 6794.0 6818.0 6632 924176 6794 6640 6642 \n", - "2021-12-10 6742.0 6750.0 6622 357852 6640 6740 6742 \n", - "2021-12-13 6700.0 6723.8 6598 1522242 6700 6676 6686 \n", - "2021-12-14 6802.0 6836.0 6686 635812 6710 6768 6770 \n", - "2021-12-15 6750.0 6820.0 6674 665560 6750 6740 6742 \n", + "LSEG.L HIGH_1 LOW_1 OPEN_PRC TRDPRC_1 NUM_MOVES \\\n", + "Timestamp \n", + "2022-12-12 12:55:00 7563.8 7560.502 7563.5293 7563.8 5 \n", + "2022-12-12 13:00:00 7588.0 7562.0 7562.0 7588.0 64 \n", + "2022-12-12 13:05:00 7602.0 7588.0 7590.494 7600.0 92 \n", + "2022-12-12 13:10:00 7596.0 7572.0 7596.0 7584.0 94 \n", + "2022-12-12 13:15:00 7588.0302 7582.0 7584.998 7582.0 24 \n", + "2022-12-12 13:20:00 7580.0 7560.0 7580.0 7560.0 12 \n", + "2022-12-12 13:25:00 7563.0 7556.0 7560.0 7563.0 33 \n", + "2022-12-12 13:30:00 7564.0 7552.0 7552.0 7558.0 21 \n", + "2022-12-12 13:35:00 7558.0 7558.0 7558.0 7558.0 2 \n", + "2022-12-12 13:40:00 7580.0 7560.0 7560.0 7580.0 40 \n", + "2022-12-12 13:45:00 7571.631 7562.753 7566.0 7568.0 18 \n", + "2022-12-12 13:50:00 7564.0 7556.0 7564.0 7560.0 41 \n", + "2022-12-12 13:55:00 7570.0 7558.0 7560.0 7560.0 57 \n", + "2022-12-12 14:00:00 7564.0 7554.0 7560.0 7554.0 79 \n", + "2022-12-12 14:05:00 7556.0 7536.0 7556.0 7540.0 67 \n", + "2022-12-12 14:10:00 7556.0 7542.0 7542.0 7552.0 41 \n", + "2022-12-12 14:15:00 7552.996 7548.0 7552.0 7552.0 30 \n", + "2022-12-12 14:20:00 7558.0 7548.0 7554.0 7550.0 67 \n", + "2022-12-12 14:25:00 7554.0 7544.0 7550.0 7544.0 21 \n", + "2022-12-12 14:30:00 7566.0 7546.0 7546.0 7560.0 107 \n", "\n", - "LSEG.L TRNOVR_UNS VWAP MID_PRICE ... CLS_AUCVOL \\\n", - "Date ... \n", - "2021-11-18 4694048229.6 6727.80232 6682 ... 235971 \n", - "2021-11-19 8217046746.09 6691.84744 6703 ... 418259 \n", - "2021-11-22 4217182628.2061 6737.83285 6685 ... 242263 \n", - "2021-11-23 4303886557.0328 6701.20101 6735 ... 242516 \n", - "2021-11-24 12229515457.057541 6758.57626 6811 ... 276206 \n", - "2021-11-25 6702808788.36 6821.40575 6825 ... 198533 \n", - "2021-11-26 6433414329.78602 6796.76963 6837 ... 230979 \n", - "2021-11-29 7678850720.20644 6858.06992 6871 ... 340426 \n", - "2021-11-30 13234527793.25 6541.07024 6507 ... 1560106 \n", - "2021-12-01 8239716493.48 6670.9932 6753 ... 379918 \n", - "2021-12-02 5898413269.72876 6619.1528 6581 ... 300346 \n", - "2021-12-03 4650062824.8002 6567.20803 6523 ... 206125 \n", - "2021-12-06 2529928546.25 6593.40366 6588 ... 135949 \n", - "2021-12-07 5344809963.42 6690.2698 6713 ... 227969 \n", - "2021-12-08 6315136777.6166 6770.28256 6756 ... 236695 \n", - "2021-12-09 6182064712.96218 6689.2718 6641 ... 261876 \n", - "2021-12-10 2405696489.967 6722.60177 6741 ... 163569 \n", - "2021-12-13 10189932120.15 6694.02902 6681 ... 213392 \n", - "2021-12-14 4314747007.2712 6786.19939 6769 ... 311439 \n", - "2021-12-15 4495235717.6934 6754.06532 6741 ... 253956 \n", + "LSEG.L ACVOL_UNS HIGH_YLD LOW_YLD OPEN_YLD YIELD ... \\\n", + "Timestamp ... \n", + "2022-12-12 12:55:00 410 ... \n", + "2022-12-12 13:00:00 2644 ... \n", + "2022-12-12 13:05:00 4359 ... \n", + "2022-12-12 13:10:00 4693 ... \n", + "2022-12-12 13:15:00 1257 ... \n", + "2022-12-12 13:20:00 322 ... \n", + "2022-12-12 13:25:00 1198 ... \n", + "2022-12-12 13:30:00 978 ... \n", + "2022-12-12 13:35:00 93 ... \n", + "2022-12-12 13:40:00 1698 ... \n", + "2022-12-12 13:45:00 1145 ... \n", + "2022-12-12 13:50:00 1228 ... \n", + "2022-12-12 13:55:00 2249 ... \n", + "2022-12-12 14:00:00 3625 ... \n", + "2022-12-12 14:05:00 2908 ... \n", + "2022-12-12 14:10:00 2893 ... \n", + "2022-12-12 14:15:00 2599 ... \n", + "2022-12-12 14:20:00 2881 ... \n", + "2022-12-12 14:25:00 1225 ... \n", + "2022-12-12 14:30:00 5220 ... \n", "\n", - "LSEG.L OPN_AUCVOL OPN_AUC CLS_AUC INT_AUC INT_AUCVOL EX_VOL_UNS \\\n", - "Date \n", - "2021-11-18 18712 6700 6680 725223 \n", - "2021-11-19 13540 6680 6704 6726 20380 1282403 \n", - "2021-11-22 13647 6736 6684 688369 \n", - "2021-11-23 3217 6668 6734 694941 \n", - "2021-11-24 9045 6780 6810 1943949 \n", - "2021-11-25 2155 6822 6824 1141701 \n", - "2021-11-26 5822 6704 6850 1084983 \n", - "2021-11-29 4129 6890 6870 1293553 \n", - "2021-11-30 9295 6870 6502 2495199 \n", - "2021-12-01 9828 6532 6752 1416407 \n", - "2021-12-02 7654 6690 6582 951239 \n", - "2021-12-03 7416 6640 6524 730958 \n", - "2021-12-06 1630 6556 6590 396725 \n", - "2021-12-07 11624 6652 6712 814156 \n", - "2021-12-08 12198 6764 6758 974768 \n", - "2021-12-09 7431 6794 6642 1007129 \n", - "2021-12-10 6822 6640 6742 424150 \n", - "2021-12-13 7457 6700 6686 1564658 \n", - "2021-12-14 4350 6710 6770 694552 \n", - "2021-12-15 5951 6750 6740 754432 \n", + "LSEG.L BID_NUMMOV ASK_HIGH_1 ASK_LOW_1 OPEN_ASK ASK \\\n", + "Timestamp \n", + "2022-12-12 12:55:00 178 7564 7562 7564 7564 \n", + "2022-12-12 13:00:00 738 7592 7562 7564 7592 \n", + "2022-12-12 13:05:00 957 7604 7588 7592 7600 \n", + "2022-12-12 13:10:00 897 7600 7574 7600 7586 \n", + "2022-12-12 13:15:00 224 7592 7582 7586 7584 \n", + "2022-12-12 13:20:00 424 7584 7562 7584 7564 \n", + "2022-12-12 13:25:00 625 7566 7556 7564 7564 \n", + "2022-12-12 13:30:00 431 7568 7552 7564 7560 \n", + "2022-12-12 13:35:00 173 7560 7558 7560 7560 \n", + "2022-12-12 13:40:00 503 7574 7560 7560 7568 \n", + "2022-12-12 13:45:00 491 7574 7566 7568 7566 \n", + "2022-12-12 13:50:00 592 7566 7558 7566 7560 \n", + "2022-12-12 13:55:00 560 7572 7558 7560 7564 \n", + "2022-12-12 14:00:00 1045 7566 7554 7564 7556 \n", + "2022-12-12 14:05:00 877 7560 7538 7558 7542 \n", + "2022-12-12 14:10:00 555 7558 7542 7542 7556 \n", + "2022-12-12 14:15:00 396 7556 7550 7556 7554 \n", + "2022-12-12 14:20:00 690 7562 7550 7554 7552 \n", + "2022-12-12 14:25:00 413 7556 7548 7552 7548 \n", + "2022-12-12 14:30:00 877 7566 7548 7548 7564 \n", "\n", - "LSEG.L ALL_C_MOVE ELG_NUMMOV NAVALUE \n", - "Date \n", - "2021-11-18 6648 5982 None \n", - "2021-11-19 6832 6323 None \n", - "2021-11-22 6840 6363 None \n", - "2021-11-23 7210 6752 None \n", - "2021-11-24 10446 9849 None \n", - "2021-11-25 5848 5560 None \n", - "2021-11-26 9173 8736 None \n", - "2021-11-29 8653 8291 None \n", - "2021-11-30 7992 7365 None \n", - "2021-12-01 9035 8404 None \n", - "2021-12-02 9792 9438 None \n", - "2021-12-03 5470 5113 None \n", - "2021-12-06 4615 4359 None \n", - "2021-12-07 5139 4855 None \n", - "2021-12-08 6431 6020 None \n", - "2021-12-09 5293 4975 None \n", - "2021-12-10 3787 3495 None \n", - "2021-12-13 4548 4270 None \n", - "2021-12-14 6191 5666 None \n", - "2021-12-15 6753 6438 None \n", + "LSEG.L ASK_NUMMOV MID_HIGH MID_LOW MID_OPEN MID_PRICE \n", + "Timestamp \n", + "2022-12-12 12:55:00 178 7563 7560 7562 7562 \n", + "2022-12-12 13:00:00 738 7590 7560 7563 7589 \n", + "2022-12-12 13:05:00 957 7602 7586 7589 7598 \n", + "2022-12-12 13:10:00 897 7598 7572 7598 7584 \n", + "2022-12-12 13:15:00 224 7589 7581 7584 7582 \n", + "2022-12-12 13:20:00 424 7582 7560 7582 7562 \n", + "2022-12-12 13:25:00 625 7564 7553 7562 7561 \n", + "2022-12-12 13:30:00 431 7566 7550 7561 7558 \n", + "2022-12-12 13:35:00 173 7558 7555 7558 7558 \n", + "2022-12-12 13:40:00 503 7571 7558 7558 7566 \n", + "2022-12-12 13:45:00 491 7571 7564 7565 7565 \n", + "2022-12-12 13:50:00 592 7565 7555 7565 7559 \n", + "2022-12-12 13:55:00 560 7570 7556 7559 7562 \n", + "2022-12-12 14:00:00 1045 7564 7552 7562 7554 \n", + "2022-12-12 14:05:00 877 7557 7536 7555 7540 \n", + "2022-12-12 14:10:00 555 7557 7540 7540 7554 \n", + "2022-12-12 14:15:00 396 7554 7548 7554 7552 \n", + "2022-12-12 14:20:00 690 7559 7549 7552 7550 \n", + "2022-12-12 14:25:00 413 7554 7545 7550 7546 \n", + "2022-12-12 14:30:00 877 7564 7546 7546 7561 \n", "\n", - "[20 rows x 31 columns]" + "[20 rows x 24 columns]" ] }, "metadata": {}, @@ -1488,7 +1489,7 @@ { "data": { "text/plain": [ - "'LSEG.L Historical Events response received at 14:04:01.139842'" + "\"['LSEG.L Historical Events'] response received at 15:31:36.854439\"" ] }, "metadata": {}, @@ -1564,484 +1565,484 @@ " \n", " \n", " \n", - " 2021-12-16 13:03:18.316\n", + " 2022-12-12 14:31:31.736\n", " quote\n", - " 33408\n", - " 2862845\n", - " None\n", - " None\n", - " None\n", - " None\n", - " 6828\n", - " 83\n", - " 6832\n", + " 47104\n", + " 4078705\n", + " <NA>\n", + " <NA>\n", + " <NA>\n", + " <NA>\n", + " 7558\n", + " 198\n", + " 7564\n", " ...\n", - " None\n", - " None\n", - " None\n", - " None\n", - " None\n", - " None\n", - " 6830\n", - " None\n", - " None\n", + " <NA>\n", + " <NA>\n", + " <NA>\n", + " <NA>\n", + " <NA>\n", + " <NA>\n", + " 7561\n", + " <NA>\n", + " <NA>\n", " [ASK_TONE]\n", " \n", " \n", - " 2021-12-16 13:03:18.316\n", + " 2022-12-12 14:31:31.736\n", " quote\n", - " 33424\n", - " 2862846\n", - " None\n", - " None\n", - " None\n", - " None\n", - " 6828\n", - " 83\n", - " 6832\n", + " 47136\n", + " 4078708\n", + " <NA>\n", + " <NA>\n", + " <NA>\n", + " <NA>\n", + " 7558\n", + " 323\n", + " 7564\n", " ...\n", - " None\n", - " None\n", - " None\n", - " None\n", - " None\n", - " None\n", - " 6830\n", - " None\n", - " None\n", - " [ASK_TONE]\n", + " <NA>\n", + " <NA>\n", + " <NA>\n", + " <NA>\n", + " <NA>\n", + " <NA>\n", + " 7561\n", + " <NA>\n", + " <NA>\n", + " [BID_TONE]\n", " \n", " \n", - " 2021-12-16 13:03:18.317\n", + " 2022-12-12 14:31:31.736\n", " quote\n", - " 33440\n", - " 2862859\n", - " None\n", - " None\n", - " None\n", - " None\n", - " 6828\n", - " 83\n", - " 6832\n", + " 47152\n", + " 4078709\n", + " <NA>\n", + " <NA>\n", + " <NA>\n", + " <NA>\n", + " 7558\n", + " 323\n", + " 7564\n", " ...\n", - " None\n", - " None\n", - " None\n", - " None\n", - " None\n", - " None\n", - " 6830\n", - " None\n", - " None\n", + " <NA>\n", + " <NA>\n", + " <NA>\n", + " <NA>\n", + " <NA>\n", + " <NA>\n", + " 7561\n", + " <NA>\n", + " <NA>\n", " [ASK_TONE]\n", " \n", " \n", - " 2021-12-16 13:03:18.317\n", + " 2022-12-12 14:31:31.736\n", " quote\n", - " 33456\n", - " 2862860\n", - " None\n", - " None\n", - " None\n", - " None\n", - " 6828\n", - " 126\n", - " 6832\n", + " 47168\n", + " 4078710\n", + " <NA>\n", + " <NA>\n", + " <NA>\n", + " <NA>\n", + " 7558\n", + " 323\n", + " 7564\n", " ...\n", - " None\n", - " None\n", - " None\n", - " None\n", - " None\n", - " None\n", - " 6830\n", - " None\n", - " None\n", - " [BID_TONE]\n", + " <NA>\n", + " <NA>\n", + " <NA>\n", + " <NA>\n", + " <NA>\n", + " <NA>\n", + " 7561\n", + " <NA>\n", + " <NA>\n", + " [ASK_TONE]\n", " \n", " \n", - " 2021-12-16 13:03:19.532\n", + " 2022-12-12 14:31:31.736\n", " quote\n", - " 33472\n", - " 2863055\n", - " None\n", - " None\n", - " None\n", - " None\n", - " 6828\n", - " 126\n", - " 6832\n", + " 47120\n", + " 4078707\n", + " <NA>\n", + " <NA>\n", + " <NA>\n", + " <NA>\n", + " 7558\n", + " 290\n", + " 7564\n", " ...\n", - " None\n", - " None\n", - " None\n", - " None\n", - " None\n", - " None\n", - " 6830\n", - " None\n", - " None\n", - " [ASK_TONE]\n", + " <NA>\n", + " <NA>\n", + " <NA>\n", + " <NA>\n", + " <NA>\n", + " <NA>\n", + " 7561\n", + " <NA>\n", + " <NA>\n", + " [BID_TONE]\n", " \n", " \n", - " 2021-12-16 13:03:19.613\n", + " 2022-12-12 14:31:31.737\n", " quote\n", - " 33488\n", - " 2863057\n", - " None\n", - " None\n", - " None\n", - " None\n", - " 6828\n", - " 126\n", - " 6830\n", + " 47184\n", + " 4078712\n", + " <NA>\n", + " <NA>\n", + " <NA>\n", + " <NA>\n", + " 7558\n", + " 323\n", + " 7564\n", " ...\n", - " None\n", - " None\n", - " None\n", - " None\n", - " None\n", - " None\n", - " 6829\n", - " None\n", - " None\n", + " <NA>\n", + " <NA>\n", + " <NA>\n", + " <NA>\n", + " <NA>\n", + " <NA>\n", + " 7561\n", + " <NA>\n", + " <NA>\n", " [ASK_TONE]\n", " \n", " \n", - " 2021-12-16 13:03:19.903\n", + " 2022-12-12 14:31:31.737\n", " quote\n", - " 33504\n", - " 2863103\n", - " None\n", - " None\n", - " None\n", - " None\n", - " 6828\n", - " 126\n", - " 6830\n", + " 47200\n", + " 4078713\n", + " <NA>\n", + " <NA>\n", + " <NA>\n", + " <NA>\n", + " 7558\n", + " 323\n", + " 7564\n", " ...\n", - " None\n", - " None\n", - " None\n", - " None\n", - " None\n", - " None\n", - " 6829\n", - " None\n", - " None\n", + " <NA>\n", + " <NA>\n", + " <NA>\n", + " <NA>\n", + " <NA>\n", + " <NA>\n", + " 7561\n", + " <NA>\n", + " <NA>\n", " [ASK_TONE]\n", " \n", " \n", - " 2021-12-16 13:03:19.903\n", + " 2022-12-12 14:31:31.737\n", " quote\n", - " 33520\n", - " 2863104\n", - " None\n", - " None\n", - " None\n", - " None\n", - " 6828\n", - " 76\n", - " 6830\n", + " 47216\n", + " 4078714\n", + " <NA>\n", + " <NA>\n", + " <NA>\n", + " <NA>\n", + " 7558\n", + " 449\n", + " 7564\n", " ...\n", - " None\n", - " None\n", - " None\n", - " None\n", - " None\n", - " None\n", - " 6829\n", - " None\n", - " None\n", + " <NA>\n", + " <NA>\n", + " <NA>\n", + " <NA>\n", + " <NA>\n", + " <NA>\n", + " 7561\n", + " <NA>\n", + " <NA>\n", " [BID_TONE]\n", " \n", " \n", - " 2021-12-16 13:03:19.903\n", + " 2022-12-12 14:31:31.745\n", " quote\n", - " 33536\n", - " 2863105\n", - " None\n", - " None\n", - " None\n", - " None\n", - " 6828\n", - " 43\n", - " 6830\n", + " 47232\n", + " 4078717\n", + " <NA>\n", + " <NA>\n", + " <NA>\n", + " <NA>\n", + " 7558\n", + " 416\n", + " 7564\n", " ...\n", - " None\n", - " None\n", - " None\n", - " None\n", - " None\n", - " None\n", - " 6829\n", - " None\n", - " None\n", + " <NA>\n", + " <NA>\n", + " <NA>\n", + " <NA>\n", + " <NA>\n", + " <NA>\n", + " 7561\n", + " <NA>\n", + " <NA>\n", " [BID_TONE]\n", " \n", " \n", - " 2021-12-16 13:03:19.903\n", + " 2022-12-12 14:31:31.745\n", " quote\n", - " 33552\n", - " 2863106\n", - " None\n", - " None\n", - " None\n", - " None\n", - " 6828\n", - " 43\n", - " 6830\n", + " 47248\n", + " 4078718\n", + " <NA>\n", + " <NA>\n", + " <NA>\n", + " <NA>\n", + " 7558\n", + " 416\n", + " 7564\n", " ...\n", - " None\n", - " None\n", - " None\n", - " None\n", - " None\n", - " None\n", - " 6829\n", - " None\n", - " None\n", + " <NA>\n", + " <NA>\n", + " <NA>\n", + " <NA>\n", + " <NA>\n", + " <NA>\n", + " 7561\n", + " <NA>\n", + " <NA>\n", " [ASK_TONE]\n", " \n", " \n", - " 2021-12-16 13:03:23.786\n", + " 2022-12-12 14:31:31.746\n", " quote\n", - " 33568\n", - " 2863735\n", - " None\n", - " None\n", - " None\n", - " None\n", - " 6828\n", - " 43\n", - " 6830\n", + " 47264\n", + " 4078719\n", + " <NA>\n", + " <NA>\n", + " <NA>\n", + " <NA>\n", + " 7558\n", + " 416\n", + " 7564\n", " ...\n", - " None\n", - " None\n", - " None\n", - " None\n", - " None\n", - " None\n", - " 6829\n", - " None\n", - " None\n", + " <NA>\n", + " <NA>\n", + " <NA>\n", + " <NA>\n", + " <NA>\n", + " <NA>\n", + " 7561\n", + " <NA>\n", + " <NA>\n", " [ASK_TONE]\n", " \n", " \n", - " 2021-12-16 13:03:24.535\n", + " 2022-12-12 14:31:31.746\n", " quote\n", - " 33584\n", - " 2863907\n", - " None\n", - " None\n", - " None\n", - " None\n", - " 6828\n", - " 43\n", - " 6830\n", + " 47296\n", + " 4078721\n", + " <NA>\n", + " <NA>\n", + " <NA>\n", + " <NA>\n", + " 7558\n", + " 416\n", + " 7564\n", " ...\n", - " None\n", - " None\n", - " None\n", - " None\n", - " None\n", - " None\n", - " 6829\n", - " None\n", - " None\n", + " <NA>\n", + " <NA>\n", + " <NA>\n", + " <NA>\n", + " <NA>\n", + " <NA>\n", + " 7561\n", + " <NA>\n", + " <NA>\n", " [ASK_TONE]\n", " \n", " \n", - " 2021-12-16 13:03:26.329\n", + " 2022-12-12 14:31:31.746\n", " quote\n", - " 33600\n", - " 2864065\n", - " None\n", - " None\n", - " None\n", - " None\n", - " 6828\n", - " 43\n", - " 6830\n", + " 47280\n", + " 4078720\n", + " <NA>\n", + " <NA>\n", + " <NA>\n", + " <NA>\n", + " 7558\n", + " 416\n", + " 7564\n", " ...\n", - " None\n", - " None\n", - " None\n", - " None\n", - " None\n", - " None\n", - " 6829\n", - " None\n", - " None\n", + " <NA>\n", + " <NA>\n", + " <NA>\n", + " <NA>\n", + " <NA>\n", + " <NA>\n", + " 7561\n", + " <NA>\n", + " <NA>\n", " [ASK_TONE]\n", " \n", " \n", - " 2021-12-16 13:03:26.329\n", + " 2022-12-12 14:31:32.107\n", " quote\n", - " 33616\n", - " 2864066\n", - " None\n", - " None\n", - " None\n", - " None\n", - " 6826\n", - " 476\n", - " 6830\n", + " 47312\n", + " 4078783\n", + " <NA>\n", + " <NA>\n", + " <NA>\n", + " <NA>\n", + " 7558\n", + " 324\n", + " 7564\n", " ...\n", - " None\n", - " None\n", - " None\n", - " None\n", - " None\n", - " None\n", - " 6828\n", - " None\n", - " None\n", + " <NA>\n", + " <NA>\n", + " <NA>\n", + " <NA>\n", + " <NA>\n", + " <NA>\n", + " 7561\n", + " <NA>\n", + " <NA>\n", " [BID_TONE]\n", " \n", " \n", - " 2021-12-16 13:03:26.333\n", + " 2022-12-12 14:31:32.302\n", " quote\n", - " 33632\n", - " 2864067\n", - " None\n", - " None\n", - " None\n", - " None\n", - " 6826\n", - " 705\n", - " 6830\n", + " 47328\n", + " 4078866\n", + " <NA>\n", + " <NA>\n", + " <NA>\n", + " <NA>\n", + " 7558\n", + " 388\n", + " 7564\n", " ...\n", - " None\n", - " None\n", - " None\n", - " None\n", - " None\n", - " None\n", - " 6828\n", - " None\n", - " None\n", + " <NA>\n", + " <NA>\n", + " <NA>\n", + " <NA>\n", + " <NA>\n", + " <NA>\n", + " 7561\n", + " <NA>\n", + " <NA>\n", " [BID_TONE]\n", " \n", " \n", - " 2021-12-16 13:03:26.334\n", + " 2022-12-12 14:31:33.301\n", " quote\n", - " 33648\n", - " 2864068\n", - " None\n", - " None\n", - " None\n", - " None\n", - " 6828\n", - " 50\n", - " 6830\n", + " 47344\n", + " 4079011\n", + " <NA>\n", + " <NA>\n", + " <NA>\n", + " <NA>\n", + " 7558\n", + " 324\n", + " 7564\n", " ...\n", - " None\n", - " None\n", - " None\n", - " None\n", - " None\n", - " None\n", - " 6829\n", - " None\n", - " None\n", + " <NA>\n", + " <NA>\n", + " <NA>\n", + " <NA>\n", + " <NA>\n", + " <NA>\n", + " 7561\n", + " <NA>\n", + " <NA>\n", " [BID_TONE]\n", " \n", " \n", - " 2021-12-16 13:03:26.334\n", + " 2022-12-12 14:31:33.301\n", " quote\n", - " 33664\n", - " 2864069\n", - " None\n", - " None\n", - " None\n", - " None\n", - " 6828\n", - " 50\n", - " 6830\n", + " 47360\n", + " 4079012\n", + " <NA>\n", + " <NA>\n", + " <NA>\n", + " <NA>\n", + " 7558\n", + " 324\n", + " 7564\n", " ...\n", - " None\n", - " None\n", - " None\n", - " None\n", - " None\n", - " None\n", - " 6829\n", - " None\n", - " None\n", + " <NA>\n", + " <NA>\n", + " <NA>\n", + " <NA>\n", + " <NA>\n", + " <NA>\n", + " 7561\n", + " <NA>\n", + " <NA>\n", " [ASK_TONE]\n", " \n", " \n", - " 2021-12-16 13:03:26.334\n", + " 2022-12-12 14:31:33.801\n", " quote\n", - " 33680\n", - " 2864070\n", - " None\n", - " None\n", - " None\n", - " None\n", - " 6828\n", - " 83\n", - " 6830\n", + " 47376\n", + " 4079094\n", + " <NA>\n", + " <NA>\n", + " <NA>\n", + " <NA>\n", + " 7558\n", + " 389\n", + " 7564\n", " ...\n", - " None\n", - " None\n", - " None\n", - " None\n", - " None\n", - " None\n", - " 6829\n", - " None\n", - " None\n", + " <NA>\n", + " <NA>\n", + " <NA>\n", + " <NA>\n", + " <NA>\n", + " <NA>\n", + " 7561\n", + " <NA>\n", + " <NA>\n", " [BID_TONE]\n", " \n", " \n", - " 2021-12-16 13:03:36.787\n", + " 2022-12-12 14:31:34.402\n", " quote\n", - " 33696\n", - " 2865065\n", - " None\n", - " None\n", - " None\n", - " None\n", - " 6828\n", - " 83\n", - " 6830\n", + " 47392\n", + " 4079557\n", + " <NA>\n", + " <NA>\n", + " <NA>\n", + " <NA>\n", + " 7558\n", + " 389\n", + " 7564\n", " ...\n", - " None\n", - " None\n", - " None\n", - " None\n", - " None\n", - " None\n", - " 6829\n", - " None\n", - " None\n", + " <NA>\n", + " <NA>\n", + " <NA>\n", + " <NA>\n", + " <NA>\n", + " <NA>\n", + " 7561\n", + " <NA>\n", + " <NA>\n", " [ASK_TONE]\n", " \n", " \n", - " 2021-12-16 13:03:48.870\n", + " 2022-12-12 14:31:34.552\n", " quote\n", - " 33712\n", - " 2866309\n", - " None\n", - " None\n", - " None\n", - " None\n", - " 6828\n", - " 83\n", - " 6830\n", + " 47408\n", + " 4079625\n", + " <NA>\n", + " <NA>\n", + " <NA>\n", + " <NA>\n", + " 7558\n", + " 400\n", + " 7564\n", " ...\n", - " None\n", - " None\n", - " None\n", - " None\n", - " None\n", - " None\n", - " 6829\n", - " None\n", - " None\n", - " [ASK_TONE]\n", + " <NA>\n", + " <NA>\n", + " <NA>\n", + " <NA>\n", + " <NA>\n", + " <NA>\n", + " 7561\n", + " <NA>\n", + " <NA>\n", + " [BID_TONE]\n", " \n", " \n", "\n", @@ -2049,97 +2050,97 @@ "" ], "text/plain": [ - "LSEG.L EVENT_TYPE RTL SEQNUM TRDXID_1 TRDPRC_1 TRDVOL_1 \\\n", - "Timestamp \n", - "2021-12-16 13:03:18.316 quote 33408 2862845 None None None \n", - "2021-12-16 13:03:18.316 quote 33424 2862846 None None None \n", - "2021-12-16 13:03:18.317 quote 33440 2862859 None None None \n", - "2021-12-16 13:03:18.317 quote 33456 2862860 None None None \n", - "2021-12-16 13:03:19.532 quote 33472 2863055 None None None \n", - "2021-12-16 13:03:19.613 quote 33488 2863057 None None None \n", - "2021-12-16 13:03:19.903 quote 33504 2863103 None None None \n", - "2021-12-16 13:03:19.903 quote 33520 2863104 None None None \n", - "2021-12-16 13:03:19.903 quote 33536 2863105 None None None \n", - "2021-12-16 13:03:19.903 quote 33552 2863106 None None None \n", - "2021-12-16 13:03:23.786 quote 33568 2863735 None None None \n", - "2021-12-16 13:03:24.535 quote 33584 2863907 None None None \n", - "2021-12-16 13:03:26.329 quote 33600 2864065 None None None \n", - "2021-12-16 13:03:26.329 quote 33616 2864066 None None None \n", - "2021-12-16 13:03:26.333 quote 33632 2864067 None None None \n", - "2021-12-16 13:03:26.334 quote 33648 2864068 None None None \n", - "2021-12-16 13:03:26.334 quote 33664 2864069 None None None \n", - "2021-12-16 13:03:26.334 quote 33680 2864070 None None None \n", - "2021-12-16 13:03:36.787 quote 33696 2865065 None None None \n", - "2021-12-16 13:03:48.870 quote 33712 2866309 None None None \n", + "LSEG.L EVENT_TYPE RTL SEQNUM TRDXID_1 TRDPRC_1 \\\n", + "Timestamp \n", + "2022-12-12 14:31:31.736 quote 47104 4078705 \n", + "2022-12-12 14:31:31.736 quote 47136 4078708 \n", + "2022-12-12 14:31:31.736 quote 47152 4078709 \n", + "2022-12-12 14:31:31.736 quote 47168 4078710 \n", + "2022-12-12 14:31:31.736 quote 47120 4078707 \n", + "2022-12-12 14:31:31.737 quote 47184 4078712 \n", + "2022-12-12 14:31:31.737 quote 47200 4078713 \n", + "2022-12-12 14:31:31.737 quote 47216 4078714 \n", + "2022-12-12 14:31:31.745 quote 47232 4078717 \n", + "2022-12-12 14:31:31.745 quote 47248 4078718 \n", + "2022-12-12 14:31:31.746 quote 47264 4078719 \n", + "2022-12-12 14:31:31.746 quote 47296 4078721 \n", + "2022-12-12 14:31:31.746 quote 47280 4078720 \n", + "2022-12-12 14:31:32.107 quote 47312 4078783 \n", + "2022-12-12 14:31:32.302 quote 47328 4078866 \n", + "2022-12-12 14:31:33.301 quote 47344 4079011 \n", + "2022-12-12 14:31:33.301 quote 47360 4079012 \n", + "2022-12-12 14:31:33.801 quote 47376 4079094 \n", + "2022-12-12 14:31:34.402 quote 47392 4079557 \n", + "2022-12-12 14:31:34.552 quote 47408 4079625 \n", "\n", - "LSEG.L VWAP BID BIDSIZE ASK ... MMT_CLASS TR_TRD_FLG \\\n", - "Timestamp ... \n", - "2021-12-16 13:03:18.316 None 6828 83 6832 ... None None \n", - "2021-12-16 13:03:18.316 None 6828 83 6832 ... None None \n", - "2021-12-16 13:03:18.317 None 6828 83 6832 ... None None \n", - "2021-12-16 13:03:18.317 None 6828 126 6832 ... None None \n", - "2021-12-16 13:03:19.532 None 6828 126 6832 ... None None \n", - "2021-12-16 13:03:19.613 None 6828 126 6830 ... None None \n", - "2021-12-16 13:03:19.903 None 6828 126 6830 ... None None \n", - "2021-12-16 13:03:19.903 None 6828 76 6830 ... None None \n", - "2021-12-16 13:03:19.903 None 6828 43 6830 ... None None \n", - "2021-12-16 13:03:19.903 None 6828 43 6830 ... None None \n", - "2021-12-16 13:03:23.786 None 6828 43 6830 ... None None \n", - "2021-12-16 13:03:24.535 None 6828 43 6830 ... None None \n", - "2021-12-16 13:03:26.329 None 6828 43 6830 ... None None \n", - "2021-12-16 13:03:26.329 None 6826 476 6830 ... None None \n", - "2021-12-16 13:03:26.333 None 6826 705 6830 ... None None \n", - "2021-12-16 13:03:26.334 None 6828 50 6830 ... None None \n", - "2021-12-16 13:03:26.334 None 6828 50 6830 ... None None \n", - "2021-12-16 13:03:26.334 None 6828 83 6830 ... None None \n", - "2021-12-16 13:03:36.787 None 6828 83 6830 ... None None \n", - "2021-12-16 13:03:48.870 None 6828 83 6830 ... None None \n", + "LSEG.L TRDVOL_1 VWAP BID BIDSIZE ASK ... MMT_CLASS \\\n", + "Timestamp ... \n", + "2022-12-12 14:31:31.736 7558 198 7564 ... \n", + "2022-12-12 14:31:31.736 7558 323 7564 ... \n", + "2022-12-12 14:31:31.736 7558 323 7564 ... \n", + "2022-12-12 14:31:31.736 7558 323 7564 ... \n", + "2022-12-12 14:31:31.736 7558 290 7564 ... \n", + "2022-12-12 14:31:31.737 7558 323 7564 ... \n", + "2022-12-12 14:31:31.737 7558 323 7564 ... \n", + "2022-12-12 14:31:31.737 7558 449 7564 ... \n", + "2022-12-12 14:31:31.745 7558 416 7564 ... \n", + "2022-12-12 14:31:31.745 7558 416 7564 ... \n", + "2022-12-12 14:31:31.746 7558 416 7564 ... \n", + "2022-12-12 14:31:31.746 7558 416 7564 ... \n", + "2022-12-12 14:31:31.746 7558 416 7564 ... \n", + "2022-12-12 14:31:32.107 7558 324 7564 ... \n", + "2022-12-12 14:31:32.302 7558 388 7564 ... \n", + "2022-12-12 14:31:33.301 7558 324 7564 ... \n", + "2022-12-12 14:31:33.301 7558 324 7564 ... \n", + "2022-12-12 14:31:33.801 7558 389 7564 ... \n", + "2022-12-12 14:31:34.402 7558 389 7564 ... \n", + "2022-12-12 14:31:34.552 7558 400 7564 ... \n", "\n", - "LSEG.L ACVOL_UNS OPEN_PRC HIGH_1 LOW_1 MID_PRICE IMB_SH \\\n", - "Timestamp \n", - "2021-12-16 13:03:18.316 None None None None 6830 None \n", - "2021-12-16 13:03:18.316 None None None None 6830 None \n", - "2021-12-16 13:03:18.317 None None None None 6830 None \n", - "2021-12-16 13:03:18.317 None None None None 6830 None \n", - "2021-12-16 13:03:19.532 None None None None 6830 None \n", - "2021-12-16 13:03:19.613 None None None None 6829 None \n", - "2021-12-16 13:03:19.903 None None None None 6829 None \n", - "2021-12-16 13:03:19.903 None None None None 6829 None \n", - "2021-12-16 13:03:19.903 None None None None 6829 None \n", - "2021-12-16 13:03:19.903 None None None None 6829 None \n", - "2021-12-16 13:03:23.786 None None None None 6829 None \n", - "2021-12-16 13:03:24.535 None None None None 6829 None \n", - "2021-12-16 13:03:26.329 None None None None 6829 None \n", - "2021-12-16 13:03:26.329 None None None None 6828 None \n", - "2021-12-16 13:03:26.333 None None None None 6828 None \n", - "2021-12-16 13:03:26.334 None None None None 6829 None \n", - "2021-12-16 13:03:26.334 None None None None 6829 None \n", - "2021-12-16 13:03:26.334 None None None None 6829 None \n", - "2021-12-16 13:03:36.787 None None None None 6829 None \n", - "2021-12-16 13:03:48.870 None None None None 6829 None \n", + "LSEG.L TR_TRD_FLG ACVOL_UNS OPEN_PRC HIGH_1 LOW_1 \\\n", + "Timestamp \n", + "2022-12-12 14:31:31.736 \n", + "2022-12-12 14:31:31.736 \n", + "2022-12-12 14:31:31.736 \n", + "2022-12-12 14:31:31.736 \n", + "2022-12-12 14:31:31.736 \n", + "2022-12-12 14:31:31.737 \n", + "2022-12-12 14:31:31.737 \n", + "2022-12-12 14:31:31.737 \n", + "2022-12-12 14:31:31.745 \n", + "2022-12-12 14:31:31.745 \n", + "2022-12-12 14:31:31.746 \n", + "2022-12-12 14:31:31.746 \n", + "2022-12-12 14:31:31.746 \n", + "2022-12-12 14:31:32.107 \n", + "2022-12-12 14:31:32.302 \n", + "2022-12-12 14:31:33.301 \n", + "2022-12-12 14:31:33.301 \n", + "2022-12-12 14:31:33.801 \n", + "2022-12-12 14:31:34.402 \n", + "2022-12-12 14:31:34.552 \n", "\n", - "LSEG.L IMB_SIDE QUALIFIERS \n", - "Timestamp \n", - "2021-12-16 13:03:18.316 None [ASK_TONE] \n", - "2021-12-16 13:03:18.316 None [ASK_TONE] \n", - "2021-12-16 13:03:18.317 None [ASK_TONE] \n", - "2021-12-16 13:03:18.317 None [BID_TONE] \n", - "2021-12-16 13:03:19.532 None [ASK_TONE] \n", - "2021-12-16 13:03:19.613 None [ASK_TONE] \n", - "2021-12-16 13:03:19.903 None [ASK_TONE] \n", - "2021-12-16 13:03:19.903 None [BID_TONE] \n", - "2021-12-16 13:03:19.903 None [BID_TONE] \n", - "2021-12-16 13:03:19.903 None [ASK_TONE] \n", - "2021-12-16 13:03:23.786 None [ASK_TONE] \n", - "2021-12-16 13:03:24.535 None [ASK_TONE] \n", - "2021-12-16 13:03:26.329 None [ASK_TONE] \n", - "2021-12-16 13:03:26.329 None [BID_TONE] \n", - "2021-12-16 13:03:26.333 None [BID_TONE] \n", - "2021-12-16 13:03:26.334 None [BID_TONE] \n", - "2021-12-16 13:03:26.334 None [ASK_TONE] \n", - "2021-12-16 13:03:26.334 None [BID_TONE] \n", - "2021-12-16 13:03:36.787 None [ASK_TONE] \n", - "2021-12-16 13:03:48.870 None [ASK_TONE] \n", + "LSEG.L MID_PRICE IMB_SH IMB_SIDE QUALIFIERS \n", + "Timestamp \n", + "2022-12-12 14:31:31.736 7561 [ASK_TONE] \n", + "2022-12-12 14:31:31.736 7561 [BID_TONE] \n", + "2022-12-12 14:31:31.736 7561 [ASK_TONE] \n", + "2022-12-12 14:31:31.736 7561 [ASK_TONE] \n", + "2022-12-12 14:31:31.736 7561 [BID_TONE] \n", + "2022-12-12 14:31:31.737 7561 [ASK_TONE] \n", + "2022-12-12 14:31:31.737 7561 [ASK_TONE] \n", + "2022-12-12 14:31:31.737 7561 [BID_TONE] \n", + "2022-12-12 14:31:31.745 7561 [BID_TONE] \n", + "2022-12-12 14:31:31.745 7561 [ASK_TONE] \n", + "2022-12-12 14:31:31.746 7561 [ASK_TONE] \n", + "2022-12-12 14:31:31.746 7561 [ASK_TONE] \n", + "2022-12-12 14:31:31.746 7561 [ASK_TONE] \n", + "2022-12-12 14:31:32.107 7561 [BID_TONE] \n", + "2022-12-12 14:31:32.302 7561 [BID_TONE] \n", + "2022-12-12 14:31:33.301 7561 [BID_TONE] \n", + "2022-12-12 14:31:33.301 7561 [ASK_TONE] \n", + "2022-12-12 14:31:33.801 7561 [BID_TONE] \n", + "2022-12-12 14:31:34.402 7561 [ASK_TONE] \n", + "2022-12-12 14:31:34.552 7561 [BID_TONE] \n", "\n", "[20 rows x 31 columns]" ] @@ -2151,23 +2152,31 @@ "source": [ "asyncio.get_event_loop().create_task(\n", " historical_pricing.events.Definition(\n", - " universe = 'LSEG.L',\n", + " universe = 'LSEG.L'\n", + " ).get_data_async(\n", + " on_response = display_response, \n", " closure = 'LSEG.L Historical Events'\n", - " ).get_data_async(on_response = display_response)\n", + " )\n", ")\n", "\n", "asyncio.get_event_loop().create_task(\n", " historical_pricing.summaries.Definition(\n", - " universe = 'LSEG.L',\n", - " closure = 'LSEG.L Historical Summaries'\n", - " ).get_data_async(on_response = display_response)\n", + " universe = 'LSEG.L', \n", + " interval=Intervals.FIVE_MINUTES\n", + " ).get_data_async(\n", + " on_response = display_response,\n", + " closure = 'LSEG.L 5 minutes Historical Summaries'\n", + " )\n", ")\n", "\n", "asyncio.get_event_loop().create_task(\n", " historical_pricing.summaries.Definition(\n", " universe = 'LSEG.L',\n", - " closure = 'LSEG.L Historical Summaries'\n", - " ).get_data_async(on_response = display_response)\n", + " interval = Intervals.DAILY\n", + " ).get_data_async(\n", + " on_response = display_response,\n", + " closure = 'LSEG.L Daily Historical Summaries'\n", + " )\n", ")" ] }, @@ -2180,7 +2189,7 @@ }, { "cell_type": "code", - "execution_count": 60, + "execution_count": 5, "metadata": { "pycharm": { "name": "#%%\n" @@ -2201,7 +2210,7 @@ ], "metadata": { "kernelspec": { - "display_name": "Python 3", + "display_name": "Python 3 (ipykernel)", "language": "python", "name": "python3" }, @@ -2215,7 +2224,7 @@ "name": "python", "nbconvert_exporter": "python", "pygments_lexer": "ipython3", - "version": "3.7.6" + "version": "3.9.7" } }, "nbformat": 4, diff --git a/Examples/2-Content/2.01-HistoricalPricing/EX-2.01.04-HistoricalPricing-ErrorManagement.ipynb b/Examples/2-Content/2.01-HistoricalPricing/EX-2.01.04-HistoricalPricing-ErrorManagement.ipynb index 9f31187..c7b783b 100644 --- a/Examples/2-Content/2.01-HistoricalPricing/EX-2.01.04-HistoricalPricing-ErrorManagement.ipynb +++ b/Examples/2-Content/2.01-HistoricalPricing/EX-2.01.04-HistoricalPricing-ErrorManagement.ipynb @@ -17,7 +17,7 @@ "metadata": {}, "source": [ "## Content layer - Historical Pricing\n", - "This notebook demonstrates how to retrieve Historical Pricing data." + "This notebook demonstrates how to use how to manage errors when using Definition objects of the Content layer. Historical Pricing will be used here as an example, but this technique applies to all Definition objects of the Content layer." ] }, { @@ -36,7 +36,9 @@ "\n", "If you have any questions regarding using the API, please post them on \n", "the [Refinitiv Data Q&A Forum](https://community.developers.refinitiv.com/spaces/321/index.html). \n", - "The Refinitiv Developer Community will be happy to help. " + "The Refinitiv Developer Community will be happy to help. \n", + "\n", + "----" ] }, { diff --git a/Examples/2-Content/2.02-Pricing/EX-2.02.02-Pricing-StreamingWithDataFrame.ipynb b/Examples/2-Content/2.02-Pricing/EX-2.02.02-Pricing-StreamingWithDataFrame.ipynb index 803a885..f505f78 100644 --- a/Examples/2-Content/2.02-Pricing/EX-2.02.02-Pricing-StreamingWithDataFrame.ipynb +++ b/Examples/2-Content/2.02-Pricing/EX-2.02.02-Pricing-StreamingWithDataFrame.ipynb @@ -66,7 +66,7 @@ }, { "cell_type": "code", - "execution_count": 2, + "execution_count": 3, "metadata": {}, "outputs": [], "source": [ @@ -87,16 +87,16 @@ }, { "cell_type": "code", - "execution_count": 3, + "execution_count": 4, "metadata": {}, "outputs": [ { "data": { "text/plain": [ - "" + "" ] }, - "execution_count": 3, + "execution_count": 4, "metadata": {}, "output_type": "execute_result" } @@ -119,9 +119,16 @@ "### Define callbacks to receive streaming data" ] }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "### Create a stream and open it" + ] + }, { "cell_type": "code", - "execution_count": 4, + "execution_count": 5, "metadata": {}, "outputs": [], "source": [ @@ -139,7 +146,7 @@ " display(df)\n", "\n", "\n", - "def update_dataframe(streaming_prices, instrument_name, fields):\n", + "def update_dataframe(fields, instrument_name, streaming_prices):\n", " global df\n", " clear_output(wait=True)\n", " for field_name, field_value in fields.items():\n", @@ -147,16 +154,9 @@ " display(df)" ] }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "### Create a stream and open it" - ] - }, { "cell_type": "code", - "execution_count": 5, + "execution_count": 6, "metadata": {}, "outputs": [ { @@ -187,23 +187,23 @@ " \n", " \n", " EUR=\n", - " 1.1331\n", - " 1.1335\n", + " 1.053\n", + " 1.0534\n", " \n", " \n", " GBP=\n", - " 1.3352\n", - " 1.3356\n", + " 1.2264\n", + " 1.2265\n", " \n", " \n", " JPY=\n", - " 114.15\n", - " 114.16\n", + " 136.26\n", + " 136.29\n", " \n", " \n", " CAD=\n", - " 1.2782\n", - " 1.2783\n", + " 1.2937\n", + " 1.2941\n", " \n", " \n", "\n", @@ -211,10 +211,10 @@ ], "text/plain": [ " BID ASK\n", - "EUR= 1.1331 1.1335\n", - "GBP= 1.3352 1.3356\n", - "JPY= 114.15 114.16\n", - "CAD= 1.2782 1.2783" + "EUR= 1.053 1.0534\n", + "GBP= 1.2264 1.2265\n", + "JPY= 136.26 136.29\n", + "CAD= 1.2937 1.2941" ] }, "metadata": {}, @@ -243,16 +243,16 @@ }, { "cell_type": "code", - "execution_count": 6, + "execution_count": 7, "metadata": {}, "outputs": [ { "data": { "text/plain": [ - "" + "" ] }, - "execution_count": 6, + "execution_count": 7, "metadata": {}, "output_type": "execute_result" } @@ -270,7 +270,7 @@ }, { "cell_type": "code", - "execution_count": 7, + "execution_count": 8, "metadata": {}, "outputs": [], "source": [ @@ -287,7 +287,7 @@ ], "metadata": { "kernelspec": { - "display_name": "Python 3", + "display_name": "Python 3 (ipykernel)", "language": "python", "name": "python3" }, @@ -301,7 +301,7 @@ "name": "python", "nbconvert_exporter": "python", "pygments_lexer": "ipython3", - "version": "3.7.6" + "version": "3.9.7" } }, "nbformat": 4, diff --git a/Examples/2-Content/2.02-Pricing/EX-2.02.04-Pricing-StreamingEvents.ipynb b/Examples/2-Content/2.02-Pricing/EX-2.02.04-Pricing-StreamingEvents.ipynb index 7a98fe0..982e4c2 100755 --- a/Examples/2-Content/2.02-Pricing/EX-2.02.04-Pricing-StreamingEvents.ipynb +++ b/Examples/2-Content/2.02-Pricing/EX-2.02.04-Pricing-StreamingEvents.ipynb @@ -129,7 +129,7 @@ }, { "cell_type": "code", - "execution_count": 2, + "execution_count": 1, "metadata": {}, "outputs": [], "source": [ @@ -149,16 +149,16 @@ }, { "cell_type": "code", - "execution_count": 3, + "execution_count": 2, "metadata": {}, "outputs": [ { "data": { "text/plain": [ - "" + "" ] }, - "execution_count": 3, + "execution_count": 2, "metadata": {}, "output_type": "execute_result" } @@ -190,11 +190,11 @@ }, { "cell_type": "code", - "execution_count": 4, + "execution_count": 3, "metadata": {}, "outputs": [], "source": [ - "def display_refreshed_fields(pricing_stream, instrument_name, fields):\n", + "def display_refreshed_fields(fields, instrument_name, pricing_stream):\n", " current_time = datetime.datetime.now().time()\n", " print(current_time, \"- Refresh received for\", instrument_name, \":\", fields) " ] @@ -208,11 +208,11 @@ }, { "cell_type": "code", - "execution_count": 5, + "execution_count": 4, "metadata": {}, "outputs": [], "source": [ - "def display_updated_fields(pricing_stream, instrument_name, fields):\n", + "def display_updated_fields(fields, instrument_name, pricing_stream):\n", " current_time = datetime.datetime.now().time()\n", " print(current_time, \"- Update received for\", instrument_name, \":\", fields) " ] @@ -226,11 +226,11 @@ }, { "cell_type": "code", - "execution_count": 6, + "execution_count": 5, "metadata": {}, "outputs": [], "source": [ - "def display_status(pricing_stream, instrument_name, status):\n", + "def display_status(status, instrument_name, pricing_stream):\n", " current_time = datetime.datetime.now().time()\n", " print(current_time, \"- Status received for\", instrument_name, \":\", status) " ] @@ -244,7 +244,7 @@ }, { "cell_type": "code", - "execution_count": 7, + "execution_count": 6, "metadata": {}, "outputs": [], "source": [ @@ -263,16 +263,16 @@ }, { "cell_type": "code", - "execution_count": 8, + "execution_count": 7, "metadata": {}, "outputs": [ { "data": { "text/plain": [ - "" + "" ] }, - "execution_count": 8, + "execution_count": 7, "metadata": {}, "output_type": "execute_result" } @@ -299,18 +299,18 @@ }, { "cell_type": "code", - "execution_count": 9, + "execution_count": 8, "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ - "14:10:04.230524 - Refresh received for EUR= : {'BID': 1.1332, 'ASK': 1.1333}\n", - "14:10:04.294298 - Refresh received for GBP= : {'BID': 1.3353, 'ASK': 1.3355}\n", - "14:10:04.296576 - Refresh received for JPY= : {'BID': 114.14, 'ASK': 114.15}\n", - "14:10:04.319355 - Refresh received for CAD= : {'BID': 1.2779, 'ASK': 1.2783}\n", - "14:10:04.319584 - Pricing stream is complete. Full snapshot:\n" + "18:16:07.263657 - Refresh received for GBP= : {'BID': 1.2257, 'ASK': 1.2261}\n", + "18:16:07.265243 - Refresh received for EUR= : {'BID': 1.0531, 'ASK': 1.0533}\n", + "18:16:07.266626 - Refresh received for JPY= : {'BID': 136.24, 'ASK': 136.25}\n", + "18:16:07.267331 - Refresh received for CAD= : {'BID': 1.2939, 'ASK': 1.2943}\n", + "18:16:07.267531 - Pricing stream is complete. Full snapshot:\n" ] }, { @@ -335,45 +335,45 @@ " \n", " \n", " Instrument\n", - " ASK\n", " BID\n", + " ASK\n", " \n", " \n", " \n", " \n", " 0\n", " EUR=\n", - " 1.1333\n", - " 1.1332\n", + " 1.0531\n", + " 1.0533\n", " \n", " \n", " 1\n", " GBP=\n", - " 1.3355\n", - " 1.3353\n", + " 1.2257\n", + " 1.2261\n", " \n", " \n", " 2\n", " JPY=\n", - " 114.15\n", - " 114.14\n", + " 136.24\n", + " 136.25\n", " \n", " \n", " 3\n", " CAD=\n", - " 1.2783\n", - " 1.2779\n", + " 1.2939\n", + " 1.2943\n", " \n", " \n", "\n", "" ], "text/plain": [ - " Instrument ASK BID\n", - "0 EUR= 1.1333 1.1332\n", - "1 GBP= 1.3355 1.3353\n", - "2 JPY= 114.15 114.14\n", - "3 CAD= 1.2783 1.2779" + " Instrument BID ASK\n", + "0 EUR= 1.0531 1.0533\n", + "1 GBP= 1.2257 1.2261\n", + "2 JPY= 136.24 136.25\n", + "3 CAD= 1.2939 1.2943" ] }, "metadata": {}, @@ -382,10 +382,10 @@ { "data": { "text/plain": [ - "" + "" ] }, - "execution_count": 9, + "execution_count": 8, "metadata": {}, "output_type": "execute_result" }, @@ -393,18 +393,35 @@ "name": "stdout", "output_type": "stream", "text": [ - "14:10:04.358514 - Update received for GBP= : {'BID': 1.3352, 'ASK': 1.3356}\n", - "14:10:04.359312 - Update received for JPY= : {'BID': 114.13, 'ASK': 114.16}\n", - "14:10:04.747091 - Update received for CAD= : {'BID': 1.2782, 'ASK': 1.2786}\n", - "14:10:04.778022 - Update received for EUR= : {'BID': 1.1331, 'ASK': 1.1335}\n", - "14:10:04.914487 - Update received for GBP= : {'BID': 1.3355, 'ASK': 1.3356}\n", - "14:10:05.259574 - Update received for GBP= : {'BID': 1.3353, 'ASK': 1.3354}\n", - "14:10:05.267195 - Update received for JPY= : {'BID': 114.13, 'ASK': 114.16}\n", - "14:10:05.918976 - Update received for CAD= : {'BID': 1.2779, 'ASK': 1.2783}\n", - "14:10:05.965406 - Update received for GBP= : {'BID': 1.3353, 'ASK': 1.3356}\n", - "14:10:05.966023 - Update received for EUR= : {'BID': 1.1332, 'ASK': 1.1334}\n", - "14:10:06.238758 - Update received for EUR= : {'BID': 1.1331, 'ASK': 1.1335}\n", - "14:10:06.289881 - Update received for JPY= : {'BID': 114.14, 'ASK': 114.15}\n" + "18:16:07.362255 - Update received for EUR= : {'BID': 1.0529, 'ASK': 1.0533}\n", + "18:16:07.363729 - Update received for GBP= : {'BID': 1.2256, 'ASK': 1.2263}\n", + "18:16:07.479485 - Update received for CAD= : {'BID': 1.2941, 'ASK': 1.2942}\n", + "18:16:07.656907 - Update received for EUR= : {'BID': 1.0531, 'ASK': 1.0533}\n", + "18:16:07.683672 - Update received for GBP= : {'BID': 1.2259, 'ASK': 1.226}\n", + "18:16:07.884638 - Update received for JPY= : {'BID': 136.24, 'ASK': 136.25}\n", + "18:16:07.947789 - Update received for GBP= : {'BID': 1.2259, 'ASK': 1.2261}\n", + "18:16:08.128420 - Update received for CAD= : {'BID': 1.2939, 'ASK': 1.2943}\n", + "18:16:08.168913 - Update received for JPY= : {'BID': 136.24, 'ASK': 136.25}\n", + "18:16:08.248509 - Update received for GBP= : {'BID': 1.2257, 'ASK': 1.2262}\n", + "18:16:08.399674 - Update received for EUR= : {'BID': 1.053, 'ASK': 1.0532}\n", + "18:16:08.400486 - Update received for CAD= : {'BID': 1.2941, 'ASK': 1.2942}\n", + "18:16:08.694115 - Update received for JPY= : {'BID': 136.24, 'ASK': 136.26}\n", + "18:16:08.960255 - Update received for JPY= : {'BID': 136.24, 'ASK': 136.25}\n", + "18:16:09.096867 - Update received for CAD= : {'BID': 1.294, 'ASK': 1.2944}\n", + "18:16:09.097895 - Update received for EUR= : {'BID': 1.0529, 'ASK': 1.0533}\n", + "18:16:09.098120 - Update received for GBP= : {'BID': 1.2259, 'ASK': 1.226}\n", + "18:16:09.377693 - Update received for EUR= : {'BID': 1.053, 'ASK': 1.0532}\n", + "18:16:09.396654 - Update received for CAD= : {'BID': 1.2941, 'ASK': 1.2942}\n", + "18:16:09.565437 - Update received for JPY= : {'BID': 136.24, 'ASK': 136.25}\n", + "18:16:10.105380 - Update received for EUR= : {'BID': 1.0529, 'ASK': 1.0533}\n", + "18:16:10.137672 - Update received for CAD= : {'BID': 1.294, 'ASK': 1.2944}\n", + "18:16:10.644119 - Update received for JPY= : {'BID': 136.24, 'ASK': 136.25}\n", + "18:16:10.662378 - Update received for CAD= : {'BID': 1.2941, 'ASK': 1.2942}\n", + "18:16:11.140191 - Update received for CAD= : {'BID': 1.294, 'ASK': 1.2945}\n", + "18:16:11.141037 - Update received for EUR= : {'BID': 1.0529, 'ASK': 1.0533}\n", + "18:16:11.491890 - Update received for JPY= : {'BID': 136.24, 'ASK': 136.25}\n", + "18:16:11.772620 - Update received for JPY= : {'BID': 136.24, 'ASK': 136.25}\n", + "18:16:11.773716 - Update received for CAD= : {'BID': 1.2941, 'ASK': 1.2942}\n" ] } ], @@ -421,23 +438,16 @@ }, { "cell_type": "code", - "execution_count": 10, + "execution_count": 9, "metadata": {}, "outputs": [ - { - "name": "stdout", - "output_type": "stream", - "text": [ - "14:10:06.528086 - Update received for EUR= : {'BID': 1.133, 'ASK': 1.1334}\n" - ] - }, { "data": { "text/plain": [ - "" + "" ] }, - "execution_count": 10, + "execution_count": 9, "metadata": {}, "output_type": "execute_result" } @@ -455,13 +465,20 @@ }, { "cell_type": "code", - "execution_count": 11, + "execution_count": 10, "metadata": {}, "outputs": [], "source": [ "rd.close_session()" ] }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [] + }, { "cell_type": "code", "execution_count": null, @@ -472,7 +489,7 @@ ], "metadata": { "kernelspec": { - "display_name": "Python 3", + "display_name": "Python 3 (ipykernel)", "language": "python", "name": "python3" }, @@ -486,7 +503,7 @@ "name": "python", "nbconvert_exporter": "python", "pygments_lexer": "ipython3", - "version": "3.7.6" + "version": "3.9.7" } }, "nbformat": 4, diff --git a/Examples/2-Content/2.02-Pricing/EX-2.02.05-Pricing-StreamingNews.ipynb b/Examples/2-Content/2.02-Pricing/EX-2.02.05-Pricing-StreamingNews.ipynb index a356766..73db900 100755 --- a/Examples/2-Content/2.02-Pricing/EX-2.02.05-Pricing-StreamingNews.ipynb +++ b/Examples/2-Content/2.02-Pricing/EX-2.02.05-Pricing-StreamingNews.ipynb @@ -66,7 +66,7 @@ }, { "cell_type": "code", - "execution_count": 2, + "execution_count": 1, "metadata": {}, "outputs": [], "source": [ @@ -86,16 +86,16 @@ }, { "cell_type": "code", - "execution_count": 3, + "execution_count": 2, "metadata": {}, "outputs": [ { "data": { "text/plain": [ - "" + "" ] }, - "execution_count": 3, + "execution_count": 2, "metadata": {}, "output_type": "execute_result" } @@ -120,13 +120,13 @@ }, { "cell_type": "code", - "execution_count": 4, + "execution_count": 3, "metadata": { "tags": [] }, "outputs": [], "source": [ - "def display_news_headline(streaming_prices, instrument_name, fields):\n", + "def display_news_headline(fields, instrument_name, pricing_stream):\n", " clear_output(wait=True)\n", " print(fields['HEADLINE1'])" ] @@ -140,16 +140,16 @@ }, { "cell_type": "code", - "execution_count": 5, + "execution_count": 4, "metadata": {}, "outputs": [ { "data": { "text/plain": [ - "" + "" ] }, - "execution_count": 5, + "execution_count": 4, "metadata": {}, "output_type": "execute_result" } @@ -168,14 +168,14 @@ }, { "cell_type": "code", - "execution_count": 12, + "execution_count": 5, "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ - "No extra rapid Covid tests for pharmacies as cities run out Tests shortage 'could leave elderly alone at Christmas'\n" + "(EN) Canadian Imperial Bank of Commerce Pricing supplement (specified derivative) - English (68160280)\n" ] } ], @@ -192,16 +192,16 @@ }, { "cell_type": "code", - "execution_count": 13, + "execution_count": 6, "metadata": {}, "outputs": [ { "data": { "text/plain": [ - "" + "" ] }, - "execution_count": 13, + "execution_count": 6, "metadata": {}, "output_type": "execute_result" } @@ -219,7 +219,7 @@ }, { "cell_type": "code", - "execution_count": 14, + "execution_count": 7, "metadata": {}, "outputs": [], "source": [ @@ -236,7 +236,7 @@ ], "metadata": { "kernelspec": { - "display_name": "Python 3", + "display_name": "Python 3 (ipykernel)", "language": "python", "name": "python3" }, @@ -250,7 +250,7 @@ "name": "python", "nbconvert_exporter": "python", "pygments_lexer": "ipython3", - "version": "3.7.6" + "version": "3.9.7" } }, "nbformat": 4, diff --git a/Examples/2-Content/2.02-Pricing/EX-2.02.06-Pricing-StreamingChain.ipynb b/Examples/2-Content/2.02-Pricing/EX-2.02.06-Pricing-StreamingChain.ipynb index 9adf130..dc9716e 100644 --- a/Examples/2-Content/2.02-Pricing/EX-2.02.06-Pricing-StreamingChain.ipynb +++ b/Examples/2-Content/2.02-Pricing/EX-2.02.06-Pricing-StreamingChain.ipynb @@ -66,7 +66,7 @@ }, { "cell_type": "code", - "execution_count": 2, + "execution_count": 1, "metadata": {}, "outputs": [], "source": [ @@ -87,16 +87,16 @@ }, { "cell_type": "code", - "execution_count": 3, + "execution_count": 2, "metadata": {}, "outputs": [ { "data": { "text/plain": [ - "" + "" ] }, - "execution_count": 3, + "execution_count": 2, "metadata": {}, "output_type": "execute_result" } @@ -121,14 +121,14 @@ }, { "cell_type": "code", - "execution_count": 4, + "execution_count": 3, "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ - "['.DJI', 'AAPL.OQ', 'AMGN.OQ', 'AXP.N', 'BA.N', 'CAT.N', 'CRM.N', 'CSCO.OQ', 'CVX.N', 'DIS.N', 'DOW.N', 'GS.N', 'HD.N', 'HON.OQ', 'IBM.N', 'INTC.OQ', 'JNJ.N', 'JPM.N', 'KO.N', 'MCD.N', 'MMM.N', 'MRK.N', 'MSFT.OQ', 'NKE.N', 'PG.N', 'TRV.N', 'UNH.N', 'V.N', 'VZ.N', 'WBA.OQ', 'WMT.N']\n" + "['AAPL.OQ', 'AMGN.OQ', 'AXP.N', 'BA.N', 'CAT.N', 'CRM.N', 'CSCO.OQ', 'CVX.N', 'DIS.N', 'DOW.N', 'GS.N', 'HD.N', 'HON.OQ', 'IBM.N', 'INTC.OQ', 'JNJ.N', 'JPM.N', 'KO.N', 'MCD.N', 'MMM.N', 'MRK.N', 'MSFT.OQ', 'NKE.N', 'PG.N', 'TRV.N', 'UNH.N', 'V.N', 'VZ.N', 'WBA.OQ', 'WMT.N']\n" ] } ], @@ -148,7 +148,7 @@ }, { "cell_type": "code", - "execution_count": 5, + "execution_count": 4, "metadata": {}, "outputs": [], "source": [ @@ -164,16 +164,16 @@ }, { "cell_type": "code", - "execution_count": 6, + "execution_count": 5, "metadata": {}, "outputs": [ { "data": { "text/plain": [ - "" + "" ] }, - "execution_count": 6, + "execution_count": 5, "metadata": {}, "output_type": "execute_result" } @@ -193,7 +193,7 @@ " display(df)\n", "\n", "\n", - "def update_dataframe(streaming_prices, instrument_name, fields):\n", + "def update_dataframe(fields, instrument_name, pricing_stream):\n", " global df\n", " clear_output(wait=True)\n", " for field_name, field_value in fields.items():\n", @@ -213,7 +213,7 @@ }, { "cell_type": "code", - "execution_count": 7, + "execution_count": 6, "metadata": {}, "outputs": [ { @@ -237,203 +237,197 @@ " \n", " \n", " \n", - " ASK\n", " BID\n", + " ASK\n", " \n", " \n", " \n", " \n", - " .DJI\n", - " 36037.17\n", - " 35871.41\n", - " \n", - " \n", " AAPL.OQ\n", - " 179.86\n", - " 179.76\n", + " 136.1\n", + " 136.11\n", " \n", " \n", " AMGN.OQ\n", - " 219.6\n", - " 219\n", + " 236.84\n", + " 236.91\n", " \n", " \n", " AXP.N\n", - " None\n", - " None\n", + " 144.48\n", + " 144.58\n", " \n", " \n", " BA.N\n", - " None\n", - " None\n", + " 136.46\n", + " 136.52\n", " \n", " \n", " CAT.N\n", - " None\n", - " None\n", + " 196.36\n", + " 196.43\n", " \n", " \n", " CRM.N\n", - " None\n", - " None\n", + " 167.45\n", + " 167.55\n", " \n", " \n", " CSCO.OQ\n", - " 60.08\n", - " 59.94\n", + " 44.06\n", + " 44.07\n", " \n", " \n", " CVX.N\n", - " None\n", - " None\n", + " 152.89\n", + " 152.94\n", " \n", " \n", " DIS.N\n", - " None\n", - " None\n", + " 93.94\n", + " 93.98\n", " \n", " \n", " DOW.N\n", - " None\n", - " None\n", + " 55.55\n", + " 55.57\n", " \n", " \n", " GS.N\n", - " None\n", - " None\n", + " 283.76\n", + " 283.92\n", " \n", " \n", " HD.N\n", - " None\n", - " None\n", + " 267.86\n", + " 268.01\n", " \n", " \n", " HON.OQ\n", - " 210.97\n", - " 209.76\n", + " 180.26\n", + " 180.33\n", " \n", " \n", " IBM.N\n", - " None\n", - " None\n", + " 138.07\n", + " 138.14\n", " \n", " \n", " INTC.OQ\n", - " 50.68\n", - " 50.61\n", + " 37.74\n", + " 37.75\n", " \n", " \n", " JNJ.N\n", - " None\n", - " None\n", + " 172.21\n", + " 172.25\n", " \n", " \n", " JPM.N\n", - " None\n", - " None\n", + " 115.46\n", + " 115.5\n", " \n", " \n", " KO.N\n", - " None\n", - " None\n", + " 60.27\n", + " 60.28\n", " \n", " \n", " MCD.N\n", - " None\n", - " None\n", + " 238.2\n", + " 238.29\n", " \n", " \n", " MMM.N\n", - " None\n", - " None\n", + " 130.18\n", + " 130.24\n", " \n", " \n", " MRK.N\n", - " None\n", - " None\n", + " 87.6\n", + " 87.62\n", " \n", " \n", " MSFT.OQ\n", - " 336\n", - " 335.75\n", + " 253.28\n", + " 253.32\n", " \n", " \n", " NKE.N\n", - " None\n", - " None\n", + " 109.26\n", + " 109.29\n", " \n", " \n", " PG.N\n", - " None\n", - " None\n", + " 135.59\n", + " 135.69\n", " \n", " \n", " TRV.N\n", - " None\n", - " None\n", + " 161.61\n", + " 161.7\n", " \n", " \n", " UNH.N\n", - " None\n", - " None\n", + " 470.02\n", + " 470.29\n", " \n", " \n", " V.N\n", - " None\n", - " None\n", + " 194.46\n", + " 194.51\n", " \n", " \n", " VZ.N\n", - " None\n", - " None\n", + " 49.91\n", + " 49.92\n", " \n", " \n", " WBA.OQ\n", - " 48.9\n", - " 48.81\n", + " 39.84\n", + " 39.85\n", " \n", " \n", " WMT.N\n", - " None\n", - " None\n", + " 121.11\n", + " 121.15\n", " \n", " \n", "\n", "" ], "text/plain": [ - " ASK BID\n", - ".DJI 36037.17 35871.41\n", - "AAPL.OQ 179.86 179.76\n", - "AMGN.OQ 219.6 219\n", - "AXP.N None None\n", - "BA.N None None\n", - "CAT.N None None\n", - "CRM.N None None\n", - "CSCO.OQ 60.08 59.94\n", - "CVX.N None None\n", - "DIS.N None None\n", - "DOW.N None None\n", - "GS.N None None\n", - "HD.N None None\n", - "HON.OQ 210.97 209.76\n", - "IBM.N None None\n", - "INTC.OQ 50.68 50.61\n", - "JNJ.N None None\n", - "JPM.N None None\n", - "KO.N None None\n", - "MCD.N None None\n", - "MMM.N None None\n", - "MRK.N None None\n", - "MSFT.OQ 336 335.75\n", - "NKE.N None None\n", - "PG.N None None\n", - "TRV.N None None\n", - "UNH.N None None\n", - "V.N None None\n", - "VZ.N None None\n", - "WBA.OQ 48.9 48.81\n", - "WMT.N None None" + " BID ASK\n", + "AAPL.OQ 136.1 136.11\n", + "AMGN.OQ 236.84 236.91\n", + "AXP.N 144.48 144.58\n", + "BA.N 136.46 136.52\n", + "CAT.N 196.36 196.43\n", + "CRM.N 167.45 167.55\n", + "CSCO.OQ 44.06 44.07\n", + "CVX.N 152.89 152.94\n", + "DIS.N 93.94 93.98\n", + "DOW.N 55.55 55.57\n", + "GS.N 283.76 283.92\n", + "HD.N 267.86 268.01\n", + "HON.OQ 180.26 180.33\n", + "IBM.N 138.07 138.14\n", + "INTC.OQ 37.74 37.75\n", + "JNJ.N 172.21 172.25\n", + "JPM.N 115.46 115.5\n", + "KO.N 60.27 60.28\n", + "MCD.N 238.2 238.29\n", + "MMM.N 130.18 130.24\n", + "MRK.N 87.6 87.62\n", + "MSFT.OQ 253.28 253.32\n", + "NKE.N 109.26 109.29\n", + "PG.N 135.59 135.69\n", + "TRV.N 161.61 161.7\n", + "UNH.N 470.02 470.29\n", + "V.N 194.46 194.51\n", + "VZ.N 49.91 49.92\n", + "WBA.OQ 39.84 39.85\n", + "WMT.N 121.11 121.15" ] }, "metadata": {}, @@ -453,20 +447,9 @@ }, { "cell_type": "code", - "execution_count": 8, + "execution_count": null, "metadata": {}, - "outputs": [ - { - "data": { - "text/plain": [ - "" - ] - }, - "execution_count": 8, - "metadata": {}, - "output_type": "execute_result" - } - ], + "outputs": [], "source": [ "pricing_stream.close()" ] @@ -480,7 +463,7 @@ }, { "cell_type": "code", - "execution_count": 9, + "execution_count": 8, "metadata": {}, "outputs": [], "source": [ @@ -497,7 +480,7 @@ ], "metadata": { "kernelspec": { - "display_name": "Python 3", + "display_name": "Python 3 (ipykernel)", "language": "python", "name": "python3" }, @@ -511,7 +494,7 @@ "name": "python", "nbconvert_exporter": "python", "pygments_lexer": "ipython3", - "version": "3.7.6" + "version": "3.9.7" } }, "nbformat": 4, diff --git a/Examples/2-Content/2.02-Pricing/EX-2.02.08-Pricing-StreamingChainEvents.ipynb b/Examples/2-Content/2.02-Pricing/EX-2.02.08-Pricing-StreamingChainEvents.ipynb index 9a59643..29b939b 100644 --- a/Examples/2-Content/2.02-Pricing/EX-2.02.08-Pricing-StreamingChainEvents.ipynb +++ b/Examples/2-Content/2.02-Pricing/EX-2.02.08-Pricing-StreamingChainEvents.ipynb @@ -136,7 +136,7 @@ }, { "cell_type": "code", - "execution_count": 14, + "execution_count": 1, "metadata": {}, "outputs": [], "source": [ @@ -156,16 +156,16 @@ }, { "cell_type": "code", - "execution_count": 15, + "execution_count": 2, "metadata": {}, "outputs": [ { "data": { "text/plain": [ - "" + "" ] }, - "execution_count": 15, + "execution_count": 2, "metadata": {}, "output_type": "execute_result" } @@ -197,11 +197,11 @@ }, { "cell_type": "code", - "execution_count": 16, + "execution_count": 3, "metadata": {}, "outputs": [], "source": [ - "def display_add(chain_stream, index, constituent):\n", + "def display_add(constituent, index, chain_stream):\n", " time_now = datetime.datetime.now().time()\n", " print(f\"{time_now}- Add event received for {chain_stream.name}. {index}: {constituent}\")" ] @@ -215,11 +215,11 @@ }, { "cell_type": "code", - "execution_count": 17, + "execution_count": 4, "metadata": {}, "outputs": [], "source": [ - "def display_remove(chain_stream, index, constituent):\n", + "def display_remove(constituent, index, chain_stream):\n", " current_time = datetime.datetime.now().time()\n", " print(f\"{time_now}- Remove event received for {chain_stream.name}. {index}: {constituent}\")" ] @@ -233,11 +233,11 @@ }, { "cell_type": "code", - "execution_count": 18, + "execution_count": 5, "metadata": {}, "outputs": [], "source": [ - "def display_update(chain_stream, index, old_constituent, new_constituent):\n", + "def display_update(new_constituent, old_constituent, index, chain_stream):\n", " time_now = datetime.datetime.now().time()\n", " print(\n", " f\"{time_now}- Update event received for {chain_stream.name}.\"\n", @@ -254,11 +254,11 @@ }, { "cell_type": "code", - "execution_count": 19, + "execution_count": 6, "metadata": {}, "outputs": [], "source": [ - "def display_complete(chain_stream, constituents):\n", + "def display_complete(constituents, chain_stream):\n", " time_now = datetime.datetime.now().time()\n", " print(\n", " f\"{time_now}- Chain {chain_stream.name}\"\n", @@ -275,11 +275,11 @@ }, { "cell_type": "code", - "execution_count": 20, + "execution_count": 7, "metadata": {}, "outputs": [], "source": [ - "def display_error(chain_stream, chain_record, error):\n", + "def display_error(error, chain_record, chain_stream):\n", " time_now = datetime.datetime.now().time()\n", " print(f\"{time_now}- Error received for Chain {chain_stream.name}. Chain Record: {chain_record}. Error: {error}\") " ] @@ -295,16 +295,16 @@ }, { "cell_type": "code", - "execution_count": 21, + "execution_count": 8, "metadata": {}, "outputs": [ { "data": { "text/plain": [ - "" + "" ] }, - "execution_count": 21, + "execution_count": 8, "metadata": {}, "output_type": "execute_result" } @@ -335,56 +335,50 @@ }, { "cell_type": "code", - "execution_count": 22, + "execution_count": 9, "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ - "14:58:36.569630- Chain .AV.O is completely decoded.\n", + "18:20:53.792847- Add event received for .AV.O. TQQQ.O: 0\n", + "18:20:53.793032- Add event received for .AV.O. SNDL.O: 1\n", + "18:20:53.793104- Add event received for .AV.O. CLVS.O: 2\n", + "18:20:53.793166- Add event received for .AV.O. MULN.O: 3\n", + "18:20:53.793225- Add event received for .AV.O. CEAD.O: 4\n", + "18:20:53.793283- Add event received for .AV.O. AMD.O: 5\n", + "18:20:53.793372- Add event received for .AV.O. XELA.O: 6\n", + "18:20:53.793432- Add event received for .AV.O. SQQQ.O: 7\n", + "18:20:53.793490- Add event received for .AV.O. AAPL.O: 8\n", + "18:20:53.793548- Add event received for .AV.O. AMZN.O: 9\n", + "18:20:53.793608- Add event received for .AV.O. ENDP.O: 10\n", + "18:20:53.793670- Add event received for .AV.O. GRAB.O: 11\n", + "18:20:53.793727- Add event received for .AV.O. NVDA.O: 12\n", + "18:20:53.793795- Add event received for .AV.O. QQQ.O: 13\n", + "18:20:53.864809- Add event received for .AV.O. TSLA.O: 14\n", + "18:20:53.864938- Add event received for .AV.O. MREO.O: 15\n", + "18:20:53.864993- Add event received for .AV.O. ADN.O: 16\n", + "18:20:53.865049- Add event received for .AV.O. AAL.O: 17\n", + "18:20:53.865106- Add event received for .AV.O. IMPP.O: 18\n", + "18:20:53.865152- Add event received for .AV.O. HCTI.O: 19\n", + "18:20:53.865206- Add event received for .AV.O. LI.O: 20\n", + "18:20:53.865252- Add event received for .AV.O. SOFI.O: 21\n", + "18:20:53.865301- Add event received for .AV.O. NMTR.O: 22\n", + "18:20:53.865346- Add event received for .AV.O. GMVD.O: 23\n", + "18:20:53.865395- Add event received for .AV.O. RIVN.O: 24\n", + "18:20:53.865514- Chain .AV.O is completely decoded.\n", "constituents:\n", - "{'ID': 4, 'Type': 'Refresh', 'Key': {'Service': 'IDN_RDFNTS_CF', 'Name': '.AV.O'}, 'State': {'Stream': 'Open', 'Data': 'Ok', 'Text': 'All is well'}, 'Qos': {'Timeliness': 'Realtime', 'Rate': 'JitConflated'}, 'PermData': 'AwD+dMA=', 'SeqNumber': 21904, 'Fields': {'PROD_PERM': 74, 'RDNDISPLAY': 173, 'DSPLY_NAME': 'TOP 25 BY VOLUME', 'RDN_EXCHID': 0, 'TIMACT': '13:58:31', 'ACTIV_DATE': '2021-12-16', 'NUM_MOVES': 1195, 'REF_COUNT': 14, 'RECORDTYPE': 117, 'LONGLINK1': 'KXIN.O', 'LONGLINK2': 'SQQQ.O', 'LONGLINK3': 'AVCT.O', 'LONGLINK4': 'FOUNW.O', 'LONGLINK5': 'FOUN.O', 'LONGLINK6': 'BCTX.O', 'LONGLINK7': 'AAPL.O', 'LONGLINK8': 'EVFM.O', 'LONGLINK9': 'GRTX.O', 'LONGLINK10': 'QQQ.O', 'LONGLINK11': 'TQQQ.O', 'LONGLINK12': 'PTPI.O', 'LONGLINK13': 'BMRA.O', 'LONGLINK14': 'FUTU.O', 'LONGPREVLR': None, 'LONGNEXTLR': '1#.AV.O', 'PREF_DISP': 0, 'PREF_LINK': None, 'RDN_EXCHD2': 559, 'PREV_DISP': 0, 'TIMACT1': '13:58:31', 'CONTEXT_ID': 3339, 'CF_DATE': '2021-12-16', 'CF_EXCHNG': 559, 'CF_SOURCE': ' ', 'CF_TIME': '13:58:31', 'CF_NAME': 'TOP 25 BY VOLUME', 'DDS_DSO_ID': 8288, 'SPS_SP_RIC': '.[SPSNSDQVAE1'}}\n", - "14:58:36.569775- Add event received for .AV.O. 0: KXIN.O\n", - "14:58:36.569814- Add event received for .AV.O. 1: SQQQ.O\n", - "14:58:36.570170- Add event received for .AV.O. 2: AVCT.O\n", - "14:58:36.570215- Add event received for .AV.O. 3: FOUNW.O\n", - "14:58:36.570247- Add event received for .AV.O. 4: FOUN.O\n", - "14:58:36.570274- Add event received for .AV.O. 5: BCTX.O\n", - "14:58:36.570301- Add event received for .AV.O. 6: AAPL.O\n", - "14:58:36.570323- Add event received for .AV.O. 7: EVFM.O\n", - "14:58:36.572262- Add event received for .AV.O. 8: GRTX.O\n", - "14:58:36.572367- Add event received for .AV.O. 9: QQQ.O\n", - "14:58:36.572404- Add event received for .AV.O. 10: TQQQ.O\n", - "14:58:36.572431- Add event received for .AV.O. 11: PTPI.O\n", - "14:58:36.572458- Add event received for .AV.O. 12: BMRA.O\n", - "14:58:36.572484- Add event received for .AV.O. 13: FUTU.O\n", - "14:58:36.670040- Chain .AV.O is completely decoded.\n", - "constituents:\n", - "{'ID': 6, 'Type': 'Refresh', 'Key': {'Service': 'IDN_RDFNTS_CF', 'Name': '1#.AV.O'}, 'State': {'Stream': 'Open', 'Data': 'Ok', 'Text': 'All is well'}, 'Qos': {'Timeliness': 'Realtime', 'Rate': 'JitConflated'}, 'PermData': 'AwD+dMA=', 'SeqNumber': 21904, 'Fields': {'PROD_PERM': 74, 'RDNDISPLAY': 173, 'DSPLY_NAME': 'TOP 25 BY VOLUME', 'RDN_EXCHID': 0, 'TIMACT': '13:58:31', 'ACTIV_DATE': '2021-12-16', 'NUM_MOVES': 1195, 'REF_COUNT': 11, 'RECORDTYPE': 117, 'LONGLINK1': 'SNDL.O', 'LONGLINK2': 'CALT.O', 'LONGLINK3': 'NVDA.O', 'LONGLINK4': 'SEAC.O', 'LONGLINK5': 'PBTS.O', 'LONGLINK6': 'SOFI.O', 'LONGLINK7': 'LCID.O', 'LONGLINK8': 'AAL.O', 'LONGLINK9': 'FOUNU.O', 'LONGLINK10': 'AMD.O', 'LONGLINK11': 'NAKD.O', 'LONGLINK12': None, 'LONGLINK13': None, 'LONGLINK14': None, 'LONGPREVLR': '.AV.O', 'LONGNEXTLR': None, 'PREF_DISP': 0, 'PREF_LINK': None, 'RDN_EXCHD2': 559, 'PREV_DISP': 0, 'TIMACT1': '13:58:31', 'CONTEXT_ID': 3339, 'CF_DATE': '2021-12-16', 'CF_EXCHNG': 559, 'CF_SOURCE': ' ', 'CF_TIME': '13:58:31', 'CF_NAME': 'TOP 25 BY VOLUME', 'DDS_DSO_ID': 8288, 'SPS_SP_RIC': '.[SPSNSDQVAE1'}}\n", - "14:58:36.670186- Add event received for .AV.O. 14: SNDL.O\n", - "14:58:36.670227- Add event received for .AV.O. 15: CALT.O\n", - "14:58:36.670259- Add event received for .AV.O. 16: NVDA.O\n", - "14:58:36.670289- Add event received for .AV.O. 17: SEAC.O\n", - "14:58:36.670319- Add event received for .AV.O. 18: PBTS.O\n", - "14:58:36.670348- Add event received for .AV.O. 19: SOFI.O\n", - "14:58:36.670377- Add event received for .AV.O. 20: LCID.O\n", - "14:58:36.670406- Add event received for .AV.O. 21: AAL.O\n", - "14:58:36.670434- Add event received for .AV.O. 22: FOUNU.O\n", - "14:58:36.671839- Add event received for .AV.O. 23: AMD.O\n", - "14:58:36.671882- Add event received for .AV.O. 24: NAKD.O\n", - "14:58:36.671911- Chain .AV.O is completely decoded.\n", - "constituents:\n", - "['KXIN.O', 'SQQQ.O', 'AVCT.O', 'FOUNW.O', 'FOUN.O', 'BCTX.O', 'AAPL.O', 'EVFM.O', 'GRTX.O', 'QQQ.O', 'TQQQ.O', 'PTPI.O', 'BMRA.O', 'FUTU.O', 'SNDL.O', 'CALT.O', 'NVDA.O', 'SEAC.O', 'PBTS.O', 'SOFI.O', 'LCID.O', 'AAL.O', 'FOUNU.O', 'AMD.O', 'NAKD.O']\n" + "['TQQQ.O', 'SNDL.O', 'CLVS.O', 'MULN.O', 'CEAD.O', 'AMD.O', 'XELA.O', 'SQQQ.O', 'AAPL.O', 'AMZN.O', 'ENDP.O', 'GRAB.O', 'NVDA.O', 'QQQ.O', 'TSLA.O', 'MREO.O', 'ADN.O', 'AAL.O', 'IMPP.O', 'HCTI.O', 'LI.O', 'SOFI.O', 'NMTR.O', 'GMVD.O', 'RIVN.O']\n" ] }, { "data": { "text/plain": [ - "" + "" ] }, - "execution_count": 22, + "execution_count": 9, "metadata": {}, "output_type": "execute_result" } @@ -409,16 +403,16 @@ }, { "cell_type": "code", - "execution_count": 23, + "execution_count": 10, "metadata": {}, "outputs": [ { "data": { "text/plain": [ - "" + "" ] }, - "execution_count": 23, + "execution_count": 10, "metadata": {}, "output_type": "execute_result" } @@ -436,7 +430,7 @@ }, { "cell_type": "code", - "execution_count": 24, + "execution_count": 11, "metadata": {}, "outputs": [], "source": [ @@ -453,7 +447,7 @@ ], "metadata": { "kernelspec": { - "display_name": "Python 3", + "display_name": "Python 3 (ipykernel)", "language": "python", "name": "python3" }, @@ -467,7 +461,7 @@ "name": "python", "nbconvert_exporter": "python", "pygments_lexer": "ipython3", - "version": "3.7.6" + "version": "3.9.7" } }, "nbformat": 4, diff --git a/Examples/2-Content/2.03-News/EX-2.03.01-News.ipynb b/Examples/2-Content/2.03-News/EX-2.03.01-News.ipynb index d06f6b9..81f8fd9 100644 --- a/Examples/2-Content/2.03-News/EX-2.03.01-News.ipynb +++ b/Examples/2-Content/2.03-News/EX-2.03.01-News.ipynb @@ -79,7 +79,10 @@ "source": [ "import refinitiv.data as rd\n", "from refinitiv.data.content import news\n", - "from datetime import timedelta" + "from datetime import timedelta\n", + "from IPython.display import HTML\n", + "import pandas as pd\n", + "pd.options.display.max_colwidth = 100" ] }, { @@ -101,7 +104,7 @@ { "data": { "text/plain": [ - "" + "" ] }, "execution_count": 3, @@ -164,135 +167,121 @@ " \n", " \n", " \n", - " versionCreated\n", - " text\n", + " headline\n", " storyId\n", " sourceCode\n", " \n", + " \n", + " versionCreated\n", + " \n", + " \n", + " \n", + " \n", " \n", " \n", " \n", - " 2021-12-16 14:07:22.682\n", - " 2021-12-16 14:07:22.682000+00:00\n", - " Apple: rinvia rientro in ufficio, chiude 3 neg...\n", - " urn:newsml:reuters.com:20211216:nDJR16HpS8:1\n", - " NS:DJN\n", + " 2023-02-01 12:30:00.244\n", + " Sophos Details First Fake Apps Found on Apple’s App Store Used by Cybercriminals for CryptoRom S...\n", + " urn:newsml:reuters.com:20230201:nGNX7yLqk8:1\n", + " NS:GNW\n", " \n", " \n", - " 2021-12-16 00:00:00.000\n", - " 2021-12-16 14:07:00+00:00\n", - " Apple: rinvia rientro in ufficio, chiude 3 neg...\n", - " urn:newsml:reuters.com:20211216:nDjc6jWgqK:1\n", + " 2023-02-01 12:30:00.000\n", + " Sophos Details First Fake Apps Found on Apple's App Store Used by Cybercriminals for CryptoRom S...\n", + " urn:newsml:reuters.com:20230201:nDjcbzTZg5:1\n", " NS:DJCP\n", " \n", " \n", - " 2021-12-16 12:37:55.257\n", - " 2021-12-16 12:37:55.257000+00:00\n", - " Tech titans 'harm choice and innovation' in sm...\n", - " urn:newsml:reuters.com:20211216:nNRAigh2t9:1\n", - " NS:TELGPH\n", + " 2023-02-01 12:07:45.000\n", + " Apple Inc. - MLS Season Pass is now available worldwide on the Apple TV app\n", + " urn:newsml:reuters.com:20230201:nNDL4P6l2c:1\n", + " NS:PUBT\n", " \n", " \n", - " 2021-12-16 11:48:07.000\n", - " 2021-12-16 11:48:07+00:00\n", - " Licencia para trinar: Apple TV+ planea un docu...\n", - " urn:newsml:reuters.com:20211216:nL1N2T10RB:1\n", - " NS:RTRS\n", - " \n", - " \n", - " 2021-12-16 11:38:56.305\n", - " 2021-12-16 11:38:56.305000+00:00\n", - " APPLE SHARES CROSS $181 PREMARKET\n", - " urn:newsml:reuters.com:20211216:nFWN2T10DJ:1\n", - " NS:RTRS\n", + " 2023-02-01 11:59:14.511\n", + " Apple and Google app stores get thumbs down from White House\n", + " urn:newsml:reuters.com:20230201:nNRAn5murh:1\n", + " NS:INDEPE\n", " \n", " \n", - " 2021-12-16 10:41:55.813\n", - " 2021-12-16 10:43:27.089000+00:00\n", - " <日経>◇韓国、「鉄の街」で新産業育成 ポスコやAppleが拠点\n", - " urn:newsml:reuters.com:20211216:nQCK2xyJXL:2\n", + " 2023-02-01 11:55:12.543\n", + " <日経>◇米政権、Apple・Googleの寡占是正へ 法整備を提案\n", + " urn:newsml:reuters.com:20230201:nQCK11lJCY:5\n", " NS:QUICK\n", " \n", " \n", - " 2021-12-16 10:33:51.915\n", - " 2021-12-16 10:33:51.915000+00:00\n", - " A file photo of the Apple Inc logo is seen out...\n", - " urn:newsml:reuters.com:20211216:nLPK1qjyzd:1\n", + " 2023-02-01 11:39:33.989\n", + " A file photo of a salesperson speaking to a customer at an Apple reseller store in Mumbai, India...\n", + " urn:newsml:reuters.com:20230201:nLPK1YbHS4:1\n", " NS:RTRS\n", " \n", " \n", - " 2021-12-16 10:05:26.297\n", - " 2021-12-16 10:05:26.297000+00:00\n", - " 2021-12-16T100503Z_1545296264_RC2MFR91U89D_RTR...\n", - " urn:newsml:reuters.com:20211216:nRON8ryh0f:1\n", + " 2023-02-01 11:18:21.000\n", + " Apple distributor Redington's Q3 profit falls as costs outpace topline growth\n", + " urn:newsml:reuters.com:20230201:nL4N34H2CT:4\n", " NS:RTRS\n", " \n", " \n", - " 2021-12-16 10:05:25.788\n", - " 2021-12-16 10:05:25.788000+00:00\n", - " 2021-12-16T100503Z_1545296264_RC2MFR91U89D_RTR...\n", - " urn:newsml:reuters.com:20211216:nRON7cwJ2b:1\n", + " 2023-02-01 11:03:25.057\n", + " The Zacks Analyst Blog Highlights Apple, Meta Platforms, Mastercard, CVS Health and Ameriprise F...\n", + " urn:newsml:reuters.com:20230201:nNRAn5mam5:1\n", + " NS:ZACKSC\n", + " \n", + " \n", + " 2023-02-01 10:52:35.586\n", + " The logos of mobile apps, Google, Amazon, Facebook, Apple and Netflix, are displayed on a screen...\n", + " urn:newsml:reuters.com:20230201:nLPK4NlphG:1\n", " NS:RTRS\n", " \n", " \n", - " 2021-12-16 10:01:38.072\n", - " 2021-12-16 10:01:38.072000+00:00\n", - " Apple iPhones, iPads can now be reset from the...\n", - " urn:newsml:reuters.com:20211216:nNRAigepbk:1\n", - " NS:INDIAE\n", + " 2023-02-01 10:43:11.290\n", + " Apple and Google app stores get thumbs down from White House\n", + " urn:newsml:reuters.com:20230201:nNRAn5m4sp:1\n", + " NS:ASSOPR\n", " \n", " \n", "\n", "" ], "text/plain": [ - " versionCreated \\\n", - "2021-12-16 14:07:22.682 2021-12-16 14:07:22.682000+00:00 \n", - "2021-12-16 00:00:00.000 2021-12-16 14:07:00+00:00 \n", - "2021-12-16 12:37:55.257 2021-12-16 12:37:55.257000+00:00 \n", - "2021-12-16 11:48:07.000 2021-12-16 11:48:07+00:00 \n", - "2021-12-16 11:38:56.305 2021-12-16 11:38:56.305000+00:00 \n", - "2021-12-16 10:41:55.813 2021-12-16 10:43:27.089000+00:00 \n", - "2021-12-16 10:33:51.915 2021-12-16 10:33:51.915000+00:00 \n", - "2021-12-16 10:05:26.297 2021-12-16 10:05:26.297000+00:00 \n", - "2021-12-16 10:05:25.788 2021-12-16 10:05:25.788000+00:00 \n", - "2021-12-16 10:01:38.072 2021-12-16 10:01:38.072000+00:00 \n", - "\n", - " text \\\n", - "2021-12-16 14:07:22.682 Apple: rinvia rientro in ufficio, chiude 3 neg... \n", - "2021-12-16 00:00:00.000 Apple: rinvia rientro in ufficio, chiude 3 neg... \n", - "2021-12-16 12:37:55.257 Tech titans 'harm choice and innovation' in sm... \n", - "2021-12-16 11:48:07.000 Licencia para trinar: Apple TV+ planea un docu... \n", - "2021-12-16 11:38:56.305 APPLE SHARES CROSS $181 PREMARKET \n", - "2021-12-16 10:41:55.813 <日経>◇韓国、「鉄の街」で新産業育成 ポスコやAppleが拠点 \n", - "2021-12-16 10:33:51.915 A file photo of the Apple Inc logo is seen out... \n", - "2021-12-16 10:05:26.297 2021-12-16T100503Z_1545296264_RC2MFR91U89D_RTR... \n", - "2021-12-16 10:05:25.788 2021-12-16T100503Z_1545296264_RC2MFR91U89D_RTR... \n", - "2021-12-16 10:01:38.072 Apple iPhones, iPads can now be reset from the... \n", + " headline \\\n", + "versionCreated \n", + "2023-02-01 12:30:00.244 Sophos Details First Fake Apps Found on Apple’s App Store Used by Cybercriminals for CryptoRom S... \n", + "2023-02-01 12:30:00.000 Sophos Details First Fake Apps Found on Apple's App Store Used by Cybercriminals for CryptoRom S... \n", + "2023-02-01 12:07:45.000 Apple Inc. - MLS Season Pass is now available worldwide on the Apple TV app \n", + "2023-02-01 11:59:14.511 Apple and Google app stores get thumbs down from White House \n", + "2023-02-01 11:55:12.543 <日経>◇米政権、Apple・Googleの寡占是正へ 法整備を提案 \n", + "2023-02-01 11:39:33.989 A file photo of a salesperson speaking to a customer at an Apple reseller store in Mumbai, India... \n", + "2023-02-01 11:18:21.000 Apple distributor Redington's Q3 profit falls as costs outpace topline growth \n", + "2023-02-01 11:03:25.057 The Zacks Analyst Blog Highlights Apple, Meta Platforms, Mastercard, CVS Health and Ameriprise F... \n", + "2023-02-01 10:52:35.586 The logos of mobile apps, Google, Amazon, Facebook, Apple and Netflix, are displayed on a screen... \n", + "2023-02-01 10:43:11.290 Apple and Google app stores get thumbs down from White House \n", "\n", " storyId \\\n", - "2021-12-16 14:07:22.682 urn:newsml:reuters.com:20211216:nDJR16HpS8:1 \n", - "2021-12-16 00:00:00.000 urn:newsml:reuters.com:20211216:nDjc6jWgqK:1 \n", - "2021-12-16 12:37:55.257 urn:newsml:reuters.com:20211216:nNRAigh2t9:1 \n", - "2021-12-16 11:48:07.000 urn:newsml:reuters.com:20211216:nL1N2T10RB:1 \n", - "2021-12-16 11:38:56.305 urn:newsml:reuters.com:20211216:nFWN2T10DJ:1 \n", - "2021-12-16 10:41:55.813 urn:newsml:reuters.com:20211216:nQCK2xyJXL:2 \n", - "2021-12-16 10:33:51.915 urn:newsml:reuters.com:20211216:nLPK1qjyzd:1 \n", - "2021-12-16 10:05:26.297 urn:newsml:reuters.com:20211216:nRON8ryh0f:1 \n", - "2021-12-16 10:05:25.788 urn:newsml:reuters.com:20211216:nRON7cwJ2b:1 \n", - "2021-12-16 10:01:38.072 urn:newsml:reuters.com:20211216:nNRAigepbk:1 \n", + "versionCreated \n", + "2023-02-01 12:30:00.244 urn:newsml:reuters.com:20230201:nGNX7yLqk8:1 \n", + "2023-02-01 12:30:00.000 urn:newsml:reuters.com:20230201:nDjcbzTZg5:1 \n", + "2023-02-01 12:07:45.000 urn:newsml:reuters.com:20230201:nNDL4P6l2c:1 \n", + "2023-02-01 11:59:14.511 urn:newsml:reuters.com:20230201:nNRAn5murh:1 \n", + "2023-02-01 11:55:12.543 urn:newsml:reuters.com:20230201:nQCK11lJCY:5 \n", + "2023-02-01 11:39:33.989 urn:newsml:reuters.com:20230201:nLPK1YbHS4:1 \n", + "2023-02-01 11:18:21.000 urn:newsml:reuters.com:20230201:nL4N34H2CT:4 \n", + "2023-02-01 11:03:25.057 urn:newsml:reuters.com:20230201:nNRAn5mam5:1 \n", + "2023-02-01 10:52:35.586 urn:newsml:reuters.com:20230201:nLPK4NlphG:1 \n", + "2023-02-01 10:43:11.290 urn:newsml:reuters.com:20230201:nNRAn5m4sp:1 \n", "\n", " sourceCode \n", - "2021-12-16 14:07:22.682 NS:DJN \n", - "2021-12-16 00:00:00.000 NS:DJCP \n", - "2021-12-16 12:37:55.257 NS:TELGPH \n", - "2021-12-16 11:48:07.000 NS:RTRS \n", - "2021-12-16 11:38:56.305 NS:RTRS \n", - "2021-12-16 10:41:55.813 NS:QUICK \n", - "2021-12-16 10:33:51.915 NS:RTRS \n", - "2021-12-16 10:05:26.297 NS:RTRS \n", - "2021-12-16 10:05:25.788 NS:RTRS \n", - "2021-12-16 10:01:38.072 NS:INDIAE " + "versionCreated \n", + "2023-02-01 12:30:00.244 NS:GNW \n", + "2023-02-01 12:30:00.000 NS:DJCP \n", + "2023-02-01 12:07:45.000 NS:PUBT \n", + "2023-02-01 11:59:14.511 NS:INDEPE \n", + "2023-02-01 11:55:12.543 NS:QUICK \n", + "2023-02-01 11:39:33.989 NS:RTRS \n", + "2023-02-01 11:18:21.000 NS:RTRS \n", + "2023-02-01 11:03:25.057 NS:ZACKSC \n", + "2023-02-01 10:52:35.586 NS:RTRS \n", + "2023-02-01 10:43:11.290 NS:ASSOPR " ] }, "execution_count": 4, @@ -340,58 +329,58 @@ " \n", " \n", " \n", - " versionCreated\n", - " text\n", + " headline\n", " storyId\n", " sourceCode\n", " \n", + " \n", + " versionCreated\n", + " \n", + " \n", + " \n", + " \n", " \n", " \n", " \n", - " 2021-12-12 14:03:30.376\n", - " 2021-12-12 14:04:28.920000+00:00\n", - " Refinitiv Newscasts - Mehr als 100 Tote durch ...\n", - " urn:newsml:reuters.com:20211212:nRTVbYQn8H:3\n", - " NS:RTRS\n", + " 2023-01-28 12:50:32.333\n", + " SERVICE ALERT - Refinitiv Eikon-Taiwan Futures - INFORMATION see page <ALERT4>\n", + " urn:newsml:reuters.com:20230105:nVEN275993:68\n", + " NS:RFT\n", " \n", " \n", - " 2021-12-12 14:01:59.511\n", - " 2021-12-12 14:01:59.511000+00:00\n", - " Refinitiv Newscasts - Sherif Abushadi, Educati...\n", - " urn:newsml:reuters.com:20211212:nRTV52Qn5y:1\n", + " 2023-01-28 10:30:03.891\n", + " Refinitiv Newscasts - Reliq Health has contracted with a current client to add an additional 30 ...\n", + " urn:newsml:reuters.com:20230128:nRTV23BL9v:1\n", " NS:RNTPC\n", " \n", " \n", - " 2021-12-12 13:27:30.891\n", - " 2021-12-12 13:49:17.245000+00:00\n", - " Refinitiv Newscasts - Renç Korzay, PrimeDAO Pr...\n", - " urn:newsml:reuters.com:20211212:nRTV71pRp8:3\n", - " NS:RNTPC\n", + " 2023-01-28 08:50:07.376\n", + " Refinitiv Newscasts - Memphis protesters demand justice after video release\n", + " urn:newsml:reuters.com:20230128:nRTV7bgGh2:11\n", + " NS:RTRS\n", " \n", " \n", "\n", "" ], "text/plain": [ - " versionCreated \\\n", - "2021-12-12 14:03:30.376 2021-12-12 14:04:28.920000+00:00 \n", - "2021-12-12 14:01:59.511 2021-12-12 14:01:59.511000+00:00 \n", - "2021-12-12 13:27:30.891 2021-12-12 13:49:17.245000+00:00 \n", + " headline \\\n", + "versionCreated \n", + "2023-01-28 12:50:32.333 SERVICE ALERT - Refinitiv Eikon-Taiwan Futures - INFORMATION see page \n", + "2023-01-28 10:30:03.891 Refinitiv Newscasts - Reliq Health has contracted with a current client to add an additional 30 ... \n", + "2023-01-28 08:50:07.376 Refinitiv Newscasts - Memphis protesters demand justice after video release \n", "\n", - " text \\\n", - "2021-12-12 14:03:30.376 Refinitiv Newscasts - Mehr als 100 Tote durch ... \n", - "2021-12-12 14:01:59.511 Refinitiv Newscasts - Sherif Abushadi, Educati... \n", - "2021-12-12 13:27:30.891 Refinitiv Newscasts - Renç Korzay, PrimeDAO Pr... \n", - "\n", - " storyId \\\n", - "2021-12-12 14:03:30.376 urn:newsml:reuters.com:20211212:nRTVbYQn8H:3 \n", - "2021-12-12 14:01:59.511 urn:newsml:reuters.com:20211212:nRTV52Qn5y:1 \n", - "2021-12-12 13:27:30.891 urn:newsml:reuters.com:20211212:nRTV71pRp8:3 \n", + " storyId \\\n", + "versionCreated \n", + "2023-01-28 12:50:32.333 urn:newsml:reuters.com:20230105:nVEN275993:68 \n", + "2023-01-28 10:30:03.891 urn:newsml:reuters.com:20230128:nRTV23BL9v:1 \n", + "2023-01-28 08:50:07.376 urn:newsml:reuters.com:20230128:nRTV7bgGh2:11 \n", "\n", " sourceCode \n", - "2021-12-12 14:03:30.376 NS:RTRS \n", - "2021-12-12 14:01:59.511 NS:RNTPC \n", - "2021-12-12 13:27:30.891 NS:RNTPC " + "versionCreated \n", + "2023-01-28 12:50:32.333 NS:RFT \n", + "2023-01-28 10:30:03.891 NS:RNTPC \n", + "2023-01-28 08:50:07.376 NS:RTRS " ] }, "execution_count": 5, @@ -444,149 +433,133 @@ " \n", " \n", " \n", - " versionCreated\n", - " text\n", + " headline\n", " storyId\n", " sourceCode\n", " \n", + " \n", + " versionCreated\n", + " \n", + " \n", + " \n", + " \n", " \n", " \n", " \n", - " 2021-12-16 14:12:50.804\n", - " 2021-12-16 14:12:50.804000+00:00\n", - " *DJ Verizon, Google Cloud to Collaborate to De...\n", - " urn:newsml:reuters.com:20211216:nDJRWfJJF:2\n", - " NS:DJN\n", + " 2023-02-01 13:00:17.674\n", + " Protegrity Data Protection Platform Now Available on Google Cloud Marketplace\n", + " urn:newsml:reuters.com:20230201:nPn5pXtY4a:1\n", + " NS:PRN\n", " \n", " \n", - " 2021-12-16 14:12:04.792\n", - " 2021-12-16 14:12:07.579000+00:00\n", - " VERIZON - ERICSSON WILL PILOT 5G EDGE WITH GOO...\n", - " urn:newsml:reuters.com:20211216:nFWN2T111V:2\n", - " NS:RTRS\n", + " 2023-02-01 13:00:00.000\n", + " Protegrity Data Protection Platform Now Available on Google Cloud Marketplace\n", + " urn:newsml:reuters.com:20230201:nDjc4SrHM9:1\n", + " NS:DJCP\n", " \n", " \n", - " 2021-12-16 14:12:04.792\n", - " 2021-12-16 14:12:04.792000+00:00\n", - " VERIZON AND GOOGLE CLOUD TO COLLABORATE TO DEL...\n", - " urn:newsml:reuters.com:20211216:nFWN2T111V:1\n", + " 2023-02-01 12:52:34.000\n", + " Resultado da Snap pode ser notícia positiva para Meta e Google\n", + " urn:newsml:reuters.com:20230201:nL1N34H0ZN:1\n", " NS:RTRS\n", " \n", " \n", - " 2021-12-16 14:12:00.706\n", - " 2021-12-16 14:12:00.706000+00:00\n", - " Press Release: Verizon and Google Cloud to col...\n", - " urn:newsml:reuters.com:20211216:nDJR5nX7Bk:2\n", - " NS:DJN\n", + " 2023-02-01 11:59:14.511\n", + " Apple and Google app stores get thumbs down from White House\n", + " urn:newsml:reuters.com:20230201:nNRAn5murh:1\n", + " NS:INDEPE\n", " \n", " \n", - " 2021-12-16 14:12:00.072\n", - " 2021-12-16 14:12:00.072000+00:00\n", - " Verizon and Google Cloud to collaborate to del...\n", - " urn:newsml:reuters.com:20211216:nGNX1CZWDy:1\n", - " NS:GNW\n", + " 2023-02-01 11:55:12.543\n", + " <日経>◇米政権、Apple・Googleの寡占是正へ 法整備を提案\n", + " urn:newsml:reuters.com:20230201:nQCK11lJCY:5\n", + " NS:QUICK\n", " \n", " \n", " ...\n", " ...\n", " ...\n", " ...\n", - " ...\n", " \n", " \n", - " 2021-12-09 21:59:48.516\n", - " 2021-12-09 21:59:48.516000+00:00\n", - " Google Executives Tell Employees They Won’t Ra...\n", - " urn:newsml:reuters.com:20211209:nRSDcbNS7T:1\n", - " NS:SIGDEV\n", + " 2023-01-25 10:54:09.990\n", + " Google to implement strict measures on legacy apps installed in new devices with Android 14\n", + " urn:newsml:reuters.com:20230125:nNRAn37ujj:1\n", + " NS:ASNEWS\n", " \n", " \n", - " 2021-12-09 21:47:38.000\n", - " 2021-12-09 21:47:38+00:00\n", - " BRIEF-Google Executives Tell Employees They Wo...\n", - " urn:newsml:reuters.com:20211209:nFWN2SU13K:1\n", - " NS:RTRS\n", + " 2023-01-25 10:30:01.063\n", + " DJ Congress on the Sidelines as U.S. Takes on Google -- WSJ\n", + " urn:newsml:reuters.com:20230125:nDJR4Wnzvy:2\n", + " NS:DJN\n", " \n", " \n", - " 2021-12-09 21:45:43.631\n", - " 2021-12-09 21:45:43.631000+00:00\n", - " GOOGLE EXECS TELL EMPLOYEES THEY WON’T RAISE P...\n", - " urn:newsml:reuters.com:20211209:nFWN2SU13K:1\n", - " NS:RTRS\n", + " 2023-01-25 10:30:00.000\n", + " DJ Congress on the Sidelines as U.S. Takes on Google -- WSJ\n", + " urn:newsml:reuters.com:20230125:nDjc4Wnzvy:2\n", + " NS:DJCP\n", " \n", " \n", - " 2021-12-09 21:34:22.525\n", - " 2021-12-09 21:34:22.525000+00:00\n", - " Google reveals Year in Search: IPL, CoWin, Tok...\n", - " urn:newsml:reuters.com:20211209:nNRAiecf22:1\n", - " NS:TIMIND\n", + " 2023-01-25 10:03:10.767\n", + " TOP STORIES MONDO: Usa contro Google, accusata di monopolio in pubblicità online\n", + " urn:newsml:reuters.com:20230125:nDJR6MFWPS:1\n", + " NS:DJN\n", " \n", " \n", - " 2021-12-09 21:34:12.294\n", - " 2021-12-09 21:34:12.294000+00:00\n", - " Google year in search 2021: Shehnaaz Gill beco...\n", - " urn:newsml:reuters.com:20211209:nNRAiecez5:1\n", - " NS:TIMIND\n", + " 2023-01-25 10:03:00.000\n", + " TOP STORIES MONDO: Usa contro Google, accusata di monopolio in pubblicità online\n", + " urn:newsml:reuters.com:20230125:nDjcx9g60:1\n", + " NS:DJCP\n", " \n", " \n", "\n", - "

350 rows × 4 columns

\n", + "

350 rows × 3 columns

\n", "" ], "text/plain": [ - " versionCreated \\\n", - "2021-12-16 14:12:50.804 2021-12-16 14:12:50.804000+00:00 \n", - "2021-12-16 14:12:04.792 2021-12-16 14:12:07.579000+00:00 \n", - "2021-12-16 14:12:04.792 2021-12-16 14:12:04.792000+00:00 \n", - "2021-12-16 14:12:00.706 2021-12-16 14:12:00.706000+00:00 \n", - "2021-12-16 14:12:00.072 2021-12-16 14:12:00.072000+00:00 \n", - "... ... \n", - "2021-12-09 21:59:48.516 2021-12-09 21:59:48.516000+00:00 \n", - "2021-12-09 21:47:38.000 2021-12-09 21:47:38+00:00 \n", - "2021-12-09 21:45:43.631 2021-12-09 21:45:43.631000+00:00 \n", - "2021-12-09 21:34:22.525 2021-12-09 21:34:22.525000+00:00 \n", - "2021-12-09 21:34:12.294 2021-12-09 21:34:12.294000+00:00 \n", - "\n", - " text \\\n", - "2021-12-16 14:12:50.804 *DJ Verizon, Google Cloud to Collaborate to De... \n", - "2021-12-16 14:12:04.792 VERIZON - ERICSSON WILL PILOT 5G EDGE WITH GOO... \n", - "2021-12-16 14:12:04.792 VERIZON AND GOOGLE CLOUD TO COLLABORATE TO DEL... \n", - "2021-12-16 14:12:00.706 Press Release: Verizon and Google Cloud to col... \n", - "2021-12-16 14:12:00.072 Verizon and Google Cloud to collaborate to del... \n", - "... ... \n", - "2021-12-09 21:59:48.516 Google Executives Tell Employees They Won’t Ra... \n", - "2021-12-09 21:47:38.000 BRIEF-Google Executives Tell Employees They Wo... \n", - "2021-12-09 21:45:43.631 GOOGLE EXECS TELL EMPLOYEES THEY WON’T RAISE P... \n", - "2021-12-09 21:34:22.525 Google reveals Year in Search: IPL, CoWin, Tok... \n", - "2021-12-09 21:34:12.294 Google year in search 2021: Shehnaaz Gill beco... \n", + " headline \\\n", + "versionCreated \n", + "2023-02-01 13:00:17.674 Protegrity Data Protection Platform Now Available on Google Cloud Marketplace \n", + "2023-02-01 13:00:00.000 Protegrity Data Protection Platform Now Available on Google Cloud Marketplace \n", + "2023-02-01 12:52:34.000 Resultado da Snap pode ser notícia positiva para Meta e Google \n", + "2023-02-01 11:59:14.511 Apple and Google app stores get thumbs down from White House \n", + "2023-02-01 11:55:12.543 <日経>◇米政権、Apple・Googleの寡占是正へ 法整備を提案 \n", + "... ... \n", + "2023-01-25 10:54:09.990 Google to implement strict measures on legacy apps installed in new devices with Android 14 \n", + "2023-01-25 10:30:01.063 DJ Congress on the Sidelines as U.S. Takes on Google -- WSJ \n", + "2023-01-25 10:30:00.000 DJ Congress on the Sidelines as U.S. Takes on Google -- WSJ \n", + "2023-01-25 10:03:10.767 TOP STORIES MONDO: Usa contro Google, accusata di monopolio in pubblicità online \n", + "2023-01-25 10:03:00.000 TOP STORIES MONDO: Usa contro Google, accusata di monopolio in pubblicità online \n", "\n", " storyId \\\n", - "2021-12-16 14:12:50.804 urn:newsml:reuters.com:20211216:nDJRWfJJF:2 \n", - "2021-12-16 14:12:04.792 urn:newsml:reuters.com:20211216:nFWN2T111V:2 \n", - "2021-12-16 14:12:04.792 urn:newsml:reuters.com:20211216:nFWN2T111V:1 \n", - "2021-12-16 14:12:00.706 urn:newsml:reuters.com:20211216:nDJR5nX7Bk:2 \n", - "2021-12-16 14:12:00.072 urn:newsml:reuters.com:20211216:nGNX1CZWDy:1 \n", + "versionCreated \n", + "2023-02-01 13:00:17.674 urn:newsml:reuters.com:20230201:nPn5pXtY4a:1 \n", + "2023-02-01 13:00:00.000 urn:newsml:reuters.com:20230201:nDjc4SrHM9:1 \n", + "2023-02-01 12:52:34.000 urn:newsml:reuters.com:20230201:nL1N34H0ZN:1 \n", + "2023-02-01 11:59:14.511 urn:newsml:reuters.com:20230201:nNRAn5murh:1 \n", + "2023-02-01 11:55:12.543 urn:newsml:reuters.com:20230201:nQCK11lJCY:5 \n", "... ... \n", - "2021-12-09 21:59:48.516 urn:newsml:reuters.com:20211209:nRSDcbNS7T:1 \n", - "2021-12-09 21:47:38.000 urn:newsml:reuters.com:20211209:nFWN2SU13K:1 \n", - "2021-12-09 21:45:43.631 urn:newsml:reuters.com:20211209:nFWN2SU13K:1 \n", - "2021-12-09 21:34:22.525 urn:newsml:reuters.com:20211209:nNRAiecf22:1 \n", - "2021-12-09 21:34:12.294 urn:newsml:reuters.com:20211209:nNRAiecez5:1 \n", + "2023-01-25 10:54:09.990 urn:newsml:reuters.com:20230125:nNRAn37ujj:1 \n", + "2023-01-25 10:30:01.063 urn:newsml:reuters.com:20230125:nDJR4Wnzvy:2 \n", + "2023-01-25 10:30:00.000 urn:newsml:reuters.com:20230125:nDjc4Wnzvy:2 \n", + "2023-01-25 10:03:10.767 urn:newsml:reuters.com:20230125:nDJR6MFWPS:1 \n", + "2023-01-25 10:03:00.000 urn:newsml:reuters.com:20230125:nDjcx9g60:1 \n", "\n", " sourceCode \n", - "2021-12-16 14:12:50.804 NS:DJN \n", - "2021-12-16 14:12:04.792 NS:RTRS \n", - "2021-12-16 14:12:04.792 NS:RTRS \n", - "2021-12-16 14:12:00.706 NS:DJN \n", - "2021-12-16 14:12:00.072 NS:GNW \n", + "versionCreated \n", + "2023-02-01 13:00:17.674 NS:PRN \n", + "2023-02-01 13:00:00.000 NS:DJCP \n", + "2023-02-01 12:52:34.000 NS:RTRS \n", + "2023-02-01 11:59:14.511 NS:INDEPE \n", + "2023-02-01 11:55:12.543 NS:QUICK \n", "... ... \n", - "2021-12-09 21:59:48.516 NS:SIGDEV \n", - "2021-12-09 21:47:38.000 NS:RTRS \n", - "2021-12-09 21:45:43.631 NS:RTRS \n", - "2021-12-09 21:34:22.525 NS:TIMIND \n", - "2021-12-09 21:34:12.294 NS:TIMIND \n", + "2023-01-25 10:54:09.990 NS:ASNEWS \n", + "2023-01-25 10:30:01.063 NS:DJN \n", + "2023-01-25 10:30:00.000 NS:DJCP \n", + "2023-01-25 10:03:10.767 NS:DJN \n", + "2023-01-25 10:03:00.000 NS:DJCP \n", "\n", - "[350 rows x 4 columns]" + "[350 rows x 3 columns]" ] }, "execution_count": 6, @@ -617,62 +590,101 @@ "name": "stdout", "output_type": "stream", "text": [ - "Google Doodle marks birthday of Spanish ocean scientist María de los Ángeles Alvariño González \n", - "\n", - "For best results when printing this announcement, please click on link below:\n", - "http://newsfile.refinitiv.com/getnewsfile/v1/story?guid=urn:newsml:reuters.com:20211003:nNRAgvhyiu&default-theme=true\n", - "\n", - "\n", - "The Google Doodle today (3 OCtober) celebrates the 105th birthday of\n", - "Spanish-American professor and marine research biologist María de los\n", - "Ángeles Alvariño González, who is regarded as one of the most important\n", - "Spanish scientists of all time.\n", - "\n", - "Born in 1916, her love of natural history began with her father's library and\n", - "deepened as she pursued coastline oceanography research.\n", - "\n", - "Although the Spanish Institute of Oceanography (IEO) only accepted men at the\n", - "time, her university work impressed the organization so much that they\n", - "appointed her as a marine biologist in 1952.\n", - "\n", - "Based in Vigo, she began her pioneering research on zooplankton, tiny\n", - "organisms that serve as the foundation of the oceanic food chain and\n", - "identified some species to be the best indicators of ocean health.\n", - "\n", - "In 1953, the British Council awarded Ángeles Alvariño a fellowship that\n", - "resulted in her becoming the first woman to work as a scientist aboard a\n", - "British research vessel.\n", - "\n", - "Following several expeditions, she furthered her studies in the United States\n", - "where she retired as one of the world's most prestigious marine biologists in\n", - "1987.\n", - "\n", - "During her career she discovered 22 new species of zooplankton and published\n", - "over 100 scientific papers. Even today she is the only Spanish scientist of\n", - "1,000 in the \"Encyclopedia of World Scientists,\" and a modern research vessel\n", - "in IEO's fleet bears her name.\n", - "\n", - "Read More\n", - "\n", - "AP News Digest 6:30 a.m.\n", - "(https://www.independent.co.uk/news/world/europe/joe-biden-communist-party-east-african-covid-child-b1931394.html)\n", - "\n", - "La Palma volcano turns 'much more aggressive' and blows open new fissures\n", - "(https://www.independent.co.uk/news/world/europe/la-palma-volcano-eruption-fissures-b1931367.html)\n", - "\n", - "How security fears for Rutte revealed power of Dutch drug gangs\n", - "(https://www.independent.co.uk/independentpremium/rutte-netherlands-drug-gangs-gangsters-b1931165.html)\n", - "\n", - "\n", - "\n", - "Copyright © 2021 Independent.co.ukk. All rights reserved.\n" + "Protegrity Data Protection Platform Now Available on Google Cloud Marketplace \n", + "\n" ] + }, + { + "data": { + "text/html": [ + "\n", + "\n", + "\n", + "\n", + "Protegrity Data Protection Platform Now Available on Google Cloud Marketplace\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "
\n", + "

Protegrity Data Protection Platform Now Available on Google Cloud Marketplace

\n", + "

PR Newswire

\n", + "
\n", + "\n", + "
\n", + "\n", + "

Google Cloud Platform Customers now have access to Protegrity's industry-leading data security and privacy platform

\n", + "

SALT LAKE CITY, Feb. 1, 2023 /PRNewswire/ -- Protegrity, a global leader in data-centric security, today announced that its proprietary data protection platform is now available in the Google Cloud Marketplace. This development allows Google Cloud Platform customers to leverage advanced data security and privacy functionality as they move, store and use critical data in the cloud.

\n", + "\n", + "
\n", + "

\n", + " \n", + " \"https://www.protegrity.com/\n", + " \n", + "

\n", + "\n", + "
\n", + "

\"The rapidly evolving threat landscape coupled with a complex and disparate regulatory environment has enterprise cloud security teams on edge,\" said Brad Rouse, Chief Revenue Officer at Protegrity. \"This is an important step towards providing customers easy access to advanced data-protection capabilities that ensure compliance and security for sensitive data.\"

\n", + "

Protegrity's Data Protection Platform secures data and protects its privacy in motion, at rest and in use across hybrid and multicloud environments. The platform's cutting-edge capabilities allow customers to choose the form and type of fine-grained data protection they need, including format preserving encryption, data masking, anonymization and vaultless tokenization.

\n", + "

\"As security threats become more sophisticated, organizations need solutions that enable their teams to safely collaborate and share data in protected, secure environments,\" said Dai Vu, Managing Director, Marketplace & ISV GMT Programs, Google Cloud. \"Bringing its Data Protection Platform to Google Cloud Marketplace demonstrates Protegrity's commitment to providing customers with the technologies needed to safeguard sensitive information as they innovate in the cloud.\"

\n", + "

Google Cloud customers can transact with any part of the Protegrity platform using a Google Cloud Marketplace private offer. They can choose any Protegrity product that runs on the Google Cloud Platform towards fulfilling their committed spend with Google Cloud. This means customers can choose to run ESA, DSG, and Cloud Protect for Snowflake on Google Cloud, among others. Google Cloud customers have access to private offers, allowing them to customize their Protegrity solution on Google Cloud Marketplace.

\n", + "

Protegrity Data Protection Platform's unique single pane of glass view allows businesses in the banking, financial services, insurance, travel and retail industries to streamline their security operations and close any gaps across disparate platforms. The platform plays a critical role in enabling secure cloud migration, multi-cloud deployments, data sharing and collaboration across all major cloud providers including Google Cloud Platform, Amazon Web Services, Microsoft Azure and Oracle Cloud.

\n", + "

Follow Protegrity

\n", + "

Twitter: @Protegrity
LinkedIn: linkedin.com/company/protegrity/

\n", + "

About Protegrity

\n", + "

Protegrity is a global leader in data security. With the Protegrity Data Platform, enterprises can secure their data wherever it is, control how it's protected, and have confidence that it is safe, even if a breach occurs. With the most comprehensive and flexible range of data protection methods, data is not just secure, but ready to be used. Whether encrypting, tokenizing, or applying privacy models, Protegrity protects data at the speed of business. Deep partner integrations with Snowflake, Amazon Redshift, Teradata, Oracle, Microsoft SQL Server, Cloudera, and Databricks ensure that data remains fully protected in hybrid-cloud, multi-cloud, and on-premises environments. Today, Protegrity protects the data of the world's largest banks, the top health insurance providers, and the world's leading multinational companies. With more than two decades of industry-leading innovation, Protegrity allows businesses to tap into the value of their data and accelerate digital transformation.

\n", + "

For more information, visit Protegrity.com.

\n", + "\n", + "
\n", + "
\n", + "

\"Cision\" View original content to download multimedia:https://www.prnewswire.com/news-releases/protegrity-data-protection-platform-now-available-on-google-cloud-marketplace-301735189.html

\n", + "

SOURCE Protegrity

\n", + "
\n", + "\n", + "" + ], + "text/plain": [ + "" + ] + }, + "execution_count": 7, + "metadata": {}, + "output_type": "execute_result" } ], "source": [ - "response = news.story.Definition(\"urn:newsml:reuters.com:20211003:nNRAgvhyiu:1\").get_data()\n", + "response = news.story.Definition(\"urn:newsml:reuters.com:20230201:nPn5pXtY4a:1\").get_data()\n", "print(response.data.story.title, '\\n')\n", - "print(response.data.story.content)" + "HTML(response.data.story.content.html)" ] }, { @@ -704,7 +716,7 @@ ], "metadata": { "kernelspec": { - "display_name": "Python 3", + "display_name": "Python 3 (ipykernel)", "language": "python", "name": "python3" }, @@ -718,7 +730,7 @@ "name": "python", "nbconvert_exporter": "python", "pygments_lexer": "ipython3", - "version": "3.7.6" + "version": "3.9.7" } }, "nbformat": 4, diff --git a/Examples/2-Content/2.04-ESG/EX-2.04.01-ESG.ipynb b/Examples/2-Content/2.04-ESG/EX-2.04.01-ESG.ipynb index fbc320e..8c59866 100644 --- a/Examples/2-Content/2.04-ESG/EX-2.04.01-ESG.ipynb +++ b/Examples/2-Content/2.04-ESG/EX-2.04.01-ESG.ipynb @@ -41,7 +41,9 @@ }, { "cell_type": "markdown", - "metadata": {}, + "metadata": { + "tags": [] + }, "source": [ "## Set the configuration file location\n", "For a better ease of use, you have the option to set initialization parameters of the Refinitiv Data Library in the _refinitiv-data.config.json_ configuration file. This file must be located beside your notebook, in your user folder or in a folder defined by the _RD_LIB_CONFIG_PATH_ environment variable. The _RD_LIB_CONFIG_PATH_ environment variable is the option used by this series of examples. The following code sets this environment variable. " @@ -2369,7 +2371,7 @@ ], "metadata": { "kernelspec": { - "display_name": "Python 3", + "display_name": "Python 3 (ipykernel)", "language": "python", "name": "python3" }, @@ -2383,7 +2385,7 @@ "name": "python", "nbconvert_exporter": "python", "pygments_lexer": "ipython3", - "version": "3.7.6" + "version": "3.9.7" } }, "nbformat": 4, diff --git a/Examples/3-Delivery/3.03-Bulk/EX-3.03.03-Bulk-PackageManager.ipynb b/Examples/2-Content/2.04-ESG/EX-2.04.02-ESG-Bulk.ipynb similarity index 76% rename from Examples/3-Delivery/3.03-Bulk/EX-3.03.03-Bulk-PackageManager.ipynb rename to Examples/2-Content/2.04-ESG/EX-2.04.02-ESG-Bulk.ipynb index 71ad758..8ee18fe 100644 --- a/Examples/3-Delivery/3.03-Bulk/EX-3.03.03-Bulk-PackageManager.ipynb +++ b/Examples/2-Content/2.04-ESG/EX-2.04.02-ESG-Bulk.ipynb @@ -4,19 +4,14 @@ "cell_type": "markdown", "metadata": {}, "source": [ - "----\n", - "\n", - "\n", - "# Data Library for Python\n", - "\n", - "----" + "# Refinitiv Data Library for Python" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ - "## Delivery layer - Bulk - Package Manager\n", + "## Content layer - Bulk - Package Manager\n", "This notebook demonstrates how to use the Refinitiv Data Library to retrieve data from Refinitiv Data Platform bulk feeds. In this example you will see how to use the bulk Package Manager of the Delivery layer to:\n", " - Download ESG bulk files\n", " - Populate a database with their content\n", @@ -29,7 +24,10 @@ }, { "cell_type": "markdown", - "metadata": {}, + "metadata": { + "jp-MarkdownHeadingCollapsed": true, + "tags": [] + }, "source": [ "#### Learn more\n", "\n", @@ -48,7 +46,9 @@ }, { "cell_type": "markdown", - "metadata": {}, + "metadata": { + "tags": [] + }, "source": [ "## Set the configuration file location\n", "For a better ease of use, you have the option to set initialization parameters of the Refinitiv Data Library in the _refinitiv-data.config.json_ configuration file. This file must be located beside your notebook, in your user folder or in a folder defined by the _RD_LIB_CONFIG_PATH_ environment variable. The _RD_LIB_CONFIG_PATH_ environment variable is the option used by this series of examples. The following code sets this environment variable. " @@ -73,12 +73,12 @@ }, { "cell_type": "code", - "execution_count": 2, + "execution_count": 1, "metadata": {}, "outputs": [], "source": [ "import refinitiv.data as rd\n", - "from refinitiv.data.delivery import bulk" + "from refinitiv.data.content.esg import bulk" ] }, { @@ -92,16 +92,16 @@ }, { "cell_type": "code", - "execution_count": 3, + "execution_count": 2, "metadata": {}, "outputs": [ { "data": { "text/plain": [ - "" + "" ] }, - "execution_count": 3, + "execution_count": 2, "metadata": {}, "output_type": "execute_result" } @@ -126,7 +126,7 @@ }, { "cell_type": "code", - "execution_count": 4, + "execution_count": 3, "metadata": { "tags": [] }, @@ -134,16 +134,16 @@ { "data": { "text/plain": [ - "" + "" ] }, - "execution_count": 4, + "execution_count": 3, "metadata": {}, "output_type": "execute_result" } ], "source": [ - "rd.load_config(\"./refinitiv-data.bulk.config.json\")" + "rd.load_config(\"refinitiv-data.bulk.config.json\")" ] }, { @@ -156,13 +156,13 @@ }, { "cell_type": "code", - "execution_count": 5, + "execution_count": 4, "metadata": { "tags": [] }, "outputs": [], "source": [ - "pkg_manager = rd.delivery.bulk.PackageManager('esg.standard_scores')" + "pkg_manager = bulk.PackageManager('esg.standard_scores')" ] }, { @@ -175,7 +175,7 @@ }, { "cell_type": "code", - "execution_count": 6, + "execution_count": 5, "metadata": {}, "outputs": [], "source": [ @@ -193,7 +193,7 @@ }, { "cell_type": "code", - "execution_count": 7, + "execution_count": 6, "metadata": { "pycharm": { "name": "#%%\n" @@ -213,7 +213,7 @@ }, { "cell_type": "code", - "execution_count": 8, + "execution_count": 7, "metadata": {}, "outputs": [ { @@ -251,68 +251,68 @@ " \n", " \n", " 0\n", - " Southwest Securities Co Ltd\n", - " 2021-12-05\n", + " null\n", + " 2022-06-19\n", " 4295865175\n", - " 2018-12-31T00:00:00.000Z\n", - " 0.35004234242517784\n", - " 0.35004234242517784\n", - " 0.018253968253968234\n", - " 0.1190817000660648\n", - " 0.6446122860020144\n", + " 2019-12-31T00:00:00.000Z\n", + " 0.29947279270624544\n", + " 0.29947279270624544\n", + " 0.01709401709401708\n", + " 0.18333944617641684\n", + " 0.48225458468176935\n", " \n", " \n", " 1\n", - " Southwest Securities Co Ltd\n", - " 2021-12-05\n", + " null\n", + " 2022-06-19\n", " 4295865175\n", - " 2019-12-31T00:00:00.000Z\n", - " 0.29754835714404315\n", - " 0.29754835714404315\n", - " 0.018822100789313883\n", - " 0.1791604892512974\n", - " 0.4811382113821141\n", + " 2020-12-31T00:00:00.000Z\n", + " 0.24168438802878833\n", + " 0.24168438802878833\n", + " 0.018518518518518497\n", + " 0.246007821411113\n", + " 0.3049832495812397\n", " \n", " \n", " 2\n", - " Southwest Securities Co Ltd\n", - " 2021-12-05\n", + " null\n", + " 2022-06-19\n", " 4295865175\n", - " 2020-12-31T00:00:00.000Z\n", - " 0.27082704253620765\n", - " 0.27082704253620765\n", - " 0.02034428794992173\n", - " 0.2417921814181757\n", - " 0.37049019607843153\n", + " 2021-12-31T00:00:00.000Z\n", + " 0.1533037065733652\n", + " 0.1533037065733652\n", + " 0.0173160173160173\n", + " 0.22050405469868026\n", + " 0.13735305271141454\n", " \n", " \n", "\n", "" ], "text/plain": [ - " OrganizationName InsertDate Instrument \\\n", - "0 Southwest Securities Co Ltd 2021-12-05 4295865175 \n", - "1 Southwest Securities Co Ltd 2021-12-05 4295865175 \n", - "2 Southwest Securities Co Ltd 2021-12-05 4295865175 \n", + " OrganizationName InsertDate Instrument PeriodEndDate \\\n", + "0 null 2022-06-19 4295865175 2019-12-31T00:00:00.000Z \n", + "1 null 2022-06-19 4295865175 2020-12-31T00:00:00.000Z \n", + "2 null 2022-06-19 4295865175 2021-12-31T00:00:00.000Z \n", "\n", - " PeriodEndDate TR.TRESGCScore TR.TRESGScore \\\n", - "0 2018-12-31T00:00:00.000Z 0.35004234242517784 0.35004234242517784 \n", - "1 2019-12-31T00:00:00.000Z 0.29754835714404315 0.29754835714404315 \n", - "2 2020-12-31T00:00:00.000Z 0.27082704253620765 0.27082704253620765 \n", + " TR.TRESGCScore TR.TRESGScore TR.EnvironmentPillarScore \\\n", + "0 0.29947279270624544 0.29947279270624544 0.01709401709401708 \n", + "1 0.24168438802878833 0.24168438802878833 0.018518518518518497 \n", + "2 0.1533037065733652 0.1533037065733652 0.0173160173160173 \n", "\n", - " TR.EnvironmentPillarScore TR.SocialPillarScore TR.GovernancePillarScore \n", - "0 0.018253968253968234 0.1190817000660648 0.6446122860020144 \n", - "1 0.018822100789313883 0.1791604892512974 0.4811382113821141 \n", - "2 0.02034428794992173 0.2417921814181757 0.37049019607843153 " + " TR.SocialPillarScore TR.GovernancePillarScore \n", + "0 0.18333944617641684 0.48225458468176935 \n", + "1 0.246007821411113 0.3049832495812397 \n", + "2 0.22050405469868026 0.13735305271141454 " ] }, - "execution_count": 8, + "execution_count": 7, "metadata": {}, "output_type": "execute_result" } ], "source": [ - "response = rd.delivery.bulk.Definition(\"esg.standard_scores\", universe = \"4295865175\").get_db_data()\n", + "response = bulk.Definition(\"esg.standard_scores\", universe = \"4295865175\").get_db_data()\n", "response.data.df" ] }, @@ -332,7 +332,7 @@ }, { "cell_type": "code", - "execution_count": 9, + "execution_count": 8, "metadata": { "pycharm": { "name": "#%%\n" @@ -352,7 +352,7 @@ }, { "cell_type": "code", - "execution_count": 8, + "execution_count": null, "metadata": { "pycharm": { "name": "#%%\n" @@ -372,7 +372,7 @@ }, { "cell_type": "code", - "execution_count": 12, + "execution_count": 10, "metadata": {}, "outputs": [], "source": [ @@ -388,7 +388,7 @@ }, { "cell_type": "code", - "execution_count": 10, + "execution_count": 11, "metadata": { "pycharm": { "name": "#%%\n" @@ -409,7 +409,7 @@ ], "metadata": { "kernelspec": { - "display_name": "Python 3", + "display_name": "Python 3 (ipykernel)", "language": "python", "name": "python3" }, @@ -423,7 +423,7 @@ "name": "python", "nbconvert_exporter": "python", "pygments_lexer": "ipython3", - "version": "3.7.6" + "version": "3.9.7" } }, "nbformat": 4, diff --git a/Examples/3-Delivery/3.03-Bulk/refinitiv-data.bulk.config.json b/Examples/2-Content/2.04-ESG/refinitiv-data.bulk.config.json similarity index 79% rename from Examples/3-Delivery/3.03-Bulk/refinitiv-data.bulk.config.json rename to Examples/2-Content/2.04-ESG/refinitiv-data.bulk.config.json index fe1e9e2..a0305a8 100644 --- a/Examples/3-Delivery/3.03-Bulk/refinitiv-data.bulk.config.json +++ b/Examples/2-Content/2.04-ESG/refinitiv-data.bulk.config.json @@ -3,8 +3,8 @@ "esg": { "standard_scores": { "package": { - "bucket": "ESG", - "name": "RFT-ESG-Scores-Wealth-Standard", + "bucket": "bulk-ESG", + "name": "Bulk-ESG-Global-Scores-Wealth-Standard-v1", "download": { "path": "./downloads/esg/standard_scores", "auto-retry": { @@ -29,9 +29,9 @@ "check-if-exists-query": "SELECT name FROM sqlite_master WHERE type='table'" } ], - "search-query": "SELECT * FROM MY_STANDARD_SCORES_TABLE WHERE INSTRUMENT IN #universe#", + "search-query": "SELECT * FROM MY_STANDARD_SCORES_TABLE WHERE INSTRUMENT IN #{universe}", "insert-queries": [ - "REPLACE INTO MY_STANDARD_SCORES_TABLE(ORGANIZATION, INSERT_DATE, INSTRUMENT, PERIOD_END_DATE, ESG_C_SCORE, ESG_SCORE,ENVIRONMENT_PILLAR_SCORE, SOCIAL_PILLAR_SCORE, GOVERNANCE_PILLAR_SCORE)VALUES ('#Fields.ESGOrganization.Names.Name.OrganizationName.0.OrganizationNormalizedName#', '#File.DateTime#','#Fields.StatementDetails.OrganizationId#', '#Fields.StatementDetails.FinancialPeriodEndDate#','#Fields.ESGScores.ESGCombinedScore.Value#', '#Fields.ESGScores.ESGScore.Value#','#Fields.ESGScores.EnvironmentPillarScore.Value#', '#Fields.ESGScores.SocialPillarScore.Value#','#Fields.ESGScores.GovernancePillarScore.Value#')" + "REPLACE INTO MY_STANDARD_SCORES_TABLE(ORGANIZATION, INSERT_DATE, INSTRUMENT, PERIOD_END_DATE, ESG_C_SCORE, ESG_SCORE,ENVIRONMENT_PILLAR_SCORE, SOCIAL_PILLAR_SCORE, GOVERNANCE_PILLAR_SCORE)VALUES ('#{Fields.ESGOrganization.Names.Name.OrganizationName.0.OrganizationNormalizedName}', '#{File.DateTime}','#{Fields.StatementDetails.OrganizationId}', '#{Fields.StatementDetails.FinancialPeriodEndDate}','#{Fields.ESGScores.ESGCombinedScore.Value}', '#{Fields.ESGScores.ESGScore.Value}','#{Fields.ESGScores.EnvironmentPillarScore.Value}', '#{Fields.ESGScores.SocialPillarScore.Value}','#{Fields.ESGScores.GovernancePillarScore.Value}')" ], "stop-on-error": false, "clean-up-queries": [ @@ -51,5 +51,5 @@ } } } - } + } } diff --git a/Examples/2-Content/2.06-Search/EX-2.06.01-Search.ipynb b/Examples/2-Content/2.06-Search/EX-2.06.01-Search.ipynb index c1e732b..ee4804e 100644 --- a/Examples/2-Content/2.06-Search/EX-2.06.01-Search.ipynb +++ b/Examples/2-Content/2.06-Search/EX-2.06.01-Search.ipynb @@ -66,7 +66,7 @@ }, { "cell_type": "code", - "execution_count": 2, + "execution_count": 1, "metadata": {}, "outputs": [], "source": [ @@ -85,16 +85,16 @@ }, { "cell_type": "code", - "execution_count": 3, + "execution_count": 2, "metadata": {}, "outputs": [ { "data": { "text/plain": [ - "" + "" ] }, - "execution_count": 3, + "execution_count": 2, "metadata": {}, "output_type": "execute_result" } @@ -119,7 +119,7 @@ }, { "cell_type": "code", - "execution_count": 4, + "execution_count": 3, "metadata": {}, "outputs": [ { @@ -143,125 +143,137 @@ " \n", " \n", " \n", - " RIC\n", - " PI\n", " BusinessEntity\n", - " PermID\n", " DocumentTitle\n", + " PermID\n", + " PI\n", + " RIC\n", " \n", " \n", " \n", " \n", " 0\n", - " 459200JQ5=\n", - " 0x00102c28b5f20b58\n", " INSTRUMENTxFIXEDINCOMExGOVCORP\n", - " 46642939296\n", " International Business Machines Corp, Plain Va...\n", + " 46637038358\n", + " 0x00102c80bf6b046c\n", + " 459200JC6=\n", " \n", " \n", " 1\n", - " 459200JX0=\n", - " 0x00102c2452251a75\n", " INSTRUMENTxFIXEDINCOMExGOVCORP\n", - " 192841929423\n", " International Business Machines Corp, Plain Va...\n", + " 192826899363\n", + " 0x00102c53ff1f1897\n", + " US194445601=\n", " \n", " \n", " 2\n", - " 459200HG9=\n", - " 0x0004050e34388b88\n", " INSTRUMENTxFIXEDINCOMExGOVCORP\n", - " 44640212240\n", " International Business Machines Corp, Plain Va...\n", + " 44657843041\n", + " 0x0004051bd47954e3\n", + " US114316318=\n", " \n", " \n", " 3\n", - " US127166528=\n", - " 0x00102c05c4dd0222\n", " INSTRUMENTxFIXEDINCOMExGOVCORP\n", - " 46635711098\n", " International Business Machines Corp, Plain Va...\n", + " 44649129642\n", + " 0x00040513a4865c6c\n", + " 459200HP9=\n", " \n", " \n", " 4\n", - " 459200JC6=\n", - " 0x00102c80bf6b046c\n", " INSTRUMENTxFIXEDINCOMExGOVCORP\n", - " 46637038358\n", " International Business Machines Corp, Plain Va...\n", + " 44653695161\n", + " 0x00040517bba31719\n", + " 459200HU8=\n", " \n", " \n", " 5\n", - " US194445601=\n", - " 0x00102c53ff1f1897\n", " INSTRUMENTxFIXEDINCOMExGOVCORP\n", - " 192826899363\n", " International Business Machines Corp, Plain Va...\n", + " 192841929400\n", + " 0x00102c2052251a71\n", + " 459200JY8=\n", " \n", " \n", " 6\n", - " US114316318=\n", - " 0x0004051bd47954e3\n", " INSTRUMENTxFIXEDINCOMExGOVCORP\n", - " 44657843041\n", " International Business Machines Corp, Plain Va...\n", + " 46638470074\n", + " 0x00102cf964da067d\n", + " US137584123=\n", " \n", " \n", " 7\n", - " 459200HP9=\n", - " 0x00040513a4865c6c\n", " INSTRUMENTxFIXEDINCOMExGOVCORP\n", - " 44649129642\n", " International Business Machines Corp, Plain Va...\n", + " 192826895881\n", + " 0x00102c8de61f1850\n", + " US194445610=\n", " \n", " \n", " 8\n", - " 459200HU8=\n", - " 0x00040517bba31719\n", " INSTRUMENTxFIXEDINCOMExGOVCORP\n", - " 44653695161\n", " International Business Machines Corp, Plain Va...\n", + " 46644611190\n", + " 0x00102c00c0900d61\n", + " US161784508=\n", " \n", " \n", " 9\n", - " 459200JY8=\n", - " 0x00102c2052251a71\n", " INSTRUMENTxFIXEDINCOMExGOVCORP\n", - " 192841929400\n", " International Business Machines Corp, Plain Va...\n", + " 232796002153\n", + " 0x00102cfffd953398\n", + " 459200KS9=\n", " \n", " \n", "\n", "" ], "text/plain": [ - " RIC PI BusinessEntity \\\n", - "0 459200JQ5= 0x00102c28b5f20b58 INSTRUMENTxFIXEDINCOMExGOVCORP \n", - "1 459200JX0= 0x00102c2452251a75 INSTRUMENTxFIXEDINCOMExGOVCORP \n", - "2 459200HG9= 0x0004050e34388b88 INSTRUMENTxFIXEDINCOMExGOVCORP \n", - "3 US127166528= 0x00102c05c4dd0222 INSTRUMENTxFIXEDINCOMExGOVCORP \n", - "4 459200JC6= 0x00102c80bf6b046c INSTRUMENTxFIXEDINCOMExGOVCORP \n", - "5 US194445601= 0x00102c53ff1f1897 INSTRUMENTxFIXEDINCOMExGOVCORP \n", - "6 US114316318= 0x0004051bd47954e3 INSTRUMENTxFIXEDINCOMExGOVCORP \n", - "7 459200HP9= 0x00040513a4865c6c INSTRUMENTxFIXEDINCOMExGOVCORP \n", - "8 459200HU8= 0x00040517bba31719 INSTRUMENTxFIXEDINCOMExGOVCORP \n", - "9 459200JY8= 0x00102c2052251a71 INSTRUMENTxFIXEDINCOMExGOVCORP \n", + " BusinessEntity \\\n", + "0 INSTRUMENTxFIXEDINCOMExGOVCORP \n", + "1 INSTRUMENTxFIXEDINCOMExGOVCORP \n", + "2 INSTRUMENTxFIXEDINCOMExGOVCORP \n", + "3 INSTRUMENTxFIXEDINCOMExGOVCORP \n", + "4 INSTRUMENTxFIXEDINCOMExGOVCORP \n", + "5 INSTRUMENTxFIXEDINCOMExGOVCORP \n", + "6 INSTRUMENTxFIXEDINCOMExGOVCORP \n", + "7 INSTRUMENTxFIXEDINCOMExGOVCORP \n", + "8 INSTRUMENTxFIXEDINCOMExGOVCORP \n", + "9 INSTRUMENTxFIXEDINCOMExGOVCORP \n", + "\n", + " DocumentTitle PermID \\\n", + "0 International Business Machines Corp, Plain Va... 46637038358 \n", + "1 International Business Machines Corp, Plain Va... 192826899363 \n", + "2 International Business Machines Corp, Plain Va... 44657843041 \n", + "3 International Business Machines Corp, Plain Va... 44649129642 \n", + "4 International Business Machines Corp, Plain Va... 44653695161 \n", + "5 International Business Machines Corp, Plain Va... 192841929400 \n", + "6 International Business Machines Corp, Plain Va... 46638470074 \n", + "7 International Business Machines Corp, Plain Va... 192826895881 \n", + "8 International Business Machines Corp, Plain Va... 46644611190 \n", + "9 International Business Machines Corp, Plain Va... 232796002153 \n", "\n", - " PermID DocumentTitle \n", - "0 46642939296 International Business Machines Corp, Plain Va... \n", - "1 192841929423 International Business Machines Corp, Plain Va... \n", - "2 44640212240 International Business Machines Corp, Plain Va... \n", - "3 46635711098 International Business Machines Corp, Plain Va... \n", - "4 46637038358 International Business Machines Corp, Plain Va... \n", - "5 192826899363 International Business Machines Corp, Plain Va... \n", - "6 44657843041 International Business Machines Corp, Plain Va... \n", - "7 44649129642 International Business Machines Corp, Plain Va... \n", - "8 44653695161 International Business Machines Corp, Plain Va... \n", - "9 192841929400 International Business Machines Corp, Plain Va... " + " PI RIC \n", + "0 0x00102c80bf6b046c 459200JC6= \n", + "1 0x00102c53ff1f1897 US194445601= \n", + "2 0x0004051bd47954e3 US114316318= \n", + "3 0x00040513a4865c6c 459200HP9= \n", + "4 0x00040517bba31719 459200HU8= \n", + "5 0x00102c2052251a71 459200JY8= \n", + "6 0x00102cf964da067d US137584123= \n", + "7 0x00102c8de61f1850 US194445610= \n", + "8 0x00102c00c0900d61 US161784508= \n", + "9 0x00102cfffd953398 459200KS9= " ] }, - "execution_count": 4, + "execution_count": 3, "metadata": {}, "output_type": "execute_result" } @@ -280,7 +292,7 @@ }, { "cell_type": "code", - "execution_count": 5, + "execution_count": 4, "metadata": { "tags": [] }, @@ -306,53 +318,53 @@ " \n", " \n", " \n", - " RIC\n", - " PI\n", " BusinessEntity\n", - " PermID\n", " DocumentTitle\n", + " PermID\n", + " PI\n", + " RIC\n", " \n", " \n", " \n", " \n", " 0\n", - " 459200JQ5=\n", - " 0x00102c28b5f20b58\n", " INSTRUMENTxFIXEDINCOMExGOVCORP\n", - " 46642939296\n", " International Business Machines Corp, Plain Va...\n", + " 46637038358\n", + " 0x00102c80bf6b046c\n", + " 459200JC6=\n", " \n", " \n", " 1\n", - " 459200JX0=\n", - " 0x00102c2452251a75\n", " INSTRUMENTxFIXEDINCOMExGOVCORP\n", - " 192841929423\n", " International Business Machines Corp, Plain Va...\n", + " 192826899363\n", + " 0x00102c53ff1f1897\n", + " US194445601=\n", " \n", " \n", " 2\n", - " 459200HG9=\n", - " 0x0004050e34388b88\n", " INSTRUMENTxFIXEDINCOMExGOVCORP\n", - " 44640212240\n", " International Business Machines Corp, Plain Va...\n", + " 44657843041\n", + " 0x0004051bd47954e3\n", + " US114316318=\n", " \n", " \n", " 3\n", - " US127166528=\n", - " 0x00102c05c4dd0222\n", " INSTRUMENTxFIXEDINCOMExGOVCORP\n", - " 46635711098\n", " International Business Machines Corp, Plain Va...\n", + " 44649129642\n", + " 0x00040513a4865c6c\n", + " 459200HP9=\n", " \n", " \n", " 4\n", - " 459200JC6=\n", - " 0x00102c80bf6b046c\n", " INSTRUMENTxFIXEDINCOMExGOVCORP\n", - " 46637038358\n", " International Business Machines Corp, Plain Va...\n", + " 44653695161\n", + " 0x00040517bba31719\n", + " 459200HU8=\n", " \n", " \n", " ...\n", @@ -364,43 +376,43 @@ " \n", " \n", " 95\n", - " <NA>\n", - " 0x000034000037e3e0\n", " INSTRUMENTxFIXEDINCOMExGOVCORP\n", - " <NA>\n", " IBM Credit LLC, Plain Vanilla Fixed Coupon Bon...\n", + " <NA>\n", + " 0x000034000037dfdc\n", + " <NA>\n", " \n", " \n", " 96\n", - " <NA>\n", - " 0x000034000037e4e7\n", " INSTRUMENTxFIXEDINCOMExGOVCORP\n", - " <NA>\n", " IBM Credit LLC, Plain Vanilla Fixed Coupon Bon...\n", + " <NA>\n", + " 0x000034000037e0e3\n", + " <NA>\n", " \n", " \n", " 97\n", - " <NA>\n", - " 0x000034000037e5e6\n", " INSTRUMENTxFIXEDINCOMExGOVCORP\n", - " <NA>\n", " IBM Credit LLC, Plain Vanilla Fixed Coupon Bon...\n", + " <NA>\n", + " 0x000034000037e1e2\n", + " <NA>\n", " \n", " \n", " 98\n", - " <NA>\n", - " 0x000034000037e6e5\n", " INSTRUMENTxFIXEDINCOMExGOVCORP\n", - " <NA>\n", " IBM Credit LLC, Plain Vanilla Fixed Coupon Bon...\n", + " <NA>\n", + " 0x000034000037e3e0\n", + " <NA>\n", " \n", " \n", " 99\n", - " <NA>\n", - " 0x000034000037e7e4\n", " INSTRUMENTxFIXEDINCOMExGOVCORP\n", - " <NA>\n", " IBM Credit LLC, Plain Vanilla Fixed Coupon Bon...\n", + " <NA>\n", + " 0x000034000037e4e7\n", + " <NA>\n", " \n", " \n", "\n", @@ -408,36 +420,49 @@ "" ], "text/plain": [ - " RIC PI BusinessEntity \\\n", - "0 459200JQ5= 0x00102c28b5f20b58 INSTRUMENTxFIXEDINCOMExGOVCORP \n", - "1 459200JX0= 0x00102c2452251a75 INSTRUMENTxFIXEDINCOMExGOVCORP \n", - "2 459200HG9= 0x0004050e34388b88 INSTRUMENTxFIXEDINCOMExGOVCORP \n", - "3 US127166528= 0x00102c05c4dd0222 INSTRUMENTxFIXEDINCOMExGOVCORP \n", - "4 459200JC6= 0x00102c80bf6b046c INSTRUMENTxFIXEDINCOMExGOVCORP \n", - ".. ... ... ... \n", - "95 0x000034000037e3e0 INSTRUMENTxFIXEDINCOMExGOVCORP \n", - "96 0x000034000037e4e7 INSTRUMENTxFIXEDINCOMExGOVCORP \n", - "97 0x000034000037e5e6 INSTRUMENTxFIXEDINCOMExGOVCORP \n", - "98 0x000034000037e6e5 INSTRUMENTxFIXEDINCOMExGOVCORP \n", - "99 0x000034000037e7e4 INSTRUMENTxFIXEDINCOMExGOVCORP \n", + " BusinessEntity \\\n", + "0 INSTRUMENTxFIXEDINCOMExGOVCORP \n", + "1 INSTRUMENTxFIXEDINCOMExGOVCORP \n", + "2 INSTRUMENTxFIXEDINCOMExGOVCORP \n", + "3 INSTRUMENTxFIXEDINCOMExGOVCORP \n", + "4 INSTRUMENTxFIXEDINCOMExGOVCORP \n", + ".. ... \n", + "95 INSTRUMENTxFIXEDINCOMExGOVCORP \n", + "96 INSTRUMENTxFIXEDINCOMExGOVCORP \n", + "97 INSTRUMENTxFIXEDINCOMExGOVCORP \n", + "98 INSTRUMENTxFIXEDINCOMExGOVCORP \n", + "99 INSTRUMENTxFIXEDINCOMExGOVCORP \n", + "\n", + " DocumentTitle PermID \\\n", + "0 International Business Machines Corp, Plain Va... 46637038358 \n", + "1 International Business Machines Corp, Plain Va... 192826899363 \n", + "2 International Business Machines Corp, Plain Va... 44657843041 \n", + "3 International Business Machines Corp, Plain Va... 44649129642 \n", + "4 International Business Machines Corp, Plain Va... 44653695161 \n", + ".. ... ... \n", + "95 IBM Credit LLC, Plain Vanilla Fixed Coupon Bon... \n", + "96 IBM Credit LLC, Plain Vanilla Fixed Coupon Bon... \n", + "97 IBM Credit LLC, Plain Vanilla Fixed Coupon Bon... \n", + "98 IBM Credit LLC, Plain Vanilla Fixed Coupon Bon... \n", + "99 IBM Credit LLC, Plain Vanilla Fixed Coupon Bon... \n", "\n", - " PermID DocumentTitle \n", - "0 46642939296 International Business Machines Corp, Plain Va... \n", - "1 192841929423 International Business Machines Corp, Plain Va... \n", - "2 44640212240 International Business Machines Corp, Plain Va... \n", - "3 46635711098 International Business Machines Corp, Plain Va... \n", - "4 46637038358 International Business Machines Corp, Plain Va... \n", - ".. ... ... \n", - "95 IBM Credit LLC, Plain Vanilla Fixed Coupon Bon... \n", - "96 IBM Credit LLC, Plain Vanilla Fixed Coupon Bon... \n", - "97 IBM Credit LLC, Plain Vanilla Fixed Coupon Bon... \n", - "98 IBM Credit LLC, Plain Vanilla Fixed Coupon Bon... \n", - "99 IBM Credit LLC, Plain Vanilla Fixed Coupon Bon... \n", + " PI RIC \n", + "0 0x00102c80bf6b046c 459200JC6= \n", + "1 0x00102c53ff1f1897 US194445601= \n", + "2 0x0004051bd47954e3 US114316318= \n", + "3 0x00040513a4865c6c 459200HP9= \n", + "4 0x00040517bba31719 459200HU8= \n", + ".. ... ... \n", + "95 0x000034000037dfdc \n", + "96 0x000034000037e0e3 \n", + "97 0x000034000037e1e2 \n", + "98 0x000034000037e3e0 \n", + "99 0x000034000037e4e7 \n", "\n", "[100 rows x 5 columns]" ] }, - "execution_count": 5, + "execution_count": 4, "metadata": {}, "output_type": "execute_result" } @@ -480,144 +505,144 @@ " \n", " \n", " \n", + " ISIN\n", " RIC\n", + " IssueDate\n", " Currency\n", " FaceIssuedTotal\n", - " MaturityDate\n", - " ISIN\n", " CouponRate\n", - " IssueDate\n", + " MaturityDate\n", " \n", " \n", " \n", " \n", " 0\n", - " 45920FZL5=\n", + " US459200JC60\n", + " 459200JC6=\n", + " 2015-11-09\n", " USD\n", - " <NA>\n", - " 2021-12-20T00:00:00.000Z\n", - " US45920FZL56\n", - " 0.0\n", - " 2021-12-09T00:00:00.000Z\n", + " 900000000\n", + " 2.875\n", + " 2022-11-09\n", " \n", " \n", " 1\n", - " 45920FZN1=\n", - " USD\n", - " <NA>\n", - " 2021-12-22T00:00:00.000Z\n", - " US45920FZN13\n", - " 0.0\n", - " 2021-12-09T00:00:00.000Z\n", + " XS1944456018\n", + " US194445601=\n", + " 2019-01-31\n", + " EUR\n", + " 1750000000\n", + " 0.375\n", + " 2023-01-31\n", " \n", " \n", " 2\n", - " 45920FZT8=\n", - " USD\n", - " <NA>\n", - " 2021-12-27T00:00:00.000Z\n", - " US45920FZT82\n", - " 0.0\n", - " 2021-12-10T00:00:00.000Z\n", + " XS1143163183\n", + " US114316318=\n", + " 2014-11-26\n", + " EUR\n", + " 1000000000\n", + " 1.25\n", + " 2023-05-26\n", " \n", " \n", " 3\n", - " 45920FZU5=\n", + " US459200HP91\n", + " 459200HP9=\n", + " 2013-08-01\n", " USD\n", - " <NA>\n", - " 2021-12-28T00:00:00.000Z\n", - " US45920FZU55\n", - " 0.0\n", - " 2021-12-09T00:00:00.000Z\n", + " 1500000000\n", + " 3.375\n", + " 2023-08-01\n", " \n", " \n", " 4\n", - " 45920FZV3=\n", + " US459200HU86\n", + " 459200HU8=\n", + " 2014-02-12\n", " USD\n", - " <NA>\n", - " 2021-12-29T00:00:00.000Z\n", - " US45920FZV39\n", - " 0.0\n", - " 2021-12-09T00:00:00.000Z\n", + " 2000000000\n", + " 3.625\n", + " 2024-02-12\n", " \n", " \n", " 5\n", - " 45920FZW1=\n", + " US459200JY80\n", + " 459200JY8=\n", + " 2019-05-15\n", " USD\n", - " <NA>\n", - " 2021-12-30T00:00:00.000Z\n", - " US45920FZW12\n", - " 0.0\n", - " 2021-12-09T00:00:00.000Z\n", + " 3000000000\n", + " 3.0\n", + " 2024-05-15\n", " \n", " \n", " 6\n", - " 45920FZX9=\n", - " USD\n", - " <NA>\n", - " 2021-12-31T00:00:00.000Z\n", - " US45920FZX94\n", - " 0.0\n", - " 2021-12-10T00:00:00.000Z\n", + " XS1375841233\n", + " US137584123=\n", + " 2016-03-07\n", + " EUR\n", + " 750000000\n", + " 1.125\n", + " 2024-09-06\n", " \n", " \n", " 7\n", - " 459200JQ5=\n", - " USD\n", + " XS1944456109\n", + " US194445610=\n", + " 2019-01-31\n", + " EUR\n", " 1000000000\n", - " 2022-01-27T00:00:00.000Z\n", - " US459200JQ56\n", - " 2.5\n", - " 2017-01-27T00:00:00.000Z\n", + " 0.875\n", + " 2025-01-31\n", " \n", " \n", " 8\n", - " 459200JX0=\n", - " USD\n", - " 2750000000\n", - " 2022-05-13T00:00:00.000Z\n", - " US459200JX08\n", - " 2.85\n", - " 2019-05-15T00:00:00.000Z\n", + " XS1617845083\n", + " US161784508=\n", + " 2017-05-23\n", + " EUR\n", + " 1000000000\n", + " 0.95\n", + " 2025-05-23\n", " \n", " \n", " 9\n", - " 459200HG9=\n", + " US459200KS93\n", + " 459200KS9=\n", + " 2022-07-27\n", " USD\n", " 1000000000\n", - " 2022-08-01T00:00:00.000Z\n", - " US459200HG92\n", - " 1.875\n", - " 2012-07-30T00:00:00.000Z\n", + " 4.0\n", + " 2025-07-27\n", " \n", " \n", "\n", "" ], "text/plain": [ - " RIC Currency FaceIssuedTotal MaturityDate \\\n", - "0 45920FZL5= USD 2021-12-20T00:00:00.000Z \n", - "1 45920FZN1= USD 2021-12-22T00:00:00.000Z \n", - "2 45920FZT8= USD 2021-12-27T00:00:00.000Z \n", - "3 45920FZU5= USD 2021-12-28T00:00:00.000Z \n", - "4 45920FZV3= USD 2021-12-29T00:00:00.000Z \n", - "5 45920FZW1= USD 2021-12-30T00:00:00.000Z \n", - "6 45920FZX9= USD 2021-12-31T00:00:00.000Z \n", - "7 459200JQ5= USD 1000000000 2022-01-27T00:00:00.000Z \n", - "8 459200JX0= USD 2750000000 2022-05-13T00:00:00.000Z \n", - "9 459200HG9= USD 1000000000 2022-08-01T00:00:00.000Z \n", + " ISIN RIC IssueDate Currency FaceIssuedTotal \\\n", + "0 US459200JC60 459200JC6= 2015-11-09 USD 900000000 \n", + "1 XS1944456018 US194445601= 2019-01-31 EUR 1750000000 \n", + "2 XS1143163183 US114316318= 2014-11-26 EUR 1000000000 \n", + "3 US459200HP91 459200HP9= 2013-08-01 USD 1500000000 \n", + "4 US459200HU86 459200HU8= 2014-02-12 USD 2000000000 \n", + "5 US459200JY80 459200JY8= 2019-05-15 USD 3000000000 \n", + "6 XS1375841233 US137584123= 2016-03-07 EUR 750000000 \n", + "7 XS1944456109 US194445610= 2019-01-31 EUR 1000000000 \n", + "8 XS1617845083 US161784508= 2017-05-23 EUR 1000000000 \n", + "9 US459200KS93 459200KS9= 2022-07-27 USD 1000000000 \n", "\n", - " ISIN CouponRate IssueDate \n", - "0 US45920FZL56 0.0 2021-12-09T00:00:00.000Z \n", - "1 US45920FZN13 0.0 2021-12-09T00:00:00.000Z \n", - "2 US45920FZT82 0.0 2021-12-10T00:00:00.000Z \n", - "3 US45920FZU55 0.0 2021-12-09T00:00:00.000Z \n", - "4 US45920FZV39 0.0 2021-12-09T00:00:00.000Z \n", - "5 US45920FZW12 0.0 2021-12-09T00:00:00.000Z \n", - "6 US45920FZX94 0.0 2021-12-10T00:00:00.000Z \n", - "7 US459200JQ56 2.5 2017-01-27T00:00:00.000Z \n", - "8 US459200JX08 2.85 2019-05-15T00:00:00.000Z \n", - "9 US459200HG92 1.875 2012-07-30T00:00:00.000Z " + " CouponRate MaturityDate \n", + "0 2.875 2022-11-09 \n", + "1 0.375 2023-01-31 \n", + "2 1.25 2023-05-26 \n", + "3 3.375 2023-08-01 \n", + "4 3.625 2024-02-12 \n", + "5 3.0 2024-05-15 \n", + "6 1.125 2024-09-06 \n", + "7 0.875 2025-01-31 \n", + "8 0.95 2025-05-23 \n", + "9 4.0 2025-07-27 " ] }, "execution_count": 6, @@ -627,7 +652,7 @@ ], "source": [ "response = search.Definition(\n", - " view=search.SearchViews.GOV_CORP_INSTRUMENTS,\n", + " view=search.Views.GOV_CORP_INSTRUMENTS,\n", " select=\"ISIN,RIC,IssueDate,Currency,FaceIssuedTotal,CouponRate,MaturityDate\", \n", " filter=\"IssuerTicker eq 'IBM' and IsActive eq true and AssetStatus ne 'MAT'\"\n", ").get_data()\n", @@ -795,13 +820,13 @@ " True\n", " True\n", " False\n", - " False\n", + " True\n", " False\n", " True\n", " \n", " \n", "\n", - "

1125 rows × 7 columns

\n", + "

1129 rows × 7 columns

\n", "" ], "text/plain": [ @@ -842,9 +867,9 @@ "WorstYearsToRedem WorstYearsToRedem False False False \n", "YieldCurveBenchmarkRIC YieldCurveBenchmarkRIC False False False \n", "YieldTypeDescription YieldTypeDescription False False False \n", - "ZCodeValue ZCodeValue False False True \n", + "ZCodeValue ZCodeValue True False True \n", "\n", - "[1125 rows x 7 columns]" + "[1129 rows x 7 columns]" ] }, "execution_count": 7, @@ -854,7 +879,7 @@ ], "source": [ "response = search.metadata.Definition(\n", - " view = search.SearchViews.GOV_CORP_INSTRUMENTS # Required parameterc\n", + " view = search.Views.GOV_CORP_INSTRUMENTS # Required parameterc\n", ").get_data() \n", "\n", "response.data.df" @@ -912,122 +937,122 @@ " \n", " \n", " \n", - " RIC\n", - " PI\n", " BusinessEntity\n", - " PermID\n", " DocumentTitle\n", + " PermID\n", + " PI\n", + " RIC\n", " \n", " \n", " \n", " \n", " 0\n", - " CSCc1\n", - " 273610776\n", " QUOTExCOMMODITY\n", - " 21622940491\n", " CME Cash Settled Cheese Electronic Commodity F...\n", + " 21622940491\n", + " 273610776\n", + " CSCc1\n", " \n", " \n", " 1\n", - " 0#CSC:\n", - " 272623267\n", " QUOTExCOMMODITY\n", - " 21622425217\n", " Cash Settled Cheese Futures Chain Contracts, C...\n", + " 21622425217\n", + " 272623267\n", + " 0#CSC:\n", " \n", " \n", " 2\n", - " CSCZ1\n", - " 406809544\n", " QUOTExCOMMODITY\n", - " 21727643040\n", " CME Cash Settled Cheese Electronic Commodity F...\n", + " 21757842054\n", + " 444997903\n", + " CSCM2\n", " \n", " \n", " 3\n", - " CSCF2\n", - " 413501786\n", " QUOTExCOMMODITY\n", - " 21733097271\n", " CME Cash Settled Cheese Electronic Commodity F...\n", + " 21772665846\n", + " 463861357\n", + " CSCU2\n", " \n", " \n", " 4\n", - " CSCG2\n", - " 419119906\n", " QUOTExCOMMODITY\n", - " 21737604992\n", " CME Cash Settled Cheese Electronic Commodity F...\n", + " 21767494118\n", + " 457131738\n", + " CSCQ2\n", " \n", " \n", " 5\n", - " CSCH2\n", - " 427664132\n", " QUOTExCOMMODITY\n", - " 21744350317\n", " CME Cash Settled Cheese Electronic Commodity F...\n", + " 21778821217\n", + " 471517057\n", + " CSCV2\n", " \n", " \n", " 6\n", - " CSCJ2\n", - " 432796175\n", " QUOTExCOMMODITY\n", - " 21748334445\n", " CME Cash Settled Cheese Electronic Commodity F...\n", + " 21784277336\n", + " 478150068\n", + " CSCX2\n", " \n", " \n", " 7\n", - " CSCK2\n", - " 439042441\n", " QUOTExCOMMODITY\n", - " 21753182135\n", " CME Cash Settled Cheese Electronic Commodity F...\n", + " 21790857663\n", + " 485909287\n", + " CSCZ2\n", " \n", " \n", " 8\n", - " CSCM2\n", - " 444997903\n", " QUOTExCOMMODITY\n", - " 21757842054\n", " CME Cash Settled Cheese Electronic Commodity F...\n", + " 21801133645\n", + " 498573458\n", + " CSCG3\n", " \n", " \n", " 9\n", - " CSCN2\n", - " 451127563\n", " QUOTExCOMMODITY\n", - " 21762656526\n", " CME Cash Settled Cheese Electronic Commodity F...\n", + " 21819204534\n", + " 520638487\n", + " CSCM3\n", " \n", " \n", "\n", "" ], "text/plain": [ - " RIC PI BusinessEntity PermID \\\n", - "0 CSCc1 273610776 QUOTExCOMMODITY 21622940491 \n", - "1 0#CSC: 272623267 QUOTExCOMMODITY 21622425217 \n", - "2 CSCZ1 406809544 QUOTExCOMMODITY 21727643040 \n", - "3 CSCF2 413501786 QUOTExCOMMODITY 21733097271 \n", - "4 CSCG2 419119906 QUOTExCOMMODITY 21737604992 \n", - "5 CSCH2 427664132 QUOTExCOMMODITY 21744350317 \n", - "6 CSCJ2 432796175 QUOTExCOMMODITY 21748334445 \n", - "7 CSCK2 439042441 QUOTExCOMMODITY 21753182135 \n", - "8 CSCM2 444997903 QUOTExCOMMODITY 21757842054 \n", - "9 CSCN2 451127563 QUOTExCOMMODITY 21762656526 \n", + " BusinessEntity DocumentTitle \\\n", + "0 QUOTExCOMMODITY CME Cash Settled Cheese Electronic Commodity F... \n", + "1 QUOTExCOMMODITY Cash Settled Cheese Futures Chain Contracts, C... \n", + "2 QUOTExCOMMODITY CME Cash Settled Cheese Electronic Commodity F... \n", + "3 QUOTExCOMMODITY CME Cash Settled Cheese Electronic Commodity F... \n", + "4 QUOTExCOMMODITY CME Cash Settled Cheese Electronic Commodity F... \n", + "5 QUOTExCOMMODITY CME Cash Settled Cheese Electronic Commodity F... \n", + "6 QUOTExCOMMODITY CME Cash Settled Cheese Electronic Commodity F... \n", + "7 QUOTExCOMMODITY CME Cash Settled Cheese Electronic Commodity F... \n", + "8 QUOTExCOMMODITY CME Cash Settled Cheese Electronic Commodity F... \n", + "9 QUOTExCOMMODITY CME Cash Settled Cheese Electronic Commodity F... \n", "\n", - " DocumentTitle \n", - "0 CME Cash Settled Cheese Electronic Commodity F... \n", - "1 Cash Settled Cheese Futures Chain Contracts, C... \n", - "2 CME Cash Settled Cheese Electronic Commodity F... \n", - "3 CME Cash Settled Cheese Electronic Commodity F... \n", - "4 CME Cash Settled Cheese Electronic Commodity F... \n", - "5 CME Cash Settled Cheese Electronic Commodity F... \n", - "6 CME Cash Settled Cheese Electronic Commodity F... \n", - "7 CME Cash Settled Cheese Electronic Commodity F... \n", - "8 CME Cash Settled Cheese Electronic Commodity F... \n", - "9 CME Cash Settled Cheese Electronic Commodity F... " + " PermID PI RIC \n", + "0 21622940491 273610776 CSCc1 \n", + "1 21622425217 272623267 0#CSC: \n", + "2 21757842054 444997903 CSCM2 \n", + "3 21772665846 463861357 CSCU2 \n", + "4 21767494118 457131738 CSCQ2 \n", + "5 21778821217 471517057 CSCV2 \n", + "6 21784277336 478150068 CSCX2 \n", + "7 21790857663 485909287 CSCZ2 \n", + "8 21801133645 498573458 CSCG3 \n", + "9 21819204534 520638487 CSCM3 " ] }, "execution_count": 9, @@ -1037,7 +1062,7 @@ ], "source": [ "response = search.Definition(\n", - " view=search.SearchViews.COMMODITY_QUOTES,\n", + " view=search.Views.COMMODITY_QUOTES,\n", " query=\"cheese\",\n", " navigators=\"ExchangeName\"\n", ").get_data()\n", @@ -1053,18 +1078,18 @@ { "data": { "text/plain": [ - "{'Buckets': [{'Label': 'CME:Index and Options Market', 'Count': 16088},\n", - " {'Label': 'Chicago Mercantile Exchange', 'Count': 4045},\n", + "{'Buckets': [{'Label': 'CME:Index and Options Market', 'Count': 17677},\n", + " {'Label': 'Chicago Mercantile Exchange', 'Count': 3001},\n", " {'Label': 'INTL FCStone Inc', 'Count': 2550},\n", " {'Label': 'Source is a Refinitiv Contributor', 'Count': 1498},\n", - " {'Label': 'US Department of Agriculture', 'Count': 96},\n", + " {'Label': 'US Department of Agriculture', 'Count': 101},\n", " {'Label': 'Commodity Futures Trading Commission', 'Count': 66},\n", - " {'Label': 'Complete Intelligence', 'Count': 43},\n", + " {'Label': 'Complete Intelligence', 'Count': 51},\n", " {'Label': 'Intercontinental Exchange US', 'Count': 31},\n", " {'Label': 'US Bureau Of Labor Statistics', 'Count': 10},\n", + " {'Label': 'European Energy Exchange', 'Count': 9},\n", " {'Label': 'DCA Markets B.V. - DCA-Markets-PRA Price Reporting Agent',\n", " 'Count': 4},\n", - " {'Label': 'European Energy Exchange', 'Count': 4},\n", " {'Label': 'European Commission', 'Count': 3},\n", " {'Label': 'ESALQ', 'Count': 2},\n", " {'Label': 'CME:International Monetary Market', 'Count': 1}]}" @@ -1087,48 +1112,48 @@ { "data": { "text/plain": [ - "{'Total': 8769458,\n", + "{'Total': 11494208,\n", " 'Hits': [],\n", " 'Navigators': {'Currency': {'Buckets': [{'Label': 'USD',\n", - " 'Count': 3547954,\n", + " 'Count': 3763389,\n", " 'max_CouponRate': 1800.0,\n", - " 'sum_FaceOutstandingUSD': 48423415022850.18},\n", + " 'sum_FaceOutstandingUSD': 49438954323649.78},\n", " {'Label': 'EUR',\n", - " 'Count': 1047373,\n", + " 'Count': 1093746,\n", " 'max_CouponRate': 500.0,\n", - " 'sum_FaceOutstandingUSD': 23249346271361.0},\n", + " 'sum_FaceOutstandingUSD': 21527212316149.0},\n", " {'Label': 'CNY',\n", - " 'Count': 305478,\n", + " 'Count': 342663,\n", " 'max_CouponRate': 72.0,\n", - " 'sum_FaceOutstandingUSD': 19762877084621.0},\n", + " 'sum_FaceOutstandingUSD': 20044978882106.297},\n", " {'Label': 'JPY',\n", - " 'Count': 446496,\n", - " 'max_CouponRate': 500.0,\n", - " 'sum_FaceOutstandingUSD': 12906609450808.018},\n", + " 'Count': 471204,\n", + " 'max_CouponRate': 632.0,\n", + " 'sum_FaceOutstandingUSD': 10901404501957.016},\n", " {'Label': 'GBP',\n", - " 'Count': 187321,\n", + " 'Count': 200667,\n", " 'max_CouponRate': 120.0,\n", - " 'sum_FaceOutstandingUSD': 4635540747631.0},\n", - " {'Label': 'INR',\n", - " 'Count': 106775,\n", - " 'max_CouponRate': 42.75,\n", - " 'sum_FaceOutstandingUSD': 2604993289461.0},\n", + " 'sum_FaceOutstandingUSD': 4186088564763.0},\n", " {'Label': 'CAD',\n", - " 'Count': 302931,\n", + " 'Count': 321134,\n", " 'max_CouponRate': 100.0,\n", - " 'sum_FaceOutstandingUSD': 2538884860438.0},\n", + " 'sum_FaceOutstandingUSD': 2573047806153.0},\n", + " {'Label': 'INR',\n", + " 'Count': 112945,\n", + " 'max_CouponRate': 42.75,\n", + " 'sum_FaceOutstandingUSD': 2497247939348.0},\n", " {'Label': 'KRW',\n", - " 'Count': 384645,\n", + " 'Count': 400869,\n", " 'max_CouponRate': 46.41,\n", - " 'sum_FaceOutstandingUSD': 2303658364094.622},\n", + " 'sum_FaceOutstandingUSD': 2140298006081.0},\n", " {'Label': 'AUD',\n", - " 'Count': 138025,\n", + " 'Count': 149976,\n", " 'max_CouponRate': 120.96,\n", - " 'sum_FaceOutstandingUSD': 1563638598401.4172},\n", + " 'sum_FaceOutstandingUSD': 1571159285514.6873},\n", " {'Label': 'BRL',\n", - " 'Count': 60677,\n", + " 'Count': 68846,\n", " 'max_CouponRate': 108.5,\n", - " 'sum_FaceOutstandingUSD': 839002370602.295}]}}}" + " 'sum_FaceOutstandingUSD': 1388815848653.7607}]}}}" ] }, "execution_count": 11, @@ -1138,7 +1163,7 @@ ], "source": [ "response = search.Definition(\n", - " view=search.SearchViews.GOV_CORP_INSTRUMENTS,\n", + " view=search.Views.GOV_CORP_INSTRUMENTS,\n", " top=0,\n", " navigators=\"Currency(buckets:10,desc:sum_FaceOutstandingUSD,calc:max_CouponRate)\"\n", ").get_data()\n", @@ -1162,17 +1187,17 @@ "data": { "text/plain": [ "[{'Label': 'John',\n", - " 'Count': 40498,\n", - " 'LastName': {'Buckets': [{'Label': 'Wilson', 'Count': 109},\n", - " {'Label': 'Lee', 'Count': 105}]}},\n", + " 'Count': 41492,\n", + " 'LastName': {'Buckets': [{'Label': 'Wilson', 'Count': 110},\n", + " {'Label': 'Lee', 'Count': 107}]}},\n", " {'Label': 'David',\n", - " 'Count': 39209,\n", - " 'LastName': {'Buckets': [{'Label': 'Smith', 'Count': 234},\n", - " {'Label': 'Williams', 'Count': 158}]}},\n", + " 'Count': 40465,\n", + " 'LastName': {'Buckets': [{'Label': 'Smith', 'Count': 239},\n", + " {'Label': 'Williams', 'Count': 164}]}},\n", " {'Label': 'Michael',\n", - " 'Count': 37664,\n", - " 'LastName': {'Buckets': [{'Label': 'Smith', 'Count': 179},\n", - " {'Label': 'Brown', 'Count': 122}]}}]" + " 'Count': 38945,\n", + " 'LastName': {'Buckets': [{'Label': 'Smith', 'Count': 186},\n", + " {'Label': 'Brown', 'Count': 126}]}}]" ] }, "execution_count": 12, @@ -1182,7 +1207,7 @@ ], "source": [ "response = search.Definition(\n", - " view=search.SearchViews.PEOPLE,\n", + " view=search.Views.PEOPLE,\n", " top=0,\n", " navigators=\"FirstName(buckets:3,sub:LastName(buckets:2))\"\n", ").get_data()\n", @@ -1233,52 +1258,52 @@ " \n", " 0\n", " 1996\n", - " Shu Yao - Dongjiang Environmental Co Ltd - Ex-...\n", + " Hiroyasu Saito - Gracia Inc - Chief Executive ...\n", " \n", " \n", " 1\n", - " 1994\n", - " Connor Campbell - Osler Diagnostics Ltd - Chie...\n", + " 1996\n", + " Shu Yao - Dongjiang Environmental Co Ltd - Ex-...\n", " \n", " \n", " 2\n", - " 1993\n", - " Alberto Rizzoli - V7 Ltd - Chief Executive Off...\n", + " 1994\n", + " Connor Campbell - Osler Diagnostics Ltd - Chie...\n", " \n", " \n", " 3\n", " 1993\n", - " Tongda Wu - Pi2Star Technology Ltd - Chief Exe...\n", + " Yiduitakuya Iwamoto - Polyuse Inc - Chief Exec...\n", " \n", " \n", " 4\n", - " 1992\n", - " Ross Bailey - Appear Here Ltd - Chief Executiv...\n", + " 1993\n", + " Alberto Rizzoli - V7 Ltd - Chief Executive Off...\n", " \n", " \n", " 5\n", - " 1992\n", - " Christian Besenbruch - Deep Render Ltd - Chief...\n", + " 1993\n", + " Tongda Wu - Paifang Technology Tianjin Co Ltd ...\n", " \n", " \n", " 6\n", " 1992\n", - " Ed Leon Klinger - Flock Ltd - Chief Executive ...\n", + " Ross Bailey - Appear Here Ltd - Chief Executiv...\n", " \n", " \n", " 7\n", " 1992\n", - " Snigdha Mothukuri - Jeevan Scientific Technolo...\n", + " Christian Besenbruch - Deep Render Ltd - Chief...\n", " \n", " \n", " 8\n", " 1992\n", - " Ivan Aleksandrovich Plekhanov - Territorial'na...\n", + " Ed Leon Klinger - Flock Ltd - Chief Executive ...\n", " \n", " \n", " 9\n", " 1992\n", - " Jack Tang - Urban Massage Ltd - Chief Executiv...\n", + " Snigdha Mothukuri - Jeevan Scientific Technolo...\n", " \n", " \n", "\n", @@ -1286,16 +1311,16 @@ ], "text/plain": [ " YearOfBirth DocumentTitle\n", - "0 1996 Shu Yao - Dongjiang Environmental Co Ltd - Ex-...\n", - "1 1994 Connor Campbell - Osler Diagnostics Ltd - Chie...\n", - "2 1993 Alberto Rizzoli - V7 Ltd - Chief Executive Off...\n", - "3 1993 Tongda Wu - Pi2Star Technology Ltd - Chief Exe...\n", - "4 1992 Ross Bailey - Appear Here Ltd - Chief Executiv...\n", - "5 1992 Christian Besenbruch - Deep Render Ltd - Chief...\n", - "6 1992 Ed Leon Klinger - Flock Ltd - Chief Executive ...\n", - "7 1992 Snigdha Mothukuri - Jeevan Scientific Technolo...\n", - "8 1992 Ivan Aleksandrovich Plekhanov - Territorial'na...\n", - "9 1992 Jack Tang - Urban Massage Ltd - Chief Executiv..." + "0 1996 Hiroyasu Saito - Gracia Inc - Chief Executive ...\n", + "1 1996 Shu Yao - Dongjiang Environmental Co Ltd - Ex-...\n", + "2 1994 Connor Campbell - Osler Diagnostics Ltd - Chie...\n", + "3 1993 Yiduitakuya Iwamoto - Polyuse Inc - Chief Exec...\n", + "4 1993 Alberto Rizzoli - V7 Ltd - Chief Executive Off...\n", + "5 1993 Tongda Wu - Paifang Technology Tianjin Co Ltd ...\n", + "6 1992 Ross Bailey - Appear Here Ltd - Chief Executiv...\n", + "7 1992 Christian Besenbruch - Deep Render Ltd - Chief...\n", + "8 1992 Ed Leon Klinger - Flock Ltd - Chief Executive ...\n", + "9 1992 Snigdha Mothukuri - Jeevan Scientific Technolo..." ] }, "execution_count": 13, @@ -1305,7 +1330,7 @@ ], "source": [ "response = search.Definition(\n", - " view=search.SearchViews.PEOPLE,\n", + " view=search.Views.PEOPLE,\n", " query=\"ceo\",\n", " order_by=\"YearOfBirth desc,LastName,FirstName\",\n", " select=\"YearOfBirth,DocumentTitle\"\n", @@ -1348,99 +1373,99 @@ " \n", " \n", " CentralBankName\n", - " RIC\n", " DocumentTitle\n", + " RIC\n", " \n", " \n", " \n", " \n", " 0\n", " Federal Reserve System\n", - " USFOMC=ECI\n", " United States, Policy Rates, Fed Funds Target ...\n", + " USFOMC=ECI\n", " \n", " \n", " 1\n", " Federal Reserve System\n", - " USRRP=ECI\n", " United States, Policy Rates, Fed Overnight Rep...\n", + " USRRP=ECI\n", " \n", " \n", " 2\n", " European Central Bank\n", - " EUECBR=ECI\n", " Euro Zone, Policy Rates, ECB Main refinancing,...\n", + " EUECBR=ECI\n", " \n", " \n", " 3\n", " European Central Bank\n", - " EUECBD=ECI\n", " Euro Zone, Policy Rates, ECB Deposit Rate, Reu...\n", + " EUECBD=ECI\n", " \n", " \n", " 4\n", - " Bank of Canada\n", - " CABOCR=ECI\n", - " Canada, Policy Rates, Overnight Target Rate, R...\n", + " Sveriges Riksbank\n", + " Sweden, Policy Rates, Repo Rate (Effective Dat...\n", + " SERATE=ECI\n", " \n", " \n", " 5\n", - " Bank of Canada\n", - " pCABOCR=M\n", - " Canada, BoC Rate Decision-Median, Reuters Poll...\n", + " Sveriges Riksbank\n", + " Sweden, Riksbank Rate-Median, Reuters Polls, D...\n", + " pSERATE=M\n", " \n", " \n", " 6\n", - " Reserve Bank Of Australia\n", - " AUCBIR=ECI\n", - " Australia, Policy Rates, Cash Target Rate, Reu...\n", + " Magyar Nemzeti Bank\n", + " Hungary, Policy Rates, Base Rate, Reuters Poll...\n", + " HUINT=ECI\n", " \n", " \n", " 7\n", - " Reserve Bank Of Australia\n", - " pAUCBIR=M\n", - " Australia, RBA Cash Rate-Median, Reuters Polls...\n", + " Magyar Nemzeti Bank\n", + " Hungary, Policy Rates, Base Rate, Reuters Poll...\n", + " HUOD2=ECI\n", " \n", " \n", " 8\n", - " Banco Central do Brasil\n", - " BRCBMP=ECI\n", - " Brazil, Policy Rates, SELIC Target Rate, Reute...\n", + " Central Bank of Colombia\n", + " Colombia, Policy Rates, Intervention Rate, Reu...\n", + " COCBIR=ECI\n", " \n", " \n", " 9\n", - " Banco Central do Brasil\n", - " BRLRTE=ECI\n", - " Brazil, Policy Rates, TJLP - Long Term Interes...\n", + " Central Bank of Colombia\n", + " Colombia, Interest Rate-Median, Reuters Polls,...\n", + " pCOCBIR=M\n", " \n", " \n", "\n", "" ], "text/plain": [ - " CentralBankName RIC \\\n", - "0 Federal Reserve System USFOMC=ECI \n", - "1 Federal Reserve System USRRP=ECI \n", - "2 European Central Bank EUECBR=ECI \n", - "3 European Central Bank EUECBD=ECI \n", - "4 Bank of Canada CABOCR=ECI \n", - "5 Bank of Canada pCABOCR=M \n", - "6 Reserve Bank Of Australia AUCBIR=ECI \n", - "7 Reserve Bank Of Australia pAUCBIR=M \n", - "8 Banco Central do Brasil BRCBMP=ECI \n", - "9 Banco Central do Brasil BRLRTE=ECI \n", + " CentralBankName \\\n", + "0 Federal Reserve System \n", + "1 Federal Reserve System \n", + "2 European Central Bank \n", + "3 European Central Bank \n", + "4 Sveriges Riksbank \n", + "5 Sveriges Riksbank \n", + "6 Magyar Nemzeti Bank \n", + "7 Magyar Nemzeti Bank \n", + "8 Central Bank of Colombia \n", + "9 Central Bank of Colombia \n", "\n", - " DocumentTitle \n", - "0 United States, Policy Rates, Fed Funds Target ... \n", - "1 United States, Policy Rates, Fed Overnight Rep... \n", - "2 Euro Zone, Policy Rates, ECB Main refinancing,... \n", - "3 Euro Zone, Policy Rates, ECB Deposit Rate, Reu... \n", - "4 Canada, Policy Rates, Overnight Target Rate, R... \n", - "5 Canada, BoC Rate Decision-Median, Reuters Poll... \n", - "6 Australia, Policy Rates, Cash Target Rate, Reu... \n", - "7 Australia, RBA Cash Rate-Median, Reuters Polls... \n", - "8 Brazil, Policy Rates, SELIC Target Rate, Reute... \n", - "9 Brazil, Policy Rates, TJLP - Long Term Interes... " + " DocumentTitle RIC \n", + "0 United States, Policy Rates, Fed Funds Target ... USFOMC=ECI \n", + "1 United States, Policy Rates, Fed Overnight Rep... USRRP=ECI \n", + "2 Euro Zone, Policy Rates, ECB Main refinancing,... EUECBR=ECI \n", + "3 Euro Zone, Policy Rates, ECB Deposit Rate, Reu... EUECBD=ECI \n", + "4 Sweden, Policy Rates, Repo Rate (Effective Dat... SERATE=ECI \n", + "5 Sweden, Riksbank Rate-Median, Reuters Polls, D... pSERATE=M \n", + "6 Hungary, Policy Rates, Base Rate, Reuters Poll... HUINT=ECI \n", + "7 Hungary, Policy Rates, Base Rate, Reuters Poll... HUOD2=ECI \n", + "8 Colombia, Policy Rates, Intervention Rate, Reu... COCBIR=ECI \n", + "9 Colombia, Interest Rate-Median, Reuters Polls,... pCOCBIR=M " ] }, "execution_count": 14, @@ -1450,7 +1475,7 @@ ], "source": [ "response = search.Definition(\n", - " view=search.SearchViews.INDICATOR_QUOTES,\n", + " view=search.Views.INDICATOR_QUOTES,\n", " query=\"rate\",\n", " group_by=\"CentralBankName\",\n", " group_count=2,\n", @@ -1493,111 +1518,111 @@ " \n", " \n", " \n", - " PermID\n", - " PI\n", " BusinessEntity\n", " DocumentTitle\n", + " PermID\n", + " PI\n", " \n", " \n", " \n", " \n", " 0\n", - " 34415553383\n", - " 34415553383\n", " PERSON\n", " Amy E. Hood - Microsoft Corp - Chief Financial...\n", + " 34415553383\n", + " 34415553383\n", " \n", " \n", " 1\n", - " 34414554748\n", - " 34414554748\n", " PERSON\n", " Luca Maestri - Apple Inc - Chief Financial Off...\n", + " 34414554748\n", + " 34414554748\n", " \n", " \n", " 2\n", - " 34417610894\n", - " 34417610894\n", " PERSON\n", " Brian T. Olsavsky - Amazon.com Inc - Chief Fin...\n", + " 34417610894\n", + " 34417610894\n", " \n", " \n", " 3\n", - " 34413960665\n", - " 34413960665\n", " PERSON\n", " Ruth M. Porat - Alphabet Inc - Chief Financial...\n", + " 34413960665\n", + " 34413960665\n", " \n", " \n", " 4\n", - " 34414804241\n", - " 34414804241\n", " PERSON\n", " David M. Wehner - Meta Platforms Inc - Chief F...\n", + " 34414804241\n", + " 34414804241\n", " \n", " \n", " 5\n", - " 34413152672\n", - " 34413152672\n", " PERSON\n", " Marc D. Hamburg - Berkshire Hathaway Inc - Chi...\n", + " 34413152672\n", + " 34413152672\n", " \n", " \n", " 6\n", - " 34414966250\n", - " 34414966250\n", " PERSON\n", " Andrew K. Klatt - Berkshire Hathaway Inc - CFO...\n", + " 34414966250\n", + " 34414966250\n", " \n", " \n", " 7\n", - " 34414263702\n", - " 34414263702\n", " PERSON\n", - " Maggie Wu - Alibaba Group Holding Ltd - Chief ...\n", + " Xu Hong - Alibaba Group Holding Ltd - Chief Fi...\n", + " 34425652371\n", + " 34425652371\n", " \n", " \n", " 8\n", - " 34414907131\n", - " 34414907131\n", " PERSON\n", " John Lo - Tencent Holdings Ltd - Chief Financi...\n", + " 34414907131\n", + " 34414907131\n", " \n", " \n", " 9\n", - " 34413340523\n", - " 34413340523\n", " PERSON\n", " Vasant M. Prabhu - Visa Inc - Vice Chairman of...\n", + " 34413340523\n", + " 34413340523\n", " \n", " \n", "\n", "" ], "text/plain": [ - " PermID PI BusinessEntity \\\n", - "0 34415553383 34415553383 PERSON \n", - "1 34414554748 34414554748 PERSON \n", - "2 34417610894 34417610894 PERSON \n", - "3 34413960665 34413960665 PERSON \n", - "4 34414804241 34414804241 PERSON \n", - "5 34413152672 34413152672 PERSON \n", - "6 34414966250 34414966250 PERSON \n", - "7 34414263702 34414263702 PERSON \n", - "8 34414907131 34414907131 PERSON \n", - "9 34413340523 34413340523 PERSON \n", + " BusinessEntity DocumentTitle \\\n", + "0 PERSON Amy E. Hood - Microsoft Corp - Chief Financial... \n", + "1 PERSON Luca Maestri - Apple Inc - Chief Financial Off... \n", + "2 PERSON Brian T. Olsavsky - Amazon.com Inc - Chief Fin... \n", + "3 PERSON Ruth M. Porat - Alphabet Inc - Chief Financial... \n", + "4 PERSON David M. Wehner - Meta Platforms Inc - Chief F... \n", + "5 PERSON Marc D. Hamburg - Berkshire Hathaway Inc - Chi... \n", + "6 PERSON Andrew K. Klatt - Berkshire Hathaway Inc - CFO... \n", + "7 PERSON Xu Hong - Alibaba Group Holding Ltd - Chief Fi... \n", + "8 PERSON John Lo - Tencent Holdings Ltd - Chief Financi... \n", + "9 PERSON Vasant M. Prabhu - Visa Inc - Vice Chairman of... \n", "\n", - " DocumentTitle \n", - "0 Amy E. Hood - Microsoft Corp - Chief Financial... \n", - "1 Luca Maestri - Apple Inc - Chief Financial Off... \n", - "2 Brian T. Olsavsky - Amazon.com Inc - Chief Fin... \n", - "3 Ruth M. Porat - Alphabet Inc - Chief Financial... \n", - "4 David M. Wehner - Meta Platforms Inc - Chief F... \n", - "5 Marc D. Hamburg - Berkshire Hathaway Inc - Chi... \n", - "6 Andrew K. Klatt - Berkshire Hathaway Inc - CFO... \n", - "7 Maggie Wu - Alibaba Group Holding Ltd - Chief ... \n", - "8 John Lo - Tencent Holdings Ltd - Chief Financi... \n", - "9 Vasant M. Prabhu - Visa Inc - Vice Chairman of... " + " PermID PI \n", + "0 34415553383 34415553383 \n", + "1 34414554748 34414554748 \n", + "2 34417610894 34417610894 \n", + "3 34413960665 34413960665 \n", + "4 34414804241 34414804241 \n", + "5 34413152672 34413152672 \n", + "6 34414966250 34414966250 \n", + "7 34425652371 34425652371 \n", + "8 34414907131 34414907131 \n", + "9 34413340523 34413340523 " ] }, "execution_count": 15, @@ -1608,7 +1633,7 @@ "source": [ "response = search.Definition(\n", " query=\"cfo\",\n", - " view=search.SearchViews.PEOPLE\n", + " view=search.Views.PEOPLE\n", ").get_data()\n", "\n", "response.data.df" @@ -1640,7 +1665,7 @@ ], "metadata": { "kernelspec": { - "display_name": "Python 3", + "display_name": "Python 3 (ipykernel)", "language": "python", "name": "python3" }, @@ -1654,7 +1679,7 @@ "name": "python", "nbconvert_exporter": "python", "pygments_lexer": "ipython3", - "version": "3.7.6" + "version": "3.9.7" } }, "nbformat": 4, diff --git a/Examples/2-Content/2.06-Search/EX-2.06.02-Search-Lookup.ipynb b/Examples/2-Content/2.06-Search/EX-2.06.02-Search-Lookup.ipynb index 9a1182c..50e2520 100644 --- a/Examples/2-Content/2.06-Search/EX-2.06.02-Search-Lookup.ipynb +++ b/Examples/2-Content/2.06-Search/EX-2.06.02-Search-Lookup.ipynb @@ -66,7 +66,7 @@ }, { "cell_type": "code", - "execution_count": 2, + "execution_count": 1, "metadata": {}, "outputs": [], "source": [ @@ -85,16 +85,16 @@ }, { "cell_type": "code", - "execution_count": 3, + "execution_count": 2, "metadata": {}, "outputs": [ { "data": { "text/plain": [ - "" + "" ] }, - "execution_count": 3, + "execution_count": 2, "metadata": {}, "output_type": "execute_result" } @@ -119,7 +119,7 @@ }, { "cell_type": "code", - "execution_count": 4, + "execution_count": 3, "metadata": {}, "outputs": [ { @@ -143,76 +143,76 @@ " \n", " \n", " \n", - " DocumentTitle\n", " BusinessEntity\n", - " SEDOL\n", + " DocumentTitle\n", " CUSIP\n", + " SEDOL\n", " \n", " \n", " \n", " \n", " MSFT.O\n", - " Microsoft Corp, Ordinary Share\n", " INSTRUMENTxEQUITY\n", - " <NA>\n", + " Microsoft Corp, Ordinary Share\n", " 594918104\n", + " <NA>\n", " \n", " \n", " AAPL.O\n", - " Apple Inc, Ordinary Share\n", " INSTRUMENTxEQUITY\n", - " <NA>\n", + " Apple Inc, Ordinary Share\n", " 037833100\n", + " <NA>\n", " \n", " \n", " GOOG.O\n", - " Alphabet Inc, Ordinary Share\n", " INSTRUMENTxEQUITY\n", - " <NA>\n", + " Alphabet Inc, Ordinary Share\n", " 02079K107\n", + " <NA>\n", " \n", " \n", " KBANK.BK\n", - " Kasikornbank PCL, Ordinary Share\n", " INSTRUMENTxEQUITY\n", - " 6888783\n", + " Kasikornbank PCL, Ordinary Share\n", " <NA>\n", + " 6888783\n", " \n", " \n", " SCC.BK\n", - " Siam Cement PCL, Ordinary Share\n", " INSTRUMENTxEQUITY\n", - " 6609917\n", + " Siam Cement PCL, Ordinary Share\n", " <NA>\n", + " 6609917\n", " \n", " \n", "\n", "" ], "text/plain": [ - " DocumentTitle BusinessEntity SEDOL \\\n", - "MSFT.O Microsoft Corp, Ordinary Share INSTRUMENTxEQUITY \n", - "AAPL.O Apple Inc, Ordinary Share INSTRUMENTxEQUITY \n", - "GOOG.O Alphabet Inc, Ordinary Share INSTRUMENTxEQUITY \n", - "KBANK.BK Kasikornbank PCL, Ordinary Share INSTRUMENTxEQUITY 6888783 \n", - "SCC.BK Siam Cement PCL, Ordinary Share INSTRUMENTxEQUITY 6609917 \n", + " BusinessEntity DocumentTitle CUSIP \\\n", + "MSFT.O INSTRUMENTxEQUITY Microsoft Corp, Ordinary Share 594918104 \n", + "AAPL.O INSTRUMENTxEQUITY Apple Inc, Ordinary Share 037833100 \n", + "GOOG.O INSTRUMENTxEQUITY Alphabet Inc, Ordinary Share 02079K107 \n", + "KBANK.BK INSTRUMENTxEQUITY Kasikornbank PCL, Ordinary Share \n", + "SCC.BK INSTRUMENTxEQUITY Siam Cement PCL, Ordinary Share \n", "\n", - " CUSIP \n", - "MSFT.O 594918104 \n", - "AAPL.O 037833100 \n", - "GOOG.O 02079K107 \n", - "KBANK.BK \n", - "SCC.BK " + " SEDOL \n", + "MSFT.O \n", + "AAPL.O \n", + "GOOG.O \n", + "KBANK.BK 6888783 \n", + "SCC.BK 6609917 " ] }, - "execution_count": 4, + "execution_count": 3, "metadata": {}, "output_type": "execute_result" } ], "source": [ "response = search.lookup.Definition(\n", - " view=search.SearchViews.INSTRUMENTS, # Required parameter\n", + " view=search.Views.INSTRUMENTS, # Required parameter\n", " scope=\"RIC\", # Required parameter\n", " terms=\"MSFT.O,AAPL.O,GOOG.O,IBM.N,KBANK.BK,SCC.BK\", # Required parameter\n", " select=\"BusinessEntity,DocumentTitle,CUSIP,SEDOL\", # Required parameter\n", @@ -223,7 +223,7 @@ }, { "cell_type": "code", - "execution_count": 5, + "execution_count": 4, "metadata": { "scrolled": true }, @@ -249,51 +249,51 @@ " \n", " \n", " \n", - " DocumentTitle\n", " BusinessEntity\n", + " DocumentTitle\n", " \n", " \n", " \n", " \n", " A\n", - " Agilent Technologies Inc, Ordinary Share, NYSE...\n", " QUOTExEQUITY\n", + " Agilent Technologies Inc, Ordinary Share, NYSE...\n", " \n", " \n", " B\n", - " Barnes Group Inc, Ordinary Share, NYSE Consoli...\n", " QUOTExEQUITY\n", + " Barnes Group Inc, Ordinary Share, NYSE Consoli...\n", " \n", " \n", " C\n", - " Citigroup Inc, Ordinary Share, NYSE Consolidated\n", " QUOTExEQUITY\n", + " Citigroup Inc, Ordinary Share, NYSE Consolidated\n", " \n", " \n", " D\n", - " Dominion Energy Inc, Ordinary Share, NYSE Cons...\n", " QUOTExEQUITY\n", + " Dominion Energy Inc, Ordinary Share, NYSE Cons...\n", " \n", " \n", "\n", "" ], "text/plain": [ - " DocumentTitle BusinessEntity\n", - "A Agilent Technologies Inc, Ordinary Share, NYSE... QUOTExEQUITY\n", - "B Barnes Group Inc, Ordinary Share, NYSE Consoli... QUOTExEQUITY\n", - "C Citigroup Inc, Ordinary Share, NYSE Consolidated QUOTExEQUITY\n", - "D Dominion Energy Inc, Ordinary Share, NYSE Cons... QUOTExEQUITY" + " BusinessEntity DocumentTitle\n", + "A QUOTExEQUITY Agilent Technologies Inc, Ordinary Share, NYSE...\n", + "B QUOTExEQUITY Barnes Group Inc, Ordinary Share, NYSE Consoli...\n", + "C QUOTExEQUITY Citigroup Inc, Ordinary Share, NYSE Consolidated\n", + "D QUOTExEQUITY Dominion Energy Inc, Ordinary Share, NYSE Cons..." ] }, - "execution_count": 5, + "execution_count": 4, "metadata": {}, "output_type": "execute_result" } ], "source": [ "response = search.lookup.Definition(\n", - " view=search.SearchViews.SEARCH_ALL, # Required parameter\n", + " view=search.Views.SEARCH_ALL, # Required parameter\n", " scope=\"RIC\", # Required parameter\n", " terms=\"A,B,NOSUCHRIC,C,D\", # Required parameter\n", " select=\"BusinessEntity,DocumentTitle\", # Required parameter\n", @@ -311,7 +311,7 @@ }, { "cell_type": "code", - "execution_count": 6, + "execution_count": 5, "metadata": {}, "outputs": [], "source": [ @@ -328,7 +328,7 @@ ], "metadata": { "kernelspec": { - "display_name": "Python 3", + "display_name": "Python 3 (ipykernel)", "language": "python", "name": "python3" }, @@ -342,7 +342,7 @@ "name": "python", "nbconvert_exporter": "python", "pygments_lexer": "ipython3", - "version": "3.7.6" + "version": "3.9.7" } }, "nbformat": 4, diff --git a/Examples/2-Content/2.06-Search/EX-2.06.03-Search-Metadata.ipynb b/Examples/2-Content/2.06-Search/EX-2.06.03-Search-Metadata.ipynb index 8e8830b..f249d52 100644 --- a/Examples/2-Content/2.06-Search/EX-2.06.03-Search-Metadata.ipynb +++ b/Examples/2-Content/2.06-Search/EX-2.06.03-Search-Metadata.ipynb @@ -66,7 +66,7 @@ }, { "cell_type": "code", - "execution_count": 2, + "execution_count": 1, "metadata": {}, "outputs": [], "source": [ @@ -85,16 +85,16 @@ }, { "cell_type": "code", - "execution_count": 3, + "execution_count": 2, "metadata": {}, "outputs": [ { "data": { "text/plain": [ - "" + "" ] }, - "execution_count": 3, + "execution_count": 2, "metadata": {}, "output_type": "execute_result" } @@ -119,7 +119,7 @@ }, { "cell_type": "code", - "execution_count": 4, + "execution_count": 3, "metadata": {}, "outputs": [ { @@ -205,7 +205,7 @@ " True\n", " False\n", " False\n", - " False\n", + " True\n", " False\n", " True\n", " \n", @@ -299,7 +299,7 @@ "AccountType AccountType False False False False \n", "Address Address False False False False \n", "AllRoles AllRoles False False False False \n", - "AnalystCode AnalystCode False False False True \n", + "AnalystCode AnalystCode False True False True \n", "... ... ... ... ... \n", "SUMTotalEquityAssets SUMTotalEquityAssets True False False False \n", "TelephoneNumber TelephoneNumber False False False False \n", @@ -310,14 +310,14 @@ "[252 rows x 7 columns]" ] }, - "execution_count": 4, + "execution_count": 3, "metadata": {}, "output_type": "execute_result" } ], "source": [ "response = search.metadata.Definition(\n", - " view = search.SearchViews.PEOPLE # Required parameterc\n", + " view = search.Views.PEOPLE # Required parameterc\n", ").get_data()\n", "\n", "response.data.df" @@ -332,7 +332,7 @@ }, { "cell_type": "code", - "execution_count": 5, + "execution_count": 4, "metadata": {}, "outputs": [ { @@ -374,7 +374,7 @@ " True\n", " False\n", " False\n", - " False\n", + " True\n", " False\n", " True\n", " \n", @@ -484,13 +484,13 @@ " True\n", " True\n", " False\n", - " False\n", + " True\n", " False\n", " True\n", " \n", " \n", "\n", - "

1487 rows × 7 columns

\n", + "

1490 rows × 7 columns

\n", "" ], "text/plain": [ @@ -508,7 +508,7 @@ "ZCodeValue ZCodeValue String True True \n", "\n", " Navigable Groupable Exact \\\n", - "AccrualBondCode AccrualBondCode False False False \n", + "AccrualBondCode AccrualBondCode False True False \n", "AccrualBondDescription AccrualBondDescription True True True \n", "AccrualDate AccrualDate True False False \n", "AccruedInterest AccruedInterest True False False \n", @@ -518,7 +518,7 @@ "WorstYearsToRedem WorstYearsToRedem True False False \n", "YieldCurveBenchmarkRIC YieldCurveBenchmarkRIC False False False \n", "YieldTypeDescription YieldTypeDescription False False False \n", - "ZCodeValue ZCodeValue False False False \n", + "ZCodeValue ZCodeValue False True False \n", "\n", " Symbol \n", "AccrualBondCode AccrualBondCode True \n", @@ -533,17 +533,17 @@ "YieldTypeDescription YieldTypeDescription False \n", "ZCodeValue ZCodeValue True \n", "\n", - "[1487 rows x 7 columns]" + "[1490 rows x 7 columns]" ] }, - "execution_count": 5, + "execution_count": 4, "metadata": {}, "output_type": "execute_result" } ], "source": [ "response = search.metadata.Definition(\n", - " view = search.SearchViews.INSTRUMENTS \n", + " view = search.Views.INSTRUMENTS \n", ").get_data()\n", "\n", "response.data.df" @@ -558,7 +558,7 @@ }, { "cell_type": "code", - "execution_count": 6, + "execution_count": 5, "metadata": {}, "outputs": [], "source": [ @@ -575,7 +575,7 @@ ], "metadata": { "kernelspec": { - "display_name": "Python 3", + "display_name": "Python 3 (ipykernel)", "language": "python", "name": "python3" }, @@ -589,7 +589,7 @@ "name": "python", "nbconvert_exporter": "python", "pygments_lexer": "ipython3", - "version": "3.7.6" + "version": "3.9.7" } }, "nbformat": 4, diff --git a/Examples/2-Content/2.07-IPA-FinancialContracts/EX-2.07.02-IPA-FinancialContracts-CapFloor.ipynb b/Examples/2-Content/2.07-IPA-FinancialContracts/EX-2.07.02-IPA-FinancialContracts-CapFloor.ipynb index 3b525ec..e8ffec2 100644 --- a/Examples/2-Content/2.07-IPA-FinancialContracts/EX-2.07.02-IPA-FinancialContracts-CapFloor.ipynb +++ b/Examples/2-Content/2.07-IPA-FinancialContracts/EX-2.07.02-IPA-FinancialContracts-CapFloor.ipynb @@ -119,7 +119,7 @@ }, { "cell_type": "code", - "execution_count": 4, + "execution_count": 10, "metadata": {}, "outputs": [ { @@ -170,55 +170,55 @@ " \n", " 0\n", " None\n", - " None\n", - " None\n", - " None\n", - " None\n", - " None\n", - " None\n", - " None\n", - " None\n", - " None\n", + " SHORT EUR 1.0000% CAP\n", + " CAP\n", + " 2022-02-15T00:00:00Z\n", + " 2022-02-15T00:00:00Z\n", + " 2019-02-11T00:00:00Z\n", + " 2024-02-12T00:00:00Z\n", + " 5Y\n", + " Monthly\n", + " Monthly\n", " ...\n", - " None\n", - " None\n", - " None\n", - " None\n", - " None\n", - " None\n", - " None\n", - " QPS-Pricer.1043\n", - " Invalid input: CalculationInput is invalid. Fo...\n", + " 104.293863\n", + " -0.220229\n", + " -0.220044\n", + " -418.328325\n", + " -3.90095\n", + " -541.486272\n", + " 64.480345\n", + " \n", + " \n", " \n", " \n", " \n", "\n", - "

1 rows × 28 columns

\n", + "

1 rows × 29 columns

\n", "" ], "text/plain": [ - " InstrumentTag InstrumentDescription CallPut ValuationDate MarketDataDate \\\n", - "0 None None None None None \n", + " InstrumentTag InstrumentDescription CallPut ValuationDate \\\n", + "0 None SHORT EUR 1.0000% CAP CAP 2022-02-15T00:00:00Z \n", "\n", - " StartDate EndDate Tenor InterestPaymentFrequency IndexResetFrequency ... \\\n", - "0 None None None None None ... \n", + " MarketDataDate StartDate EndDate Tenor \\\n", + "0 2022-02-15T00:00:00Z 2019-02-11T00:00:00Z 2024-02-12T00:00:00Z 5Y \n", "\n", - " ImpliedVolatilityBp DeltaPercent ForwardDeltaPercent DV01AmountInDealCcy \\\n", - "0 None None None None \n", + " InterestPaymentFrequency IndexResetFrequency ... ImpliedVolatilityBp \\\n", + "0 Monthly Monthly ... 104.293863 \n", "\n", - " GammaAmountInDealCcy VegaAmountInDealCcy ThetaAmountInDealCcy \\\n", - "0 None None None \n", + " DeltaPercent ForwardDeltaPercent DV01AmountInDealCcy GammaAmountInDealCcy \\\n", + "0 -0.220229 -0.220044 -418.328325 -3.90095 \n", "\n", - " ErrorCode ErrorMessage \\\n", - "0 QPS-Pricer.1043 Invalid input: CalculationInput is invalid. Fo... \n", + " VegaAmountInDealCcy ThetaAmountInDealCcy ErrorCode ErrorMessage \\\n", + "0 -541.486272 64.480345 \n", "\n", - " ProcessingInformation \n", - "0 \n", + " ProcessingInformation \n", + "0 \n", "\n", - "[1 rows x 28 columns]" + "[1 rows x 29 columns]" ] }, - "execution_count": 4, + "execution_count": 10, "metadata": {}, "output_type": "execute_result" } @@ -229,14 +229,14 @@ " start_date=\"2019-02-11\",\n", " amortization_schedule=[\n", " cap_floor.AmortizationItem(\n", - " start_date=\"2021-02-11\",\n", - " end_date=\"2022-02-11\",\n", + " start_date=\"2021-02-12\",\n", + " end_date=\"2021-02-12\",\n", " amount=100000,\n", " amortization_type=cap_floor.AmortizationType.SCHEDULE,\n", " ),\n", " cap_floor.AmortizationItem(\n", " start_date=\"2021-02-11\",\n", - " end_date=\"2022-02-11\",\n", + " end_date=\"2021-02-11\",\n", " amount=-100000,\n", " amortization_type=cap_floor.AmortizationType.SCHEDULE,\n", " ),\n", @@ -260,7 +260,7 @@ }, { "cell_type": "code", - "execution_count": 5, + "execution_count": 11, "metadata": {}, "outputs": [ { @@ -296,25 +296,25 @@ " \n", " 0\n", " None\n", + " SHORT EUR 1.0000% CAP\n", " None\n", + " -34349.598523\n", " None\n", - " None\n", - " None\n", - " Invalid input: CalculationInput is invalid. Fo...\n", + " \n", " \n", " \n", "\n", "" ], "text/plain": [ - " InstrumentTag InstrumentDescription FixedRate MarketValueInDealCcy \\\n", - "0 None None None None \n", + " InstrumentTag InstrumentDescription FixedRate MarketValueInDealCcy \\\n", + "0 None SHORT EUR 1.0000% CAP None -34349.598523 \n", "\n", - " MarketValueInReportCcy ErrorMessage \n", - "0 None Invalid input: CalculationInput is invalid. Fo... " + " MarketValueInReportCcy ErrorMessage \n", + "0 None " ] }, - "execution_count": 5, + "execution_count": 11, "metadata": {}, "output_type": "execute_result" } @@ -325,14 +325,14 @@ " start_date=\"2019-02-11\",\n", " amortization_schedule=[\n", " cap_floor.AmortizationItem(\n", - " start_date=\"2021-02-11\",\n", - " end_date=\"2022-02-11\",\n", + " start_date=\"2021-02-12\",\n", + " end_date=\"2021-02-12\",\n", " amount=100000,\n", " amortization_type=cap_floor.AmortizationType.SCHEDULE,\n", " ),\n", " cap_floor.AmortizationItem(\n", " start_date=\"2021-02-11\",\n", - " end_date=\"2022-02-11\",\n", + " end_date=\"2021-02-11\",\n", " amount=-100000,\n", " amortization_type=cap_floor.AmortizationType.SCHEDULE,\n", " ),\n", @@ -364,7 +364,7 @@ }, { "cell_type": "code", - "execution_count": 6, + "execution_count": 12, "metadata": {}, "outputs": [ { @@ -415,55 +415,55 @@ " \n", " 0\n", " None\n", - " None\n", - " None\n", - " None\n", - " None\n", - " None\n", - " None\n", - " None\n", - " None\n", - " None\n", + " SHORT EUR 1.0000% CAP\n", + " CAP\n", + " 2020-02-07T00:00:00Z\n", + " 2020-02-07T00:00:00Z\n", + " 2019-02-11T00:00:00Z\n", + " 2024-02-12T00:00:00Z\n", + " 5Y\n", + " Monthly\n", + " Monthly\n", " ...\n", - " None\n", - " None\n", - " None\n", - " None\n", - " None\n", - " None\n", - " None\n", - " QPS-Pricer.1043\n", - " Invalid input: CalculationInput is invalid. Fo...\n", + " 52.472907\n", + " -0.140214\n", + " -0.13845\n", + " -554.32847\n", + " -8.35115\n", + " -1257.704728\n", + " 30.34355\n", " \n", + " \n", + " The following global parameter is invalid: ski...\n", " \n", " \n", "\n", - "

1 rows × 28 columns

\n", + "

1 rows × 29 columns

\n", "" ], "text/plain": [ - " InstrumentTag InstrumentDescription CallPut ValuationDate MarketDataDate \\\n", - "0 None None None None None \n", + " InstrumentTag InstrumentDescription CallPut ValuationDate \\\n", + "0 None SHORT EUR 1.0000% CAP CAP 2020-02-07T00:00:00Z \n", "\n", - " StartDate EndDate Tenor InterestPaymentFrequency IndexResetFrequency ... \\\n", - "0 None None None None None ... \n", + " MarketDataDate StartDate EndDate Tenor \\\n", + "0 2020-02-07T00:00:00Z 2019-02-11T00:00:00Z 2024-02-12T00:00:00Z 5Y \n", "\n", - " ImpliedVolatilityBp DeltaPercent ForwardDeltaPercent DV01AmountInDealCcy \\\n", - "0 None None None None \n", + " InterestPaymentFrequency IndexResetFrequency ... ImpliedVolatilityBp \\\n", + "0 Monthly Monthly ... 52.472907 \n", "\n", - " GammaAmountInDealCcy VegaAmountInDealCcy ThetaAmountInDealCcy \\\n", - "0 None None None \n", + " DeltaPercent ForwardDeltaPercent DV01AmountInDealCcy GammaAmountInDealCcy \\\n", + "0 -0.140214 -0.13845 -554.32847 -8.35115 \n", "\n", - " ErrorCode ErrorMessage \\\n", - "0 QPS-Pricer.1043 Invalid input: CalculationInput is invalid. Fo... \n", + " VegaAmountInDealCcy ThetaAmountInDealCcy ErrorCode ErrorMessage \\\n", + "0 -1257.704728 30.34355 \n", "\n", - " ProcessingInformation \n", - "0 \n", + " ProcessingInformation \n", + "0 The following global parameter is invalid: ski... \n", "\n", - "[1 rows x 28 columns]" + "[1 rows x 29 columns]" ] }, - "execution_count": 6, + "execution_count": 12, "metadata": {}, "output_type": "execute_result" } @@ -474,14 +474,14 @@ " start_date=\"2019-02-11\",\n", " amortization_schedule=[\n", " cap_floor.AmortizationItem(\n", - " start_date=\"2021-02-11\",\n", - " end_date=\"2022-02-11\",\n", + " start_date=\"2021-02-12\",\n", + " end_date=\"2021-02-12\",\n", " amount=100000,\n", " amortization_type=cap_floor.AmortizationType.SCHEDULE,\n", " ),\n", " cap_floor.AmortizationItem(\n", " start_date=\"2021-02-11\",\n", - " end_date=\"2022-02-11\",\n", + " end_date=\"2021-02-11\",\n", " amount=-100000,\n", " amortization_type=cap_floor.AmortizationType.SCHEDULE,\n", " ),\n", diff --git a/Examples/2-Content/2.07-IPA-FinancialContracts/EX-2.07.05-IPA-FinancialContracts-FXCrossStreamingEvents.ipynb b/Examples/2-Content/2.07-IPA-FinancialContracts/EX-2.07.05-IPA-FinancialContracts-FXCrossStreamingEvents.ipynb index 944fb89..72ff2e8 100644 --- a/Examples/2-Content/2.07-IPA-FinancialContracts/EX-2.07.05-IPA-FinancialContracts-FXCrossStreamingEvents.ipynb +++ b/Examples/2-Content/2.07-IPA-FinancialContracts/EX-2.07.05-IPA-FinancialContracts-FXCrossStreamingEvents.ipynb @@ -66,7 +66,7 @@ }, { "cell_type": "code", - "execution_count": 2, + "execution_count": 15, "metadata": {}, "outputs": [], "source": [ @@ -86,16 +86,16 @@ }, { "cell_type": "code", - "execution_count": 3, + "execution_count": 16, "metadata": {}, "outputs": [ { "data": { "text/plain": [ - "" + "" ] }, - "execution_count": 3, + "execution_count": 16, "metadata": {}, "output_type": "execute_result" } @@ -151,7 +151,7 @@ }, { "cell_type": "code", - "execution_count": 4, + "execution_count": 17, "metadata": { "tags": [] }, @@ -186,7 +186,7 @@ }, { "cell_type": "code", - "execution_count": 5, + "execution_count": 18, "metadata": {}, "outputs": [], "source": [ @@ -199,9 +199,9 @@ " \n", "stream = (\n", " fxcross_def.get_stream()\n", - " .on_response(lambda stream, data, headers: display_event(\"response\", data, headers))\n", - " .on_update(lambda stream, data, headers: display_event(\"update\", data, headers))\n", - " .on_state(lambda stream, data: display_event(\"state\", data, None))\n", + " .on_response(lambda data, headers, stream: display_event(\"response\", data, headers))\n", + " .on_update(lambda data, headers, stream: display_event(\"update\", data, headers))\n", + " .on_state(lambda state, stream: display_event(\"state\", state, None))\n", " )" ] }, @@ -214,26 +214,23 @@ }, { "cell_type": "code", - "execution_count": 6, + "execution_count": 19, "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ - "----------------------------------------------------------\n", - ">>> response event received at 15:28:11.933778\n", - "[['USDAUD', {'bid': 1.3873473917869035, 'ask': 1.3875398917718884, 'mid': 1.387443641779396, 'processingInformation': ''}, '', '2021-12-20', '2021-12-20']]\n", - "['InstrumentTag', 'FxSpot_BidMidAsk', 'ErrorCode', 'Ccy1SpotDate', 'Ccy2SpotDate']\n" + "----------------------------------------------------------" ] }, { "data": { "text/plain": [ - "" + "" ] }, - "execution_count": 6, + "execution_count": 19, "metadata": {}, "output_type": "execute_result" }, @@ -241,25 +238,25 @@ "name": "stdout", "output_type": "stream", "text": [ - "----------------------------------------------------------\n", - ">>> update event received at 15:28:12.936265\n", - "[['USDAUD', {'bid': 1.3873473917869035, 'ask': 1.3877324451845683, 'mid': 1.3875399184857358, 'processingInformation': ''}, '', '2021-12-20', '2021-12-20']]\n", + "\n", + ">>> response event received at 14:26:49.302136\n", + "[['USDAUD', {'bid': 1.4494854326714017, 'ask': 1.449905756125852, 'mid': 1.449695594398627, 'processingInformation': ''}, '', '2022-06-24', '2022-06-24']]\n", "['InstrumentTag', 'FxSpot_BidMidAsk', 'ErrorCode', 'Ccy1SpotDate', 'Ccy2SpotDate']\n", "----------------------------------------------------------\n", - ">>> update event received at 15:28:13.942145\n", - "[['USDAUD', {'bid': 1.3871549452073797, 'ask': 1.3875398917718884, 'mid': 1.3873474184896342, 'processingInformation': ''}, '', '2021-12-20', '2021-12-20']]\n", + ">>> update event received at 14:26:50.046717\n", + "[['USDAUD', {'bid': 1.4494854326714017, 'ask': 1.449905756125852, 'mid': 1.449695594398627, 'processingInformation': ''}, '', '2022-06-24', '2022-06-24']]\n", "['InstrumentTag', 'FxSpot_BidMidAsk', 'ErrorCode', 'Ccy1SpotDate', 'Ccy2SpotDate']\n", "----------------------------------------------------------\n", - ">>> update event received at 15:28:14.923359\n", - "[['USDAUD', {'bid': 1.3873473917869035, 'ask': 1.3877324451845683, 'mid': 1.3875399184857358, 'processingInformation': ''}, '', '2021-12-20', '2021-12-20']]\n", + ">>> update event received at 14:26:51.029827\n", + "[['USDAUD', {'bid': 1.4496955639315745, 'ask': 1.4501160092807426, 'mid': 1.4499057866061587, 'processingInformation': ''}, '', '2022-06-24', '2022-06-24']]\n", "['InstrumentTag', 'FxSpot_BidMidAsk', 'ErrorCode', 'Ccy1SpotDate', 'Ccy2SpotDate']\n", "----------------------------------------------------------\n", - ">>> update event received at 15:28:17.941890\n", - "[['USDAUD', {'bid': 1.3873473917869035, 'ask': 1.3877324451845683, 'mid': 1.3875399184857358, 'processingInformation': ''}, '', '2021-12-20', '2021-12-20']]\n", + ">>> update event received at 14:26:53.045648\n", + "[['USDAUD', {'bid': 1.4490653528474133, 'ask': 1.4501160092807426, 'mid': 1.449590681064078, 'processingInformation': ''}, '', '2022-06-24', '2022-06-24']]\n", "['InstrumentTag', 'FxSpot_BidMidAsk', 'ErrorCode', 'Ccy1SpotDate', 'Ccy2SpotDate']\n", "----------------------------------------------------------\n", - ">>> update event received at 15:28:18.941207\n", - "[['USDAUD', {'bid': 1.3873473917869035, 'ask': 1.3877324451845683, 'mid': 1.3875399184857358, 'processingInformation': ''}, '', '2021-12-20', '2021-12-20']]\n", + ">>> update event received at 14:26:54.037456\n", + "[['USDAUD', {'bid': 1.4494854326714017, 'ask': 1.449905756125852, 'mid': 1.449695594398627, 'processingInformation': ''}, '', '2022-06-24', '2022-06-24']]\n", "['InstrumentTag', 'FxSpot_BidMidAsk', 'ErrorCode', 'Ccy1SpotDate', 'Ccy2SpotDate']\n" ] } @@ -277,16 +274,16 @@ }, { "cell_type": "code", - "execution_count": 7, + "execution_count": 20, "metadata": {}, "outputs": [ { "data": { "text/plain": [ - "" + "" ] }, - "execution_count": 7, + "execution_count": 20, "metadata": {}, "output_type": "execute_result" } @@ -304,7 +301,7 @@ }, { "cell_type": "code", - "execution_count": 8, + "execution_count": 21, "metadata": { "pycharm": { "name": "#%%\n" @@ -325,7 +322,7 @@ ], "metadata": { "kernelspec": { - "display_name": "Python 3", + "display_name": "Python 3 (ipykernel)", "language": "python", "name": "python3" }, @@ -339,7 +336,7 @@ "name": "python", "nbconvert_exporter": "python", "pygments_lexer": "ipython3", - "version": "3.7.6" + "version": "3.9.7" } }, "nbformat": 4, diff --git a/Examples/2-Content/2.07-IPA-FinancialContracts/EX-2.07.10-IPA-FinancialContracts-Swaption.ipynb b/Examples/2-Content/2.07-IPA-FinancialContracts/EX-2.07.10-IPA-FinancialContracts-Swaption.ipynb index 951cee7..b8ca0a0 100644 --- a/Examples/2-Content/2.07-IPA-FinancialContracts/EX-2.07.10-IPA-FinancialContracts-Swaption.ipynb +++ b/Examples/2-Content/2.07-IPA-FinancialContracts/EX-2.07.10-IPA-FinancialContracts-Swaption.ipynb @@ -66,7 +66,7 @@ }, { "cell_type": "code", - "execution_count": 2, + "execution_count": 1, "metadata": {}, "outputs": [], "source": [ @@ -86,16 +86,16 @@ }, { "cell_type": "code", - "execution_count": 3, + "execution_count": 2, "metadata": {}, "outputs": [ { "data": { "text/plain": [ - "" + "" ] }, - "execution_count": 3, + "execution_count": 2, "metadata": {}, "output_type": "execute_result" } @@ -113,7 +113,7 @@ }, { "cell_type": "code", - "execution_count": 4, + "execution_count": 6, "metadata": {}, "outputs": [ { @@ -163,51 +163,48 @@ " \n", " 0\n", " BermudanEURswaption\n", - " Long payer BERM 7Y x 3Y Swaption\n", - " 2020-04-24T00:00:00Z\n", - " 2027-04-26T00:00:00Z\n", + " Long payer BERM 7Y x 2Y Swaption\n", + " 2020-04-24\n", + " 2027-04-26\n", " CALL\n", " BERM\n", - " 1000000\n", + " 10000000\n", " EUR\n", " Cash\n", " EUR\n", " 7Y\n", - " 3Y\n", + " 2Y\n", " 2.75\n", - " 1378.506381\n", - " 0.137851\n", - " 0.046345\n", - " 4.634472\n", - " 0.550744\n", - " 30.645072\n", - " 0.009369\n", + " 6281.787595\n", + " 0.062818\n", + " 0.105315\n", + " 105.315476\n", + " 7.732847\n", + " 473.653275\n", + " 1.104078\n", " \n", " \n", "\n", "" ], "text/plain": [ - " InstrumentTag InstrumentDescription \\\n", - "0 BermudanEURswaption Long payer BERM 7Y x 3Y Swaption \n", + " InstrumentTag InstrumentDescription ValuationDate \\\n", + "0 BermudanEURswaption Long payer BERM 7Y x 2Y Swaption 2020-04-24 \n", "\n", - " ValuationDate ExpiryDate OptionType ExerciseStyle \\\n", - "0 2020-04-24T00:00:00Z 2027-04-26T00:00:00Z CALL BERM \n", + " ExpiryDate OptionType ExerciseStyle NotionalAmount NotionalCcy \\\n", + "0 2027-04-26 CALL BERM 10000000 EUR \n", "\n", - " NotionalAmount NotionalCcy SettlementType SettlementCcy Tenor \\\n", - "0 1000000 EUR Cash EUR 7Y \n", + " SettlementType SettlementCcy Tenor UnderlyingTenor StrikePercent \\\n", + "0 Cash EUR 7Y 2Y 2.75 \n", "\n", - " UnderlyingTenor StrikePercent MarketValueInDealCcy PremiumPercent \\\n", - "0 3Y 2.75 1378.506381 0.137851 \n", + " MarketValueInDealCcy PremiumPercent DeltaPercent DeltaAmountInDealCcy \\\n", + "0 6281.787595 0.062818 0.105315 105.315476 \n", "\n", - " DeltaPercent DeltaAmountInDealCcy ThetaAmountInDealCcy \\\n", - "0 0.046345 4.634472 0.550744 \n", - "\n", - " VegaAmountInDealCcy GammaAmountInDealCcy \n", - "0 30.645072 0.009369 " + " ThetaAmountInDealCcy VegaAmountInDealCcy GammaAmountInDealCcy \n", + "0 7.732847 473.653275 1.104078 " ] }, - "execution_count": 4, + "execution_count": 6, "metadata": {}, "output_type": "execute_result" } @@ -218,17 +215,36 @@ " settlement_type=swaption.SwaptionSettlementType.CASH,\n", " tenor=\"7Y\",\n", " strike_percent=2.75,\n", - " # \"notionalAmount\": 1000000,\n", " buy_sell=swaption.BuySell.BUY,\n", - " call_put=swaption.CallPut.CALL,\n", + " swaption_type=swaption.SwaptionType.PAYER,\n", " exercise_style=swaption.ExerciseStyle.BERM,\n", " bermudan_swaption_definition=swaption.BermudanSwaptionDefinition(\n", " exercise_schedule_type=swaption.ExerciseScheduleType.FLOAT_LEG,\n", " notification_days=0,\n", " ),\n", - " underlying_definition=swap.Definition(tenor=\"3Y\", template=\"EUR_AB6E\"),\n", + " underlying_definition=swap.Definition(\n", + " tenor=\"2Y\",\n", + " legs=[\n", + " swap.LegDefinition(\n", + " direction=swap.Direction.PAID,\n", + " notional_amount=\"10000000\",\n", + " notional_ccy=\"EUR\",\n", + " interest_type=swap.InterestType.FIXED,\n", + " interest_payment_frequency=swap.Frequency.QUARTERLY\n", + " ),\n", + " swap.LegDefinition(\n", + " index_tenor=\"5Y\",\n", + " cms_template=\"EUR_AB6E\",\n", + " interest_type=swap.InterestType.FLOAT,\n", + " interest_payment_frequency=swap.Frequency.QUARTERLY,\n", + " direction=swap.Direction.RECEIVED,\n", + " notional_ccy=\"EUR\",\n", + " ),\n", + " ],\n", + " pricing_parameters=swap.PricingParameters(discounting_tenor=\"ON\"),\n", + " ),\n", " pricing_parameters=swaption.PricingParameters(\n", - " valuation_date=\"2020-04-24\", nb_iterations=80\n", + " valuation_date=\"2020-04-24\"\n", " ),\n", " fields=[\n", " \"InstrumentTag\",\n", @@ -266,7 +282,7 @@ }, { "cell_type": "code", - "execution_count": 5, + "execution_count": 7, "metadata": { "pycharm": { "name": "#%%\n" @@ -287,7 +303,7 @@ ], "metadata": { "kernelspec": { - "display_name": "Python 3", + "display_name": "Python 3 (ipykernel)", "language": "python", "name": "python3" }, @@ -301,7 +317,7 @@ "name": "python", "nbconvert_exporter": "python", "pygments_lexer": "ipython3", - "version": "3.7.6" + "version": "3.9.7" } }, "nbformat": 4, diff --git a/Examples/2-Content/2.08-IPA-CurvesAndSurfaces/EX-2.08.01-IPA-CurvesAndSurfaces-ForwardCurve.ipynb b/Examples/2-Content/2.08-IPA-CurvesAndSurfaces/EX-2.08.01-IPA-CurvesAndSurfaces-ForwardCurve.ipynb index ade0d57..2cd5e64 100644 --- a/Examples/2-Content/2.08-IPA-CurvesAndSurfaces/EX-2.08.01-IPA-CurvesAndSurfaces-ForwardCurve.ipynb +++ b/Examples/2-Content/2.08-IPA-CurvesAndSurfaces/EX-2.08.01-IPA-CurvesAndSurfaces-ForwardCurve.ipynb @@ -50,7 +50,12 @@ { "cell_type": "code", "execution_count": 1, - "metadata": {}, + "metadata": { + "ExecuteTime": { + "end_time": "2024-01-10T13:53:02.955343100Z", + "start_time": "2024-01-10T13:53:02.364273700Z" + } + }, "outputs": [], "source": [ "import os\n", @@ -67,11 +72,16 @@ { "cell_type": "code", "execution_count": 2, - "metadata": {}, + "metadata": { + "ExecuteTime": { + "end_time": "2024-01-10T13:53:09.223531600Z", + "start_time": "2024-01-10T13:53:02.374307300Z" + } + }, "outputs": [], "source": [ "import refinitiv.data as rd\n", - "from refinitiv.data.content.ipa.curves import forward_curve" + "from refinitiv.data.content.ipa.curves import forward_curves" ] }, { @@ -86,13 +96,28 @@ { "cell_type": "code", "execution_count": 3, - "metadata": {}, + "metadata": { + "ExecuteTime": { + "end_time": "2024-01-10T13:53:11.151202500Z", + "start_time": "2024-01-10T13:53:08.378545500Z" + } + }, "outputs": [ + { + "name": "stderr", + "output_type": "stream", + "text": [ + "C:\\Users\\UX501327\\PycharmProjects\\lseg-data\\refinitiv\\data\\_access_layer\\session.py:71:FutureWarning: \n", + "You open a platform session using the default value of the signon_control parameter (signon_control=True).\n", + "In future library version v2.0, this default will be changed to False.\n", + "If you want to keep the same behavior as today, you will need to set the signon_control parameter to True either in the library configuration file\n", + "({'sessions':{'platform':{'your_session_name':{'signon_control':true}}}}) or in your code where you create the Platform Session.\n", + "These alternative options are already supported in the current version of the library.\n" + ] + }, { "data": { - "text/plain": [ - "" - ] + "text/plain": "" }, "execution_count": 3, "metadata": {}, @@ -113,62 +138,17 @@ { "cell_type": "code", "execution_count": 4, - "metadata": {}, + "metadata": { + "ExecuteTime": { + "end_time": "2024-01-10T13:53:13.597918300Z", + "start_time": "2024-01-10T13:53:11.152199800Z" + } + }, "outputs": [ { "data": { - "text/html": [ - "
\n", - "\n", - "\n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - "
discountFactorratePercentendDatestartDatetenor
01.0-0.5571342021-02-012021-02-010D
11.000046-0.5571342021-02-042021-02-011D
\n", - "
" - ], - "text/plain": [ - " discountFactor ratePercent endDate startDate tenor\n", - "0 1.0 -0.557134 2021-02-01 2021-02-01 0D\n", - "1 1.000046 -0.557134 2021-02-04 2021-02-01 1D" - ] + "text/plain": " endDate startDate discountFactor ratePercent tenor\n0 2021-02-01 2021-02-01 1.0 -0.556761 0D\n1 2021-02-04 2021-02-01 1.000046 -0.556761 1D", + "text/html": "
\n\n\n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n
endDatestartDatediscountFactorratePercenttenor
02021-02-012021-02-011.0-0.5567610D
12021-02-042021-02-011.000046-0.5567611D
\n
" }, "execution_count": 4, "metadata": {}, @@ -176,14 +156,15 @@ } ], "source": [ - "response = forward_curve.Definition(\n", - " curve_definition=forward_curve.SwapZcCurveDefinition(\n", + "response = forward_curves.Definition(\n", + " curve_definition=forward_curves.SwapZcCurveDefinition(\n", " currency=\"EUR\",\n", " index_name=\"EURIBOR\",\n", " discounting_tenor=\"OIS\",\n", + " main_constituent_asset_class=\"Swap\",\n", " ),\n", " forward_curve_definitions=[\n", - " forward_curve.ForwardCurveDefinition(\n", + " forward_curves.ForwardCurveDefinition(\n", " index_tenor=\"3M\",\n", " forward_curve_tag=\"ForwardTag\",\n", " forward_start_date=\"2021-02-01\",\n", @@ -191,7 +172,7 @@ " forward_start_tenor=\"some_start_tenor\",\n", " )\n", " ],\n", - " curve_parameters=forward_curve.SwapZcCurveParameters(),\n", + " curve_parameters=forward_curves.SwapZcCurveParameters(valuation_date=\"2021-02-01\"),\n", " curve_tag=\"some_tag\",\n", ").get_data()\n", "\n", @@ -211,6 +192,10 @@ "metadata": { "pycharm": { "name": "#%%\n" + }, + "ExecuteTime": { + "end_time": "2024-01-10T13:53:15.956716800Z", + "start_time": "2024-01-10T13:53:13.598915800Z" } }, "outputs": [], @@ -220,15 +205,20 @@ }, { "cell_type": "code", - "execution_count": null, - "metadata": {}, + "execution_count": 5, + "metadata": { + "ExecuteTime": { + "end_time": "2024-01-10T13:53:15.965169700Z", + "start_time": "2024-01-10T13:53:15.959264600Z" + } + }, "outputs": [], "source": [] } ], "metadata": { "kernelspec": { - "display_name": "Python 3", + "display_name": "Python 3 (ipykernel)", "language": "python", "name": "python3" }, @@ -242,7 +232,7 @@ "name": "python", "nbconvert_exporter": "python", "pygments_lexer": "ipython3", - "version": "3.7.6" + "version": "3.9.7" } }, "nbformat": 4, diff --git a/Examples/2-Content/2.08-IPA-CurvesAndSurfaces/EX-2.08.02-IPA-CurvesAndSurfaces-ZCCurve.ipynb b/Examples/2-Content/2.08-IPA-CurvesAndSurfaces/EX-2.08.02-IPA-CurvesAndSurfaces-ZCCurve.ipynb deleted file mode 100644 index 8a697ee..0000000 --- a/Examples/2-Content/2.08-IPA-CurvesAndSurfaces/EX-2.08.02-IPA-CurvesAndSurfaces-ZCCurve.ipynb +++ /dev/null @@ -1,672 +0,0 @@ -{ - "cells": [ - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "----\n", - "\n", - "\n", - "# Data Library for Python\n", - "\n", - "----" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "## Content layer - IPA - ZC Curve\n", - "This notebook demonstrates how to retrieve Zero Coupon Curves." - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "#### Learn more\n", - "\n", - "To learn more about the Refinitiv Data Library for Python please join the Refinitiv Developer Community. By [registering](https://developers.refinitiv.com/iam/register) and [logging](https://developers.refinitiv.com/content/devportal/en_us/initCookie.html) into the Refinitiv Developer Community portal you will have free access to a number of learning materials like \n", - " [Quick Start guides](https://developers.refinitiv.com/en/api-catalog/refinitiv-data-platform/refinitiv-data-library-for-python/quick-start), \n", - " [Tutorials](https://developers.refinitiv.com/en/api-catalog/refinitiv-data-platform/refinitiv-data-library-for-python/learning), \n", - " [Documentation](https://developers.refinitiv.com/en/api-catalog/refinitiv-data-platform/refinitiv-data-library-for-python/docs)\n", - " and much more.\n", - "\n", - "#### Getting Help and Support\n", - "\n", - "If you have any questions regarding using the API, please post them on \n", - "the [Refinitiv Data Q&A Forum](https://community.developers.refinitiv.com/spaces/321/index.html). \n", - "The Refinitiv Developer Community will be happy to help. " - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "## Set the configuration file location\n", - "For a better ease of use, you have the option to set initialization parameters of the Refinitiv Data Library in the _refinitiv-data.config.json_ configuration file. This file must be located beside your notebook, in your user folder or in a folder defined by the _RD_LIB_CONFIG_PATH_ environment variable. The _RD_LIB_CONFIG_PATH_ environment variable is the option used by this series of examples. The following code sets this environment variable. " - ] - }, - { - "cell_type": "code", - "execution_count": 1, - "metadata": {}, - "outputs": [], - "source": [ - "import os\n", - "os.environ[\"RD_LIB_CONFIG_PATH\"] = \"../../../Configuration\"" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "## Some Imports to start with" - ] - }, - { - "cell_type": "code", - "execution_count": 2, - "metadata": {}, - "outputs": [], - "source": [ - "import refinitiv.data as rd\n", - "from refinitiv.data.content.ipa.curves import zc_curve" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "## Open the data session\n", - "\n", - "The open_session() function creates and open sessions based on the information contained in the refinitiv-data.config.json configuration file. Please edit this file to set the session type and other parameters required for the session you want to open." - ] - }, - { - "cell_type": "code", - "execution_count": 3, - "metadata": {}, - "outputs": [ - { - "data": { - "text/plain": [ - "" - ] - }, - "execution_count": 3, - "metadata": {}, - "output_type": "execute_result" - } - ], - "source": [ - "rd.open_session()" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "## Retrieve data" - ] - }, - { - "cell_type": "code", - "execution_count": 4, - "metadata": {}, - "outputs": [ - { - "data": { - "text/html": [ - "
\n", - "\n", - "\n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - "
instrumentstenordiscountFactorendDateratePercentstartDate
0None0D1.02019-08-21-0.3794882019-08-21
1[{'instrumentCode': 'EUROND='}]ON1.000012019-08-22-0.3794882019-08-21
2[{'instrumentCode': 'EURTND='}]TN1.0000232019-08-23-0.4173582019-08-21
3[{'instrumentCode': 'EUREONSW=ICAP'}]SW1.0000932019-08-30-0.3769162019-08-21
4[{'instrumentCode': 'EUREON2W=ICAP'}]2W1.0001632019-09-06-0.3701022019-08-21
5[{'instrumentCode': 'EUREON3W=ICAP'}]3W1.0002332019-09-13-0.3689812019-08-21
6[{'instrumentCode': 'EUREON1M=ICAP'}]1M1.0003542019-09-23-0.3903812019-08-21
7[{'instrumentCode': 'EUREON2M=ICAP'}]2M1.0007762019-10-23-0.4483092019-08-21
8[{'instrumentCode': 'EUREON3M=ICAP'}]3M1.0012662019-11-25-0.4797462019-08-21
9[{'instrumentCode': 'EUREON4M=ICAP'}]4M1.0016862019-12-23-0.4947172019-08-21
10[{'instrumentCode': 'EUREON5M=ICAP'}]5M1.0021992020-01-23-0.5160292019-08-21
11[{'instrumentCode': 'EUREON6M=ICAP'}]6M1.0027462020-02-24-0.5338392019-08-21
12[{'instrumentCode': 'EUREON7M=ICAP'}]7M1.0032282020-03-23-0.5471632019-08-21
13[{'instrumentCode': 'EUREON8M=ICAP'}]8M1.0037922020-04-23-0.5615332019-08-21
14[{'instrumentCode': 'EUREON9M=ICAP'}]9M1.0043952020-05-25-0.5756942019-08-21
15[{'instrumentCode': 'EUREON10M=ICAP'}]10M1.0049442020-06-23-0.5862462019-08-21
16[{'instrumentCode': 'EUREON11M=ICAP'}]11M1.0055342020-07-23-0.5975962019-08-21
17[{'instrumentCode': 'EUREON1Y=ICAP'}]1Y1.006172020-08-24-0.6082592019-08-21
18[{'instrumentCode': 'EUREON15M=ICAP'}]1Y3M1.0080142020-11-23-0.632762019-08-21
19[{'instrumentCode': 'EUREON18M=ICAP'}]1Y6M1.009922021-02-23-0.6517842019-08-21
20[{'instrumentCode': 'EUREON19M=TTKL'}]1Y7M1.0105252021-03-23-0.6573622019-08-21
21[{'instrumentCode': 'EUREON20M=TTKL'}]1Y8M1.0111772021-04-23-0.6625352019-08-21
22[{'instrumentCode': 'EUREON21M=ICAP'}]1Y9M1.0117692021-05-24-0.6637572019-08-21
23[{'instrumentCode': 'EUREON2Y=ICAP'}]2Y1.0136392021-08-23-0.6732212019-08-21
24[{'instrumentCode': 'EUREON3Y=ICAP'}]3Y1.0210382022-08-23-0.690322019-08-21
25[{'instrumentCode': 'EUREON4Y=ICAP'}]4Y1.028222023-08-23-0.6923592019-08-21
26[{'instrumentCode': 'EUREON5Y=ICAP'}]5Y1.034472024-08-23-0.6747632019-08-21
27[{'instrumentCode': 'EUREON6Y=ICAP'}]6Y1.0395082025-08-25-0.6425472019-08-21
28[{'instrumentCode': 'EUREON7Y=ICAP'}]7Y1.0433452026-08-24-0.6036242019-08-21
29[{'instrumentCode': 'EUREON8Y=ICAP'}]8Y1.0455412027-08-23-0.554752019-08-21
30[{'instrumentCode': 'EUREON9Y=ICAP'}]9Y1.0463482028-08-23-0.5018282019-08-21
31[{'instrumentCode': 'EUREON10Y=ICAP'}]10Y1.0463292029-08-23-0.4516072019-08-21
32[{'instrumentCode': 'EUREON11Y=ICAP'}]11Y1.0450132030-08-23-0.3992692019-08-21
33[{'instrumentCode': 'EUREON12Y=ICAP'}]12Y1.0429512031-08-25-0.3495232019-08-21
34[{'instrumentCode': 'EUREON15Y=ICAP'}]15Y1.0329372034-08-23-0.2157292019-08-21
35[{'instrumentCode': 'EUREON20Y=ICAP'}]20Y1.0171922039-08-23-0.0851682019-08-21
36[{'instrumentCode': 'EUREON25Y=ICAP'}]25Y1.0065382044-08-23-0.0260582019-08-21
37[{'instrumentCode': 'EUREON30Y=ICAP'}]30Y1.0037612049-08-23-0.0125092019-08-21
38[{'instrumentCode': 'EUREON40Y=ICAP'}]40Y1.0132732059-08-25-0.0329492019-08-21
39[{'instrumentCode': 'EUREON50Y=ICAP'}]50Y1.0321152069-08-23-0.0631942019-08-21
\n", - "
" - ], - "text/plain": [ - " instruments tenor discountFactor endDate \\\n", - "0 None 0D 1.0 2019-08-21 \n", - "1 [{'instrumentCode': 'EUROND='}] ON 1.00001 2019-08-22 \n", - "2 [{'instrumentCode': 'EURTND='}] TN 1.000023 2019-08-23 \n", - "3 [{'instrumentCode': 'EUREONSW=ICAP'}] SW 1.000093 2019-08-30 \n", - "4 [{'instrumentCode': 'EUREON2W=ICAP'}] 2W 1.000163 2019-09-06 \n", - "5 [{'instrumentCode': 'EUREON3W=ICAP'}] 3W 1.000233 2019-09-13 \n", - "6 [{'instrumentCode': 'EUREON1M=ICAP'}] 1M 1.000354 2019-09-23 \n", - "7 [{'instrumentCode': 'EUREON2M=ICAP'}] 2M 1.000776 2019-10-23 \n", - "8 [{'instrumentCode': 'EUREON3M=ICAP'}] 3M 1.001266 2019-11-25 \n", - "9 [{'instrumentCode': 'EUREON4M=ICAP'}] 4M 1.001686 2019-12-23 \n", - "10 [{'instrumentCode': 'EUREON5M=ICAP'}] 5M 1.002199 2020-01-23 \n", - "11 [{'instrumentCode': 'EUREON6M=ICAP'}] 6M 1.002746 2020-02-24 \n", - "12 [{'instrumentCode': 'EUREON7M=ICAP'}] 7M 1.003228 2020-03-23 \n", - "13 [{'instrumentCode': 'EUREON8M=ICAP'}] 8M 1.003792 2020-04-23 \n", - "14 [{'instrumentCode': 'EUREON9M=ICAP'}] 9M 1.004395 2020-05-25 \n", - "15 [{'instrumentCode': 'EUREON10M=ICAP'}] 10M 1.004944 2020-06-23 \n", - "16 [{'instrumentCode': 'EUREON11M=ICAP'}] 11M 1.005534 2020-07-23 \n", - "17 [{'instrumentCode': 'EUREON1Y=ICAP'}] 1Y 1.00617 2020-08-24 \n", - "18 [{'instrumentCode': 'EUREON15M=ICAP'}] 1Y3M 1.008014 2020-11-23 \n", - "19 [{'instrumentCode': 'EUREON18M=ICAP'}] 1Y6M 1.00992 2021-02-23 \n", - "20 [{'instrumentCode': 'EUREON19M=TTKL'}] 1Y7M 1.010525 2021-03-23 \n", - "21 [{'instrumentCode': 'EUREON20M=TTKL'}] 1Y8M 1.011177 2021-04-23 \n", - "22 [{'instrumentCode': 'EUREON21M=ICAP'}] 1Y9M 1.011769 2021-05-24 \n", - "23 [{'instrumentCode': 'EUREON2Y=ICAP'}] 2Y 1.013639 2021-08-23 \n", - "24 [{'instrumentCode': 'EUREON3Y=ICAP'}] 3Y 1.021038 2022-08-23 \n", - "25 [{'instrumentCode': 'EUREON4Y=ICAP'}] 4Y 1.02822 2023-08-23 \n", - "26 [{'instrumentCode': 'EUREON5Y=ICAP'}] 5Y 1.03447 2024-08-23 \n", - "27 [{'instrumentCode': 'EUREON6Y=ICAP'}] 6Y 1.039508 2025-08-25 \n", - "28 [{'instrumentCode': 'EUREON7Y=ICAP'}] 7Y 1.043345 2026-08-24 \n", - "29 [{'instrumentCode': 'EUREON8Y=ICAP'}] 8Y 1.045541 2027-08-23 \n", - "30 [{'instrumentCode': 'EUREON9Y=ICAP'}] 9Y 1.046348 2028-08-23 \n", - "31 [{'instrumentCode': 'EUREON10Y=ICAP'}] 10Y 1.046329 2029-08-23 \n", - "32 [{'instrumentCode': 'EUREON11Y=ICAP'}] 11Y 1.045013 2030-08-23 \n", - "33 [{'instrumentCode': 'EUREON12Y=ICAP'}] 12Y 1.042951 2031-08-25 \n", - "34 [{'instrumentCode': 'EUREON15Y=ICAP'}] 15Y 1.032937 2034-08-23 \n", - "35 [{'instrumentCode': 'EUREON20Y=ICAP'}] 20Y 1.017192 2039-08-23 \n", - "36 [{'instrumentCode': 'EUREON25Y=ICAP'}] 25Y 1.006538 2044-08-23 \n", - "37 [{'instrumentCode': 'EUREON30Y=ICAP'}] 30Y 1.003761 2049-08-23 \n", - "38 [{'instrumentCode': 'EUREON40Y=ICAP'}] 40Y 1.013273 2059-08-25 \n", - "39 [{'instrumentCode': 'EUREON50Y=ICAP'}] 50Y 1.032115 2069-08-23 \n", - "\n", - " ratePercent startDate \n", - "0 -0.379488 2019-08-21 \n", - "1 -0.379488 2019-08-21 \n", - "2 -0.417358 2019-08-21 \n", - "3 -0.376916 2019-08-21 \n", - "4 -0.370102 2019-08-21 \n", - "5 -0.368981 2019-08-21 \n", - "6 -0.390381 2019-08-21 \n", - "7 -0.448309 2019-08-21 \n", - "8 -0.479746 2019-08-21 \n", - "9 -0.494717 2019-08-21 \n", - "10 -0.516029 2019-08-21 \n", - "11 -0.533839 2019-08-21 \n", - "12 -0.547163 2019-08-21 \n", - "13 -0.561533 2019-08-21 \n", - "14 -0.575694 2019-08-21 \n", - "15 -0.586246 2019-08-21 \n", - "16 -0.597596 2019-08-21 \n", - "17 -0.608259 2019-08-21 \n", - "18 -0.63276 2019-08-21 \n", - "19 -0.651784 2019-08-21 \n", - "20 -0.657362 2019-08-21 \n", - "21 -0.662535 2019-08-21 \n", - "22 -0.663757 2019-08-21 \n", - "23 -0.673221 2019-08-21 \n", - "24 -0.69032 2019-08-21 \n", - "25 -0.692359 2019-08-21 \n", - "26 -0.674763 2019-08-21 \n", - "27 -0.642547 2019-08-21 \n", - "28 -0.603624 2019-08-21 \n", - "29 -0.55475 2019-08-21 \n", - "30 -0.501828 2019-08-21 \n", - "31 -0.451607 2019-08-21 \n", - "32 -0.399269 2019-08-21 \n", - "33 -0.349523 2019-08-21 \n", - "34 -0.215729 2019-08-21 \n", - "35 -0.085168 2019-08-21 \n", - "36 -0.026058 2019-08-21 \n", - "37 -0.012509 2019-08-21 \n", - "38 -0.032949 2019-08-21 \n", - "39 -0.063194 2019-08-21 " - ] - }, - "execution_count": 4, - "metadata": {}, - "output_type": "execute_result" - } - ], - "source": [ - "response = zc_curve.Definition(\n", - " constituents={},\n", - " curve_parameters=zc_curve.ZcCurveParameters(\n", - " valuation_date=\"2019-08-21\",\n", - " price_side=\"Mid\",\n", - " interpolation_mode=zc_curve.ZcInterpolationMode.CUBIC_DISCOUNT,\n", - " ),\n", - " curve_definition=zc_curve.ZcCurveDefinitions(\n", - " currency=\"EUR\",\n", - " index_name=\"EURIBOR\",\n", - " source=\"Refinitiv\",\n", - " discounting_tenor=\"OIS\",\n", - " ),\n", - " curve_tag=\"TAG\",\n", - ").get_data()\n", - "\n", - "response.data.df" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "## Close the session" - ] - }, - { - "cell_type": "code", - "execution_count": 5, - "metadata": { - "pycharm": { - "name": "#%%\n" - } - }, - "outputs": [], - "source": [ - "rd.close_session()" - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], - "source": [] - } - ], - "metadata": { - "kernelspec": { - "display_name": "Python 3", - "language": "python", - "name": "python3" - }, - "language_info": { - "codemirror_mode": { - "name": "ipython", - "version": 3 - }, - "file_extension": ".py", - "mimetype": "text/x-python", - "name": "python", - "nbconvert_exporter": "python", - "pygments_lexer": "ipython3", - "version": "3.7.6" - } - }, - "nbformat": 4, - "nbformat_minor": 4 -} diff --git a/Examples/2-Content/2.08-IPA-CurvesAndSurfaces/EX-2.08.02-IPA-CurvesAndSurfaces-ZCCurves.ipynb b/Examples/2-Content/2.08-IPA-CurvesAndSurfaces/EX-2.08.02-IPA-CurvesAndSurfaces-ZCCurves.ipynb new file mode 100644 index 0000000..6780894 --- /dev/null +++ b/Examples/2-Content/2.08-IPA-CurvesAndSurfaces/EX-2.08.02-IPA-CurvesAndSurfaces-ZCCurves.ipynb @@ -0,0 +1,332 @@ +{ + "cells": [ + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "----\n", + "\n", + "\n", + "# Data Library for Python\n", + "\n", + "----" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Content layer - IPA - ZC Curve\n", + "This notebook demonstrates how to retrieve Zero Coupon Curves." + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "#### Learn more\n", + "\n", + "To learn more about the Refinitiv Data Library for Python please join the Refinitiv Developer Community. By [registering](https://developers.refinitiv.com/iam/register) and [logging](https://developers.refinitiv.com/content/devportal/en_us/initCookie.html) into the Refinitiv Developer Community portal you will have free access to a number of learning materials like \n", + " [Quick Start guides](https://developers.refinitiv.com/en/api-catalog/refinitiv-data-platform/refinitiv-data-library-for-python/quick-start), \n", + " [Tutorials](https://developers.refinitiv.com/en/api-catalog/refinitiv-data-platform/refinitiv-data-library-for-python/learning), \n", + " [Documentation](https://developers.refinitiv.com/en/api-catalog/refinitiv-data-platform/refinitiv-data-library-for-python/docs)\n", + " and much more.\n", + "\n", + "#### Getting Help and Support\n", + "\n", + "If you have any questions regarding using the API, please post them on \n", + "the [Refinitiv Data Q&A Forum](https://community.developers.refinitiv.com/spaces/321/index.html). \n", + "The Refinitiv Developer Community will be happy to help. " + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Set the configuration file location\n", + "For a better ease of use, you have the option to set initialization parameters of the Refinitiv Data Library in the _refinitiv-data.config.json_ configuration file. This file must be located beside your notebook, in your user folder or in a folder defined by the _RD_LIB_CONFIG_PATH_ environment variable. The _RD_LIB_CONFIG_PATH_ environment variable is the option used by this series of examples. The following code sets this environment variable. " + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [ + "import os\n", + "os.environ[\"RD_LIB_CONFIG_PATH\"] = \"../../../Configuration\"" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Some Imports to start with" + ] + }, + { + "cell_type": "code", + "execution_count": 1, + "metadata": {}, + "outputs": [], + "source": [ + "import refinitiv.data as rd\n", + "from refinitiv.data.content.ipa.curves import zc_curves" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Open the data session\n", + "\n", + "The open_session() function creates and open sessions based on the information contained in the refinitiv-data.config.json configuration file. Please edit this file to set the session type and other parameters required for the session you want to open." + ] + }, + { + "cell_type": "code", + "execution_count": 2, + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "" + ] + }, + "execution_count": 2, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "rd.open_session()" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Retrieve data" + ] + }, + { + "cell_type": "code", + "execution_count": 3, + "metadata": {}, + "outputs": [ + { + "data": { + "text/html": [ + "
\n", + "\n", + "\n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
endDatestartDatediscountFactorratePercenttenor
02019-08-212019-08-211.0-0.3794880D
12019-08-222019-08-211.00001-0.379488ON
22019-08-232019-08-211.000023-0.417358TN
32019-08-302019-08-211.000092-0.372987SW
42019-09-062019-08-211.000163-0.3701022W
..................
1522039-08-232019-08-210.9649080.17872320Y
1532044-08-232019-08-210.945130.22593525Y
1542049-08-232019-08-210.9336450.22908230Y
1552059-08-252019-08-210.9270630.18946240Y
1562069-08-232019-08-210.9326720.13948550Y
\n", + "

157 rows × 5 columns

\n", + "
" + ], + "text/plain": [ + " endDate startDate discountFactor ratePercent tenor\n", + "0 2019-08-21 2019-08-21 1.0 -0.379488 0D\n", + "1 2019-08-22 2019-08-21 1.00001 -0.379488 ON\n", + "2 2019-08-23 2019-08-21 1.000023 -0.417358 TN\n", + "3 2019-08-30 2019-08-21 1.000092 -0.372987 SW\n", + "4 2019-09-06 2019-08-21 1.000163 -0.370102 2W\n", + ".. ... ... ... ... ...\n", + "152 2039-08-23 2019-08-21 0.964908 0.178723 20Y\n", + "153 2044-08-23 2019-08-21 0.94513 0.225935 25Y\n", + "154 2049-08-23 2019-08-21 0.933645 0.229082 30Y\n", + "155 2059-08-25 2019-08-21 0.927063 0.189462 40Y\n", + "156 2069-08-23 2019-08-21 0.932672 0.139485 50Y\n", + "\n", + "[157 rows x 5 columns]" + ] + }, + "execution_count": 3, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "response = zc_curves.Definition(\n", + " constituents={},\n", + " curve_parameters=zc_curves.ZcCurveParameters(\n", + " valuation_date=\"2019-08-21\",\n", + " price_side=\"Mid\",\n", + " interpolation_mode=zc_curves.ZcInterpolationMode.CUBIC_DISCOUNT,\n", + " ),\n", + " curve_definition=zc_curves.ZcCurveDefinitions(\n", + " currency=\"EUR\",\n", + " index_name=\"EURIBOR\",\n", + " source=\"Refinitiv\",\n", + " discounting_tenor=\"OIS\",\n", + " main_constituent_asset_class=\"Swap\",\n", + " ),\n", + " curve_tag=\"TAG\",\n", + ").get_data()\n", + "\n", + "response.data.df" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Close the session" + ] + }, + { + "cell_type": "code", + "execution_count": 4, + "metadata": { + "pycharm": { + "name": "#%%\n" + } + }, + "outputs": [], + "source": [ + "rd.close_session()" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [] + } + ], + "metadata": { + "kernelspec": { + "display_name": "Python 3 (ipykernel)", + "language": "python", + "name": "python3" + }, + "language_info": { + "codemirror_mode": { + "name": "ipython", + "version": 3 + }, + "file_extension": ".py", + "mimetype": "text/x-python", + "name": "python", + "nbconvert_exporter": "python", + "pygments_lexer": "ipython3", + "version": "3.9.7" + } + }, + "nbformat": 4, + "nbformat_minor": 4 +} diff --git a/Examples/2-Content/2.08-IPA-CurvesAndSurfaces/EX-2.08.03-IPA-CurvesAndSurfaces-ZCCurveDefinition.ipynb b/Examples/2-Content/2.08-IPA-CurvesAndSurfaces/EX-2.08.03-IPA-CurvesAndSurfaces-ZCCurveDefinitions.ipynb similarity index 56% rename from Examples/2-Content/2.08-IPA-CurvesAndSurfaces/EX-2.08.03-IPA-CurvesAndSurfaces-ZCCurveDefinition.ipynb rename to Examples/2-Content/2.08-IPA-CurvesAndSurfaces/EX-2.08.03-IPA-CurvesAndSurfaces-ZCCurveDefinitions.ipynb index 019a6eb..dd9a80c 100644 --- a/Examples/2-Content/2.08-IPA-CurvesAndSurfaces/EX-2.08.03-IPA-CurvesAndSurfaces-ZCCurveDefinition.ipynb +++ b/Examples/2-Content/2.08-IPA-CurvesAndSurfaces/EX-2.08.03-IPA-CurvesAndSurfaces-ZCCurveDefinitions.ipynb @@ -66,12 +66,12 @@ }, { "cell_type": "code", - "execution_count": 2, + "execution_count": 4, "metadata": {}, "outputs": [], "source": [ "import refinitiv.data as rd\n", - "from refinitiv.data.content.ipa.curves import zc_curve_definition" + "from refinitiv.data.content.ipa.curves import zc_curve_definitions" ] }, { @@ -85,16 +85,16 @@ }, { "cell_type": "code", - "execution_count": 3, + "execution_count": 5, "metadata": {}, "outputs": [ { "data": { "text/plain": [ - "" + "" ] }, - "execution_count": 3, + "execution_count": 5, "metadata": {}, "output_type": "execute_result" } @@ -112,7 +112,7 @@ }, { "cell_type": "code", - "execution_count": 4, + "execution_count": 6, "metadata": {}, "outputs": [ { @@ -153,77 +153,77 @@ " \n", " \n", " 0\n", - " PKR\n", - " Swap\n", + " USD\n", + " Futures\n", " InterestRate\n", - " REPO\n", + " SOFR\n", " Refinitiv\n", - " PKR REPO Swap ZC Curve\n", - " 2004-07-15\n", - " 3c49f39f-276d-478d-a0bc-17c89e577bf6\n", + " USD S1R Future ZC Curve\n", + " 2020-07-24\n", + " 8bf242f2-10a4-4d57-baa8-72a3d538b469\n", " Refinitiv\n", - " [6M]\n", - " [6M]\n", + " [OIS]\n", + " [OIS]\n", " <NA>\n", " \n", " \n", " 1\n", - " ISK\n", + " NOK\n", " Swap\n", " InterestRate\n", - " REIBOR\n", + " NOWA\n", " Refinitiv\n", - " ISK REIBOR Swap ZC Curve\n", - " 2006-12-05\n", - " d22031bd-0ae7-47d5-b4a0-fd79d5f8bc4e\n", + " NOK NOWA Swap ZC Curve\n", + " 2021-11-11\n", + " ff3c2192-6541-489a-a701-b63a614dfcbc\n", " Refinitiv\n", - " [3M]\n", - " [3M]\n", + " [OIS]\n", + " [OIS]\n", " <NA>\n", " \n", " \n", " 2\n", - " CNY\n", + " VND\n", " Swap\n", " InterestRate\n", - " REPO\n", + " VNDVNIBOR\n", " Refinitiv\n", - " CNY REPO Swap ZC Curve\n", - " 2007-02-28\n", - " cdcec3d8-6fc5-4c37-b9e4-969c8f2ae82f\n", + " VND VNDVNIBOR Swap ZC Curve\n", + " 2020-06-24\n", + " 34505484-6279-430e-a219-62aa97e03b15\n", " Refinitiv\n", - " [7D]\n", - " [7D]\n", + " [3M]\n", + " [3M]\n", " <NA>\n", " \n", " \n", " 3\n", - " CNY\n", + " CZK\n", " Swap\n", " InterestRate\n", - " SHIBOR\n", + " CZEONIA\n", " Refinitiv\n", - " CNY SHIBOR Swap ZC Curve\n", - " 2007-07-03\n", - " ad8b3fd3-ae1b-4e2e-aabb-706ce0facd08\n", + " CZK CZEONIA Swap ZC Curve\n", + " 2013-02-19\n", + " 87253647-7240-4a1a-a3e1-41098cb2c2bc\n", " Refinitiv\n", - " [3M]\n", - " [3M]\n", + " [OIS]\n", + " [OIS]\n", " <NA>\n", " \n", " \n", " 4\n", - " ZAR\n", - " Swap\n", + " USD\n", + " Futures\n", " InterestRate\n", - " JIBAR\n", + " SOFR\n", " Refinitiv\n", - " ZAR JIBAR Swap ZC Curve\n", - " 2007-07-09\n", - " cddabbc7-5e83-4c01-93d7-51da53ee6f64\n", + " USD SRA Future ZC Curve\n", + " 2018-05-04\n", + " a9e53645-bcf6-4372-86d5-5a2eb559c121\n", " Refinitiv\n", - " [3M]\n", - " [3M]\n", + " [OIS]\n", + " [OIS]\n", " <NA>\n", " \n", " \n", @@ -242,75 +242,75 @@ " ...\n", " \n", " \n", - " 73\n", - " GBP\n", + " 90\n", + " THB\n", " Swap\n", " InterestRate\n", - " LIBOR\n", + " MLR\n", " Refinitiv\n", - " GBP LIBOR Swap ZC Curve\n", - " 2011-02-09\n", - " 69348bb7-d0b3-49b3-b2b2-782ab4ad29f8\n", + " THB MLR Swap ZC Curve\n", + " 2017-09-05\n", + " ae924371-c7e3-40cf-aba3-5ee2811ab406\n", " Refinitiv\n", - " [6M, 1Y, OIS, 3M, 1M]\n", - " [6M, 1Y, OIS, 3M, 1M]\n", + " [1M]\n", + " [1M]\n", " <NA>\n", " \n", " \n", - " 74\n", - " RUB\n", + " 91\n", + " JPY\n", " Swap\n", " InterestRate\n", - " MOSPRIME\n", + " TIBOR\n", " Refinitiv\n", - " RUB MOSPRIME Swap ZC Curve\n", - " 2016-09-20\n", - " 5fa84708-c6dc-4ffc-ba6a-352e0c31db1e\n", + " JPY TIBOR (EMEA) Swap ZC Curve\n", + " 2015-08-13\n", + " a865716b-e437-4045-84b5-f6483d8b6a25\n", " Refinitiv\n", - " [OIS, 3M]\n", - " [OIS, 3M]\n", - " <NA>\n", + " [OIS, 1M, 3M, 6M]\n", + " [OIS, 1M, 3M, 6M]\n", + " EMEA\n", " \n", " \n", - " 75\n", - " NZD\n", + " 92\n", + " HUF\n", " Swap\n", " InterestRate\n", - " BKBM\n", + " HUFONIA\n", " Refinitiv\n", - " NZD BKBM Swap ZC Curve\n", - " 2020-07-24\n", - " 9cd49772-0f5f-4602-be33-12efa905230c\n", + " HUF HUFONIA Swap ZC Curve\n", + " 2020-12-07\n", + " e31dc8ec-7ead-43d1-9b1e-a490880bf956\n", " Refinitiv\n", - " [6M, OIS, 3M, 1M]\n", - " [6M, OIS, 3M, 1M]\n", + " [OIS]\n", + " [OIS]\n", " <NA>\n", " \n", " \n", - " 76\n", - " RON\n", + " 93\n", + " JPY\n", " Swap\n", " InterestRate\n", - " ROBOR\n", + " TIBOR\n", " Refinitiv\n", - " RON ROBOR Swap ZC Curve\n", - " 2014-09-09\n", - " 407ef256-fcb0-46cb-a4f8-b980e93bdbec\n", + " JPY TIBOR Swap ZC Curve\n", + " 2015-08-13\n", + " e24f1a57-9007-4535-a4d7-b037662ace95\n", " Refinitiv\n", - " [3M]\n", - " [3M]\n", + " [OIS, 1M, 3M, 6M]\n", + " [OIS, 1M, 3M, 6M]\n", " <NA>\n", " \n", " \n", - " 77\n", - " HKD\n", + " 94\n", + " RUB\n", " Swap\n", " InterestRate\n", - " HONIA\n", + " RUONIA\n", " Refinitiv\n", - " HKD HONIA Swap ZC Curve\n", - " 2021-09-24\n", - " 1f09e77f-d3ba-4013-870a-3f7e5675ed82\n", + " RUB RUONIA Swap ZC Curve\n", + " 2020-12-23\n", + " d9fe18de-e7d2-4153-a288-1fdc43bbab01\n", " Refinitiv\n", " [OIS]\n", " [OIS]\n", @@ -318,72 +318,72 @@ " \n", " \n", "\n", - "

78 rows × 12 columns

\n", + "

95 rows × 12 columns

\n", "" ], "text/plain": [ - " currency mainConstituentAssetClass riskType indexName source \\\n", - "0 PKR Swap InterestRate REPO Refinitiv \n", - "1 ISK Swap InterestRate REIBOR Refinitiv \n", - "2 CNY Swap InterestRate REPO Refinitiv \n", - "3 CNY Swap InterestRate SHIBOR Refinitiv \n", - "4 ZAR Swap InterestRate JIBAR Refinitiv \n", - ".. ... ... ... ... ... \n", - "73 GBP Swap InterestRate LIBOR Refinitiv \n", - "74 RUB Swap InterestRate MOSPRIME Refinitiv \n", - "75 NZD Swap InterestRate BKBM Refinitiv \n", - "76 RON Swap InterestRate ROBOR Refinitiv \n", - "77 HKD Swap InterestRate HONIA Refinitiv \n", + " currency mainConstituentAssetClass riskType indexName source \\\n", + "0 USD Futures InterestRate SOFR Refinitiv \n", + "1 NOK Swap InterestRate NOWA Refinitiv \n", + "2 VND Swap InterestRate VNDVNIBOR Refinitiv \n", + "3 CZK Swap InterestRate CZEONIA Refinitiv \n", + "4 USD Futures InterestRate SOFR Refinitiv \n", + ".. ... ... ... ... ... \n", + "90 THB Swap InterestRate MLR Refinitiv \n", + "91 JPY Swap InterestRate TIBOR Refinitiv \n", + "92 HUF Swap InterestRate HUFONIA Refinitiv \n", + "93 JPY Swap InterestRate TIBOR Refinitiv \n", + "94 RUB Swap InterestRate RUONIA Refinitiv \n", "\n", - " name firstHistoricalAvailabilityDate \\\n", - "0 PKR REPO Swap ZC Curve 2004-07-15 \n", - "1 ISK REIBOR Swap ZC Curve 2006-12-05 \n", - "2 CNY REPO Swap ZC Curve 2007-02-28 \n", - "3 CNY SHIBOR Swap ZC Curve 2007-07-03 \n", - "4 ZAR JIBAR Swap ZC Curve 2007-07-09 \n", - ".. ... ... \n", - "73 GBP LIBOR Swap ZC Curve 2011-02-09 \n", - "74 RUB MOSPRIME Swap ZC Curve 2016-09-20 \n", - "75 NZD BKBM Swap ZC Curve 2020-07-24 \n", - "76 RON ROBOR Swap ZC Curve 2014-09-09 \n", - "77 HKD HONIA Swap ZC Curve 2021-09-24 \n", + " name firstHistoricalAvailabilityDate \\\n", + "0 USD S1R Future ZC Curve 2020-07-24 \n", + "1 NOK NOWA Swap ZC Curve 2021-11-11 \n", + "2 VND VNDVNIBOR Swap ZC Curve 2020-06-24 \n", + "3 CZK CZEONIA Swap ZC Curve 2013-02-19 \n", + "4 USD SRA Future ZC Curve 2018-05-04 \n", + ".. ... ... \n", + "90 THB MLR Swap ZC Curve 2017-09-05 \n", + "91 JPY TIBOR (EMEA) Swap ZC Curve 2015-08-13 \n", + "92 HUF HUFONIA Swap ZC Curve 2020-12-07 \n", + "93 JPY TIBOR Swap ZC Curve 2015-08-13 \n", + "94 RUB RUONIA Swap ZC Curve 2020-12-23 \n", "\n", - " id owner availableTenors \\\n", - "0 3c49f39f-276d-478d-a0bc-17c89e577bf6 Refinitiv [6M] \n", - "1 d22031bd-0ae7-47d5-b4a0-fd79d5f8bc4e Refinitiv [3M] \n", - "2 cdcec3d8-6fc5-4c37-b9e4-969c8f2ae82f Refinitiv [7D] \n", - "3 ad8b3fd3-ae1b-4e2e-aabb-706ce0facd08 Refinitiv [3M] \n", - "4 cddabbc7-5e83-4c01-93d7-51da53ee6f64 Refinitiv [3M] \n", - ".. ... ... ... \n", - "73 69348bb7-d0b3-49b3-b2b2-782ab4ad29f8 Refinitiv [6M, 1Y, OIS, 3M, 1M] \n", - "74 5fa84708-c6dc-4ffc-ba6a-352e0c31db1e Refinitiv [OIS, 3M] \n", - "75 9cd49772-0f5f-4602-be33-12efa905230c Refinitiv [6M, OIS, 3M, 1M] \n", - "76 407ef256-fcb0-46cb-a4f8-b980e93bdbec Refinitiv [3M] \n", - "77 1f09e77f-d3ba-4013-870a-3f7e5675ed82 Refinitiv [OIS] \n", + " id owner availableTenors \\\n", + "0 8bf242f2-10a4-4d57-baa8-72a3d538b469 Refinitiv [OIS] \n", + "1 ff3c2192-6541-489a-a701-b63a614dfcbc Refinitiv [OIS] \n", + "2 34505484-6279-430e-a219-62aa97e03b15 Refinitiv [3M] \n", + "3 87253647-7240-4a1a-a3e1-41098cb2c2bc Refinitiv [OIS] \n", + "4 a9e53645-bcf6-4372-86d5-5a2eb559c121 Refinitiv [OIS] \n", + ".. ... ... ... \n", + "90 ae924371-c7e3-40cf-aba3-5ee2811ab406 Refinitiv [1M] \n", + "91 a865716b-e437-4045-84b5-f6483d8b6a25 Refinitiv [OIS, 1M, 3M, 6M] \n", + "92 e31dc8ec-7ead-43d1-9b1e-a490880bf956 Refinitiv [OIS] \n", + "93 e24f1a57-9007-4535-a4d7-b037662ace95 Refinitiv [OIS, 1M, 3M, 6M] \n", + "94 d9fe18de-e7d2-4153-a288-1fdc43bbab01 Refinitiv [OIS] \n", "\n", " availableDiscountingTenors marketDataLocation \n", - "0 [6M] \n", - "1 [3M] \n", - "2 [7D] \n", - "3 [3M] \n", - "4 [3M] \n", + "0 [OIS] \n", + "1 [OIS] \n", + "2 [3M] \n", + "3 [OIS] \n", + "4 [OIS] \n", ".. ... ... \n", - "73 [6M, 1Y, OIS, 3M, 1M] \n", - "74 [OIS, 3M] \n", - "75 [6M, OIS, 3M, 1M] \n", - "76 [3M] \n", - "77 [OIS] \n", + "90 [1M] \n", + "91 [OIS, 1M, 3M, 6M] EMEA \n", + "92 [OIS] \n", + "93 [OIS, 1M, 3M, 6M] \n", + "94 [OIS] \n", "\n", - "[78 rows x 12 columns]" + "[95 rows x 12 columns]" ] }, - "execution_count": 4, + "execution_count": 6, "metadata": {}, "output_type": "execute_result" } ], "source": [ - "response = zc_curve_definition.Definition(source=\"Refinitiv\").get_data()\n", + "response = zc_curve_definitions.Definition(source=\"Refinitiv\").get_data()\n", "response.data.df" ] }, @@ -396,7 +396,7 @@ }, { "cell_type": "code", - "execution_count": 5, + "execution_count": 7, "metadata": { "pycharm": { "name": "#%%\n" @@ -417,7 +417,7 @@ ], "metadata": { "kernelspec": { - "display_name": "Python 3", + "display_name": "Python 3 (ipykernel)", "language": "python", "name": "python3" }, @@ -431,7 +431,7 @@ "name": "python", "nbconvert_exporter": "python", "pygments_lexer": "ipython3", - "version": "3.7.6" + "version": "3.9.7" } }, "nbformat": 4, diff --git a/Examples/2-Content/2.08-IPA-CurvesAndSurfaces/EX-2.08.04-IPA-CurvesAndSurfaces-Surface.ipynb b/Examples/2-Content/2.08-IPA-CurvesAndSurfaces/EX-2.08.04-IPA-CurvesAndSurfaces-Surfaces.ipynb similarity index 92% rename from Examples/2-Content/2.08-IPA-CurvesAndSurfaces/EX-2.08.04-IPA-CurvesAndSurfaces-Surface.ipynb rename to Examples/2-Content/2.08-IPA-CurvesAndSurfaces/EX-2.08.04-IPA-CurvesAndSurfaces-Surfaces.ipynb index f5a95f9..a5333cd 100644 --- a/Examples/2-Content/2.08-IPA-CurvesAndSurfaces/EX-2.08.04-IPA-CurvesAndSurfaces-Surface.ipynb +++ b/Examples/2-Content/2.08-IPA-CurvesAndSurfaces/EX-2.08.04-IPA-CurvesAndSurfaces-Surfaces.ipynb @@ -71,7 +71,8 @@ "outputs": [], "source": [ "import refinitiv.data as rd\n", - "from refinitiv.data.content.ipa.surfaces import surface_fx" + "from refinitiv.data.content.ipa import surfaces\n", + "from refinitiv.data.content.ipa.surfaces.fx import Axis" ] }, { @@ -91,10 +92,10 @@ { "data": { "text/plain": [ - "" + "" ] }, - "execution_count": 3, + "execution_count": 4, "metadata": {}, "output_type": "execute_result" } @@ -112,7 +113,7 @@ }, { "cell_type": "code", - "execution_count": 4, + "execution_count": 5, "metadata": {}, "outputs": [ { @@ -487,24 +488,24 @@ "1.193120 9.238913 9.620762 10.056783 " ] }, - "execution_count": 4, + "execution_count": 6, "metadata": {}, "output_type": "execute_result" } ], "source": [ - "response = surface_fx.Definition(\n", + "response = surfaces.fx.Definition(\n", " surface_tag=\"FxVol-EURUSD\",\n", - " underlying_definition=surface_fx.FxSurfaceDefinition(\n", + " underlying_definition=surfaces.fx.FxSurfaceDefinition(\n", " fx_cross_code=\"EURUSD\"\n", " ),\n", - " surface_parameters=surface_fx.FxCalculationParams(\n", - " x_axis=surface_fx.Axis.DATE,\n", - " y_axis=surface_fx.Axis.STRIKE,\n", + " surface_parameters=surfaces.fx.FxCalculationParams(\n", + " x_axis=surfaces.fx.Axis.DATE,\n", + " y_axis=surfaces.fx.Axis.STRIKE,\n", " calculation_date=\"2018-08-20T00:00:00Z\",\n", " ),\n", - " surface_layout=surface_fx.SurfaceLayout(\n", - " format=surface_fx.Format.MATRIX,\n", + " surface_layout=surfaces.fx.SurfaceLayout(\n", + " format=surfaces.fx.Format.MATRIX,\n", " ),\n", ").get_data()\n", "\n", @@ -513,44 +514,46 @@ }, { "cell_type": "code", - "execution_count": 5, + "execution_count": 7, "metadata": {}, "outputs": [ { - "data": { - "text/plain": [ - "" - ] - }, - "metadata": {}, - "output_type": "display_data" + "name": "stdout", + "output_type": "stream", + "text": [ + "curve.x: [1.10383664 1.10941686 1.11499709 1.12057732 1.12615755 1.13173777\n", + " 1.137318 1.14289823 1.14847846 1.15405868 1.15963891 1.16521914\n", + " 1.17079937 1.17637959 1.18195982 1.18754005 1.19312027]\n", + "curve.y: [10.39183978 10.36920782 10.34678789 10.32458262 10.30259475 10.28082708\n", + " 10.25928247 10.23796387 10.21687428 10.19601678 10.17539451 10.15501066\n", + " 10.13486849 10.1149713 10.09532244 10.07592531 10.05678332]\n" + ] } ], "source": [ "surface = response.data.surface\n", - "curve = surface.get_curve(\"2018-15-10\", \"X\")\n", - "display(curve)" + "curve = surface.get_curve(\"2018-15-10\", Axis.X)\n", + "print(\"curve.x: \", curve.x)\n", + "print(\"curve.y: \", curve.y)" ] }, { "cell_type": "code", - "execution_count": 6, + "execution_count": 8, "metadata": {}, "outputs": [ { - "data": { - "text/plain": [ - "SurfacePoint(x=1.5395616e+18, y=38.25, z=10.056783324290427)" - ] - }, - "metadata": {}, - "output_type": "display_data" + "name": "stdout", + "output_type": "stream", + "text": [ + "x: 1.5395616e+18 y: 38.25\n" + ] } ], "source": [ "surface = response.data.surface\n", "point = surface.get_point(\"2018-15-10\", 38.25)\n", - "display(point)" + "print(\"x:\", point.x, \"y:\", point.y)" ] }, { @@ -562,7 +565,7 @@ }, { "cell_type": "code", - "execution_count": 7, + "execution_count": 9, "metadata": { "pycharm": { "name": "#%%\n" @@ -583,7 +586,7 @@ ], "metadata": { "kernelspec": { - "display_name": "Python 3", + "display_name": "Python 3 (ipykernel)", "language": "python", "name": "python3" }, @@ -597,7 +600,7 @@ "name": "python", "nbconvert_exporter": "python", "pygments_lexer": "ipython3", - "version": "3.7.6" + "version": "3.9.7" } }, "nbformat": 4, diff --git a/Examples/2-Content/2.11-Estimates/EX-2.11.01-Estimates-Summary.ipynb b/Examples/2-Content/2.11-Estimates/EX-2.11.01-Estimates-Summary.ipynb new file mode 100644 index 0000000..dda27c1 --- /dev/null +++ b/Examples/2-Content/2.11-Estimates/EX-2.11.01-Estimates-Summary.ipynb @@ -0,0 +1,1477 @@ +{ + "cells": [ + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "----\n", + "\n", + "\n", + "# Data Library for Python\n", + "\n", + "----" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Content layer - Estimates - Summary\n", + "This notebook demonstrates how to retrieve Estimates.\n", + "\n", + "I/B/E/S (Institutional Brokers' Estimate System) delivers a complete suite of Estimates content with a global view and is the largest contributor base in the industry. RDP I/B/E/S Estimates API provides information about consensus and aggregates data(26 generic measures, 23 KPI measures), company guidance data and advanced analytics. With over 40 years of collection experience and extensive quality controls that include thousands of automated error checks and stringent manual analysis, RDP I/B/E/S gives the clients the content they need for superior insight, research and investment decision making.\n", + "\n", + "The I/B/E/S database currently covers over 56,000 companies in 100 markets.\n", + "More than 900 firms contribute data to I/B/E/S, from the largest global houses to regional and local brokers, with US data back to 1976 and international data back to 1987." + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "#### Learn more\n", + "\n", + "To learn more about the Refinitiv Data Library for Python please join the Refinitiv Developer Community. By [registering](https://developers.refinitiv.com/iam/register) and [logging](https://developers.refinitiv.com/content/devportal/en_us/initCookie.html) into the Refinitiv Developer Community portal you will have free access to a number of learning materials like \n", + " [Quick Start guides](https://developers.refinitiv.com/en/api-catalog/refinitiv-data-platform/refinitiv-data-library-for-python/quick-start), \n", + " [Tutorials](https://developers.refinitiv.com/en/api-catalog/refinitiv-data-platform/refinitiv-data-library-for-python/learning), \n", + " [Documentation](https://developers.refinitiv.com/en/api-catalog/refinitiv-data-platform/refinitiv-data-library-for-python/docs)\n", + " and much more.\n", + "\n", + "#### Getting Help and Support\n", + "\n", + "If you have any questions regarding using the API, please post them on \n", + "the [Refinitiv Data Q&A Forum](https://community.developers.refinitiv.com/spaces/321/index.html). \n", + "The Refinitiv Developer Community will be happy to help. \n", + "\n", + "----" + ] + }, + { + "cell_type": "markdown", + "metadata": { + "tags": [] + }, + "source": [ + "## Set the configuration file location\n", + "For a better ease of use, you have the option to set initialization parameters of the Refinitiv Data Library in the _refinitiv-data.config.json_ configuration file. This file must be located beside your notebook, in your user folder or in a folder defined by the _RD_LIB_CONFIG_PATH_ environment variable. The _RD_LIB_CONFIG_PATH_ environment variable is the option used by this series of examples. The following code sets this environment variable. " + ] + }, + { + "cell_type": "code", + "execution_count": 1, + "metadata": {}, + "outputs": [], + "source": [ + "import os\n", + "os.environ[\"RD_LIB_CONFIG_PATH\"] = \"../../../Configuration\"" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Some Imports to start with" + ] + }, + { + "cell_type": "code", + "execution_count": 1, + "metadata": { + "pycharm": { + "name": "#%%\n" + } + }, + "outputs": [], + "source": [ + "import refinitiv.data as rd\n", + "from refinitiv.data.content import estimates\n", + "from refinitiv.data.content.estimates import Package" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Open the data session\n", + "\n", + "The open_session() function creates and open sessions based on the information contained in the refinitiv-data.config.json configuration file. Please edit this file to set the session type and other parameters required for the session you want to open." + ] + }, + { + "cell_type": "code", + "execution_count": 2, + "metadata": { + "pycharm": { + "name": "#%%\n" + } + }, + "outputs": [ + { + "data": { + "text/plain": [ + "" + ] + }, + "execution_count": 2, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "rd.open_session(\"platform.rdp\")" + ] + }, + { + "cell_type": "markdown", + "metadata": { + "pycharm": { + "name": "#%% md\n" + } + }, + "source": [ + "## Retrieve Data" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "### Summary - Annual" + ] + }, + { + "cell_type": "code", + "execution_count": 3, + "metadata": { + "pycharm": { + "name": "#%%\n" + } + }, + "outputs": [ + { + "data": { + "text/html": [ + "
\n", + "\n", + "\n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
InstrumentPeriod End DateFinancial Period AbsoluteFinancial Period RelativeEBIT - MeanEBIT - MedianEBIT - HighEBIT - LowEBIT - Standard DeviationEBIT - Number of Estimates...Revenue - Number of Included EstimatesRevenue - Company Footnote CategoryRevenue - Company Footnote CurrencyRevenue - Company Footnote DateRevenue - Company Footnote Period MonthRevenue - Company Footnote Period YearRevenue - Company Footnote Stop DateRevenue - Company Footnote TextRevenue - Company Footnote TypeRevenue - Company Footnote Value
0BNPP.PA2022-12-31FY2022FY11385334700014914500000159050000007662056000251486192014...15MSEUR2022-03-28T12:03:49122022<NA>Revenue represents Net operating/Total income.G<NA>
1BNPP.PA2023-12-31FY2023FY21436212333015221000000166760000009018644000229138643013...17<NA><NA><NA><NA><NA><NA><NA><NA><NA>
\n", + "

2 rows × 34 columns

\n", + "
" + ], + "text/plain": [ + " Instrument Period End Date Financial Period Absolute \\\n", + "0 BNPP.PA 2022-12-31 FY2022 \n", + "1 BNPP.PA 2023-12-31 FY2023 \n", + "\n", + " Financial Period Relative EBIT - Mean EBIT - Median EBIT - High \\\n", + "0 FY1 13853347000 14914500000 15905000000 \n", + "1 FY2 14362123330 15221000000 16676000000 \n", + "\n", + " EBIT - Low EBIT - Standard Deviation EBIT - Number of Estimates ... \\\n", + "0 7662056000 2514861920 14 ... \n", + "1 9018644000 2291386430 13 ... \n", + "\n", + " Revenue - Number of Included Estimates \\\n", + "0 15 \n", + "1 17 \n", + "\n", + " Revenue - Company Footnote Category Revenue - Company Footnote Currency \\\n", + "0 MS EUR \n", + "1 \n", + "\n", + " Revenue - Company Footnote Date Revenue - Company Footnote Period Month \\\n", + "0 2022-03-28T12:03:49 12 \n", + "1 \n", + "\n", + " Revenue - Company Footnote Period Year \\\n", + "0 2022 \n", + "1 \n", + "\n", + " Revenue - Company Footnote Stop Date \\\n", + "0 \n", + "1 \n", + "\n", + " Revenue - Company Footnote Text \\\n", + "0 Revenue represents Net operating/Total income. \n", + "1 \n", + "\n", + " Revenue - Company Footnote Type Revenue - Company Footnote Value \n", + "0 G \n", + "1 \n", + "\n", + "[2 rows x 34 columns]" + ] + }, + "execution_count": 3, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "response = estimates.view_summary.annual.Definition(\"BNPP.PA\", Package.BASIC).get_data()\n", + "response.data.df" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "### Summary - Historical snapshots non-periodic measures" + ] + }, + { + "cell_type": "code", + "execution_count": 4, + "metadata": { + "pycharm": { + "name": "#%%\n" + } + }, + "outputs": [ + { + "data": { + "text/html": [ + "
\n", + "\n", + "\n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
InstrumentPrice Target - CurrentPrice Target - 1 Week AgoPrice Target - 1 Month AgoPrice Target - 2 Months AgoPrice Target - 3 Months AgoPrice Target - 4 Months AgoPrice Target - 5 Months AgoPrice Target - 6 Months AgoPrice Target - 7 Months Ago...Long Term Growth - 3 Months AgoLong Term Growth - 4 Months AgoLong Term Growth - 5 Months AgoLong Term Growth - 6 Months AgoLong Term Growth - 7 Months AgoLong Term Growth - 8 Months AgoLong Term Growth - 9 Months AgoLong Term Growth - 10 Months AgoLong Term Growth - 11 Months AgoLong Term Growth - 12 Months Ago
0BNPP.PA69.408169.958173.038169.5981965.901665.0634363.6824862.19561.83...12.2727512.2637511.47811.3373311.3373310.91310.91310.9634.044-0.31933
\n", + "

1 rows × 29 columns

\n", + "
" + ], + "text/plain": [ + " Instrument Price Target - Current Price Target - 1 Week Ago \\\n", + "0 BNPP.PA 69.4081 69.9581 \n", + "\n", + " Price Target - 1 Month Ago Price Target - 2 Months Ago \\\n", + "0 73.0381 69.59819 \n", + "\n", + " Price Target - 3 Months Ago Price Target - 4 Months Ago \\\n", + "0 65.9016 65.06343 \n", + "\n", + " Price Target - 5 Months Ago Price Target - 6 Months Ago \\\n", + "0 63.68248 62.195 \n", + "\n", + " Price Target - 7 Months Ago ... Long Term Growth - 3 Months Ago \\\n", + "0 61.83 ... 12.27275 \n", + "\n", + " Long Term Growth - 4 Months Ago Long Term Growth - 5 Months Ago \\\n", + "0 12.26375 11.478 \n", + "\n", + " Long Term Growth - 6 Months Ago Long Term Growth - 7 Months Ago \\\n", + "0 11.33733 11.33733 \n", + "\n", + " Long Term Growth - 8 Months Ago Long Term Growth - 9 Months Ago \\\n", + "0 10.913 10.913 \n", + "\n", + " Long Term Growth - 10 Months Ago Long Term Growth - 11 Months Ago \\\n", + "0 10.963 4.044 \n", + "\n", + " Long Term Growth - 12 Months Ago \n", + "0 -0.31933 \n", + "\n", + "[1 rows x 29 columns]" + ] + }, + "execution_count": 4, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "response = estimates.view_summary.historical_snapshots_non_periodic_measures.Definition(\"BNPP.PA\", Package.BASIC).get_data()\n", + "response.data.df" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "### Summary - Historical snapshots periodic measures annual" + ] + }, + { + "cell_type": "code", + "execution_count": 5, + "metadata": { + "pycharm": { + "name": "#%%\n" + } + }, + "outputs": [ + { + "data": { + "text/html": [ + "
\n", + "\n", + "\n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
InstrumentPeriod End DateFinancial Period RelativeFinancial Period AbsoluteEarnings Per Share - CurrentEarnings Per Share - 1 Week AgoEarnings Per Share - 1 Month AgoEarnings Per Share - 2 Months AgoEarnings Per Share - 3 Months AgoEarnings Per Share - 4 Months Ago...Revenue - 3 Months AgoRevenue - 4 Months AgoRevenue - 5 Months AgoRevenue - 6 Months AgoRevenue - 7 Months AgoRevenue - 8 Months AgoRevenue - 9 Months AgoRevenue - 10 Months AgoRevenue - 11 Months AgoRevenue - 12 Months Ago
0BNPP.PA2023-12-31FY2FY20237.152867.288967.623277.551577.362357.30215...47596680770479744336504765647218047593916110474973751704719247600047138190650471033477304678634513046653026640
1BNPP.PA2022-12-31FY1FY20226.98617.137247.290617.386177.059486.832...46553732280467832309404654733572046491242580464009591104606975861046046249670460190706304576464144045725198940
\n", + "

2 rows × 32 columns

\n", + "
" + ], + "text/plain": [ + " Instrument Period End Date Financial Period Relative \\\n", + "0 BNPP.PA 2023-12-31 FY2 \n", + "1 BNPP.PA 2022-12-31 FY1 \n", + "\n", + " Financial Period Absolute Earnings Per Share - Current \\\n", + "0 FY2023 7.15286 \n", + "1 FY2022 6.9861 \n", + "\n", + " Earnings Per Share - 1 Week Ago Earnings Per Share - 1 Month Ago \\\n", + "0 7.28896 7.62327 \n", + "1 7.13724 7.29061 \n", + "\n", + " Earnings Per Share - 2 Months Ago Earnings Per Share - 3 Months Ago \\\n", + "0 7.55157 7.36235 \n", + "1 7.38617 7.05948 \n", + "\n", + " Earnings Per Share - 4 Months Ago ... Revenue - 3 Months Ago \\\n", + "0 7.30215 ... 47596680770 \n", + "1 6.832 ... 46553732280 \n", + "\n", + " Revenue - 4 Months Ago Revenue - 5 Months Ago Revenue - 6 Months Ago \\\n", + "0 47974433650 47656472180 47593916110 \n", + "1 46783230940 46547335720 46491242580 \n", + "\n", + " Revenue - 7 Months Ago Revenue - 8 Months Ago Revenue - 9 Months Ago \\\n", + "0 47497375170 47192476000 47138190650 \n", + "1 46400959110 46069758610 46046249670 \n", + "\n", + " Revenue - 10 Months Ago Revenue - 11 Months Ago Revenue - 12 Months Ago \n", + "0 47103347730 46786345130 46653026640 \n", + "1 46019070630 45764641440 45725198940 \n", + "\n", + "[2 rows x 32 columns]" + ] + }, + "execution_count": 5, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "response = estimates.view_summary.historical_snapshots_periodic_measures_annual.Definition(\"BNPP.PA\", Package.BASIC).get_data()\n", + "response.data.df" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "### Summary - Historical snapshots periodic measures interim" + ] + }, + { + "cell_type": "code", + "execution_count": 6, + "metadata": { + "pycharm": { + "name": "#%%\n" + } + }, + "outputs": [ + { + "data": { + "text/html": [ + "
\n", + "\n", + "\n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
InstrumentPeriod End DateFinancial Period RelativeFinancial Period AbsoluteEarnings Before Interest, Taxes, Depreciation and Amortization - 3 Months AgoEarnings Before Interest, Taxes, Depreciation and Amortization - 4 Months AgoEarnings Before Interest, Taxes, Depreciation and Amortization - 5 Months AgoEarnings Before Interest, Taxes, Depreciation and Amortization - 6 Months AgoEarnings Before Interest, Taxes, Depreciation and Amortization - 7 Months AgoEarnings Before Interest, Taxes, Depreciation and Amortization - 8 Months AgoEarnings Before Interest, Taxes, Depreciation and Amortization - 9 Months AgoEarnings Before Interest, Taxes, Depreciation and Amortization - 10 Months AgoEarnings Before Interest, Taxes, Depreciation and Amortization - 11 Months AgoEarnings Before Interest, Taxes, Depreciation and Amortization - 12 Months AgoEarnings Per Share - CurrentEarnings Per Share - 1 Week AgoEarnings Per Share - 1 Month AgoEarnings Per Share - 2 Months AgoRevenue -CurrentRevenue - 1 Week Ago
0BNPP.PA2022-06-30FQ2FY2022Q2<NA><NA><NA><NA><NA><NA><NA><NA><NA><NA>1.906671.906672.0652.141160551900011605519000
1BNPP.PA2022-03-31FQ1FY2022Q1<NA><NA><NA><NA><NA><NA><NA><NA><NA><NA>1.17851.274671.661.271145740700011419814000
\n", + "
" + ], + "text/plain": [ + " Instrument Period End Date Financial Period Relative \\\n", + "0 BNPP.PA 2022-06-30 FQ2 \n", + "1 BNPP.PA 2022-03-31 FQ1 \n", + "\n", + " Financial Period Absolute \\\n", + "0 FY2022Q2 \n", + "1 FY2022Q1 \n", + "\n", + " Earnings Before Interest, Taxes, Depreciation and Amortization - 3 Months Ago \\\n", + "0 \n", + "1 \n", + "\n", + " Earnings Before Interest, Taxes, Depreciation and Amortization - 4 Months Ago \\\n", + "0 \n", + "1 \n", + "\n", + " Earnings Before Interest, Taxes, Depreciation and Amortization - 5 Months Ago \\\n", + "0 \n", + "1 \n", + "\n", + " Earnings Before Interest, Taxes, Depreciation and Amortization - 6 Months Ago \\\n", + "0 \n", + "1 \n", + "\n", + " Earnings Before Interest, Taxes, Depreciation and Amortization - 7 Months Ago \\\n", + "0 \n", + "1 \n", + "\n", + " Earnings Before Interest, Taxes, Depreciation and Amortization - 8 Months Ago \\\n", + "0 \n", + "1 \n", + "\n", + " Earnings Before Interest, Taxes, Depreciation and Amortization - 9 Months Ago \\\n", + "0 \n", + "1 \n", + "\n", + " Earnings Before Interest, Taxes, Depreciation and Amortization - 10 Months Ago \\\n", + "0 \n", + "1 \n", + "\n", + " Earnings Before Interest, Taxes, Depreciation and Amortization - 11 Months Ago \\\n", + "0 \n", + "1 \n", + "\n", + " Earnings Before Interest, Taxes, Depreciation and Amortization - 12 Months Ago \\\n", + "0 \n", + "1 \n", + "\n", + " Earnings Per Share - Current Earnings Per Share - 1 Week Ago \\\n", + "0 1.90667 1.90667 \n", + "1 1.1785 1.27467 \n", + "\n", + " Earnings Per Share - 1 Month Ago Earnings Per Share - 2 Months Ago \\\n", + "0 2.065 2.14 \n", + "1 1.66 1.27 \n", + "\n", + " Revenue -Current Revenue - 1 Week Ago \n", + "0 11605519000 11605519000 \n", + "1 11457407000 11419814000 " + ] + }, + "execution_count": 6, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "response = estimates.view_summary.historical_snapshots_periodic_measures_interim.Definition(\"BNPP.PA\", Package.BASIC).get_data()\n", + "response.data.df" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "### Summary - Historical snapshots recommendations" + ] + }, + { + "cell_type": "code", + "execution_count": 7, + "metadata": { + "pycharm": { + "name": "#%%\n" + } + }, + "outputs": [ + { + "data": { + "text/html": [ + "
\n", + "\n", + "\n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
InstrumentRecommendation - CurrentRecommendation - 1 Week AgoRecommendation - 1 Month AgoRecommendation - 2 Months AgoRecommendation - 3 Months AgoRecommendation - 4 Months AgoRecommendation - 5 Months AgoRecommendation - 6 Months AgoRecommendation - 7 Months AgoRecommendation - 8 Months AgoRecommendation - 9 Months AgoRecommendation - 10 Months AgoRecommendation - 11 Months AgoRecommendation - 12 Months Ago
0BNPP.PA1.921.921.961.921.961.961541.9615421.961.961.961.9222
\n", + "
" + ], + "text/plain": [ + " Instrument Recommendation - Current Recommendation - 1 Week Ago \\\n", + "0 BNPP.PA 1.92 1.92 \n", + "\n", + " Recommendation - 1 Month Ago Recommendation - 2 Months Ago \\\n", + "0 1.96 1.92 \n", + "\n", + " Recommendation - 3 Months Ago Recommendation - 4 Months Ago \\\n", + "0 1.96 1.96154 \n", + "\n", + " Recommendation - 5 Months Ago Recommendation - 6 Months Ago \\\n", + "0 1.96154 2 \n", + "\n", + " Recommendation - 7 Months Ago Recommendation - 8 Months Ago \\\n", + "0 1.96 1.96 \n", + "\n", + " Recommendation - 9 Months Ago Recommendation - 10 Months Ago \\\n", + "0 1.96 1.92 \n", + "\n", + " Recommendation - 11 Months Ago Recommendation - 12 Months Ago \n", + "0 2 2 " + ] + }, + "execution_count": 7, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "response = estimates.view_summary.historical_snapshots_recommendations.Definition(\"BNPP.PA\", Package.BASIC).get_data()\n", + "response.data.df" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "### Summary - Interim" + ] + }, + { + "cell_type": "code", + "execution_count": 8, + "metadata": { + "pycharm": { + "name": "#%%\n" + } + }, + "outputs": [ + { + "data": { + "text/html": [ + "
\n", + "\n", + "\n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
InstrumentPeriod End DateFinancial Period AbsoluteFinancial Period RelativeEBIT - MeanEBIT - MedianEBIT - HighEBIT - LowEBIT - Standard DeviationEBIT - Number of Estimates...Earnings Per Share - Company Footnote TextEarnings Per Share - Company Footnote TypeEarnings Per Share - Company Footnote ValueRevenue - MeanRevenue - MedianRevenue - HighRevenue - LowRevenue - Standard DeviationRevenue - Number of EstimatesRevenue - Number of Included Estimates
0BNPP.PA2021-06-30FY2021Q2FQ-238101428603827000000426300000030460000003601461707...JUN21 Majority Basis is Fully-Reported/GAAPM<NA>1119470256011177000000116189210001098400000017708524099
1BNPP.PA2021-09-30FY2021Q3FQ-132870000003201000000378400000028760000003756443403...<NA><NA><NA>112168090001123000000011309000000110642650008710192055
2BNPP.PA2021-12-31FY2021Q4FQ034390000003450500000390200000027920000003616904806...<NA><NA><NA>1137484275011345000000117134150001123200000015783548088
3BNPP.PA2022-03-31FY2022Q1FQ1291900000029190000002919000000291900000001...<NA><NA><NA>114574070001145740700011495000000114198140003759300022
4BNPP.PA2022-03-31FY2022Q2FQ2291900000029190000002919000000291900000001...<NA><NA><NA><NA><NA><NA><NA><NA><NA><NA>
5BNPP.PA2022-06-30FY2022Q2FQ2<NA><NA><NA><NA><NA><NA>...<NA><NA><NA>11605519000116055190001160551900011605519000011
\n", + "

6 rows × 42 columns

\n", + "
" + ], + "text/plain": [ + " Instrument Period End Date Financial Period Absolute \\\n", + "0 BNPP.PA 2021-06-30 FY2021Q2 \n", + "1 BNPP.PA 2021-09-30 FY2021Q3 \n", + "2 BNPP.PA 2021-12-31 FY2021Q4 \n", + "3 BNPP.PA 2022-03-31 FY2022Q1 \n", + "4 BNPP.PA 2022-03-31 FY2022Q2 \n", + "5 BNPP.PA 2022-06-30 FY2022Q2 \n", + "\n", + " Financial Period Relative EBIT - Mean EBIT - Median EBIT - High EBIT - Low \\\n", + "0 FQ-2 3810142860 3827000000 4263000000 3046000000 \n", + "1 FQ-1 3287000000 3201000000 3784000000 2876000000 \n", + "2 FQ0 3439000000 3450500000 3902000000 2792000000 \n", + "3 FQ1 2919000000 2919000000 2919000000 2919000000 \n", + "4 FQ2 2919000000 2919000000 2919000000 2919000000 \n", + "5 FQ2 \n", + "\n", + " EBIT - Standard Deviation EBIT - Number of Estimates ... \\\n", + "0 360146170 7 ... \n", + "1 375644340 3 ... \n", + "2 361690480 6 ... \n", + "3 0 1 ... \n", + "4 0 1 ... \n", + "5 ... \n", + "\n", + " Earnings Per Share - Company Footnote Text \\\n", + "0 JUN21 Majority Basis is Fully-Reported/GAAP \n", + "1 \n", + "2 \n", + "3 \n", + "4 \n", + "5 \n", + "\n", + " Earnings Per Share - Company Footnote Type \\\n", + "0 M \n", + "1 \n", + "2 \n", + "3 \n", + "4 \n", + "5 \n", + "\n", + " Earnings Per Share - Company Footnote Value Revenue - Mean Revenue - Median \\\n", + "0 11194702560 11177000000 \n", + "1 11216809000 11230000000 \n", + "2 11374842750 11345000000 \n", + "3 11457407000 11457407000 \n", + "4 \n", + "5 11605519000 11605519000 \n", + "\n", + " Revenue - High Revenue - Low Revenue - Standard Deviation \\\n", + "0 11618921000 10984000000 177085240 \n", + "1 11309000000 11064265000 87101920 \n", + "2 11713415000 11232000000 157835480 \n", + "3 11495000000 11419814000 37593000 \n", + "4 \n", + "5 11605519000 11605519000 0 \n", + "\n", + " Revenue - Number of Estimates Revenue - Number of Included Estimates \n", + "0 9 9 \n", + "1 5 5 \n", + "2 8 8 \n", + "3 2 2 \n", + "4 \n", + "5 1 1 \n", + "\n", + "[6 rows x 42 columns]" + ] + }, + "execution_count": 8, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "response = estimates.view_summary.interim.Definition(\"BNPP.PA\", Package.BASIC).get_data()\n", + "response.data.df" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "#### Summary - Non-periodic measures" + ] + }, + { + "cell_type": "code", + "execution_count": 9, + "metadata": { + "pycharm": { + "name": "#%%\n" + } + }, + "outputs": [ + { + "data": { + "text/html": [ + "
\n", + "\n", + "\n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
InstrumentLong Term Growth - MeanLong Term Growth - MedianLong Term Growth - HighLong Term Growth - LowLong Term Growth - Standard DeviationLong Term Growth - Number Of EstimatesLong Term Growth - Number of Included EstimatesPrice Target - Mean EstimatePrice Target - MeanPrice Target - MedianPrice Target - HighPrice Target - LowPrice Target - Standard DeviationPrice Target - Number of EstimatesPrice Target - Number of Included EstimatesPrice Target - Currency
0BNPP.PA8.3888.24511.45.6622.382455469.408169.40816986.44557.763932420<NA>
\n", + "
" + ], + "text/plain": [ + " Instrument Long Term Growth - Mean Long Term Growth - Median \\\n", + "0 BNPP.PA 8.388 8.245 \n", + "\n", + " Long Term Growth - High Long Term Growth - Low \\\n", + "0 11.4 5.662 \n", + "\n", + " Long Term Growth - Standard Deviation \\\n", + "0 2.38245 \n", + "\n", + " Long Term Growth - Number Of Estimates \\\n", + "0 5 \n", + "\n", + " Long Term Growth - Number of Included Estimates \\\n", + "0 4 \n", + "\n", + " Price Target - Mean Estimate Price Target - Mean Price Target - Median \\\n", + "0 69.4081 69.4081 69 \n", + "\n", + " Price Target - High Price Target - Low Price Target - Standard Deviation \\\n", + "0 86.44 55 7.76393 \n", + "\n", + " Price Target - Number of Estimates \\\n", + "0 24 \n", + "\n", + " Price Target - Number of Included Estimates Price Target - Currency \n", + "0 20 " + ] + }, + "execution_count": 9, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "response = estimates.view_summary.non_periodic_measures.Definition(\"BNPP.PA\", Package.BASIC).get_data()\n", + "response.data.df" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "#### Summary - Recommendations" + ] + }, + { + "cell_type": "code", + "execution_count": 10, + "metadata": { + "pycharm": { + "name": "#%%\n" + } + }, + "outputs": [ + { + "data": { + "text/html": [ + "
\n", + "\n", + "\n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
InstrumentRecommendation - Mean (1-5)Recommendation - Mean LabelRecommendation - Median (1-5)Recommendation - Median LabelRecommendation - High (1-5)Recommendation - High LabelRecommendation - Low (1-5)Recommendation - Low LabelRecommendation - Number Of Strong BuyRecommendation - Number Of BuyRecommendation - Number Of HoldRecommendation - Number Of SellRecommendation - Number Of Strong SellRecommendation - Number Of No OpinionRecommendation - Number Of TotalDays Since 2-Level Rec ChangeDays Since New Sell RecommendationDays Since New Recommendation
0BNPP.PA1.92BUY2BUY1STRONG BUY3HOLD7135000257542517
\n", + "
" + ], + "text/plain": [ + " Instrument Recommendation - Mean (1-5) Recommendation - Mean Label \\\n", + "0 BNPP.PA 1.92 BUY \n", + "\n", + " Recommendation - Median (1-5) Recommendation - Median Label \\\n", + "0 2 BUY \n", + "\n", + " Recommendation - High (1-5) Recommendation - High Label \\\n", + "0 1 STRONG BUY \n", + "\n", + " Recommendation - Low (1-5) Recommendation - Low Label \\\n", + "0 3 HOLD \n", + "\n", + " Recommendation - Number Of Strong Buy Recommendation - Number Of Buy \\\n", + "0 7 13 \n", + "\n", + " Recommendation - Number Of Hold Recommendation - Number Of Sell \\\n", + "0 5 0 \n", + "\n", + " Recommendation - Number Of Strong Sell \\\n", + "0 0 \n", + "\n", + " Recommendation - Number Of No Opinion Recommendation - Number Of Total \\\n", + "0 0 25 \n", + "\n", + " Days Since 2-Level Rec Change Days Since New Sell Recommendation \\\n", + "0 75 425 \n", + "\n", + " Days Since New Recommendation \n", + "0 17 " + ] + }, + "execution_count": 10, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "response = estimates.view_summary.recommendations.Definition(\"BNPP.PA\", Package.BASIC).get_data()\n", + "response.data.df" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "### Close the session" + ] + }, + { + "cell_type": "code", + "execution_count": 11, + "metadata": { + "collapsed": false, + "jupyter": { + "outputs_hidden": false + }, + "pycharm": { + "name": "#%%\n" + } + }, + "outputs": [], + "source": [ + "rd.close_session()" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [] + } + ], + "metadata": { + "kernelspec": { + "display_name": "Python 3 (ipykernel)", + "language": "python", + "name": "python3" + }, + "language_info": { + "codemirror_mode": { + "name": "ipython", + "version": 3 + }, + "file_extension": ".py", + "mimetype": "text/x-python", + "name": "python", + "nbconvert_exporter": "python", + "pygments_lexer": "ipython3", + "version": "3.9.7" + } + }, + "nbformat": 4, + "nbformat_minor": 4 +} diff --git a/Examples/2-Content/2.11-Estimates/EX-2.11.02-Estimates-Actuals.ipynb b/Examples/2-Content/2.11-Estimates/EX-2.11.02-Estimates-Actuals.ipynb new file mode 100644 index 0000000..6254b4c --- /dev/null +++ b/Examples/2-Content/2.11-Estimates/EX-2.11.02-Estimates-Actuals.ipynb @@ -0,0 +1,1441 @@ +{ + "cells": [ + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "----\n", + "\n", + "\n", + "# Data Library for Python\n", + "\n", + "----" + ] + }, + { + "cell_type": "markdown", + "metadata": { + "tags": [] + }, + "source": [ + "## Content layer - Estimates - Actuals\n", + "This notebook demonstrates how to retrieve Estimates.\n", + "\n", + "I/B/E/S (Institutional Brokers' Estimate System) delivers a complete suite of Estimates content with a global view and is the largest contributor base in the industry. RDP I/B/E/S Estimates API provides information about consensus and aggregates data(26 generic measures, 23 KPI measures), company guidance data and advanced analytics. With over 40 years of collection experience and extensive quality controls that include thousands of automated error checks and stringent manual analysis, RDP I/B/E/S gives the clients the content they need for superior insight, research and investment decision making.\n", + "\n", + "The I/B/E/S database currently covers over 56,000 companies in 100 markets.\n", + "More than 900 firms contribute data to I/B/E/S, from the largest global houses to regional and local brokers, with US data back to 1976 and international data back to 1987." + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "#### Learn more\n", + "\n", + "To learn more about the Refinitiv Data Library for Python please join the Refinitiv Developer Community. By [registering](https://developers.refinitiv.com/iam/register) and [logging](https://developers.refinitiv.com/content/devportal/en_us/initCookie.html) into the Refinitiv Developer Community portal you will have free access to a number of learning materials like \n", + " [Quick Start guides](https://developers.refinitiv.com/en/api-catalog/refinitiv-data-platform/refinitiv-data-library-for-python/quick-start), \n", + " [Tutorials](https://developers.refinitiv.com/en/api-catalog/refinitiv-data-platform/refinitiv-data-library-for-python/learning), \n", + " [Documentation](https://developers.refinitiv.com/en/api-catalog/refinitiv-data-platform/refinitiv-data-library-for-python/docs)\n", + " and much more.\n", + "\n", + "#### Getting Help and Support\n", + "\n", + "If you have any questions regarding using the API, please post them on \n", + "the [Refinitiv Data Q&A Forum](https://community.developers.refinitiv.com/spaces/321/index.html). \n", + "The Refinitiv Developer Community will be happy to help. \n", + "\n", + "----" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Set the configuration file location\n", + "For a better ease of use, you have the option to set initialization parameters of the Refinitiv Data Library in the _refinitiv-data.config.json_ configuration file. This file must be located beside your notebook, in your user folder or in a folder defined by the _RD_LIB_CONFIG_PATH_ environment variable. The _RD_LIB_CONFIG_PATH_ environment variable is the option used by this series of examples. The following code sets this environment variable. " + ] + }, + { + "cell_type": "code", + "execution_count": 1, + "metadata": {}, + "outputs": [], + "source": [ + "import os\n", + "os.environ[\"RD_LIB_CONFIG_PATH\"] = \"../../../Configuration\"" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Some Imports to start with" + ] + }, + { + "cell_type": "code", + "execution_count": 2, + "metadata": { + "collapsed": false, + "jupyter": { + "outputs_hidden": false + }, + "pycharm": { + "name": "#%%\n" + } + }, + "outputs": [], + "source": [ + "import refinitiv.data as rd\n", + "from refinitiv.data.content import estimates\n", + "from refinitiv.data.content.estimates import Package" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Open the data session\n", + "\n", + "The open_session() function creates and open sessions based on the information contained in the refinitiv-data.config.json configuration file. Please edit this file to set the session type and other parameters required for the session you want to open." + ] + }, + { + "cell_type": "code", + "execution_count": 3, + "metadata": { + "collapsed": false, + "jupyter": { + "outputs_hidden": false + }, + "pycharm": { + "name": "#%%\n" + } + }, + "outputs": [ + { + "data": { + "text/plain": [ + "" + ] + }, + "execution_count": 3, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "rd.open_session(\"platform.rdp\")" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Retrieve Data" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "### Actuals - Annual" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "Get data with default title as headers" + ] + }, + { + "cell_type": "code", + "execution_count": 4, + "metadata": { + "collapsed": false, + "jupyter": { + "outputs_hidden": false + }, + "pycharm": { + "name": "#%%\n" + } + }, + "outputs": [ + { + "data": { + "text/html": [ + "
\n", + "\n", + "\n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
InstrumentPeriod End DateFinancial Period AbsoluteFinancial Period RelativeEBIT - Actual ValueEBIT - Actual Reported DateEBIT - Actual Standard Unexpected EarningsEBIT - Actual Standard Unexpected Earnings 60DaysEBIT - Actual SurpriseEBIT - Actual Surprise 60Days...EPS - Actual Standard Unexpected EarningsEPS - Actual Standard Unexpected Earnings 60DaysEPS - Actual SurpriseEPS - Actual Surprise 60DaysRevenue - Actual ValueRevenue - Actual Reported DateRevenue - Actual Standard Unexpected EarningsRevenue - Actual Standard Unexpected Earnings 60DaysRevenue - Actual SurpriseRevenue - Actual Surprise 60Days
0BNPP.PA2021-12-31FY2021FY0151240000002022-02-08T10:47:000.301560.275862.8732.654...1.202881.197734.4725.754462350000002022-02-08T10:47:00-0.29111-0.16022-0.202-0.118
1BNPP.PA2020-12-31FY2020FY-1140810000002021-02-05T05:58:00-0.006510.00162-0.0120.003...1.016140.876558.96810.72442750000002021-02-05T05:58:000.173230.204040.1820.218
\n", + "

2 rows × 22 columns

\n", + "
" + ], + "text/plain": [ + " Instrument Period End Date Financial Period Absolute \\\n", + "0 BNPP.PA 2021-12-31 FY2021 \n", + "1 BNPP.PA 2020-12-31 FY2020 \n", + "\n", + " Financial Period Relative EBIT - Actual Value EBIT - Actual Reported Date \\\n", + "0 FY0 15124000000 2022-02-08T10:47:00 \n", + "1 FY-1 14081000000 2021-02-05T05:58:00 \n", + "\n", + " EBIT - Actual Standard Unexpected Earnings \\\n", + "0 0.30156 \n", + "1 -0.00651 \n", + "\n", + " EBIT - Actual Standard Unexpected Earnings 60Days EBIT - Actual Surprise \\\n", + "0 0.27586 2.873 \n", + "1 0.00162 -0.012 \n", + "\n", + " EBIT - Actual Surprise 60Days ... \\\n", + "0 2.654 ... \n", + "1 0.003 ... \n", + "\n", + " EPS - Actual Standard Unexpected Earnings \\\n", + "0 1.20288 \n", + "1 1.01614 \n", + "\n", + " EPS - Actual Standard Unexpected Earnings 60Days EPS - Actual Surprise \\\n", + "0 1.19773 4.472 \n", + "1 0.87655 8.968 \n", + "\n", + " EPS - Actual Surprise 60Days Revenue - Actual Value \\\n", + "0 5.754 46235000000 \n", + "1 10.72 44275000000 \n", + "\n", + " Revenue - Actual Reported Date \\\n", + "0 2022-02-08T10:47:00 \n", + "1 2021-02-05T05:58:00 \n", + "\n", + " Revenue - Actual Standard Unexpected Earnings \\\n", + "0 -0.29111 \n", + "1 0.17323 \n", + "\n", + " Revenue - Actual Standard Unexpected Earnings 60Days \\\n", + "0 -0.16022 \n", + "1 0.20404 \n", + "\n", + " Revenue - Actual Surprise Revenue - Actual Surprise 60Days \n", + "0 -0.202 -0.118 \n", + "1 0.182 0.218 \n", + "\n", + "[2 rows x 22 columns]" + ] + }, + "execution_count": 4, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "response = estimates.view_actuals.annual.Definition(\"BNPP.PA\", Package.BASIC).get_data()\n", + "response.data.df" + ] + }, + { + "cell_type": "markdown", + "metadata": { + "jp-MarkdownHeadingCollapsed": true, + "tags": [] + }, + "source": [ + "Get data with field name as headers" + ] + }, + { + "cell_type": "code", + "execution_count": 5, + "metadata": { + "collapsed": false, + "jupyter": { + "outputs_hidden": false + }, + "pycharm": { + "name": "#%%\n" + } + }, + "outputs": [ + { + "data": { + "text/html": [ + "
\n", + "\n", + "\n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
instrumentperiodenddatefperiodrfperiodTR.EBITActValueTR.EBITActReportDateTR.EBITActSueScoreTR.EBITActSueScore60DayTR.EBITActSurpriseTR.EBITActSurprise60Day...TR.EPSActSueScoreTR.EPSActSueScore60DayTR.EPSActSurpriseTR.EPSActSurprise60DayTR.RevenueActValueTR.RevenueActReportDateTR.RevenueActSueScoreTR.RevenueActSueScore60DayTR.RevenueActSurpriseTR.RevenueActSurprise60Day
0BNPP.PA2021-12-31FY2021FY0151240000002022-02-08T10:47:000.301560.275862.8732.654...1.202881.197734.4725.754462350000002022-02-08T10:47:00-0.29111-0.16022-0.202-0.118
1BNPP.PA2020-12-31FY2020FY-1140810000002021-02-05T05:58:00-0.006510.00162-0.0120.003...1.016140.876558.96810.72442750000002021-02-05T05:58:000.173230.204040.1820.218
\n", + "

2 rows × 22 columns

\n", + "
" + ], + "text/plain": [ + " instrument periodenddate fperiod rfperiod TR.EBITActValue \\\n", + "0 BNPP.PA 2021-12-31 FY2021 FY0 15124000000 \n", + "1 BNPP.PA 2020-12-31 FY2020 FY-1 14081000000 \n", + "\n", + " TR.EBITActReportDate TR.EBITActSueScore TR.EBITActSueScore60Day \\\n", + "0 2022-02-08T10:47:00 0.30156 0.27586 \n", + "1 2021-02-05T05:58:00 -0.00651 0.00162 \n", + "\n", + " TR.EBITActSurprise TR.EBITActSurprise60Day ... TR.EPSActSueScore \\\n", + "0 2.873 2.654 ... 1.20288 \n", + "1 -0.012 0.003 ... 1.01614 \n", + "\n", + " TR.EPSActSueScore60Day TR.EPSActSurprise TR.EPSActSurprise60Day \\\n", + "0 1.19773 4.472 5.754 \n", + "1 0.87655 8.968 10.72 \n", + "\n", + " TR.RevenueActValue TR.RevenueActReportDate TR.RevenueActSueScore \\\n", + "0 46235000000 2022-02-08T10:47:00 -0.29111 \n", + "1 44275000000 2021-02-05T05:58:00 0.17323 \n", + "\n", + " TR.RevenueActSueScore60Day TR.RevenueActSurprise TR.RevenueActSurprise60Day \n", + "0 -0.16022 -0.202 -0.118 \n", + "1 0.20404 0.182 0.218 \n", + "\n", + "[2 rows x 22 columns]" + ] + }, + "execution_count": 5, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "response = estimates.view_actuals.annual.Definition(\"BNPP.PA\", Package.BASIC, use_field_names_in_headers=True).get_data()\n", + "response.data.df" + ] + }, + { + "cell_type": "markdown", + "metadata": { + "jp-MarkdownHeadingCollapsed": true, + "tags": [] + }, + "source": [ + "Get data for several instruments" + ] + }, + { + "cell_type": "code", + "execution_count": 6, + "metadata": { + "collapsed": false, + "jupyter": { + "outputs_hidden": false + }, + "pycharm": { + "name": "#%%\n" + } + }, + "outputs": [ + { + "data": { + "text/html": [ + "
\n", + "\n", + "\n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
InstrumentPeriod End DateFinancial Period AbsoluteFinancial Period RelativeBVPS - Actual ValueBVPS - Actual Reported DateBVPS - Actual Standard Unexpected EarningsBVPS - Actual Standard Unexpected Earnings 60DaysBVPS - Actual SurpriseBVPS - Actual Surprise 60Days...ROE - Actual Standard Unexpected EarningsROE - Actual Standard Unexpected Earnings 60DaysROE - Actual SurpriseROE - Actual Surprise 60DaysRevenue - Actual ValueRevenue - Actual Reported DateRevenue - Actual Standard Unexpected EarningsRevenue - Actual Standard Unexpected Earnings 60DaysRevenue - Actual SurpriseRevenue - Actual Surprise 60Days
0BNPP.PA2021-12-31FY2021FY095.561832022-02-08T10:58:001.957881.9771510.11510.55...0.690160.668955.1986.864462350000002022-02-08T10:47:00-0.29111-0.16022-0.202-0.118
1ORCL.N2021-05-31FY2021FY02.064132021-06-15T16:06:00-1.17556-1.07431-53.49-50.342...0.678680.8126121.27224.418404810000002021-06-15T16:06:002.215912.272720.4510.461
2BNPP.PA2020-12-31FY2020FY-182.32021-02-05T05:58:00-0.08861-0.06829-0.341-0.26...1.016570.649299.0227.029442750000002021-02-05T05:58:000.173230.204040.1820.218
3ORCL.N2020-05-31FY2020FY-14.032552020-06-16T16:02:00-0.59247-0.59131-23.396-22.083...0.270740.291286.5937.402390720000002020-06-16T16:02:00-0.81465-1.7988-0.574-1.338
\n", + "

4 rows × 58 columns

\n", + "
" + ], + "text/plain": [ + " Instrument Period End Date Financial Period Absolute \\\n", + "0 BNPP.PA 2021-12-31 FY2021 \n", + "1 ORCL.N 2021-05-31 FY2021 \n", + "2 BNPP.PA 2020-12-31 FY2020 \n", + "3 ORCL.N 2020-05-31 FY2020 \n", + "\n", + " Financial Period Relative BVPS - Actual Value BVPS - Actual Reported Date \\\n", + "0 FY0 95.56183 2022-02-08T10:58:00 \n", + "1 FY0 2.06413 2021-06-15T16:06:00 \n", + "2 FY-1 82.3 2021-02-05T05:58:00 \n", + "3 FY-1 4.03255 2020-06-16T16:02:00 \n", + "\n", + " BVPS - Actual Standard Unexpected Earnings \\\n", + "0 1.95788 \n", + "1 -1.17556 \n", + "2 -0.08861 \n", + "3 -0.59247 \n", + "\n", + " BVPS - Actual Standard Unexpected Earnings 60Days BVPS - Actual Surprise \\\n", + "0 1.97715 10.115 \n", + "1 -1.07431 -53.49 \n", + "2 -0.06829 -0.341 \n", + "3 -0.59131 -23.396 \n", + "\n", + " BVPS - Actual Surprise 60Days ... \\\n", + "0 10.55 ... \n", + "1 -50.342 ... \n", + "2 -0.26 ... \n", + "3 -22.083 ... \n", + "\n", + " ROE - Actual Standard Unexpected Earnings \\\n", + "0 0.69016 \n", + "1 0.67868 \n", + "2 1.01657 \n", + "3 0.27074 \n", + "\n", + " ROE - Actual Standard Unexpected Earnings 60Days ROE - Actual Surprise \\\n", + "0 0.66895 5.198 \n", + "1 0.81261 21.272 \n", + "2 0.64929 9.022 \n", + "3 0.29128 6.593 \n", + "\n", + " ROE - Actual Surprise 60Days Revenue - Actual Value \\\n", + "0 6.864 46235000000 \n", + "1 24.418 40481000000 \n", + "2 7.029 44275000000 \n", + "3 7.402 39072000000 \n", + "\n", + " Revenue - Actual Reported Date \\\n", + "0 2022-02-08T10:47:00 \n", + "1 2021-06-15T16:06:00 \n", + "2 2021-02-05T05:58:00 \n", + "3 2020-06-16T16:02:00 \n", + "\n", + " Revenue - Actual Standard Unexpected Earnings \\\n", + "0 -0.29111 \n", + "1 2.21591 \n", + "2 0.17323 \n", + "3 -0.81465 \n", + "\n", + " Revenue - Actual Standard Unexpected Earnings 60Days \\\n", + "0 -0.16022 \n", + "1 2.27272 \n", + "2 0.20404 \n", + "3 -1.7988 \n", + "\n", + " Revenue - Actual Surprise Revenue - Actual Surprise 60Days \n", + "0 -0.202 -0.118 \n", + "1 0.451 0.461 \n", + "2 0.182 0.218 \n", + "3 -0.574 -1.338 \n", + "\n", + "[4 rows x 58 columns]" + ] + }, + "execution_count": 6, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "response = estimates.view_actuals.annual.Definition([\"BNPP.PA\",\"ORCL.N\"], Package.STANDARD).get_data()\n", + "response.data.df" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "Standard package" + ] + }, + { + "cell_type": "code", + "execution_count": 7, + "metadata": { + "collapsed": false, + "jupyter": { + "outputs_hidden": false + }, + "pycharm": { + "name": "#%%\n" + } + }, + "outputs": [ + { + "data": { + "text/html": [ + "
\n", + "\n", + "\n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
InstrumentPeriod End DateFinancial Period AbsoluteFinancial Period RelativeBVPS - Actual ValueBVPS - Actual Reported DateBVPS - Actual Standard Unexpected EarningsBVPS - Actual Standard Unexpected Earnings 60DaysBVPS - Actual SurpriseBVPS - Actual Surprise 60Days...ROE - Actual Standard Unexpected EarningsROE - Actual Standard Unexpected Earnings 60DaysROE - Actual SurpriseROE - Actual Surprise 60DaysRevenue - Actual ValueRevenue - Actual Reported DateRevenue - Actual Standard Unexpected EarningsRevenue - Actual Standard Unexpected Earnings 60DaysRevenue - Actual SurpriseRevenue - Actual Surprise 60Days
0BNPP.PA2021-12-31FY2021FY095.561832022-02-08T10:58:001.957881.9771510.11510.55...0.690160.668955.1986.864462350000002022-02-08T10:47:00-0.29111-0.16022-0.202-0.118
1BNPP.PA2020-12-31FY2020FY-182.32021-02-05T05:58:00-0.08861-0.06829-0.341-0.26...1.016570.649299.0227.029442750000002021-02-05T05:58:000.173230.204040.1820.218
\n", + "

2 rows × 52 columns

\n", + "
" + ], + "text/plain": [ + " Instrument Period End Date Financial Period Absolute \\\n", + "0 BNPP.PA 2021-12-31 FY2021 \n", + "1 BNPP.PA 2020-12-31 FY2020 \n", + "\n", + " Financial Period Relative BVPS - Actual Value BVPS - Actual Reported Date \\\n", + "0 FY0 95.56183 2022-02-08T10:58:00 \n", + "1 FY-1 82.3 2021-02-05T05:58:00 \n", + "\n", + " BVPS - Actual Standard Unexpected Earnings \\\n", + "0 1.95788 \n", + "1 -0.08861 \n", + "\n", + " BVPS - Actual Standard Unexpected Earnings 60Days BVPS - Actual Surprise \\\n", + "0 1.97715 10.115 \n", + "1 -0.06829 -0.341 \n", + "\n", + " BVPS - Actual Surprise 60Days ... \\\n", + "0 10.55 ... \n", + "1 -0.26 ... \n", + "\n", + " ROE - Actual Standard Unexpected Earnings \\\n", + "0 0.69016 \n", + "1 1.01657 \n", + "\n", + " ROE - Actual Standard Unexpected Earnings 60Days ROE - Actual Surprise \\\n", + "0 0.66895 5.198 \n", + "1 0.64929 9.022 \n", + "\n", + " ROE - Actual Surprise 60Days Revenue - Actual Value \\\n", + "0 6.864 46235000000 \n", + "1 7.029 44275000000 \n", + "\n", + " Revenue - Actual Reported Date \\\n", + "0 2022-02-08T10:47:00 \n", + "1 2021-02-05T05:58:00 \n", + "\n", + " Revenue - Actual Standard Unexpected Earnings \\\n", + "0 -0.29111 \n", + "1 0.17323 \n", + "\n", + " Revenue - Actual Standard Unexpected Earnings 60Days \\\n", + "0 -0.16022 \n", + "1 0.20404 \n", + "\n", + " Revenue - Actual Surprise Revenue - Actual Surprise 60Days \n", + "0 -0.202 -0.118 \n", + "1 0.182 0.218 \n", + "\n", + "[2 rows x 52 columns]" + ] + }, + "execution_count": 7, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "response = estimates.view_actuals.annual.Definition(\"BNPP.PA\", Package.STANDARD).get_data()\n", + "response.data.df" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "Professional package" + ] + }, + { + "cell_type": "code", + "execution_count": 8, + "metadata": { + "collapsed": false, + "jupyter": { + "outputs_hidden": false + }, + "pycharm": { + "name": "#%%\n" + } + }, + "outputs": [ + { + "data": { + "text/html": [ + "
\n", + "\n", + "\n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
InstrumentPeriod End DateFinancial Period AbsoluteFinancial Period RelativeBVPS - Actual ValueBVPS - Actual Reported DateBVPS - Actual Standard Unexpected EarningsBVPS - Actual Standard Unexpected Earnings 60DaysBVPS - Actual SurpriseBVPS - Actual Surprise 60Days...ROE - Actual Standard Unexpected EarningsROE - Actual Standard Unexpected Earnings 60DaysROE - Actual SurpriseROE - Actual Surprise 60DaysRevenue - Actual ValueRevenue - Actual Reported DateRevenue - Actual Standard Unexpected EarningsRevenue - Actual Standard Unexpected Earnings 60DaysRevenue - Actual SurpriseRevenue - Actual Surprise 60Days
0BNPP.PA2021-12-31FY2021FY095.561832022-02-08T10:58:001.957881.9771510.11510.55...0.690160.668955.1986.864462350000002022-02-08T10:47:00-0.29111-0.16022-0.202-0.118
1BNPP.PA2020-12-31FY2020FY-182.32021-02-05T05:58:00-0.08861-0.06829-0.341-0.26...1.016570.649299.0227.029442750000002021-02-05T05:58:000.173230.204040.1820.218
2BNPP.PA2019-12-31FY2019FY-286.12020-02-05T05:59:002.500412.4955710.59410.595...-0.40744-0.32243-3.544-2.672445970000002020-02-05T05:59:001.446661.50160.8881.028
3BNPP.PA2018-12-31FY2018FY-381.192019-02-06T06:44:001.989811.980778.5678.332...-0.69384-0.90318-6.168-8.449425160000002019-02-06T06:44:00-0.98174-1.67774-0.921-1.38
4BNPP.PA2017-12-31FY2017FY-475.12018-02-06T06:51:000.195640.169061.0330.893...0.802040.653647.0465.949431610000002018-02-06T06:51:00-0.173-0.76151-0.131-0.622
\n", + "

5 rows × 118 columns

\n", + "
" + ], + "text/plain": [ + " Instrument Period End Date Financial Period Absolute \\\n", + "0 BNPP.PA 2021-12-31 FY2021 \n", + "1 BNPP.PA 2020-12-31 FY2020 \n", + "2 BNPP.PA 2019-12-31 FY2019 \n", + "3 BNPP.PA 2018-12-31 FY2018 \n", + "4 BNPP.PA 2017-12-31 FY2017 \n", + "\n", + " Financial Period Relative BVPS - Actual Value BVPS - Actual Reported Date \\\n", + "0 FY0 95.56183 2022-02-08T10:58:00 \n", + "1 FY-1 82.3 2021-02-05T05:58:00 \n", + "2 FY-2 86.1 2020-02-05T05:59:00 \n", + "3 FY-3 81.19 2019-02-06T06:44:00 \n", + "4 FY-4 75.1 2018-02-06T06:51:00 \n", + "\n", + " BVPS - Actual Standard Unexpected Earnings \\\n", + "0 1.95788 \n", + "1 -0.08861 \n", + "2 2.50041 \n", + "3 1.98981 \n", + "4 0.19564 \n", + "\n", + " BVPS - Actual Standard Unexpected Earnings 60Days BVPS - Actual Surprise \\\n", + "0 1.97715 10.115 \n", + "1 -0.06829 -0.341 \n", + "2 2.49557 10.594 \n", + "3 1.98077 8.567 \n", + "4 0.16906 1.033 \n", + "\n", + " BVPS - Actual Surprise 60Days ... \\\n", + "0 10.55 ... \n", + "1 -0.26 ... \n", + "2 10.595 ... \n", + "3 8.332 ... \n", + "4 0.893 ... \n", + "\n", + " ROE - Actual Standard Unexpected Earnings \\\n", + "0 0.69016 \n", + "1 1.01657 \n", + "2 -0.40744 \n", + "3 -0.69384 \n", + "4 0.80204 \n", + "\n", + " ROE - Actual Standard Unexpected Earnings 60Days ROE - Actual Surprise \\\n", + "0 0.66895 5.198 \n", + "1 0.64929 9.022 \n", + "2 -0.32243 -3.544 \n", + "3 -0.90318 -6.168 \n", + "4 0.65364 7.046 \n", + "\n", + " ROE - Actual Surprise 60Days Revenue - Actual Value \\\n", + "0 6.864 46235000000 \n", + "1 7.029 44275000000 \n", + "2 -2.672 44597000000 \n", + "3 -8.449 42516000000 \n", + "4 5.949 43161000000 \n", + "\n", + " Revenue - Actual Reported Date \\\n", + "0 2022-02-08T10:47:00 \n", + "1 2021-02-05T05:58:00 \n", + "2 2020-02-05T05:59:00 \n", + "3 2019-02-06T06:44:00 \n", + "4 2018-02-06T06:51:00 \n", + "\n", + " Revenue - Actual Standard Unexpected Earnings \\\n", + "0 -0.29111 \n", + "1 0.17323 \n", + "2 1.44666 \n", + "3 -0.98174 \n", + "4 -0.173 \n", + "\n", + " Revenue - Actual Standard Unexpected Earnings 60Days \\\n", + "0 -0.16022 \n", + "1 0.20404 \n", + "2 1.5016 \n", + "3 -1.67774 \n", + "4 -0.76151 \n", + "\n", + " Revenue - Actual Surprise Revenue - Actual Surprise 60Days \n", + "0 -0.202 -0.118 \n", + "1 0.182 0.218 \n", + "2 0.888 1.028 \n", + "3 -0.921 -1.38 \n", + "4 -0.131 -0.622 \n", + "\n", + "[5 rows x 118 columns]" + ] + }, + "execution_count": 8, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "response = estimates.view_actuals.annual.Definition(\"BNPP.PA\", Package.PROFESSIONAL).get_data()\n", + "response.data.df" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "### Actuals - Interim" + ] + }, + { + "cell_type": "code", + "execution_count": 9, + "metadata": { + "collapsed": false, + "jupyter": { + "outputs_hidden": false + }, + "pycharm": { + "name": "#%%\n" + } + }, + "outputs": [ + { + "data": { + "text/html": [ + "
\n", + "\n", + "\n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
InstrumentPeriod End DateFinancial Period AbsoluteFinancial Period RelativeEBIT - Actual ValueEBIT - Actual Reported DateEBIT - Actual Standard Unexpected EarningsEBIT - Actual Standard Unexpected Earnings 60DaysEBIT - Actual SurpriseEBIT - Actual Surprise 60Days...EPS - Actual Standard Unexpected EarningsEPS - Actual Standard Unexpected Earnings 60DaysEPS - Actual SurpriseEPS - Actual Surprise 60DaysRevenue - Actual ValueRevenue - Actual Reported DateRevenue - Actual Standard Unexpected EarningsRevenue - Actual Standard Unexpected Earnings 60DaysRevenue - Actual SurpriseRevenue - Actual Surprise 60Days
0BNPP.PA2021-12-31FY2021Q4FQ033020000002022-02-08T10:47:00-0.37878<NA>-3.984<NA>...1.508471.354537.7413.914112320000002022-02-08T10:47:00-0.90501-1.35991-1.256-2.215
1BNPP.PA2021-09-30FY2021Q3FQ-132800000002021-10-29T05:58:00-0.01864<NA>-0.213<NA>...1.534611.963718.71715.963113980000002021-10-29T05:58:002.080223.921431.6153.285
\n", + "

2 rows × 22 columns

\n", + "
" + ], + "text/plain": [ + " Instrument Period End Date Financial Period Absolute \\\n", + "0 BNPP.PA 2021-12-31 FY2021Q4 \n", + "1 BNPP.PA 2021-09-30 FY2021Q3 \n", + "\n", + " Financial Period Relative EBIT - Actual Value EBIT - Actual Reported Date \\\n", + "0 FQ0 3302000000 2022-02-08T10:47:00 \n", + "1 FQ-1 3280000000 2021-10-29T05:58:00 \n", + "\n", + " EBIT - Actual Standard Unexpected Earnings \\\n", + "0 -0.37878 \n", + "1 -0.01864 \n", + "\n", + " EBIT - Actual Standard Unexpected Earnings 60Days EBIT - Actual Surprise \\\n", + "0 -3.984 \n", + "1 -0.213 \n", + "\n", + " EBIT - Actual Surprise 60Days ... \\\n", + "0 ... \n", + "1 ... \n", + "\n", + " EPS - Actual Standard Unexpected Earnings \\\n", + "0 1.50847 \n", + "1 1.53461 \n", + "\n", + " EPS - Actual Standard Unexpected Earnings 60Days EPS - Actual Surprise \\\n", + "0 1.35453 7.741 \n", + "1 1.96371 8.717 \n", + "\n", + " EPS - Actual Surprise 60Days Revenue - Actual Value \\\n", + "0 3.914 11232000000 \n", + "1 15.963 11398000000 \n", + "\n", + " Revenue - Actual Reported Date \\\n", + "0 2022-02-08T10:47:00 \n", + "1 2021-10-29T05:58:00 \n", + "\n", + " Revenue - Actual Standard Unexpected Earnings \\\n", + "0 -0.90501 \n", + "1 2.08022 \n", + "\n", + " Revenue - Actual Standard Unexpected Earnings 60Days \\\n", + "0 -1.35991 \n", + "1 3.92143 \n", + "\n", + " Revenue - Actual Surprise Revenue - Actual Surprise 60Days \n", + "0 -1.256 -2.215 \n", + "1 1.615 3.285 \n", + "\n", + "[2 rows x 22 columns]" + ] + }, + "execution_count": 9, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "response = estimates.view_actuals.interim.Definition(\"BNPP.PA\", Package.BASIC).get_data()\n", + "response.data.df" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "### Close the session" + ] + }, + { + "cell_type": "code", + "execution_count": 10, + "metadata": { + "collapsed": false, + "jupyter": { + "outputs_hidden": false + }, + "pycharm": { + "name": "#%%\n" + } + }, + "outputs": [], + "source": [ + "rd.close_session()" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [] + } + ], + "metadata": { + "kernelspec": { + "display_name": "Python 3 (ipykernel)", + "language": "python", + "name": "python3" + }, + "language_info": { + "codemirror_mode": { + "name": "ipython", + "version": 3 + }, + "file_extension": ".py", + "mimetype": "text/x-python", + "name": "python", + "nbconvert_exporter": "python", + "pygments_lexer": "ipython3", + "version": "3.9.7" + } + }, + "nbformat": 4, + "nbformat_minor": 4 +} diff --git a/Examples/2-Content/2.11-Estimates/EX-2.11.03-Estimates-SummaryKPI.ipynb b/Examples/2-Content/2.11-Estimates/EX-2.11.03-Estimates-SummaryKPI.ipynb new file mode 100644 index 0000000..2bd5351 --- /dev/null +++ b/Examples/2-Content/2.11-Estimates/EX-2.11.03-Estimates-SummaryKPI.ipynb @@ -0,0 +1,724 @@ +{ + "cells": [ + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "----\n", + "\n", + "\n", + "# Data Library for Python\n", + "\n", + "----" + ] + }, + { + "cell_type": "markdown", + "metadata": { + "tags": [] + }, + "source": [ + "## Content layer - Estimates - Summary KPI\n", + "This notebook demonstrates how to retrieve Estimates.\n", + "\n", + "I/B/E/S (Institutional Brokers' Estimate System) delivers a complete suite of Estimates content with a global view and is the largest contributor base in the industry. RDP I/B/E/S Estimates API provides information about consensus and aggregates data(26 generic measures, 23 KPI measures), company guidance data and advanced analytics. With over 40 years of collection experience and extensive quality controls that include thousands of automated error checks and stringent manual analysis, RDP I/B/E/S gives the clients the content they need for superior insight, research and investment decision making.\n", + "\n", + "The I/B/E/S database currently covers over 56,000 companies in 100 markets.\n", + "More than 900 firms contribute data to I/B/E/S, from the largest global houses to regional and local brokers, with US data back to 1976 and international data back to 1987." + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "#### Learn more\n", + "\n", + "To learn more about the Refinitiv Data Library for Python please join the Refinitiv Developer Community. By [registering](https://developers.refinitiv.com/iam/register) and [logging](https://developers.refinitiv.com/content/devportal/en_us/initCookie.html) into the Refinitiv Developer Community portal you will have free access to a number of learning materials like \n", + " [Quick Start guides](https://developers.refinitiv.com/en/api-catalog/refinitiv-data-platform/refinitiv-data-library-for-python/quick-start), \n", + " [Tutorials](https://developers.refinitiv.com/en/api-catalog/refinitiv-data-platform/refinitiv-data-library-for-python/learning), \n", + " [Documentation](https://developers.refinitiv.com/en/api-catalog/refinitiv-data-platform/refinitiv-data-library-for-python/docs)\n", + " and much more.\n", + "\n", + "#### Getting Help and Support\n", + "\n", + "If you have any questions regarding using the API, please post them on \n", + "the [Refinitiv Data Q&A Forum](https://community.developers.refinitiv.com/spaces/321/index.html). \n", + "The Refinitiv Developer Community will be happy to help. \n", + "\n", + "----" + ] + }, + { + "cell_type": "markdown", + "metadata": { + "tags": [] + }, + "source": [ + "## Set the configuration file location\n", + "For a better ease of use, you have the option to set initialization parameters of the Refinitiv Data Library in the _refinitiv-data.config.json_ configuration file. This file must be located beside your notebook, in your user folder or in a folder defined by the _RD_LIB_CONFIG_PATH_ environment variable. The _RD_LIB_CONFIG_PATH_ environment variable is the option used by this series of examples. The following code sets this environment variable. " + ] + }, + { + "cell_type": "code", + "execution_count": 1, + "metadata": {}, + "outputs": [], + "source": [ + "import os\n", + "os.environ[\"RD_LIB_CONFIG_PATH\"] = \"../../../Configuration\"" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Some Imports to start with" + ] + }, + { + "cell_type": "code", + "execution_count": 1, + "metadata": { + "collapsed": false, + "jupyter": { + "outputs_hidden": false + }, + "pycharm": { + "name": "#%%\n" + } + }, + "outputs": [], + "source": [ + "import refinitiv.data as rd\n", + "from refinitiv.data.content import estimates" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Open the data session\n", + "\n", + "The open_session() function creates and open sessions based on the information contained in the refinitiv-data.config.json configuration file. Please edit this file to set the session type and other parameters required for the session you want to open." + ] + }, + { + "cell_type": "code", + "execution_count": 2, + "metadata": { + "collapsed": false, + "jupyter": { + "outputs_hidden": false + }, + "pycharm": { + "name": "#%%\n" + } + }, + "outputs": [ + { + "data": { + "text/plain": [ + "" + ] + }, + "execution_count": 2, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "rd.open_session(\"platform.rdp\")" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Retrieve Data" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "### Summary KPI - Annual" + ] + }, + { + "cell_type": "code", + "execution_count": 3, + "metadata": { + "collapsed": false, + "jupyter": { + "outputs_hidden": false + }, + "pycharm": { + "name": "#%%\n" + } + }, + "outputs": [ + { + "data": { + "text/html": [ + "
\n", + "\n", + "\n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
InstrumentPeriod End DateFinancial Period AbsoluteFinancial Period RelativeNon Performing Loan - HighNon Performing Loan - LowNon Performing Loan - MeanNon Performing Loan - MedianNon Performing Loan - Num Inc EstNon Performing Loan - Num of EstNon Performing Loan - Std DevCore Tier 1 Capital Ratio - HighCore Tier 1 Capital Ratio - LowCore Tier 1 Capital Ratio - MeanCore Tier 1 Capital Ratio - MedianCore Tier 1 Capital Ratio - Num Inc EstCore Tier 1 Capital Ratio - Num of EstCore Tier 1 Capital Ratio - StdDev
0BNPP.PA2023-12-31FY2023FY23000000000002040860000025817200000441204291502011268700000098974000000105880250000106720500000884322333850
1BNPP.PA2022-12-31FY2022FY12900000000002020700000025914000000441183543804010588200000095378000000102052125000103331000000883222233020
2BNPP.PA2021-12-31FY2021FY030372000000244650000002827900000030000000000342701177890102522000000925090000009741871429099287000000784072981070
3BNPP.PA2020-12-31FY2020FY-13008600000023331000000278056666703000000000034316426193099033000000876300000009467683333096721500000664288460460
\n", + "
" + ], + "text/plain": [ + " Instrument Period End Date Financial Period Absolute \\\n", + "0 BNPP.PA 2023-12-31 FY2023 \n", + "1 BNPP.PA 2022-12-31 FY2022 \n", + "2 BNPP.PA 2021-12-31 FY2021 \n", + "3 BNPP.PA 2020-12-31 FY2020 \n", + "\n", + " Financial Period Relative Non Performing Loan - High \\\n", + "0 FY2 30000000000 \n", + "1 FY1 29000000000 \n", + "2 FY0 30372000000 \n", + "3 FY-1 30086000000 \n", + "\n", + " Non Performing Loan - Low Non Performing Loan - Mean \\\n", + "0 0 20408600000 \n", + "1 0 20207000000 \n", + "2 24465000000 28279000000 \n", + "3 23331000000 27805666670 \n", + "\n", + " Non Performing Loan - Median Non Performing Loan - Num Inc Est \\\n", + "0 25817200000 4 \n", + "1 25914000000 4 \n", + "2 30000000000 3 \n", + "3 30000000000 3 \n", + "\n", + " Non Performing Loan - Num of Est Non Performing Loan - Std Dev \\\n", + "0 4 12042915020 \n", + "1 4 11835438040 \n", + "2 4 2701177890 \n", + "3 4 3164261930 \n", + "\n", + " Core Tier 1 Capital Ratio - High Core Tier 1 Capital Ratio - Low \\\n", + "0 112687000000 98974000000 \n", + "1 105882000000 95378000000 \n", + "2 102522000000 92509000000 \n", + "3 99033000000 87630000000 \n", + "\n", + " Core Tier 1 Capital Ratio - Mean Core Tier 1 Capital Ratio - Median \\\n", + "0 105880250000 106720500000 \n", + "1 102052125000 103331000000 \n", + "2 97418714290 99287000000 \n", + "3 94676833330 96721500000 \n", + "\n", + " Core Tier 1 Capital Ratio - Num Inc Est \\\n", + "0 8 \n", + "1 8 \n", + "2 7 \n", + "3 6 \n", + "\n", + " Core Tier 1 Capital Ratio - Num of Est Core Tier 1 Capital Ratio - StdDev \n", + "0 8 4322333850 \n", + "1 8 3222233020 \n", + "2 8 4072981070 \n", + "3 6 4288460460 " + ] + }, + "execution_count": 3, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "response = estimates.view_summary_kpi.annual.Definition(\"BNPP.PA\").get_data()\n", + "response.data.df" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "### Summary KPI - Historical snapshots KPI" + ] + }, + { + "cell_type": "code", + "execution_count": 4, + "metadata": { + "collapsed": false, + "jupyter": { + "outputs_hidden": false + }, + "pycharm": { + "name": "#%%\n" + } + }, + "outputs": [ + { + "data": { + "text/html": [ + "
\n", + "\n", + "\n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
InstrumentPeriod End DateFinancial Period AbsoluteFinancial Period RelativeTier 1 Capital Ratio -CurrentTier 1 Capital Ratio - 1 Week AgoTier 1 Capital Ratio - 1 Month AgoTier 1 Capital Ratio - 2 Months AgoTier 1 Capital Ratio - 3 Months AgoTier 1 Capital Ratio - 4 Months Ago...Non-Performing Loans - 3 Months AgoNon-Performing Loans - 4 Months AgoNon-Performing Loans - 5 Months AgoNon-Performing Loans - 6 Months AgoNon-Performing Loans - 7 Months AgoNon-Performing Loans - 8 Months AgoNon-Performing Loans - 9 Months AgoNon-Performing Loans - 10 Months AgoNon-Performing Loans - 11 Months AgoNon-Performing Loans - 12 Months Ago
0BNPP.PA2022-12-31FY2022FY113.7413.7413.5945513.1033313.1854613.18546...21351500000213515000002135150000021351500000213515000002135150000021101500000211015000002110150000021368750000
1BNPP.PA2023-12-31FY2023FY213.9713.9713.8113.1818213.2213.22...21559600000215596000002155960000021309600000213096000002130960000021309600000213096000002130960000030982000000
\n", + "

2 rows × 32 columns

\n", + "
" + ], + "text/plain": [ + " Instrument Period End Date Financial Period Absolute \\\n", + "0 BNPP.PA 2022-12-31 FY2022 \n", + "1 BNPP.PA 2023-12-31 FY2023 \n", + "\n", + " Financial Period Relative Tier 1 Capital Ratio -Current \\\n", + "0 FY1 13.74 \n", + "1 FY2 13.97 \n", + "\n", + " Tier 1 Capital Ratio - 1 Week Ago Tier 1 Capital Ratio - 1 Month Ago \\\n", + "0 13.74 13.59455 \n", + "1 13.97 13.81 \n", + "\n", + " Tier 1 Capital Ratio - 2 Months Ago Tier 1 Capital Ratio - 3 Months Ago \\\n", + "0 13.10333 13.18546 \n", + "1 13.18182 13.22 \n", + "\n", + " Tier 1 Capital Ratio - 4 Months Ago ... \\\n", + "0 13.18546 ... \n", + "1 13.22 ... \n", + "\n", + " Non-Performing Loans - 3 Months Ago Non-Performing Loans - 4 Months Ago \\\n", + "0 21351500000 21351500000 \n", + "1 21559600000 21559600000 \n", + "\n", + " Non-Performing Loans - 5 Months Ago Non-Performing Loans - 6 Months Ago \\\n", + "0 21351500000 21351500000 \n", + "1 21559600000 21309600000 \n", + "\n", + " Non-Performing Loans - 7 Months Ago Non-Performing Loans - 8 Months Ago \\\n", + "0 21351500000 21351500000 \n", + "1 21309600000 21309600000 \n", + "\n", + " Non-Performing Loans - 9 Months Ago Non-Performing Loans - 10 Months Ago \\\n", + "0 21101500000 21101500000 \n", + "1 21309600000 21309600000 \n", + "\n", + " Non-Performing Loans - 11 Months Ago Non-Performing Loans - 12 Months Ago \n", + "0 21101500000 21368750000 \n", + "1 21309600000 30982000000 \n", + "\n", + "[2 rows x 32 columns]" + ] + }, + "execution_count": 4, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "response = estimates.view_summary_kpi.historical_snapshots_kpi.Definition(\"BNPP.PA\").get_data()\n", + "response.data.df" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "### Summary KPI - Interim" + ] + }, + { + "cell_type": "code", + "execution_count": 5, + "metadata": { + "collapsed": false, + "jupyter": { + "outputs_hidden": false + }, + "pycharm": { + "name": "#%%\n" + } + }, + "outputs": [ + { + "data": { + "text/html": [ + "
\n", + "\n", + "\n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
InstrumentPeriod End DateFinancial Period AbsoluteFinancial Period RelativeAdvertisement Revenue - High
0BNPP.PA2022-12-31FY2022Q4FQ4<NA>
1BNPP.PA2022-09-30FY2022Q3FQ3<NA>
2BNPP.PA2022-06-30FY2022Q2FQ2<NA>
3BNPP.PA2022-03-31FY2022Q1FQ1<NA>
4BNPP.PA2021-12-31FY2021Q4FQ0<NA>
5BNPP.PA2021-09-30FY2021Q3FQ-1<NA>
6BNPP.PA2021-06-30FY2021Q2FQ-2<NA>
\n", + "
" + ], + "text/plain": [ + " Instrument Period End Date Financial Period Absolute \\\n", + "0 BNPP.PA 2022-12-31 FY2022Q4 \n", + "1 BNPP.PA 2022-09-30 FY2022Q3 \n", + "2 BNPP.PA 2022-06-30 FY2022Q2 \n", + "3 BNPP.PA 2022-03-31 FY2022Q1 \n", + "4 BNPP.PA 2021-12-31 FY2021Q4 \n", + "5 BNPP.PA 2021-09-30 FY2021Q3 \n", + "6 BNPP.PA 2021-06-30 FY2021Q2 \n", + "\n", + " Financial Period Relative Advertisement Revenue - High \n", + "0 FQ4 \n", + "1 FQ3 \n", + "2 FQ2 \n", + "3 FQ1 \n", + "4 FQ0 \n", + "5 FQ-1 \n", + "6 FQ-2 " + ] + }, + "execution_count": 5, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "response = estimates.view_summary_kpi.interim.Definition(\"BNPP.PA\").get_data()\n", + "response.data.df" + ] + }, + { + "cell_type": "markdown", + "metadata": { + "pycharm": { + "name": "#%% md\n" + } + }, + "source": [ + "### Close the session" + ] + }, + { + "cell_type": "code", + "execution_count": 6, + "metadata": { + "collapsed": false, + "jupyter": { + "outputs_hidden": false + }, + "pycharm": { + "name": "#%%\n" + } + }, + "outputs": [], + "source": [ + "rd.close_session()" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [] + } + ], + "metadata": { + "kernelspec": { + "display_name": "Python 3 (ipykernel)", + "language": "python", + "name": "python3" + }, + "language_info": { + "codemirror_mode": { + "name": "ipython", + "version": 3 + }, + "file_extension": ".py", + "mimetype": "text/x-python", + "name": "python", + "nbconvert_exporter": "python", + "pygments_lexer": "ipython3", + "version": "3.9.7" + } + }, + "nbformat": 4, + "nbformat_minor": 4 +} diff --git a/Examples/2-Content/2.11-Estimates/EX-2.11.04-Estimates-ActualsKPI.ipynb b/Examples/2-Content/2.11-Estimates/EX-2.11.04-Estimates-ActualsKPI.ipynb new file mode 100644 index 0000000..9ff84a7 --- /dev/null +++ b/Examples/2-Content/2.11-Estimates/EX-2.11.04-Estimates-ActualsKPI.ipynb @@ -0,0 +1,372 @@ +{ + "cells": [ + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "----\n", + "\n", + "\n", + "# Data Library for Python\n", + "\n", + "----" + ] + }, + { + "cell_type": "markdown", + "metadata": { + "tags": [] + }, + "source": [ + "## Content layer - Estimates - Actuals KPI\n", + "This notebook demonstrates how to retrieve Estimates.\n", + "\n", + "I/B/E/S (Institutional Brokers' Estimate System) delivers a complete suite of Estimates content with a global view and is the largest contributor base in the industry. RDP I/B/E/S Estimates API provides information about consensus and aggregates data(26 generic measures, 23 KPI measures), company guidance data and advanced analytics. With over 40 years of collection experience and extensive quality controls that include thousands of automated error checks and stringent manual analysis, RDP I/B/E/S gives the clients the content they need for superior insight, research and investment decision making.\n", + "\n", + "The I/B/E/S database currently covers over 56,000 companies in 100 markets.\n", + "More than 900 firms contribute data to I/B/E/S, from the largest global houses to regional and local brokers, with US data back to 1976 and international data back to 1987." + ] + }, + { + "cell_type": "markdown", + "metadata": { + "tags": [] + }, + "source": [ + "#### Learn more\n", + "\n", + "To learn more about the Refinitiv Data Library for Python please join the Refinitiv Developer Community. By [registering](https://developers.refinitiv.com/iam/register) and [logging](https://developers.refinitiv.com/content/devportal/en_us/initCookie.html) into the Refinitiv Developer Community portal you will have free access to a number of learning materials like \n", + " [Quick Start guides](https://developers.refinitiv.com/en/api-catalog/refinitiv-data-platform/refinitiv-data-library-for-python/quick-start), \n", + " [Tutorials](https://developers.refinitiv.com/en/api-catalog/refinitiv-data-platform/refinitiv-data-library-for-python/learning), \n", + " [Documentation](https://developers.refinitiv.com/en/api-catalog/refinitiv-data-platform/refinitiv-data-library-for-python/docs)\n", + " and much more.\n", + "\n", + "#### Getting Help and Support\n", + "\n", + "If you have any questions regarding using the API, please post them on \n", + "the [Refinitiv Data Q&A Forum](https://community.developers.refinitiv.com/spaces/321/index.html). \n", + "The Refinitiv Developer Community will be happy to help. \n", + "\n", + "----" + ] + }, + { + "cell_type": "markdown", + "metadata": { + "tags": [] + }, + "source": [ + "## Set the configuration file location\n", + "For a better ease of use, you have the option to set initialization parameters of the Refinitiv Data Library in the _refinitiv-data.config.json_ configuration file. This file must be located beside your notebook, in your user folder or in a folder defined by the _RD_LIB_CONFIG_PATH_ environment variable. The _RD_LIB_CONFIG_PATH_ environment variable is the option used by this series of examples. The following code sets this environment variable. " + ] + }, + { + "cell_type": "code", + "execution_count": 1, + "metadata": {}, + "outputs": [], + "source": [ + "import os\n", + "os.environ[\"RD_LIB_CONFIG_PATH\"] = \"../../../Configuration\"" + ] + }, + { + "cell_type": "markdown", + "metadata": { + "pycharm": { + "name": "#%% md\n" + } + }, + "source": [ + "## Some Imports to start with" + ] + }, + { + "cell_type": "code", + "execution_count": 1, + "metadata": { + "collapsed": false, + "jupyter": { + "outputs_hidden": false + }, + "pycharm": { + "name": "#%%\n" + } + }, + "outputs": [], + "source": [ + "import refinitiv.data as rd\n", + "from refinitiv.data.content import estimates" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Open the data session\n", + "\n", + "The open_session() function creates and open sessions based on the information contained in the refinitiv-data.config.json configuration file. Please edit this file to set the session type and other parameters required for the session you want to open." + ] + }, + { + "cell_type": "code", + "execution_count": 2, + "metadata": { + "collapsed": false, + "jupyter": { + "outputs_hidden": false + }, + "pycharm": { + "name": "#%%\n" + } + }, + "outputs": [ + { + "data": { + "text/plain": [ + "" + ] + }, + "execution_count": 2, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "rd.open_session(\"platform.rdp\")" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Retrieve Data" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "### Actuals KPI - Annual" + ] + }, + { + "cell_type": "code", + "execution_count": 3, + "metadata": { + "collapsed": false, + "jupyter": { + "outputs_hidden": false + }, + "pycharm": { + "name": "#%%\n" + } + }, + "outputs": [ + { + "data": { + "text/html": [ + "
\n", + "\n", + "\n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
InstrumentPeriod End DateFinancial Period AbsoluteFinancial Period RelativeNon Performing Loan - ActualNon Performing Loan - Standard Unexpected EarningsNon Performing Loan - Standard Unexpected Earnings 60 DayNon Performing Loan - Actual SurpriseNon Performing Loan - Actual Surprise 60 DayCore Tier 1 Capital Ratio - ActualCore Tier 1 Capital Ratio - ActualCore Tier 1 Capital Ratio - Standard Unexpected Earnings 60 DayCore Tier 1 Capital Ratio - Actual SurpriseCore Tier 1 Capital Ratio - Actual Surprise 60 Day
0BNPP.PA2021-12-31FY2021FY027905000000-0.13846-0.13846-1.323-1.32391976000000-1.3363-1.15137-5.587-4.917
1BNPP.PA2020-12-31FY2020FY-1301500000000.740880.303818.4314.37288800000000-1.37038-1.33184-6.207-6.328
\n", + "
" + ], + "text/plain": [ + " Instrument Period End Date Financial Period Absolute \\\n", + "0 BNPP.PA 2021-12-31 FY2021 \n", + "1 BNPP.PA 2020-12-31 FY2020 \n", + "\n", + " Financial Period Relative Non Performing Loan - Actual \\\n", + "0 FY0 27905000000 \n", + "1 FY-1 30150000000 \n", + "\n", + " Non Performing Loan - Standard Unexpected Earnings \\\n", + "0 -0.13846 \n", + "1 0.74088 \n", + "\n", + " Non Performing Loan - Standard Unexpected Earnings 60 Day \\\n", + "0 -0.13846 \n", + "1 0.30381 \n", + "\n", + " Non Performing Loan - Actual Surprise \\\n", + "0 -1.323 \n", + "1 8.431 \n", + "\n", + " Non Performing Loan - Actual Surprise 60 Day \\\n", + "0 -1.323 \n", + "1 4.372 \n", + "\n", + " Core Tier 1 Capital Ratio - Actual Core Tier 1 Capital Ratio - Actual \\\n", + "0 91976000000 -1.3363 \n", + "1 88800000000 -1.37038 \n", + "\n", + " Core Tier 1 Capital Ratio - Standard Unexpected Earnings 60 Day \\\n", + "0 -1.15137 \n", + "1 -1.33184 \n", + "\n", + " Core Tier 1 Capital Ratio - Actual Surprise \\\n", + "0 -5.587 \n", + "1 -6.207 \n", + "\n", + " Core Tier 1 Capital Ratio - Actual Surprise 60 Day \n", + "0 -4.917 \n", + "1 -6.328 " + ] + }, + "execution_count": 3, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "response = estimates.view_actuals_kpi.annual.Definition(\"BNPP.PA\").get_data()\n", + "response.data.df" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "### Actuals KPI - Interim" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": { + "collapsed": false, + "jupyter": { + "outputs_hidden": false + }, + "pycharm": { + "name": "#%%\n" + } + }, + "outputs": [], + "source": [ + "response = estimates.view_actuals_kpi.interim.Definition(\"BNPP.PA\").get_data()\n", + "response.data.df" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "### Close the session" + ] + }, + { + "cell_type": "code", + "execution_count": 5, + "metadata": { + "collapsed": false, + "jupyter": { + "outputs_hidden": false + }, + "pycharm": { + "name": "#%%\n" + } + }, + "outputs": [], + "source": [ + "rd.close_session()" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [] + } + ], + "metadata": { + "kernelspec": { + "display_name": "Python 3 (ipykernel)", + "language": "python", + "name": "python3" + }, + "language_info": { + "codemirror_mode": { + "name": "ipython", + "version": 3 + }, + "file_extension": ".py", + "mimetype": "text/x-python", + "name": "python", + "nbconvert_exporter": "python", + "pygments_lexer": "ipython3", + "version": "3.9.7" + } + }, + "nbformat": 4, + "nbformat_minor": 4 +} diff --git a/Examples/3-Delivery/3.02-Streaming/EX-3.02.01-OMMStream-MarketPrice.ipynb b/Examples/3-Delivery/3.02-Streaming/EX-3.02.01-OMMStream-MarketPrice.ipynb index eebe9fd..0b0b95a 100644 --- a/Examples/3-Delivery/3.02-Streaming/EX-3.02.01-OMMStream-MarketPrice.ipynb +++ b/Examples/3-Delivery/3.02-Streaming/EX-3.02.01-OMMStream-MarketPrice.ipynb @@ -66,7 +66,7 @@ }, { "cell_type": "code", - "execution_count": 2, + "execution_count": 1, "metadata": {}, "outputs": [], "source": [ @@ -87,16 +87,16 @@ }, { "cell_type": "code", - "execution_count": 3, + "execution_count": 2, "metadata": {}, "outputs": [ { "data": { "text/plain": [ - "" + "" ] }, - "execution_count": 3, + "execution_count": 2, "metadata": {}, "output_type": "execute_result" } @@ -121,7 +121,7 @@ }, { "cell_type": "code", - "execution_count": 4, + "execution_count": 3, "metadata": {}, "outputs": [], "source": [ @@ -143,16 +143,16 @@ }, { "cell_type": "code", - "execution_count": 5, + "execution_count": 4, "metadata": {}, "outputs": [ { "data": { "text/plain": [ - "" + "" ] }, - "execution_count": 5, + "execution_count": 4, "metadata": {}, "output_type": "execute_result" } @@ -164,16 +164,16 @@ " domain='MarketPrice').get_stream()\n", "\n", "# Refresh - the first full image we get back from the server\n", - "stream.on_refresh(lambda item_stream, event : display_event(\"Refresh\", event))\n", + "stream.on_refresh(lambda event, item_stream : display_event(\"Refresh\", event))\n", "\n", "# Update - as and when field values change, we receive updates from the server\n", - "stream.on_update(lambda item_stream, event : display_event(\"Update\", event))\n", + "stream.on_update(lambda event, item_stream : display_event(\"Update\", event))\n", "\n", "# Status - if data goes stale or item closes, we get a status message\n", - "stream.on_status(lambda item_stream, event : display_event(\"Status\", event))\n", + "stream.on_status(lambda event, item_stream : display_event(\"Status\", event))\n", "\n", "# Other errors\n", - "stream.on_error(lambda item_stream, event : display_event(\"Error\", event))" + "stream.on_error(lambda event, item_stream : display_event(\"Error\", event))" ] }, { @@ -186,7 +186,7 @@ }, { "cell_type": "code", - "execution_count": 6, + "execution_count": 5, "metadata": { "scrolled": true, "tags": [] @@ -197,9 +197,9 @@ "output_type": "stream", "text": [ "----------------------------------------------------------\n", - ">>> Refresh event received at 17:02:10.214496\n", + ">>> Refresh event received at 15:54:48.630131\n", "{\n", - " \"ID\": 1,\n", + " \"ID\": 5,\n", " \"Type\": \"Refresh\",\n", " \"Key\": {\n", " \"Service\": \"IDN_RDFNTS_CF\",\n", @@ -208,20 +208,20 @@ " \"State\": {\n", " \"Stream\": \"Open\",\n", " \"Data\": \"Ok\",\n", - " \"Text\": \"All is well\"\n", + " \"Text\": \"New Session Mounted\"\n", " },\n", " \"Qos\": {\n", " \"Timeliness\": \"Realtime\",\n", " \"Rate\": \"JitConflated\"\n", " },\n", " \"PermData\": \"AwD+Umw=\",\n", - " \"SeqNumber\": 18350,\n", + " \"SeqNumber\": 4478,\n", " \"Fields\": {\n", - " \"BID\": 1.1307,\n", - " \"ASK\": 1.1308,\n", - " \"OPEN_PRC\": 1.1284,\n", - " \"HST_CLOSE\": 1.1285,\n", - " \"TIMACT\": \"16:02:00\"\n", + " \"BID\": 1.0566,\n", + " \"ASK\": 1.057,\n", + " \"OPEN_PRC\": 1.0525,\n", + " \"HST_CLOSE\": 1.0525,\n", + " \"TIMACT\": \"13:54:00\"\n", " }\n", "}\n" ] @@ -229,10 +229,10 @@ { "data": { "text/plain": [ - "" + "" ] }, - "execution_count": 6, + "execution_count": 5, "metadata": {}, "output_type": "execute_result" }, @@ -241,71 +241,224 @@ "output_type": "stream", "text": [ "----------------------------------------------------------\n", - ">>> Update event received at 17:02:11.289811\n", + ">>> Update event received at 15:54:48.796412\n", + "{\n", + " \"ID\": 5,\n", + " \"Type\": \"Update\",\n", + " \"UpdateType\": \"Unspecified\",\n", + " \"Key\": {\n", + " \"Service\": \"IDN_RDFNTS_CF\",\n", + " \"Name\": \"EUR=\"\n", + " },\n", + " \"SeqNumber\": 4542,\n", + " \"Fields\": {\n", + " \"BID\": 1.0567,\n", + " \"ASK\": 1.0568,\n", + " \"TIMACT\": \"13:54:00\"\n", + " }\n", + "}\n", + "----------------------------------------------------------\n", + ">>> Update event received at 15:54:49.230649\n", "{\n", - " \"ID\": 1,\n", + " \"ID\": 5,\n", " \"Type\": \"Update\",\n", " \"UpdateType\": \"Unspecified\",\n", " \"Key\": {\n", " \"Service\": \"IDN_RDFNTS_CF\",\n", " \"Name\": \"EUR=\"\n", " },\n", - " \"SeqNumber\": 18366,\n", + " \"SeqNumber\": 4558,\n", " \"Fields\": {\n", - " \"BID\": 1.1307,\n", - " \"ASK\": 1.1308,\n", - " \"TIMACT\": \"16:02:00\"\n", + " \"BID\": 1.0565,\n", + " \"ASK\": 1.0569,\n", + " \"TIMACT\": \"13:54:00\"\n", " }\n", "}\n", "----------------------------------------------------------\n", - ">>> Update event received at 17:02:12.057951\n", + ">>> Update event received at 15:54:50.077639\n", "{\n", - " \"ID\": 1,\n", + " \"ID\": 5,\n", " \"Type\": \"Update\",\n", " \"UpdateType\": \"Unspecified\",\n", " \"Key\": {\n", " \"Service\": \"IDN_RDFNTS_CF\",\n", " \"Name\": \"EUR=\"\n", " },\n", - " \"SeqNumber\": 18430,\n", + " \"SeqNumber\": 4622,\n", " \"Fields\": {\n", - " \"BID\": 1.1306,\n", - " \"ASK\": 1.131,\n", - " \"TIMACT\": \"16:02:00\"\n", + " \"BID\": 1.0567,\n", + " \"ASK\": 1.0569,\n", + " \"TIMACT\": \"13:54:00\"\n", " }\n", "}\n", "----------------------------------------------------------\n", - ">>> Update event received at 17:02:12.365165\n", + ">>> Update event received at 15:54:50.362833\n", "{\n", - " \"ID\": 1,\n", + " \"ID\": 5,\n", " \"Type\": \"Update\",\n", " \"UpdateType\": \"Unspecified\",\n", " \"Key\": {\n", " \"Service\": \"IDN_RDFNTS_CF\",\n", " \"Name\": \"EUR=\"\n", " },\n", - " \"SeqNumber\": 18542,\n", + " \"SeqNumber\": 4734,\n", " \"Fields\": {\n", - " \"BID\": 1.1307,\n", - " \"ASK\": 1.1308,\n", - " \"TIMACT\": \"16:02:00\"\n", + " \"BID\": 1.0566,\n", + " \"ASK\": 1.057,\n", + " \"TIMACT\": \"13:54:00\"\n", " }\n", "}\n", "----------------------------------------------------------\n", - ">>> Update event received at 17:02:13.082891\n", + ">>> Update event received at 15:54:51.413238\n", "{\n", - " \"ID\": 1,\n", + " \"ID\": 5,\n", " \"Type\": \"Update\",\n", " \"UpdateType\": \"Unspecified\",\n", " \"Key\": {\n", " \"Service\": \"IDN_RDFNTS_CF\",\n", " \"Name\": \"EUR=\"\n", " },\n", - " \"SeqNumber\": 18558,\n", + " \"SeqNumber\": 4750,\n", " \"Fields\": {\n", - " \"BID\": 1.1306,\n", - " \"ASK\": 1.131,\n", - " \"TIMACT\": \"16:02:00\"\n", + " \"BID\": 1.0567,\n", + " \"ASK\": 1.0571,\n", + " \"TIMACT\": \"13:54:00\"\n", + " }\n", + "}\n", + "----------------------------------------------------------\n", + ">>> Update event received at 15:54:52.030931\n", + "{\n", + " \"ID\": 5,\n", + " \"Type\": \"Update\",\n", + " \"UpdateType\": \"Unspecified\",\n", + " \"Key\": {\n", + " \"Service\": \"IDN_RDFNTS_CF\",\n", + " \"Name\": \"EUR=\"\n", + " },\n", + " \"SeqNumber\": 4814,\n", + " \"Fields\": {\n", + " \"BID\": 1.0568,\n", + " \"ASK\": 1.057,\n", + " \"TIMACT\": \"13:54:00\"\n", + " }\n", + "}\n", + "----------------------------------------------------------\n", + ">>> Update event received at 15:54:52.313042\n", + "{\n", + " \"ID\": 5,\n", + " \"Type\": \"Update\",\n", + " \"UpdateType\": \"Unspecified\",\n", + " \"Key\": {\n", + " \"Service\": \"IDN_RDFNTS_CF\",\n", + " \"Name\": \"EUR=\"\n", + " },\n", + " \"SeqNumber\": 4926,\n", + " \"Fields\": {\n", + " \"BID\": 1.0566,\n", + " \"ASK\": 1.0568,\n", + " \"TIMACT\": \"13:54:00\"\n", + " }\n", + "}\n", + "----------------------------------------------------------\n", + ">>> Update event received at 15:54:52.674279\n", + "{\n", + " \"ID\": 5,\n", + " \"Type\": \"Update\",\n", + " \"UpdateType\": \"Unspecified\",\n", + " \"Key\": {\n", + " \"Service\": \"IDN_RDFNTS_CF\",\n", + " \"Name\": \"EUR=\"\n", + " },\n", + " \"SeqNumber\": 4990,\n", + " \"Fields\": {\n", + " \"BID\": 1.0568,\n", + " \"ASK\": 1.0569,\n", + " \"TIMACT\": \"13:54:00\"\n", + " }\n", + "}\n", + "----------------------------------------------------------\n", + ">>> Update event received at 15:54:52.913356\n", + "{\n", + " \"ID\": 5,\n", + " \"Type\": \"Update\",\n", + " \"UpdateType\": \"Unspecified\",\n", + " \"Key\": {\n", + " \"Service\": \"IDN_RDFNTS_CF\",\n", + " \"Name\": \"EUR=\"\n", + " },\n", + " \"SeqNumber\": 5054,\n", + " \"Fields\": {\n", + " \"BID\": 1.0566,\n", + " \"ASK\": 1.057,\n", + " \"TIMACT\": \"13:54:00\"\n", + " }\n", + "}\n", + "----------------------------------------------------------\n", + ">>> Update event received at 15:54:53.351787\n", + "{\n", + " \"ID\": 5,\n", + " \"Type\": \"Update\",\n", + " \"UpdateType\": \"Unspecified\",\n", + " \"Key\": {\n", + " \"Service\": \"IDN_RDFNTS_CF\",\n", + " \"Name\": \"EUR=\"\n", + " },\n", + " \"SeqNumber\": 5070,\n", + " \"Fields\": {\n", + " \"BID\": 1.0567,\n", + " \"ASK\": 1.0571,\n", + " \"TIMACT\": \"13:54:00\"\n", + " }\n", + "}\n", + "----------------------------------------------------------\n", + ">>> Update event received at 15:54:53.596081\n", + "{\n", + " \"ID\": 5,\n", + " \"Type\": \"Update\",\n", + " \"UpdateType\": \"Unspecified\",\n", + " \"Key\": {\n", + " \"Service\": \"IDN_RDFNTS_CF\",\n", + " \"Name\": \"EUR=\"\n", + " },\n", + " \"SeqNumber\": 5182,\n", + " \"Fields\": {\n", + " \"BID\": 1.0568,\n", + " \"ASK\": 1.057,\n", + " \"TIMACT\": \"13:54:00\"\n", + " }\n", + "}\n", + "----------------------------------------------------------\n", + ">>> Update event received at 15:54:53.865179\n", + "{\n", + " \"ID\": 5,\n", + " \"Type\": \"Update\",\n", + " \"UpdateType\": \"Unspecified\",\n", + " \"Key\": {\n", + " \"Service\": \"IDN_RDFNTS_CF\",\n", + " \"Name\": \"EUR=\"\n", + " },\n", + " \"SeqNumber\": 5310,\n", + " \"Fields\": {\n", + " \"BID\": 1.0567,\n", + " \"ASK\": 1.0569,\n", + " \"TIMACT\": \"13:54:00\"\n", + " }\n", + "}\n", + "----------------------------------------------------------\n", + ">>> Update event received at 15:54:54.702335\n", + "{\n", + " \"ID\": 5,\n", + " \"Type\": \"Update\",\n", + " \"UpdateType\": \"Unspecified\",\n", + " \"Key\": {\n", + " \"Service\": \"IDN_RDFNTS_CF\",\n", + " \"Name\": \"EUR=\"\n", + " },\n", + " \"SeqNumber\": 5326,\n", + " \"Fields\": {\n", + " \"BID\": 1.0566,\n", + " \"ASK\": 1.057,\n", + " \"TIMACT\": \"13:54:00\"\n", " }\n", "}\n" ] @@ -327,16 +480,39 @@ }, { "cell_type": "code", - "execution_count": 7, + "execution_count": 6, "metadata": {}, "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "----------------------------------------------------------\n", + ">>> Update event received at 15:54:55.271527\n", + "{\n", + " \"ID\": 5,\n", + " \"Type\": \"Update\",\n", + " \"UpdateType\": \"Unspecified\",\n", + " \"Key\": {\n", + " \"Service\": \"IDN_RDFNTS_CF\",\n", + " \"Name\": \"EUR=\"\n", + " },\n", + " \"SeqNumber\": 5438,\n", + " \"Fields\": {\n", + " \"BID\": 1.0568,\n", + " \"ASK\": 1.0569,\n", + " \"TIMACT\": \"13:54:00\"\n", + " }\n", + "}\n" + ] + }, { "data": { "text/plain": [ - "" + "" ] }, - "execution_count": 7, + "execution_count": 6, "metadata": {}, "output_type": "execute_result" } @@ -354,7 +530,7 @@ }, { "cell_type": "code", - "execution_count": 8, + "execution_count": 7, "metadata": {}, "outputs": [], "source": [ @@ -371,7 +547,7 @@ ], "metadata": { "kernelspec": { - "display_name": "Python 3", + "display_name": "Python 3 (ipykernel)", "language": "python", "name": "python3" }, @@ -385,7 +561,7 @@ "name": "python", "nbconvert_exporter": "python", "pygments_lexer": "ipython3", - "version": "3.7.6" + "version": "3.9.7" } }, "nbformat": 4, diff --git a/Examples/3-Delivery/3.02-Streaming/EX-3.02.02-OMMStream-MarkeByPrice.ipynb b/Examples/3-Delivery/3.02-Streaming/EX-3.02.02-OMMStream-MarkeByPrice.ipynb index 918b5d8..c08b315 100755 --- a/Examples/3-Delivery/3.02-Streaming/EX-3.02.02-OMMStream-MarkeByPrice.ipynb +++ b/Examples/3-Delivery/3.02-Streaming/EX-3.02.02-OMMStream-MarkeByPrice.ipynb @@ -22,7 +22,12 @@ }, { "cell_type": "markdown", - "metadata": {}, + "metadata": { + "jupyter": { + "source_hidden": true + }, + "tags": [] + }, "source": [ "#### Learn more\n", "\n", @@ -72,7 +77,8 @@ "source": [ "import refinitiv.data as rd\n", "from refinitiv.data.delivery import omm_stream\n", - "import datetime" + "import datetime\n", + "import json" ] }, { @@ -86,22 +92,22 @@ }, { "cell_type": "code", - "execution_count": 7, + "execution_count": 3, "metadata": {}, "outputs": [ { "data": { "text/plain": [ - "" + "" ] }, - "execution_count": 7, + "execution_count": 3, "metadata": {}, "output_type": "execute_result" } ], "source": [ - "rd.open_session(\"platform.deployed-cipsnylab2\")" + "rd.open_session(\"platform.deployed\")" ] }, { @@ -120,7 +126,7 @@ }, { "cell_type": "code", - "execution_count": 8, + "execution_count": 4, "metadata": {}, "outputs": [], "source": [ @@ -141,16 +147,16 @@ }, { "cell_type": "code", - "execution_count": 9, + "execution_count": 5, "metadata": {}, "outputs": [ { "data": { "text/plain": [ - "" + "" ] }, - "execution_count": 9, + "execution_count": 5, "metadata": {}, "output_type": "execute_result" } @@ -158,13 +164,14 @@ "source": [ "stream = omm_stream.Definition(\n", " domain=\"MarketByPrice\", \n", - " name=\"BB.TO\"\n", + " name=\"BB.TO\",\n", + " service=\"ELEKTRON_DD\"\n", ").get_stream()\n", "\n", - "stream.on_refresh(lambda item_stream, event : display_event(\"Refresh\", event))\n", - "stream.on_update(lambda item_stream, event : display_event(\"Update\", event))\n", - "stream.on_status(lambda item_stream, event : display_event(\"Status\", event))\n", - "stream.on_error(lambda item_stream, event : display_event(\"Error\", event))" + "stream.on_refresh(lambda event, item_stream : display_event(\"Refresh\", event))\n", + "stream.on_update(lambda event, item_stream : display_event(\"Update\", event))\n", + "stream.on_status(lambda event, item_stream : display_event(\"Status\", event))\n", + "stream.on_error(lambda event, item_stream : display_event(\"Error\", event))" ] }, { @@ -177,9 +184,10339 @@ }, { "cell_type": "code", - "execution_count": null, + "execution_count": 6, "metadata": {}, - "outputs": [], + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "----------------------------------------------------------\n", + ">>> Refresh event received at 15:59:19.980556\n", + "{\n", + " \"ID\": 5,\n", + " \"Type\": \"Refresh\",\n", + " \"Domain\": \"MarketByPrice\",\n", + " \"Key\": {\n", + " \"Service\": \"ELEKTRON_DD\",\n", + " \"Name\": \"BB.TO\"\n", + " },\n", + " \"State\": {\n", + " \"Stream\": \"Open\",\n", + " \"Data\": \"Ok\",\n", + " \"Text\": \"All is well\"\n", + " },\n", + " \"Complete\": false,\n", + " \"Qos\": {\n", + " \"Timeliness\": \"Realtime\",\n", + " \"Rate\": \"TickByTick\"\n", + " },\n", + " \"PartNumber\": 0,\n", + " \"PermData\": \"AwFkMETA\",\n", + " \"SeqNumber\": 30688,\n", + " \"Map\": {\n", + " \"KeyType\": \"Buffer\",\n", + " \"Summary\": {\n", + " \"Fields\": {\n", + " \"PROD_PERM\": 3044,\n", + " \"DSPLY_NAME\": \"BLACKBERRY LTD\",\n", + " \"CURRENCY\": \"CAD\",\n", + " \"ACTIV_DATE\": \"2022-06-22\",\n", + " \"PRC_QL2\": \" AU\",\n", + " \"LOT_SIZE_A\": 100,\n", + " \"RECORDTYPE\": 113,\n", + " \"PREF_DISP\": null,\n", + " \"RDN_EXCHD2\": \"TOR\",\n", + " \"LIST_MKT\": \"TOR\",\n", + " \"PROV_SYMB\": \"BB\",\n", + " \"PR_RNK_RUL\": \"NOR\",\n", + " \"OR_RNK_RUL\": \"PTS \",\n", + " \"MNEMONIC\": \"BB\",\n", + " \"MKT_STATUS\": \"S\",\n", + " \"TIMACT_MS\": 50359070,\n", + " \"CONTEXT_ID\": 2171,\n", + " \"DDS_DSO_ID\": 8244,\n", + " \"SPS_SP_RIC\": \".[SPSTL2TRL2\",\n", + " \"BOOK_STATE\": \"N\",\n", + " \"HALT_REASN\": null,\n", + " \"ORD_ENT_ST\": \"E\",\n", + " \"MKT_OR_RUL\": \" \",\n", + " \"TRD_STATUS\": \"N \",\n", + " \"HALT_RSN\": null\n", + " }\n", + " },\n", + " \"CountHint\": 655,\n", + " \"Entries\": [\n", + " {\n", + " \"Action\": \"Add\",\n", + " \"Key\": \"MjkuMDAwMDAwQQ==\",\n", + " \"Fields\": {\n", + " \"ORDER_PRC\": 29.0,\n", + " \"ORDER_SIDE\": \"ASK\",\n", + " \"NO_ORD\": 1,\n", + " \"ACC_SIZE\": 500,\n", + " \"LV_TIM_MS\": 41402015,\n", + " \"LV_TIM_MSP\": 21,\n", + " \"LV_DATE\": \"2022-06-22\"\n", + " }\n", + " },\n", + " {\n", + " \"Action\": \"Add\",\n", + " \"Key\": \"Ni44NzAwMDBC\",\n", + " \"Fields\": {\n", + " \"ORDER_PRC\": 6.87,\n", + " \"ORDER_SIDE\": \"BID\",\n", + " \"NO_ORD\": 16,\n", + " \"ACC_SIZE\": 15600,\n", + " \"LV_TIM_MS\": 50352984,\n", + " \"LV_TIM_MSP\": 115,\n", + " \"LV_DATE\": \"2022-06-22\"\n", + " }\n", + " },\n", + " {\n", + " \"Action\": \"Add\",\n", + " \"Key\": \"OC44NjAwMDBB\",\n", + " \"Fields\": {\n", + " \"ORDER_PRC\": 8.86,\n", + " \"ORDER_SIDE\": \"ASK\",\n", + " \"NO_ORD\": 2,\n", + " \"ACC_SIZE\": 400,\n", + " \"LV_TIM_MS\": 40342373,\n", + " \"LV_TIM_MSP\": 875,\n", + " \"LV_DATE\": \"2022-04-19\"\n", + " }\n", + " },\n", + " {\n", + " \"Action\": \"Add\",\n", + " \"Key\": \"MjIuMDAwMDAwQQ==\",\n", + " \"Fields\": {\n", + " \"ORDER_PRC\": 22.0,\n", + " \"ORDER_SIDE\": \"ASK\",\n", + " \"NO_ORD\": 19,\n", + " \"ACC_SIZE\": 22600,\n", + " \"LV_TIM_MS\": 41412131,\n", + " \"LV_TIM_MSP\": 37,\n", + " \"LV_DATE\": \"2022-06-22\"\n", + " }\n", + " },\n", + " {\n", + " \"Action\": \"Add\",\n", + " \"Key\": \"MTIuMzkwMDAwQQ==\",\n", + " \"Fields\": {\n", + " \"ORDER_PRC\": 12.39,\n", + " \"ORDER_SIDE\": \"ASK\",\n", + " \"NO_ORD\": 1,\n", + " \"ACC_SIZE\": 500,\n", + " \"LV_TIM_MS\": 40923930,\n", + " \"LV_TIM_MSP\": 394,\n", + " \"LV_DATE\": \"2022-05-30\"\n", + " }\n", + " },\n", + " {\n", + " \"Action\": \"Add\",\n", + " \"Key\": \"Ny4yODAwMDBB\",\n", + " \"Fields\": {\n", + " \"ORDER_PRC\": 7.28,\n", + " \"ORDER_SIDE\": \"ASK\",\n", + " \"NO_ORD\": 1,\n", + " \"ACC_SIZE\": 1300,\n", + " \"LV_TIM_MS\": 57256220,\n", + " \"LV_TIM_MSP\": 61,\n", + " \"LV_DATE\": \"2022-06-21\"\n", + " }\n", + " },\n", + " {\n", + " \"Action\": \"Add\",\n", + " \"Key\": \"NS41MDAwMDBC\",\n", + " \"Fields\": {\n", + " \"ORDER_PRC\": 5.5,\n", + " \"ORDER_SIDE\": \"BID\",\n", + " \"NO_ORD\": 13,\n", + " \"ACC_SIZE\": 19500,\n", + " \"LV_TIM_MS\": 54938618,\n", + " \"LV_TIM_MSP\": 198,\n", + " \"LV_DATE\": \"2022-06-13\"\n", + " }\n", + " },\n", + " {\n", + " \"Action\": \"Add\",\n", + " \"Key\": \"MTIuNjAwMDAwQQ==\",\n", + " \"Fields\": {\n", + " \"ORDER_PRC\": 12.6,\n", + " \"ORDER_SIDE\": \"ASK\",\n", + " \"NO_ORD\": 2,\n", + " \"ACC_SIZE\": 600,\n", + " \"LV_TIM_MS\": 39613562,\n", + " \"LV_TIM_MSP\": 917,\n", + " \"LV_DATE\": \"2022-05-13\"\n", + " }\n", + " },\n", + " {\n", + " \"Action\": \"Add\",\n", + " \"Key\": \"MTUuMTAwMDAwQQ==\",\n", + " \"Fields\": {\n", + " \"ORDER_PRC\": 15.1,\n", + " \"ORDER_SIDE\": \"ASK\",\n", + " \"NO_ORD\": 1,\n", + " \"ACC_SIZE\": 100,\n", + " \"LV_TIM_MS\": 40918538,\n", + " \"LV_TIM_MSP\": 976,\n", + " \"LV_DATE\": \"2022-05-30\"\n", + " }\n", + " },\n", + " {\n", + " \"Action\": \"Add\",\n", + " \"Key\": \"MTMuOTkwMDAwQQ==\",\n", + " \"Fields\": {\n", + " \"ORDER_PRC\": 13.99,\n", + " \"ORDER_SIDE\": \"ASK\",\n", + " \"NO_ORD\": 2,\n", + " \"ACC_SIZE\": 300,\n", + " \"LV_TIM_MS\": 56724508,\n", + " \"LV_TIM_MSP\": 358,\n", + " \"LV_DATE\": \"2022-01-31\"\n", + " }\n", + " },\n", + " {\n", + " \"Action\": \"Add\",\n", + " \"Key\": \"MTEuMDIwMDAwQQ==\",\n", + " \"Fields\": {\n", + " \"ORDER_PRC\": 11.02,\n", + " \"ORDER_SIDE\": \"ASK\",\n", + " \"NO_ORD\": 1,\n", + " \"ACC_SIZE\": 400,\n", + " \"LV_TIM_MS\": 59395751,\n", + " \"LV_TIM_MSP\": 926,\n", + " \"LV_DATE\": \"2022-05-13\"\n", + " }\n", + " },\n", + " {\n", + " \"Action\": \"Add\",\n", + " \"Key\": \"OS4yNzAwMDBB\",\n", + " \"Fields\": {\n", + " \"ORDER_PRC\": 9.27,\n", + " \"ORDER_SIDE\": \"ASK\",\n", + " \"NO_ORD\": 1,\n", + " \"ACC_SIZE\": 900,\n", + " \"LV_TIM_MS\": 45008713,\n", + " \"LV_TIM_MSP\": 179,\n", + " \"LV_DATE\": \"2022-05-30\"\n", + " }\n", + " },\n", + " {\n", + " \"Action\": \"Add\",\n", + " \"Key\": \"MTUuOTgwMDAwQQ==\",\n", + " \"Fields\": {\n", + " \"ORDER_PRC\": 15.98,\n", + " \"ORDER_SIDE\": \"ASK\",\n", + " \"NO_ORD\": 2,\n", + " \"ACC_SIZE\": 1100,\n", + " \"LV_TIM_MS\": 40836848,\n", + " \"LV_TIM_MSP\": 257,\n", + " \"LV_DATE\": \"2022-06-01\"\n", + " }\n", + " },\n", + " {\n", + " \"Action\": \"Add\",\n", + " \"Key\": \"Ni43NzAwMDBC\",\n", + " \"Fields\": {\n", + " \"ORDER_PRC\": 6.77,\n", + " \"ORDER_SIDE\": \"BID\",\n", + " \"NO_ORD\": 4,\n", + " \"ACC_SIZE\": 6600,\n", + " \"LV_TIM_MS\": 50290037,\n", + " \"LV_TIM_MSP\": 693,\n", + " \"LV_DATE\": \"2022-06-22\"\n", + " }\n", + " },\n", + " {\n", + " \"Action\": \"Add\",\n", + " \"Key\": \"OS45MjAwMDBB\",\n", + " \"Fields\": {\n", + " \"ORDER_PRC\": 9.92,\n", + " \"ORDER_SIDE\": \"ASK\",\n", + " \"NO_ORD\": 1,\n", + " \"ACC_SIZE\": 500,\n", + " \"LV_TIM_MS\": 46704945,\n", + " \"LV_TIM_MSP\": 991,\n", + " \"LV_DATE\": \"2022-05-30\"\n", + " }\n", + " },\n", + " {\n", + " \"Action\": \"Add\",\n", + " \"Key\": \"MTIuMjkwMDAwQQ==\",\n", + " \"Fields\": {\n", + " \"ORDER_PRC\": 12.29,\n", + " \"ORDER_SIDE\": \"ASK\",\n", + " \"NO_ORD\": 1,\n", + " \"ACC_SIZE\": 200,\n", + " \"LV_TIM_MS\": 71513607,\n", + " \"LV_TIM_MSP\": 219,\n", + " \"LV_DATE\": \"2022-04-20\"\n", + " }\n", + " },\n", + " {\n", + " \"Action\": \"Add\",\n", + " \"Key\": \"MTMuNDUwMDAwQQ==\",\n", + " \"Fields\": {\n", + " \"ORDER_PRC\": 13.45,\n", + " \"ORDER_SIDE\": \"ASK\",\n", + " \"NO_ORD\": 1,\n", + " \"ACC_SIZE\": 5300,\n", + " \"LV_TIM_MS\": 47724279,\n", + " \"LV_TIM_MSP\": 572,\n", + " \"LV_DATE\": \"2022-02-03\"\n", + " }\n", + " },\n", + " {\n", + " \"Action\": \"Add\",\n", + " \"Key\": \"MjMuNTAwMDAwQQ==\",\n", + " \"Fields\": {\n", + " \"ORDER_PRC\": 23.5,\n", + " \"ORDER_SIDE\": \"ASK\",\n", + " \"NO_ORD\": 2,\n", + " \"ACC_SIZE\": 1500,\n", + " \"LV_TIM_MS\": 41402218,\n", + " \"LV_TIM_MSP\": 60,\n", + " \"LV_DATE\": \"2022-06-22\"\n", + " }\n", + " },\n", + " {\n", + " \"Action\": \"Add\",\n", + " \"Key\": \"MC4wMDUwMDBC\",\n", + " \"Fields\": {\n", + " \"ORDER_PRC\": 0.005,\n", + " \"ORDER_SIDE\": \"BID\",\n", + " \"NO_ORD\": 1,\n", + " \"ACC_SIZE\": 1000,\n", + " \"LV_TIM_MS\": 42390977,\n", + " \"LV_TIM_MSP\": 557,\n", + " \"LV_DATE\": \"2022-05-30\"\n", + " }\n", + " },\n", + " {\n", + " \"Action\": \"Add\",\n", + " \"Key\": \"MTAuNTMwMDAwQQ==\",\n", + " \"Fields\": {\n", + " \"ORDER_PRC\": 10.53,\n", + " \"ORDER_SIDE\": \"ASK\",\n", + " \"NO_ORD\": 2,\n", + " \"ACC_SIZE\": 1200,\n", + " \"LV_TIM_MS\": 41402020,\n", + " \"LV_TIM_MSP\": 48,\n", + " \"LV_DATE\": \"2022-06-22\"\n", + " }\n", + " },\n", + " {\n", + " \"Action\": \"Add\",\n", + " \"Key\": \"MTUuMDAwMDAwQQ==\",\n", + " \"Fields\": {\n", + " \"ORDER_PRC\": 15.0,\n", + " \"ORDER_SIDE\": \"ASK\",\n", + " \"NO_ORD\": 49,\n", + " \"ACC_SIZE\": 31400,\n", + " \"LV_TIM_MS\": 42053314,\n", + " \"LV_TIM_MSP\": 56,\n", + " \"LV_DATE\": \"2022-06-22\"\n", + " }\n", + " },\n", + " {\n", + " \"Action\": \"Add\",\n", + " \"Key\": \"MTMuODkwMDAwQQ==\",\n", + " \"Fields\": {\n", + " \"ORDER_PRC\": 13.89,\n", + " \"ORDER_SIDE\": \"ASK\",\n", + " \"NO_ORD\": 1,\n", + " \"ACC_SIZE\": 100,\n", + " \"LV_TIM_MS\": 60649603,\n", + " \"LV_TIM_MSP\": 508,\n", + " \"LV_DATE\": \"2021-12-06\"\n", + " }\n", + " },\n", + " {\n", + " \"Action\": \"Add\",\n", + " \"Key\": \"Ny44MzAwMDBB\",\n", + " \"Fields\": {\n", + " \"ORDER_PRC\": 7.83,\n", + " \"ORDER_SIDE\": \"ASK\",\n", + " \"NO_ORD\": 1,\n", + " \"ACC_SIZE\": 1000,\n", + " \"LV_TIM_MS\": 41412131,\n", + " \"LV_TIM_MSP\": 59,\n", + " \"LV_DATE\": \"2022-06-22\"\n", + " }\n", + " },\n", + " {\n", + " \"Action\": \"Add\",\n", + " \"Key\": \"MTQuMjgwMDAwQQ==\",\n", + " \"Fields\": {\n", + " \"ORDER_PRC\": 14.28,\n", + " \"ORDER_SIDE\": \"ASK\",\n", + " \"NO_ORD\": 1,\n", + " \"ACC_SIZE\": 200,\n", + " \"LV_TIM_MS\": 39625032,\n", + " \"LV_TIM_MSP\": 398,\n", + " \"LV_DATE\": \"2022-06-14\"\n", + " }\n", + " },\n", + " {\n", + " \"Action\": \"Add\",\n", + " \"Key\": \"OS4xNzAwMDBB\",\n", + " \"Fields\": {\n", + " \"ORDER_PRC\": 9.17,\n", + " \"ORDER_SIDE\": \"ASK\",\n", + " \"NO_ORD\": 1,\n", + " \"ACC_SIZE\": 800,\n", + " \"LV_TIM_MS\": 40917457,\n", + " \"LV_TIM_MSP\": 648,\n", + " \"LV_DATE\": \"2022-05-30\"\n", + " }\n", + " },\n", + " {\n", + " \"Action\": \"Add\",\n", + " \"Key\": \"MTUuODgwMDAwQQ==\",\n", + " \"Fields\": {\n", + " \"ORDER_PRC\": 15.88,\n", + " \"ORDER_SIDE\": \"ASK\",\n", + " \"NO_ORD\": 2,\n", + " \"ACC_SIZE\": 700,\n", + " \"LV_TIM_MS\": 41025287,\n", + " \"LV_TIM_MSP\": 739,\n", + " \"LV_DATE\": \"2022-06-20\"\n", + " }\n", + " },\n", + " {\n", + " \"Action\": \"Add\",\n", + " \"Key\": \"NS4wOTAwMDBC\",\n", + " \"Fields\": {\n", + " \"ORDER_PRC\": 5.09,\n", + " \"ORDER_SIDE\": \"BID\",\n", + " \"NO_ORD\": 2,\n", + " \"ACC_SIZE\": 2600,\n", + " \"LV_TIM_MS\": 62017232,\n", + " \"LV_TIM_MSP\": 569,\n", + " \"LV_DATE\": \"2022-06-21\"\n", + " }\n", + " },\n", + " {\n", + " \"Action\": \"Add\",\n", + " \"Key\": \"Ni4yNTAwMDBC\",\n", + " \"Fields\": {\n", + " \"ORDER_PRC\": 6.25,\n", + " \"ORDER_SIDE\": \"BID\",\n", + " \"NO_ORD\": 5,\n", + " \"ACC_SIZE\": 2100,\n", + " \"LV_TIM_MS\": 41412125,\n", + " \"LV_TIM_MSP\": 39,\n", + " \"LV_DATE\": \"2022-06-22\"\n", + " }\n", + " },\n", + " {\n", + " \"Action\": \"Add\",\n", + " \"Key\": \"MTIuOTYwMDAwQQ==\",\n", + " \"Fields\": {\n", + " \"ORDER_PRC\": 12.96,\n", + " \"ORDER_SIDE\": \"ASK\",\n", + " \"NO_ORD\": 1,\n", + " \"ACC_SIZE\": 100,\n", + " \"LV_TIM_MS\": 65929014,\n", + " \"LV_TIM_MSP\": 589,\n", + " \"LV_DATE\": \"2022-06-03\"\n", + " }\n", + " },\n", + " {\n", + " \"Action\": \"Add\",\n", + " \"Key\": \"OS44MjAwMDBB\",\n", + " \"Fields\": {\n", + " \"ORDER_PRC\": 9.82,\n", + " \"ORDER_SIDE\": \"ASK\",\n", + " \"NO_ORD\": 1,\n", + " \"ACC_SIZE\": 100,\n", + " \"LV_TIM_MS\": 39612698,\n", + " \"LV_TIM_MSP\": 677,\n", + " \"LV_DATE\": \"2022-03-31\"\n", + " }\n", + " },\n", + " {\n", + " \"Action\": \"Add\",\n", + " \"Key\": \"NS4zMDAwMDBC\",\n", + " \"Fields\": {\n", + " \"ORDER_PRC\": 5.3,\n", + " \"ORDER_SIDE\": \"BID\",\n", + " \"NO_ORD\": 1,\n", + " \"ACC_SIZE\": 500,\n", + " \"LV_TIM_MS\": 68727818,\n", + " \"LV_TIM_MSP\": 911,\n", + " \"LV_DATE\": \"2022-06-09\"\n", + " }\n", + " },\n", + " {\n", + " \"Action\": \"Add\",\n", + " \"Key\": \"MzUwLjAwMDAwMEE=\",\n", + " \"Fields\": {\n", + " \"ORDER_PRC\": 350.0,\n", + " \"ORDER_SIDE\": \"ASK\",\n", + " \"NO_ORD\": 5,\n", + " \"ACC_SIZE\": 13000,\n", + " \"LV_TIM_MS\": 42847128,\n", + " \"LV_TIM_MSP\": 938,\n", + " \"LV_DATE\": \"2022-05-30\"\n", + " }\n", + " },\n", + " {\n", + " \"Action\": \"Add\",\n", + " \"Key\": \"MTcuODcwMDAwQQ==\",\n", + " \"Fields\": {\n", + " \"ORDER_PRC\": 17.87,\n", + " \"ORDER_SIDE\": \"ASK\",\n", + " \"NO_ORD\": 1,\n", + " \"ACC_SIZE\": 1000,\n", + " \"LV_TIM_MS\": 40990734,\n", + " \"LV_TIM_MSP\": 990,\n", + " \"LV_DATE\": \"2022-05-30\"\n", + " }\n", + " },\n", + " {\n", + " \"Action\": \"Add\",\n", + " \"Key\": \"Ni42OTAwMDBC\",\n", + " \"Fields\": {\n", + " \"ORDER_PRC\": 6.69,\n", + " \"ORDER_SIDE\": \"BID\",\n", + " \"NO_ORD\": 1,\n", + " \"ACC_SIZE\": 100,\n", + " \"LV_TIM_MS\": 49864686,\n", + " \"LV_TIM_MSP\": 291,\n", + " \"LV_DATE\": \"2022-06-22\"\n", + " }\n", + " },\n", + " {\n", + " \"Action\": \"Add\",\n", + " \"Key\": \"OC4yNDAwMDBB\",\n", + " \"Fields\": {\n", + " \"ORDER_PRC\": 8.24,\n", + " \"ORDER_SIDE\": \"ASK\",\n", + " \"NO_ORD\": 3,\n", + " \"ACC_SIZE\": 400,\n", + " \"LV_TIM_MS\": 70614014,\n", + " \"LV_TIM_MSP\": 764,\n", + " \"LV_DATE\": \"2022-06-06\"\n", + " }\n", + " },\n", + " {\n", + " \"Action\": \"Add\",\n", + " \"Key\": \"MTMuNzkwMDAwQQ==\",\n", + " \"Fields\": {\n", + " \"ORDER_PRC\": 13.79,\n", + " \"ORDER_SIDE\": \"ASK\",\n", + " \"NO_ORD\": 1,\n", + " \"ACC_SIZE\": 100,\n", + " \"LV_TIM_MS\": 63206621,\n", + " \"LV_TIM_MSP\": 154,\n", + " \"LV_DATE\": \"2022-06-16\"\n", + " }\n", + " },\n", + " {\n", + " \"Action\": \"Add\",\n", + " \"Key\": \"MTQuOTUwMDAwQQ==\",\n", + " \"Fields\": {\n", + " \"ORDER_PRC\": 14.95,\n", + " \"ORDER_SIDE\": \"ASK\",\n", + " \"NO_ORD\": 2,\n", + " \"ACC_SIZE\": 1200,\n", + " \"LV_TIM_MS\": 39667938,\n", + " \"LV_TIM_MSP\": 600,\n", + " \"LV_DATE\": \"2022-06-22\"\n", + " }\n", + " },\n", + " {\n", + " \"Action\": \"Add\",\n", + " \"Key\": \"OC42ODAwMDBB\",\n", + " \"Fields\": {\n", + " \"ORDER_PRC\": 8.68,\n", + " \"ORDER_SIDE\": \"ASK\",\n", + " \"NO_ORD\": 2,\n", + " \"ACC_SIZE\": 3000,\n", + " \"LV_TIM_MS\": 61149545,\n", + " \"LV_TIM_MSP\": 683,\n", + " \"LV_DATE\": \"2022-06-06\"\n", + " }\n", + " },\n", + " {\n", + " \"Action\": \"Add\",\n", + " \"Key\": \"Ni45MDAwMDBC\",\n", + " \"Fields\": {\n", + " \"ORDER_PRC\": 6.9,\n", + " \"ORDER_SIDE\": \"BID\",\n", + " \"NO_ORD\": 16,\n", + " \"ACC_SIZE\": 26900,\n", + " \"LV_TIM_MS\": 50338001,\n", + " \"LV_TIM_MSP\": 631,\n", + " \"LV_DATE\": \"2022-06-22\"\n", + " }\n", + " },\n", + " {\n", + " \"Action\": \"Add\",\n", + " \"Key\": \"MTc1LjAwMDAwMEE=\",\n", + " \"Fields\": {\n", + " \"ORDER_PRC\": 175.0,\n", + " \"ORDER_SIDE\": \"ASK\",\n", + " \"NO_ORD\": 1,\n", + " \"ACC_SIZE\": 10200,\n", + " \"LV_TIM_MS\": 56650539,\n", + " \"LV_TIM_MSP\": 241,\n", + " \"LV_DATE\": \"2022-06-03\"\n", + " }\n", + " },\n", + " {\n", + " \"Action\": \"Add\",\n", + " \"Key\": \"Ny43MzAwMDBB\",\n", + " \"Fields\": {\n", + " \"ORDER_PRC\": 7.73,\n", + " \"ORDER_SIDE\": \"ASK\",\n", + " \"NO_ORD\": 5,\n", + " \"ACC_SIZE\": 8500,\n", + " \"LV_TIM_MS\": 39612644,\n", + " \"LV_TIM_MSP\": 597,\n", + " \"LV_DATE\": \"2022-06-22\"\n", + " }\n", + " },\n", + " {\n", + " \"Action\": \"Add\",\n", + " \"Key\": \"MTYuNTAwMDAwQQ==\",\n", + " \"Fields\": {\n", + " \"ORDER_PRC\": 16.5,\n", + " \"ORDER_SIDE\": \"ASK\",\n", + " \"NO_ORD\": 1,\n", + " \"ACC_SIZE\": 100,\n", + " \"LV_TIM_MS\": 40252194,\n", + " \"LV_TIM_MSP\": 30,\n", + " \"LV_DATE\": \"2022-03-30\"\n", + " }\n", + " },\n", + " {\n", + " \"Action\": \"Add\",\n", + " \"Key\": \"NDUuMzkwMDAwQQ==\",\n", + " \"Fields\": {\n", + " \"ORDER_PRC\": 45.39,\n", + " \"ORDER_SIDE\": \"ASK\",\n", + " \"NO_ORD\": 1,\n", + " \"ACC_SIZE\": 500,\n", + " \"LV_TIM_MS\": 56068362,\n", + " \"LV_TIM_MSP\": 617,\n", + " \"LV_DATE\": \"2022-04-26\"\n", + " }\n", + " },\n", + " {\n", + " \"Action\": \"Add\",\n", + " \"Key\": \"OS43MjAwMDBB\",\n", + " \"Fields\": {\n", + " \"ORDER_PRC\": 9.72,\n", + " \"ORDER_SIDE\": \"ASK\",\n", + " \"NO_ORD\": 1,\n", + " \"ACC_SIZE\": 1000,\n", + " \"LV_TIM_MS\": 44131346,\n", + " \"LV_TIM_MSP\": 70,\n", + " \"LV_DATE\": \"2022-06-03\"\n", + " }\n", + " },\n", + " {\n", + " \"Action\": \"Add\",\n", + " \"Key\": \"Ni4xNTAwMDBC\",\n", + " \"Fields\": {\n", + " \"ORDER_PRC\": 6.15,\n", + " \"ORDER_SIDE\": \"BID\",\n", + " \"NO_ORD\": 6,\n", + " \"ACC_SIZE\": 5800,\n", + " \"LV_TIM_MS\": 57639194,\n", + " \"LV_TIM_MSP\": 615,\n", + " \"LV_DATE\": \"2022-06-16\"\n", + " }\n", + " },\n", + " {\n", + " \"Action\": \"Add\",\n", + " \"Key\": \"MS42ODAwMDBC\",\n", + " \"Fields\": {\n", + " \"ORDER_PRC\": 1.68,\n", + " \"ORDER_SIDE\": \"BID\",\n", + " \"NO_ORD\": 1,\n", + " \"ACC_SIZE\": 11800,\n", + " \"LV_TIM_MS\": 41400525,\n", + " \"LV_TIM_MSP\": 134,\n", + " \"LV_DATE\": \"2022-06-22\"\n", + " }\n", + " },\n", + " {\n", + " \"Action\": \"Add\",\n", + " \"Key\": \"MTMuMjUwMDAwQQ==\",\n", + " \"Fields\": {\n", + " \"ORDER_PRC\": 13.25,\n", + " \"ORDER_SIDE\": \"ASK\",\n", + " \"NO_ORD\": 1,\n", + " \"ACC_SIZE\": 100,\n", + " \"LV_TIM_MS\": 70028733,\n", + " \"LV_TIM_MSP\": 815,\n", + " \"LV_DATE\": \"2022-06-21\"\n", + " }\n", + " },\n", + " {\n", + " \"Action\": \"Add\",\n", + " \"Key\": \"My4yMzAwMDBC\",\n", + " \"Fields\": {\n", + " \"ORDER_PRC\": 3.23,\n", + " \"ORDER_SIDE\": \"BID\",\n", + " \"NO_ORD\": 1,\n", + " \"ACC_SIZE\": 300,\n", + " \"LV_TIM_MS\": 40518195,\n", + " \"LV_TIM_MSP\": 818,\n", + " \"LV_DATE\": \"2022-06-17\"\n", + " }\n", + " },\n", + " {\n", + " \"Action\": \"Add\",\n", + " \"Key\": \"MjMuMzAwMDAwQQ==\",\n", + " \"Fields\": {\n", + " \"ORDER_PRC\": 23.3,\n", + " \"ORDER_SIDE\": \"ASK\",\n", + " \"NO_ORD\": 1,\n", + " \"ACC_SIZE\": 200,\n", + " \"LV_TIM_MS\": 40917852,\n", + " \"LV_TIM_MSP\": 493,\n", + " \"LV_DATE\": \"2022-05-30\"\n", + " }\n", + " },\n", + " {\n", + " \"Action\": \"Add\",\n", + " \"Key\": \"OC4xNDAwMDBB\",\n", + " \"Fields\": {\n", + " \"ORDER_PRC\": 8.14,\n", + " \"ORDER_SIDE\": \"ASK\",\n", + " \"NO_ORD\": 1,\n", + " \"ACC_SIZE\": 100,\n", + " \"LV_TIM_MS\": 40934328,\n", + " \"LV_TIM_MSP\": 312,\n", + " \"LV_DATE\": \"2022-06-02\"\n", + " }\n", + " },\n", + " {\n", + " \"Action\": \"Add\",\n", + " \"Key\": \"MTcuNzcwMDAwQQ==\",\n", + " \"Fields\": {\n", + " \"ORDER_PRC\": 17.77,\n", + " \"ORDER_SIDE\": \"ASK\",\n", + " \"NO_ORD\": 1,\n", + " \"ACC_SIZE\": 100,\n", + " \"LV_TIM_MS\": 41402216,\n", + " \"LV_TIM_MSP\": 473,\n", + " \"LV_DATE\": \"2022-06-22\"\n", + " }\n", + " },\n", + " {\n", + " \"Action\": \"Add\",\n", + " \"Key\": \"Ni41OTAwMDBC\",\n", + " \"Fields\": {\n", + " \"ORDER_PRC\": 6.59,\n", + " \"ORDER_SIDE\": \"BID\",\n", + " \"NO_ORD\": 1,\n", + " \"ACC_SIZE\": 100,\n", + " \"LV_TIM_MS\": 49879034,\n", + " \"LV_TIM_MSP\": 831,\n", + " \"LV_DATE\": \"2022-06-22\"\n", + " }\n", + " },\n", + " {\n", + " \"Action\": \"Add\",\n", + " \"Key\": \"MTQuODUwMDAwQQ==\",\n", + " \"Fields\": {\n", + " \"ORDER_PRC\": 14.85,\n", + " \"ORDER_SIDE\": \"ASK\",\n", + " \"NO_ORD\": 1,\n", + " \"ACC_SIZE\": 500,\n", + " \"LV_TIM_MS\": 41086100,\n", + " \"LV_TIM_MSP\": 16,\n", + " \"LV_DATE\": \"2022-05-02\"\n", + " }\n", + " },\n", + " {\n", + " \"Action\": \"Add\",\n", + " \"Key\": \"OC41ODAwMDBB\",\n", + " \"Fields\": {\n", + " \"ORDER_PRC\": 8.58,\n", + " \"ORDER_SIDE\": \"ASK\",\n", + " \"NO_ORD\": 3,\n", + " \"ACC_SIZE\": 800,\n", + " \"LV_TIM_MS\": 56722358,\n", + " \"LV_TIM_MSP\": 956,\n", + " \"LV_DATE\": \"2022-05-31\"\n", + " }\n", + " },\n", + " {\n", + " \"Action\": \"Add\",\n", + " \"Key\": \"Ni44MDAwMDBC\",\n", + " \"Fields\": {\n", + " \"ORDER_PRC\": 6.8,\n", + " \"ORDER_SIDE\": \"BID\",\n", + " \"NO_ORD\": 8,\n", + " \"ACC_SIZE\": 16700,\n", + " \"LV_TIM_MS\": 50300846,\n", + " \"LV_TIM_MSP\": 677,\n", + " \"LV_DATE\": \"2022-06-22\"\n", + " }\n", + " },\n", + " {\n", + " \"Action\": \"Add\",\n", + " \"Key\": \"MTYuNDAwMDAwQQ==\",\n", + " \"Fields\": {\n", + " \"ORDER_PRC\": 16.4,\n", + " \"ORDER_SIDE\": \"ASK\",\n", + " \"NO_ORD\": 3,\n", + " \"ACC_SIZE\": 2700,\n", + " \"LV_TIM_MS\": 55985505,\n", + " \"LV_TIM_MSP\": 177,\n", + " \"LV_DATE\": \"2022-05-13\"\n", + " }\n", + " },\n", + " {\n", + " \"Action\": \"Add\",\n", + " \"Key\": \"MTIuMzIwMDAwQQ==\",\n", + " \"Fields\": {\n", + " \"ORDER_PRC\": 12.32,\n", + " \"ORDER_SIDE\": \"ASK\",\n", + " \"NO_ORD\": 1,\n", + " \"ACC_SIZE\": 100,\n", + " \"LV_TIM_MS\": 70973191,\n", + " \"LV_TIM_MSP\": 106,\n", + " \"LV_DATE\": \"2022-05-30\"\n", + " }\n", + " },\n", + " {\n", + " \"Action\": \"Add\",\n", + " \"Key\": \"Ny4yMTAwMDBB\",\n", + " \"Fields\": {\n", + " \"ORDER_PRC\": 7.21,\n", + " \"ORDER_SIDE\": \"ASK\",\n", + " \"NO_ORD\": 1,\n", + " \"ACC_SIZE\": 500,\n", + " \"LV_TIM_MS\": 39606012,\n", + " \"LV_TIM_MSP\": 555,\n", + " \"LV_DATE\": \"2022-06-22\"\n", + " }\n", + " },\n", + " {\n", + " \"Action\": \"Add\",\n", + " \"Key\": \"Ny42NTAwMDBB\",\n", + " \"Fields\": {\n", + " \"ORDER_PRC\": 7.65,\n", + " \"ORDER_SIDE\": \"ASK\",\n", + " \"NO_ORD\": 1,\n", + " \"ACC_SIZE\": 4000,\n", + " \"LV_TIM_MS\": 48900235,\n", + " \"LV_TIM_MSP\": 164,\n", + " \"LV_DATE\": \"2022-06-22\"\n", + " }\n", + " },\n", + " {\n", + " \"Action\": \"Add\",\n", + " \"Key\": \"MTI1LjAwMDAwMEE=\",\n", + " \"Fields\": {\n", + " \"ORDER_PRC\": 125.0,\n", + " \"ORDER_SIDE\": \"ASK\",\n", + " \"NO_ORD\": 1,\n", + " \"ACC_SIZE\": 3000,\n", + " \"LV_TIM_MS\": 40925798,\n", + " \"LV_TIM_MSP\": 890,\n", + " \"LV_DATE\": \"2022-05-30\"\n", + " }\n", + " },\n", + " {\n", + " \"Action\": \"Add\",\n", + " \"Key\": \"Ni4wNTAwMDBC\",\n", + " \"Fields\": {\n", + " \"ORDER_PRC\": 6.05,\n", + " \"ORDER_SIDE\": \"BID\",\n", + " \"NO_ORD\": 2,\n", + " \"ACC_SIZE\": 1400,\n", + " \"LV_TIM_MS\": 41412126,\n", + " \"LV_TIM_MSP\": 18,\n", + " \"LV_DATE\": \"2022-06-22\"\n", + " }\n", + " },\n", + " {\n", + " \"Action\": \"Add\",\n", + " \"Key\": \"Ni40OTAwMDBC\",\n", + " \"Fields\": {\n", + " \"ORDER_PRC\": 6.49,\n", + " \"ORDER_SIDE\": \"BID\",\n", + " \"NO_ORD\": 1,\n", + " \"ACC_SIZE\": 1500,\n", + " \"LV_TIM_MS\": 48600126,\n", + " \"LV_TIM_MSP\": 199,\n", + " \"LV_DATE\": \"2022-06-22\"\n", + " }\n", + " },\n", + " {\n", + " \"Action\": \"Add\",\n", + " \"Key\": \"OS4yMDAwMDBB\",\n", + " \"Fields\": {\n", + " \"ORDER_PRC\": 9.2,\n", + " \"ORDER_SIDE\": \"ASK\",\n", + " \"NO_ORD\": 3,\n", + " \"ACC_SIZE\": 900,\n", + " \"LV_TIM_MS\": 41402018,\n", + " \"LV_TIM_MSP\": 28,\n", + " \"LV_DATE\": \"2022-06-22\"\n", + " }\n", + " },\n", + " {\n", + " \"Action\": \"Add\",\n", + " \"Key\": \"NDguMDAwMDAwQQ==\",\n", + " \"Fields\": {\n", + " \"ORDER_PRC\": 48.0,\n", + " \"ORDER_SIDE\": \"ASK\",\n", + " \"NO_ORD\": 1,\n", + " \"ACC_SIZE\": 500,\n", + " \"LV_TIM_MS\": 41402015,\n", + " \"LV_TIM_MSP\": 39,\n", + " \"LV_DATE\": \"2022-06-22\"\n", + " }\n", + " },\n", + " {\n", + " \"Action\": \"Add\",\n", + " \"Key\": \"Ni43MDAwMDBC\",\n", + " \"Fields\": {\n", + " \"ORDER_PRC\": 6.7,\n", + " \"ORDER_SIDE\": \"BID\",\n", + " \"NO_ORD\": 1,\n", + " \"ACC_SIZE\": 100,\n", + " \"LV_TIM_MS\": 49863715,\n", + " \"LV_TIM_MSP\": 986,\n", + " \"LV_DATE\": \"2022-06-22\"\n", + " }\n", + " },\n", + " {\n", + " \"Action\": \"Add\",\n", + " \"Key\": \"MjYuMTQwMDAwQQ==\",\n", + " \"Fields\": {\n", + " \"ORDER_PRC\": 26.14,\n", + " \"ORDER_SIDE\": \"ASK\",\n", + " \"NO_ORD\": 1,\n", + " \"ACC_SIZE\": 100,\n", + " \"LV_TIM_MS\": 41412130,\n", + " \"LV_TIM_MSP\": 28,\n", + " \"LV_DATE\": \"2022-06-22\"\n", + " }\n", + " },\n", + " {\n", + " \"Action\": \"Add\",\n", + " \"Key\": \"MTQuNzUwMDAwQQ==\",\n", + " \"Fields\": {\n", + " \"ORDER_PRC\": 14.75,\n", + " \"ORDER_SIDE\": \"ASK\",\n", + " \"NO_ORD\": 1,\n", + " \"ACC_SIZE\": 600,\n", + " \"LV_TIM_MS\": 41459547,\n", + " \"LV_TIM_MSP\": 504,\n", + " \"LV_DATE\": \"2022-05-05\"\n", + " }\n", + " },\n", + " {\n", + " \"Action\": \"Add\",\n", + " \"Key\": \"MjQuODAwMDAwQQ==\",\n", + " \"Fields\": {\n", + " \"ORDER_PRC\": 24.8,\n", + " \"ORDER_SIDE\": \"ASK\",\n", + " \"NO_ORD\": 2,\n", + " \"ACC_SIZE\": 1900,\n", + " \"LV_TIM_MS\": 42724263,\n", + " \"LV_TIM_MSP\": 988,\n", + " \"LV_DATE\": \"2022-06-01\"\n", + " }\n", + " },\n", + " {\n", + " \"Action\": \"Add\",\n", + " \"Key\": \"OC40ODAwMDBB\",\n", + " \"Fields\": {\n", + " \"ORDER_PRC\": 8.48,\n", + " \"ORDER_SIDE\": \"ASK\",\n", + " \"NO_ORD\": 3,\n", + " \"ACC_SIZE\": 1400,\n", + " \"LV_TIM_MS\": 41059889,\n", + " \"LV_TIM_MSP\": 45,\n", + " \"LV_DATE\": \"2022-06-09\"\n", + " }\n", + " },\n", + " {\n", + " \"Action\": \"Add\",\n", + " \"Key\": \"NDEuMDAwMDAwQQ==\",\n", + " \"Fields\": {\n", + " \"ORDER_PRC\": 41.0,\n", + " \"ORDER_SIDE\": \"ASK\",\n", + " \"NO_ORD\": 2,\n", + " \"ACC_SIZE\": 800,\n", + " \"LV_TIM_MS\": 41402019,\n", + " \"LV_TIM_MSP\": 28,\n", + " \"LV_DATE\": \"2022-06-22\"\n", + " }\n", + " },\n", + " {\n", + " \"Action\": \"Add\",\n", + " \"Key\": \"NS4xMjAwMDBC\",\n", + " \"Fields\": {\n", + " \"ORDER_PRC\": 5.12,\n", + " \"ORDER_SIDE\": \"BID\",\n", + " \"NO_ORD\": 1,\n", + " \"ACC_SIZE\": 100,\n", + " \"LV_TIM_MS\": 54132564,\n", + " \"LV_TIM_MSP\": 345,\n", + " \"LV_DATE\": \"2022-06-13\"\n", + " }\n", + " },\n", + " {\n", + " \"Action\": \"Add\",\n", + " \"Key\": \"MTEuODMwMDAwQQ==\",\n", + " \"Fields\": {\n", + " \"ORDER_PRC\": 11.83,\n", + " \"ORDER_SIDE\": \"ASK\",\n", + " \"NO_ORD\": 1,\n", + " \"ACC_SIZE\": 400,\n", + " \"LV_TIM_MS\": 55085590,\n", + " \"LV_TIM_MSP\": 331,\n", + " \"LV_DATE\": \"2022-04-26\"\n", + " }\n", + " },\n", + " {\n", + " \"Action\": \"Add\",\n", + " \"Key\": \"Ny4xMTAwMDBB\",\n", + " \"Fields\": {\n", + " \"ORDER_PRC\": 7.11,\n", + " \"ORDER_SIDE\": \"ASK\",\n", + " \"NO_ORD\": 3,\n", + " \"ACC_SIZE\": 900,\n", + " \"LV_TIM_MS\": 50198703,\n", + " \"LV_TIM_MSP\": 505,\n", + " \"LV_DATE\": \"2022-06-22\"\n", + " }\n", + " },\n", + " {\n", + " \"Action\": \"Add\",\n", + " \"Key\": \"Ny41NTAwMDBB\",\n", + " \"Fields\": {\n", + " \"ORDER_PRC\": 7.55,\n", + " \"ORDER_SIDE\": \"ASK\",\n", + " \"NO_ORD\": 1,\n", + " \"ACC_SIZE\": 5000,\n", + " \"LV_TIM_MS\": 40814710,\n", + " \"LV_TIM_MSP\": 901,\n", + " \"LV_DATE\": \"2022-06-16\"\n", + " }\n", + " },\n", + " {\n", + " \"Action\": \"Add\",\n", + " \"Key\": \"MjQuNDkwMDAwQQ==\",\n", + " \"Fields\": {\n", + " \"ORDER_PRC\": 24.49,\n", + " \"ORDER_SIDE\": \"ASK\",\n", + " \"NO_ORD\": 1,\n", + " \"ACC_SIZE\": 18500,\n", + " \"LV_TIM_MS\": 52590083,\n", + " \"LV_TIM_MSP\": 792,\n", + " \"LV_DATE\": \"2021-06-14\"\n", + " }\n", + " },\n", + " {\n", + " \"Action\": \"Add\",\n", + " \"Key\": \"OS4xMDAwMDBB\",\n", + " \"Fields\": {\n", + " \"ORDER_PRC\": 9.1,\n", + " \"ORDER_SIDE\": \"ASK\",\n", + " \"NO_ORD\": 2,\n", + " \"ACC_SIZE\": 200,\n", + " \"LV_TIM_MS\": 39660458,\n", + " \"LV_TIM_MSP\": 28,\n", + " \"LV_DATE\": \"2022-06-22\"\n", + " }\n", + " },\n", + " {\n", + " \"Action\": \"Add\",\n", + " \"Key\": \"Ny45OTAwMDBB\",\n", + " \"Fields\": {\n", + " \"ORDER_PRC\": 7.99,\n", + " \"ORDER_SIDE\": \"ASK\",\n", + " \"NO_ORD\": 3,\n", + " \"ACC_SIZE\": 13100,\n", + " \"LV_TIM_MS\": 39660274,\n", + " \"LV_TIM_MSP\": 966,\n", + " \"LV_DATE\": \"2022-06-22\"\n", + " }\n", + " },\n", + " {\n", + " \"Action\": \"Add\",\n", + " \"Key\": \"OC4zODAwMDBB\",\n", + " \"Fields\": {\n", + " \"ORDER_PRC\": 8.38,\n", + " \"ORDER_SIDE\": \"ASK\",\n", + " \"NO_ORD\": 4,\n", + " \"ACC_SIZE\": 13700,\n", + " \"LV_TIM_MS\": 43831042,\n", + " \"LV_TIM_MSP\": 552,\n", + " \"LV_DATE\": \"2022-06-14\"\n", + " }\n", + " },\n", + " {\n", + " \"Action\": \"Add\",\n", + " \"Key\": \"OS45ODAwMDBB\",\n", + " \"Fields\": {\n", + " \"ORDER_PRC\": 9.98,\n", + " \"ORDER_SIDE\": \"ASK\",\n", + " \"NO_ORD\": 1,\n", + " \"ACC_SIZE\": 100,\n", + " \"LV_TIM_MS\": 67547908,\n", + " \"LV_TIM_MSP\": 394,\n", + " \"LV_DATE\": \"2022-03-30\"\n", + " }\n", + " },\n", + " {\n", + " \"Action\": \"Add\",\n", + " \"Key\": \"Ny4wMTAwMDBB\",\n", + " \"Fields\": {\n", + " \"ORDER_PRC\": 7.01,\n", + " \"ORDER_SIDE\": \"ASK\",\n", + " \"NO_ORD\": 1,\n", + " \"ACC_SIZE\": 100,\n", + " \"LV_TIM_MS\": 50224739,\n", + " \"LV_TIM_MSP\": 293,\n", + " \"LV_DATE\": \"2022-06-22\"\n", + " }\n", + " },\n", + " {\n", + " \"Action\": \"Add\",\n", + " \"Key\": \"MTcuODAwMDAwQQ==\",\n", + " \"Fields\": {\n", + " \"ORDER_PRC\": 17.8,\n", + " \"ORDER_SIDE\": \"ASK\",\n", + " \"NO_ORD\": 1,\n", + " \"ACC_SIZE\": 1200,\n", + " \"LV_TIM_MS\": 54285902,\n", + " \"LV_TIM_MSP\": 955,\n", + " \"LV_DATE\": \"2022-06-01\"\n", + " }\n", + " },\n", + " {\n", + " \"Action\": \"Add\",\n", + " \"Key\": \"Ni42MjAwMDBC\",\n", + " \"Fields\": {\n", + " \"ORDER_PRC\": 6.62,\n", + " \"ORDER_SIDE\": \"BID\",\n", + " \"NO_ORD\": 1,\n", + " \"ACC_SIZE\": 1800,\n", + " \"LV_TIM_MS\": 48603143,\n", + " \"LV_TIM_MSP\": 528,\n", + " \"LV_DATE\": \"2022-06-22\"\n", + " }\n", + " },\n", + " {\n", + " \"Action\": \"Add\",\n", + " \"Key\": \"MzQuMDAwMDAwQQ==\",\n", + " \"Fields\": {\n", + " \"ORDER_PRC\": 34.0,\n", + " \"ORDER_SIDE\": \"ASK\",\n", + " \"NO_ORD\": 1,\n", + " \"ACC_SIZE\": 500,\n", + " \"LV_TIM_MS\": 41402015,\n", + " \"LV_TIM_MSP\": 22,\n", + " \"LV_DATE\": \"2022-06-22\"\n", + " }\n", + " },\n", + " {\n", + " \"Action\": \"Add\",\n", + " \"Key\": \"OC42MTAwMDBB\",\n", + " \"Fields\": {\n", + " \"ORDER_PRC\": 8.61,\n", + " \"ORDER_SIDE\": \"ASK\",\n", + " \"NO_ORD\": 1,\n", + " \"ACC_SIZE\": 1000,\n", + " \"LV_TIM_MS\": 44242928,\n", + " \"LV_TIM_MSP\": 731,\n", + " \"LV_DATE\": \"2022-06-06\"\n", + " }\n", + " },\n", + " {\n", + " \"Action\": \"Add\",\n", + " \"Key\": \"OS4wMDAwMDBB\",\n", + " \"Fields\": {\n", + " \"ORDER_PRC\": 9.0,\n", + " \"ORDER_SIDE\": \"ASK\",\n", + " \"NO_ORD\": 20,\n", + " \"ACC_SIZE\": 24200,\n", + " \"LV_TIM_MS\": 41412125,\n", + " \"LV_TIM_MSP\": 42,\n", + " \"LV_DATE\": \"2022-06-22\"\n", + " }\n", + " },\n", + " {\n", + " \"Action\": \"Add\",\n", + " \"Key\": \"Ny44OTAwMDBB\",\n", + " \"Fields\": {\n", + " \"ORDER_PRC\": 7.89,\n", + " \"ORDER_SIDE\": \"ASK\",\n", + " \"NO_ORD\": 1,\n", + " \"ACC_SIZE\": 2000,\n", + " \"LV_TIM_MS\": 58585412,\n", + " \"LV_TIM_MSP\": 886,\n", + " \"LV_DATE\": \"2022-05-31\"\n", + " }\n", + " },\n", + " {\n", + " \"Action\": \"Add\",\n", + " \"Key\": \"MTAuODAwMDAwQQ==\",\n", + " \"Fields\": {\n", + " \"ORDER_PRC\": 10.8,\n", + " \"ORDER_SIDE\": \"ASK\",\n", + " \"NO_ORD\": 6,\n", + " \"ACC_SIZE\": 14900,\n", + " \"LV_TIM_MS\": 41402217,\n", + " \"LV_TIM_MSP\": 51,\n", + " \"LV_DATE\": \"2022-06-22\"\n", + " }\n", + " },\n", + " {\n", + " \"Action\": \"Add\",\n", + " \"Key\": \"OS40NDAwMDBB\",\n", + " \"Fields\": {\n", + " \"ORDER_PRC\": 9.44,\n", + " \"ORDER_SIDE\": \"ASK\",\n", + " \"NO_ORD\": 2,\n", + " \"ACC_SIZE\": 5500,\n", + " \"LV_TIM_MS\": 60653047,\n", + " \"LV_TIM_MSP\": 70,\n", + " \"LV_DATE\": \"2022-05-27\"\n", + " }\n", + " },\n", + " {\n", + " \"Action\": \"Add\",\n", + " \"Key\": \"MC4wMTAwMDBC\",\n", + " \"Fields\": {\n", + " \"ORDER_PRC\": 0.01,\n", + " \"ORDER_SIDE\": \"BID\",\n", + " \"NO_ORD\": 1,\n", + " \"ACC_SIZE\": 1000,\n", + " \"LV_TIM_MS\": 60804543,\n", + " \"LV_TIM_MSP\": 809,\n", + " \"LV_DATE\": \"2022-06-20\"\n", + " }\n", + " },\n", + " {\n", + " \"Action\": \"Add\",\n", + " \"Key\": \"MzkuNzkwMDAwQQ==\",\n", + " \"Fields\": {\n", + " \"ORDER_PRC\": 39.79,\n", + " \"ORDER_SIDE\": \"ASK\",\n", + " \"NO_ORD\": 2,\n", + " \"ACC_SIZE\": 9000,\n", + " \"LV_TIM_MS\": 40924873,\n", + " \"LV_TIM_MSP\": 639,\n", + " \"LV_DATE\": \"2022-05-30\"\n", + " }\n", + " },\n", + " {\n", + " \"Action\": \"Add\",\n", + " \"Key\": \"MjMuMDIwMDAwQQ==\",\n", + " \"Fields\": {\n", + " \"ORDER_PRC\": 23.02,\n", + " \"ORDER_SIDE\": \"ASK\",\n", + " \"NO_ORD\": 1,\n", + " \"ACC_SIZE\": 500,\n", + " \"LV_TIM_MS\": 41412128,\n", + " \"LV_TIM_MSP\": 36,\n", + " \"LV_DATE\": \"2022-06-22\"\n", + " }\n", + " },\n", + " {\n", + " \"Action\": \"Add\",\n", + " \"Key\": \"OS44ODAwMDBB\",\n", + " \"Fields\": {\n", + " \"ORDER_PRC\": 9.88,\n", + " \"ORDER_SIDE\": \"ASK\",\n", + " \"NO_ORD\": 6,\n", + " \"ACC_SIZE\": 3500,\n", + " \"LV_TIM_MS\": 41412129,\n", + " \"LV_TIM_MSP\": 26,\n", + " \"LV_DATE\": \"2022-06-22\"\n", + " }\n", + " },\n", + " {\n", + " \"Action\": \"Add\",\n", + " \"Key\": \"MTAuMDUwMDAwQQ==\",\n", + " \"Fields\": {\n", + " \"ORDER_PRC\": 10.05,\n", + " \"ORDER_SIDE\": \"ASK\",\n", + " \"NO_ORD\": 1,\n", + " \"ACC_SIZE\": 100,\n", + " \"LV_TIM_MS\": 41839090,\n", + " \"LV_TIM_MSP\": 765,\n", + " \"LV_DATE\": \"2022-05-24\"\n", + " }\n", + " },\n", + " {\n", + " \"Action\": \"Add\",\n", + " \"Key\": \"MTcuNzAwMDAwQQ==\",\n", + " \"Fields\": {\n", + " \"ORDER_PRC\": 17.7,\n", + " \"ORDER_SIDE\": \"ASK\",\n", + " \"NO_ORD\": 1,\n", + " \"ACC_SIZE\": 500,\n", + " \"LV_TIM_MS\": 39624093,\n", + " \"LV_TIM_MSP\": 40,\n", + " \"LV_DATE\": \"2022-06-20\"\n", + " }\n", + " },\n", + " {\n", + " \"Action\": \"Add\",\n", + " \"Key\": \"Mi4wMDAwMDBC\",\n", + " \"Fields\": {\n", + " \"ORDER_PRC\": 2.0,\n", + " \"ORDER_SIDE\": \"BID\",\n", + " \"NO_ORD\": 1,\n", + " \"ACC_SIZE\": 200,\n", + " \"LV_TIM_MS\": 41402019,\n", + " \"LV_TIM_MSP\": 24,\n", + " \"LV_DATE\": \"2022-06-22\"\n", + " }\n", + " },\n", + " {\n", + " \"Action\": \"Add\",\n", + " \"Key\": \"Ni45NjAwMDBB\",\n", + " \"Fields\": {\n", + " \"ORDER_PRC\": 6.96,\n", + " \"ORDER_SIDE\": \"ASK\",\n", + " \"NO_ORD\": 9,\n", + " \"ACC_SIZE\": 25700,\n", + " \"LV_TIM_MS\": 50350002,\n", + " \"LV_TIM_MSP\": 621,\n", + " \"LV_DATE\": \"2022-06-22\"\n", + " }\n", + " },\n", + " {\n", + " \"Action\": \"Add\",\n", + " \"Key\": \"MTAuNDkwMDAwQQ==\",\n", + " \"Fields\": {\n", + " \"ORDER_PRC\": 10.49,\n", + " \"ORDER_SIDE\": \"ASK\",\n", + " \"NO_ORD\": 2,\n", + " \"ACC_SIZE\": 200,\n", + " \"LV_TIM_MS\": 40986470,\n", + " \"LV_TIM_MSP\": 449,\n", + " \"LV_DATE\": \"2022-05-30\"\n", + " }\n", + " },\n", + " {\n", + " \"Action\": \"Add\",\n", + " \"Key\": \"MTEuNjUwMDAwQQ==\",\n", + " \"Fields\": {\n", + " \"ORDER_PRC\": 11.65,\n", + " \"ORDER_SIDE\": \"ASK\",\n", + " \"NO_ORD\": 2,\n", + " \"ACC_SIZE\": 2300,\n", + " \"LV_TIM_MS\": 52821989,\n", + " \"LV_TIM_MSP\": 177,\n", + " \"LV_DATE\": \"2022-03-22\"\n", + " }\n", + " },\n", + " {\n", + " \"Action\": \"Add\",\n", + " \"Key\": \"Ny4zNTAwMDBB\",\n", + " \"Fields\": {\n", + " \"ORDER_PRC\": 7.35,\n", + " \"ORDER_SIDE\": \"ASK\",\n", + " \"NO_ORD\": 2,\n", + " \"ACC_SIZE\": 700,\n", + " \"LV_TIM_MS\": 41412130,\n", + " \"LV_TIM_MSP\": 53,\n", + " \"LV_DATE\": \"2022-06-22\"\n", + " }\n", + " },\n", + " {\n", + " \"Action\": \"Add\",\n", + " \"Key\": \"Ny43OTAwMDBB\",\n", + " \"Fields\": {\n", + " \"ORDER_PRC\": 7.79,\n", + " \"ORDER_SIDE\": \"ASK\",\n", + " \"NO_ORD\": 3,\n", + " \"ACC_SIZE\": 12700,\n", + " \"LV_TIM_MS\": 43506397,\n", + " \"LV_TIM_MSP\": 174,\n", + " \"LV_DATE\": \"2022-06-22\"\n", + " }\n", + " },\n", + " {\n", + " \"Action\": \"Add\",\n", + " \"Key\": \"MTYuNTYwMDAwQQ==\",\n", + " \"Fields\": {\n", + " \"ORDER_PRC\": 16.56,\n", + " \"ORDER_SIDE\": \"ASK\",\n", + " \"NO_ORD\": 1,\n", + " \"ACC_SIZE\": 800,\n", + " \"LV_TIM_MS\": 55701440,\n", + " \"LV_TIM_MSP\": 95,\n", + " \"LV_DATE\": \"2022-04-01\"\n", + " }\n", + " },\n", + " {\n", + " \"Action\": \"Add\",\n", + " \"Key\": \"MjcuMDAwMDAwQQ==\",\n", + " \"Fields\": {\n", + " \"ORDER_PRC\": 27.0,\n", + " \"ORDER_SIDE\": \"ASK\",\n", + " \"NO_ORD\": 3,\n", + " \"ACC_SIZE\": 7900,\n", + " \"LV_TIM_MS\": 41402018,\n", + " \"LV_TIM_MSP\": 22,\n", + " \"LV_DATE\": \"2022-06-22\"\n", + " }\n", + " },\n", + " {\n", + " \"Action\": \"Add\",\n", + " \"Key\": \"MTIuNDgwMDAwQQ==\",\n", + " \"Fields\": {\n", + " \"ORDER_PRC\": 12.48,\n", + " \"ORDER_SIDE\": \"ASK\",\n", + " \"NO_ORD\": 1,\n", + " \"ACC_SIZE\": 500,\n", + " \"LV_TIM_MS\": 49082166,\n", + " \"LV_TIM_MSP\": 182,\n", + " \"LV_DATE\": \"2022-06-13\"\n", + " }\n", + " },\n", + " {\n", + " \"Action\": \"Add\",\n", + " \"Key\": \"OS4zNDAwMDBB\",\n", + " \"Fields\": {\n", + " \"ORDER_PRC\": 9.34,\n", + " \"ORDER_SIDE\": \"ASK\",\n", + " \"NO_ORD\": 1,\n", + " \"ACC_SIZE\": 200,\n", + " \"LV_TIM_MS\": 40989755,\n", + " \"LV_TIM_MSP\": 118,\n", + " \"LV_DATE\": \"2022-05-30\"\n", + " }\n", + " },\n", + " {\n", + " \"Action\": \"Add\",\n", + " \"Key\": \"MzkuNjkwMDAwQQ==\",\n", + " \"Fields\": {\n", + " \"ORDER_PRC\": 39.69,\n", + " \"ORDER_SIDE\": \"ASK\",\n", + " \"NO_ORD\": 1,\n", + " \"ACC_SIZE\": 500,\n", + " \"LV_TIM_MS\": 68844621,\n", + " \"LV_TIM_MSP\": 92,\n", + " \"LV_DATE\": \"2022-05-05\"\n", + " }\n", + " },\n", + " {\n", + " \"Action\": \"Add\",\n", + " \"Key\": \"MTQuNDcwMDAwQQ==\",\n", + " \"Fields\": {\n", + " \"ORDER_PRC\": 14.47,\n", + " \"ORDER_SIDE\": \"ASK\",\n", + " \"NO_ORD\": 1,\n", + " \"ACC_SIZE\": 400,\n", + " \"LV_TIM_MS\": 52943436,\n", + " \"LV_TIM_MSP\": 479,\n", + " \"LV_DATE\": \"2022-03-25\"\n", + " }\n", + " },\n", + " {\n", + " \"Action\": \"Add\",\n", + " \"Key\": \"MTEuMTEwMDAwQQ==\",\n", + " \"Fields\": {\n", + " \"ORDER_PRC\": 11.11,\n", + " \"ORDER_SIDE\": \"ASK\",\n", + " \"NO_ORD\": 3,\n", + " \"ACC_SIZE\": 900,\n", + " \"LV_TIM_MS\": 51300155,\n", + " \"LV_TIM_MSP\": 555,\n", + " \"LV_DATE\": \"2022-05-27\"\n", + " }\n", + " },\n", + " {\n", + " \"Action\": \"Add\",\n", + " \"Key\": \"MjAuMDAwMDAwQQ==\",\n", + " \"Fields\": {\n", + " \"ORDER_PRC\": 20.0,\n", + " \"ORDER_SIDE\": \"ASK\",\n", + " \"NO_ORD\": 49,\n", + " \"ACC_SIZE\": 40200,\n", + " \"LV_TIM_MS\": 39660296,\n", + " \"LV_TIM_MSP\": 177,\n", + " \"LV_DATE\": \"2022-06-22\"\n", + " }\n", + " },\n", + " {\n", + " \"Action\": \"Add\",\n", + " \"Key\": \"Ni40MjAwMDBC\",\n", + " \"Fields\": {\n", + " \"ORDER_PRC\": 6.42,\n", + " \"ORDER_SIDE\": \"BID\",\n", + " \"NO_ORD\": 2,\n", + " \"ACC_SIZE\": 1400,\n", + " \"LV_TIM_MS\": 61918433,\n", + " \"LV_TIM_MSP\": 83,\n", + " \"LV_DATE\": \"2022-06-16\"\n", + " }\n", + " },\n", + " {\n", + " \"Action\": \"Add\",\n", + " \"Key\": \"My41MDAwMDBC\",\n", + " \"Fields\": {\n", + " \"ORDER_PRC\": 3.5,\n", + " \"ORDER_SIDE\": \"BID\",\n", + " \"NO_ORD\": 2,\n", + " \"ACC_SIZE\": 3700,\n", + " \"LV_TIM_MS\": 67311536,\n", + " \"LV_TIM_MSP\": 408,\n", + " \"LV_DATE\": \"2022-05-24\"\n", + " }\n", + " },\n", + " {\n", + " \"Action\": \"Add\",\n", + " \"Key\": \"Ni44NjAwMDBC\",\n", + " \"Fields\": {\n", + " \"ORDER_PRC\": 6.86,\n", + " \"ORDER_SIDE\": \"BID\",\n", + " \"NO_ORD\": 9,\n", + " \"ACC_SIZE\": 22700,\n", + " \"LV_TIM_MS\": 50336996,\n", + " \"LV_TIM_MSP\": 769,\n", + " \"LV_DATE\": \"2022-06-22\"\n", + " }\n", + " },\n", + " {\n", + " \"Action\": \"Add\",\n", + " \"Key\": \"NS4yODAwMDBC\",\n", + " \"Fields\": {\n", + " \"ORDER_PRC\": 5.28,\n", + " \"ORDER_SIDE\": \"BID\",\n", + " \"NO_ORD\": 3,\n", + " \"ACC_SIZE\": 1100,\n", + " \"LV_TIM_MS\": 39612004,\n", + " \"LV_TIM_MSP\": 877,\n", + " \"LV_DATE\": \"2022-06-22\"\n", + " }\n", + " },\n", + " {\n", + " \"Action\": \"Add\",\n", + " \"Key\": \"MTMuMTAwMDAwQQ==\",\n", + " \"Fields\": {\n", + " \"ORDER_PRC\": 13.1,\n", + " \"ORDER_SIDE\": \"ASK\",\n", + " \"NO_ORD\": 1,\n", + " \"ACC_SIZE\": 100,\n", + " \"LV_TIM_MS\": 55346936,\n", + " \"LV_TIM_MSP\": 424,\n", + " \"LV_DATE\": \"2022-03-29\"\n", + " }\n", + " },\n", + " {\n", + " \"Action\": \"Add\",\n", + " \"Key\": \"MTEuOTkwMDAwQQ==\",\n", + " \"Fields\": {\n", + " \"ORDER_PRC\": 11.99,\n", + " \"ORDER_SIDE\": \"ASK\",\n", + " \"NO_ORD\": 3,\n", + " \"ACC_SIZE\": 1400,\n", + " \"LV_TIM_MS\": 51592114,\n", + " \"LV_TIM_MSP\": 981,\n", + " \"LV_DATE\": \"2022-04-04\"\n", + " }\n", + " },\n", + " {\n", + " \"Action\": \"Add\",\n", + " \"Key\": \"OC44NTAwMDBB\",\n", + " \"Fields\": {\n", + " \"ORDER_PRC\": 8.85,\n", + " \"ORDER_SIDE\": \"ASK\",\n", + " \"NO_ORD\": 2,\n", + " \"ACC_SIZE\": 300,\n", + " \"LV_TIM_MS\": 41402019,\n", + " \"LV_TIM_MSP\": 32,\n", + " \"LV_DATE\": \"2022-06-22\"\n", + " }\n", + " },\n", + " {\n", + " \"Action\": \"Add\",\n", + " \"Key\": \"NC4zMzAwMDBC\",\n", + " \"Fields\": {\n", + " \"ORDER_PRC\": 4.33,\n", + " \"ORDER_SIDE\": \"BID\",\n", + " \"NO_ORD\": 1,\n", + " \"ACC_SIZE\": 400,\n", + " \"LV_TIM_MS\": 42391804,\n", + " \"LV_TIM_MSP\": 259,\n", + " \"LV_DATE\": \"2022-05-30\"\n", + " }\n", + " },\n", + " {\n", + " \"Action\": \"Add\",\n", + " \"Key\": \"MTMuOTgwMDAwQQ==\",\n", + " \"Fields\": {\n", + " \"ORDER_PRC\": 13.98,\n", + " \"ORDER_SIDE\": \"ASK\",\n", + " \"NO_ORD\": 1,\n", + " \"ACC_SIZE\": 500,\n", + " \"LV_TIM_MS\": 44108734,\n", + " \"LV_TIM_MSP\": 462,\n", + " \"LV_DATE\": \"2022-04-05\"\n", + " }\n", + " }\n", + " ]\n", + " }\n", + "}\n", + "----------------------------------------------------------\n", + ">>> Refresh event received at 15:59:20.198569\n", + "{\n", + " \"ID\": 5,\n", + " \"Type\": \"Refresh\",\n", + " \"Domain\": \"MarketByPrice\",\n", + " \"Key\": {\n", + " \"Service\": \"ELEKTRON_DD\",\n", + " \"Name\": \"BB.TO\"\n", + " },\n", + " \"State\": {\n", + " \"Stream\": \"Open\",\n", + " \"Data\": \"Ok\",\n", + " \"Text\": \"All is well\"\n", + " },\n", + " \"Complete\": false,\n", + " \"Qos\": {\n", + " \"Timeliness\": \"Realtime\",\n", + " \"Rate\": \"TickByTick\"\n", + " },\n", + " \"ClearCache\": false,\n", + " \"PartNumber\": 1,\n", + " \"PermData\": \"AwFkMETA\",\n", + " \"SeqNumber\": 30688,\n", + " \"Map\": {\n", + " \"KeyType\": \"Buffer\",\n", + " \"Entries\": [\n", + " {\n", + " \"Action\": \"Add\",\n", + " \"Key\": \"MTcxLjExMDAwMEE=\",\n", + " \"Fields\": {\n", + " \"ORDER_PRC\": 171.11,\n", + " \"ORDER_SIDE\": \"ASK\",\n", + " \"NO_ORD\": 1,\n", + " \"ACC_SIZE\": 500,\n", + " \"LV_TIM_MS\": 62705831,\n", + " \"LV_TIM_MSP\": 860,\n", + " \"LV_DATE\": \"2022-05-16\"\n", + " }\n", + " },\n", + " {\n", + " \"Action\": \"Add\",\n", + " \"Key\": \"Ny45MjAwMDBB\",\n", + " \"Fields\": {\n", + " \"ORDER_PRC\": 7.92,\n", + " \"ORDER_SIDE\": \"ASK\",\n", + " \"NO_ORD\": 1,\n", + " \"ACC_SIZE\": 2000,\n", + " \"LV_TIM_MS\": 54625734,\n", + " \"LV_TIM_MSP\": 954,\n", + " \"LV_DATE\": \"2022-06-21\"\n", + " }\n", + " },\n", + " {\n", + " \"Action\": \"Add\",\n", + " \"Key\": \"MTEuNDUwMDAwQQ==\",\n", + " \"Fields\": {\n", + " \"ORDER_PRC\": 11.45,\n", + " \"ORDER_SIDE\": \"ASK\",\n", + " \"NO_ORD\": 1,\n", + " \"ACC_SIZE\": 100,\n", + " \"LV_TIM_MS\": 59754424,\n", + " \"LV_TIM_MSP\": 311,\n", + " \"LV_DATE\": \"2022-04-18\"\n", + " }\n", + " },\n", + " {\n", + " \"Action\": \"Add\",\n", + " \"Key\": \"Ni43NjAwMDBC\",\n", + " \"Fields\": {\n", + " \"ORDER_PRC\": 6.76,\n", + " \"ORDER_SIDE\": \"BID\",\n", + " \"NO_ORD\": 1,\n", + " \"ACC_SIZE\": 200,\n", + " \"LV_TIM_MS\": 50213010,\n", + " \"LV_TIM_MSP\": 465,\n", + " \"LV_DATE\": \"2022-06-22\"\n", + " }\n", + " },\n", + " {\n", + " \"Action\": \"Add\",\n", + " \"Key\": \"MjEuNTAwMDAwQQ==\",\n", + " \"Fields\": {\n", + " \"ORDER_PRC\": 21.5,\n", + " \"ORDER_SIDE\": \"ASK\",\n", + " \"NO_ORD\": 1,\n", + " \"ACC_SIZE\": 1500,\n", + " \"LV_TIM_MS\": 39611237,\n", + " \"LV_TIM_MSP\": 988,\n", + " \"LV_DATE\": \"2022-04-11\"\n", + " }\n", + " },\n", + " {\n", + " \"Action\": \"Add\",\n", + " \"Key\": \"MjkuMzMwMDAwQQ==\",\n", + " \"Fields\": {\n", + " \"ORDER_PRC\": 29.33,\n", + " \"ORDER_SIDE\": \"ASK\",\n", + " \"NO_ORD\": 1,\n", + " \"ACC_SIZE\": 100,\n", + " \"LV_TIM_MS\": 42392394,\n", + " \"LV_TIM_MSP\": 813,\n", + " \"LV_DATE\": \"2022-05-30\"\n", + " }\n", + " },\n", + " {\n", + " \"Action\": \"Add\",\n", + " \"Key\": \"OC43NTAwMDBB\",\n", + " \"Fields\": {\n", + " \"ORDER_PRC\": 8.75,\n", + " \"ORDER_SIDE\": \"ASK\",\n", + " \"NO_ORD\": 6,\n", + " \"ACC_SIZE\": 6900,\n", + " \"LV_TIM_MS\": 41412128,\n", + " \"LV_TIM_MSP\": 46,\n", + " \"LV_DATE\": \"2022-06-22\"\n", + " }\n", + " },\n", + " {\n", + " \"Action\": \"Add\",\n", + " \"Key\": \"MjUuMjUwMDAwQQ==\",\n", + " \"Fields\": {\n", + " \"ORDER_PRC\": 25.25,\n", + " \"ORDER_SIDE\": \"ASK\",\n", + " \"NO_ORD\": 1,\n", + " \"ACC_SIZE\": 200,\n", + " \"LV_TIM_MS\": 40145304,\n", + " \"LV_TIM_MSP\": 437,\n", + " \"LV_DATE\": \"2022-06-22\"\n", + " }\n", + " },\n", + " {\n", + " \"Action\": \"Add\",\n", + " \"Key\": \"NjAuMDAwMDAwQQ==\",\n", + " \"Fields\": {\n", + " \"ORDER_PRC\": 60.0,\n", + " \"ORDER_SIDE\": \"ASK\",\n", + " \"NO_ORD\": 2,\n", + " \"ACC_SIZE\": 700,\n", + " \"LV_TIM_MS\": 40983413,\n", + " \"LV_TIM_MSP\": 723,\n", + " \"LV_DATE\": \"2022-05-30\"\n", + " }\n", + " },\n", + " {\n", + " \"Action\": \"Add\",\n", + " \"Key\": \"MzUuMzAwMDAwQQ==\",\n", + " \"Fields\": {\n", + " \"ORDER_PRC\": 35.3,\n", + " \"ORDER_SIDE\": \"ASK\",\n", + " \"NO_ORD\": 1,\n", + " \"ACC_SIZE\": 600,\n", + " \"LV_TIM_MS\": 46953855,\n", + " \"LV_TIM_MSP\": 329,\n", + " \"LV_DATE\": \"2021-07-22\"\n", + " }\n", + " },\n", + " {\n", + " \"Action\": \"Add\",\n", + " \"Key\": \"MTMuMDAwMDAwQQ==\",\n", + " \"Fields\": {\n", + " \"ORDER_PRC\": 13.0,\n", + " \"ORDER_SIDE\": \"ASK\",\n", + " \"NO_ORD\": 19,\n", + " \"ACC_SIZE\": 18500,\n", + " \"LV_TIM_MS\": 41412132,\n", + " \"LV_TIM_MSP\": 62,\n", + " \"LV_DATE\": \"2022-06-22\"\n", + " }\n", + " },\n", + " {\n", + " \"Action\": \"Add\",\n", + " \"Key\": \"Ny4xNzAwMDBB\",\n", + " \"Fields\": {\n", + " \"ORDER_PRC\": 7.17,\n", + " \"ORDER_SIDE\": \"ASK\",\n", + " \"NO_ORD\": 1,\n", + " \"ACC_SIZE\": 500,\n", + " \"LV_TIM_MS\": 50064074,\n", + " \"LV_TIM_MSP\": 504,\n", + " \"LV_DATE\": \"2022-06-22\"\n", + " }\n", + " },\n", + " {\n", + " \"Action\": \"Add\",\n", + " \"Key\": \"MjUuNjkwMDAwQQ==\",\n", + " \"Fields\": {\n", + " \"ORDER_PRC\": 25.69,\n", + " \"ORDER_SIDE\": \"ASK\",\n", + " \"NO_ORD\": 1,\n", + " \"ACC_SIZE\": 100,\n", + " \"LV_TIM_MS\": 59308636,\n", + " \"LV_TIM_MSP\": 332,\n", + " \"LV_DATE\": \"2022-06-14\"\n", + " }\n", + " },\n", + " {\n", + " \"Action\": \"Add\",\n", + " \"Key\": \"MTIuMjgwMDAwQQ==\",\n", + " \"Fields\": {\n", + " \"ORDER_PRC\": 12.28,\n", + " \"ORDER_SIDE\": \"ASK\",\n", + " \"NO_ORD\": 1,\n", + " \"ACC_SIZE\": 6000,\n", + " \"LV_TIM_MS\": 40992964,\n", + " \"LV_TIM_MSP\": 736,\n", + " \"LV_DATE\": \"2022-05-30\"\n", + " }\n", + " },\n", + " {\n", + " \"Action\": \"Add\",\n", + " \"Key\": \"MTMuODgwMDAwQQ==\",\n", + " \"Fields\": {\n", + " \"ORDER_PRC\": 13.88,\n", + " \"ORDER_SIDE\": \"ASK\",\n", + " \"NO_ORD\": 3,\n", + " \"ACC_SIZE\": 500,\n", + " \"LV_TIM_MS\": 52440603,\n", + " \"LV_TIM_MSP\": 738,\n", + " \"LV_DATE\": \"2022-05-26\"\n", + " }\n", + " },\n", + " {\n", + " \"Action\": \"Add\",\n", + " \"Key\": \"MTAuNTIwMDAwQQ==\",\n", + " \"Fields\": {\n", + " \"ORDER_PRC\": 10.52,\n", + " \"ORDER_SIDE\": \"ASK\",\n", + " \"NO_ORD\": 2,\n", + " \"ACC_SIZE\": 200,\n", + " \"LV_TIM_MS\": 39662350,\n", + " \"LV_TIM_MSP\": 873,\n", + " \"LV_DATE\": \"2022-06-22\"\n", + " }\n", + " },\n", + " {\n", + " \"Action\": \"Add\",\n", + " \"Key\": \"MTkuOTUwMDAwQQ==\",\n", + " \"Fields\": {\n", + " \"ORDER_PRC\": 19.95,\n", + " \"ORDER_SIDE\": \"ASK\",\n", + " \"NO_ORD\": 2,\n", + " \"ACC_SIZE\": 1000,\n", + " \"LV_TIM_MS\": 51358894,\n", + " \"LV_TIM_MSP\": 507,\n", + " \"LV_DATE\": \"2022-05-20\"\n", + " }\n", + " },\n", + " {\n", + " \"Action\": \"Add\",\n", + " \"Key\": \"MTIuNTEwMDAwQQ==\",\n", + " \"Fields\": {\n", + " \"ORDER_PRC\": 12.51,\n", + " \"ORDER_SIDE\": \"ASK\",\n", + " \"NO_ORD\": 1,\n", + " \"ACC_SIZE\": 100,\n", + " \"LV_TIM_MS\": 39660314,\n", + " \"LV_TIM_MSP\": 52,\n", + " \"LV_DATE\": \"2022-06-15\"\n", + " }\n", + " },\n", + " {\n", + " \"Action\": \"Add\",\n", + " \"Key\": \"Ni4yNDAwMDBC\",\n", + " \"Fields\": {\n", + " \"ORDER_PRC\": 6.24,\n", + " \"ORDER_SIDE\": \"BID\",\n", + " \"NO_ORD\": 2,\n", + " \"ACC_SIZE\": 1700,\n", + " \"LV_TIM_MS\": 41484092,\n", + " \"LV_TIM_MSP\": 253,\n", + " \"LV_DATE\": \"2022-06-13\"\n", + " }\n", + " },\n", + " {\n", + " \"Action\": \"Add\",\n", + " \"Key\": \"MTIuOTUwMDAwQQ==\",\n", + " \"Fields\": {\n", + " \"ORDER_PRC\": 12.95,\n", + " \"ORDER_SIDE\": \"ASK\",\n", + " \"NO_ORD\": 1,\n", + " \"ACC_SIZE\": 9100,\n", + " \"LV_TIM_MS\": 40923930,\n", + " \"LV_TIM_MSP\": 740,\n", + " \"LV_DATE\": \"2022-05-30\"\n", + " }\n", + " },\n", + " {\n", + " \"Action\": \"Add\",\n", + " \"Key\": \"MTQuNTAwMDAwQQ==\",\n", + " \"Fields\": {\n", + " \"ORDER_PRC\": 14.5,\n", + " \"ORDER_SIDE\": \"ASK\",\n", + " \"NO_ORD\": 5,\n", + " \"ACC_SIZE\": 8800,\n", + " \"LV_TIM_MS\": 43588257,\n", + " \"LV_TIM_MSP\": 585,\n", + " \"LV_DATE\": \"2022-06-22\"\n", + " }\n", + " },\n", + " {\n", + " \"Action\": \"Add\",\n", + " \"Key\": \"Ny4wNzAwMDBB\",\n", + " \"Fields\": {\n", + " \"ORDER_PRC\": 7.07,\n", + " \"ORDER_SIDE\": \"ASK\",\n", + " \"NO_ORD\": 2,\n", + " \"ACC_SIZE\": 500,\n", + " \"LV_TIM_MS\": 50225971,\n", + " \"LV_TIM_MSP\": 269,\n", + " \"LV_DATE\": \"2022-06-22\"\n", + " }\n", + " },\n", + " {\n", + " \"Action\": \"Add\",\n", + " \"Key\": \"OC42NzAwMDBB\",\n", + " \"Fields\": {\n", + " \"ORDER_PRC\": 8.67,\n", + " \"ORDER_SIDE\": \"ASK\",\n", + " \"NO_ORD\": 1,\n", + " \"ACC_SIZE\": 2500,\n", + " \"LV_TIM_MS\": 44157654,\n", + " \"LV_TIM_MSP\": 95,\n", + " \"LV_DATE\": \"2022-06-15\"\n", + " }\n", + " },\n", + " {\n", + " \"Action\": \"Add\",\n", + " \"Key\": \"OS4wNjAwMDBB\",\n", + " \"Fields\": {\n", + " \"ORDER_PRC\": 9.06,\n", + " \"ORDER_SIDE\": \"ASK\",\n", + " \"NO_ORD\": 1,\n", + " \"ACC_SIZE\": 1300,\n", + " \"LV_TIM_MS\": 40995922,\n", + " \"LV_TIM_MSP\": 545,\n", + " \"LV_DATE\": \"2022-05-30\"\n", + " }\n", + " },\n", + " {\n", + " \"Action\": \"Add\",\n", + " \"Key\": \"MTAuODYwMDAwQQ==\",\n", + " \"Fields\": {\n", + " \"ORDER_PRC\": 10.86,\n", + " \"ORDER_SIDE\": \"ASK\",\n", + " \"NO_ORD\": 1,\n", + " \"ACC_SIZE\": 100,\n", + " \"LV_TIM_MS\": 59138011,\n", + " \"LV_TIM_MSP\": 837,\n", + " \"LV_DATE\": \"2022-06-09\"\n", + " }\n", + " },\n", + " {\n", + " \"Action\": \"Add\",\n", + " \"Key\": \"MTkuODUwMDAwQQ==\",\n", + " \"Fields\": {\n", + " \"ORDER_PRC\": 19.85,\n", + " \"ORDER_SIDE\": \"ASK\",\n", + " \"NO_ORD\": 1,\n", + " \"ACC_SIZE\": 200,\n", + " \"LV_TIM_MS\": 39613568,\n", + " \"LV_TIM_MSP\": 801,\n", + " \"LV_DATE\": \"2022-03-28\"\n", + " }\n", + " },\n", + " {\n", + " \"Action\": \"Add\",\n", + " \"Key\": \"MTEuMjUwMDAwQQ==\",\n", + " \"Fields\": {\n", + " \"ORDER_PRC\": 11.25,\n", + " \"ORDER_SIDE\": \"ASK\",\n", + " \"NO_ORD\": 2,\n", + " \"ACC_SIZE\": 2500,\n", + " \"LV_TIM_MS\": 41056875,\n", + " \"LV_TIM_MSP\": 305,\n", + " \"LV_DATE\": \"2022-06-09\"\n", + " }\n", + " },\n", + " {\n", + " \"Action\": \"Add\",\n", + " \"Key\": \"NC44MDAwMDBC\",\n", + " \"Fields\": {\n", + " \"ORDER_PRC\": 4.8,\n", + " \"ORDER_SIDE\": \"BID\",\n", + " \"NO_ORD\": 2,\n", + " \"ACC_SIZE\": 300,\n", + " \"LV_TIM_MS\": 48537728,\n", + " \"LV_TIM_MSP\": 320,\n", + " \"LV_DATE\": \"2022-06-22\"\n", + " }\n", + " },\n", + " {\n", + " \"Action\": \"Add\",\n", + " \"Key\": \"MTQuNDAwMDAwQQ==\",\n", + " \"Fields\": {\n", + " \"ORDER_PRC\": 14.4,\n", + " \"ORDER_SIDE\": \"ASK\",\n", + " \"NO_ORD\": 2,\n", + " \"ACC_SIZE\": 200,\n", + " \"LV_TIM_MS\": 41402016,\n", + " \"LV_TIM_MSP\": 19,\n", + " \"LV_DATE\": \"2022-06-22\"\n", + " }\n", + " },\n", + " {\n", + " \"Action\": \"Add\",\n", + " \"Key\": \"OC41NzAwMDBB\",\n", + " \"Fields\": {\n", + " \"ORDER_PRC\": 8.57,\n", + " \"ORDER_SIDE\": \"ASK\",\n", + " \"NO_ORD\": 4,\n", + " \"ACC_SIZE\": 1300,\n", + " \"LV_TIM_MS\": 59164318,\n", + " \"LV_TIM_MSP\": 614,\n", + " \"LV_DATE\": \"2022-05-31\"\n", + " }\n", + " },\n", + " {\n", + " \"Action\": \"Add\",\n", + " \"Key\": \"MTQuODQwMDAwQQ==\",\n", + " \"Fields\": {\n", + " \"ORDER_PRC\": 14.84,\n", + " \"ORDER_SIDE\": \"ASK\",\n", + " \"NO_ORD\": 1,\n", + " \"ACC_SIZE\": 300,\n", + " \"LV_TIM_MS\": 48637622,\n", + " \"LV_TIM_MSP\": 334,\n", + " \"LV_DATE\": \"2022-04-28\"\n", + " }\n", + " },\n", + " {\n", + " \"Action\": \"Add\",\n", + " \"Key\": \"MTkuNzUwMDAwQQ==\",\n", + " \"Fields\": {\n", + " \"ORDER_PRC\": 19.75,\n", + " \"ORDER_SIDE\": \"ASK\",\n", + " \"NO_ORD\": 5,\n", + " \"ACC_SIZE\": 33400,\n", + " \"LV_TIM_MS\": 56548396,\n", + " \"LV_TIM_MSP\": 312,\n", + " \"LV_DATE\": \"2022-05-04\"\n", + " }\n", + " },\n", + " {\n", + " \"Action\": \"Add\",\n", + " \"Key\": \"MjIuMTUwMDAwQQ==\",\n", + " \"Fields\": {\n", + " \"ORDER_PRC\": 22.15,\n", + " \"ORDER_SIDE\": \"ASK\",\n", + " \"NO_ORD\": 2,\n", + " \"ACC_SIZE\": 500,\n", + " \"LV_TIM_MS\": 41402219,\n", + " \"LV_TIM_MSP\": 61,\n", + " \"LV_DATE\": \"2022-06-22\"\n", + " }\n", + " },\n", + " {\n", + " \"Action\": \"Add\",\n", + " \"Key\": \"Ny4yMDAwMDBB\",\n", + " \"Fields\": {\n", + " \"ORDER_PRC\": 7.2,\n", + " \"ORDER_SIDE\": \"ASK\",\n", + " \"NO_ORD\": 2,\n", + " \"ACC_SIZE\": 1100,\n", + " \"LV_TIM_MS\": 48818033,\n", + " \"LV_TIM_MSP\": 302,\n", + " \"LV_DATE\": \"2022-06-22\"\n", + " }\n", + " },\n", + " {\n", + " \"Action\": \"Add\",\n", + " \"Key\": \"NS42NTAwMDBC\",\n", + " \"Fields\": {\n", + " \"ORDER_PRC\": 5.65,\n", + " \"ORDER_SIDE\": \"BID\",\n", + " \"NO_ORD\": 2,\n", + " \"ACC_SIZE\": 700,\n", + " \"LV_TIM_MS\": 40925912,\n", + " \"LV_TIM_MSP\": 373,\n", + " \"LV_DATE\": \"2022-05-30\"\n", + " }\n", + " },\n", + " {\n", + " \"Action\": \"Add\",\n", + " \"Key\": \"Ni4wNDAwMDBC\",\n", + " \"Fields\": {\n", + " \"ORDER_PRC\": 6.04,\n", + " \"ORDER_SIDE\": \"BID\",\n", + " \"NO_ORD\": 1,\n", + " \"ACC_SIZE\": 100,\n", + " \"LV_TIM_MS\": 71661674,\n", + " \"LV_TIM_MSP\": 597,\n", + " \"LV_DATE\": \"2022-05-12\"\n", + " }\n", + " },\n", + " {\n", + " \"Action\": \"Add\",\n", + " \"Key\": \"MTIuNzUwMDAwQQ==\",\n", + " \"Fields\": {\n", + " \"ORDER_PRC\": 12.75,\n", + " \"ORDER_SIDE\": \"ASK\",\n", + " \"NO_ORD\": 2,\n", + " \"ACC_SIZE\": 3500,\n", + " \"LV_TIM_MS\": 58320856,\n", + " \"LV_TIM_MSP\": 820,\n", + " \"LV_DATE\": \"2022-05-27\"\n", + " }\n", + " },\n", + " {\n", + " \"Action\": \"Add\",\n", + " \"Key\": \"NC43MDAwMDBC\",\n", + " \"Fields\": {\n", + " \"ORDER_PRC\": 4.7,\n", + " \"ORDER_SIDE\": \"BID\",\n", + " \"NO_ORD\": 1,\n", + " \"ACC_SIZE\": 100,\n", + " \"LV_TIM_MS\": 40718906,\n", + " \"LV_TIM_MSP\": 256,\n", + " \"LV_DATE\": \"2022-06-17\"\n", + " }\n", + " },\n", + " {\n", + " \"Action\": \"Add\",\n", + " \"Key\": \"Ni40ODAwMDBC\",\n", + " \"Fields\": {\n", + " \"ORDER_PRC\": 6.48,\n", + " \"ORDER_SIDE\": \"BID\",\n", + " \"NO_ORD\": 8,\n", + " \"ACC_SIZE\": 20200,\n", + " \"LV_TIM_MS\": 48876092,\n", + " \"LV_TIM_MSP\": 748,\n", + " \"LV_DATE\": \"2022-06-22\"\n", + " }\n", + " },\n", + " {\n", + " \"Action\": \"Add\",\n", + " \"Key\": \"MTQuMzAwMDAwQQ==\",\n", + " \"Fields\": {\n", + " \"ORDER_PRC\": 14.3,\n", + " \"ORDER_SIDE\": \"ASK\",\n", + " \"NO_ORD\": 1,\n", + " \"ACC_SIZE\": 700,\n", + " \"LV_TIM_MS\": 44065233,\n", + " \"LV_TIM_MSP\": 897,\n", + " \"LV_DATE\": \"2022-05-02\"\n", + " }\n", + " },\n", + " {\n", + " \"Action\": \"Add\",\n", + " \"Key\": \"MTUuOTAwMDAwQQ==\",\n", + " \"Fields\": {\n", + " \"ORDER_PRC\": 15.9,\n", + " \"ORDER_SIDE\": \"ASK\",\n", + " \"NO_ORD\": 1,\n", + " \"ACC_SIZE\": 300,\n", + " \"LV_TIM_MS\": 41402019,\n", + " \"LV_TIM_MSP\": 26,\n", + " \"LV_DATE\": \"2022-06-22\"\n", + " }\n", + " },\n", + " {\n", + " \"Action\": \"Add\",\n", + " \"Key\": \"MjYuMTMwMDAwQQ==\",\n", + " \"Fields\": {\n", + " \"ORDER_PRC\": 26.13,\n", + " \"ORDER_SIDE\": \"ASK\",\n", + " \"NO_ORD\": 1,\n", + " \"ACC_SIZE\": 100,\n", + " \"LV_TIM_MS\": 41412130,\n", + " \"LV_TIM_MSP\": 30,\n", + " \"LV_DATE\": \"2022-06-22\"\n", + " }\n", + " },\n", + " {\n", + " \"Action\": \"Add\",\n", + " \"Key\": \"MTMuMTYwMDAwQQ==\",\n", + " \"Fields\": {\n", + " \"ORDER_PRC\": 13.16,\n", + " \"ORDER_SIDE\": \"ASK\",\n", + " \"NO_ORD\": 1,\n", + " \"ACC_SIZE\": 100,\n", + " \"LV_TIM_MS\": 51661382,\n", + " \"LV_TIM_MSP\": 155,\n", + " \"LV_DATE\": \"2022-03-28\"\n", + " }\n", + " },\n", + " {\n", + " \"Action\": \"Add\",\n", + " \"Key\": \"NS41NTAwMDBC\",\n", + " \"Fields\": {\n", + " \"ORDER_PRC\": 5.55,\n", + " \"ORDER_SIDE\": \"BID\",\n", + " \"NO_ORD\": 4,\n", + " \"ACC_SIZE\": 4700,\n", + " \"LV_TIM_MS\": 48662521,\n", + " \"LV_TIM_MSP\": 603,\n", + " \"LV_DATE\": \"2022-06-13\"\n", + " }\n", + " },\n", + " {\n", + " \"Action\": \"Add\",\n", + " \"Key\": \"Ny4xMDAwMDBB\",\n", + " \"Fields\": {\n", + " \"ORDER_PRC\": 7.1,\n", + " \"ORDER_SIDE\": \"ASK\",\n", + " \"NO_ORD\": 7,\n", + " \"ACC_SIZE\": 4700,\n", + " \"LV_TIM_MS\": 50247390,\n", + " \"LV_TIM_MSP\": 149,\n", + " \"LV_DATE\": \"2022-06-22\"\n", + " }\n", + " },\n", + " {\n", + " \"Action\": \"Add\",\n", + " \"Key\": \"MTQuMjAwMDAwQQ==\",\n", + " \"Fields\": {\n", + " \"ORDER_PRC\": 14.2,\n", + " \"ORDER_SIDE\": \"ASK\",\n", + " \"NO_ORD\": 3,\n", + " \"ACC_SIZE\": 2700,\n", + " \"LV_TIM_MS\": 75592228,\n", + " \"LV_TIM_MSP\": 294,\n", + " \"LV_DATE\": \"2022-02-18\"\n", + " }\n", + " },\n", + " {\n", + " \"Action\": \"Add\",\n", + " \"Key\": \"Ny45ODAwMDBB\",\n", + " \"Fields\": {\n", + " \"ORDER_PRC\": 7.98,\n", + " \"ORDER_SIDE\": \"ASK\",\n", + " \"NO_ORD\": 3,\n", + " \"ACC_SIZE\": 2400,\n", + " \"LV_TIM_MS\": 54837953,\n", + " \"LV_TIM_MSP\": 479,\n", + " \"LV_DATE\": \"2022-05-31\"\n", + " }\n", + " },\n", + " {\n", + " \"Action\": \"Add\",\n", + " \"Key\": \"MzkuMDAwMDAwQQ==\",\n", + " \"Fields\": {\n", + " \"ORDER_PRC\": 39.0,\n", + " \"ORDER_SIDE\": \"ASK\",\n", + " \"NO_ORD\": 1,\n", + " \"ACC_SIZE\": 500,\n", + " \"LV_TIM_MS\": 41402015,\n", + " \"LV_TIM_MSP\": 24,\n", + " \"LV_DATE\": \"2022-06-22\"\n", + " }\n", + " },\n", + " {\n", + " \"Action\": \"Add\",\n", + " \"Key\": \"MTEuMDcwMDAwQQ==\",\n", + " \"Fields\": {\n", + " \"ORDER_PRC\": 11.07,\n", + " \"ORDER_SIDE\": \"ASK\",\n", + " \"NO_ORD\": 1,\n", + " \"ACC_SIZE\": 20000,\n", + " \"LV_TIM_MS\": 39660230,\n", + " \"LV_TIM_MSP\": 537,\n", + " \"LV_DATE\": \"2022-06-15\"\n", + " }\n", + " },\n", + " {\n", + " \"Action\": \"Add\",\n", + " \"Key\": \"Ni4zODAwMDBC\",\n", + " \"Fields\": {\n", + " \"ORDER_PRC\": 6.38,\n", + " \"ORDER_SIDE\": \"BID\",\n", + " \"NO_ORD\": 3,\n", + " \"ACC_SIZE\": 6100,\n", + " \"LV_TIM_MS\": 39630641,\n", + " \"LV_TIM_MSP\": 321,\n", + " \"LV_DATE\": \"2022-06-07\"\n", + " }\n", + " },\n", + " {\n", + " \"Action\": \"Add\",\n", + " \"Key\": \"MzQuOTcwMDAwQQ==\",\n", + " \"Fields\": {\n", + " \"ORDER_PRC\": 34.97,\n", + " \"ORDER_SIDE\": \"ASK\",\n", + " \"NO_ORD\": 1,\n", + " \"ACC_SIZE\": 3500,\n", + " \"LV_TIM_MS\": 40917625,\n", + " \"LV_TIM_MSP\": 269,\n", + " \"LV_DATE\": \"2022-05-30\"\n", + " }\n", + " },\n", + " {\n", + " \"Action\": \"Add\",\n", + " \"Key\": \"MjEuNTYwMDAwQQ==\",\n", + " \"Fields\": {\n", + " \"ORDER_PRC\": 21.56,\n", + " \"ORDER_SIDE\": \"ASK\",\n", + " \"NO_ORD\": 1,\n", + " \"ACC_SIZE\": 100,\n", + " \"LV_TIM_MS\": 39611796,\n", + " \"LV_TIM_MSP\": 326,\n", + " \"LV_DATE\": \"2022-05-19\"\n", + " }\n", + " },\n", + " {\n", + " \"Action\": \"Add\",\n", + " \"Key\": \"MC4xMDAwMDBC\",\n", + " \"Fields\": {\n", + " \"ORDER_PRC\": 0.1,\n", + " \"ORDER_SIDE\": \"BID\",\n", + " \"NO_ORD\": 2,\n", + " \"ACC_SIZE\": 5100,\n", + " \"LV_TIM_MS\": 70204622,\n", + " \"LV_TIM_MSP\": 880,\n", + " \"LV_DATE\": \"2022-06-21\"\n", + " }\n", + " },\n", + " {\n", + " \"Action\": \"Add\",\n", + " \"Key\": \"MzIuMDAwMDAwQQ==\",\n", + " \"Fields\": {\n", + " \"ORDER_PRC\": 32.0,\n", + " \"ORDER_SIDE\": \"ASK\",\n", + " \"NO_ORD\": 7,\n", + " \"ACC_SIZE\": 4000,\n", + " \"LV_TIM_MS\": 41402219,\n", + " \"LV_TIM_MSP\": 63,\n", + " \"LV_DATE\": \"2022-06-22\"\n", + " }\n", + " },\n", + " {\n", + " \"Action\": \"Add\",\n", + " \"Key\": \"NS4wMTAwMDBC\",\n", + " \"Fields\": {\n", + " \"ORDER_PRC\": 5.01,\n", + " \"ORDER_SIDE\": \"BID\",\n", + " \"NO_ORD\": 4,\n", + " \"ACC_SIZE\": 1800,\n", + " \"LV_TIM_MS\": 44258681,\n", + " \"LV_TIM_MSP\": 39,\n", + " \"LV_DATE\": \"2022-05-10\"\n", + " }\n", + " },\n", + " {\n", + " \"Action\": \"Add\",\n", + " \"Key\": \"MjIuMzkwMDAwQQ==\",\n", + " \"Fields\": {\n", + " \"ORDER_PRC\": 22.39,\n", + " \"ORDER_SIDE\": \"ASK\",\n", + " \"NO_ORD\": 2,\n", + " \"ACC_SIZE\": 8000,\n", + " \"LV_TIM_MS\": 44938619,\n", + " \"LV_TIM_MSP\": 264,\n", + " \"LV_DATE\": \"2022-05-26\"\n", + " }\n", + " },\n", + " {\n", + " \"Action\": \"Add\",\n", + " \"Key\": \"NS40NTAwMDBC\",\n", + " \"Fields\": {\n", + " \"ORDER_PRC\": 5.45,\n", + " \"ORDER_SIDE\": \"BID\",\n", + " \"NO_ORD\": 1,\n", + " \"ACC_SIZE\": 100,\n", + " \"LV_TIM_MS\": 61132971,\n", + " \"LV_TIM_MSP\": 880,\n", + " \"LV_DATE\": \"2022-06-16\"\n", + " }\n", + " },\n", + " {\n", + " \"Action\": \"Add\",\n", + " \"Key\": \"Ny4wMDAwMDBB\",\n", + " \"Fields\": {\n", + " \"ORDER_PRC\": 7.0,\n", + " \"ORDER_SIDE\": \"ASK\",\n", + " \"NO_ORD\": 8,\n", + " \"ACC_SIZE\": 7100,\n", + " \"LV_TIM_MS\": 50342518,\n", + " \"LV_TIM_MSP\": 135,\n", + " \"LV_DATE\": \"2022-06-22\"\n", + " }\n", + " },\n", + " {\n", + " \"Action\": \"Add\",\n", + " \"Key\": \"OC42MDAwMDBB\",\n", + " \"Fields\": {\n", + " \"ORDER_PRC\": 8.6,\n", + " \"ORDER_SIDE\": \"ASK\",\n", + " \"NO_ORD\": 5,\n", + " \"ACC_SIZE\": 5400,\n", + " \"LV_TIM_MS\": 66305272,\n", + " \"LV_TIM_MSP\": 67,\n", + " \"LV_DATE\": \"2022-05-27\"\n", + " }\n", + " },\n", + " {\n", + " \"Action\": \"Add\",\n", + " \"Key\": \"MjUuMTAwMDAwQQ==\",\n", + " \"Fields\": {\n", + " \"ORDER_PRC\": 25.1,\n", + " \"ORDER_SIDE\": \"ASK\",\n", + " \"NO_ORD\": 1,\n", + " \"ACC_SIZE\": 300,\n", + " \"LV_TIM_MS\": 60629623,\n", + " \"LV_TIM_MSP\": 865,\n", + " \"LV_DATE\": \"2022-05-16\"\n", + " }\n", + " },\n", + " {\n", + " \"Action\": \"Add\",\n", + " \"Key\": \"MjMuOTkwMDAwQQ==\",\n", + " \"Fields\": {\n", + " \"ORDER_PRC\": 23.99,\n", + " \"ORDER_SIDE\": \"ASK\",\n", + " \"NO_ORD\": 1,\n", + " \"ACC_SIZE\": 400,\n", + " \"LV_TIM_MS\": 42392300,\n", + " \"LV_TIM_MSP\": 690,\n", + " \"LV_DATE\": \"2022-05-30\"\n", + " }\n", + " },\n", + " {\n", + " \"Action\": \"Add\",\n", + " \"Key\": \"Ny44ODAwMDBB\",\n", + " \"Fields\": {\n", + " \"ORDER_PRC\": 7.88,\n", + " \"ORDER_SIDE\": \"ASK\",\n", + " \"NO_ORD\": 2,\n", + " \"ACC_SIZE\": 300,\n", + " \"LV_TIM_MS\": 41412129,\n", + " \"LV_TIM_MSP\": 29,\n", + " \"LV_DATE\": \"2022-06-22\"\n", + " }\n", + " },\n", + " {\n", + " \"Action\": \"Add\",\n", + " \"Key\": \"MjQuMzgwMDAwQQ==\",\n", + " \"Fields\": {\n", + " \"ORDER_PRC\": 24.38,\n", + " \"ORDER_SIDE\": \"ASK\",\n", + " \"NO_ORD\": 2,\n", + " \"ACC_SIZE\": 5100,\n", + " \"LV_TIM_MS\": 43273891,\n", + " \"LV_TIM_MSP\": 771,\n", + " \"LV_DATE\": \"2022-05-30\"\n", + " }\n", + " },\n", + " {\n", + " \"Action\": \"Add\",\n", + " \"Key\": \"MjUuOTgwMDAwQQ==\",\n", + " \"Fields\": {\n", + " \"ORDER_PRC\": 25.98,\n", + " \"ORDER_SIDE\": \"ASK\",\n", + " \"NO_ORD\": 2,\n", + " \"ACC_SIZE\": 22000,\n", + " \"LV_TIM_MS\": 53670234,\n", + " \"LV_TIM_MSP\": 337,\n", + " \"LV_DATE\": \"2021-10-05\"\n", + " }\n", + " },\n", + " {\n", + " \"Action\": \"Add\",\n", + " \"Key\": \"MTUuNzAwMDAwQQ==\",\n", + " \"Fields\": {\n", + " \"ORDER_PRC\": 15.7,\n", + " \"ORDER_SIDE\": \"ASK\",\n", + " \"NO_ORD\": 1,\n", + " \"ACC_SIZE\": 800,\n", + " \"LV_TIM_MS\": 63623533,\n", + " \"LV_TIM_MSP\": 202,\n", + " \"LV_DATE\": \"2022-05-30\"\n", + " }\n", + " },\n", + " {\n", + " \"Action\": \"Add\",\n", + " \"Key\": \"OS44NzAwMDBB\",\n", + " \"Fields\": {\n", + " \"ORDER_PRC\": 9.87,\n", + " \"ORDER_SIDE\": \"ASK\",\n", + " \"NO_ORD\": 1,\n", + " \"ACC_SIZE\": 300,\n", + " \"LV_TIM_MS\": 40991617,\n", + " \"LV_TIM_MSP\": 59,\n", + " \"LV_DATE\": \"2022-05-30\"\n", + " }\n", + " },\n", + " {\n", + " \"Action\": \"Add\",\n", + " \"Key\": \"Ni45NTAwMDBB\",\n", + " \"Fields\": {\n", + " \"ORDER_PRC\": 6.95,\n", + " \"ORDER_SIDE\": \"ASK\",\n", + " \"NO_ORD\": 12,\n", + " \"ACC_SIZE\": 30200,\n", + " \"LV_TIM_MS\": 50358911,\n", + " \"LV_TIM_MSP\": 850,\n", + " \"LV_DATE\": \"2022-06-22\"\n", + " }\n", + " },\n", + " {\n", + " \"Action\": \"Add\",\n", + " \"Key\": \"MTAuMDQwMDAwQQ==\",\n", + " \"Fields\": {\n", + " \"ORDER_PRC\": 10.04,\n", + " \"ORDER_SIDE\": \"ASK\",\n", + " \"NO_ORD\": 1,\n", + " \"ACC_SIZE\": 1200,\n", + " \"LV_TIM_MS\": 61105829,\n", + " \"LV_TIM_MSP\": 355,\n", + " \"LV_DATE\": \"2022-03-29\"\n", + " }\n", + " },\n", + " {\n", + " \"Action\": \"Add\",\n", + " \"Key\": \"Ny4zNDAwMDBB\",\n", + " \"Fields\": {\n", + " \"ORDER_PRC\": 7.34,\n", + " \"ORDER_SIDE\": \"ASK\",\n", + " \"NO_ORD\": 3,\n", + " \"ACC_SIZE\": 2200,\n", + " \"LV_TIM_MS\": 39604431,\n", + " \"LV_TIM_MSP\": 927,\n", + " \"LV_DATE\": \"2022-06-22\"\n", + " }\n", + " },\n", + " {\n", + " \"Action\": \"Add\",\n", + " \"Key\": \"OC41MDAwMDBB\",\n", + " \"Fields\": {\n", + " \"ORDER_PRC\": 8.5,\n", + " \"ORDER_SIDE\": \"ASK\",\n", + " \"NO_ORD\": 15,\n", + " \"ACC_SIZE\": 36700,\n", + " \"LV_TIM_MS\": 41412131,\n", + " \"LV_TIM_MSP\": 32,\n", + " \"LV_DATE\": \"2022-06-22\"\n", + " }\n", + " },\n", + " {\n", + " \"Action\": \"Add\",\n", + " \"Key\": \"MjUuMDAwMDAwQQ==\",\n", + " \"Fields\": {\n", + " \"ORDER_PRC\": 25.0,\n", + " \"ORDER_SIDE\": \"ASK\",\n", + " \"NO_ORD\": 44,\n", + " \"ACC_SIZE\": 60600,\n", + " \"LV_TIM_MS\": 41412132,\n", + " \"LV_TIM_MSP\": 36,\n", + " \"LV_DATE\": \"2022-06-22\"\n", + " }\n", + " },\n", + " {\n", + " \"Action\": \"Add\",\n", + " \"Key\": \"MTUuMzkwMDAwQQ==\",\n", + " \"Fields\": {\n", + " \"ORDER_PRC\": 15.39,\n", + " \"ORDER_SIDE\": \"ASK\",\n", + " \"NO_ORD\": 1,\n", + " \"ACC_SIZE\": 100,\n", + " \"LV_TIM_MS\": 68915500,\n", + " \"LV_TIM_MSP\": 115,\n", + " \"LV_DATE\": \"2021-11-03\"\n", + " }\n", + " },\n", + " {\n", + " \"Action\": \"Add\",\n", + " \"Key\": \"OC45NDAwMDBB\",\n", + " \"Fields\": {\n", + " \"ORDER_PRC\": 8.94,\n", + " \"ORDER_SIDE\": \"ASK\",\n", + " \"NO_ORD\": 1,\n", + " \"ACC_SIZE\": 100,\n", + " \"LV_TIM_MS\": 55312924,\n", + " \"LV_TIM_MSP\": 311,\n", + " \"LV_DATE\": \"2022-06-02\"\n", + " }\n", + " },\n", + " {\n", + " \"Action\": \"Add\",\n", + " \"Key\": \"MTUuNjAwMDAwQQ==\",\n", + " \"Fields\": {\n", + " \"ORDER_PRC\": 15.6,\n", + " \"ORDER_SIDE\": \"ASK\",\n", + " \"NO_ORD\": 2,\n", + " \"ACC_SIZE\": 1100,\n", + " \"LV_TIM_MS\": 40323209,\n", + " \"LV_TIM_MSP\": 81,\n", + " \"LV_DATE\": \"2022-03-30\"\n", + " }\n", + " },\n", + " {\n", + " \"Action\": \"Add\",\n", + " \"Key\": \"MTYuOTkwMDAwQQ==\",\n", + " \"Fields\": {\n", + " \"ORDER_PRC\": 16.99,\n", + " \"ORDER_SIDE\": \"ASK\",\n", + " \"NO_ORD\": 1,\n", + " \"ACC_SIZE\": 100,\n", + " \"LV_TIM_MS\": 41471898,\n", + " \"LV_TIM_MSP\": 306,\n", + " \"LV_DATE\": \"2022-05-05\"\n", + " }\n", + " },\n", + " {\n", + " \"Action\": \"Add\",\n", + " \"Key\": \"OS43NzAwMDBB\",\n", + " \"Fields\": {\n", + " \"ORDER_PRC\": 9.77,\n", + " \"ORDER_SIDE\": \"ASK\",\n", + " \"NO_ORD\": 2,\n", + " \"ACC_SIZE\": 1400,\n", + " \"LV_TIM_MS\": 52697588,\n", + " \"LV_TIM_MSP\": 165,\n", + " \"LV_DATE\": \"2022-04-01\"\n", + " }\n", + " },\n", + " {\n", + " \"Action\": \"Add\",\n", + " \"Key\": \"MTEuMTAwMDAwQQ==\",\n", + " \"Fields\": {\n", + " \"ORDER_PRC\": 11.1,\n", + " \"ORDER_SIDE\": \"ASK\",\n", + " \"NO_ORD\": 3,\n", + " \"ACC_SIZE\": 1000,\n", + " \"LV_TIM_MS\": 39608529,\n", + " \"LV_TIM_MSP\": 332,\n", + " \"LV_DATE\": \"2022-06-22\"\n", + " }\n", + " },\n", + " {\n", + " \"Action\": \"Add\",\n", + " \"Key\": \"Ni40MTAwMDBC\",\n", + " \"Fields\": {\n", + " \"ORDER_PRC\": 6.41,\n", + " \"ORDER_SIDE\": \"BID\",\n", + " \"NO_ORD\": 1,\n", + " \"ACC_SIZE\": 300,\n", + " \"LV_TIM_MS\": 48485327,\n", + " \"LV_TIM_MSP\": 716,\n", + " \"LV_DATE\": \"2022-06-22\"\n", + " }\n", + " },\n", + " {\n", + " \"Action\": \"Add\",\n", + " \"Key\": \"Ni44NTAwMDBC\",\n", + " \"Fields\": {\n", + " \"ORDER_PRC\": 6.85,\n", + " \"ORDER_SIDE\": \"BID\",\n", + " \"NO_ORD\": 7,\n", + " \"ACC_SIZE\": 18800,\n", + " \"LV_TIM_MS\": 50281033,\n", + " \"LV_TIM_MSP\": 720,\n", + " \"LV_DATE\": \"2022-06-22\"\n", + " }\n", + " },\n", + " {\n", + " \"Action\": \"Add\",\n", + " \"Key\": \"OC40MDAwMDBB\",\n", + " \"Fields\": {\n", + " \"ORDER_PRC\": 8.4,\n", + " \"ORDER_SIDE\": \"ASK\",\n", + " \"NO_ORD\": 3,\n", + " \"ACC_SIZE\": 6000,\n", + " \"LV_TIM_MS\": 44180644,\n", + " \"LV_TIM_MSP\": 843,\n", + " \"LV_DATE\": \"2022-06-03\"\n", + " }\n", + " },\n", + " {\n", + " \"Action\": \"Add\",\n", + " \"Key\": \"NjUuMDAwMDAwQQ==\",\n", + " \"Fields\": {\n", + " \"ORDER_PRC\": 65.0,\n", + " \"ORDER_SIDE\": \"ASK\",\n", + " \"NO_ORD\": 1,\n", + " \"ACC_SIZE\": 3500,\n", + " \"LV_TIM_MS\": 44112980,\n", + " \"LV_TIM_MSP\": 944,\n", + " \"LV_DATE\": \"2022-05-30\"\n", + " }\n", + " },\n", + " {\n", + " \"Action\": \"Add\",\n", + " \"Key\": \"MTguMDAwMDAwQQ==\",\n", + " \"Fields\": {\n", + " \"ORDER_PRC\": 18.0,\n", + " \"ORDER_SIDE\": \"ASK\",\n", + " \"NO_ORD\": 26,\n", + " \"ACC_SIZE\": 11300,\n", + " \"LV_TIM_MS\": 41402021,\n", + " \"LV_TIM_MSP\": 32,\n", + " \"LV_DATE\": \"2022-06-22\"\n", + " }\n", + " },\n", + " {\n", + " \"Action\": \"Add\",\n", + " \"Key\": \"MjcuMzMwMDAwQQ==\",\n", + " \"Fields\": {\n", + " \"ORDER_PRC\": 27.33,\n", + " \"ORDER_SIDE\": \"ASK\",\n", + " \"NO_ORD\": 1,\n", + " \"ACC_SIZE\": 1100,\n", + " \"LV_TIM_MS\": 51976442,\n", + " \"LV_TIM_MSP\": 597,\n", + " \"LV_DATE\": \"2022-06-01\"\n", + " }\n", + " },\n", + " {\n", + " \"Action\": \"Add\",\n", + " \"Key\": \"MTMuOTcwMDAwQQ==\",\n", + " \"Fields\": {\n", + " \"ORDER_PRC\": 13.97,\n", + " \"ORDER_SIDE\": \"ASK\",\n", + " \"NO_ORD\": 1,\n", + " \"ACC_SIZE\": 200,\n", + " \"LV_TIM_MS\": 41412130,\n", + " \"LV_TIM_MSP\": 56,\n", + " \"LV_DATE\": \"2022-06-22\"\n", + " }\n", + " },\n", + " {\n", + " \"Action\": \"Add\",\n", + " \"Key\": \"NS45MjAwMDBC\",\n", + " \"Fields\": {\n", + " \"ORDER_PRC\": 5.92,\n", + " \"ORDER_SIDE\": \"BID\",\n", + " \"NO_ORD\": 1,\n", + " \"ACC_SIZE\": 200,\n", + " \"LV_TIM_MS\": 42556829,\n", + " \"LV_TIM_MSP\": 662,\n", + " \"LV_DATE\": \"2022-06-17\"\n", + " }\n", + " },\n", + " {\n", + " \"Action\": \"Add\",\n", + " \"Key\": \"OS4yNTAwMDBB\",\n", + " \"Fields\": {\n", + " \"ORDER_PRC\": 9.25,\n", + " \"ORDER_SIDE\": \"ASK\",\n", + " \"NO_ORD\": 1,\n", + " \"ACC_SIZE\": 400,\n", + " \"LV_TIM_MS\": 59894316,\n", + " \"LV_TIM_MSP\": 625,\n", + " \"LV_DATE\": \"2022-05-27\"\n", + " }\n", + " },\n", + " {\n", + " \"Action\": \"Add\",\n", + " \"Key\": \"MTEuMDAwMDAwQQ==\",\n", + " \"Fields\": {\n", + " \"ORDER_PRC\": 11.0,\n", + " \"ORDER_SIDE\": \"ASK\",\n", + " \"NO_ORD\": 9,\n", + " \"ACC_SIZE\": 4300,\n", + " \"LV_TIM_MS\": 41412125,\n", + " \"LV_TIM_MSP\": 44,\n", + " \"LV_DATE\": \"2022-06-22\"\n", + " }\n", + " },\n", + " {\n", + " \"Action\": \"Add\",\n", + " \"Key\": \"Ny45MTAwMDBB\",\n", + " \"Fields\": {\n", + " \"ORDER_PRC\": 7.91,\n", + " \"ORDER_SIDE\": \"ASK\",\n", + " \"NO_ORD\": 1,\n", + " \"ACC_SIZE\": 5000,\n", + " \"LV_TIM_MS\": 58694861,\n", + " \"LV_TIM_MSP\": 399,\n", + " \"LV_DATE\": \"2022-05-31\"\n", + " }\n", + " },\n", + " {\n", + " \"Action\": \"Add\",\n", + " \"Key\": \"MTguODgwMDAwQQ==\",\n", + " \"Fields\": {\n", + " \"ORDER_PRC\": 18.88,\n", + " \"ORDER_SIDE\": \"ASK\",\n", + " \"NO_ORD\": 1,\n", + " \"ACC_SIZE\": 100,\n", + " \"LV_TIM_MS\": 54252913,\n", + " \"LV_TIM_MSP\": 497,\n", + " \"LV_DATE\": \"2022-06-07\"\n", + " }\n", + " },\n", + " {\n", + " \"Action\": \"Add\",\n", + " \"Key\": \"OC4zMDAwMDBB\",\n", + " \"Fields\": {\n", + " \"ORDER_PRC\": 8.3,\n", + " \"ORDER_SIDE\": \"ASK\",\n", + " \"NO_ORD\": 9,\n", + " \"ACC_SIZE\": 6000,\n", + " \"LV_TIM_MS\": 39662350,\n", + " \"LV_TIM_MSP\": 903,\n", + " \"LV_DATE\": \"2022-06-22\"\n", + " }\n", + " },\n", + " {\n", + " \"Action\": \"Add\",\n", + " \"Key\": \"MTUuOTYwMDAwQQ==\",\n", + " \"Fields\": {\n", + " \"ORDER_PRC\": 15.96,\n", + " \"ORDER_SIDE\": \"ASK\",\n", + " \"NO_ORD\": 1,\n", + " \"ACC_SIZE\": 600,\n", + " \"LV_TIM_MS\": 46307954,\n", + " \"LV_TIM_MSP\": 641,\n", + " \"LV_DATE\": \"2022-06-16\"\n", + " }\n", + " },\n", + " {\n", + " \"Action\": \"Add\",\n", + " \"Key\": \"MTAuMjgwMDAwQQ==\",\n", + " \"Fields\": {\n", + " \"ORDER_PRC\": 10.28,\n", + " \"ORDER_SIDE\": \"ASK\",\n", + " \"NO_ORD\": 1,\n", + " \"ACC_SIZE\": 200,\n", + " \"LV_TIM_MS\": 39624936,\n", + " \"LV_TIM_MSP\": 236,\n", + " \"LV_DATE\": \"2022-06-14\"\n", + " }\n", + " },\n", + " {\n", + " \"Action\": \"Add\",\n", + " \"Key\": \"OS42OTAwMDBB\",\n", + " \"Fields\": {\n", + " \"ORDER_PRC\": 9.69,\n", + " \"ORDER_SIDE\": \"ASK\",\n", + " \"NO_ORD\": 2,\n", + " \"ACC_SIZE\": 8100,\n", + " \"LV_TIM_MS\": 61500311,\n", + " \"LV_TIM_MSP\": 648,\n", + " \"LV_DATE\": \"2022-04-11\"\n", + " }\n", + " },\n", + " {\n", + " \"Action\": \"Add\",\n", + " \"Key\": \"Ni43NTAwMDBC\",\n", + " \"Fields\": {\n", + " \"ORDER_PRC\": 6.75,\n", + " \"ORDER_SIDE\": \"BID\",\n", + " \"NO_ORD\": 2,\n", + " \"ACC_SIZE\": 400,\n", + " \"LV_TIM_MS\": 50004415,\n", + " \"LV_TIM_MSP\": 812,\n", + " \"LV_DATE\": \"2022-06-22\"\n", + " }\n", + " },\n", + " {\n", + " \"Action\": \"Add\",\n", + " \"Key\": \"MTEuODgwMDAwQQ==\",\n", + " \"Fields\": {\n", + " \"ORDER_PRC\": 11.88,\n", + " \"ORDER_SIDE\": \"ASK\",\n", + " \"NO_ORD\": 2,\n", + " \"ACC_SIZE\": 1400,\n", + " \"LV_TIM_MS\": 44269530,\n", + " \"LV_TIM_MSP\": 599,\n", + " \"LV_DATE\": \"2022-05-16\"\n", + " }\n", + " },\n", + " {\n", + " \"Action\": \"Add\",\n", + " \"Key\": \"OC43NDAwMDBB\",\n", + " \"Fields\": {\n", + " \"ORDER_PRC\": 8.74,\n", + " \"ORDER_SIDE\": \"ASK\",\n", + " \"NO_ORD\": 1,\n", + " \"ACC_SIZE\": 100,\n", + " \"LV_TIM_MS\": 42391700,\n", + " \"LV_TIM_MSP\": 665,\n", + " \"LV_DATE\": \"2022-05-30\"\n", + " }\n", + " },\n", + " {\n", + " \"Action\": \"Add\",\n", + " \"Key\": \"OS45MDAwMDBB\",\n", + " \"Fields\": {\n", + " \"ORDER_PRC\": 9.9,\n", + " \"ORDER_SIDE\": \"ASK\",\n", + " \"NO_ORD\": 7,\n", + " \"ACC_SIZE\": 8600,\n", + " \"LV_TIM_MS\": 39661601,\n", + " \"LV_TIM_MSP\": 14,\n", + " \"LV_DATE\": \"2022-06-22\"\n", + " }\n", + " },\n", + " {\n", + " \"Action\": \"Add\",\n", + " \"Key\": \"MTYuMzUwMDAwQQ==\",\n", + " \"Fields\": {\n", + " \"ORDER_PRC\": 16.35,\n", + " \"ORDER_SIDE\": \"ASK\",\n", + " \"NO_ORD\": 1,\n", + " \"ACC_SIZE\": 100,\n", + " \"LV_TIM_MS\": 41402019,\n", + " \"LV_TIM_MSP\": 42,\n", + " \"LV_DATE\": \"2022-06-22\"\n", + " }\n", + " },\n", + " {\n", + " \"Action\": \"Add\",\n", + " \"Key\": \"NS4xNzAwMDBC\",\n", + " \"Fields\": {\n", + " \"ORDER_PRC\": 5.17,\n", + " \"ORDER_SIDE\": \"BID\",\n", + " \"NO_ORD\": 1,\n", + " \"ACC_SIZE\": 400,\n", + " \"LV_TIM_MS\": 39611363,\n", + " \"LV_TIM_MSP\": 268,\n", + " \"LV_DATE\": \"2022-06-14\"\n", + " }\n", + " },\n", + " {\n", + " \"Action\": \"Add\",\n", + " \"Key\": \"MTIuMjcwMDAwQQ==\",\n", + " \"Fields\": {\n", + " \"ORDER_PRC\": 12.27,\n", + " \"ORDER_SIDE\": \"ASK\",\n", + " \"NO_ORD\": 2,\n", + " \"ACC_SIZE\": 400,\n", + " \"LV_TIM_MS\": 39660623,\n", + " \"LV_TIM_MSP\": 256,\n", + " \"LV_DATE\": \"2022-06-22\"\n", + " }\n", + " },\n", + " {\n", + " \"Action\": \"Add\",\n", + " \"Key\": \"MzQuMTUwMDAwQQ==\",\n", + " \"Fields\": {\n", + " \"ORDER_PRC\": 34.15,\n", + " \"ORDER_SIDE\": \"ASK\",\n", + " \"NO_ORD\": 1,\n", + " \"ACC_SIZE\": 5000,\n", + " \"LV_TIM_MS\": 47781368,\n", + " \"LV_TIM_MSP\": 993,\n", + " \"LV_DATE\": \"2022-02-03\"\n", + " }\n", + " },\n", + " {\n", + " \"Action\": \"Add\",\n", + " \"Key\": \"MTkuNTAwMDAwQQ==\",\n", + " \"Fields\": {\n", + " \"ORDER_PRC\": 19.5,\n", + " \"ORDER_SIDE\": \"ASK\",\n", + " \"NO_ORD\": 2,\n", + " \"ACC_SIZE\": 300,\n", + " \"LV_TIM_MS\": 44114131,\n", + " \"LV_TIM_MSP\": 321,\n", + " \"LV_DATE\": \"2022-06-20\"\n", + " }\n", + " },\n", + " {\n", + " \"Action\": \"Add\",\n", + " \"Key\": \"OS4xNTAwMDBB\",\n", + " \"Fields\": {\n", + " \"ORDER_PRC\": 9.15,\n", + " \"ORDER_SIDE\": \"ASK\",\n", + " \"NO_ORD\": 2,\n", + " \"ACC_SIZE\": 600,\n", + " \"LV_TIM_MS\": 58664866,\n", + " \"LV_TIM_MSP\": 186,\n", + " \"LV_DATE\": \"2022-04-18\"\n", + " }\n", + " },\n", + " {\n", + " \"Action\": \"Add\",\n", + " \"Key\": \"MTAuOTUwMDAwQQ==\",\n", + " \"Fields\": {\n", + " \"ORDER_PRC\": 10.95,\n", + " \"ORDER_SIDE\": \"ASK\",\n", + " \"NO_ORD\": 3,\n", + " \"ACC_SIZE\": 700,\n", + " \"LV_TIM_MS\": 41402218,\n", + " \"LV_TIM_MSP\": 53,\n", + " \"LV_DATE\": \"2022-06-22\"\n", + " }\n", + " },\n", + " {\n", + " \"Action\": \"Add\",\n", + " \"Key\": \"NTguMDAwMDAwQQ==\",\n", + " \"Fields\": {\n", + " \"ORDER_PRC\": 58.0,\n", + " \"ORDER_SIDE\": \"ASK\",\n", + " \"NO_ORD\": 1,\n", + " \"ACC_SIZE\": 900,\n", + " \"LV_TIM_MS\": 40984268,\n", + " \"LV_TIM_MSP\": 264,\n", + " \"LV_DATE\": \"2022-05-30\"\n", + " }\n", + " },\n", + " {\n", + " \"Action\": \"Add\",\n", + " \"Key\": \"MzguMTEwMDAwQQ==\",\n", + " \"Fields\": {\n", + " \"ORDER_PRC\": 38.11,\n", + " \"ORDER_SIDE\": \"ASK\",\n", + " \"NO_ORD\": 1,\n", + " \"ACC_SIZE\": 1100,\n", + " \"LV_TIM_MS\": 40927067,\n", + " \"LV_TIM_MSP\": 628,\n", + " \"LV_DATE\": \"2022-05-30\"\n", + " }\n", + " },\n", + " {\n", + " \"Action\": \"Add\",\n", + " \"Key\": \"MTIuNTAwMDAwQQ==\",\n", + " \"Fields\": {\n", + " \"ORDER_PRC\": 12.5,\n", + " \"ORDER_SIDE\": \"ASK\",\n", + " \"NO_ORD\": 11,\n", + " \"ACC_SIZE\": 6500,\n", + " \"LV_TIM_MS\": 62245852,\n", + " \"LV_TIM_MSP\": 737,\n", + " \"LV_DATE\": \"2022-05-03\"\n", + " }\n", + " },\n", + " {\n", + " \"Action\": \"Add\",\n", + " \"Key\": \"MTIuOTQwMDAwQQ==\",\n", + " \"Fields\": {\n", + " \"ORDER_PRC\": 12.94,\n", + " \"ORDER_SIDE\": \"ASK\",\n", + " \"NO_ORD\": 1,\n", + " \"ACC_SIZE\": 500,\n", + " \"LV_TIM_MS\": 41402018,\n", + " \"LV_TIM_MSP\": 19,\n", + " \"LV_DATE\": \"2022-06-22\"\n", + " }\n", + " },\n", + " {\n", + " \"Action\": \"Add\",\n", + " \"Key\": \"OS44MDAwMDBB\",\n", + " \"Fields\": {\n", + " \"ORDER_PRC\": 9.8,\n", + " \"ORDER_SIDE\": \"ASK\",\n", + " \"NO_ORD\": 6,\n", + " \"ACC_SIZE\": 11600,\n", + " \"LV_TIM_MS\": 41402217,\n", + " \"LV_TIM_MSP\": 50,\n", + " \"LV_DATE\": \"2022-06-22\"\n", + " }\n", + " },\n", + " {\n", + " \"Action\": \"Add\",\n", + " \"Key\": \"MTMuMzMwMDAwQQ==\",\n", + " \"Fields\": {\n", + " \"ORDER_PRC\": 13.33,\n", + " \"ORDER_SIDE\": \"ASK\",\n", + " \"NO_ORD\": 1,\n", + " \"ACC_SIZE\": 2900,\n", + " \"LV_TIM_MS\": 56458066,\n", + " \"LV_TIM_MSP\": 218,\n", + " \"LV_DATE\": \"2022-06-03\"\n", + " }\n", + " },\n", + " {\n", + " \"Action\": \"Add\",\n", + " \"Key\": \"Ny4wNjAwMDBB\",\n", + " \"Fields\": {\n", + " \"ORDER_PRC\": 7.06,\n", + " \"ORDER_SIDE\": \"ASK\",\n", + " \"NO_ORD\": 1,\n", + " \"ACC_SIZE\": 100,\n", + " \"LV_TIM_MS\": 50174513,\n", + " \"LV_TIM_MSP\": 793,\n", + " \"LV_DATE\": \"2022-06-22\"\n", + " }\n", + " },\n", + " {\n", + " \"Action\": \"Add\",\n", + " \"Key\": \"OC42NjAwMDBB\",\n", + " \"Fields\": {\n", + " \"ORDER_PRC\": 8.66,\n", + " \"ORDER_SIDE\": \"ASK\",\n", + " \"NO_ORD\": 1,\n", + " \"ACC_SIZE\": 1000,\n", + " \"LV_TIM_MS\": 44116097,\n", + " \"LV_TIM_MSP\": 652,\n", + " \"LV_DATE\": \"2022-05-30\"\n", + " }\n", + " },\n", + " {\n", + " \"Action\": \"Add\",\n", + " \"Key\": \"MTUuMzIwMDAwQQ==\",\n", + " \"Fields\": {\n", + " \"ORDER_PRC\": 15.32,\n", + " \"ORDER_SIDE\": \"ASK\",\n", + " \"NO_ORD\": 1,\n", + " \"ACC_SIZE\": 100,\n", + " \"LV_TIM_MS\": 49667748,\n", + " \"LV_TIM_MSP\": 338,\n", + " \"LV_DATE\": \"2022-04-08\"\n", + " }\n", + " },\n", + " {\n", + " \"Action\": \"Add\",\n", + " \"Key\": \"MTAuODUwMDAwQQ==\",\n", + " \"Fields\": {\n", + " \"ORDER_PRC\": 10.85,\n", + " \"ORDER_SIDE\": \"ASK\",\n", + " \"NO_ORD\": 2,\n", + " \"ACC_SIZE\": 700,\n", + " \"LV_TIM_MS\": 41412131,\n", + " \"LV_TIM_MSP\": 35,\n", + " \"LV_DATE\": \"2022-06-22\"\n", + " }\n", + " },\n", + " {\n", + " \"Action\": \"Add\",\n", + " \"Key\": \"MTIuNDAwMDAwQQ==\",\n", + " \"Fields\": {\n", + " \"ORDER_PRC\": 12.4,\n", + " \"ORDER_SIDE\": \"ASK\",\n", + " \"NO_ORD\": 1,\n", + " \"ACC_SIZE\": 100,\n", + " \"LV_TIM_MS\": 40918484,\n", + " \"LV_TIM_MSP\": 597,\n", + " \"LV_DATE\": \"2022-05-30\"\n", + " }\n", + " },\n", + " {\n", + " \"Action\": \"Add\",\n", + " \"Key\": \"OS43MDAwMDBB\",\n", + " \"Fields\": {\n", + " \"ORDER_PRC\": 9.7,\n", + " \"ORDER_SIDE\": \"ASK\",\n", + " \"NO_ORD\": 2,\n", + " \"ACC_SIZE\": 200,\n", + " \"LV_TIM_MS\": 44200042,\n", + " \"LV_TIM_MSP\": 460,\n", + " \"LV_DATE\": \"2022-05-05\"\n", + " }\n", + " },\n", + " {\n", + " \"Action\": \"Add\",\n", + " \"Key\": \"Ni4xMzAwMDBC\",\n", + " \"Fields\": {\n", + " \"ORDER_PRC\": 6.13,\n", + " \"ORDER_SIDE\": \"BID\",\n", + " \"NO_ORD\": 3,\n", + " \"ACC_SIZE\": 1900,\n", + " \"LV_TIM_MS\": 41457769,\n", + " \"LV_TIM_MSP\": 181,\n", + " \"LV_DATE\": \"2022-05-13\"\n", + " }\n", + " },\n", + " {\n", + " \"Action\": \"Add\",\n", + " \"Key\": \"MTIuODQwMDAwQQ==\",\n", + " \"Fields\": {\n", + " \"ORDER_PRC\": 12.84,\n", + " \"ORDER_SIDE\": \"ASK\",\n", + " \"NO_ORD\": 1,\n", + " \"ACC_SIZE\": 800,\n", + " \"LV_TIM_MS\": 50539437,\n", + " \"LV_TIM_MSP\": 32,\n", + " \"LV_DATE\": \"2022-06-07\"\n", + " }\n", + " },\n", + " {\n", + " \"Action\": \"Add\",\n", + " \"Key\": \"MjMwLjAwMDAwMEE=\",\n", + " \"Fields\": {\n", + " \"ORDER_PRC\": 230.0,\n", + " \"ORDER_SIDE\": \"ASK\",\n", + " \"NO_ORD\": 1,\n", + " \"ACC_SIZE\": 2000,\n", + " \"LV_TIM_MS\": 40917900,\n", + " \"LV_TIM_MSP\": 969,\n", + " \"LV_DATE\": \"2022-05-30\"\n", + " }\n", + " },\n", + " {\n", + " \"Action\": \"Add\",\n", + " \"Key\": \"Ni41NzAwMDBC\",\n", + " \"Fields\": {\n", + " \"ORDER_PRC\": 6.57,\n", + " \"ORDER_SIDE\": \"BID\",\n", + " \"NO_ORD\": 1,\n", + " \"ACC_SIZE\": 8000,\n", + " \"LV_TIM_MS\": 49796399,\n", + " \"LV_TIM_MSP\": 492,\n", + " \"LV_DATE\": \"2022-06-22\"\n", + " }\n", + " }\n", + " ]\n", + " }\n", + "}\n", + "----------------------------------------------------------\n", + ">>> Refresh event received at 15:59:20.210883\n", + "{\n", + " \"ID\": 5,\n", + " \"Type\": \"Refresh\",\n", + " \"Domain\": \"MarketByPrice\",\n", + " \"Key\": {\n", + " \"Service\": \"ELEKTRON_DD\",\n", + " \"Name\": \"BB.TO\"\n", + " },\n", + " \"State\": {\n", + " \"Stream\": \"Open\",\n", + " \"Data\": \"Ok\",\n", + " \"Text\": \"All is well\"\n", + " },\n", + " \"Complete\": false,\n", + " \"Qos\": {\n", + " \"Timeliness\": \"Realtime\",\n", + " \"Rate\": \"TickByTick\"\n", + " },\n", + " \"ClearCache\": false,\n", + " \"PartNumber\": 2,\n", + " \"PermData\": \"AwFkMETA\",\n", + " \"SeqNumber\": 30688,\n", + " \"Map\": {\n", + " \"KeyType\": \"Buffer\",\n", + " \"Entries\": [\n", + " {\n", + " \"Action\": \"Add\",\n", + " \"Key\": \"NDQuMDAwMDAwQQ==\",\n", + " \"Fields\": {\n", + " \"ORDER_PRC\": 44.0,\n", + " \"ORDER_SIDE\": \"ASK\",\n", + " \"NO_ORD\": 1,\n", + " \"ACC_SIZE\": 500,\n", + " \"LV_TIM_MS\": 41402015,\n", + " \"LV_TIM_MSP\": 37,\n", + " \"LV_DATE\": \"2022-06-22\"\n", + " }\n", + " },\n", + " {\n", + " \"Action\": \"Add\",\n", + " \"Key\": \"MTkuMzAwMDAwQQ==\",\n", + " \"Fields\": {\n", + " \"ORDER_PRC\": 19.3,\n", + " \"ORDER_SIDE\": \"ASK\",\n", + " \"NO_ORD\": 1,\n", + " \"ACC_SIZE\": 900,\n", + " \"LV_TIM_MS\": 41694000,\n", + " \"LV_TIM_MSP\": 496,\n", + " \"LV_DATE\": \"2022-03-14\"\n", + " }\n", + " },\n", + " {\n", + " \"Action\": \"Add\",\n", + " \"Key\": \"MTMuNjcwMDAwQQ==\",\n", + " \"Fields\": {\n", + " \"ORDER_PRC\": 13.67,\n", + " \"ORDER_SIDE\": \"ASK\",\n", + " \"NO_ORD\": 1,\n", + " \"ACC_SIZE\": 400,\n", + " \"LV_TIM_MS\": 58684078,\n", + " \"LV_TIM_MSP\": 374,\n", + " \"LV_DATE\": \"2022-04-12\"\n", + " }\n", + " },\n", + " {\n", + " \"Action\": \"Add\",\n", + " \"Key\": \"MTAuNzUwMDAwQQ==\",\n", + " \"Fields\": {\n", + " \"ORDER_PRC\": 10.75,\n", + " \"ORDER_SIDE\": \"ASK\",\n", + " \"NO_ORD\": 3,\n", + " \"ACC_SIZE\": 900,\n", + " \"LV_TIM_MS\": 41412129,\n", + " \"LV_TIM_MSP\": 46,\n", + " \"LV_DATE\": \"2022-06-22\"\n", + " }\n", + " },\n", + " {\n", + " \"Action\": \"Add\",\n", + " \"Key\": \"NS4yMDAwMDBC\",\n", + " \"Fields\": {\n", + " \"ORDER_PRC\": 5.2,\n", + " \"ORDER_SIDE\": \"BID\",\n", + " \"NO_ORD\": 2,\n", + " \"ACC_SIZE\": 1100,\n", + " \"LV_TIM_MS\": 68054693,\n", + " \"LV_TIM_MSP\": 12,\n", + " \"LV_DATE\": \"2022-05-09\"\n", + " }\n", + " },\n", + " {\n", + " \"Action\": \"Add\",\n", + " \"Key\": \"MzUuOTkwMDAwQQ==\",\n", + " \"Fields\": {\n", + " \"ORDER_PRC\": 35.99,\n", + " \"ORDER_SIDE\": \"ASK\",\n", + " \"NO_ORD\": 3,\n", + " \"ACC_SIZE\": 800,\n", + " \"LV_TIM_MS\": 42754125,\n", + " \"LV_TIM_MSP\": 619,\n", + " \"LV_DATE\": \"2022-05-02\"\n", + " }\n", + " },\n", + " {\n", + " \"Action\": \"Add\",\n", + " \"Key\": \"Ni4wMzAwMDBC\",\n", + " \"Fields\": {\n", + " \"ORDER_PRC\": 6.03,\n", + " \"ORDER_SIDE\": \"BID\",\n", + " \"NO_ORD\": 1,\n", + " \"ACC_SIZE\": 1500,\n", + " \"LV_TIM_MS\": 41412130,\n", + " \"LV_TIM_MSP\": 47,\n", + " \"LV_DATE\": \"2022-06-22\"\n", + " }\n", + " },\n", + " {\n", + " \"Action\": \"Add\",\n", + " \"Key\": \"MTMuOTAwMDAwQQ==\",\n", + " \"Fields\": {\n", + " \"ORDER_PRC\": 13.9,\n", + " \"ORDER_SIDE\": \"ASK\",\n", + " \"NO_ORD\": 2,\n", + " \"ACC_SIZE\": 1100,\n", + " \"LV_TIM_MS\": 54837299,\n", + " \"LV_TIM_MSP\": 516,\n", + " \"LV_DATE\": \"2022-06-08\"\n", + " }\n", + " },\n", + " {\n", + " \"Action\": \"Add\",\n", + " \"Key\": \"MjAuNDkwMDAwQQ==\",\n", + " \"Fields\": {\n", + " \"ORDER_PRC\": 20.49,\n", + " \"ORDER_SIDE\": \"ASK\",\n", + " \"NO_ORD\": 2,\n", + " \"ACC_SIZE\": 4000,\n", + " \"LV_TIM_MS\": 41665426,\n", + " \"LV_TIM_MSP\": 765,\n", + " \"LV_DATE\": \"2022-05-17\"\n", + " }\n", + " },\n", + " {\n", + " \"Action\": \"Add\",\n", + " \"Key\": \"OC40NjAwMDBB\",\n", + " \"Fields\": {\n", + " \"ORDER_PRC\": 8.46,\n", + " \"ORDER_SIDE\": \"ASK\",\n", + " \"NO_ORD\": 1,\n", + " \"ACC_SIZE\": 2000,\n", + " \"LV_TIM_MS\": 70460587,\n", + " \"LV_TIM_MSP\": 436,\n", + " \"LV_DATE\": \"2022-05-30\"\n", + " }\n", + " },\n", + " {\n", + " \"Action\": \"Add\",\n", + " \"Key\": \"OS42MjAwMDBB\",\n", + " \"Fields\": {\n", + " \"ORDER_PRC\": 9.62,\n", + " \"ORDER_SIDE\": \"ASK\",\n", + " \"NO_ORD\": 1,\n", + " \"ACC_SIZE\": 1000,\n", + " \"LV_TIM_MS\": 42391753,\n", + " \"LV_TIM_MSP\": 857,\n", + " \"LV_DATE\": \"2022-05-30\"\n", + " }\n", + " },\n", + " {\n", + " \"Action\": \"Add\",\n", + " \"Key\": \"MzcuMDAwMDAwQQ==\",\n", + " \"Fields\": {\n", + " \"ORDER_PRC\": 37.0,\n", + " \"ORDER_SIDE\": \"ASK\",\n", + " \"NO_ORD\": 1,\n", + " \"ACC_SIZE\": 600,\n", + " \"LV_TIM_MS\": 41402020,\n", + " \"LV_TIM_MSP\": 45,\n", + " \"LV_DATE\": \"2022-06-22\"\n", + " }\n", + " },\n", + " {\n", + " \"Action\": \"Add\",\n", + " \"Key\": \"MTIuMjAwMDAwQQ==\",\n", + " \"Fields\": {\n", + " \"ORDER_PRC\": 12.2,\n", + " \"ORDER_SIDE\": \"ASK\",\n", + " \"NO_ORD\": 2,\n", + " \"ACC_SIZE\": 1000,\n", + " \"LV_TIM_MS\": 39660319,\n", + " \"LV_TIM_MSP\": 786,\n", + " \"LV_DATE\": \"2022-06-15\"\n", + " }\n", + " },\n", + " {\n", + " \"Action\": \"Add\",\n", + " \"Key\": \"NS45ODAwMDBC\",\n", + " \"Fields\": {\n", + " \"ORDER_PRC\": 5.98,\n", + " \"ORDER_SIDE\": \"BID\",\n", + " \"NO_ORD\": 3,\n", + " \"ACC_SIZE\": 3200,\n", + " \"LV_TIM_MS\": 56610777,\n", + " \"LV_TIM_MSP\": 504,\n", + " \"LV_DATE\": \"2022-05-10\"\n", + " }\n", + " },\n", + " {\n", + " \"Action\": \"Add\",\n", + " \"Key\": \"MTMuODAwMDAwQQ==\",\n", + " \"Fields\": {\n", + " \"ORDER_PRC\": 13.8,\n", + " \"ORDER_SIDE\": \"ASK\",\n", + " \"NO_ORD\": 2,\n", + " \"ACC_SIZE\": 400,\n", + " \"LV_TIM_MS\": 64650099,\n", + " \"LV_TIM_MSP\": 292,\n", + " \"LV_DATE\": \"2022-03-25\"\n", + " }\n", + " },\n", + " {\n", + " \"Action\": \"Add\",\n", + " \"Key\": \"MTAuNjcwMDAwQQ==\",\n", + " \"Fields\": {\n", + " \"ORDER_PRC\": 10.67,\n", + " \"ORDER_SIDE\": \"ASK\",\n", + " \"NO_ORD\": 1,\n", + " \"ACC_SIZE\": 200,\n", + " \"LV_TIM_MS\": 40962153,\n", + " \"LV_TIM_MSP\": 885,\n", + " \"LV_DATE\": \"2022-06-02\"\n", + " }\n", + " },\n", + " {\n", + " \"Action\": \"Add\",\n", + " \"Key\": \"Ni4zNzAwMDBC\",\n", + " \"Fields\": {\n", + " \"ORDER_PRC\": 6.37,\n", + " \"ORDER_SIDE\": \"BID\",\n", + " \"NO_ORD\": 1,\n", + " \"ACC_SIZE\": 300,\n", + " \"LV_TIM_MS\": 44224518,\n", + " \"LV_TIM_MSP\": 58,\n", + " \"LV_DATE\": \"2022-06-20\"\n", + " }\n", + " },\n", + " {\n", + " \"Action\": \"Add\",\n", + " \"Key\": \"MzAuMDAwMDAwQQ==\",\n", + " \"Fields\": {\n", + " \"ORDER_PRC\": 30.0,\n", + " \"ORDER_SIDE\": \"ASK\",\n", + " \"NO_ORD\": 26,\n", + " \"ACC_SIZE\": 36200,\n", + " \"LV_TIM_MS\": 41412128,\n", + " \"LV_TIM_MSP\": 32,\n", + " \"LV_DATE\": \"2022-06-22\"\n", + " }\n", + " },\n", + " {\n", + " \"Action\": \"Add\",\n", + " \"Key\": \"My4wMTAwMDBC\",\n", + " \"Fields\": {\n", + " \"ORDER_PRC\": 3.01,\n", + " \"ORDER_SIDE\": \"BID\",\n", + " \"NO_ORD\": 1,\n", + " \"ACC_SIZE\": 400,\n", + " \"LV_TIM_MS\": 56276308,\n", + " \"LV_TIM_MSP\": 451,\n", + " \"LV_DATE\": \"2022-06-01\"\n", + " }\n", + " },\n", + " {\n", + " \"Action\": \"Add\",\n", + " \"Key\": \"Ny45NzAwMDBB\",\n", + " \"Fields\": {\n", + " \"ORDER_PRC\": 7.97,\n", + " \"ORDER_SIDE\": \"ASK\",\n", + " \"NO_ORD\": 2,\n", + " \"ACC_SIZE\": 2100,\n", + " \"LV_TIM_MS\": 52500560,\n", + " \"LV_TIM_MSP\": 650,\n", + " \"LV_DATE\": \"2022-06-21\"\n", + " }\n", + " },\n", + " {\n", + " \"Action\": \"Add\",\n", + " \"Key\": \"OC4zNjAwMDBB\",\n", + " \"Fields\": {\n", + " \"ORDER_PRC\": 8.36,\n", + " \"ORDER_SIDE\": \"ASK\",\n", + " \"NO_ORD\": 1,\n", + " \"ACC_SIZE\": 300,\n", + " \"LV_TIM_MS\": 39901151,\n", + " \"LV_TIM_MSP\": 233,\n", + " \"LV_DATE\": \"2022-06-08\"\n", + " }\n", + " },\n", + " {\n", + " \"Action\": \"Add\",\n", + " \"Key\": \"OS41MjAwMDBB\",\n", + " \"Fields\": {\n", + " \"ORDER_PRC\": 9.52,\n", + " \"ORDER_SIDE\": \"ASK\",\n", + " \"NO_ORD\": 4,\n", + " \"ACC_SIZE\": 6600,\n", + " \"LV_TIM_MS\": 50835160,\n", + " \"LV_TIM_MSP\": 449,\n", + " \"LV_DATE\": \"2022-05-31\"\n", + " }\n", + " },\n", + " {\n", + " \"Action\": \"Add\",\n", + " \"Key\": \"MTkuMTAwMDAwQQ==\",\n", + " \"Fields\": {\n", + " \"ORDER_PRC\": 19.1,\n", + " \"ORDER_SIDE\": \"ASK\",\n", + " \"NO_ORD\": 1,\n", + " \"ACC_SIZE\": 200,\n", + " \"LV_TIM_MS\": 44206769,\n", + " \"LV_TIM_MSP\": 204,\n", + " \"LV_DATE\": \"2022-05-24\"\n", + " }\n", + " },\n", + " {\n", + " \"Action\": \"Add\",\n", + " \"Key\": \"NDIuNjkwMDAwQQ==\",\n", + " \"Fields\": {\n", + " \"ORDER_PRC\": 42.69,\n", + " \"ORDER_SIDE\": \"ASK\",\n", + " \"NO_ORD\": 1,\n", + " \"ACC_SIZE\": 400,\n", + " \"LV_TIM_MS\": 40374332,\n", + " \"LV_TIM_MSP\": 616,\n", + " \"LV_DATE\": \"2022-03-30\"\n", + " }\n", + " },\n", + " {\n", + " \"Action\": \"Add\",\n", + " \"Key\": \"NS4wMDAwMDBC\",\n", + " \"Fields\": {\n", + " \"ORDER_PRC\": 5.0,\n", + " \"ORDER_SIDE\": \"BID\",\n", + " \"NO_ORD\": 29,\n", + " \"ACC_SIZE\": 24300,\n", + " \"LV_TIM_MS\": 41412131,\n", + " \"LV_TIM_MSP\": 55,\n", + " \"LV_DATE\": \"2022-06-22\"\n", + " }\n", + " },\n", + " {\n", + " \"Action\": \"Add\",\n", + " \"Key\": \"OS45NjAwMDBB\",\n", + " \"Fields\": {\n", + " \"ORDER_PRC\": 9.96,\n", + " \"ORDER_SIDE\": \"ASK\",\n", + " \"NO_ORD\": 2,\n", + " \"ACC_SIZE\": 1200,\n", + " \"LV_TIM_MS\": 58762463,\n", + " \"LV_TIM_MSP\": 794,\n", + " \"LV_DATE\": \"2022-06-14\"\n", + " }\n", + " },\n", + " {\n", + " \"Action\": \"Add\",\n", + " \"Key\": \"Ni42MDAwMDBC\",\n", + " \"Fields\": {\n", + " \"ORDER_PRC\": 6.6,\n", + " \"ORDER_SIDE\": \"BID\",\n", + " \"NO_ORD\": 4,\n", + " \"ACC_SIZE\": 3900,\n", + " \"LV_TIM_MS\": 49151313,\n", + " \"LV_TIM_MSP\": 643,\n", + " \"LV_DATE\": \"2022-06-22\"\n", + " }\n", + " },\n", + " {\n", + " \"Action\": \"Add\",\n", + " \"Key\": \"NS44ODAwMDBC\",\n", + " \"Fields\": {\n", + " \"ORDER_PRC\": 5.88,\n", + " \"ORDER_SIDE\": \"BID\",\n", + " \"NO_ORD\": 3,\n", + " \"ACC_SIZE\": 1200,\n", + " \"LV_TIM_MS\": 66002728,\n", + " \"LV_TIM_MSP\": 281,\n", + " \"LV_DATE\": \"2022-06-14\"\n", + " }\n", + " },\n", + " {\n", + " \"Action\": \"Add\",\n", + " \"Key\": \"MzYuMTgwMDAwQQ==\",\n", + " \"Fields\": {\n", + " \"ORDER_PRC\": 36.18,\n", + " \"ORDER_SIDE\": \"ASK\",\n", + " \"NO_ORD\": 1,\n", + " \"ACC_SIZE\": 600,\n", + " \"LV_TIM_MS\": 40957061,\n", + " \"LV_TIM_MSP\": 518,\n", + " \"LV_DATE\": \"2022-06-10\"\n", + " }\n", + " },\n", + " {\n", + " \"Action\": \"Add\",\n", + " \"Key\": \"MTUuMDQwMDAwQQ==\",\n", + " \"Fields\": {\n", + " \"ORDER_PRC\": 15.04,\n", + " \"ORDER_SIDE\": \"ASK\",\n", + " \"NO_ORD\": 1,\n", + " \"ACC_SIZE\": 500,\n", + " \"LV_TIM_MS\": 41402019,\n", + " \"LV_TIM_MSP\": 34,\n", + " \"LV_DATE\": \"2022-06-22\"\n", + " }\n", + " },\n", + " {\n", + " \"Action\": \"Add\",\n", + " \"Key\": \"MTIuMTIwMDAwQQ==\",\n", + " \"Fields\": {\n", + " \"ORDER_PRC\": 12.12,\n", + " \"ORDER_SIDE\": \"ASK\",\n", + " \"NO_ORD\": 1,\n", + " \"ACC_SIZE\": 1000,\n", + " \"LV_TIM_MS\": 62923501,\n", + " \"LV_TIM_MSP\": 336,\n", + " \"LV_DATE\": \"2022-05-31\"\n", + " }\n", + " },\n", + " {\n", + " \"Action\": \"Add\",\n", + " \"Key\": \"MTUuNDgwMDAwQQ==\",\n", + " \"Fields\": {\n", + " \"ORDER_PRC\": 15.48,\n", + " \"ORDER_SIDE\": \"ASK\",\n", + " \"NO_ORD\": 1,\n", + " \"ACC_SIZE\": 200,\n", + " \"LV_TIM_MS\": 62309050,\n", + " \"LV_TIM_MSP\": 988,\n", + " \"LV_DATE\": \"2022-03-24\"\n", + " }\n", + " },\n", + " {\n", + " \"Action\": \"Add\",\n", + " \"Key\": \"MTAwLjAwMDAwMEE=\",\n", + " \"Fields\": {\n", + " \"ORDER_PRC\": 100.0,\n", + " \"ORDER_SIDE\": \"ASK\",\n", + " \"NO_ORD\": 9,\n", + " \"ACC_SIZE\": 27700,\n", + " \"LV_TIM_MS\": 66800272,\n", + " \"LV_TIM_MSP\": 572,\n", + " \"LV_DATE\": \"2022-05-27\"\n", + " }\n", + " },\n", + " {\n", + " \"Action\": \"Add\",\n", + " \"Key\": \"MjMuMDAwMDAwQQ==\",\n", + " \"Fields\": {\n", + " \"ORDER_PRC\": 23.0,\n", + " \"ORDER_SIDE\": \"ASK\",\n", + " \"NO_ORD\": 6,\n", + " \"ACC_SIZE\": 1900,\n", + " \"LV_TIM_MS\": 41402217,\n", + " \"LV_TIM_MSP\": 48,\n", + " \"LV_DATE\": \"2022-06-22\"\n", + " }\n", + " },\n", + " {\n", + " \"Action\": \"Add\",\n", + " \"Key\": \"MzUuMjUwMDAwQQ==\",\n", + " \"Fields\": {\n", + " \"ORDER_PRC\": 35.25,\n", + " \"ORDER_SIDE\": \"ASK\",\n", + " \"NO_ORD\": 1,\n", + " \"ACC_SIZE\": 200,\n", + " \"LV_TIM_MS\": 46893469,\n", + " \"LV_TIM_MSP\": 900,\n", + " \"LV_DATE\": \"2021-07-22\"\n", + " }\n", + " },\n", + " {\n", + " \"Action\": \"Add\",\n", + " \"Key\": \"OS44NjAwMDBB\",\n", + " \"Fields\": {\n", + " \"ORDER_PRC\": 9.86,\n", + " \"ORDER_SIDE\": \"ASK\",\n", + " \"NO_ORD\": 1,\n", + " \"ACC_SIZE\": 100,\n", + " \"LV_TIM_MS\": 55880903,\n", + " \"LV_TIM_MSP\": 28,\n", + " \"LV_DATE\": \"2022-04-06\"\n", + " }\n", + " },\n", + " {\n", + " \"Action\": \"Add\",\n", + " \"Key\": \"Ni41MDAwMDBC\",\n", + " \"Fields\": {\n", + " \"ORDER_PRC\": 6.5,\n", + " \"ORDER_SIDE\": \"BID\",\n", + " \"NO_ORD\": 11,\n", + " \"ACC_SIZE\": 7200,\n", + " \"LV_TIM_MS\": 50019627,\n", + " \"LV_TIM_MSP\": 424,\n", + " \"LV_DATE\": \"2022-06-22\"\n", + " }\n", + " },\n", + " {\n", + " \"Action\": \"Add\",\n", + " \"Key\": \"NS4zNDAwMDBC\",\n", + " \"Fields\": {\n", + " \"ORDER_PRC\": 5.34,\n", + " \"ORDER_SIDE\": \"BID\",\n", + " \"NO_ORD\": 1,\n", + " \"ACC_SIZE\": 3000,\n", + " \"LV_TIM_MS\": 44241525,\n", + " \"LV_TIM_MSP\": 944,\n", + " \"LV_DATE\": \"2022-06-06\"\n", + " }\n", + " },\n", + " {\n", + " \"Action\": \"Add\",\n", + " \"Key\": \"OC4yODAwMDBB\",\n", + " \"Fields\": {\n", + " \"ORDER_PRC\": 8.28,\n", + " \"ORDER_SIDE\": \"ASK\",\n", + " \"NO_ORD\": 2,\n", + " \"ACC_SIZE\": 10100,\n", + " \"LV_TIM_MS\": 49130789,\n", + " \"LV_TIM_MSP\": 786,\n", + " \"LV_DATE\": \"2022-06-01\"\n", + " }\n", + " },\n", + " {\n", + " \"Action\": \"Add\",\n", + " \"Key\": \"MTAuMDMwMDAwQQ==\",\n", + " \"Fields\": {\n", + " \"ORDER_PRC\": 10.03,\n", + " \"ORDER_SIDE\": \"ASK\",\n", + " \"NO_ORD\": 1,\n", + " \"ACC_SIZE\": 300,\n", + " \"LV_TIM_MS\": 59359556,\n", + " \"LV_TIM_MSP\": 876,\n", + " \"LV_DATE\": \"2022-05-18\"\n", + " }\n", + " },\n", + " {\n", + " \"Action\": \"Add\",\n", + " \"Key\": \"NTkuMTAwMDAwQQ==\",\n", + " \"Fields\": {\n", + " \"ORDER_PRC\": 59.1,\n", + " \"ORDER_SIDE\": \"ASK\",\n", + " \"NO_ORD\": 1,\n", + " \"ACC_SIZE\": 8000,\n", + " \"LV_TIM_MS\": 44218321,\n", + " \"LV_TIM_MSP\": 156,\n", + " \"LV_DATE\": \"2022-05-16\"\n", + " }\n", + " },\n", + " {\n", + " \"Action\": \"Add\",\n", + " \"Key\": \"Ni45NDAwMDBB\",\n", + " \"Fields\": {\n", + " \"ORDER_PRC\": 6.94,\n", + " \"ORDER_SIDE\": \"ASK\",\n", + " \"NO_ORD\": 12,\n", + " \"ACC_SIZE\": 4100,\n", + " \"LV_TIM_MS\": 50357929,\n", + " \"LV_TIM_MSP\": 686,\n", + " \"LV_DATE\": \"2022-06-22\"\n", + " }\n", + " },\n", + " {\n", + " \"Action\": \"Add\",\n", + " \"Key\": \"MjMuODgwMDAwQQ==\",\n", + " \"Fields\": {\n", + " \"ORDER_PRC\": 23.88,\n", + " \"ORDER_SIDE\": \"ASK\",\n", + " \"NO_ORD\": 1,\n", + " \"ACC_SIZE\": 500,\n", + " \"LV_TIM_MS\": 41402021,\n", + " \"LV_TIM_MSP\": 25,\n", + " \"LV_DATE\": \"2022-06-22\"\n", + " }\n", + " },\n", + " {\n", + " \"Action\": \"Add\",\n", + " \"Key\": \"Ny43NzAwMDBB\",\n", + " \"Fields\": {\n", + " \"ORDER_PRC\": 7.77,\n", + " \"ORDER_SIDE\": \"ASK\",\n", + " \"NO_ORD\": 4,\n", + " \"ACC_SIZE\": 6100,\n", + " \"LV_TIM_MS\": 44745611,\n", + " \"LV_TIM_MSP\": 314,\n", + " \"LV_DATE\": \"2022-06-22\"\n", + " }\n", + " },\n", + " {\n", + " \"Action\": \"Add\",\n", + " \"Key\": \"MTYuOTgwMDAwQQ==\",\n", + " \"Fields\": {\n", + " \"ORDER_PRC\": 16.98,\n", + " \"ORDER_SIDE\": \"ASK\",\n", + " \"NO_ORD\": 1,\n", + " \"ACC_SIZE\": 500,\n", + " \"LV_TIM_MS\": 71659192,\n", + " \"LV_TIM_MSP\": 342,\n", + " \"LV_DATE\": \"2022-05-27\"\n", + " }\n", + " },\n", + " {\n", + " \"Action\": \"Add\",\n", + " \"Key\": \"MTIuNDYwMDAwQQ==\",\n", + " \"Fields\": {\n", + " \"ORDER_PRC\": 12.46,\n", + " \"ORDER_SIDE\": \"ASK\",\n", + " \"NO_ORD\": 1,\n", + " \"ACC_SIZE\": 500,\n", + " \"LV_TIM_MS\": 39666054,\n", + " \"LV_TIM_MSP\": 580,\n", + " \"LV_DATE\": \"2022-06-22\"\n", + " }\n", + " },\n", + " {\n", + " \"Action\": \"Add\",\n", + " \"Key\": \"MjIuNTEwMDAwQQ==\",\n", + " \"Fields\": {\n", + " \"ORDER_PRC\": 22.51,\n", + " \"ORDER_SIDE\": \"ASK\",\n", + " \"NO_ORD\": 1,\n", + " \"ACC_SIZE\": 4300,\n", + " \"LV_TIM_MS\": 41412126,\n", + " \"LV_TIM_MSP\": 33,\n", + " \"LV_DATE\": \"2022-06-22\"\n", + " }\n", + " },\n", + " {\n", + " \"Action\": \"Add\",\n", + " \"Key\": \"Ni40MDAwMDBC\",\n", + " \"Fields\": {\n", + " \"ORDER_PRC\": 6.4,\n", + " \"ORDER_SIDE\": \"BID\",\n", + " \"NO_ORD\": 7,\n", + " \"ACC_SIZE\": 3300,\n", + " \"LV_TIM_MS\": 44171099,\n", + " \"LV_TIM_MSP\": 443,\n", + " \"LV_DATE\": \"2022-06-22\"\n", + " }\n", + " },\n", + " {\n", + " \"Action\": \"Add\",\n", + " \"Key\": \"OC4xODAwMDBB\",\n", + " \"Fields\": {\n", + " \"ORDER_PRC\": 8.18,\n", + " \"ORDER_SIDE\": \"ASK\",\n", + " \"NO_ORD\": 2,\n", + " \"ACC_SIZE\": 600,\n", + " \"LV_TIM_MS\": 39660301,\n", + " \"LV_TIM_MSP\": 124,\n", + " \"LV_DATE\": \"2022-06-22\"\n", + " }\n", + " },\n", + " {\n", + " \"Action\": \"Add\",\n", + " \"Key\": \"MTYuMDAwMDAwQQ==\",\n", + " \"Fields\": {\n", + " \"ORDER_PRC\": 16.0,\n", + " \"ORDER_SIDE\": \"ASK\",\n", + " \"NO_ORD\": 21,\n", + " \"ACC_SIZE\": 26200,\n", + " \"LV_TIM_MS\": 41402217,\n", + " \"LV_TIM_MSP\": 53,\n", + " \"LV_DATE\": \"2022-06-22\"\n", + " }\n", + " },\n", + " {\n", + " \"Action\": \"Add\",\n", + " \"Key\": \"MTQuODkwMDAwQQ==\",\n", + " \"Fields\": {\n", + " \"ORDER_PRC\": 14.89,\n", + " \"ORDER_SIDE\": \"ASK\",\n", + " \"NO_ORD\": 1,\n", + " \"ACC_SIZE\": 100,\n", + " \"LV_TIM_MS\": 45913565,\n", + " \"LV_TIM_MSP\": 391,\n", + " \"LV_DATE\": \"2022-05-04\"\n", + " }\n", + " },\n", + " {\n", + " \"Action\": \"Add\",\n", + " \"Key\": \"Ni44NDAwMDBC\",\n", + " \"Fields\": {\n", + " \"ORDER_PRC\": 6.84,\n", + " \"ORDER_SIDE\": \"BID\",\n", + " \"NO_ORD\": 4,\n", + " \"ACC_SIZE\": 7800,\n", + " \"LV_TIM_MS\": 50241972,\n", + " \"LV_TIM_MSP\": 962,\n", + " \"LV_DATE\": \"2022-06-22\"\n", + " }\n", + " },\n", + " {\n", + " \"Action\": \"Add\",\n", + " \"Key\": \"MTEuOTcwMDAwQQ==\",\n", + " \"Fields\": {\n", + " \"ORDER_PRC\": 11.97,\n", + " \"ORDER_SIDE\": \"ASK\",\n", + " \"NO_ORD\": 1,\n", + " \"ACC_SIZE\": 500,\n", + " \"LV_TIM_MS\": 54665939,\n", + " \"LV_TIM_MSP\": 947,\n", + " \"LV_DATE\": \"2022-05-18\"\n", + " }\n", + " },\n", + " {\n", + " \"Action\": \"Add\",\n", + " \"Key\": \"MTUuMjgwMDAwQQ==\",\n", + " \"Fields\": {\n", + " \"ORDER_PRC\": 15.28,\n", + " \"ORDER_SIDE\": \"ASK\",\n", + " \"NO_ORD\": 1,\n", + " \"ACC_SIZE\": 2000,\n", + " \"LV_TIM_MS\": 68967469,\n", + " \"LV_TIM_MSP\": 498,\n", + " \"LV_DATE\": \"2022-06-02\"\n", + " }\n", + " },\n", + " {\n", + " \"Action\": \"Add\",\n", + " \"Key\": \"NS4yNjAwMDBC\",\n", + " \"Fields\": {\n", + " \"ORDER_PRC\": 5.26,\n", + " \"ORDER_SIDE\": \"BID\",\n", + " \"NO_ORD\": 1,\n", + " \"ACC_SIZE\": 500,\n", + " \"LV_TIM_MS\": 41412130,\n", + " \"LV_TIM_MSP\": 41,\n", + " \"LV_DATE\": \"2022-06-22\"\n", + " }\n", + " },\n", + " {\n", + " \"Action\": \"Add\",\n", + " \"Key\": \"MjIuNDEwMDAwQQ==\",\n", + " \"Fields\": {\n", + " \"ORDER_PRC\": 22.41,\n", + " \"ORDER_SIDE\": \"ASK\",\n", + " \"NO_ORD\": 1,\n", + " \"ACC_SIZE\": 9500,\n", + " \"LV_TIM_MS\": 44264477,\n", + " \"LV_TIM_MSP\": 943,\n", + " \"LV_DATE\": \"2022-05-26\"\n", + " }\n", + " },\n", + " {\n", + " \"Action\": \"Add\",\n", + " \"Key\": \"Ny4yNTAwMDBB\",\n", + " \"Fields\": {\n", + " \"ORDER_PRC\": 7.25,\n", + " \"ORDER_SIDE\": \"ASK\",\n", + " \"NO_ORD\": 3,\n", + " \"ACC_SIZE\": 1100,\n", + " \"LV_TIM_MS\": 48225952,\n", + " \"LV_TIM_MSP\": 11,\n", + " \"LV_DATE\": \"2022-06-22\"\n", + " }\n", + " },\n", + " {\n", + " \"Action\": \"Add\",\n", + " \"Key\": \"Ni4wOTAwMDBC\",\n", + " \"Fields\": {\n", + " \"ORDER_PRC\": 6.09,\n", + " \"ORDER_SIDE\": \"BID\",\n", + " \"NO_ORD\": 2,\n", + " \"ACC_SIZE\": 600,\n", + " \"LV_TIM_MS\": 63373669,\n", + " \"LV_TIM_MSP\": 614,\n", + " \"LV_DATE\": \"2022-06-16\"\n", + " }\n", + " },\n", + " {\n", + " \"Action\": \"Add\",\n", + " \"Key\": \"MTAuNjAwMDAwQQ==\",\n", + " \"Fields\": {\n", + " \"ORDER_PRC\": 10.6,\n", + " \"ORDER_SIDE\": \"ASK\",\n", + " \"NO_ORD\": 2,\n", + " \"ACC_SIZE\": 1300,\n", + " \"LV_TIM_MS\": 40991742,\n", + " \"LV_TIM_MSP\": 287,\n", + " \"LV_DATE\": \"2022-05-30\"\n", + " }\n", + " },\n", + " {\n", + " \"Action\": \"Add\",\n", + " \"Key\": \"Ni4zMDAwMDBC\",\n", + " \"Fields\": {\n", + " \"ORDER_PRC\": 6.3,\n", + " \"ORDER_SIDE\": \"BID\",\n", + " \"NO_ORD\": 5,\n", + " \"ACC_SIZE\": 1000,\n", + " \"LV_TIM_MS\": 39605119,\n", + " \"LV_TIM_MSP\": 694,\n", + " \"LV_DATE\": \"2022-06-22\"\n", + " }\n", + " },\n", + " {\n", + " \"Action\": \"Add\",\n", + " \"Key\": \"MTguODcwMDAwQQ==\",\n", + " \"Fields\": {\n", + " \"ORDER_PRC\": 18.87,\n", + " \"ORDER_SIDE\": \"ASK\",\n", + " \"NO_ORD\": 1,\n", + " \"ACC_SIZE\": 1000,\n", + " \"LV_TIM_MS\": 42391731,\n", + " \"LV_TIM_MSP\": 583,\n", + " \"LV_DATE\": \"2022-05-30\"\n", + " }\n", + " },\n", + " {\n", + " \"Action\": \"Add\",\n", + " \"Key\": \"OS4yNDAwMDBB\",\n", + " \"Fields\": {\n", + " \"ORDER_PRC\": 9.24,\n", + " \"ORDER_SIDE\": \"ASK\",\n", + " \"NO_ORD\": 1,\n", + " \"ACC_SIZE\": 100,\n", + " \"LV_TIM_MS\": 40386037,\n", + " \"LV_TIM_MSP\": 79,\n", + " \"LV_DATE\": \"2022-06-21\"\n", + " }\n", + " },\n", + " {\n", + " \"Action\": \"Add\",\n", + " \"Key\": \"OC4wODAwMDBB\",\n", + " \"Fields\": {\n", + " \"ORDER_PRC\": 8.08,\n", + " \"ORDER_SIDE\": \"ASK\",\n", + " \"NO_ORD\": 2,\n", + " \"ACC_SIZE\": 2100,\n", + " \"LV_TIM_MS\": 39601461,\n", + " \"LV_TIM_MSP\": 949,\n", + " \"LV_DATE\": \"2022-06-22\"\n", + " }\n", + " },\n", + " {\n", + " \"Action\": \"Add\",\n", + " \"Key\": \"MTEuNDMwMDAwQQ==\",\n", + " \"Fields\": {\n", + " \"ORDER_PRC\": 11.43,\n", + " \"ORDER_SIDE\": \"ASK\",\n", + " \"NO_ORD\": 1,\n", + " \"ACC_SIZE\": 300,\n", + " \"LV_TIM_MS\": 55742127,\n", + " \"LV_TIM_MSP\": 723,\n", + " \"LV_DATE\": \"2022-06-09\"\n", + " }\n", + " },\n", + " {\n", + " \"Action\": \"Add\",\n", + " \"Key\": \"MTUuOTUwMDAwQQ==\",\n", + " \"Fields\": {\n", + " \"ORDER_PRC\": 15.95,\n", + " \"ORDER_SIDE\": \"ASK\",\n", + " \"NO_ORD\": 2,\n", + " \"ACC_SIZE\": 600,\n", + " \"LV_TIM_MS\": 41412126,\n", + " \"LV_TIM_MSP\": 35,\n", + " \"LV_DATE\": \"2022-06-22\"\n", + " }\n", + " },\n", + " {\n", + " \"Action\": \"Add\",\n", + " \"Key\": \"MTEuODcwMDAwQQ==\",\n", + " \"Fields\": {\n", + " \"ORDER_PRC\": 11.87,\n", + " \"ORDER_SIDE\": \"ASK\",\n", + " \"NO_ORD\": 1,\n", + " \"ACC_SIZE\": 100,\n", + " \"LV_TIM_MS\": 40925896,\n", + " \"LV_TIM_MSP\": 845,\n", + " \"LV_DATE\": \"2022-05-30\"\n", + " }\n", + " },\n", + " {\n", + " \"Action\": \"Add\",\n", + " \"Key\": \"OC43MzAwMDBB\",\n", + " \"Fields\": {\n", + " \"ORDER_PRC\": 8.73,\n", + " \"ORDER_SIDE\": \"ASK\",\n", + " \"NO_ORD\": 1,\n", + " \"ACC_SIZE\": 600,\n", + " \"LV_TIM_MS\": 59097553,\n", + " \"LV_TIM_MSP\": 528,\n", + " \"LV_DATE\": \"2022-04-13\"\n", + " }\n", + " },\n", + " {\n", + " \"Action\": \"Add\",\n", + " \"Key\": \"MTcuNTAwMDAwQQ==\",\n", + " \"Fields\": {\n", + " \"ORDER_PRC\": 17.5,\n", + " \"ORDER_SIDE\": \"ASK\",\n", + " \"NO_ORD\": 1,\n", + " \"ACC_SIZE\": 1200,\n", + " \"LV_TIM_MS\": 41402017,\n", + " \"LV_TIM_MSP\": 38,\n", + " \"LV_DATE\": \"2022-06-22\"\n", + " }\n", + " },\n", + " {\n", + " \"Action\": \"Add\",\n", + " \"Key\": \"MzcuMDYwMDAwQQ==\",\n", + " \"Fields\": {\n", + " \"ORDER_PRC\": 37.06,\n", + " \"ORDER_SIDE\": \"ASK\",\n", + " \"NO_ORD\": 1,\n", + " \"ACC_SIZE\": 5500,\n", + " \"LV_TIM_MS\": 51577470,\n", + " \"LV_TIM_MSP\": 99,\n", + " \"LV_DATE\": \"2022-04-01\"\n", + " }\n", + " },\n", + " {\n", + " \"Action\": \"Add\",\n", + " \"Key\": \"Ny4xNTAwMDBB\",\n", + " \"Fields\": {\n", + " \"ORDER_PRC\": 7.15,\n", + " \"ORDER_SIDE\": \"ASK\",\n", + " \"NO_ORD\": 4,\n", + " \"ACC_SIZE\": 700,\n", + " \"LV_TIM_MS\": 50230791,\n", + " \"LV_TIM_MSP\": 629,\n", + " \"LV_DATE\": \"2022-06-22\"\n", + " }\n", + " },\n", + " {\n", + " \"Action\": \"Add\",\n", + " \"Key\": \"NS44MTAwMDBC\",\n", + " \"Fields\": {\n", + " \"ORDER_PRC\": 5.81,\n", + " \"ORDER_SIDE\": \"BID\",\n", + " \"NO_ORD\": 3,\n", + " \"ACC_SIZE\": 1000,\n", + " \"LV_TIM_MS\": 41412130,\n", + " \"LV_TIM_MSP\": 45,\n", + " \"LV_DATE\": \"2022-06-22\"\n", + " }\n", + " },\n", + " {\n", + " \"Action\": \"Add\",\n", + " \"Key\": \"MTAuNTAwMDAwQQ==\",\n", + " \"Fields\": {\n", + " \"ORDER_PRC\": 10.5,\n", + " \"ORDER_SIDE\": \"ASK\",\n", + " \"NO_ORD\": 10,\n", + " \"ACC_SIZE\": 4800,\n", + " \"LV_TIM_MS\": 41412131,\n", + " \"LV_TIM_MSP\": 57,\n", + " \"LV_DATE\": \"2022-06-22\"\n", + " }\n", + " },\n", + " {\n", + " \"Action\": \"Add\",\n", + " \"Key\": \"MzIuODAwMDAwQQ==\",\n", + " \"Fields\": {\n", + " \"ORDER_PRC\": 32.8,\n", + " \"ORDER_SIDE\": \"ASK\",\n", + " \"NO_ORD\": 1,\n", + " \"ACC_SIZE\": 7000,\n", + " \"LV_TIM_MS\": 40318547,\n", + " \"LV_TIM_MSP\": 461,\n", + " \"LV_DATE\": \"2022-05-31\"\n", + " }\n", + " },\n", + " {\n", + " \"Action\": \"Add\",\n", + " \"Key\": \"MTMuODYwMDAwQQ==\",\n", + " \"Fields\": {\n", + " \"ORDER_PRC\": 13.86,\n", + " \"ORDER_SIDE\": \"ASK\",\n", + " \"NO_ORD\": 1,\n", + " \"ACC_SIZE\": 100,\n", + " \"LV_TIM_MS\": 41439587,\n", + " \"LV_TIM_MSP\": 763,\n", + " \"LV_DATE\": \"2022-05-18\"\n", + " }\n", + " },\n", + " {\n", + " \"Action\": \"Add\",\n", + " \"Key\": \"Ny44MDAwMDBB\",\n", + " \"Fields\": {\n", + " \"ORDER_PRC\": 7.8,\n", + " \"ORDER_SIDE\": \"ASK\",\n", + " \"NO_ORD\": 6,\n", + " \"ACC_SIZE\": 1200,\n", + " \"LV_TIM_MS\": 41412130,\n", + " \"LV_TIM_MSP\": 50,\n", + " \"LV_DATE\": \"2022-06-22\"\n", + " }\n", + " },\n", + " {\n", + " \"Action\": \"Add\",\n", + " \"Key\": \"MTQuMjUwMDAwQQ==\",\n", + " \"Fields\": {\n", + " \"ORDER_PRC\": 14.25,\n", + " \"ORDER_SIDE\": \"ASK\",\n", + " \"NO_ORD\": 2,\n", + " \"ACC_SIZE\": 600,\n", + " \"LV_TIM_MS\": 44113664,\n", + " \"LV_TIM_MSP\": 683,\n", + " \"LV_DATE\": \"2022-06-13\"\n", + " }\n", + " },\n", + " {\n", + " \"Action\": \"Add\",\n", + " \"Key\": \"MTUuNDEwMDAwQQ==\",\n", + " \"Fields\": {\n", + " \"ORDER_PRC\": 15.41,\n", + " \"ORDER_SIDE\": \"ASK\",\n", + " \"NO_ORD\": 1,\n", + " \"ACC_SIZE\": 500,\n", + " \"LV_TIM_MS\": 49438381,\n", + " \"LV_TIM_MSP\": 630,\n", + " \"LV_DATE\": \"2022-03-18\"\n", + " }\n", + " },\n", + " {\n", + " \"Action\": \"Add\",\n", + " \"Key\": \"MTAuOTQwMDAwQQ==\",\n", + " \"Fields\": {\n", + " \"ORDER_PRC\": 10.94,\n", + " \"ORDER_SIDE\": \"ASK\",\n", + " \"NO_ORD\": 1,\n", + " \"ACC_SIZE\": 100,\n", + " \"LV_TIM_MS\": 61432770,\n", + " \"LV_TIM_MSP\": 843,\n", + " \"LV_DATE\": \"2022-05-04\"\n", + " }\n", + " },\n", + " {\n", + " \"Action\": \"Add\",\n", + " \"Key\": \"MjQuMzAwMDAwQQ==\",\n", + " \"Fields\": {\n", + " \"ORDER_PRC\": 24.3,\n", + " \"ORDER_SIDE\": \"ASK\",\n", + " \"NO_ORD\": 1,\n", + " \"ACC_SIZE\": 3000,\n", + " \"LV_TIM_MS\": 74678853,\n", + " \"LV_TIM_MSP\": 449,\n", + " \"LV_DATE\": \"2022-01-26\"\n", + " }\n", + " },\n", + " {\n", + " \"Action\": \"Add\",\n", + " \"Key\": \"MjAuMjIwMDAwQQ==\",\n", + " \"Fields\": {\n", + " \"ORDER_PRC\": 20.22,\n", + " \"ORDER_SIDE\": \"ASK\",\n", + " \"NO_ORD\": 1,\n", + " \"ACC_SIZE\": 100,\n", + " \"LV_TIM_MS\": 40917503,\n", + " \"LV_TIM_MSP\": 934,\n", + " \"LV_DATE\": \"2022-05-30\"\n", + " }\n", + " },\n", + " {\n", + " \"Action\": \"Add\",\n", + " \"Key\": \"MTkuMTYwMDAwQQ==\",\n", + " \"Fields\": {\n", + " \"ORDER_PRC\": 19.16,\n", + " \"ORDER_SIDE\": \"ASK\",\n", + " \"NO_ORD\": 1,\n", + " \"ACC_SIZE\": 1000,\n", + " \"LV_TIM_MS\": 40922859,\n", + " \"LV_TIM_MSP\": 644,\n", + " \"LV_DATE\": \"2022-05-30\"\n", + " }\n", + " },\n", + " {\n", + " \"Action\": \"Add\",\n", + " \"Key\": \"OS41ODAwMDBB\",\n", + " \"Fields\": {\n", + " \"ORDER_PRC\": 9.58,\n", + " \"ORDER_SIDE\": \"ASK\",\n", + " \"NO_ORD\": 1,\n", + " \"ACC_SIZE\": 2200,\n", + " \"LV_TIM_MS\": 49653091,\n", + " \"LV_TIM_MSP\": 736,\n", + " \"LV_DATE\": \"2022-06-17\"\n", + " }\n", + " },\n", + " {\n", + " \"Action\": \"Add\",\n", + " \"Key\": \"NDIuMTAwMDAwQQ==\",\n", + " \"Fields\": {\n", + " \"ORDER_PRC\": 42.1,\n", + " \"ORDER_SIDE\": \"ASK\",\n", + " \"NO_ORD\": 1,\n", + " \"ACC_SIZE\": 200,\n", + " \"LV_TIM_MS\": 40917864,\n", + " \"LV_TIM_MSP\": 160,\n", + " \"LV_DATE\": \"2022-05-30\"\n", + " }\n", + " },\n", + " {\n", + " \"Action\": \"Add\",\n", + " \"Key\": \"MTIuOTMwMDAwQQ==\",\n", + " \"Fields\": {\n", + " \"ORDER_PRC\": 12.93,\n", + " \"ORDER_SIDE\": \"ASK\",\n", + " \"NO_ORD\": 1,\n", + " \"ACC_SIZE\": 500,\n", + " \"LV_TIM_MS\": 54289657,\n", + " \"LV_TIM_MSP\": 366,\n", + " \"LV_DATE\": \"2022-01-04\"\n", + " }\n", + " },\n", + " {\n", + " \"Action\": \"Add\",\n", + " \"Key\": \"MjM1LjAwMDAwMEE=\",\n", + " \"Fields\": {\n", + " \"ORDER_PRC\": 235.0,\n", + " \"ORDER_SIDE\": \"ASK\",\n", + " \"NO_ORD\": 1,\n", + " \"ACC_SIZE\": 2000,\n", + " \"LV_TIM_MS\": 40923284,\n", + " \"LV_TIM_MSP\": 162,\n", + " \"LV_DATE\": \"2022-05-30\"\n", + " }\n", + " },\n", + " {\n", + " \"Action\": \"Add\",\n", + " \"Key\": \"MTAuMTkwMDAwQQ==\",\n", + " \"Fields\": {\n", + " \"ORDER_PRC\": 10.19,\n", + " \"ORDER_SIDE\": \"ASK\",\n", + " \"NO_ORD\": 1,\n", + " \"ACC_SIZE\": 400,\n", + " \"LV_TIM_MS\": 61381586,\n", + " \"LV_TIM_MSP\": 918,\n", + " \"LV_DATE\": \"2022-06-02\"\n", + " }\n", + " },\n", + " {\n", + " \"Action\": \"Add\",\n", + " \"Key\": \"Ny4wNTAwMDBB\",\n", + " \"Fields\": {\n", + " \"ORDER_PRC\": 7.05,\n", + " \"ORDER_SIDE\": \"ASK\",\n", + " \"NO_ORD\": 2,\n", + " \"ACC_SIZE\": 1100,\n", + " \"LV_TIM_MS\": 50072361,\n", + " \"LV_TIM_MSP\": 465,\n", + " \"LV_DATE\": \"2022-06-22\"\n", + " }\n", + " },\n", + " {\n", + " \"Action\": \"Add\",\n", + " \"Key\": \"OC42NTAwMDBB\",\n", + " \"Fields\": {\n", + " \"ORDER_PRC\": 8.65,\n", + " \"ORDER_SIDE\": \"ASK\",\n", + " \"NO_ORD\": 1,\n", + " \"ACC_SIZE\": 100,\n", + " \"LV_TIM_MS\": 55448193,\n", + " \"LV_TIM_MSP\": 854,\n", + " \"LV_DATE\": \"2022-04-19\"\n", + " }\n", + " },\n", + " {\n", + " \"Action\": \"Add\",\n", + " \"Key\": \"MTAuNDAwMDAwQQ==\",\n", + " \"Fields\": {\n", + " \"ORDER_PRC\": 10.4,\n", + " \"ORDER_SIDE\": \"ASK\",\n", + " \"NO_ORD\": 3,\n", + " \"ACC_SIZE\": 700,\n", + " \"LV_TIM_MS\": 39662350,\n", + " \"LV_TIM_MSP\": 842,\n", + " \"LV_DATE\": \"2022-06-22\"\n", + " }\n", + " },\n", + " {\n", + " \"Action\": \"Add\",\n", + " \"Key\": \"Ny43MDAwMDBB\",\n", + " \"Fields\": {\n", + " \"ORDER_PRC\": 7.7,\n", + " \"ORDER_SIDE\": \"ASK\",\n", + " \"NO_ORD\": 5,\n", + " \"ACC_SIZE\": 6200,\n", + " \"LV_TIM_MS\": 41412129,\n", + " \"LV_TIM_MSP\": 54,\n", + " \"LV_DATE\": \"2022-06-22\"\n", + " }\n", + " },\n", + " {\n", + " \"Action\": \"Add\",\n", + " \"Key\": \"NDkuMDAwMDAwQQ==\",\n", + " \"Fields\": {\n", + " \"ORDER_PRC\": 49.0,\n", + " \"ORDER_SIDE\": \"ASK\",\n", + " \"NO_ORD\": 3,\n", + " \"ACC_SIZE\": 11800,\n", + " \"LV_TIM_MS\": 48698203,\n", + " \"LV_TIM_MSP\": 103,\n", + " \"LV_DATE\": \"2022-06-17\"\n", + " }\n", + " },\n", + " {\n", + " \"Action\": \"Add\",\n", + " \"Key\": \"MTUuNzUwMDAwQQ==\",\n", + " \"Fields\": {\n", + " \"ORDER_PRC\": 15.75,\n", + " \"ORDER_SIDE\": \"ASK\",\n", + " \"NO_ORD\": 1,\n", + " \"ACC_SIZE\": 200,\n", + " \"LV_TIM_MS\": 39610826,\n", + " \"LV_TIM_MSP\": 508,\n", + " \"LV_DATE\": \"2022-05-25\"\n", + " }\n", + " },\n", + " {\n", + " \"Action\": \"Add\",\n", + " \"Key\": \"Ni4xMjAwMDBC\",\n", + " \"Fields\": {\n", + " \"ORDER_PRC\": 6.12,\n", + " \"ORDER_SIDE\": \"BID\",\n", + " \"NO_ORD\": 1,\n", + " \"ACC_SIZE\": 100,\n", + " \"LV_TIM_MS\": 70206194,\n", + " \"LV_TIM_MSP\": 136,\n", + " \"LV_DATE\": \"2022-06-17\"\n", + " }\n", + " },\n", + " {\n", + " \"Action\": \"Add\",\n", + " \"Key\": \"MTcuMzAwMDAwQQ==\",\n", + " \"Fields\": {\n", + " \"ORDER_PRC\": 17.3,\n", + " \"ORDER_SIDE\": \"ASK\",\n", + " \"NO_ORD\": 1,\n", + " \"ACC_SIZE\": 300,\n", + " \"LV_TIM_MS\": 41412132,\n", + " \"LV_TIM_MSP\": 56,\n", + " \"LV_DATE\": \"2022-06-22\"\n", + " }\n", + " },\n", + " {\n", + " \"Action\": \"Add\",\n", + " \"Key\": \"Ni41NjAwMDBC\",\n", + " \"Fields\": {\n", + " \"ORDER_PRC\": 6.56,\n", + " \"ORDER_SIDE\": \"BID\",\n", + " \"NO_ORD\": 2,\n", + " \"ACC_SIZE\": 6000,\n", + " \"LV_TIM_MS\": 48663008,\n", + " \"LV_TIM_MSP\": 746,\n", + " \"LV_DATE\": \"2022-06-22\"\n", + " }\n", + " },\n", + " {\n", + " \"Action\": \"Add\",\n", + " \"Key\": \"OC41NTAwMDBB\",\n", + " \"Fields\": {\n", + " \"ORDER_PRC\": 8.55,\n", + " \"ORDER_SIDE\": \"ASK\",\n", + " \"NO_ORD\": 2,\n", + " \"ACC_SIZE\": 900,\n", + " \"LV_TIM_MS\": 65441582,\n", + " \"LV_TIM_MSP\": 605,\n", + " \"LV_DATE\": \"2022-05-30\"\n", + " }\n", + " },\n", + " {\n", + " \"Action\": \"Add\",\n", + " \"Key\": \"MzUuMTAwMDAwQQ==\",\n", + " \"Fields\": {\n", + " \"ORDER_PRC\": 35.1,\n", + " \"ORDER_SIDE\": \"ASK\",\n", + " \"NO_ORD\": 1,\n", + " \"ACC_SIZE\": 1500,\n", + " \"LV_TIM_MS\": 43866304,\n", + " \"LV_TIM_MSP\": 837,\n", + " \"LV_DATE\": \"2022-04-18\"\n", + " }\n", + " },\n", + " {\n", + " \"Action\": \"Add\",\n", + " \"Key\": \"MTAuMzAwMDAwQQ==\",\n", + " \"Fields\": {\n", + " \"ORDER_PRC\": 10.3,\n", + " \"ORDER_SIDE\": \"ASK\",\n", + " \"NO_ORD\": 1,\n", + " \"ACC_SIZE\": 100,\n", + " \"LV_TIM_MS\": 40261826,\n", + " \"LV_TIM_MSP\": 330,\n", + " \"LV_DATE\": \"2022-04-04\"\n", + " }\n", + " },\n", + " {\n", + " \"Action\": \"Add\",\n", + " \"Key\": \"Ny4zOTAwMDBB\",\n", + " \"Fields\": {\n", + " \"ORDER_PRC\": 7.39,\n", + " \"ORDER_SIDE\": \"ASK\",\n", + " \"NO_ORD\": 2,\n", + " \"ACC_SIZE\": 26400,\n", + " \"LV_TIM_MS\": 41335015,\n", + " \"LV_TIM_MSP\": 355,\n", + " \"LV_DATE\": \"2022-06-22\"\n", + " }\n", + " },\n", + " {\n", + " \"Action\": \"Add\",\n", + " \"Key\": \"MTEuOTAwMDAwQQ==\",\n", + " \"Fields\": {\n", + " \"ORDER_PRC\": 11.9,\n", + " \"ORDER_SIDE\": \"ASK\",\n", + " \"NO_ORD\": 1,\n", + " \"ACC_SIZE\": 5000,\n", + " \"LV_TIM_MS\": 40919451,\n", + " \"LV_TIM_MSP\": 103,\n", + " \"LV_DATE\": \"2022-05-30\"\n", + " }\n", + " },\n", + " {\n", + " \"Action\": \"Add\",\n", + " \"Key\": \"OC45OTAwMDBB\",\n", + " \"Fields\": {\n", + " \"ORDER_PRC\": 8.99,\n", + " \"ORDER_SIDE\": \"ASK\",\n", + " \"NO_ORD\": 6,\n", + " \"ACC_SIZE\": 8200,\n", + " \"LV_TIM_MS\": 41412132,\n", + " \"LV_TIM_MSP\": 60,\n", + " \"LV_DATE\": \"2022-06-22\"\n", + " }\n", + " },\n", + " {\n", + " \"Action\": \"Add\",\n", + " \"Key\": \"MTIuMDgwMDAwQQ==\",\n", + " \"Fields\": {\n", + " \"ORDER_PRC\": 12.08,\n", + " \"ORDER_SIDE\": \"ASK\",\n", + " \"NO_ORD\": 1,\n", + " \"ACC_SIZE\": 9500,\n", + " \"LV_TIM_MS\": 75050456,\n", + " \"LV_TIM_MSP\": 397,\n", + " \"LV_DATE\": \"2021-12-31\"\n", + " }\n", + " },\n", + " {\n", + " \"Action\": \"Add\",\n", + " \"Key\": \"MTUuMjEwMDAwQQ==\",\n", + " \"Fields\": {\n", + " \"ORDER_PRC\": 15.21,\n", + " \"ORDER_SIDE\": \"ASK\",\n", + " \"NO_ORD\": 1,\n", + " \"ACC_SIZE\": 200,\n", + " \"LV_TIM_MS\": 41402019,\n", + " \"LV_TIM_MSP\": 22,\n", + " \"LV_DATE\": \"2022-06-22\"\n", + " }\n", + " },\n", + " {\n", + " \"Action\": \"Add\",\n", + " \"Key\": \"Ni4wMjAwMDBC\",\n", + " \"Fields\": {\n", + " \"ORDER_PRC\": 6.02,\n", + " \"ORDER_SIDE\": \"BID\",\n", + " \"NO_ORD\": 5,\n", + " \"ACC_SIZE\": 1500,\n", + " \"LV_TIM_MS\": 49823440,\n", + " \"LV_TIM_MSP\": 278,\n", + " \"LV_DATE\": \"2022-06-22\"\n", + " }\n", + " },\n", + " {\n", + " \"Action\": \"Add\",\n", + " \"Key\": \"MTguODAwMDAwQQ==\",\n", + " \"Fields\": {\n", + " \"ORDER_PRC\": 18.8,\n", + " \"ORDER_SIDE\": \"ASK\",\n", + " \"NO_ORD\": 1,\n", + " \"ACC_SIZE\": 100,\n", + " \"LV_TIM_MS\": 40925887,\n", + " \"LV_TIM_MSP\": 704,\n", + " \"LV_DATE\": \"2022-05-30\"\n", + " }\n", + " },\n", + " {\n", + " \"Action\": \"Add\",\n", + " \"Key\": \"MjQuNTYwMDAwQQ==\",\n", + " \"Fields\": {\n", + " \"ORDER_PRC\": 24.56,\n", + " \"ORDER_SIDE\": \"ASK\",\n", + " \"NO_ORD\": 1,\n", + " \"ACC_SIZE\": 500,\n", + " \"LV_TIM_MS\": 41412127,\n", + " \"LV_TIM_MSP\": 49,\n", + " \"LV_DATE\": \"2022-06-22\"\n", + " }\n", + " },\n", + " {\n", + " \"Action\": \"Add\",\n", + " \"Key\": \"Ni40NjAwMDBC\",\n", + " \"Fields\": {\n", + " \"ORDER_PRC\": 6.46,\n", + " \"ORDER_SIDE\": \"BID\",\n", + " \"NO_ORD\": 1,\n", + " \"ACC_SIZE\": 300,\n", + " \"LV_TIM_MS\": 49291033,\n", + " \"LV_TIM_MSP\": 591,\n", + " \"LV_DATE\": \"2022-06-22\"\n", + " }\n", + " },\n", + " {\n", + " \"Action\": \"Add\",\n", + " \"Key\": \"MTAuMjAwMDAwQQ==\",\n", + " \"Fields\": {\n", + " \"ORDER_PRC\": 10.2,\n", + " \"ORDER_SIDE\": \"ASK\",\n", + " \"NO_ORD\": 3,\n", + " \"ACC_SIZE\": 1300,\n", + " \"LV_TIM_MS\": 42403330,\n", + " \"LV_TIM_MSP\": 889,\n", + " \"LV_DATE\": \"2022-05-30\"\n", + " }\n", + " },\n", + " {\n", + " \"Action\": \"Add\",\n", + " \"Key\": \"MzUuMDAwMDAwQQ==\",\n", + " \"Fields\": {\n", + " \"ORDER_PRC\": 35.0,\n", + " \"ORDER_SIDE\": \"ASK\",\n", + " \"NO_ORD\": 13,\n", + " \"ACC_SIZE\": 25400,\n", + " \"LV_TIM_MS\": 41412131,\n", + " \"LV_TIM_MSP\": 63,\n", + " \"LV_DATE\": \"2022-06-22\"\n", + " }\n", + " },\n", + " {\n", + " \"Action\": \"Add\",\n", + " \"Key\": \"OC40NTAwMDBB\",\n", + " \"Fields\": {\n", + " \"ORDER_PRC\": 8.45,\n", + " \"ORDER_SIDE\": \"ASK\",\n", + " \"NO_ORD\": 1,\n", + " \"ACC_SIZE\": 200,\n", + " \"LV_TIM_MS\": 61097658,\n", + " \"LV_TIM_MSP\": 742,\n", + " \"LV_DATE\": \"2022-06-02\"\n", + " }\n", + " },\n", + " {\n", + " \"Action\": \"Add\",\n", + " \"Key\": \"MzMuODkwMDAwQQ==\",\n", + " \"Fields\": {\n", + " \"ORDER_PRC\": 33.89,\n", + " \"ORDER_SIDE\": \"ASK\",\n", + " \"NO_ORD\": 1,\n", + " \"ACC_SIZE\": 1000,\n", + " \"LV_TIM_MS\": 57617176,\n", + " \"LV_TIM_MSP\": 953,\n", + " \"LV_DATE\": \"2022-06-01\"\n", + " }\n", + " },\n", + " {\n", + " \"Action\": \"Add\",\n", + " \"Key\": \"OC44OTAwMDBB\",\n", + " \"Fields\": {\n", + " \"ORDER_PRC\": 8.89,\n", + " \"ORDER_SIDE\": \"ASK\",\n", + " \"NO_ORD\": 4,\n", + " \"ACC_SIZE\": 3600,\n", + " \"LV_TIM_MS\": 68750235,\n", + " \"LV_TIM_MSP\": 596,\n", + " \"LV_DATE\": \"2022-05-31\"\n", + " }\n", + " },\n", + " {\n", + " \"Action\": \"Add\",\n", + " \"Key\": \"MTEuODAwMDAwQQ==\",\n", + " \"Fields\": {\n", + " \"ORDER_PRC\": 11.8,\n", + " \"ORDER_SIDE\": \"ASK\",\n", + " \"NO_ORD\": 1,\n", + " \"ACC_SIZE\": 600,\n", + " \"LV_TIM_MS\": 40398293,\n", + " \"LV_TIM_MSP\": 246,\n", + " \"LV_DATE\": \"2022-06-22\"\n", + " }\n", + " },\n", + " {\n", + " \"Action\": \"Add\",\n", + " \"Key\": \"NS41MzAwMDBC\",\n", + " \"Fields\": {\n", + " \"ORDER_PRC\": 5.53,\n", + " \"ORDER_SIDE\": \"BID\",\n", + " \"NO_ORD\": 1,\n", + " \"ACC_SIZE\": 100,\n", + " \"LV_TIM_MS\": 41669664,\n", + " \"LV_TIM_MSP\": 810,\n", + " \"LV_DATE\": \"2022-06-13\"\n", + " }\n", + " },\n", + " {\n", + " \"Action\": \"Add\",\n", + " \"Key\": \"NS45NzAwMDBC\",\n", + " \"Fields\": {\n", + " \"ORDER_PRC\": 5.97,\n", + " \"ORDER_SIDE\": \"BID\",\n", + " \"NO_ORD\": 1,\n", + " \"ACC_SIZE\": 100,\n", + " \"LV_TIM_MS\": 53677280,\n", + " \"LV_TIM_MSP\": 660,\n", + " \"LV_DATE\": \"2022-06-15\"\n", + " }\n", + " },\n", + " {\n", + " \"Action\": \"Add\",\n", + " \"Key\": \"MTAuNjYwMDAwQQ==\",\n", + " \"Fields\": {\n", + " \"ORDER_PRC\": 10.66,\n", + " \"ORDER_SIDE\": \"ASK\",\n", + " \"NO_ORD\": 1,\n", + " \"ACC_SIZE\": 3500,\n", + " \"LV_TIM_MS\": 40995895,\n", + " \"LV_TIM_MSP\": 729,\n", + " \"LV_DATE\": \"2022-05-30\"\n", + " }\n", + " },\n", + " {\n", + " \"Action\": \"Add\",\n", + " \"Key\": \"Ny41MjAwMDBB\",\n", + " \"Fields\": {\n", + " \"ORDER_PRC\": 7.52,\n", + " \"ORDER_SIDE\": \"ASK\",\n", + " \"NO_ORD\": 3,\n", + " \"ACC_SIZE\": 7000,\n", + " \"LV_TIM_MS\": 54704541,\n", + " \"LV_TIM_MSP\": 98,\n", + " \"LV_DATE\": \"2022-06-21\"\n", + " }\n", + " },\n", + " {\n", + " \"Action\": \"Add\",\n", + " \"Key\": \"MjQuMDIwMDAwQQ==\",\n", + " \"Fields\": {\n", + " \"ORDER_PRC\": 24.02,\n", + " \"ORDER_SIDE\": \"ASK\",\n", + " \"NO_ORD\": 1,\n", + " \"ACC_SIZE\": 100,\n", + " \"LV_TIM_MS\": 39660330,\n", + " \"LV_TIM_MSP\": 277,\n", + " \"LV_DATE\": \"2022-06-15\"\n", + " }\n", + " },\n", + " {\n", + " \"Action\": \"Add\",\n", + " \"Key\": \"MTguNDkwMDAwQQ==\",\n", + " \"Fields\": {\n", + " \"ORDER_PRC\": 18.49,\n", + " \"ORDER_SIDE\": \"ASK\",\n", + " \"NO_ORD\": 1,\n", + " \"ACC_SIZE\": 200,\n", + " \"LV_TIM_MS\": 41699986,\n", + " \"LV_TIM_MSP\": 381,\n", + " \"LV_DATE\": \"2022-05-17\"\n", + " }\n", + " },\n", + " {\n", + " \"Action\": \"Add\",\n", + " \"Key\": \"My4wMDAwMDBC\",\n", + " \"Fields\": {\n", + " \"ORDER_PRC\": 3.0,\n", + " \"ORDER_SIDE\": \"BID\",\n", + " \"NO_ORD\": 5,\n", + " \"ACC_SIZE\": 1600,\n", + " \"LV_TIM_MS\": 41402022,\n", + " \"LV_TIM_MSP\": 45,\n", + " \"LV_DATE\": \"2022-06-22\"\n", + " }\n", + " }\n", + " ]\n", + " }\n", + "}\n", + "----------------------------------------------------------\n", + ">>> Refresh event received at 15:59:20.372327\n", + "{\n", + " \"ID\": 5,\n", + " \"Type\": \"Refresh\",\n", + " \"Domain\": \"MarketByPrice\",\n", + " \"Key\": {\n", + " \"Service\": \"ELEKTRON_DD\",\n", + " \"Name\": \"BB.TO\"\n", + " },\n", + " \"State\": {\n", + " \"Stream\": \"Open\",\n", + " \"Data\": \"Ok\",\n", + " \"Text\": \"All is well\"\n", + " },\n", + " \"Complete\": false,\n", + " \"Qos\": {\n", + " \"Timeliness\": \"Realtime\",\n", + " \"Rate\": \"TickByTick\"\n", + " },\n", + " \"ClearCache\": false,\n", + " \"PartNumber\": 3,\n", + " \"PermData\": \"AwFkMETA\",\n", + " \"SeqNumber\": 30688,\n", + " \"Map\": {\n", + " \"KeyType\": \"Buffer\",\n", + " \"Entries\": [\n", + " {\n", + " \"Action\": \"Add\",\n", + " \"Key\": \"MTEuMDUwMDAwQQ==\",\n", + " \"Fields\": {\n", + " \"ORDER_PRC\": 11.05,\n", + " \"ORDER_SIDE\": \"ASK\",\n", + " \"NO_ORD\": 1,\n", + " \"ACC_SIZE\": 3000,\n", + " \"LV_TIM_MS\": 47117868,\n", + " \"LV_TIM_MSP\": 922,\n", + " \"LV_DATE\": \"2022-05-16\"\n", + " }\n", + " },\n", + " {\n", + " \"Action\": \"Add\",\n", + " \"Key\": \"OC4zNTAwMDBB\",\n", + " \"Fields\": {\n", + " \"ORDER_PRC\": 8.35,\n", + " \"ORDER_SIDE\": \"ASK\",\n", + " \"NO_ORD\": 2,\n", + " \"ACC_SIZE\": 1000,\n", + " \"LV_TIM_MS\": 39601332,\n", + " \"LV_TIM_MSP\": 213,\n", + " \"LV_DATE\": \"2022-06-22\"\n", + " }\n", + " },\n", + " {\n", + " \"Action\": \"Add\",\n", + " \"Key\": \"OS41MTAwMDBB\",\n", + " \"Fields\": {\n", + " \"ORDER_PRC\": 9.51,\n", + " \"ORDER_SIDE\": \"ASK\",\n", + " \"NO_ORD\": 2,\n", + " \"ACC_SIZE\": 4400,\n", + " \"LV_TIM_MS\": 53566263,\n", + " \"LV_TIM_MSP\": 278,\n", + " \"LV_DATE\": \"2022-05-31\"\n", + " }\n", + " },\n", + " {\n", + " \"Action\": \"Add\",\n", + " \"Key\": \"MTEuNDkwMDAwQQ==\",\n", + " \"Fields\": {\n", + " \"ORDER_PRC\": 11.49,\n", + " \"ORDER_SIDE\": \"ASK\",\n", + " \"NO_ORD\": 1,\n", + " \"ACC_SIZE\": 2600,\n", + " \"LV_TIM_MS\": 43036797,\n", + " \"LV_TIM_MSP\": 674,\n", + " \"LV_DATE\": \"2022-05-11\"\n", + " }\n", + " },\n", + " {\n", + " \"Action\": \"Add\",\n", + " \"Key\": \"MTEuNzAwMDAwQQ==\",\n", + " \"Fields\": {\n", + " \"ORDER_PRC\": 11.7,\n", + " \"ORDER_SIDE\": \"ASK\",\n", + " \"NO_ORD\": 1,\n", + " \"ACC_SIZE\": 100,\n", + " \"LV_TIM_MS\": 40927104,\n", + " \"LV_TIM_MSP\": 337,\n", + " \"LV_DATE\": \"2022-05-30\"\n", + " }\n", + " },\n", + " {\n", + " \"Action\": \"Add\",\n", + " \"Key\": \"OC43OTAwMDBB\",\n", + " \"Fields\": {\n", + " \"ORDER_PRC\": 8.79,\n", + " \"ORDER_SIDE\": \"ASK\",\n", + " \"NO_ORD\": 6,\n", + " \"ACC_SIZE\": 3700,\n", + " \"LV_TIM_MS\": 41412132,\n", + " \"LV_TIM_MSP\": 54,\n", + " \"LV_DATE\": \"2022-06-22\"\n", + " }\n", + " },\n", + " {\n", + " \"Action\": \"Add\",\n", + " \"Key\": \"MjEuOTgwMDAwQQ==\",\n", + " \"Fields\": {\n", + " \"ORDER_PRC\": 21.98,\n", + " \"ORDER_SIDE\": \"ASK\",\n", + " \"NO_ORD\": 1,\n", + " \"ACC_SIZE\": 100,\n", + " \"LV_TIM_MS\": 40995915,\n", + " \"LV_TIM_MSP\": 162,\n", + " \"LV_DATE\": \"2022-05-30\"\n", + " }\n", + " },\n", + " {\n", + " \"Action\": \"Add\",\n", + " \"Key\": \"OS45NTAwMDBB\",\n", + " \"Fields\": {\n", + " \"ORDER_PRC\": 9.95,\n", + " \"ORDER_SIDE\": \"ASK\",\n", + " \"NO_ORD\": 8,\n", + " \"ACC_SIZE\": 3500,\n", + " \"LV_TIM_MS\": 41402018,\n", + " \"LV_TIM_MSP\": 32,\n", + " \"LV_DATE\": \"2022-06-22\"\n", + " }\n", + " },\n", + " {\n", + " \"Action\": \"Add\",\n", + " \"Key\": \"MjguMDAwMDAwQQ==\",\n", + " \"Fields\": {\n", + " \"ORDER_PRC\": 28.0,\n", + " \"ORDER_SIDE\": \"ASK\",\n", + " \"NO_ORD\": 7,\n", + " \"ACC_SIZE\": 2900,\n", + " \"LV_TIM_MS\": 41402020,\n", + " \"LV_TIM_MSP\": 22,\n", + " \"LV_DATE\": \"2022-06-22\"\n", + " }\n", + " },\n", + " {\n", + " \"Action\": \"Add\",\n", + " \"Key\": \"MTMuNDgwMDAwQQ==\",\n", + " \"Fields\": {\n", + " \"ORDER_PRC\": 13.48,\n", + " \"ORDER_SIDE\": \"ASK\",\n", + " \"NO_ORD\": 1,\n", + " \"ACC_SIZE\": 200,\n", + " \"LV_TIM_MS\": 62201367,\n", + " \"LV_TIM_MSP\": 377,\n", + " \"LV_DATE\": \"2022-03-24\"\n", + " }\n", + " },\n", + " {\n", + " \"Action\": \"Add\",\n", + " \"Key\": \"MjEuMDAwMDAwQQ==\",\n", + " \"Fields\": {\n", + " \"ORDER_PRC\": 21.0,\n", + " \"ORDER_SIDE\": \"ASK\",\n", + " \"NO_ORD\": 11,\n", + " \"ACC_SIZE\": 7500,\n", + " \"LV_TIM_MS\": 41412129,\n", + " \"LV_TIM_MSP\": 48,\n", + " \"LV_DATE\": \"2022-06-22\"\n", + " }\n", + " },\n", + " {\n", + " \"Action\": \"Add\",\n", + " \"Key\": \"MTguNjAwMDAwQQ==\",\n", + " \"Fields\": {\n", + " \"ORDER_PRC\": 18.6,\n", + " \"ORDER_SIDE\": \"ASK\",\n", + " \"NO_ORD\": 1,\n", + " \"ACC_SIZE\": 500,\n", + " \"LV_TIM_MS\": 44245303,\n", + " \"LV_TIM_MSP\": 646,\n", + " \"LV_DATE\": \"2022-05-10\"\n", + " }\n", + " },\n", + " {\n", + " \"Action\": \"Add\",\n", + " \"Key\": \"Ny44NjAwMDBB\",\n", + " \"Fields\": {\n", + " \"ORDER_PRC\": 7.86,\n", + " \"ORDER_SIDE\": \"ASK\",\n", + " \"NO_ORD\": 1,\n", + " \"ACC_SIZE\": 100,\n", + " \"LV_TIM_MS\": 62923082,\n", + " \"LV_TIM_MSP\": 551,\n", + " \"LV_DATE\": \"2022-06-21\"\n", + " }\n", + " },\n", + " {\n", + " \"Action\": \"Add\",\n", + " \"Key\": \"NC41MDAwMDBC\",\n", + " \"Fields\": {\n", + " \"ORDER_PRC\": 4.5,\n", + " \"ORDER_SIDE\": \"BID\",\n", + " \"NO_ORD\": 4,\n", + " \"ACC_SIZE\": 3700,\n", + " \"LV_TIM_MS\": 55331573,\n", + " \"LV_TIM_MSP\": 30,\n", + " \"LV_DATE\": \"2022-06-21\"\n", + " }\n", + " },\n", + " {\n", + " \"Action\": \"Add\",\n", + " \"Key\": \"MTIuNTUwMDAwQQ==\",\n", + " \"Fields\": {\n", + " \"ORDER_PRC\": 12.55,\n", + " \"ORDER_SIDE\": \"ASK\",\n", + " \"NO_ORD\": 1,\n", + " \"ACC_SIZE\": 300,\n", + " \"LV_TIM_MS\": 52244256,\n", + " \"LV_TIM_MSP\": 846,\n", + " \"LV_DATE\": \"2022-06-20\"\n", + " }\n", + " },\n", + " {\n", + " \"Action\": \"Add\",\n", + " \"Key\": \"Ni4yODAwMDBC\",\n", + " \"Fields\": {\n", + " \"ORDER_PRC\": 6.28,\n", + " \"ORDER_SIDE\": \"BID\",\n", + " \"NO_ORD\": 1,\n", + " \"ACC_SIZE\": 100,\n", + " \"LV_TIM_MS\": 60939198,\n", + " \"LV_TIM_MSP\": 390,\n", + " \"LV_DATE\": \"2022-06-21\"\n", + " }\n", + " },\n", + " {\n", + " \"Action\": \"Add\",\n", + " \"Key\": \"OS44NTAwMDBB\",\n", + " \"Fields\": {\n", + " \"ORDER_PRC\": 9.85,\n", + " \"ORDER_SIDE\": \"ASK\",\n", + " \"NO_ORD\": 1,\n", + " \"ACC_SIZE\": 200,\n", + " \"LV_TIM_MS\": 40924913,\n", + " \"LV_TIM_MSP\": 699,\n", + " \"LV_DATE\": \"2022-05-30\"\n", + " }\n", + " },\n", + " {\n", + " \"Action\": \"Add\",\n", + " \"Key\": \"MTIuOTkwMDAwQQ==\",\n", + " \"Fields\": {\n", + " \"ORDER_PRC\": 12.99,\n", + " \"ORDER_SIDE\": \"ASK\",\n", + " \"NO_ORD\": 1,\n", + " \"ACC_SIZE\": 100,\n", + " \"LV_TIM_MS\": 41437968,\n", + " \"LV_TIM_MSP\": 197,\n", + " \"LV_DATE\": \"2022-05-05\"\n", + " }\n", + " },\n", + " {\n", + " \"Action\": \"Add\",\n", + " \"Key\": \"NS4zMzAwMDBC\",\n", + " \"Fields\": {\n", + " \"ORDER_PRC\": 5.33,\n", + " \"ORDER_SIDE\": \"BID\",\n", + " \"NO_ORD\": 2,\n", + " \"ACC_SIZE\": 400,\n", + " \"LV_TIM_MS\": 68904326,\n", + " \"LV_TIM_MSP\": 563,\n", + " \"LV_DATE\": \"2022-06-16\"\n", + " }\n", + " },\n", + " {\n", + " \"Action\": \"Add\",\n", + " \"Key\": \"OC4yNzAwMDBB\",\n", + " \"Fields\": {\n", + " \"ORDER_PRC\": 8.27,\n", + " \"ORDER_SIDE\": \"ASK\",\n", + " \"NO_ORD\": 1,\n", + " \"ACC_SIZE\": 400,\n", + " \"LV_TIM_MS\": 66116723,\n", + " \"LV_TIM_MSP\": 500,\n", + " \"LV_DATE\": \"2022-06-01\"\n", + " }\n", + " },\n", + " {\n", + " \"Action\": \"Add\",\n", + " \"Key\": \"Ni45MzAwMDBC\",\n", + " \"Fields\": {\n", + " \"ORDER_PRC\": 6.93,\n", + " \"ORDER_SIDE\": \"BID\",\n", + " \"NO_ORD\": 2,\n", + " \"ACC_SIZE\": 300,\n", + " \"LV_TIM_MS\": 50344523,\n", + " \"LV_TIM_MSP\": 538,\n", + " \"LV_DATE\": \"2022-06-22\"\n", + " }\n", + " },\n", + " {\n", + " \"Action\": \"Add\",\n", + " \"Key\": \"Ny4zMjAwMDBB\",\n", + " \"Fields\": {\n", + " \"ORDER_PRC\": 7.32,\n", + " \"ORDER_SIDE\": \"ASK\",\n", + " \"NO_ORD\": 1,\n", + " \"ACC_SIZE\": 800,\n", + " \"LV_TIM_MS\": 41978768,\n", + " \"LV_TIM_MSP\": 278,\n", + " \"LV_DATE\": \"2022-06-14\"\n", + " }\n", + " },\n", + " {\n", + " \"Action\": \"Add\",\n", + " \"Key\": \"MTAuNDYwMDAwQQ==\",\n", + " \"Fields\": {\n", + " \"ORDER_PRC\": 10.46,\n", + " \"ORDER_SIDE\": \"ASK\",\n", + " \"NO_ORD\": 1,\n", + " \"ACC_SIZE\": 300,\n", + " \"LV_TIM_MS\": 62550188,\n", + " \"LV_TIM_MSP\": 341,\n", + " \"LV_DATE\": \"2022-05-27\"\n", + " }\n", + " },\n", + " {\n", + " \"Action\": \"Add\",\n", + " \"Key\": \"MTQuOTgwMDAwQQ==\",\n", + " \"Fields\": {\n", + " \"ORDER_PRC\": 14.98,\n", + " \"ORDER_SIDE\": \"ASK\",\n", + " \"NO_ORD\": 1,\n", + " \"ACC_SIZE\": 200,\n", + " \"LV_TIM_MS\": 60331128,\n", + " \"LV_TIM_MSP\": 735,\n", + " \"LV_DATE\": \"2022-05-13\"\n", + " }\n", + " },\n", + " {\n", + " \"Action\": \"Add\",\n", + " \"Key\": \"MjAwLjAwMDAwMEE=\",\n", + " \"Fields\": {\n", + " \"ORDER_PRC\": 200.0,\n", + " \"ORDER_SIDE\": \"ASK\",\n", + " \"NO_ORD\": 9,\n", + " \"ACC_SIZE\": 78400,\n", + " \"LV_TIM_MS\": 41400519,\n", + " \"LV_TIM_MSP\": 905,\n", + " \"LV_DATE\": \"2022-06-22\"\n", + " }\n", + " },\n", + " {\n", + " \"Action\": \"Add\",\n", + " \"Key\": \"MTIuMDEwMDAwQQ==\",\n", + " \"Fields\": {\n", + " \"ORDER_PRC\": 12.01,\n", + " \"ORDER_SIDE\": \"ASK\",\n", + " \"NO_ORD\": 1,\n", + " \"ACC_SIZE\": 100,\n", + " \"LV_TIM_MS\": 55583066,\n", + " \"LV_TIM_MSP\": 292,\n", + " \"LV_DATE\": \"2022-04-26\"\n", + " }\n", + " },\n", + " {\n", + " \"Action\": \"Add\",\n", + " \"Key\": \"MjIuNTAwMDAwQQ==\",\n", + " \"Fields\": {\n", + " \"ORDER_PRC\": 22.5,\n", + " \"ORDER_SIDE\": \"ASK\",\n", + " \"NO_ORD\": 4,\n", + " \"ACC_SIZE\": 1700,\n", + " \"LV_TIM_MS\": 39611656,\n", + " \"LV_TIM_MSP\": 834,\n", + " \"LV_DATE\": \"2022-06-07\"\n", + " }\n", + " },\n", + " {\n", + " \"Action\": \"Add\",\n", + " \"Key\": \"NC44NDAwMDBC\",\n", + " \"Fields\": {\n", + " \"ORDER_PRC\": 4.84,\n", + " \"ORDER_SIDE\": \"BID\",\n", + " \"NO_ORD\": 1,\n", + " \"ACC_SIZE\": 2000,\n", + " \"LV_TIM_MS\": 40927067,\n", + " \"LV_TIM_MSP\": 271,\n", + " \"LV_DATE\": \"2022-05-30\"\n", + " }\n", + " },\n", + " {\n", + " \"Action\": \"Add\",\n", + " \"Key\": \"Ni4xODAwMDBC\",\n", + " \"Fields\": {\n", + " \"ORDER_PRC\": 6.18,\n", + " \"ORDER_SIDE\": \"BID\",\n", + " \"NO_ORD\": 3,\n", + " \"ACC_SIZE\": 4800,\n", + " \"LV_TIM_MS\": 41412131,\n", + " \"LV_TIM_MSP\": 30,\n", + " \"LV_DATE\": \"2022-06-22\"\n", + " }\n", + " },\n", + " {\n", + " \"Action\": \"Add\",\n", + " \"Key\": \"MTQuMDAwMDAwQQ==\",\n", + " \"Fields\": {\n", + " \"ORDER_PRC\": 14.0,\n", + " \"ORDER_SIDE\": \"ASK\",\n", + " \"NO_ORD\": 22,\n", + " \"ACC_SIZE\": 19400,\n", + " \"LV_TIM_MS\": 41402019,\n", + " \"LV_TIM_MSP\": 48,\n", + " \"LV_DATE\": \"2022-06-22\"\n", + " }\n", + " },\n", + " {\n", + " \"Action\": \"Add\",\n", + " \"Key\": \"NjguODgwMDAwQQ==\",\n", + " \"Fields\": {\n", + " \"ORDER_PRC\": 68.88,\n", + " \"ORDER_SIDE\": \"ASK\",\n", + " \"NO_ORD\": 3,\n", + " \"ACC_SIZE\": 4100,\n", + " \"LV_TIM_MS\": 40991690,\n", + " \"LV_TIM_MSP\": 46,\n", + " \"LV_DATE\": \"2022-05-30\"\n", + " }\n", + " },\n", + " {\n", + " \"Action\": \"Add\",\n", + " \"Key\": \"OS43NTAwMDBB\",\n", + " \"Fields\": {\n", + " \"ORDER_PRC\": 9.75,\n", + " \"ORDER_SIDE\": \"ASK\",\n", + " \"NO_ORD\": 4,\n", + " \"ACC_SIZE\": 600,\n", + " \"LV_TIM_MS\": 41412126,\n", + " \"LV_TIM_MSP\": 32,\n", + " \"LV_DATE\": \"2022-06-22\"\n", + " }\n", + " },\n", + " {\n", + " \"Action\": \"Add\",\n", + " \"Key\": \"OC4xNzAwMDBB\",\n", + " \"Fields\": {\n", + " \"ORDER_PRC\": 8.17,\n", + " \"ORDER_SIDE\": \"ASK\",\n", + " \"NO_ORD\": 1,\n", + " \"ACC_SIZE\": 200,\n", + " \"LV_TIM_MS\": 63363035,\n", + " \"LV_TIM_MSP\": 733,\n", + " \"LV_DATE\": \"2022-05-31\"\n", + " }\n", + " },\n", + " {\n", + " \"Action\": \"Add\",\n", + " \"Key\": \"MTQuNDQwMDAwQQ==\",\n", + " \"Fields\": {\n", + " \"ORDER_PRC\": 14.44,\n", + " \"ORDER_SIDE\": \"ASK\",\n", + " \"NO_ORD\": 1,\n", + " \"ACC_SIZE\": 200,\n", + " \"LV_TIM_MS\": 41412126,\n", + " \"LV_TIM_MSP\": 30,\n", + " \"LV_DATE\": \"2022-06-22\"\n", + " }\n", + " },\n", + " {\n", + " \"Action\": \"Add\",\n", + " \"Key\": \"MTQuODgwMDAwQQ==\",\n", + " \"Fields\": {\n", + " \"ORDER_PRC\": 14.88,\n", + " \"ORDER_SIDE\": \"ASK\",\n", + " \"NO_ORD\": 1,\n", + " \"ACC_SIZE\": 800,\n", + " \"LV_TIM_MS\": 41402013,\n", + " \"LV_TIM_MSP\": 9,\n", + " \"LV_DATE\": \"2022-06-22\"\n", + " }\n", + " },\n", + " {\n", + " \"Action\": \"Add\",\n", + " \"Key\": \"Ni44MzAwMDBC\",\n", + " \"Fields\": {\n", + " \"ORDER_PRC\": 6.83,\n", + " \"ORDER_SIDE\": \"BID\",\n", + " \"NO_ORD\": 5,\n", + " \"ACC_SIZE\": 2400,\n", + " \"LV_TIM_MS\": 50238145,\n", + " \"LV_TIM_MSP\": 197,\n", + " \"LV_DATE\": \"2022-06-22\"\n", + " }\n", + " },\n", + " {\n", + " \"Action\": \"Add\",\n", + " \"Key\": \"NS4yNTAwMDBC\",\n", + " \"Fields\": {\n", + " \"ORDER_PRC\": 5.25,\n", + " \"ORDER_SIDE\": \"BID\",\n", + " \"NO_ORD\": 4,\n", + " \"ACC_SIZE\": 2700,\n", + " \"LV_TIM_MS\": 44239068,\n", + " \"LV_TIM_MSP\": 343,\n", + " \"LV_DATE\": \"2022-06-14\"\n", + " }\n", + " },\n", + " {\n", + " \"Action\": \"Add\",\n", + " \"Key\": \"OC44MjAwMDBB\",\n", + " \"Fields\": {\n", + " \"ORDER_PRC\": 8.82,\n", + " \"ORDER_SIDE\": \"ASK\",\n", + " \"NO_ORD\": 1,\n", + " \"ACC_SIZE\": 200,\n", + " \"LV_TIM_MS\": 39632722,\n", + " \"LV_TIM_MSP\": 843,\n", + " \"LV_DATE\": \"2022-06-14\"\n", + " }\n", + " },\n", + " {\n", + " \"Action\": \"Add\",\n", + " \"Key\": \"MTYuNDMwMDAwQQ==\",\n", + " \"Fields\": {\n", + " \"ORDER_PRC\": 16.43,\n", + " \"ORDER_SIDE\": \"ASK\",\n", + " \"NO_ORD\": 1,\n", + " \"ACC_SIZE\": 100,\n", + " \"LV_TIM_MS\": 49960369,\n", + " \"LV_TIM_MSP\": 654,\n", + " \"LV_DATE\": \"2021-07-28\"\n", + " }\n", + " },\n", + " {\n", + " \"Action\": \"Add\",\n", + " \"Key\": \"MTEuOTYwMDAwQQ==\",\n", + " \"Fields\": {\n", + " \"ORDER_PRC\": 11.96,\n", + " \"ORDER_SIDE\": \"ASK\",\n", + " \"NO_ORD\": 1,\n", + " \"ACC_SIZE\": 1000,\n", + " \"LV_TIM_MS\": 55319936,\n", + " \"LV_TIM_MSP\": 207,\n", + " \"LV_DATE\": \"2022-04-26\"\n", + " }\n", + " },\n", + " {\n", + " \"Action\": \"Add\",\n", + " \"Key\": \"NS42OTAwMDBC\",\n", + " \"Fields\": {\n", + " \"ORDER_PRC\": 5.69,\n", + " \"ORDER_SIDE\": \"BID\",\n", + " \"NO_ORD\": 1,\n", + " \"ACC_SIZE\": 100,\n", + " \"LV_TIM_MS\": 71502813,\n", + " \"LV_TIM_MSP\": 153,\n", + " \"LV_DATE\": \"2022-06-14\"\n", + " }\n", + " },\n", + " {\n", + " \"Action\": \"Add\",\n", + " \"Key\": \"Ny4yNDAwMDBB\",\n", + " \"Fields\": {\n", + " \"ORDER_PRC\": 7.24,\n", + " \"ORDER_SIDE\": \"ASK\",\n", + " \"NO_ORD\": 2,\n", + " \"ACC_SIZE\": 200,\n", + " \"LV_TIM_MS\": 41412131,\n", + " \"LV_TIM_MSP\": 43,\n", + " \"LV_DATE\": \"2022-06-22\"\n", + " }\n", + " },\n", + " {\n", + " \"Action\": \"Add\",\n", + " \"Key\": \"MjIuNDAwMDAwQQ==\",\n", + " \"Fields\": {\n", + " \"ORDER_PRC\": 22.4,\n", + " \"ORDER_SIDE\": \"ASK\",\n", + " \"NO_ORD\": 1,\n", + " \"ACC_SIZE\": 9500,\n", + " \"LV_TIM_MS\": 44265020,\n", + " \"LV_TIM_MSP\": 846,\n", + " \"LV_DATE\": \"2022-05-26\"\n", + " }\n", + " },\n", + " {\n", + " \"Action\": \"Add\",\n", + " \"Key\": \"Ni4wODAwMDBC\",\n", + " \"Fields\": {\n", + " \"ORDER_PRC\": 6.08,\n", + " \"ORDER_SIDE\": \"BID\",\n", + " \"NO_ORD\": 2,\n", + " \"ACC_SIZE\": 600,\n", + " \"LV_TIM_MS\": 44284418,\n", + " \"LV_TIM_MSP\": 196,\n", + " \"LV_DATE\": \"2022-06-13\"\n", + " }\n", + " },\n", + " {\n", + " \"Action\": \"Add\",\n", + " \"Key\": \"NS45MDAwMDBC\",\n", + " \"Fields\": {\n", + " \"ORDER_PRC\": 5.9,\n", + " \"ORDER_SIDE\": \"BID\",\n", + " \"NO_ORD\": 5,\n", + " \"ACC_SIZE\": 1200,\n", + " \"LV_TIM_MS\": 41402021,\n", + " \"LV_TIM_MSP\": 28,\n", + " \"LV_DATE\": \"2022-06-22\"\n", + " }\n", + " },\n", + " {\n", + " \"Action\": \"Add\",\n", + " \"Key\": \"Ny42ODAwMDBB\",\n", + " \"Fields\": {\n", + " \"ORDER_PRC\": 7.68,\n", + " \"ORDER_SIDE\": \"ASK\",\n", + " \"NO_ORD\": 3,\n", + " \"ACC_SIZE\": 5900,\n", + " \"LV_TIM_MS\": 54063164,\n", + " \"LV_TIM_MSP\": 376,\n", + " \"LV_DATE\": \"2022-06-09\"\n", + " }\n", + " },\n", + " {\n", + " \"Action\": \"Add\",\n", + " \"Key\": \"MTUuNTAwMDAwQQ==\",\n", + " \"Fields\": {\n", + " \"ORDER_PRC\": 15.5,\n", + " \"ORDER_SIDE\": \"ASK\",\n", + " \"NO_ORD\": 2,\n", + " \"ACC_SIZE\": 800,\n", + " \"LV_TIM_MS\": 39613731,\n", + " \"LV_TIM_MSP\": 256,\n", + " \"LV_DATE\": \"2022-03-28\"\n", + " }\n", + " },\n", + " {\n", + " \"Action\": \"Add\",\n", + " \"Key\": \"MjQuODMwMDAwQQ==\",\n", + " \"Fields\": {\n", + " \"ORDER_PRC\": 24.83,\n", + " \"ORDER_SIDE\": \"ASK\",\n", + " \"NO_ORD\": 2,\n", + " \"ACC_SIZE\": 9400,\n", + " \"LV_TIM_MS\": 40210763,\n", + " \"LV_TIM_MSP\": 694,\n", + " \"LV_DATE\": \"2022-06-22\"\n", + " }\n", + " },\n", + " {\n", + " \"Action\": \"Add\",\n", + " \"Key\": \"Ni43MzAwMDBC\",\n", + " \"Fields\": {\n", + " \"ORDER_PRC\": 6.73,\n", + " \"ORDER_SIDE\": \"BID\",\n", + " \"NO_ORD\": 1,\n", + " \"ACC_SIZE\": 100,\n", + " \"LV_TIM_MS\": 49879748,\n", + " \"LV_TIM_MSP\": 337,\n", + " \"LV_DATE\": \"2022-06-22\"\n", + " }\n", + " },\n", + " {\n", + " \"Action\": \"Add\",\n", + " \"Key\": \"OC43MjAwMDBB\",\n", + " \"Fields\": {\n", + " \"ORDER_PRC\": 8.72,\n", + " \"ORDER_SIDE\": \"ASK\",\n", + " \"NO_ORD\": 1,\n", + " \"ACC_SIZE\": 100,\n", + " \"LV_TIM_MS\": 66265739,\n", + " \"LV_TIM_MSP\": 11,\n", + " \"LV_DATE\": \"2022-04-14\"\n", + " }\n", + " },\n", + " {\n", + " \"Action\": \"Add\",\n", + " \"Key\": \"MTIuMjUwMDAwQQ==\",\n", + " \"Fields\": {\n", + " \"ORDER_PRC\": 12.25,\n", + " \"ORDER_SIDE\": \"ASK\",\n", + " \"NO_ORD\": 5,\n", + " \"ACC_SIZE\": 3800,\n", + " \"LV_TIM_MS\": 53871541,\n", + " \"LV_TIM_MSP\": 785,\n", + " \"LV_DATE\": \"2022-04-06\"\n", + " }\n", + " },\n", + " {\n", + " \"Action\": \"Add\",\n", + " \"Key\": \"Ny4xNDAwMDBB\",\n", + " \"Fields\": {\n", + " \"ORDER_PRC\": 7.14,\n", + " \"ORDER_SIDE\": \"ASK\",\n", + " \"NO_ORD\": 1,\n", + " \"ACC_SIZE\": 200,\n", + " \"LV_TIM_MS\": 52456703,\n", + " \"LV_TIM_MSP\": 124,\n", + " \"LV_DATE\": \"2022-06-21\"\n", + " }\n", + " },\n", + " {\n", + " \"Action\": \"Add\",\n", + " \"Key\": \"NS44MDAwMDBC\",\n", + " \"Fields\": {\n", + " \"ORDER_PRC\": 5.8,\n", + " \"ORDER_SIDE\": \"BID\",\n", + " \"NO_ORD\": 7,\n", + " \"ACC_SIZE\": 5600,\n", + " \"LV_TIM_MS\": 48395258,\n", + " \"LV_TIM_MSP\": 519,\n", + " \"LV_DATE\": \"2022-06-20\"\n", + " }\n", + " },\n", + " {\n", + " \"Action\": \"Add\",\n", + " \"Key\": \"MTIuNjkwMDAwQQ==\",\n", + " \"Fields\": {\n", + " \"ORDER_PRC\": 12.69,\n", + " \"ORDER_SIDE\": \"ASK\",\n", + " \"NO_ORD\": 1,\n", + " \"ACC_SIZE\": 1300,\n", + " \"LV_TIM_MS\": 69229849,\n", + " \"LV_TIM_MSP\": 24,\n", + " \"LV_DATE\": \"2022-05-25\"\n", + " }\n", + " },\n", + " {\n", + " \"Action\": \"Add\",\n", + " \"Key\": \"MTUuNDAwMDAwQQ==\",\n", + " \"Fields\": {\n", + " \"ORDER_PRC\": 15.4,\n", + " \"ORDER_SIDE\": \"ASK\",\n", + " \"NO_ORD\": 1,\n", + " \"ACC_SIZE\": 100,\n", + " \"LV_TIM_MS\": 55577075,\n", + " \"LV_TIM_MSP\": 915,\n", + " \"LV_DATE\": \"2022-06-20\"\n", + " }\n", + " },\n", + " {\n", + " \"Action\": \"Add\",\n", + " \"Key\": \"OS4xMzAwMDBB\",\n", + " \"Fields\": {\n", + " \"ORDER_PRC\": 9.13,\n", + " \"ORDER_SIDE\": \"ASK\",\n", + " \"NO_ORD\": 1,\n", + " \"ACC_SIZE\": 100,\n", + " \"LV_TIM_MS\": 59713212,\n", + " \"LV_TIM_MSP\": 946,\n", + " \"LV_DATE\": \"2022-05-27\"\n", + " }\n", + " },\n", + " {\n", + " \"Action\": \"Add\",\n", + " \"Key\": \"MTEuMzIwMDAwQQ==\",\n", + " \"Fields\": {\n", + " \"ORDER_PRC\": 11.32,\n", + " \"ORDER_SIDE\": \"ASK\",\n", + " \"NO_ORD\": 1,\n", + " \"ACC_SIZE\": 500,\n", + " \"LV_TIM_MS\": 52790761,\n", + " \"LV_TIM_MSP\": 678,\n", + " \"LV_DATE\": \"2022-06-07\"\n", + " }\n", + " },\n", + " {\n", + " \"Action\": \"Add\",\n", + " \"Key\": \"MjMuMTUwMDAwQQ==\",\n", + " \"Fields\": {\n", + " \"ORDER_PRC\": 23.15,\n", + " \"ORDER_SIDE\": \"ASK\",\n", + " \"NO_ORD\": 1,\n", + " \"ACC_SIZE\": 100,\n", + " \"LV_TIM_MS\": 41402017,\n", + " \"LV_TIM_MSP\": 43,\n", + " \"LV_DATE\": \"2022-06-22\"\n", + " }\n", + " },\n", + " {\n", + " \"Action\": \"Add\",\n", + " \"Key\": \"Ni4yMTAwMDBC\",\n", + " \"Fields\": {\n", + " \"ORDER_PRC\": 6.21,\n", + " \"ORDER_SIDE\": \"BID\",\n", + " \"NO_ORD\": 1,\n", + " \"ACC_SIZE\": 7000,\n", + " \"LV_TIM_MS\": 45618988,\n", + " \"LV_TIM_MSP\": 227,\n", + " \"LV_DATE\": \"2022-06-22\"\n", + " }\n", + " },\n", + " {\n", + " \"Action\": \"Add\",\n", + " \"Key\": \"NS40OTAwMDBC\",\n", + " \"Fields\": {\n", + " \"ORDER_PRC\": 5.49,\n", + " \"ORDER_SIDE\": \"BID\",\n", + " \"NO_ORD\": 1,\n", + " \"ACC_SIZE\": 100,\n", + " \"LV_TIM_MS\": 67218940,\n", + " \"LV_TIM_MSP\": 543,\n", + " \"LV_DATE\": \"2022-06-17\"\n", + " }\n", + " },\n", + " {\n", + " \"Action\": \"Add\",\n", + " \"Key\": \"MTMuMzEwMDAwQQ==\",\n", + " \"Fields\": {\n", + " \"ORDER_PRC\": 13.31,\n", + " \"ORDER_SIDE\": \"ASK\",\n", + " \"NO_ORD\": 1,\n", + " \"ACC_SIZE\": 300,\n", + " \"LV_TIM_MS\": 40989710,\n", + " \"LV_TIM_MSP\": 428,\n", + " \"LV_DATE\": \"2022-05-30\"\n", + " }\n", + " },\n", + " {\n", + " \"Action\": \"Add\",\n", + " \"Key\": \"NDcuMDAwMDAwQQ==\",\n", + " \"Fields\": {\n", + " \"ORDER_PRC\": 47.0,\n", + " \"ORDER_SIDE\": \"ASK\",\n", + " \"NO_ORD\": 1,\n", + " \"ACC_SIZE\": 1000,\n", + " \"LV_TIM_MS\": 51972113,\n", + " \"LV_TIM_MSP\": 515,\n", + " \"LV_DATE\": \"2022-05-04\"\n", + " }\n", + " },\n", + " {\n", + " \"Action\": \"Add\",\n", + " \"Key\": \"MzIuNDgwMDAwQQ==\",\n", + " \"Fields\": {\n", + " \"ORDER_PRC\": 32.48,\n", + " \"ORDER_SIDE\": \"ASK\",\n", + " \"NO_ORD\": 1,\n", + " \"ACC_SIZE\": 200,\n", + " \"LV_TIM_MS\": 39612066,\n", + " \"LV_TIM_MSP\": 50,\n", + " \"LV_DATE\": \"2022-03-28\"\n", + " }\n", + " },\n", + " {\n", + " \"Action\": \"Add\",\n", + " \"Key\": \"OC4yMDAwMDBB\",\n", + " \"Fields\": {\n", + " \"ORDER_PRC\": 8.2,\n", + " \"ORDER_SIDE\": \"ASK\",\n", + " \"NO_ORD\": 3,\n", + " \"ACC_SIZE\": 3800,\n", + " \"LV_TIM_MS\": 41412127,\n", + " \"LV_TIM_MSP\": 43,\n", + " \"LV_DATE\": \"2022-06-22\"\n", + " }\n", + " },\n", + " {\n", + " \"Action\": \"Add\",\n", + " \"Key\": \"Ni42NTAwMDBC\",\n", + " \"Fields\": {\n", + " \"ORDER_PRC\": 6.65,\n", + " \"ORDER_SIDE\": \"BID\",\n", + " \"NO_ORD\": 3,\n", + " \"ACC_SIZE\": 2500,\n", + " \"LV_TIM_MS\": 50064074,\n", + " \"LV_TIM_MSP\": 361,\n", + " \"LV_DATE\": \"2022-06-22\"\n", + " }\n", + " },\n", + " {\n", + " \"Action\": \"Add\",\n", + " \"Key\": \"Ny4wNDAwMDBB\",\n", + " \"Fields\": {\n", + " \"ORDER_PRC\": 7.04,\n", + " \"ORDER_SIDE\": \"ASK\",\n", + " \"NO_ORD\": 1,\n", + " \"ACC_SIZE\": 200,\n", + " \"LV_TIM_MS\": 50268193,\n", + " \"LV_TIM_MSP\": 613,\n", + " \"LV_DATE\": \"2022-06-22\"\n", + " }\n", + " },\n", + " {\n", + " \"Action\": \"Add\",\n", + " \"Key\": \"NS43MDAwMDBC\",\n", + " \"Fields\": {\n", + " \"ORDER_PRC\": 5.7,\n", + " \"ORDER_SIDE\": \"BID\",\n", + " \"NO_ORD\": 2,\n", + " \"ACC_SIZE\": 600,\n", + " \"LV_TIM_MS\": 48428866,\n", + " \"LV_TIM_MSP\": 529,\n", + " \"LV_DATE\": \"2022-06-20\"\n", + " }\n", + " },\n", + " {\n", + " \"Action\": \"Add\",\n", + " \"Key\": \"MjIuNjQwMDAwQQ==\",\n", + " \"Fields\": {\n", + " \"ORDER_PRC\": 22.64,\n", + " \"ORDER_SIDE\": \"ASK\",\n", + " \"NO_ORD\": 1,\n", + " \"ACC_SIZE\": 400,\n", + " \"LV_TIM_MS\": 40992941,\n", + " \"LV_TIM_MSP\": 397,\n", + " \"LV_DATE\": \"2022-05-30\"\n", + " }\n", + " },\n", + " {\n", + " \"Action\": \"Add\",\n", + " \"Key\": \"OC42NDAwMDBB\",\n", + " \"Fields\": {\n", + " \"ORDER_PRC\": 8.64,\n", + " \"ORDER_SIDE\": \"ASK\",\n", + " \"NO_ORD\": 1,\n", + " \"ACC_SIZE\": 400,\n", + " \"LV_TIM_MS\": 61854605,\n", + " \"LV_TIM_MSP\": 580,\n", + " \"LV_DATE\": \"2022-05-27\"\n", + " }\n", + " },\n", + " {\n", + " \"Action\": \"Add\",\n", + " \"Key\": \"Ny40ODAwMDBB\",\n", + " \"Fields\": {\n", + " \"ORDER_PRC\": 7.48,\n", + " \"ORDER_SIDE\": \"ASK\",\n", + " \"NO_ORD\": 1,\n", + " \"ACC_SIZE\": 1600,\n", + " \"LV_TIM_MS\": 44164000,\n", + " \"LV_TIM_MSP\": 268,\n", + " \"LV_DATE\": \"2022-06-22\"\n", + " }\n", + " },\n", + " {\n", + " \"Action\": \"Add\",\n", + " \"Key\": \"MTMuNzUwMDAwQQ==\",\n", + " \"Fields\": {\n", + " \"ORDER_PRC\": 13.75,\n", + " \"ORDER_SIDE\": \"ASK\",\n", + " \"NO_ORD\": 2,\n", + " \"ACC_SIZE\": 600,\n", + " \"LV_TIM_MS\": 54994107,\n", + " \"LV_TIM_MSP\": 851,\n", + " \"LV_DATE\": \"2022-06-08\"\n", + " }\n", + " },\n", + " {\n", + " \"Action\": \"Add\",\n", + " \"Key\": \"MjUuNTgwMDAwQQ==\",\n", + " \"Fields\": {\n", + " \"ORDER_PRC\": 25.58,\n", + " \"ORDER_SIDE\": \"ASK\",\n", + " \"NO_ORD\": 1,\n", + " \"ACC_SIZE\": 1200,\n", + " \"LV_TIM_MS\": 40918459,\n", + " \"LV_TIM_MSP\": 643,\n", + " \"LV_DATE\": \"2022-05-30\"\n", + " }\n", + " },\n", + " {\n", + " \"Action\": \"Add\",\n", + " \"Key\": \"NDAuMDAwMDAwQQ==\",\n", + " \"Fields\": {\n", + " \"ORDER_PRC\": 40.0,\n", + " \"ORDER_SIDE\": \"ASK\",\n", + " \"NO_ORD\": 3,\n", + " \"ACC_SIZE\": 1200,\n", + " \"LV_TIM_MS\": 40997075,\n", + " \"LV_TIM_MSP\": 864,\n", + " \"LV_DATE\": \"2022-05-30\"\n", + " }\n", + " },\n", + " {\n", + " \"Action\": \"Add\",\n", + " \"Key\": \"MTUuMzAwMDAwQQ==\",\n", + " \"Fields\": {\n", + " \"ORDER_PRC\": 15.3,\n", + " \"ORDER_SIDE\": \"ASK\",\n", + " \"NO_ORD\": 1,\n", + " \"ACC_SIZE\": 200,\n", + " \"LV_TIM_MS\": 40303533,\n", + " \"LV_TIM_MSP\": 237,\n", + " \"LV_DATE\": \"2022-04-04\"\n", + " }\n", + " },\n", + " {\n", + " \"Action\": \"Add\",\n", + " \"Key\": \"MTEuMjIwMDAwQQ==\",\n", + " \"Fields\": {\n", + " \"ORDER_PRC\": 11.22,\n", + " \"ORDER_SIDE\": \"ASK\",\n", + " \"NO_ORD\": 1,\n", + " \"ACC_SIZE\": 700,\n", + " \"LV_TIM_MS\": 58319009,\n", + " \"LV_TIM_MSP\": 451,\n", + " \"LV_DATE\": \"2022-05-27\"\n", + " }\n", + " },\n", + " {\n", + " \"Action\": \"Add\",\n", + " \"Key\": \"OS40NzAwMDBB\",\n", + " \"Fields\": {\n", + " \"ORDER_PRC\": 9.47,\n", + " \"ORDER_SIDE\": \"ASK\",\n", + " \"NO_ORD\": 1,\n", + " \"ACC_SIZE\": 500,\n", + " \"LV_TIM_MS\": 61540061,\n", + " \"LV_TIM_MSP\": 984,\n", + " \"LV_DATE\": \"2022-05-27\"\n", + " }\n", + " },\n", + " {\n", + " \"Action\": \"Add\",\n", + " \"Key\": \"NC41NjAwMDBC\",\n", + " \"Fields\": {\n", + " \"ORDER_PRC\": 4.56,\n", + " \"ORDER_SIDE\": \"BID\",\n", + " \"NO_ORD\": 1,\n", + " \"ACC_SIZE\": 200,\n", + " \"LV_TIM_MS\": 41412131,\n", + " \"LV_TIM_MSP\": 45,\n", + " \"LV_DATE\": \"2022-06-22\"\n", + " }\n", + " },\n", + " {\n", + " \"Action\": \"Add\",\n", + " \"Key\": \"Ni41NTAwMDBC\",\n", + " \"Fields\": {\n", + " \"ORDER_PRC\": 6.55,\n", + " \"ORDER_SIDE\": \"BID\",\n", + " \"NO_ORD\": 1,\n", + " \"ACC_SIZE\": 2000,\n", + " \"LV_TIM_MS\": 48951597,\n", + " \"LV_TIM_MSP\": 933,\n", + " \"LV_DATE\": \"2022-06-22\"\n", + " }\n", + " },\n", + " {\n", + " \"Action\": \"Add\",\n", + " \"Key\": \"OC4xMDAwMDBB\",\n", + " \"Fields\": {\n", + " \"ORDER_PRC\": 8.1,\n", + " \"ORDER_SIDE\": \"ASK\",\n", + " \"NO_ORD\": 3,\n", + " \"ACC_SIZE\": 1100,\n", + " \"LV_TIM_MS\": 50736978,\n", + " \"LV_TIM_MSP\": 968,\n", + " \"LV_DATE\": \"2022-06-06\"\n", + " }\n", + " },\n", + " {\n", + " \"Action\": \"Add\",\n", + " \"Key\": \"Ni45OTAwMDBB\",\n", + " \"Fields\": {\n", + " \"ORDER_PRC\": 6.99,\n", + " \"ORDER_SIDE\": \"ASK\",\n", + " \"NO_ORD\": 7,\n", + " \"ACC_SIZE\": 27000,\n", + " \"LV_TIM_MS\": 50342107,\n", + " \"LV_TIM_MSP\": 613,\n", + " \"LV_DATE\": \"2022-06-22\"\n", + " }\n", + " },\n", + " {\n", + " \"Action\": \"Add\",\n", + " \"Key\": \"MTEuNjgwMDAwQQ==\",\n", + " \"Fields\": {\n", + " \"ORDER_PRC\": 11.68,\n", + " \"ORDER_SIDE\": \"ASK\",\n", + " \"NO_ORD\": 1,\n", + " \"ACC_SIZE\": 1000,\n", + " \"LV_TIM_MS\": 40925864,\n", + " \"LV_TIM_MSP\": 321,\n", + " \"LV_DATE\": \"2022-05-30\"\n", + " }\n", + " },\n", + " {\n", + " \"Action\": \"Add\",\n", + " \"Key\": \"Ny4zODAwMDBB\",\n", + " \"Fields\": {\n", + " \"ORDER_PRC\": 7.38,\n", + " \"ORDER_SIDE\": \"ASK\",\n", + " \"NO_ORD\": 1,\n", + " \"ACC_SIZE\": 1000,\n", + " \"LV_TIM_MS\": 44260883,\n", + " \"LV_TIM_MSP\": 983,\n", + " \"LV_DATE\": \"2022-06-16\"\n", + " }\n", + " },\n", + " {\n", + " \"Action\": \"Add\",\n", + " \"Key\": \"OC41NDAwMDBB\",\n", + " \"Fields\": {\n", + " \"ORDER_PRC\": 8.54,\n", + " \"ORDER_SIDE\": \"ASK\",\n", + " \"NO_ORD\": 2,\n", + " \"ACC_SIZE\": 700,\n", + " \"LV_TIM_MS\": 39662350,\n", + " \"LV_TIM_MSP\": 834,\n", + " \"LV_DATE\": \"2022-06-22\"\n", + " }\n", + " },\n", + " {\n", + " \"Action\": \"Add\",\n", + " \"Key\": \"MzEuMDEwMDAwQQ==\",\n", + " \"Fields\": {\n", + " \"ORDER_PRC\": 31.01,\n", + " \"ORDER_SIDE\": \"ASK\",\n", + " \"NO_ORD\": 1,\n", + " \"ACC_SIZE\": 2000,\n", + " \"LV_TIM_MS\": 47795379,\n", + " \"LV_TIM_MSP\": 939,\n", + " \"LV_DATE\": \"2022-02-03\"\n", + " }\n", + " },\n", + " {\n", + " \"Action\": \"Add\",\n", + " \"Key\": \"NS42MjAwMDBC\",\n", + " \"Fields\": {\n", + " \"ORDER_PRC\": 5.62,\n", + " \"ORDER_SIDE\": \"BID\",\n", + " \"NO_ORD\": 3,\n", + " \"ACC_SIZE\": 1500,\n", + " \"LV_TIM_MS\": 45798917,\n", + " \"LV_TIM_MSP\": 72,\n", + " \"LV_DATE\": \"2022-05-12\"\n", + " }\n", + " },\n", + " {\n", + " \"Action\": \"Add\",\n", + " \"Key\": \"MjIuNTYwMDAwQQ==\",\n", + " \"Fields\": {\n", + " \"ORDER_PRC\": 22.56,\n", + " \"ORDER_SIDE\": \"ASK\",\n", + " \"NO_ORD\": 1,\n", + " \"ACC_SIZE\": 100,\n", + " \"LV_TIM_MS\": 41402013,\n", + " \"LV_TIM_MSP\": 5,\n", + " \"LV_DATE\": \"2022-06-22\"\n", + " }\n", + " },\n", + " {\n", + " \"Action\": \"Add\",\n", + " \"Key\": \"Ni4wMTAwMDBC\",\n", + " \"Fields\": {\n", + " \"ORDER_PRC\": 6.01,\n", + " \"ORDER_SIDE\": \"BID\",\n", + " \"NO_ORD\": 8,\n", + " \"ACC_SIZE\": 2600,\n", + " \"LV_TIM_MS\": 47921408,\n", + " \"LV_TIM_MSP\": 446,\n", + " \"LV_DATE\": \"2022-06-22\"\n", + " }\n", + " },\n", + " {\n", + " \"Action\": \"Add\",\n", + " \"Key\": \"MzMuMDAwMDAwQQ==\",\n", + " \"Fields\": {\n", + " \"ORDER_PRC\": 33.0,\n", + " \"ORDER_SIDE\": \"ASK\",\n", + " \"NO_ORD\": 7,\n", + " \"ACC_SIZE\": 13500,\n", + " \"LV_TIM_MS\": 41412132,\n", + " \"LV_TIM_MSP\": 34,\n", + " \"LV_DATE\": \"2022-06-22\"\n", + " }\n", + " },\n", + " {\n", + " \"Action\": \"Add\",\n", + " \"Key\": \"Ny42MTAwMDBB\",\n", + " \"Fields\": {\n", + " \"ORDER_PRC\": 7.61,\n", + " \"ORDER_SIDE\": \"ASK\",\n", + " \"NO_ORD\": 1,\n", + " \"ACC_SIZE\": 100,\n", + " \"LV_TIM_MS\": 39663204,\n", + " \"LV_TIM_MSP\": 107,\n", + " \"LV_DATE\": \"2022-06-22\"\n", + " }\n", + " },\n", + " {\n", + " \"Action\": \"Add\",\n", + " \"Key\": \"Ni40NTAwMDBC\",\n", + " \"Fields\": {\n", + " \"ORDER_PRC\": 6.45,\n", + " \"ORDER_SIDE\": \"BID\",\n", + " \"NO_ORD\": 5,\n", + " \"ACC_SIZE\": 2500,\n", + " \"LV_TIM_MS\": 50211750,\n", + " \"LV_TIM_MSP\": 946,\n", + " \"LV_DATE\": \"2022-06-22\"\n", + " }\n", + " },\n", + " {\n", + " \"Action\": \"Add\",\n", + " \"Key\": \"OC4wMDAwMDBB\",\n", + " \"Fields\": {\n", + " \"ORDER_PRC\": 8.0,\n", + " \"ORDER_SIDE\": \"ASK\",\n", + " \"NO_ORD\": 22,\n", + " \"ACC_SIZE\": 11200,\n", + " \"LV_TIM_MS\": 46393096,\n", + " \"LV_TIM_MSP\": 385,\n", + " \"LV_DATE\": \"2022-06-22\"\n", + " }\n", + " },\n", + " {\n", + " \"Action\": \"Add\",\n", + " \"Key\": \"OC40NDAwMDBB\",\n", + " \"Fields\": {\n", + " \"ORDER_PRC\": 8.44,\n", + " \"ORDER_SIDE\": \"ASK\",\n", + " \"NO_ORD\": 2,\n", + " \"ACC_SIZE\": 600,\n", + " \"LV_TIM_MS\": 65367475,\n", + " \"LV_TIM_MSP\": 282,\n", + " \"LV_DATE\": \"2022-05-31\"\n", + " }\n", + " },\n", + " {\n", + " \"Action\": \"Add\",\n", + " \"Key\": \"MTEuNTgwMDAwQQ==\",\n", + " \"Fields\": {\n", + " \"ORDER_PRC\": 11.58,\n", + " \"ORDER_SIDE\": \"ASK\",\n", + " \"NO_ORD\": 1,\n", + " \"ACC_SIZE\": 900,\n", + " \"LV_TIM_MS\": 68658156,\n", + " \"LV_TIM_MSP\": 618,\n", + " \"LV_DATE\": \"2022-04-13\"\n", + " }\n", + " },\n", + " {\n", + " \"Action\": \"Add\",\n", + " \"Key\": \"OS42MDAwMDBB\",\n", + " \"Fields\": {\n", + " \"ORDER_PRC\": 9.6,\n", + " \"ORDER_SIDE\": \"ASK\",\n", + " \"NO_ORD\": 5,\n", + " \"ACC_SIZE\": 5200,\n", + " \"LV_TIM_MS\": 39604017,\n", + " \"LV_TIM_MSP\": 132,\n", + " \"LV_DATE\": \"2022-05-30\"\n", + " }\n", + " },\n", + " {\n", + " \"Action\": \"Add\",\n", + " \"Key\": \"MjYuMTAwMDAwQQ==\",\n", + " \"Fields\": {\n", + " \"ORDER_PRC\": 26.1,\n", + " \"ORDER_SIDE\": \"ASK\",\n", + " \"NO_ORD\": 1,\n", + " \"ACC_SIZE\": 100,\n", + " \"LV_TIM_MS\": 41412130,\n", + " \"LV_TIM_MSP\": 32,\n", + " \"LV_DATE\": \"2022-06-22\"\n", + " }\n", + " },\n", + " {\n", + " \"Action\": \"Add\",\n", + " \"Key\": \"Ni44OTAwMDBC\",\n", + " \"Fields\": {\n", + " \"ORDER_PRC\": 6.89,\n", + " \"ORDER_SIDE\": \"BID\",\n", + " \"NO_ORD\": 16,\n", + " \"ACC_SIZE\": 31200,\n", + " \"LV_TIM_MS\": 50320851,\n", + " \"LV_TIM_MSP\": 74,\n", + " \"LV_DATE\": \"2022-06-22\"\n", + " }\n", + " },\n", + " {\n", + " \"Action\": \"Add\",\n", + " \"Key\": \"OC44ODAwMDBB\",\n", + " \"Fields\": {\n", + " \"ORDER_PRC\": 8.88,\n", + " \"ORDER_SIDE\": \"ASK\",\n", + " \"NO_ORD\": 8,\n", + " \"ACC_SIZE\": 3700,\n", + " \"LV_TIM_MS\": 55842374,\n", + " \"LV_TIM_MSP\": 351,\n", + " \"LV_DATE\": \"2022-06-07\"\n", + " }\n", + " },\n", + " {\n", + " \"Action\": \"Add\",\n", + " \"Key\": \"MS4wMDAwMDBC\",\n", + " \"Fields\": {\n", + " \"ORDER_PRC\": 1.0,\n", + " \"ORDER_SIDE\": \"BID\",\n", + " \"NO_ORD\": 1,\n", + " \"ACC_SIZE\": 700,\n", + " \"LV_TIM_MS\": 53066655,\n", + " \"LV_TIM_MSP\": 430,\n", + " \"LV_DATE\": \"2022-06-16\"\n", + " }\n", + " },\n", + " {\n", + " \"Action\": \"Add\",\n", + " \"Key\": \"MjYuOTgwMDAwQQ==\",\n", + " \"Fields\": {\n", + " \"ORDER_PRC\": 26.98,\n", + " \"ORDER_SIDE\": \"ASK\",\n", + " \"NO_ORD\": 1,\n", + " \"ACC_SIZE\": 1000,\n", + " \"LV_TIM_MS\": 40918460,\n", + " \"LV_TIM_MSP\": 738,\n", + " \"LV_DATE\": \"2022-05-30\"\n", + " }\n", + " },\n", + " {\n", + " \"Action\": \"Add\",\n", + " \"Key\": \"MTYuNzAwMDAwQQ==\",\n", + " \"Fields\": {\n", + " \"ORDER_PRC\": 16.7,\n", + " \"ORDER_SIDE\": \"ASK\",\n", + " \"NO_ORD\": 2,\n", + " \"ACC_SIZE\": 700,\n", + " \"LV_TIM_MS\": 41002885,\n", + " \"LV_TIM_MSP\": 702,\n", + " \"LV_DATE\": \"2022-05-09\"\n", + " }\n", + " },\n", + " {\n", + " \"Action\": \"Add\",\n", + " \"Key\": \"NS45NjAwMDBC\",\n", + " \"Fields\": {\n", + " \"ORDER_PRC\": 5.96,\n", + " \"ORDER_SIDE\": \"BID\",\n", + " \"NO_ORD\": 1,\n", + " \"ACC_SIZE\": 200,\n", + " \"LV_TIM_MS\": 40984487,\n", + " \"LV_TIM_MSP\": 319,\n", + " \"LV_DATE\": \"2022-05-30\"\n", + " }\n", + " },\n", + " {\n", + " \"Action\": \"Add\",\n", + " \"Key\": \"MTAuNjUwMDAwQQ==\",\n", + " \"Fields\": {\n", + " \"ORDER_PRC\": 10.65,\n", + " \"ORDER_SIDE\": \"ASK\",\n", + " \"NO_ORD\": 2,\n", + " \"ACC_SIZE\": 1200,\n", + " \"LV_TIM_MS\": 41412128,\n", + " \"LV_TIM_MSP\": 34,\n", + " \"LV_DATE\": \"2022-06-22\"\n", + " }\n", + " },\n", + " {\n", + " \"Action\": \"Add\",\n", + " \"Key\": \"Ny41MTAwMDBB\",\n", + " \"Fields\": {\n", + " \"ORDER_PRC\": 7.51,\n", + " \"ORDER_SIDE\": \"ASK\",\n", + " \"NO_ORD\": 1,\n", + " \"ACC_SIZE\": 500,\n", + " \"LV_TIM_MS\": 50666142,\n", + " \"LV_TIM_MSP\": 934,\n", + " \"LV_DATE\": \"2022-06-21\"\n", + " }\n", + " },\n", + " {\n", + " \"Action\": \"Add\",\n", + " \"Key\": \"Ni4zNTAwMDBC\",\n", + " \"Fields\": {\n", + " \"ORDER_PRC\": 6.35,\n", + " \"ORDER_SIDE\": \"BID\",\n", + " \"NO_ORD\": 3,\n", + " \"ACC_SIZE\": 800,\n", + " \"LV_TIM_MS\": 50070507,\n", + " \"LV_TIM_MSP\": 469,\n", + " \"LV_DATE\": \"2022-06-22\"\n", + " }\n", + " },\n", + " {\n", + " \"Action\": \"Add\",\n", + " \"Key\": \"MTUwLjAwMDAwMEE=\",\n", + " \"Fields\": {\n", + " \"ORDER_PRC\": 150.0,\n", + " \"ORDER_SIDE\": \"ASK\",\n", + " \"NO_ORD\": 3,\n", + " \"ACC_SIZE\": 27500,\n", + " \"LV_TIM_MS\": 68750134,\n", + " \"LV_TIM_MSP\": 894,\n", + " \"LV_DATE\": \"2022-05-13\"\n", + " }\n", + " },\n", + " {\n", + " \"Action\": \"Add\",\n", + " \"Key\": \"Ny45NTAwMDBB\",\n", + " \"Fields\": {\n", + " \"ORDER_PRC\": 7.95,\n", + " \"ORDER_SIDE\": \"ASK\",\n", + " \"NO_ORD\": 4,\n", + " \"ACC_SIZE\": 7300,\n", + " \"LV_TIM_MS\": 39660316,\n", + " \"LV_TIM_MSP\": 368,\n", + " \"LV_DATE\": \"2022-06-22\"\n", + " }\n", + " },\n", + " {\n", + " \"Action\": \"Add\",\n", + " \"Key\": \"MzQuNTAwMDAwQQ==\",\n", + " \"Fields\": {\n", + " \"ORDER_PRC\": 34.5,\n", + " \"ORDER_SIDE\": \"ASK\",\n", + " \"NO_ORD\": 1,\n", + " \"ACC_SIZE\": 200,\n", + " \"LV_TIM_MS\": 39664513,\n", + " \"LV_TIM_MSP\": 215,\n", + " \"LV_DATE\": \"2022-06-22\"\n", + " }\n", + " },\n", + " {\n", + " \"Action\": \"Add\",\n", + " \"Key\": \"MTUuNTYwMDAwQQ==\",\n", + " \"Fields\": {\n", + " \"ORDER_PRC\": 15.56,\n", + " \"ORDER_SIDE\": \"ASK\",\n", + " \"NO_ORD\": 1,\n", + " \"ACC_SIZE\": 100,\n", + " \"LV_TIM_MS\": 39663204,\n", + " \"LV_TIM_MSP\": 46,\n", + " \"LV_DATE\": \"2022-06-22\"\n", + " }\n", + " },\n", + " {\n", + " \"Action\": \"Add\",\n", + " \"Key\": \"MjYuMDAwMDAwQQ==\",\n", + " \"Fields\": {\n", + " \"ORDER_PRC\": 26.0,\n", + " \"ORDER_SIDE\": \"ASK\",\n", + " \"NO_ORD\": 5,\n", + " \"ACC_SIZE\": 4600,\n", + " \"LV_TIM_MS\": 47779364,\n", + " \"LV_TIM_MSP\": 385,\n", + " \"LV_DATE\": \"2021-12-17\"\n", + " }\n", + " },\n", + " {\n", + " \"Action\": \"Add\",\n", + " \"Key\": \"OS41MDAwMDBB\",\n", + " \"Fields\": {\n", + " \"ORDER_PRC\": 9.5,\n", + " \"ORDER_SIDE\": \"ASK\",\n", + " \"NO_ORD\": 10,\n", + " \"ACC_SIZE\": 18400,\n", + " \"LV_TIM_MS\": 41402216,\n", + " \"LV_TIM_MSP\": 469,\n", + " \"LV_DATE\": \"2022-06-22\"\n", + " }\n", + " },\n", + " {\n", + " \"Action\": \"Add\",\n", + " \"Key\": \"MzQuOTQwMDAwQQ==\",\n", + " \"Fields\": {\n", + " \"ORDER_PRC\": 34.94,\n", + " \"ORDER_SIDE\": \"ASK\",\n", + " \"NO_ORD\": 1,\n", + " \"ACC_SIZE\": 100,\n", + " \"LV_TIM_MS\": 57908407,\n", + " \"LV_TIM_MSP\": 316,\n", + " \"LV_DATE\": \"2022-03-25\"\n", + " }\n", + " },\n", + " {\n", + " \"Action\": \"Add\",\n", + " \"Key\": \"OC4zNDAwMDBB\",\n", + " \"Fields\": {\n", + " \"ORDER_PRC\": 8.34,\n", + " \"ORDER_SIDE\": \"ASK\",\n", + " \"NO_ORD\": 1,\n", + " \"ACC_SIZE\": 100,\n", + " \"LV_TIM_MS\": 48903515,\n", + " \"LV_TIM_MSP\": 470,\n", + " \"LV_DATE\": \"2022-05-31\"\n", + " }\n", + " },\n", + " {\n", + " \"Action\": \"Add\",\n", + " \"Key\": \"Ni43OTAwMDBC\",\n", + " \"Fields\": {\n", + " \"ORDER_PRC\": 6.79,\n", + " \"ORDER_SIDE\": \"BID\",\n", + " \"NO_ORD\": 5,\n", + " \"ACC_SIZE\": 12100,\n", + " \"LV_TIM_MS\": 50300846,\n", + " \"LV_TIM_MSP\": 565,\n", + " \"LV_DATE\": \"2022-06-22\"\n", + " }\n", + " },\n", + " {\n", + " \"Action\": \"Add\",\n", + " \"Key\": \"MTYuNjAwMDAwQQ==\",\n", + " \"Fields\": {\n", + " \"ORDER_PRC\": 16.6,\n", + " \"ORDER_SIDE\": \"ASK\",\n", + " \"NO_ORD\": 1,\n", + " \"ACC_SIZE\": 100,\n", + " \"LV_TIM_MS\": 43379294,\n", + " \"LV_TIM_MSP\": 971,\n", + " \"LV_DATE\": \"2022-05-30\"\n", + " }\n", + " },\n", + " {\n", + " \"Action\": \"Add\",\n", + " \"Key\": \"MTcuOTkwMDAwQQ==\",\n", + " \"Fields\": {\n", + " \"ORDER_PRC\": 17.99,\n", + " \"ORDER_SIDE\": \"ASK\",\n", + " \"NO_ORD\": 1,\n", + " \"ACC_SIZE\": 100,\n", + " \"LV_TIM_MS\": 39606010,\n", + " \"LV_TIM_MSP\": 955,\n", + " \"LV_DATE\": \"2022-06-22\"\n", + " }\n", + " },\n", + " {\n", + " \"Action\": \"Add\",\n", + " \"Key\": \"MTMuNDcwMDAwQQ==\",\n", + " \"Fields\": {\n", + " \"ORDER_PRC\": 13.47,\n", + " \"ORDER_SIDE\": \"ASK\",\n", + " \"NO_ORD\": 1,\n", + " \"ACC_SIZE\": 400,\n", + " \"LV_TIM_MS\": 52984704,\n", + " \"LV_TIM_MSP\": 707,\n", + " \"LV_DATE\": \"2022-03-25\"\n", + " }\n", + " },\n", + " {\n", + " \"Action\": \"Add\",\n", + " \"Key\": \"Mi41MDAwMDBC\",\n", + " \"Fields\": {\n", + " \"ORDER_PRC\": 2.5,\n", + " \"ORDER_SIDE\": \"BID\",\n", + " \"NO_ORD\": 1,\n", + " \"ACC_SIZE\": 1000,\n", + " \"LV_TIM_MS\": 39619012,\n", + " \"LV_TIM_MSP\": 230,\n", + " \"LV_DATE\": \"2022-06-07\"\n", + " }\n", + " },\n", + " {\n", + " \"Action\": \"Add\",\n", + " \"Key\": \"MTAuNTUwMDAwQQ==\",\n", + " \"Fields\": {\n", + " \"ORDER_PRC\": 10.55,\n", + " \"ORDER_SIDE\": \"ASK\",\n", + " \"NO_ORD\": 1,\n", + " \"ACC_SIZE\": 100,\n", + " \"LV_TIM_MS\": 48561816,\n", + " \"LV_TIM_MSP\": 643,\n", + " \"LV_DATE\": \"2022-03-29\"\n", + " }\n", + " },\n", + " {\n", + " \"Action\": \"Add\",\n", + " \"Key\": \"MTIuMTAwMDAwQQ==\",\n", + " \"Fields\": {\n", + " \"ORDER_PRC\": 12.1,\n", + " \"ORDER_SIDE\": \"ASK\",\n", + " \"NO_ORD\": 1,\n", + " \"ACC_SIZE\": 100,\n", + " \"LV_TIM_MS\": 40923275,\n", + " \"LV_TIM_MSP\": 922,\n", + " \"LV_DATE\": \"2022-05-30\"\n", + " }\n", + " },\n", + " {\n", + " \"Action\": \"Add\",\n", + " \"Key\": \"MTAuOTkwMDAwQQ==\",\n", + " \"Fields\": {\n", + " \"ORDER_PRC\": 10.99,\n", + " \"ORDER_SIDE\": \"ASK\",\n", + " \"NO_ORD\": 5,\n", + " \"ACC_SIZE\": 1700,\n", + " \"LV_TIM_MS\": 67721970,\n", + " \"LV_TIM_MSP\": 160,\n", + " \"LV_DATE\": \"2022-04-01\"\n", + " }\n", + " }\n", + " ]\n", + " }\n", + "}\n", + "----------------------------------------------------------\n", + ">>> Refresh event received at 15:59:20.415064\n", + "{\n", + " \"ID\": 5,\n", + " \"Type\": \"Refresh\",\n", + " \"Domain\": \"MarketByPrice\",\n", + " \"Key\": {\n", + " \"Service\": \"ELEKTRON_DD\",\n", + " \"Name\": \"BB.TO\"\n", + " },\n", + " \"State\": {\n", + " \"Stream\": \"Open\",\n", + " \"Data\": \"Ok\",\n", + " \"Text\": \"All is well\"\n", + " },\n", + " \"Complete\": false,\n", + " \"Qos\": {\n", + " \"Timeliness\": \"Realtime\",\n", + " \"Rate\": \"TickByTick\"\n", + " },\n", + " \"ClearCache\": false,\n", + " \"PartNumber\": 4,\n", + " \"PermData\": \"AwFkMETA\",\n", + " \"SeqNumber\": 30688,\n", + " \"Map\": {\n", + " \"KeyType\": \"Buffer\",\n", + " \"Entries\": [\n", + " {\n", + " \"Action\": \"Add\",\n", + " \"Key\": \"MjUuNTEwMDAwQQ==\",\n", + " \"Fields\": {\n", + " \"ORDER_PRC\": 25.51,\n", + " \"ORDER_SIDE\": \"ASK\",\n", + " \"NO_ORD\": 1,\n", + " \"ACC_SIZE\": 100,\n", + " \"LV_TIM_MS\": 55810219,\n", + " \"LV_TIM_MSP\": 576,\n", + " \"LV_DATE\": \"2022-06-01\"\n", + " }\n", + " },\n", + " {\n", + " \"Action\": \"Add\",\n", + " \"Key\": \"MTkuOTgwMDAwQQ==\",\n", + " \"Fields\": {\n", + " \"ORDER_PRC\": 19.98,\n", + " \"ORDER_SIDE\": \"ASK\",\n", + " \"NO_ORD\": 1,\n", + " \"ACC_SIZE\": 100,\n", + " \"LV_TIM_MS\": 45607781,\n", + " \"LV_TIM_MSP\": 469,\n", + " \"LV_DATE\": \"2022-01-17\"\n", + " }\n", + " },\n", + " {\n", + " \"Action\": \"Add\",\n", + " \"Key\": \"Ny44NTAwMDBB\",\n", + " \"Fields\": {\n", + " \"ORDER_PRC\": 7.85,\n", + " \"ORDER_SIDE\": \"ASK\",\n", + " \"NO_ORD\": 2,\n", + " \"ACC_SIZE\": 400,\n", + " \"LV_TIM_MS\": 39660248,\n", + " \"LV_TIM_MSP\": 566,\n", + " \"LV_DATE\": \"2022-06-22\"\n", + " }\n", + " },\n", + " {\n", + " \"Action\": \"Add\",\n", + " \"Key\": \"MTIuNTQwMDAwQQ==\",\n", + " \"Fields\": {\n", + " \"ORDER_PRC\": 12.54,\n", + " \"ORDER_SIDE\": \"ASK\",\n", + " \"NO_ORD\": 1,\n", + " \"ACC_SIZE\": 500,\n", + " \"LV_TIM_MS\": 40991728,\n", + " \"LV_TIM_MSP\": 742,\n", + " \"LV_DATE\": \"2022-05-30\"\n", + " }\n", + " },\n", + " {\n", + " \"Action\": \"Add\",\n", + " \"Key\": \"MjcuNTAwMDAwQQ==\",\n", + " \"Fields\": {\n", + " \"ORDER_PRC\": 27.5,\n", + " \"ORDER_SIDE\": \"ASK\",\n", + " \"NO_ORD\": 1,\n", + " \"ACC_SIZE\": 200,\n", + " \"LV_TIM_MS\": 40148338,\n", + " \"LV_TIM_MSP\": 534,\n", + " \"LV_DATE\": \"2022-04-22\"\n", + " }\n", + " },\n", + " {\n", + " \"Action\": \"Add\",\n", + " \"Key\": \"MTIuOTgwMDAwQQ==\",\n", + " \"Fields\": {\n", + " \"ORDER_PRC\": 12.98,\n", + " \"ORDER_SIDE\": \"ASK\",\n", + " \"NO_ORD\": 1,\n", + " \"ACC_SIZE\": 2000,\n", + " \"LV_TIM_MS\": 41412130,\n", + " \"LV_TIM_MSP\": 49,\n", + " \"LV_DATE\": \"2022-06-22\"\n", + " }\n", + " },\n", + " {\n", + " \"Action\": \"Add\",\n", + " \"Key\": \"MTkuMDAwMDAwQQ==\",\n", + " \"Fields\": {\n", + " \"ORDER_PRC\": 19.0,\n", + " \"ORDER_SIDE\": \"ASK\",\n", + " \"NO_ORD\": 14,\n", + " \"ACC_SIZE\": 6200,\n", + " \"LV_TIM_MS\": 41402019,\n", + " \"LV_TIM_MSP\": 44,\n", + " \"LV_DATE\": \"2022-06-22\"\n", + " }\n", + " },\n", + " {\n", + " \"Action\": \"Add\",\n", + " \"Key\": \"MTcuODkwMDAwQQ==\",\n", + " \"Fields\": {\n", + " \"ORDER_PRC\": 17.89,\n", + " \"ORDER_SIDE\": \"ASK\",\n", + " \"NO_ORD\": 2,\n", + " \"ACC_SIZE\": 4500,\n", + " \"LV_TIM_MS\": 41402017,\n", + " \"LV_TIM_MSP\": 36,\n", + " \"LV_DATE\": \"2022-06-22\"\n", + " }\n", + " },\n", + " {\n", + " \"Action\": \"Add\",\n", + " \"Key\": \"MTAuMDEwMDAwQQ==\",\n", + " \"Fields\": {\n", + " \"ORDER_PRC\": 10.01,\n", + " \"ORDER_SIDE\": \"ASK\",\n", + " \"NO_ORD\": 1,\n", + " \"ACC_SIZE\": 2800,\n", + " \"LV_TIM_MS\": 71474667,\n", + " \"LV_TIM_MSP\": 123,\n", + " \"LV_DATE\": \"2022-05-26\"\n", + " }\n", + " },\n", + " {\n", + " \"Action\": \"Add\",\n", + " \"Key\": \"Ni45MjAwMDBC\",\n", + " \"Fields\": {\n", + " \"ORDER_PRC\": 6.92,\n", + " \"ORDER_SIDE\": \"BID\",\n", + " \"NO_ORD\": 8,\n", + " \"ACC_SIZE\": 6100,\n", + " \"LV_TIM_MS\": 50346430,\n", + " \"LV_TIM_MSP\": 712,\n", + " \"LV_DATE\": \"2022-06-22\"\n", + " }\n", + " },\n", + " {\n", + " \"Action\": \"Add\",\n", + " \"Key\": \"MTIuMDAwMDAwQQ==\",\n", + " \"Fields\": {\n", + " \"ORDER_PRC\": 12.0,\n", + " \"ORDER_SIDE\": \"ASK\",\n", + " \"NO_ORD\": 38,\n", + " \"ACC_SIZE\": 57900,\n", + " \"LV_TIM_MS\": 41412132,\n", + " \"LV_TIM_MSP\": 33,\n", + " \"LV_DATE\": \"2022-06-22\"\n", + " }\n", + " },\n", + " {\n", + " \"Action\": \"Add\",\n", + " \"Key\": \"OS4wOTAwMDBB\",\n", + " \"Fields\": {\n", + " \"ORDER_PRC\": 9.09,\n", + " \"ORDER_SIDE\": \"ASK\",\n", + " \"NO_ORD\": 1,\n", + " \"ACC_SIZE\": 100,\n", + " \"LV_TIM_MS\": 60911325,\n", + " \"LV_TIM_MSP\": 494,\n", + " \"LV_DATE\": \"2022-05-30\"\n", + " }\n", + " },\n", + " {\n", + " \"Action\": \"Add\",\n", + " \"Key\": \"Ny43NTAwMDBB\",\n", + " \"Fields\": {\n", + " \"ORDER_PRC\": 7.75,\n", + " \"ORDER_SIDE\": \"ASK\",\n", + " \"NO_ORD\": 4,\n", + " \"ACC_SIZE\": 2300,\n", + " \"LV_TIM_MS\": 39603208,\n", + " \"LV_TIM_MSP\": 86,\n", + " \"LV_DATE\": \"2022-06-22\"\n", + " }\n", + " },\n", + " {\n", + " \"Action\": \"Add\",\n", + " \"Key\": \"MTYuOTYwMDAwQQ==\",\n", + " \"Fields\": {\n", + " \"ORDER_PRC\": 16.96,\n", + " \"ORDER_SIDE\": \"ASK\",\n", + " \"NO_ORD\": 1,\n", + " \"ACC_SIZE\": 10000,\n", + " \"LV_TIM_MS\": 49568594,\n", + " \"LV_TIM_MSP\": 402,\n", + " \"LV_DATE\": \"2022-06-02\"\n", + " }\n", + " },\n", + " {\n", + " \"Action\": \"Add\",\n", + " \"Key\": \"OS4zMDAwMDBB\",\n", + " \"Fields\": {\n", + " \"ORDER_PRC\": 9.3,\n", + " \"ORDER_SIDE\": \"ASK\",\n", + " \"NO_ORD\": 2,\n", + " \"ACC_SIZE\": 900,\n", + " \"LV_TIM_MS\": 58967879,\n", + " \"LV_TIM_MSP\": 980,\n", + " \"LV_DATE\": \"2022-05-27\"\n", + " }\n", + " },\n", + " {\n", + " \"Action\": \"Add\",\n", + " \"Key\": \"Ni4xNzAwMDBC\",\n", + " \"Fields\": {\n", + " \"ORDER_PRC\": 6.17,\n", + " \"ORDER_SIDE\": \"BID\",\n", + " \"NO_ORD\": 1,\n", + " \"ACC_SIZE\": 100,\n", + " \"LV_TIM_MS\": 44303514,\n", + " \"LV_TIM_MSP\": 491,\n", + " \"LV_DATE\": \"2022-06-13\"\n", + " }\n", + " },\n", + " {\n", + " \"Action\": \"Add\",\n", + " \"Key\": \"MTIuODgwMDAwQQ==\",\n", + " \"Fields\": {\n", + " \"ORDER_PRC\": 12.88,\n", + " \"ORDER_SIDE\": \"ASK\",\n", + " \"NO_ORD\": 1,\n", + " \"ACC_SIZE\": 400,\n", + " \"LV_TIM_MS\": 50427823,\n", + " \"LV_TIM_MSP\": 972,\n", + " \"LV_DATE\": \"2022-06-16\"\n", + " }\n", + " },\n", + " {\n", + " \"Action\": \"Add\",\n", + " \"Key\": \"MTguOTUwMDAwQQ==\",\n", + " \"Fields\": {\n", + " \"ORDER_PRC\": 18.95,\n", + " \"ORDER_SIDE\": \"ASK\",\n", + " \"NO_ORD\": 1,\n", + " \"ACC_SIZE\": 200,\n", + " \"LV_TIM_MS\": 51418848,\n", + " \"LV_TIM_MSP\": 723,\n", + " \"LV_DATE\": \"2022-06-02\"\n", + " }\n", + " },\n", + " {\n", + " \"Action\": \"Add\",\n", + " \"Key\": \"MTEuNTEwMDAwQQ==\",\n", + " \"Fields\": {\n", + " \"ORDER_PRC\": 11.51,\n", + " \"ORDER_SIDE\": \"ASK\",\n", + " \"NO_ORD\": 1,\n", + " \"ACC_SIZE\": 500,\n", + " \"LV_TIM_MS\": 54432003,\n", + " \"LV_TIM_MSP\": 50,\n", + " \"LV_DATE\": \"2022-04-18\"\n", + " }\n", + " },\n", + " {\n", + " \"Action\": \"Add\",\n", + " \"Key\": \"Ni44MjAwMDBC\",\n", + " \"Fields\": {\n", + " \"ORDER_PRC\": 6.82,\n", + " \"ORDER_SIDE\": \"BID\",\n", + " \"NO_ORD\": 2,\n", + " \"ACC_SIZE\": 200,\n", + " \"LV_TIM_MS\": 50300716,\n", + " \"LV_TIM_MSP\": 644,\n", + " \"LV_DATE\": \"2022-06-22\"\n", + " }\n", + " },\n", + " {\n", + " \"Action\": \"Add\",\n", + " \"Key\": \"My45MDAwMDBC\",\n", + " \"Fields\": {\n", + " \"ORDER_PRC\": 3.9,\n", + " \"ORDER_SIDE\": \"BID\",\n", + " \"NO_ORD\": 2,\n", + " \"ACC_SIZE\": 2000,\n", + " \"LV_TIM_MS\": 41402218,\n", + " \"LV_TIM_MSP\": 49,\n", + " \"LV_DATE\": \"2022-06-22\"\n", + " }\n", + " },\n", + " {\n", + " \"Action\": \"Add\",\n", + " \"Key\": \"MTMuNTAwMDAwQQ==\",\n", + " \"Fields\": {\n", + " \"ORDER_PRC\": 13.5,\n", + " \"ORDER_SIDE\": \"ASK\",\n", + " \"NO_ORD\": 8,\n", + " \"ACC_SIZE\": 4300,\n", + " \"LV_TIM_MS\": 51742973,\n", + " \"LV_TIM_MSP\": 878,\n", + " \"LV_DATE\": \"2022-05-26\"\n", + " }\n", + " },\n", + " {\n", + " \"Action\": \"Add\",\n", + " \"Key\": \"NC43MzAwMDBC\",\n", + " \"Fields\": {\n", + " \"ORDER_PRC\": 4.73,\n", + " \"ORDER_SIDE\": \"BID\",\n", + " \"NO_ORD\": 1,\n", + " \"ACC_SIZE\": 1000,\n", + " \"LV_TIM_MS\": 50360028,\n", + " \"LV_TIM_MSP\": 261,\n", + " \"LV_DATE\": \"2022-06-13\"\n", + " }\n", + " },\n", + " {\n", + " \"Action\": \"Add\",\n", + " \"Key\": \"Ni4wNzAwMDBC\",\n", + " \"Fields\": {\n", + " \"ORDER_PRC\": 6.07,\n", + " \"ORDER_SIDE\": \"BID\",\n", + " \"NO_ORD\": 2,\n", + " \"ACC_SIZE\": 3100,\n", + " \"LV_TIM_MS\": 50921338,\n", + " \"LV_TIM_MSP\": 343,\n", + " \"LV_DATE\": \"2022-06-17\"\n", + " }\n", + " },\n", + " {\n", + " \"Action\": \"Add\",\n", + " \"Key\": \"Ny42NzAwMDBB\",\n", + " \"Fields\": {\n", + " \"ORDER_PRC\": 7.67,\n", + " \"ORDER_SIDE\": \"ASK\",\n", + " \"NO_ORD\": 3,\n", + " \"ACC_SIZE\": 3000,\n", + " \"LV_TIM_MS\": 71667037,\n", + " \"LV_TIM_MSP\": 162,\n", + " \"LV_DATE\": \"2022-06-09\"\n", + " }\n", + " },\n", + " {\n", + " \"Action\": \"Add\",\n", + " \"Key\": \"MTQuNzcwMDAwQQ==\",\n", + " \"Fields\": {\n", + " \"ORDER_PRC\": 14.77,\n", + " \"ORDER_SIDE\": \"ASK\",\n", + " \"NO_ORD\": 1,\n", + " \"ACC_SIZE\": 1000,\n", + " \"LV_TIM_MS\": 39627416,\n", + " \"LV_TIM_MSP\": 59,\n", + " \"LV_DATE\": \"2022-06-02\"\n", + " }\n", + " },\n", + " {\n", + " \"Action\": \"Add\",\n", + " \"Key\": \"OC43MTAwMDBB\",\n", + " \"Fields\": {\n", + " \"ORDER_PRC\": 8.71,\n", + " \"ORDER_SIDE\": \"ASK\",\n", + " \"NO_ORD\": 1,\n", + " \"ACC_SIZE\": 1000,\n", + " \"LV_TIM_MS\": 44236847,\n", + " \"LV_TIM_MSP\": 737,\n", + " \"LV_DATE\": \"2022-05-30\"\n", + " }\n", + " },\n", + " {\n", + " \"Action\": \"Add\",\n", + " \"Key\": \"MTEuODUwMDAwQQ==\",\n", + " \"Fields\": {\n", + " \"ORDER_PRC\": 11.85,\n", + " \"ORDER_SIDE\": \"ASK\",\n", + " \"NO_ORD\": 1,\n", + " \"ACC_SIZE\": 100,\n", + " \"LV_TIM_MS\": 39662350,\n", + " \"LV_TIM_MSP\": 871,\n", + " \"LV_DATE\": \"2022-06-22\"\n", + " }\n", + " },\n", + " {\n", + " \"Action\": \"Add\",\n", + " \"Key\": \"Ny4xMzAwMDBB\",\n", + " \"Fields\": {\n", + " \"ORDER_PRC\": 7.13,\n", + " \"ORDER_SIDE\": \"ASK\",\n", + " \"NO_ORD\": 3,\n", + " \"ACC_SIZE\": 6100,\n", + " \"LV_TIM_MS\": 50065317,\n", + " \"LV_TIM_MSP\": 270,\n", + " \"LV_DATE\": \"2022-06-22\"\n", + " }\n", + " },\n", + " {\n", + " \"Action\": \"Add\",\n", + " \"Key\": \"MTMuODQwMDAwQQ==\",\n", + " \"Fields\": {\n", + " \"ORDER_PRC\": 13.84,\n", + " \"ORDER_SIDE\": \"ASK\",\n", + " \"NO_ORD\": 1,\n", + " \"ACC_SIZE\": 500,\n", + " \"LV_TIM_MS\": 40087781,\n", + " \"LV_TIM_MSP\": 784,\n", + " \"LV_DATE\": \"2022-05-31\"\n", + " }\n", + " },\n", + " {\n", + " \"Action\": \"Add\",\n", + " \"Key\": \"MTY1LjAwMDAwMEE=\",\n", + " \"Fields\": {\n", + " \"ORDER_PRC\": 165.0,\n", + " \"ORDER_SIDE\": \"ASK\",\n", + " \"NO_ORD\": 1,\n", + " \"ACC_SIZE\": 1200,\n", + " \"LV_TIM_MS\": 47761436,\n", + " \"LV_TIM_MSP\": 64,\n", + " \"LV_DATE\": \"2021-11-08\"\n", + " }\n", + " },\n", + " {\n", + " \"Action\": \"Add\",\n", + " \"Key\": \"Ny41NzAwMDBB\",\n", + " \"Fields\": {\n", + " \"ORDER_PRC\": 7.57,\n", + " \"ORDER_SIDE\": \"ASK\",\n", + " \"NO_ORD\": 3,\n", + " \"ACC_SIZE\": 3000,\n", + " \"LV_TIM_MS\": 41412132,\n", + " \"LV_TIM_MSP\": 52,\n", + " \"LV_DATE\": \"2022-06-22\"\n", + " }\n", + " },\n", + " {\n", + " \"Action\": \"Add\",\n", + " \"Key\": \"MTguNzUwMDAwQQ==\",\n", + " \"Fields\": {\n", + " \"ORDER_PRC\": 18.75,\n", + " \"ORDER_SIDE\": \"ASK\",\n", + " \"NO_ORD\": 1,\n", + " \"ACC_SIZE\": 600,\n", + " \"LV_TIM_MS\": 40313657,\n", + " \"LV_TIM_MSP\": 110,\n", + " \"LV_DATE\": \"2022-03-29\"\n", + " }\n", + " },\n", + " {\n", + " \"Action\": \"Add\",\n", + " \"Key\": \"MTQuMjMwMDAwQQ==\",\n", + " \"Fields\": {\n", + " \"ORDER_PRC\": 14.23,\n", + " \"ORDER_SIDE\": \"ASK\",\n", + " \"NO_ORD\": 1,\n", + " \"ACC_SIZE\": 400,\n", + " \"LV_TIM_MS\": 39667264,\n", + " \"LV_TIM_MSP\": 387,\n", + " \"LV_DATE\": \"2022-06-22\"\n", + " }\n", + " },\n", + " {\n", + " \"Action\": \"Add\",\n", + " \"Key\": \"NDUuMDAwMDAwQQ==\",\n", + " \"Fields\": {\n", + " \"ORDER_PRC\": 45.0,\n", + " \"ORDER_SIDE\": \"ASK\",\n", + " \"NO_ORD\": 3,\n", + " \"ACC_SIZE\": 5000,\n", + " \"LV_TIM_MS\": 64096526,\n", + " \"LV_TIM_MSP\": 535,\n", + " \"LV_DATE\": \"2022-06-02\"\n", + " }\n", + " },\n", + " {\n", + " \"Action\": \"Add\",\n", + " \"Key\": \"MTcuMTcwMDAwQQ==\",\n", + " \"Fields\": {\n", + " \"ORDER_PRC\": 17.17,\n", + " \"ORDER_SIDE\": \"ASK\",\n", + " \"NO_ORD\": 2,\n", + " \"ACC_SIZE\": 2800,\n", + " \"LV_TIM_MS\": 44147000,\n", + " \"LV_TIM_MSP\": 460,\n", + " \"LV_DATE\": \"2022-06-16\"\n", + " }\n", + " },\n", + " {\n", + " \"Action\": \"Add\",\n", + " \"Key\": \"Ni4yMDAwMDBC\",\n", + " \"Fields\": {\n", + " \"ORDER_PRC\": 6.2,\n", + " \"ORDER_SIDE\": \"BID\",\n", + " \"NO_ORD\": 8,\n", + " \"ACC_SIZE\": 2200,\n", + " \"LV_TIM_MS\": 47750591,\n", + " \"LV_TIM_MSP\": 610,\n", + " \"LV_DATE\": \"2022-06-22\"\n", + " }\n", + " },\n", + " {\n", + " \"Action\": \"Add\",\n", + " \"Key\": \"MTEuNzUwMDAwQQ==\",\n", + " \"Fields\": {\n", + " \"ORDER_PRC\": 11.75,\n", + " \"ORDER_SIDE\": \"ASK\",\n", + " \"NO_ORD\": 3,\n", + " \"ACC_SIZE\": 2300,\n", + " \"LV_TIM_MS\": 40995901,\n", + " \"LV_TIM_MSP\": 97,\n", + " \"LV_DATE\": \"2022-05-30\"\n", + " }\n", + " },\n", + " {\n", + " \"Action\": \"Add\",\n", + " \"Key\": \"MTMuMzAwMDAwQQ==\",\n", + " \"Fields\": {\n", + " \"ORDER_PRC\": 13.3,\n", + " \"ORDER_SIDE\": \"ASK\",\n", + " \"NO_ORD\": 2,\n", + " \"ACC_SIZE\": 400,\n", + " \"LV_TIM_MS\": 41412131,\n", + " \"LV_TIM_MSP\": 33,\n", + " \"LV_DATE\": \"2022-06-22\"\n", + " }\n", + " },\n", + " {\n", + " \"Action\": \"Add\",\n", + " \"Key\": \"Ny4wMzAwMDBB\",\n", + " \"Fields\": {\n", + " \"ORDER_PRC\": 7.03,\n", + " \"ORDER_SIDE\": \"ASK\",\n", + " \"NO_ORD\": 6,\n", + " \"ACC_SIZE\": 5400,\n", + " \"LV_TIM_MS\": 50300851,\n", + " \"LV_TIM_MSP\": 119,\n", + " \"LV_DATE\": \"2022-06-22\"\n", + " }\n", + " },\n", + " {\n", + " \"Action\": \"Add\",\n", + " \"Key\": \"MTQuOTAwMDAwQQ==\",\n", + " \"Fields\": {\n", + " \"ORDER_PRC\": 14.9,\n", + " \"ORDER_SIDE\": \"ASK\",\n", + " \"NO_ORD\": 2,\n", + " \"ACC_SIZE\": 200,\n", + " \"LV_TIM_MS\": 39601844,\n", + " \"LV_TIM_MSP\": 5,\n", + " \"LV_DATE\": \"2022-06-22\"\n", + " }\n", + " },\n", + " {\n", + " \"Action\": \"Add\",\n", + " \"Key\": \"MTMuNzQwMDAwQQ==\",\n", + " \"Fields\": {\n", + " \"ORDER_PRC\": 13.74,\n", + " \"ORDER_SIDE\": \"ASK\",\n", + " \"NO_ORD\": 1,\n", + " \"ACC_SIZE\": 500,\n", + " \"LV_TIM_MS\": 41402020,\n", + " \"LV_TIM_MSP\": 54,\n", + " \"LV_DATE\": \"2022-06-22\"\n", + " }\n", + " },\n", + " {\n", + " \"Action\": \"Add\",\n", + " \"Key\": \"MTIuMTYwMDAwQQ==\",\n", + " \"Fields\": {\n", + " \"ORDER_PRC\": 12.16,\n", + " \"ORDER_SIDE\": \"ASK\",\n", + " \"NO_ORD\": 1,\n", + " \"ACC_SIZE\": 500,\n", + " \"LV_TIM_MS\": 42511642,\n", + " \"LV_TIM_MSP\": 865,\n", + " \"LV_DATE\": \"2022-05-02\"\n", + " }\n", + " },\n", + " {\n", + " \"Action\": \"Add\",\n", + " \"Key\": \"OS4wMjAwMDBB\",\n", + " \"Fields\": {\n", + " \"ORDER_PRC\": 9.02,\n", + " \"ORDER_SIDE\": \"ASK\",\n", + " \"NO_ORD\": 2,\n", + " \"ACC_SIZE\": 300,\n", + " \"LV_TIM_MS\": 53531098,\n", + " \"LV_TIM_MSP\": 524,\n", + " \"LV_DATE\": \"2022-05-31\"\n", + " }\n", + " },\n", + " {\n", + " \"Action\": \"Add\",\n", + " \"Key\": \"NC41NTAwMDBC\",\n", + " \"Fields\": {\n", + " \"ORDER_PRC\": 4.55,\n", + " \"ORDER_SIDE\": \"BID\",\n", + " \"NO_ORD\": 2,\n", + " \"ACC_SIZE\": 600,\n", + " \"LV_TIM_MS\": 68421003,\n", + " \"LV_TIM_MSP\": 354,\n", + " \"LV_DATE\": \"2022-06-08\"\n", + " }\n", + " },\n", + " {\n", + " \"Action\": \"Add\",\n", + " \"Key\": \"MTcuMDcwMDAwQQ==\",\n", + " \"Fields\": {\n", + " \"ORDER_PRC\": 17.07,\n", + " \"ORDER_SIDE\": \"ASK\",\n", + " \"NO_ORD\": 1,\n", + " \"ACC_SIZE\": 100,\n", + " \"LV_TIM_MS\": 41644133,\n", + " \"LV_TIM_MSP\": 934,\n", + " \"LV_DATE\": \"2022-04-01\"\n", + " }\n", + " },\n", + " {\n", + " \"Action\": \"Add\",\n", + " \"Key\": \"OS40NjAwMDBB\",\n", + " \"Fields\": {\n", + " \"ORDER_PRC\": 9.46,\n", + " \"ORDER_SIDE\": \"ASK\",\n", + " \"NO_ORD\": 1,\n", + " \"ACC_SIZE\": 1000,\n", + " \"LV_TIM_MS\": 49138171,\n", + " \"LV_TIM_MSP\": 142,\n", + " \"LV_DATE\": \"2022-05-30\"\n", + " }\n", + " },\n", + " {\n", + " \"Action\": \"Add\",\n", + " \"Key\": \"MjEuNDkwMDAwQQ==\",\n", + " \"Fields\": {\n", + " \"ORDER_PRC\": 21.49,\n", + " \"ORDER_SIDE\": \"ASK\",\n", + " \"NO_ORD\": 1,\n", + " \"ACC_SIZE\": 300,\n", + " \"LV_TIM_MS\": 47989722,\n", + " \"LV_TIM_MSP\": 896,\n", + " \"LV_DATE\": \"2022-04-26\"\n", + " }\n", + " },\n", + " {\n", + " \"Action\": \"Add\",\n", + " \"Key\": \"Ni4xMDAwMDBC\",\n", + " \"Fields\": {\n", + " \"ORDER_PRC\": 6.1,\n", + " \"ORDER_SIDE\": \"BID\",\n", + " \"NO_ORD\": 8,\n", + " \"ACC_SIZE\": 5400,\n", + " \"LV_TIM_MS\": 44150242,\n", + " \"LV_TIM_MSP\": 500,\n", + " \"LV_DATE\": \"2022-06-22\"\n", + " }\n", + " },\n", + " {\n", + " \"Action\": \"Add\",\n", + " \"Key\": \"NC45OTAwMDBC\",\n", + " \"Fields\": {\n", + " \"ORDER_PRC\": 4.99,\n", + " \"ORDER_SIDE\": \"BID\",\n", + " \"NO_ORD\": 1,\n", + " \"ACC_SIZE\": 100,\n", + " \"LV_TIM_MS\": 69526027,\n", + " \"LV_TIM_MSP\": 21,\n", + " \"LV_DATE\": \"2022-05-09\"\n", + " }\n", + " },\n", + " {\n", + " \"Action\": \"Add\",\n", + " \"Key\": \"MTIuODEwMDAwQQ==\",\n", + " \"Fields\": {\n", + " \"ORDER_PRC\": 12.81,\n", + " \"ORDER_SIDE\": \"ASK\",\n", + " \"NO_ORD\": 2,\n", + " \"ACC_SIZE\": 600,\n", + " \"LV_TIM_MS\": 40224199,\n", + " \"LV_TIM_MSP\": 693,\n", + " \"LV_DATE\": \"2022-04-20\"\n", + " }\n", + " },\n", + " {\n", + " \"Action\": \"Add\",\n", + " \"Key\": \"MjcuNTYwMDAwQQ==\",\n", + " \"Fields\": {\n", + " \"ORDER_PRC\": 27.56,\n", + " \"ORDER_SIDE\": \"ASK\",\n", + " \"NO_ORD\": 1,\n", + " \"ACC_SIZE\": 100,\n", + " \"LV_TIM_MS\": 39611768,\n", + " \"LV_TIM_MSP\": 250,\n", + " \"LV_DATE\": \"2022-05-19\"\n", + " }\n", + " },\n", + " {\n", + " \"Action\": \"Add\",\n", + " \"Key\": \"MzguMDAwMDAwQQ==\",\n", + " \"Fields\": {\n", + " \"ORDER_PRC\": 38.0,\n", + " \"ORDER_SIDE\": \"ASK\",\n", + " \"NO_ORD\": 3,\n", + " \"ACC_SIZE\": 4500,\n", + " \"LV_TIM_MS\": 45851716,\n", + " \"LV_TIM_MSP\": 827,\n", + " \"LV_DATE\": \"2022-06-21\"\n", + " }\n", + " },\n", + " {\n", + " \"Action\": \"Add\",\n", + " \"Key\": \"MTAuMDcwMDAwQQ==\",\n", + " \"Fields\": {\n", + " \"ORDER_PRC\": 10.07,\n", + " \"ORDER_SIDE\": \"ASK\",\n", + " \"NO_ORD\": 1,\n", + " \"ACC_SIZE\": 500,\n", + " \"LV_TIM_MS\": 40990675,\n", + " \"LV_TIM_MSP\": 429,\n", + " \"LV_DATE\": \"2022-05-30\"\n", + " }\n", + " },\n", + " {\n", + " \"Action\": \"Add\",\n", + " \"Key\": \"MTMuMjAwMDAwQQ==\",\n", + " \"Fields\": {\n", + " \"ORDER_PRC\": 13.2,\n", + " \"ORDER_SIDE\": \"ASK\",\n", + " \"NO_ORD\": 2,\n", + " \"ACC_SIZE\": 1300,\n", + " \"LV_TIM_MS\": 41402019,\n", + " \"LV_TIM_MSP\": 36,\n", + " \"LV_DATE\": \"2022-06-22\"\n", + " }\n", + " },\n", + " {\n", + " \"Action\": \"Add\",\n", + " \"Key\": \"MTQuNTkwMDAwQQ==\",\n", + " \"Fields\": {\n", + " \"ORDER_PRC\": 14.59,\n", + " \"ORDER_SIDE\": \"ASK\",\n", + " \"NO_ORD\": 1,\n", + " \"ACC_SIZE\": 200,\n", + " \"LV_TIM_MS\": 42334490,\n", + " \"LV_TIM_MSP\": 7,\n", + " \"LV_DATE\": \"2022-05-17\"\n", + " }\n", + " },\n", + " {\n", + " \"Action\": \"Add\",\n", + " \"Key\": \"Ni45ODAwMDBB\",\n", + " \"Fields\": {\n", + " \"ORDER_PRC\": 6.98,\n", + " \"ORDER_SIDE\": \"ASK\",\n", + " \"NO_ORD\": 12,\n", + " \"ACC_SIZE\": 50700,\n", + " \"LV_TIM_MS\": 50310863,\n", + " \"LV_TIM_MSP\": 78,\n", + " \"LV_DATE\": \"2022-06-22\"\n", + " }\n", + " },\n", + " {\n", + " \"Action\": \"Add\",\n", + " \"Key\": \"MTQuODAwMDAwQQ==\",\n", + " \"Fields\": {\n", + " \"ORDER_PRC\": 14.8,\n", + " \"ORDER_SIDE\": \"ASK\",\n", + " \"NO_ORD\": 2,\n", + " \"ACC_SIZE\": 400,\n", + " \"LV_TIM_MS\": 50422304,\n", + " \"LV_TIM_MSP\": 42,\n", + " \"LV_DATE\": \"2022-05-31\"\n", + " }\n", + " },\n", + " {\n", + " \"Action\": \"Add\",\n", + " \"Key\": \"Ny4zNzAwMDBB\",\n", + " \"Fields\": {\n", + " \"ORDER_PRC\": 7.37,\n", + " \"ORDER_SIDE\": \"ASK\",\n", + " \"NO_ORD\": 1,\n", + " \"ACC_SIZE\": 500,\n", + " \"LV_TIM_MS\": 63765666,\n", + " \"LV_TIM_MSP\": 599,\n", + " \"LV_DATE\": \"2022-06-20\"\n", + " }\n", + " },\n", + " {\n", + " \"Action\": \"Add\",\n", + " \"Key\": \"MTYuMTQwMDAwQQ==\",\n", + " \"Fields\": {\n", + " \"ORDER_PRC\": 16.14,\n", + " \"ORDER_SIDE\": \"ASK\",\n", + " \"NO_ORD\": 1,\n", + " \"ACC_SIZE\": 300,\n", + " \"LV_TIM_MS\": 51744689,\n", + " \"LV_TIM_MSP\": 692,\n", + " \"LV_DATE\": \"2022-05-26\"\n", + " }\n", + " },\n", + " {\n", + " \"Action\": \"Add\",\n", + " \"Key\": \"NC4wMTAwMDBC\",\n", + " \"Fields\": {\n", + " \"ORDER_PRC\": 4.01,\n", + " \"ORDER_SIDE\": \"BID\",\n", + " \"NO_ORD\": 2,\n", + " \"ACC_SIZE\": 900,\n", + " \"LV_TIM_MS\": 40356046,\n", + " \"LV_TIM_MSP\": 485,\n", + " \"LV_DATE\": \"2022-06-14\"\n", + " }\n", + " },\n", + " {\n", + " \"Action\": \"Add\",\n", + " \"Key\": \"MTIuMDYwMDAwQQ==\",\n", + " \"Fields\": {\n", + " \"ORDER_PRC\": 12.06,\n", + " \"ORDER_SIDE\": \"ASK\",\n", + " \"NO_ORD\": 1,\n", + " \"ACC_SIZE\": 100,\n", + " \"LV_TIM_MS\": 67252745,\n", + " \"LV_TIM_MSP\": 916,\n", + " \"LV_DATE\": \"2022-05-26\"\n", + " }\n", + " },\n", + " {\n", + " \"Action\": \"Add\",\n", + " \"Key\": \"MzEuMDAwMDAwQQ==\",\n", + " \"Fields\": {\n", + " \"ORDER_PRC\": 31.0,\n", + " \"ORDER_SIDE\": \"ASK\",\n", + " \"NO_ORD\": 1,\n", + " \"ACC_SIZE\": 200,\n", + " \"LV_TIM_MS\": 53034043,\n", + " \"LV_TIM_MSP\": 167,\n", + " \"LV_DATE\": \"2022-06-21\"\n", + " }\n", + " },\n", + " {\n", + " \"Action\": \"Add\",\n", + " \"Key\": \"Ni4wMDAwMDBC\",\n", + " \"Fields\": {\n", + " \"ORDER_PRC\": 6.0,\n", + " \"ORDER_SIDE\": \"BID\",\n", + " \"NO_ORD\": 46,\n", + " \"ACC_SIZE\": 38400,\n", + " \"LV_TIM_MS\": 48961225,\n", + " \"LV_TIM_MSP\": 994,\n", + " \"LV_DATE\": \"2022-06-22\"\n", + " }\n", + " },\n", + " {\n", + " \"Action\": \"Add\",\n", + " \"Key\": \"MTQuMDUwMDAwQQ==\",\n", + " \"Fields\": {\n", + " \"ORDER_PRC\": 14.05,\n", + " \"ORDER_SIDE\": \"ASK\",\n", + " \"NO_ORD\": 1,\n", + " \"ACC_SIZE\": 200,\n", + " \"LV_TIM_MS\": 40923099,\n", + " \"LV_TIM_MSP\": 742,\n", + " \"LV_DATE\": \"2022-05-30\"\n", + " }\n", + " },\n", + " {\n", + " \"Action\": \"Add\",\n", + " \"Key\": \"MTguNTcwMDAwQQ==\",\n", + " \"Fields\": {\n", + " \"ORDER_PRC\": 18.57,\n", + " \"ORDER_SIDE\": \"ASK\",\n", + " \"NO_ORD\": 1,\n", + " \"ACC_SIZE\": 1000,\n", + " \"LV_TIM_MS\": 40990711,\n", + " \"LV_TIM_MSP\": 346,\n", + " \"LV_DATE\": \"2022-05-30\"\n", + " }\n", + " },\n", + " {\n", + " \"Action\": \"Add\",\n", + " \"Key\": \"Ny42MDAwMDBB\",\n", + " \"Fields\": {\n", + " \"ORDER_PRC\": 7.6,\n", + " \"ORDER_SIDE\": \"ASK\",\n", + " \"NO_ORD\": 6,\n", + " \"ACC_SIZE\": 4200,\n", + " \"LV_TIM_MS\": 41412129,\n", + " \"LV_TIM_MSP\": 50,\n", + " \"LV_DATE\": \"2022-06-22\"\n", + " }\n", + " },\n", + " {\n", + " \"Action\": \"Add\",\n", + " \"Key\": \"Ni40NDAwMDBC\",\n", + " \"Fields\": {\n", + " \"ORDER_PRC\": 6.44,\n", + " \"ORDER_SIDE\": \"BID\",\n", + " \"NO_ORD\": 1,\n", + " \"ACC_SIZE\": 100,\n", + " \"LV_TIM_MS\": 39605624,\n", + " \"LV_TIM_MSP\": 924,\n", + " \"LV_DATE\": \"2022-06-22\"\n", + " }\n", + " },\n", + " {\n", + " \"Action\": \"Add\",\n", + " \"Key\": \"MTcuNjIwMDAwQQ==\",\n", + " \"Fields\": {\n", + " \"ORDER_PRC\": 17.62,\n", + " \"ORDER_SIDE\": \"ASK\",\n", + " \"NO_ORD\": 1,\n", + " \"ACC_SIZE\": 1400,\n", + " \"LV_TIM_MS\": 41412130,\n", + " \"LV_TIM_MSP\": 35,\n", + " \"LV_DATE\": \"2022-06-22\"\n", + " }\n", + " },\n", + " {\n", + " \"Action\": \"Add\",\n", + " \"Key\": \"MTEuNTcwMDAwQQ==\",\n", + " \"Fields\": {\n", + " \"ORDER_PRC\": 11.57,\n", + " \"ORDER_SIDE\": \"ASK\",\n", + " \"NO_ORD\": 1,\n", + " \"ACC_SIZE\": 1300,\n", + " \"LV_TIM_MS\": 48789710,\n", + " \"LV_TIM_MSP\": 443,\n", + " \"LV_DATE\": \"2022-05-31\"\n", + " }\n", + " },\n", + " {\n", + " \"Action\": \"Add\",\n", + " \"Key\": \"MjQuOTgwMDAwQQ==\",\n", + " \"Fields\": {\n", + " \"ORDER_PRC\": 24.98,\n", + " \"ORDER_SIDE\": \"ASK\",\n", + " \"NO_ORD\": 1,\n", + " \"ACC_SIZE\": 20000,\n", + " \"LV_TIM_MS\": 58621777,\n", + " \"LV_TIM_MSP\": 500,\n", + " \"LV_DATE\": \"2022-02-10\"\n", + " }\n", + " },\n", + " {\n", + " \"Action\": \"Add\",\n", + " \"Key\": \"Ni44ODAwMDBC\",\n", + " \"Fields\": {\n", + " \"ORDER_PRC\": 6.88,\n", + " \"ORDER_SIDE\": \"BID\",\n", + " \"NO_ORD\": 13,\n", + " \"ACC_SIZE\": 18700,\n", + " \"LV_TIM_MS\": 50300183,\n", + " \"LV_TIM_MSP\": 353,\n", + " \"LV_DATE\": \"2022-06-22\"\n", + " }\n", + " },\n", + " {\n", + " \"Action\": \"Add\",\n", + " \"Key\": \"OC44NzAwMDBB\",\n", + " \"Fields\": {\n", + " \"ORDER_PRC\": 8.87,\n", + " \"ORDER_SIDE\": \"ASK\",\n", + " \"NO_ORD\": 1,\n", + " \"ACC_SIZE\": 100,\n", + " \"LV_TIM_MS\": 49900308,\n", + " \"LV_TIM_MSP\": 263,\n", + " \"LV_DATE\": \"2022-06-03\"\n", + " }\n", + " },\n", + " {\n", + " \"Action\": \"Add\",\n", + " \"Key\": \"MjIuMDEwMDAwQQ==\",\n", + " \"Fields\": {\n", + " \"ORDER_PRC\": 22.01,\n", + " \"ORDER_SIDE\": \"ASK\",\n", + " \"NO_ORD\": 1,\n", + " \"ACC_SIZE\": 2000,\n", + " \"LV_TIM_MS\": 47795260,\n", + " \"LV_TIM_MSP\": 225,\n", + " \"LV_DATE\": \"2022-02-03\"\n", + " }\n", + " },\n", + " {\n", + " \"Action\": \"Add\",\n", + " \"Key\": \"Ny4yOTAwMDBB\",\n", + " \"Fields\": {\n", + " \"ORDER_PRC\": 7.29,\n", + " \"ORDER_SIDE\": \"ASK\",\n", + " \"NO_ORD\": 1,\n", + " \"ACC_SIZE\": 100,\n", + " \"LV_TIM_MS\": 59162567,\n", + " \"LV_TIM_MSP\": 390,\n", + " \"LV_DATE\": \"2022-06-17\"\n", + " }\n", + " },\n", + " {\n", + " \"Action\": \"Add\",\n", + " \"Key\": \"NS45NTAwMDBC\",\n", + " \"Fields\": {\n", + " \"ORDER_PRC\": 5.95,\n", + " \"ORDER_SIDE\": \"BID\",\n", + " \"NO_ORD\": 1,\n", + " \"ACC_SIZE\": 800,\n", + " \"LV_TIM_MS\": 56842745,\n", + " \"LV_TIM_MSP\": 883,\n", + " \"LV_DATE\": \"2022-06-13\"\n", + " }\n", + " },\n", + " {\n", + " \"Action\": \"Add\",\n", + " \"Key\": \"NzEuMDAwMDAwQQ==\",\n", + " \"Fields\": {\n", + " \"ORDER_PRC\": 71.0,\n", + " \"ORDER_SIDE\": \"ASK\",\n", + " \"NO_ORD\": 1,\n", + " \"ACC_SIZE\": 1000,\n", + " \"LV_TIM_MS\": 40922460,\n", + " \"LV_TIM_MSP\": 905,\n", + " \"LV_DATE\": \"2022-05-30\"\n", + " }\n", + " },\n", + " {\n", + " \"Action\": \"Add\",\n", + " \"Key\": \"MjQuMDAwMDAwQQ==\",\n", + " \"Fields\": {\n", + " \"ORDER_PRC\": 24.0,\n", + " \"ORDER_SIDE\": \"ASK\",\n", + " \"NO_ORD\": 13,\n", + " \"ACC_SIZE\": 14800,\n", + " \"LV_TIM_MS\": 41412129,\n", + " \"LV_TIM_MSP\": 40,\n", + " \"LV_DATE\": \"2022-06-22\"\n", + " }\n", + " },\n", + " {\n", + " \"Action\": \"Add\",\n", + " \"Key\": \"Ny41MDAwMDBB\",\n", + " \"Fields\": {\n", + " \"ORDER_PRC\": 7.5,\n", + " \"ORDER_SIDE\": \"ASK\",\n", + " \"NO_ORD\": 16,\n", + " \"ACC_SIZE\": 12900,\n", + " \"LV_TIM_MS\": 49338710,\n", + " \"LV_TIM_MSP\": 308,\n", + " \"LV_DATE\": \"2022-06-22\"\n", + " }\n", + " },\n", + " {\n", + " \"Action\": \"Add\",\n", + " \"Key\": \"OS4yODAwMDBB\",\n", + " \"Fields\": {\n", + " \"ORDER_PRC\": 9.28,\n", + " \"ORDER_SIDE\": \"ASK\",\n", + " \"NO_ORD\": 1,\n", + " \"ACC_SIZE\": 300,\n", + " \"LV_TIM_MS\": 39611648,\n", + " \"LV_TIM_MSP\": 249,\n", + " \"LV_DATE\": \"2022-04-06\"\n", + " }\n", + " },\n", + " {\n", + " \"Action\": \"Add\",\n", + " \"Key\": \"Ny45NDAwMDBB\",\n", + " \"Fields\": {\n", + " \"ORDER_PRC\": 7.94,\n", + " \"ORDER_SIDE\": \"ASK\",\n", + " \"NO_ORD\": 1,\n", + " \"ACC_SIZE\": 1000,\n", + " \"LV_TIM_MS\": 57825352,\n", + " \"LV_TIM_MSP\": 299,\n", + " \"LV_DATE\": \"2022-06-21\"\n", + " }\n", + " },\n", + " {\n", + " \"Action\": \"Add\",\n", + " \"Key\": \"MjguOTYwMDAwQQ==\",\n", + " \"Fields\": {\n", + " \"ORDER_PRC\": 28.96,\n", + " \"ORDER_SIDE\": \"ASK\",\n", + " \"NO_ORD\": 1,\n", + " \"ACC_SIZE\": 200,\n", + " \"LV_TIM_MS\": 41412129,\n", + " \"LV_TIM_MSP\": 31,\n", + " \"LV_DATE\": \"2022-06-22\"\n", + " }\n", + " },\n", + " {\n", + " \"Action\": \"Add\",\n", + " \"Key\": \"Ni43ODAwMDBC\",\n", + " \"Fields\": {\n", + " \"ORDER_PRC\": 6.78,\n", + " \"ORDER_SIDE\": \"BID\",\n", + " \"NO_ORD\": 2,\n", + " \"ACC_SIZE\": 11500,\n", + " \"LV_TIM_MS\": 50224739,\n", + " \"LV_TIM_MSP\": 30,\n", + " \"LV_DATE\": \"2022-06-22\"\n", + " }\n", + " },\n", + " {\n", + " \"Action\": \"Add\",\n", + " \"Key\": \"MC41MDAwMDBC\",\n", + " \"Fields\": {\n", + " \"ORDER_PRC\": 0.5,\n", + " \"ORDER_SIDE\": \"BID\",\n", + " \"NO_ORD\": 1,\n", + " \"ACC_SIZE\": 1000,\n", + " \"LV_TIM_MS\": 71434048,\n", + " \"LV_TIM_MSP\": 916,\n", + " \"LV_DATE\": \"2022-06-17\"\n", + " }\n", + " },\n", + " {\n", + " \"Action\": \"Add\",\n", + " \"Key\": \"OC43NzAwMDBB\",\n", + " \"Fields\": {\n", + " \"ORDER_PRC\": 8.77,\n", + " \"ORDER_SIDE\": \"ASK\",\n", + " \"NO_ORD\": 1,\n", + " \"ACC_SIZE\": 200,\n", + " \"LV_TIM_MS\": 58570836,\n", + " \"LV_TIM_MSP\": 736,\n", + " \"LV_DATE\": \"2022-05-27\"\n", + " }\n", + " },\n", + " {\n", + " \"Action\": \"Add\",\n", + " \"Key\": \"Ny40MDAwMDBB\",\n", + " \"Fields\": {\n", + " \"ORDER_PRC\": 7.4,\n", + " \"ORDER_SIDE\": \"ASK\",\n", + " \"NO_ORD\": 1,\n", + " \"ACC_SIZE\": 200,\n", + " \"LV_TIM_MS\": 56528181,\n", + " \"LV_TIM_MSP\": 859,\n", + " \"LV_DATE\": \"2022-06-15\"\n", + " }\n", + " },\n", + " {\n", + " \"Action\": \"Add\",\n", + " \"Key\": \"MTAuNTQwMDAwQQ==\",\n", + " \"Fields\": {\n", + " \"ORDER_PRC\": 10.54,\n", + " \"ORDER_SIDE\": \"ASK\",\n", + " \"NO_ORD\": 1,\n", + " \"ACC_SIZE\": 100,\n", + " \"LV_TIM_MS\": 70973067,\n", + " \"LV_TIM_MSP\": 492,\n", + " \"LV_DATE\": \"2022-05-30\"\n", + " }\n", + " },\n", + " {\n", + " \"Action\": \"Add\",\n", + " \"Key\": \"MjMuOTUwMDAwQQ==\",\n", + " \"Fields\": {\n", + " \"ORDER_PRC\": 23.95,\n", + " \"ORDER_SIDE\": \"ASK\",\n", + " \"NO_ORD\": 1,\n", + " \"ACC_SIZE\": 600,\n", + " \"LV_TIM_MS\": 67543819,\n", + " \"LV_TIM_MSP\": 931,\n", + " \"LV_DATE\": \"2022-04-25\"\n", + " }\n", + " },\n", + " {\n", + " \"Action\": \"Add\",\n", + " \"Key\": \"MTUuMDEwMDAwQQ==\",\n", + " \"Fields\": {\n", + " \"ORDER_PRC\": 15.01,\n", + " \"ORDER_SIDE\": \"ASK\",\n", + " \"NO_ORD\": 1,\n", + " \"ACC_SIZE\": 1000,\n", + " \"LV_TIM_MS\": 41402020,\n", + " \"LV_TIM_MSP\": 41,\n", + " \"LV_DATE\": \"2022-06-22\"\n", + " }\n", + " },\n", + " {\n", + " \"Action\": \"Add\",\n", + " \"Key\": \"MTUuNDUwMDAwQQ==\",\n", + " \"Fields\": {\n", + " \"ORDER_PRC\": 15.45,\n", + " \"ORDER_SIDE\": \"ASK\",\n", + " \"NO_ORD\": 4,\n", + " \"ACC_SIZE\": 3400,\n", + " \"LV_TIM_MS\": 39665134,\n", + " \"LV_TIM_MSP\": 994,\n", + " \"LV_DATE\": \"2022-06-22\"\n", + " }\n", + " },\n", + " {\n", + " \"Action\": \"Add\",\n", + " \"Key\": \"Ny44NDAwMDBB\",\n", + " \"Fields\": {\n", + " \"ORDER_PRC\": 7.84,\n", + " \"ORDER_SIDE\": \"ASK\",\n", + " \"NO_ORD\": 2,\n", + " \"ACC_SIZE\": 500,\n", + " \"LV_TIM_MS\": 39603410,\n", + " \"LV_TIM_MSP\": 247,\n", + " \"LV_DATE\": \"2022-06-22\"\n", + " }\n", + " },\n", + " {\n", + " \"Action\": \"Add\",\n", + " \"Key\": \"MjQuMzQwMDAwQQ==\",\n", + " \"Fields\": {\n", + " \"ORDER_PRC\": 24.34,\n", + " \"ORDER_SIDE\": \"ASK\",\n", + " \"NO_ORD\": 1,\n", + " \"ACC_SIZE\": 100,\n", + " \"LV_TIM_MS\": 61287153,\n", + " \"LV_TIM_MSP\": 841,\n", + " \"LV_DATE\": \"2022-04-04\"\n", + " }\n", + " },\n", + " {\n", + " \"Action\": \"Add\",\n", + " \"Key\": \"MjUuNTAwMDAwQQ==\",\n", + " \"Fields\": {\n", + " \"ORDER_PRC\": 25.5,\n", + " \"ORDER_SIDE\": \"ASK\",\n", + " \"NO_ORD\": 1,\n", + " \"ACC_SIZE\": 100,\n", + " \"LV_TIM_MS\": 41402016,\n", + " \"LV_TIM_MSP\": 38,\n", + " \"LV_DATE\": \"2022-06-22\"\n", + " }\n", + " },\n", + " {\n", + " \"Action\": \"Add\",\n", + " \"Key\": \"OS4xODAwMDBB\",\n", + " \"Fields\": {\n", + " \"ORDER_PRC\": 9.18,\n", + " \"ORDER_SIDE\": \"ASK\",\n", + " \"NO_ORD\": 1,\n", + " \"ACC_SIZE\": 2000,\n", + " \"LV_TIM_MS\": 41412127,\n", + " \"LV_TIM_MSP\": 27,\n", + " \"LV_DATE\": \"2022-06-22\"\n", + " }\n", + " },\n", + " {\n", + " \"Action\": \"Add\",\n", + " \"Key\": \"MTcuMDAwMDAwQQ==\",\n", + " \"Fields\": {\n", + " \"ORDER_PRC\": 17.0,\n", + " \"ORDER_SIDE\": \"ASK\",\n", + " \"NO_ORD\": 12,\n", + " \"ACC_SIZE\": 7800,\n", + " \"LV_TIM_MS\": 39601140,\n", + " \"LV_TIM_MSP\": 711,\n", + " \"LV_DATE\": \"2022-06-22\"\n", + " }\n", + " },\n", + " {\n", + " \"Action\": \"Add\",\n", + " \"Key\": \"MTUuODkwMDAwQQ==\",\n", + " \"Fields\": {\n", + " \"ORDER_PRC\": 15.89,\n", + " \"ORDER_SIDE\": \"ASK\",\n", + " \"NO_ORD\": 2,\n", + " \"ACC_SIZE\": 2300,\n", + " \"LV_TIM_MS\": 41005682,\n", + " \"LV_TIM_MSP\": 950,\n", + " \"LV_DATE\": \"2022-05-16\"\n", + " }\n", + " },\n", + " {\n", + " \"Action\": \"Add\",\n", + " \"Key\": \"MTIuNTMwMDAwQQ==\",\n", + " \"Fields\": {\n", + " \"ORDER_PRC\": 12.53,\n", + " \"ORDER_SIDE\": \"ASK\",\n", + " \"NO_ORD\": 1,\n", + " \"ACC_SIZE\": 200,\n", + " \"LV_TIM_MS\": 40395018,\n", + " \"LV_TIM_MSP\": 196,\n", + " \"LV_DATE\": \"2022-06-06\"\n", + " }\n", + " },\n", + " {\n", + " \"Action\": \"Add\",\n", + " \"Key\": \"MjAuMjYwMDAwQQ==\",\n", + " \"Fields\": {\n", + " \"ORDER_PRC\": 20.26,\n", + " \"ORDER_SIDE\": \"ASK\",\n", + " \"NO_ORD\": 1,\n", + " \"ACC_SIZE\": 100,\n", + " \"LV_TIM_MS\": 39660330,\n", + " \"LV_TIM_MSP\": 389,\n", + " \"LV_DATE\": \"2022-06-15\"\n", + " }\n", + " },\n", + " {\n", + " \"Action\": \"Add\",\n", + " \"Key\": \"Ni4yNjAwMDBC\",\n", + " \"Fields\": {\n", + " \"ORDER_PRC\": 6.26,\n", + " \"ORDER_SIDE\": \"BID\",\n", + " \"NO_ORD\": 1,\n", + " \"ACC_SIZE\": 300,\n", + " \"LV_TIM_MS\": 49532051,\n", + " \"LV_TIM_MSP\": 138,\n", + " \"LV_DATE\": \"2022-06-22\"\n", + " }\n", + " },\n", + " {\n", + " \"Action\": \"Add\",\n", + " \"Key\": \"MjYuMzMwMDAwQQ==\",\n", + " \"Fields\": {\n", + " \"ORDER_PRC\": 26.33,\n", + " \"ORDER_SIDE\": \"ASK\",\n", + " \"NO_ORD\": 1,\n", + " \"ACC_SIZE\": 2500,\n", + " \"LV_TIM_MS\": 41800804,\n", + " \"LV_TIM_MSP\": 403,\n", + " \"LV_DATE\": \"2022-05-30\"\n", + " }\n", + " },\n", + " {\n", + " \"Action\": \"Add\",\n", + " \"Key\": \"NzMuMzMwMDAwQQ==\",\n", + " \"Fields\": {\n", + " \"ORDER_PRC\": 73.33,\n", + " \"ORDER_SIDE\": \"ASK\",\n", + " \"NO_ORD\": 1,\n", + " \"ACC_SIZE\": 500,\n", + " \"LV_TIM_MS\": 66591940,\n", + " \"LV_TIM_MSP\": 152,\n", + " \"LV_DATE\": \"2021-10-20\"\n", + " }\n", + " },\n", + " {\n", + " \"Action\": \"Add\",\n", + " \"Key\": \"NS4zMTAwMDBC\",\n", + " \"Fields\": {\n", + " \"ORDER_PRC\": 5.31,\n", + " \"ORDER_SIDE\": \"BID\",\n", + " \"NO_ORD\": 1,\n", + " \"ACC_SIZE\": 1000,\n", + " \"LV_TIM_MS\": 40925880,\n", + " \"LV_TIM_MSP\": 552,\n", + " \"LV_DATE\": \"2022-05-30\"\n", + " }\n", + " },\n", + " {\n", + " \"Action\": \"Add\",\n", + " \"Key\": \"MTAuMDAwMDAwQQ==\",\n", + " \"Fields\": {\n", + " \"ORDER_PRC\": 10.0,\n", + " \"ORDER_SIDE\": \"ASK\",\n", + " \"NO_ORD\": 40,\n", + " \"ACC_SIZE\": 13800,\n", + " \"LV_TIM_MS\": 49340903,\n", + " \"LV_TIM_MSP\": 687,\n", + " \"LV_DATE\": \"2022-06-22\"\n", + " }\n", + " },\n", + " {\n", + " \"Action\": \"Add\",\n", + " \"Key\": \"OC4yNTAwMDBB\",\n", + " \"Fields\": {\n", + " \"ORDER_PRC\": 8.25,\n", + " \"ORDER_SIDE\": \"ASK\",\n", + " \"NO_ORD\": 5,\n", + " \"ACC_SIZE\": 5600,\n", + " \"LV_TIM_MS\": 41425031,\n", + " \"LV_TIM_MSP\": 955,\n", + " \"LV_DATE\": \"2022-06-22\"\n", + " }\n", + " },\n", + " {\n", + " \"Action\": \"Add\",\n", + " \"Key\": \"Ny4wOTAwMDBB\",\n", + " \"Fields\": {\n", + " \"ORDER_PRC\": 7.09,\n", + " \"ORDER_SIDE\": \"ASK\",\n", + " \"NO_ORD\": 4,\n", + " \"ACC_SIZE\": 1600,\n", + " \"LV_TIM_MS\": 49980642,\n", + " \"LV_TIM_MSP\": 358,\n", + " \"LV_DATE\": \"2022-06-22\"\n", + " }\n", + " },\n", + " {\n", + " \"Action\": \"Add\",\n", + " \"Key\": \"NS43NTAwMDBC\",\n", + " \"Fields\": {\n", + " \"ORDER_PRC\": 5.75,\n", + " \"ORDER_SIDE\": \"BID\",\n", + " \"NO_ORD\": 1,\n", + " \"ACC_SIZE\": 500,\n", + " \"LV_TIM_MS\": 40944153,\n", + " \"LV_TIM_MSP\": 725,\n", + " \"LV_DATE\": \"2022-06-17\"\n", + " }\n", + " },\n", + " {\n", + " \"Action\": \"Add\",\n", + " \"Key\": \"Ny4zMDAwMDBB\",\n", + " \"Fields\": {\n", + " \"ORDER_PRC\": 7.3,\n", + " \"ORDER_SIDE\": \"ASK\",\n", + " \"NO_ORD\": 1,\n", + " \"ACC_SIZE\": 500,\n", + " \"LV_TIM_MS\": 52651044,\n", + " \"LV_TIM_MSP\": 440,\n", + " \"LV_DATE\": \"2022-06-15\"\n", + " }\n", + " },\n", + " {\n", + " \"Action\": \"Add\",\n", + " \"Key\": \"OC42OTAwMDBB\",\n", + " \"Fields\": {\n", + " \"ORDER_PRC\": 8.69,\n", + " \"ORDER_SIDE\": \"ASK\",\n", + " \"NO_ORD\": 1,\n", + " \"ACC_SIZE\": 1000,\n", + " \"LV_TIM_MS\": 47828729,\n", + " \"LV_TIM_MSP\": 151,\n", + " \"LV_DATE\": \"2022-06-03\"\n", + " }\n", + " },\n", + " {\n", + " \"Action\": \"Add\",\n", + " \"Key\": \"Ni45MTAwMDBC\",\n", + " \"Fields\": {\n", + " \"ORDER_PRC\": 6.91,\n", + " \"ORDER_SIDE\": \"BID\",\n", + " \"NO_ORD\": 17,\n", + " \"ACC_SIZE\": 25300,\n", + " \"LV_TIM_MS\": 50338127,\n", + " \"LV_TIM_MSP\": 808,\n", + " \"LV_DATE\": \"2022-06-22\"\n", + " }\n", + " },\n", + " {\n", + " \"Action\": \"Add\",\n", + " \"Key\": \"MTUuMzUwMDAwQQ==\",\n", + " \"Fields\": {\n", + " \"ORDER_PRC\": 15.35,\n", + " \"ORDER_SIDE\": \"ASK\",\n", + " \"NO_ORD\": 1,\n", + " \"ACC_SIZE\": 1000,\n", + " \"LV_TIM_MS\": 40917889,\n", + " \"LV_TIM_MSP\": 632,\n", + " \"LV_DATE\": \"2022-05-30\"\n", + " }\n", + " },\n", + " {\n", + " \"Action\": \"Add\",\n", + " \"Key\": \"MTAuODgwMDAwQQ==\",\n", + " \"Fields\": {\n", + " \"ORDER_PRC\": 10.88,\n", + " \"ORDER_SIDE\": \"ASK\",\n", + " \"NO_ORD\": 2,\n", + " \"ACC_SIZE\": 2300,\n", + " \"LV_TIM_MS\": 39613296,\n", + " \"LV_TIM_MSP\": 773,\n", + " \"LV_DATE\": \"2022-05-17\"\n", + " }\n", + " },\n", + " {\n", + " \"Action\": \"Add\",\n", + " \"Key\": \"MTkuODcwMDAwQQ==\",\n", + " \"Fields\": {\n", + " \"ORDER_PRC\": 19.87,\n", + " \"ORDER_SIDE\": \"ASK\",\n", + " \"NO_ORD\": 1,\n", + " \"ACC_SIZE\": 1300,\n", + " \"LV_TIM_MS\": 41494618,\n", + " \"LV_TIM_MSP\": 77,\n", + " \"LV_DATE\": \"2022-06-13\"\n", + " }\n", + " },\n", + " {\n", + " \"Action\": \"Add\",\n", + " \"Key\": \"Ny43NDAwMDBB\",\n", + " \"Fields\": {\n", + " \"ORDER_PRC\": 7.74,\n", + " \"ORDER_SIDE\": \"ASK\",\n", + " \"NO_ORD\": 2,\n", + " \"ACC_SIZE\": 1300,\n", + " \"LV_TIM_MS\": 67646043,\n", + " \"LV_TIM_MSP\": 976,\n", + " \"LV_DATE\": \"2022-06-08\"\n", + " }\n", + " },\n", + " {\n", + " \"Action\": \"Add\",\n", + " \"Key\": \"OC45MDAwMDBB\",\n", + " \"Fields\": {\n", + " \"ORDER_PRC\": 8.9,\n", + " \"ORDER_SIDE\": \"ASK\",\n", + " \"NO_ORD\": 4,\n", + " \"ACC_SIZE\": 800,\n", + " \"LV_TIM_MS\": 39660573,\n", + " \"LV_TIM_MSP\": 419,\n", + " \"LV_DATE\": \"2022-06-22\"\n", + " }\n", + " },\n", + " {\n", + " \"Action\": \"Add\",\n", + " \"Key\": \"MjUuNDAwMDAwQQ==\",\n", + " \"Fields\": {\n", + " \"ORDER_PRC\": 25.4,\n", + " \"ORDER_SIDE\": \"ASK\",\n", + " \"NO_ORD\": 1,\n", + " \"ACC_SIZE\": 20000,\n", + " \"LV_TIM_MS\": 44160401,\n", + " \"LV_TIM_MSP\": 647,\n", + " \"LV_DATE\": \"2021-08-31\"\n", + " }\n", + " },\n", + " {\n", + " \"Action\": \"Add\",\n", + " \"Key\": \"Ni4xNjAwMDBC\",\n", + " \"Fields\": {\n", + " \"ORDER_PRC\": 6.16,\n", + " \"ORDER_SIDE\": \"BID\",\n", + " \"NO_ORD\": 2,\n", + " \"ACC_SIZE\": 200,\n", + " \"LV_TIM_MS\": 39602774,\n", + " \"LV_TIM_MSP\": 409,\n", + " \"LV_DATE\": \"2022-06-22\"\n", + " }\n", + " },\n", + " {\n", + " \"Action\": \"Add\",\n", + " \"Key\": \"MjYuMjMwMDAwQQ==\",\n", + " \"Fields\": {\n", + " \"ORDER_PRC\": 26.23,\n", + " \"ORDER_SIDE\": \"ASK\",\n", + " \"NO_ORD\": 1,\n", + " \"ACC_SIZE\": 2500,\n", + " \"LV_TIM_MS\": 40921204,\n", + " \"LV_TIM_MSP\": 383,\n", + " \"LV_DATE\": \"2022-05-30\"\n", + " }\n", + " },\n", + " {\n", + " \"Action\": \"Add\",\n", + " \"Key\": \"MTguNTAwMDAwQQ==\",\n", + " \"Fields\": {\n", + " \"ORDER_PRC\": 18.5,\n", + " \"ORDER_SIDE\": \"ASK\",\n", + " \"NO_ORD\": 2,\n", + " \"ACC_SIZE\": 300,\n", + " \"LV_TIM_MS\": 59352384,\n", + " \"LV_TIM_MSP\": 408,\n", + " \"LV_DATE\": \"2022-03-29\"\n", + " }\n", + " },\n", + " {\n", + " \"Action\": \"Add\",\n", + " \"Key\": \"MTIuODcwMDAwQQ==\",\n", + " \"Fields\": {\n", + " \"ORDER_PRC\": 12.87,\n", + " \"ORDER_SIDE\": \"ASK\",\n", + " \"NO_ORD\": 1,\n", + " \"ACC_SIZE\": 100,\n", + " \"LV_TIM_MS\": 50440238,\n", + " \"LV_TIM_MSP\": 130,\n", + " \"LV_DATE\": \"2022-06-13\"\n", + " }\n", + " },\n", + " {\n", + " \"Action\": \"Add\",\n", + " \"Key\": \"OC4xNTAwMDBB\",\n", + " \"Fields\": {\n", + " \"ORDER_PRC\": 8.15,\n", + " \"ORDER_SIDE\": \"ASK\",\n", + " \"NO_ORD\": 1,\n", + " \"ACC_SIZE\": 200,\n", + " \"LV_TIM_MS\": 50372923,\n", + " \"LV_TIM_MSP\": 806,\n", + " \"LV_DATE\": \"2022-06-10\"\n", + " }\n", + " }\n", + " ]\n", + " }\n", + "}\n", + "----------------------------------------------------------\n", + ">>> Refresh event received at 15:59:20.451907\n", + "{\n", + " \"ID\": 5,\n", + " \"Type\": \"Refresh\",\n", + " \"Domain\": \"MarketByPrice\",\n", + " \"Key\": {\n", + " \"Service\": \"ELEKTRON_DD\",\n", + " \"Name\": \"BB.TO\"\n", + " },\n", + " \"State\": {\n", + " \"Stream\": \"Open\",\n", + " \"Data\": \"Ok\",\n", + " \"Text\": \"All is well\"\n", + " },\n", + " \"Qos\": {\n", + " \"Timeliness\": \"Realtime\",\n", + " \"Rate\": \"TickByTick\"\n", + " },\n", + " \"ClearCache\": false,\n", + " \"PartNumber\": 5,\n", + " \"PermData\": \"AwFkMETA\",\n", + " \"SeqNumber\": 30688,\n", + " \"Map\": {\n", + " \"KeyType\": \"Buffer\",\n", + " \"Entries\": [\n", + " {\n", + " \"Action\": \"Add\",\n", + " \"Key\": \"MTEuNTAwMDAwQQ==\",\n", + " \"Fields\": {\n", + " \"ORDER_PRC\": 11.5,\n", + " \"ORDER_SIDE\": \"ASK\",\n", + " \"NO_ORD\": 14,\n", + " \"ACC_SIZE\": 55800,\n", + " \"LV_TIM_MS\": 41400507,\n", + " \"LV_TIM_MSP\": 282,\n", + " \"LV_DATE\": \"2022-06-22\"\n", + " }\n", + " },\n", + " {\n", + " \"Action\": \"Add\",\n", + " \"Key\": \"OC41OTAwMDBB\",\n", + " \"Fields\": {\n", + " \"ORDER_PRC\": 8.59,\n", + " \"ORDER_SIDE\": \"ASK\",\n", + " \"NO_ORD\": 3,\n", + " \"ACC_SIZE\": 3000,\n", + " \"LV_TIM_MS\": 45818598,\n", + " \"LV_TIM_MSP\": 481,\n", + " \"LV_DATE\": \"2022-06-03\"\n", + " }\n", + " },\n", + " {\n", + " \"Action\": \"Add\",\n", + " \"Key\": \"MzcuMTEwMDAwQQ==\",\n", + " \"Fields\": {\n", + " \"ORDER_PRC\": 37.11,\n", + " \"ORDER_SIDE\": \"ASK\",\n", + " \"NO_ORD\": 1,\n", + " \"ACC_SIZE\": 2600,\n", + " \"LV_TIM_MS\": 58680791,\n", + " \"LV_TIM_MSP\": 970,\n", + " \"LV_DATE\": \"2022-05-13\"\n", + " }\n", + " },\n", + " {\n", + " \"Action\": \"Add\",\n", + " \"Key\": \"Ni44MTAwMDBC\",\n", + " \"Fields\": {\n", + " \"ORDER_PRC\": 6.81,\n", + " \"ORDER_SIDE\": \"BID\",\n", + " \"NO_ORD\": 5,\n", + " \"ACC_SIZE\": 17800,\n", + " \"LV_TIM_MS\": 50225984,\n", + " \"LV_TIM_MSP\": 54,\n", + " \"LV_DATE\": \"2022-06-22\"\n", + " }\n", + " },\n", + " {\n", + " \"Action\": \"Add\",\n", + " \"Key\": \"NTAuMDAwMDAwQQ==\",\n", + " \"Fields\": {\n", + " \"ORDER_PRC\": 50.0,\n", + " \"ORDER_SIDE\": \"ASK\",\n", + " \"NO_ORD\": 6,\n", + " \"ACC_SIZE\": 6700,\n", + " \"LV_TIM_MS\": 64276954,\n", + " \"LV_TIM_MSP\": 380,\n", + " \"LV_DATE\": \"2022-05-06\"\n", + " }\n", + " },\n", + " {\n", + " \"Action\": \"Add\",\n", + " \"Key\": \"OC44MDAwMDBB\",\n", + " \"Fields\": {\n", + " \"ORDER_PRC\": 8.8,\n", + " \"ORDER_SIDE\": \"ASK\",\n", + " \"NO_ORD\": 3,\n", + " \"ACC_SIZE\": 6300,\n", + " \"LV_TIM_MS\": 53298422,\n", + " \"LV_TIM_MSP\": 593,\n", + " \"LV_DATE\": \"2022-05-17\"\n", + " }\n", + " },\n", + " {\n", + " \"Action\": \"Add\",\n", + " \"Key\": \"MTAuNzgwMDAwQQ==\",\n", + " \"Fields\": {\n", + " \"ORDER_PRC\": 10.78,\n", + " \"ORDER_SIDE\": \"ASK\",\n", + " \"NO_ORD\": 1,\n", + " \"ACC_SIZE\": 100,\n", + " \"LV_TIM_MS\": 65305753,\n", + " \"LV_TIM_MSP\": 512,\n", + " \"LV_DATE\": \"2022-05-27\"\n", + " }\n", + " },\n", + " {\n", + " \"Action\": \"Add\",\n", + " \"Key\": \"Ny4yMjAwMDBB\",\n", + " \"Fields\": {\n", + " \"ORDER_PRC\": 7.22,\n", + " \"ORDER_SIDE\": \"ASK\",\n", + " \"NO_ORD\": 1,\n", + " \"ACC_SIZE\": 3000,\n", + " \"LV_TIM_MS\": 42497123,\n", + " \"LV_TIM_MSP\": 333,\n", + " \"LV_DATE\": \"2022-06-22\"\n", + " }\n", + " },\n", + " {\n", + " \"Action\": \"Add\",\n", + " \"Key\": \"MTYuODUwMDAwQQ==\",\n", + " \"Fields\": {\n", + " \"ORDER_PRC\": 16.85,\n", + " \"ORDER_SIDE\": \"ASK\",\n", + " \"NO_ORD\": 1,\n", + " \"ACC_SIZE\": 300,\n", + " \"LV_TIM_MS\": 39660253,\n", + " \"LV_TIM_MSP\": 630,\n", + " \"LV_DATE\": \"2022-06-22\"\n", + " }\n", + " },\n", + " {\n", + " \"Action\": \"Add\",\n", + " \"Key\": \"Ni4wNjAwMDBC\",\n", + " \"Fields\": {\n", + " \"ORDER_PRC\": 6.06,\n", + " \"ORDER_SIDE\": \"BID\",\n", + " \"NO_ORD\": 1,\n", + " \"ACC_SIZE\": 2000,\n", + " \"LV_TIM_MS\": 67253076,\n", + " \"LV_TIM_MSP\": 974,\n", + " \"LV_DATE\": \"2022-06-01\"\n", + " }\n", + " },\n", + " {\n", + " \"Action\": \"Add\",\n", + " \"Key\": \"OS4yMTAwMDBB\",\n", + " \"Fields\": {\n", + " \"ORDER_PRC\": 9.21,\n", + " \"ORDER_SIDE\": \"ASK\",\n", + " \"NO_ORD\": 1,\n", + " \"ACC_SIZE\": 500,\n", + " \"LV_TIM_MS\": 52534252,\n", + " \"LV_TIM_MSP\": 340,\n", + " \"LV_DATE\": \"2022-06-08\"\n", + " }\n", + " },\n", + " {\n", + " \"Action\": \"Add\",\n", + " \"Key\": \"OC4wNTAwMDBB\",\n", + " \"Fields\": {\n", + " \"ORDER_PRC\": 8.05,\n", + " \"ORDER_SIDE\": \"ASK\",\n", + " \"NO_ORD\": 2,\n", + " \"ACC_SIZE\": 1700,\n", + " \"LV_TIM_MS\": 59148822,\n", + " \"LV_TIM_MSP\": 292,\n", + " \"LV_DATE\": \"2022-06-02\"\n", + " }\n", + " },\n", + " {\n", + " \"Action\": \"Add\",\n", + " \"Key\": \"MTQuMzIwMDAwQQ==\",\n", + " \"Fields\": {\n", + " \"ORDER_PRC\": 14.32,\n", + " \"ORDER_SIDE\": \"ASK\",\n", + " \"NO_ORD\": 1,\n", + " \"ACC_SIZE\": 100,\n", + " \"LV_TIM_MS\": 65787272,\n", + " \"LV_TIM_MSP\": 599,\n", + " \"LV_DATE\": \"2022-05-05\"\n", + " }\n", + " },\n", + " {\n", + " \"Action\": \"Add\",\n", + " \"Key\": \"OC40OTAwMDBB\",\n", + " \"Fields\": {\n", + " \"ORDER_PRC\": 8.49,\n", + " \"ORDER_SIDE\": \"ASK\",\n", + " \"NO_ORD\": 4,\n", + " \"ACC_SIZE\": 2600,\n", + " \"LV_TIM_MS\": 57966029,\n", + " \"LV_TIM_MSP\": 621,\n", + " \"LV_DATE\": \"2022-05-31\"\n", + " }\n", + " },\n", + " {\n", + " \"Action\": \"Add\",\n", + " \"Key\": \"MTEuNDAwMDAwQQ==\",\n", + " \"Fields\": {\n", + " \"ORDER_PRC\": 11.4,\n", + " \"ORDER_SIDE\": \"ASK\",\n", + " \"NO_ORD\": 1,\n", + " \"ACC_SIZE\": 1000,\n", + " \"LV_TIM_MS\": 68928568,\n", + " \"LV_TIM_MSP\": 153,\n", + " \"LV_DATE\": \"2022-01-31\"\n", + " }\n", + " },\n", + " {\n", + " \"Action\": \"Add\",\n", + " \"Key\": \"OS42NTAwMDBB\",\n", + " \"Fields\": {\n", + " \"ORDER_PRC\": 9.65,\n", + " \"ORDER_SIDE\": \"ASK\",\n", + " \"NO_ORD\": 1,\n", + " \"ACC_SIZE\": 200,\n", + " \"LV_TIM_MS\": 62644436,\n", + " \"LV_TIM_MSP\": 202,\n", + " \"LV_DATE\": \"2022-05-27\"\n", + " }\n", + " },\n", + " {\n", + " \"Action\": \"Add\",\n", + " \"Key\": \"MTAuMjQwMDAwQQ==\",\n", + " \"Fields\": {\n", + " \"ORDER_PRC\": 10.24,\n", + " \"ORDER_SIDE\": \"ASK\",\n", + " \"NO_ORD\": 1,\n", + " \"ACC_SIZE\": 1100,\n", + " \"LV_TIM_MS\": 44115490,\n", + " \"LV_TIM_MSP\": 886,\n", + " \"LV_DATE\": \"2022-05-30\"\n", + " }\n", + " },\n", + " {\n", + " \"Action\": \"Add\",\n", + " \"Key\": \"MjYuMTUwMDAwQQ==\",\n", + " \"Fields\": {\n", + " \"ORDER_PRC\": 26.15,\n", + " \"ORDER_SIDE\": \"ASK\",\n", + " \"NO_ORD\": 1,\n", + " \"ACC_SIZE\": 100,\n", + " \"LV_TIM_MS\": 41412129,\n", + " \"LV_TIM_MSP\": 56,\n", + " \"LV_DATE\": \"2022-06-22\"\n", + " }\n", + " },\n", + " {\n", + " \"Action\": \"Add\",\n", + " \"Key\": \"Ni43MTAwMDBC\",\n", + " \"Fields\": {\n", + " \"ORDER_PRC\": 6.71,\n", + " \"ORDER_SIDE\": \"BID\",\n", + " \"NO_ORD\": 1,\n", + " \"ACC_SIZE\": 100,\n", + " \"LV_TIM_MS\": 49997953,\n", + " \"LV_TIM_MSP\": 972,\n", + " \"LV_DATE\": \"2022-06-22\"\n", + " }\n", + " },\n", + " {\n", + " \"Action\": \"Add\",\n", + " \"Key\": \"NS4xMzAwMDBC\",\n", + " \"Fields\": {\n", + " \"ORDER_PRC\": 5.13,\n", + " \"ORDER_SIDE\": \"BID\",\n", + " \"NO_ORD\": 1,\n", + " \"ACC_SIZE\": 500,\n", + " \"LV_TIM_MS\": 40072211,\n", + " \"LV_TIM_MSP\": 97,\n", + " \"LV_DATE\": \"2022-06-21\"\n", + " }\n", + " },\n", + " {\n", + " \"Action\": \"Add\",\n", + " \"Key\": \"OC43MDAwMDBB\",\n", + " \"Fields\": {\n", + " \"ORDER_PRC\": 8.7,\n", + " \"ORDER_SIDE\": \"ASK\",\n", + " \"NO_ORD\": 1,\n", + " \"ACC_SIZE\": 300,\n", + " \"LV_TIM_MS\": 41412127,\n", + " \"LV_TIM_MSP\": 47,\n", + " \"LV_DATE\": \"2022-06-22\"\n", + " }\n", + " },\n", + " {\n", + " \"Action\": \"Add\",\n", + " \"Key\": \"MTIuMjMwMDAwQQ==\",\n", + " \"Fields\": {\n", + " \"ORDER_PRC\": 12.23,\n", + " \"ORDER_SIDE\": \"ASK\",\n", + " \"NO_ORD\": 1,\n", + " \"ACC_SIZE\": 1000,\n", + " \"LV_TIM_MS\": 40923063,\n", + " \"LV_TIM_MSP\": 384,\n", + " \"LV_DATE\": \"2022-05-30\"\n", + " }\n", + " },\n", + " {\n", + " \"Action\": \"Add\",\n", + " \"Key\": \"Ny4xMjAwMDBB\",\n", + " \"Fields\": {\n", + " \"ORDER_PRC\": 7.12,\n", + " \"ORDER_SIDE\": \"ASK\",\n", + " \"NO_ORD\": 1,\n", + " \"ACC_SIZE\": 1600,\n", + " \"LV_TIM_MS\": 49090703,\n", + " \"LV_TIM_MSP\": 524,\n", + " \"LV_DATE\": \"2022-06-22\"\n", + " }\n", + " },\n", + " {\n", + " \"Action\": \"Add\",\n", + " \"Key\": \"Ny41NjAwMDBB\",\n", + " \"Fields\": {\n", + " \"ORDER_PRC\": 7.56,\n", + " \"ORDER_SIDE\": \"ASK\",\n", + " \"NO_ORD\": 1,\n", + " \"ACC_SIZE\": 500,\n", + " \"LV_TIM_MS\": 40946623,\n", + " \"LV_TIM_MSP\": 684,\n", + " \"LV_DATE\": \"2022-06-10\"\n", + " }\n", + " },\n", + " {\n", + " \"Action\": \"Add\",\n", + " \"Key\": \"OS4xMTAwMDBB\",\n", + " \"Fields\": {\n", + " \"ORDER_PRC\": 9.11,\n", + " \"ORDER_SIDE\": \"ASK\",\n", + " \"NO_ORD\": 2,\n", + " \"ACC_SIZE\": 1300,\n", + " \"LV_TIM_MS\": 44223753,\n", + " \"LV_TIM_MSP\": 207,\n", + " \"LV_DATE\": \"2022-04-04\"\n", + " }\n", + " },\n", + " {\n", + " \"Action\": \"Add\",\n", + " \"Key\": \"MTEuMzAwMDAwQQ==\",\n", + " \"Fields\": {\n", + " \"ORDER_PRC\": 11.3,\n", + " \"ORDER_SIDE\": \"ASK\",\n", + " \"NO_ORD\": 1,\n", + " \"ACC_SIZE\": 500,\n", + " \"LV_TIM_MS\": 48313152,\n", + " \"LV_TIM_MSP\": 227,\n", + " \"LV_DATE\": \"2022-05-30\"\n", + " }\n", + " },\n", + " {\n", + " \"Action\": \"Add\",\n", + " \"Key\": \"OS41NTAwMDBB\",\n", + " \"Fields\": {\n", + " \"ORDER_PRC\": 9.55,\n", + " \"ORDER_SIDE\": \"ASK\",\n", + " \"NO_ORD\": 2,\n", + " \"ACC_SIZE\": 1600,\n", + " \"LV_TIM_MS\": 41402016,\n", + " \"LV_TIM_MSP\": 23,\n", + " \"LV_DATE\": \"2022-06-22\"\n", + " }\n", + " },\n", + " {\n", + " \"Action\": \"Add\",\n", + " \"Key\": \"OC4zOTAwMDBB\",\n", + " \"Fields\": {\n", + " \"ORDER_PRC\": 8.39,\n", + " \"ORDER_SIDE\": \"ASK\",\n", + " \"NO_ORD\": 1,\n", + " \"ACC_SIZE\": 100,\n", + " \"LV_TIM_MS\": 39600621,\n", + " \"LV_TIM_MSP\": 709,\n", + " \"LV_DATE\": \"2022-06-22\"\n", + " }\n", + " },\n", + " {\n", + " \"Action\": \"Add\",\n", + " \"Key\": \"NS4wMzAwMDBC\",\n", + " \"Fields\": {\n", + " \"ORDER_PRC\": 5.03,\n", + " \"ORDER_SIDE\": \"BID\",\n", + " \"NO_ORD\": 1,\n", + " \"ACC_SIZE\": 1000,\n", + " \"LV_TIM_MS\": 41665816,\n", + " \"LV_TIM_MSP\": 591,\n", + " \"LV_DATE\": \"2022-06-13\"\n", + " }\n", + " },\n", + " {\n", + " \"Action\": \"Add\",\n", + " \"Key\": \"OS45OTAwMDBB\",\n", + " \"Fields\": {\n", + " \"ORDER_PRC\": 9.99,\n", + " \"ORDER_SIDE\": \"ASK\",\n", + " \"NO_ORD\": 6,\n", + " \"ACC_SIZE\": 5400,\n", + " \"LV_TIM_MS\": 47683351,\n", + " \"LV_TIM_MSP\": 401,\n", + " \"LV_DATE\": \"2022-06-20\"\n", + " }\n", + " },\n", + " {\n", + " \"Action\": \"Add\",\n", + " \"Key\": \"Ny4wMjAwMDBB\",\n", + " \"Fields\": {\n", + " \"ORDER_PRC\": 7.02,\n", + " \"ORDER_SIDE\": \"ASK\",\n", + " \"NO_ORD\": 1,\n", + " \"ACC_SIZE\": 3700,\n", + " \"LV_TIM_MS\": 50300847,\n", + " \"LV_TIM_MSP\": 303,\n", + " \"LV_DATE\": \"2022-06-22\"\n", + " }\n", + " },\n", + " {\n", + " \"Action\": \"Add\",\n", + " \"Key\": \"NS40NzAwMDBC\",\n", + " \"Fields\": {\n", + " \"ORDER_PRC\": 5.47,\n", + " \"ORDER_SIDE\": \"BID\",\n", + " \"NO_ORD\": 1,\n", + " \"ACC_SIZE\": 100,\n", + " \"LV_TIM_MS\": 39611228,\n", + " \"LV_TIM_MSP\": 207,\n", + " \"LV_DATE\": \"2022-05-12\"\n", + " }\n", + " },\n", + " {\n", + " \"Action\": \"Add\",\n", + " \"Key\": \"Ny40NjAwMDBB\",\n", + " \"Fields\": {\n", + " \"ORDER_PRC\": 7.46,\n", + " \"ORDER_SIDE\": \"ASK\",\n", + " \"NO_ORD\": 1,\n", + " \"ACC_SIZE\": 100,\n", + " \"LV_TIM_MS\": 45545147,\n", + " \"LV_TIM_MSP\": 889,\n", + " \"LV_DATE\": \"2022-06-20\"\n", + " }\n", + " },\n", + " {\n", + " \"Action\": \"Add\",\n", + " \"Key\": \"MTIuMTUwMDAwQQ==\",\n", + " \"Fields\": {\n", + " \"ORDER_PRC\": 12.15,\n", + " \"ORDER_SIDE\": \"ASK\",\n", + " \"NO_ORD\": 1,\n", + " \"ACC_SIZE\": 100,\n", + " \"LV_TIM_MS\": 51332862,\n", + " \"LV_TIM_MSP\": 86,\n", + " \"LV_DATE\": \"2022-06-07\"\n", + " }\n", + " },\n", + " {\n", + " \"Action\": \"Add\",\n", + " \"Key\": \"MTguNjQwMDAwQQ==\",\n", + " \"Fields\": {\n", + " \"ORDER_PRC\": 18.64,\n", + " \"ORDER_SIDE\": \"ASK\",\n", + " \"NO_ORD\": 1,\n", + " \"ACC_SIZE\": 100,\n", + " \"LV_TIM_MS\": 51515207,\n", + " \"LV_TIM_MSP\": 985,\n", + " \"LV_DATE\": \"2022-04-28\"\n", + " }\n", + " },\n", + " {\n", + " \"Action\": \"Add\",\n", + " \"Key\": \"MC4wMjAwMDBC\",\n", + " \"Fields\": {\n", + " \"ORDER_PRC\": 0.02,\n", + " \"ORDER_SIDE\": \"BID\",\n", + " \"NO_ORD\": 2,\n", + " \"ACC_SIZE\": 11000,\n", + " \"LV_TIM_MS\": 51598567,\n", + " \"LV_TIM_MSP\": 177,\n", + " \"LV_DATE\": \"2022-06-02\"\n", + " }\n", + " },\n", + " {\n", + " \"Action\": \"Add\",\n", + " \"Key\": \"MzYuMDAwMDAwQQ==\",\n", + " \"Fields\": {\n", + " \"ORDER_PRC\": 36.0,\n", + " \"ORDER_SIDE\": \"ASK\",\n", + " \"NO_ORD\": 8,\n", + " \"ACC_SIZE\": 3300,\n", + " \"LV_TIM_MS\": 41402020,\n", + " \"LV_TIM_MSP\": 36,\n", + " \"LV_DATE\": \"2022-06-22\"\n", + " }\n", + " },\n", + " {\n", + " \"Action\": \"Add\",\n", + " \"Key\": \"MTIuNTkwMDAwQQ==\",\n", + " \"Fields\": {\n", + " \"ORDER_PRC\": 12.59,\n", + " \"ORDER_SIDE\": \"ASK\",\n", + " \"NO_ORD\": 1,\n", + " \"ACC_SIZE\": 200,\n", + " \"LV_TIM_MS\": 40642439,\n", + " \"LV_TIM_MSP\": 854,\n", + " \"LV_DATE\": \"2022-06-07\"\n", + " }\n", + " },\n", + " {\n", + " \"Action\": \"Add\",\n", + " \"Key\": \"OS40NTAwMDBB\",\n", + " \"Fields\": {\n", + " \"ORDER_PRC\": 9.45,\n", + " \"ORDER_SIDE\": \"ASK\",\n", + " \"NO_ORD\": 2,\n", + " \"ACC_SIZE\": 200,\n", + " \"LV_TIM_MS\": 41402016,\n", + " \"LV_TIM_MSP\": 31,\n", + " \"LV_DATE\": \"2022-06-22\"\n", + " }\n", + " },\n", + " {\n", + " \"Action\": \"Add\",\n", + " \"Key\": \"NC45ODAwMDBC\",\n", + " \"Fields\": {\n", + " \"ORDER_PRC\": 4.98,\n", + " \"ORDER_SIDE\": \"BID\",\n", + " \"NO_ORD\": 3,\n", + " \"ACC_SIZE\": 2500,\n", + " \"LV_TIM_MS\": 63177550,\n", + " \"LV_TIM_MSP\": 278,\n", + " \"LV_DATE\": \"2022-06-13\"\n", + " }\n", + " },\n", + " {\n", + " \"Action\": \"Add\",\n", + " \"Key\": \"MTQuMTQwMDAwQQ==\",\n", + " \"Fields\": {\n", + " \"ORDER_PRC\": 14.14,\n", + " \"ORDER_SIDE\": \"ASK\",\n", + " \"NO_ORD\": 1,\n", + " \"ACC_SIZE\": 100,\n", + " \"LV_TIM_MS\": 42391759,\n", + " \"LV_TIM_MSP\": 999,\n", + " \"LV_DATE\": \"2022-05-30\"\n", + " }\n", + " },\n", + " {\n", + " \"Action\": \"Add\",\n", + " \"Key\": \"MTIuODAwMDAwQQ==\",\n", + " \"Fields\": {\n", + " \"ORDER_PRC\": 12.8,\n", + " \"ORDER_SIDE\": \"ASK\",\n", + " \"NO_ORD\": 2,\n", + " \"ACC_SIZE\": 1200,\n", + " \"LV_TIM_MS\": 41412125,\n", + " \"LV_TIM_MSP\": 23,\n", + " \"LV_DATE\": \"2022-06-22\"\n", + " }\n", + " },\n", + " {\n", + " \"Action\": \"Add\",\n", + " \"Key\": \"OS44OTAwMDBB\",\n", + " \"Fields\": {\n", + " \"ORDER_PRC\": 9.89,\n", + " \"ORDER_SIDE\": \"ASK\",\n", + " \"NO_ORD\": 2,\n", + " \"ACC_SIZE\": 900,\n", + " \"LV_TIM_MS\": 53161315,\n", + " \"LV_TIM_MSP\": 790,\n", + " \"LV_DATE\": \"2022-04-20\"\n", + " }\n", + " },\n", + " {\n", + " \"Action\": \"Add\",\n", + " \"Key\": \"MjcuOTkwMDAwQQ==\",\n", + " \"Fields\": {\n", + " \"ORDER_PRC\": 27.99,\n", + " \"ORDER_SIDE\": \"ASK\",\n", + " \"NO_ORD\": 3,\n", + " \"ACC_SIZE\": 1400,\n", + " \"LV_TIM_MS\": 42390954,\n", + " \"LV_TIM_MSP\": 714,\n", + " \"LV_DATE\": \"2022-05-30\"\n", + " }\n", + " },\n", + " {\n", + " \"Action\": \"Add\",\n", + " \"Key\": \"MTQuNTgwMDAwQQ==\",\n", + " \"Fields\": {\n", + " \"ORDER_PRC\": 14.58,\n", + " \"ORDER_SIDE\": \"ASK\",\n", + " \"NO_ORD\": 1,\n", + " \"ACC_SIZE\": 400,\n", + " \"LV_TIM_MS\": 39628751,\n", + " \"LV_TIM_MSP\": 643,\n", + " \"LV_DATE\": \"2022-05-06\"\n", + " }\n", + " },\n", + " {\n", + " \"Action\": \"Add\",\n", + " \"Key\": \"Ni45NzAwMDBB\",\n", + " \"Fields\": {\n", + " \"ORDER_PRC\": 6.97,\n", + " \"ORDER_SIDE\": \"ASK\",\n", + " \"NO_ORD\": 10,\n", + " \"ACC_SIZE\": 3200,\n", + " \"LV_TIM_MS\": 50346939,\n", + " \"LV_TIM_MSP\": 402,\n", + " \"LV_DATE\": \"2022-06-22\"\n", + " }\n", + " },\n", + " {\n", + " \"Action\": \"Add\",\n", + " \"Key\": \"NC4wMDAwMDBC\",\n", + " \"Fields\": {\n", + " \"ORDER_PRC\": 4.0,\n", + " \"ORDER_SIDE\": \"BID\",\n", + " \"NO_ORD\": 14,\n", + " \"ACC_SIZE\": 17500,\n", + " \"LV_TIM_MS\": 44176031,\n", + " \"LV_TIM_MSP\": 805,\n", + " \"LV_DATE\": \"2022-06-22\"\n", + " }\n", + " },\n", + " {\n", + " \"Action\": \"Add\",\n", + " \"Key\": \"MTIuMDUwMDAwQQ==\",\n", + " \"Fields\": {\n", + " \"ORDER_PRC\": 12.05,\n", + " \"ORDER_SIDE\": \"ASK\",\n", + " \"NO_ORD\": 1,\n", + " \"ACC_SIZE\": 200,\n", + " \"LV_TIM_MS\": 42392335,\n", + " \"LV_TIM_MSP\": 838,\n", + " \"LV_DATE\": \"2022-05-30\"\n", + " }\n", + " },\n", + " {\n", + " \"Action\": \"Add\",\n", + " \"Key\": \"NDcuNzYwMDAwQQ==\",\n", + " \"Fields\": {\n", + " \"ORDER_PRC\": 47.76,\n", + " \"ORDER_SIDE\": \"ASK\",\n", + " \"NO_ORD\": 1,\n", + " \"ACC_SIZE\": 200,\n", + " \"LV_TIM_MS\": 44561427,\n", + " \"LV_TIM_MSP\": 693,\n", + " \"LV_DATE\": \"2022-06-20\"\n", + " }\n", + " },\n", + " {\n", + " \"Action\": \"Add\",\n", + " \"Key\": \"MTYuNTcwMDAwQQ==\",\n", + " \"Fields\": {\n", + " \"ORDER_PRC\": 16.57,\n", + " \"ORDER_SIDE\": \"ASK\",\n", + " \"NO_ORD\": 1,\n", + " \"ACC_SIZE\": 1000,\n", + " \"LV_TIM_MS\": 62888132,\n", + " \"LV_TIM_MSP\": 7,\n", + " \"LV_DATE\": \"2022-06-01\"\n", + " }\n", + " },\n", + " {\n", + " \"Action\": \"Add\",\n", + " \"Key\": \"NTYuNjUwMDAwQQ==\",\n", + " \"Fields\": {\n", + " \"ORDER_PRC\": 56.65,\n", + " \"ORDER_SIDE\": \"ASK\",\n", + " \"NO_ORD\": 1,\n", + " \"ACC_SIZE\": 1000,\n", + " \"LV_TIM_MS\": 41402022,\n", + " \"LV_TIM_MSP\": 41,\n", + " \"LV_DATE\": \"2022-06-22\"\n", + " }\n", + " },\n", + " {\n", + " \"Action\": \"Add\",\n", + " \"Key\": \"NS42MDAwMDBC\",\n", + " \"Fields\": {\n", + " \"ORDER_PRC\": 5.6,\n", + " \"ORDER_SIDE\": \"BID\",\n", + " \"NO_ORD\": 4,\n", + " \"ACC_SIZE\": 1000,\n", + " \"LV_TIM_MS\": 41402022,\n", + " \"LV_TIM_MSP\": 43,\n", + " \"LV_DATE\": \"2022-06-22\"\n", + " }\n", + " },\n", + " {\n", + " \"Action\": \"Add\",\n", + " \"Key\": \"MTIuNDkwMDAwQQ==\",\n", + " \"Fields\": {\n", + " \"ORDER_PRC\": 12.49,\n", + " \"ORDER_SIDE\": \"ASK\",\n", + " \"NO_ORD\": 1,\n", + " \"ACC_SIZE\": 3100,\n", + " \"LV_TIM_MS\": 40986690,\n", + " \"LV_TIM_MSP\": 343,\n", + " \"LV_DATE\": \"2022-05-30\"\n", + " }\n", + " },\n", + " {\n", + " \"Action\": \"Add\",\n", + " \"Key\": \"NC40NDAwMDBC\",\n", + " \"Fields\": {\n", + " \"ORDER_PRC\": 4.44,\n", + " \"ORDER_SIDE\": \"BID\",\n", + " \"NO_ORD\": 1,\n", + " \"ACC_SIZE\": 200,\n", + " \"LV_TIM_MS\": 42749082,\n", + " \"LV_TIM_MSP\": 469,\n", + " \"LV_DATE\": \"2022-06-22\"\n", + " }\n", + " },\n", + " {\n", + " \"Action\": \"Add\",\n", + " \"Key\": \"NC44ODAwMDBC\",\n", + " \"Fields\": {\n", + " \"ORDER_PRC\": 4.88,\n", + " \"ORDER_SIDE\": \"BID\",\n", + " \"NO_ORD\": 1,\n", + " \"ACC_SIZE\": 100,\n", + " \"LV_TIM_MS\": 41148495,\n", + " \"LV_TIM_MSP\": 145,\n", + " \"LV_DATE\": \"2022-06-10\"\n", + " }\n", + " },\n", + " {\n", + " \"Action\": \"Add\",\n", + " \"Key\": \"OS43OTAwMDBB\",\n", + " \"Fields\": {\n", + " \"ORDER_PRC\": 9.79,\n", + " \"ORDER_SIDE\": \"ASK\",\n", + " \"NO_ORD\": 1,\n", + " \"ACC_SIZE\": 1000,\n", + " \"LV_TIM_MS\": 48833713,\n", + " \"LV_TIM_MSP\": 976,\n", + " \"LV_DATE\": \"2022-05-30\"\n", + " }\n", + " },\n", + " {\n", + " \"Action\": \"Add\",\n", + " \"Key\": \"MTIuNzAwMDAwQQ==\",\n", + " \"Fields\": {\n", + " \"ORDER_PRC\": 12.7,\n", + " \"ORDER_SIDE\": \"ASK\",\n", + " \"NO_ORD\": 1,\n", + " \"ACC_SIZE\": 200,\n", + " \"LV_TIM_MS\": 52057157,\n", + " \"LV_TIM_MSP\": 647,\n", + " \"LV_DATE\": \"2022-03-30\"\n", + " }\n", + " },\n", + " {\n", + " \"Action\": \"Add\",\n", + " \"Key\": \"MjcuNDUwMDAwQQ==\",\n", + " \"Fields\": {\n", + " \"ORDER_PRC\": 27.45,\n", + " \"ORDER_SIDE\": \"ASK\",\n", + " \"NO_ORD\": 1,\n", + " \"ACC_SIZE\": 200,\n", + " \"LV_TIM_MS\": 51384446,\n", + " \"LV_TIM_MSP\": 229,\n", + " \"LV_DATE\": \"2022-05-20\"\n", + " }\n", + " }\n", + " ]\n", + " }\n", + "}\n", + "----------------------------------------------------------\n", + ">>> Update event received at 15:59:20.453808\n", + "{\n", + " \"ID\": 5,\n", + " \"Type\": \"Update\",\n", + " \"Domain\": \"MarketByPrice\",\n", + " \"UpdateType\": \"Unspecified\",\n", + " \"Key\": {\n", + " \"Service\": \"ELEKTRON_DD\",\n", + " \"Name\": \"BB.TO\"\n", + " },\n", + " \"SeqNumber\": 30704,\n", + " \"Map\": {\n", + " \"KeyType\": \"Buffer\",\n", + " \"Summary\": {\n", + " \"Fields\": {\n", + " \"TIMACT_MS\": 50359986\n", + " }\n", + " },\n", + " \"Entries\": [\n", + " {\n", + " \"Action\": \"Update\",\n", + " \"Key\": \"Ni45NDAwMDBB\",\n", + " \"Fields\": {\n", + " \"ORDER_PRC\": 6.94,\n", + " \"ORDER_SIDE\": \"ASK\",\n", + " \"ACC_SIZE\": 4300,\n", + " \"NO_ORD\": 13,\n", + " \"LV_TIM_MS\": 50359986,\n", + " \"LV_TIM_MSP\": 220,\n", + " \"LV_DATE\": \"2022-06-22\"\n", + " }\n", + " }\n", + " ]\n", + " }\n", + "}\n" + ] + }, + { + "data": { + "text/plain": [ + "" + ] + }, + "execution_count": 6, + "metadata": {}, + "output_type": "execute_result" + }, + { + "name": "stdout", + "output_type": "stream", + "text": [ + "----------------------------------------------------------\n", + ">>> Update event received at 15:59:20.454904\n", + "{\n", + " \"ID\": 5,\n", + " \"Type\": \"Update\",\n", + " \"Domain\": \"MarketByPrice\",\n", + " \"UpdateType\": \"Unspecified\",\n", + " \"Key\": {\n", + " \"Service\": \"ELEKTRON_DD\",\n", + " \"Name\": \"BB.TO\"\n", + " },\n", + " \"SeqNumber\": 30720,\n", + " \"Map\": {\n", + " \"KeyType\": \"Buffer\",\n", + " \"Summary\": {\n", + " \"Fields\": {\n", + " \"TIMACT_MS\": 50360435\n", + " }\n", + " },\n", + " \"Entries\": [\n", + " {\n", + " \"Action\": \"Update\",\n", + " \"Key\": \"Ni45MjAwMDBC\",\n", + " \"Fields\": {\n", + " \"ORDER_PRC\": 6.92,\n", + " \"ORDER_SIDE\": \"BID\",\n", + " \"ACC_SIZE\": 5900,\n", + " \"NO_ORD\": 7,\n", + " \"LV_TIM_MS\": 50346430,\n", + " \"LV_TIM_MSP\": 712,\n", + " \"LV_DATE\": \"2022-06-22\"\n", + " }\n", + " }\n", + " ]\n", + " }\n", + "}\n", + "----------------------------------------------------------\n", + ">>> Update event received at 15:59:20.456105\n", + "{\n", + " \"ID\": 5,\n", + " \"Type\": \"Update\",\n", + " \"Domain\": \"MarketByPrice\",\n", + " \"UpdateType\": \"Unspecified\",\n", + " \"Key\": {\n", + " \"Service\": \"ELEKTRON_DD\",\n", + " \"Name\": \"BB.TO\"\n", + " },\n", + " \"SeqNumber\": 30736,\n", + " \"Map\": {\n", + " \"KeyType\": \"Buffer\",\n", + " \"Summary\": {\n", + " \"Fields\": {\n", + " \"TIMACT_MS\": 50360435\n", + " }\n", + " },\n", + " \"Entries\": [\n", + " {\n", + " \"Action\": \"Update\",\n", + " \"Key\": \"Ni45MjAwMDBC\",\n", + " \"Fields\": {\n", + " \"ORDER_PRC\": 6.92,\n", + " \"ORDER_SIDE\": \"BID\",\n", + " \"ACC_SIZE\": 6000,\n", + " \"NO_ORD\": 8,\n", + " \"LV_TIM_MS\": 50337523,\n", + " \"LV_TIM_MSP\": 514,\n", + " \"LV_DATE\": \"2022-06-22\"\n", + " }\n", + " }\n", + " ]\n", + " }\n", + "}\n", + "----------------------------------------------------------\n", + ">>> Update event received at 15:59:20.456339\n", + "{\n", + " \"ID\": 5,\n", + " \"Type\": \"Update\",\n", + " \"Domain\": \"MarketByPrice\",\n", + " \"UpdateType\": \"Unspecified\",\n", + " \"Key\": {\n", + " \"Service\": \"ELEKTRON_DD\",\n", + " \"Name\": \"BB.TO\"\n", + " },\n", + " \"SeqNumber\": 30752,\n", + " \"Map\": {\n", + " \"KeyType\": \"Buffer\",\n", + " \"Summary\": {\n", + " \"Fields\": {\n", + " \"TIMACT_MS\": 50360436\n", + " }\n", + " },\n", + " \"Entries\": [\n", + " {\n", + " \"Action\": \"Update\",\n", + " \"Key\": \"Ni45MTAwMDBC\",\n", + " \"Fields\": {\n", + " \"ORDER_PRC\": 6.91,\n", + " \"ORDER_SIDE\": \"BID\",\n", + " \"ACC_SIZE\": 21700,\n", + " \"NO_ORD\": 16,\n", + " \"LV_TIM_MS\": 50338127,\n", + " \"LV_TIM_MSP\": 808,\n", + " \"LV_DATE\": \"2022-06-22\"\n", + " }\n", + " }\n", + " ]\n", + " }\n", + "}\n", + "----------------------------------------------------------\n", + ">>> Update event received at 15:59:20.456534\n", + "{\n", + " \"ID\": 5,\n", + " \"Type\": \"Update\",\n", + " \"Domain\": \"MarketByPrice\",\n", + " \"UpdateType\": \"Unspecified\",\n", + " \"Key\": {\n", + " \"Service\": \"ELEKTRON_DD\",\n", + " \"Name\": \"BB.TO\"\n", + " },\n", + " \"SeqNumber\": 30768,\n", + " \"Map\": {\n", + " \"KeyType\": \"Buffer\",\n", + " \"Summary\": {\n", + " \"Fields\": {\n", + " \"TIMACT_MS\": 50360436\n", + " }\n", + " },\n", + " \"Entries\": [\n", + " {\n", + " \"Action\": \"Update\",\n", + " \"Key\": \"Ni45MTAwMDBC\",\n", + " \"Fields\": {\n", + " \"ORDER_PRC\": 6.91,\n", + " \"ORDER_SIDE\": \"BID\",\n", + " \"ACC_SIZE\": 25000,\n", + " \"NO_ORD\": 17,\n", + " \"LV_TIM_MS\": 50338127,\n", + " \"LV_TIM_MSP\": 808,\n", + " \"LV_DATE\": \"2022-06-22\"\n", + " }\n", + " }\n", + " ]\n", + " }\n", + "}\n", + "----------------------------------------------------------\n", + ">>> Update event received at 15:59:20.456718\n", + "{\n", + " \"ID\": 5,\n", + " \"Type\": \"Update\",\n", + " \"Domain\": \"MarketByPrice\",\n", + " \"UpdateType\": \"Unspecified\",\n", + " \"Key\": {\n", + " \"Service\": \"ELEKTRON_DD\",\n", + " \"Name\": \"BB.TO\"\n", + " },\n", + " \"SeqNumber\": 30784,\n", + " \"Map\": {\n", + " \"KeyType\": \"Buffer\",\n", + " \"Summary\": {\n", + " \"Fields\": {\n", + " \"TIMACT_MS\": 50360436\n", + " }\n", + " },\n", + " \"Entries\": [\n", + " {\n", + " \"Action\": \"Update\",\n", + " \"Key\": \"Ni45MTAwMDBC\",\n", + " \"Fields\": {\n", + " \"ORDER_PRC\": 6.91,\n", + " \"ORDER_SIDE\": \"BID\",\n", + " \"ACC_SIZE\": 21700,\n", + " \"NO_ORD\": 16,\n", + " \"LV_TIM_MS\": 50338127,\n", + " \"LV_TIM_MSP\": 808,\n", + " \"LV_DATE\": \"2022-06-22\"\n", + " }\n", + " }\n", + " ]\n", + " }\n", + "}\n", + "----------------------------------------------------------\n", + ">>> Update event received at 15:59:20.456896\n", + "{\n", + " \"ID\": 5,\n", + " \"Type\": \"Update\",\n", + " \"Domain\": \"MarketByPrice\",\n", + " \"UpdateType\": \"Unspecified\",\n", + " \"Key\": {\n", + " \"Service\": \"ELEKTRON_DD\",\n", + " \"Name\": \"BB.TO\"\n", + " },\n", + " \"SeqNumber\": 30800,\n", + " \"Map\": {\n", + " \"KeyType\": \"Buffer\",\n", + " \"Summary\": {\n", + " \"Fields\": {\n", + " \"TIMACT_MS\": 50360436\n", + " }\n", + " },\n", + " \"Entries\": [\n", + " {\n", + " \"Action\": \"Update\",\n", + " \"Key\": \"Ni45MTAwMDBC\",\n", + " \"Fields\": {\n", + " \"ORDER_PRC\": 6.91,\n", + " \"ORDER_SIDE\": \"BID\",\n", + " \"ACC_SIZE\": 24900,\n", + " \"NO_ORD\": 17,\n", + " \"LV_TIM_MS\": 50338127,\n", + " \"LV_TIM_MSP\": 808,\n", + " \"LV_DATE\": \"2022-06-22\"\n", + " }\n", + " }\n", + " ]\n", + " }\n", + "}\n", + "----------------------------------------------------------\n", + ">>> Update event received at 15:59:20.457303\n", + "{\n", + " \"ID\": 5,\n", + " \"Type\": \"Update\",\n", + " \"Domain\": \"MarketByPrice\",\n", + " \"UpdateType\": \"Unspecified\",\n", + " \"Key\": {\n", + " \"Service\": \"ELEKTRON_DD\",\n", + " \"Name\": \"BB.TO\"\n", + " },\n", + " \"SeqNumber\": 30816,\n", + " \"Map\": {\n", + " \"KeyType\": \"Buffer\",\n", + " \"Summary\": {\n", + " \"Fields\": {\n", + " \"TIMACT_MS\": 50360445\n", + " }\n", + " },\n", + " \"Entries\": [\n", + " {\n", + " \"Action\": \"Update\",\n", + " \"Key\": \"Ni45NDAwMDBB\",\n", + " \"Fields\": {\n", + " \"ORDER_PRC\": 6.94,\n", + " \"ORDER_SIDE\": \"ASK\",\n", + " \"ACC_SIZE\": 5900,\n", + " \"NO_ORD\": 14,\n", + " \"LV_TIM_MS\": 50360445,\n", + " \"LV_TIM_MSP\": 176,\n", + " \"LV_DATE\": \"2022-06-22\"\n", + " }\n", + " }\n", + " ]\n", + " }\n", + "}\n", + "----------------------------------------------------------\n", + ">>> Update event received at 15:59:20.457682\n", + "{\n", + " \"ID\": 5,\n", + " \"Type\": \"Update\",\n", + " \"Domain\": \"MarketByPrice\",\n", + " \"UpdateType\": \"Unspecified\",\n", + " \"Key\": {\n", + " \"Service\": \"ELEKTRON_DD\",\n", + " \"Name\": \"BB.TO\"\n", + " },\n", + " \"SeqNumber\": 30832,\n", + " \"Map\": {\n", + " \"KeyType\": \"Buffer\",\n", + " \"Summary\": {\n", + " \"Fields\": {\n", + " \"TIMACT_MS\": 50360445\n", + " }\n", + " },\n", + " \"Entries\": [\n", + " {\n", + " \"Action\": \"Update\",\n", + " \"Key\": \"Ni45MTAwMDBC\",\n", + " \"Fields\": {\n", + " \"ORDER_PRC\": 6.91,\n", + " \"ORDER_SIDE\": \"BID\",\n", + " \"ACC_SIZE\": 21700,\n", + " \"NO_ORD\": 16,\n", + " \"LV_TIM_MS\": 50338127,\n", + " \"LV_TIM_MSP\": 808,\n", + " \"LV_DATE\": \"2022-06-22\"\n", + " }\n", + " }\n", + " ]\n", + " }\n", + "}\n", + "----------------------------------------------------------\n", + ">>> Update event received at 15:59:20.457885\n", + "{\n", + " \"ID\": 5,\n", + " \"Type\": \"Update\",\n", + " \"Domain\": \"MarketByPrice\",\n", + " \"UpdateType\": \"Unspecified\",\n", + " \"Key\": {\n", + " \"Service\": \"ELEKTRON_DD\",\n", + " \"Name\": \"BB.TO\"\n", + " },\n", + " \"SeqNumber\": 30848,\n", + " \"Map\": {\n", + " \"KeyType\": \"Buffer\",\n", + " \"Summary\": {\n", + " \"Fields\": {\n", + " \"TIMACT_MS\": 50360445\n", + " }\n", + " },\n", + " \"Entries\": [\n", + " {\n", + " \"Action\": \"Update\",\n", + " \"Key\": \"Ni45MTAwMDBC\",\n", + " \"Fields\": {\n", + " \"ORDER_PRC\": 6.91,\n", + " \"ORDER_SIDE\": \"BID\",\n", + " \"ACC_SIZE\": 24800,\n", + " \"NO_ORD\": 17,\n", + " \"LV_TIM_MS\": 50338127,\n", + " \"LV_TIM_MSP\": 808,\n", + " \"LV_DATE\": \"2022-06-22\"\n", + " }\n", + " }\n", + " ]\n", + " }\n", + "}\n", + "----------------------------------------------------------\n", + ">>> Update event received at 15:59:20.458497\n", + "{\n", + " \"ID\": 5,\n", + " \"Type\": \"Update\",\n", + " \"Domain\": \"MarketByPrice\",\n", + " \"UpdateType\": \"Unspecified\",\n", + " \"Key\": {\n", + " \"Service\": \"ELEKTRON_DD\",\n", + " \"Name\": \"BB.TO\"\n", + " },\n", + " \"SeqNumber\": 30864,\n", + " \"Map\": {\n", + " \"KeyType\": \"Buffer\",\n", + " \"Summary\": {\n", + " \"Fields\": {\n", + " \"TIMACT_MS\": 50360450\n", + " }\n", + " },\n", + " \"Entries\": [\n", + " {\n", + " \"Action\": \"Update\",\n", + " \"Key\": \"Ni45MTAwMDBC\",\n", + " \"Fields\": {\n", + " \"ORDER_PRC\": 6.91,\n", + " \"ORDER_SIDE\": \"BID\",\n", + " \"ACC_SIZE\": 21700,\n", + " \"NO_ORD\": 16,\n", + " \"LV_TIM_MS\": 50338127,\n", + " \"LV_TIM_MSP\": 808,\n", + " \"LV_DATE\": \"2022-06-22\"\n", + " }\n", + " }\n", + " ]\n", + " }\n", + "}\n", + "----------------------------------------------------------\n", + ">>> Update event received at 15:59:20.459450\n", + "{\n", + " \"ID\": 5,\n", + " \"Type\": \"Update\",\n", + " \"Domain\": \"MarketByPrice\",\n", + " \"UpdateType\": \"Unspecified\",\n", + " \"Key\": {\n", + " \"Service\": \"ELEKTRON_DD\",\n", + " \"Name\": \"BB.TO\"\n", + " },\n", + " \"SeqNumber\": 30880,\n", + " \"Map\": {\n", + " \"KeyType\": \"Buffer\",\n", + " \"Summary\": {\n", + " \"Fields\": {\n", + " \"TIMACT_MS\": 50360450\n", + " }\n", + " },\n", + " \"Entries\": [\n", + " {\n", + " \"Action\": \"Update\",\n", + " \"Key\": \"Ni45MTAwMDBC\",\n", + " \"Fields\": {\n", + " \"ORDER_PRC\": 6.91,\n", + " \"ORDER_SIDE\": \"BID\",\n", + " \"ACC_SIZE\": 24600,\n", + " \"NO_ORD\": 17,\n", + " \"LV_TIM_MS\": 50338127,\n", + " \"LV_TIM_MSP\": 808,\n", + " \"LV_DATE\": \"2022-06-22\"\n", + " }\n", + " }\n", + " ]\n", + " }\n", + "}\n", + "----------------------------------------------------------\n", + ">>> Update event received at 15:59:20.459665\n", + "{\n", + " \"ID\": 5,\n", + " \"Type\": \"Update\",\n", + " \"Domain\": \"MarketByPrice\",\n", + " \"UpdateType\": \"Unspecified\",\n", + " \"Key\": {\n", + " \"Service\": \"ELEKTRON_DD\",\n", + " \"Name\": \"BB.TO\"\n", + " },\n", + " \"SeqNumber\": 30896,\n", + " \"Map\": {\n", + " \"KeyType\": \"Buffer\",\n", + " \"Summary\": {\n", + " \"Fields\": {\n", + " \"TIMACT_MS\": 50360458\n", + " }\n", + " },\n", + " \"Entries\": [\n", + " {\n", + " \"Action\": \"Update\",\n", + " \"Key\": \"Ni45MTAwMDBC\",\n", + " \"Fields\": {\n", + " \"ORDER_PRC\": 6.91,\n", + " \"ORDER_SIDE\": \"BID\",\n", + " \"ACC_SIZE\": 21700,\n", + " \"NO_ORD\": 16,\n", + " \"LV_TIM_MS\": 50338127,\n", + " \"LV_TIM_MSP\": 808,\n", + " \"LV_DATE\": \"2022-06-22\"\n", + " }\n", + " }\n", + " ]\n", + " }\n", + "}\n", + "----------------------------------------------------------\n", + ">>> Update event received at 15:59:20.459914\n", + "{\n", + " \"ID\": 5,\n", + " \"Type\": \"Update\",\n", + " \"Domain\": \"MarketByPrice\",\n", + " \"UpdateType\": \"Unspecified\",\n", + " \"Key\": {\n", + " \"Service\": \"ELEKTRON_DD\",\n", + " \"Name\": \"BB.TO\"\n", + " },\n", + " \"SeqNumber\": 30912,\n", + " \"Map\": {\n", + " \"KeyType\": \"Buffer\",\n", + " \"Summary\": {\n", + " \"Fields\": {\n", + " \"TIMACT_MS\": 50360458\n", + " }\n", + " },\n", + " \"Entries\": [\n", + " {\n", + " \"Action\": \"Update\",\n", + " \"Key\": \"Ni45MTAwMDBC\",\n", + " \"Fields\": {\n", + " \"ORDER_PRC\": 6.91,\n", + " \"ORDER_SIDE\": \"BID\",\n", + " \"ACC_SIZE\": 22800,\n", + " \"NO_ORD\": 17,\n", + " \"LV_TIM_MS\": 50338127,\n", + " \"LV_TIM_MSP\": 808,\n", + " \"LV_DATE\": \"2022-06-22\"\n", + " }\n", + " }\n", + " ]\n", + " }\n", + "}\n", + "----------------------------------------------------------\n", + ">>> Update event received at 15:59:20.460103\n", + "{\n", + " \"ID\": 5,\n", + " \"Type\": \"Update\",\n", + " \"Domain\": \"MarketByPrice\",\n", + " \"UpdateType\": \"Unspecified\",\n", + " \"Key\": {\n", + " \"Service\": \"ELEKTRON_DD\",\n", + " \"Name\": \"BB.TO\"\n", + " },\n", + " \"SeqNumber\": 30928,\n", + " \"Map\": {\n", + " \"KeyType\": \"Buffer\",\n", + " \"Summary\": {\n", + " \"Fields\": {\n", + " \"TIMACT_MS\": 50360458\n", + " }\n", + " },\n", + " \"Entries\": [\n", + " {\n", + " \"Action\": \"Update\",\n", + " \"Key\": \"Ni45MTAwMDBC\",\n", + " \"Fields\": {\n", + " \"ORDER_PRC\": 6.91,\n", + " \"ORDER_SIDE\": \"BID\",\n", + " \"ACC_SIZE\": 21700,\n", + " \"NO_ORD\": 16,\n", + " \"LV_TIM_MS\": 50338127,\n", + " \"LV_TIM_MSP\": 808,\n", + " \"LV_DATE\": \"2022-06-22\"\n", + " }\n", + " }\n", + " ]\n", + " }\n", + "}\n", + "----------------------------------------------------------\n", + ">>> Update event received at 15:59:20.460285\n", + "{\n", + " \"ID\": 5,\n", + " \"Type\": \"Update\",\n", + " \"Domain\": \"MarketByPrice\",\n", + " \"UpdateType\": \"Unspecified\",\n", + " \"Key\": {\n", + " \"Service\": \"ELEKTRON_DD\",\n", + " \"Name\": \"BB.TO\"\n", + " },\n", + " \"SeqNumber\": 30944,\n", + " \"Map\": {\n", + " \"KeyType\": \"Buffer\",\n", + " \"Summary\": {\n", + " \"Fields\": {\n", + " \"TIMACT_MS\": 50360458\n", + " }\n", + " },\n", + " \"Entries\": [\n", + " {\n", + " \"Action\": \"Update\",\n", + " \"Key\": \"Ni45MTAwMDBC\",\n", + " \"Fields\": {\n", + " \"ORDER_PRC\": 6.91,\n", + " \"ORDER_SIDE\": \"BID\",\n", + " \"ACC_SIZE\": 21800,\n", + " \"NO_ORD\": 17,\n", + " \"LV_TIM_MS\": 50338127,\n", + " \"LV_TIM_MSP\": 808,\n", + " \"LV_DATE\": \"2022-06-22\"\n", + " }\n", + " }\n", + " ]\n", + " }\n", + "}\n", + "----------------------------------------------------------\n", + ">>> Update event received at 15:59:20.875752\n", + "{\n", + " \"ID\": 5,\n", + " \"Type\": \"Update\",\n", + " \"Domain\": \"MarketByPrice\",\n", + " \"UpdateType\": \"Unspecified\",\n", + " \"Key\": {\n", + " \"Service\": \"ELEKTRON_DD\",\n", + " \"Name\": \"BB.TO\"\n", + " },\n", + " \"SeqNumber\": 30960,\n", + " \"Map\": {\n", + " \"KeyType\": \"Buffer\",\n", + " \"Summary\": {\n", + " \"Fields\": {\n", + " \"TIMACT_MS\": 50360885\n", + " }\n", + " },\n", + " \"Entries\": [\n", + " {\n", + " \"Action\": \"Update\",\n", + " \"Key\": \"Ni45MjAwMDBC\",\n", + " \"Fields\": {\n", + " \"ORDER_PRC\": 6.92,\n", + " \"ORDER_SIDE\": \"BID\",\n", + " \"ACC_SIZE\": 5900,\n", + " \"NO_ORD\": 7,\n", + " \"LV_TIM_MS\": 50337523,\n", + " \"LV_TIM_MSP\": 514,\n", + " \"LV_DATE\": \"2022-06-22\"\n", + " }\n", + " }\n", + " ]\n", + " }\n", + "}\n", + "----------------------------------------------------------\n", + ">>> Update event received at 15:59:20.876224\n", + "{\n", + " \"ID\": 5,\n", + " \"Type\": \"Update\",\n", + " \"Domain\": \"MarketByPrice\",\n", + " \"UpdateType\": \"Unspecified\",\n", + " \"Key\": {\n", + " \"Service\": \"ELEKTRON_DD\",\n", + " \"Name\": \"BB.TO\"\n", + " },\n", + " \"SeqNumber\": 30976,\n", + " \"Map\": {\n", + " \"KeyType\": \"Buffer\",\n", + " \"Summary\": {\n", + " \"Fields\": {\n", + " \"TIMACT_MS\": 50360885\n", + " }\n", + " },\n", + " \"Entries\": [\n", + " {\n", + " \"Action\": \"Update\",\n", + " \"Key\": \"Ni45MjAwMDBC\",\n", + " \"Fields\": {\n", + " \"ORDER_PRC\": 6.92,\n", + " \"ORDER_SIDE\": \"BID\",\n", + " \"ACC_SIZE\": 5800,\n", + " \"NO_ORD\": 6,\n", + " \"LV_TIM_MS\": 50337523,\n", + " \"LV_TIM_MSP\": 514,\n", + " \"LV_DATE\": \"2022-06-22\"\n", + " }\n", + " }\n", + " ]\n", + " }\n", + "}\n", + "----------------------------------------------------------\n", + ">>> Update event received at 15:59:20.876498\n", + "{\n", + " \"ID\": 5,\n", + " \"Type\": \"Update\",\n", + " \"Domain\": \"MarketByPrice\",\n", + " \"UpdateType\": \"Unspecified\",\n", + " \"Key\": {\n", + " \"Service\": \"ELEKTRON_DD\",\n", + " \"Name\": \"BB.TO\"\n", + " },\n", + " \"SeqNumber\": 30992,\n", + " \"Map\": {\n", + " \"KeyType\": \"Buffer\",\n", + " \"Summary\": {\n", + " \"Fields\": {\n", + " \"TIMACT_MS\": 50360885\n", + " }\n", + " },\n", + " \"Entries\": [\n", + " {\n", + " \"Action\": \"Update\",\n", + " \"Key\": \"Ni44ODAwMDBC\",\n", + " \"Fields\": {\n", + " \"ORDER_PRC\": 6.88,\n", + " \"ORDER_SIDE\": \"BID\",\n", + " \"ACC_SIZE\": 25600,\n", + " \"NO_ORD\": 14,\n", + " \"LV_TIM_MS\": 50360885,\n", + " \"LV_TIM_MSP\": 313,\n", + " \"LV_DATE\": \"2022-06-22\"\n", + " }\n", + " }\n", + " ]\n", + " }\n", + "}\n", + "----------------------------------------------------------\n", + ">>> Update event received at 15:59:20.876765\n", + "{\n", + " \"ID\": 5,\n", + " \"Type\": \"Update\",\n", + " \"Domain\": \"MarketByPrice\",\n", + " \"UpdateType\": \"Unspecified\",\n", + " \"Key\": {\n", + " \"Service\": \"ELEKTRON_DD\",\n", + " \"Name\": \"BB.TO\"\n", + " },\n", + " \"SeqNumber\": 31008,\n", + " \"Map\": {\n", + " \"KeyType\": \"Buffer\",\n", + " \"Summary\": {\n", + " \"Fields\": {\n", + " \"TIMACT_MS\": 50360887\n", + " }\n", + " },\n", + " \"Entries\": [\n", + " {\n", + " \"Action\": \"Update\",\n", + " \"Key\": \"Ni45MTAwMDBC\",\n", + " \"Fields\": {\n", + " \"ORDER_PRC\": 6.91,\n", + " \"ORDER_SIDE\": \"BID\",\n", + " \"ACC_SIZE\": 21700,\n", + " \"NO_ORD\": 16,\n", + " \"LV_TIM_MS\": 50338127,\n", + " \"LV_TIM_MSP\": 808,\n", + " \"LV_DATE\": \"2022-06-22\"\n", + " }\n", + " }\n", + " ]\n", + " }\n", + "}\n", + "----------------------------------------------------------\n", + ">>> Update event received at 15:59:20.877040\n", + "{\n", + " \"ID\": 5,\n", + " \"Type\": \"Update\",\n", + " \"Domain\": \"MarketByPrice\",\n", + " \"UpdateType\": \"Unspecified\",\n", + " \"Key\": {\n", + " \"Service\": \"ELEKTRON_DD\",\n", + " \"Name\": \"BB.TO\"\n", + " },\n", + " \"SeqNumber\": 31024,\n", + " \"Map\": {\n", + " \"KeyType\": \"Buffer\",\n", + " \"Summary\": {\n", + " \"Fields\": {\n", + " \"TIMACT_MS\": 50360887\n", + " }\n", + " },\n", + " \"Entries\": [\n", + " {\n", + " \"Action\": \"Update\",\n", + " \"Key\": \"Ni45MTAwMDBC\",\n", + " \"Fields\": {\n", + " \"ORDER_PRC\": 6.91,\n", + " \"ORDER_SIDE\": \"BID\",\n", + " \"ACC_SIZE\": 15300,\n", + " \"NO_ORD\": 15,\n", + " \"LV_TIM_MS\": 50338127,\n", + " \"LV_TIM_MSP\": 808,\n", + " \"LV_DATE\": \"2022-06-22\"\n", + " }\n", + " }\n", + " ]\n", + " }\n", + "}\n", + "----------------------------------------------------------\n", + ">>> Update event received at 15:59:20.877649\n", + "{\n", + " \"ID\": 5,\n", + " \"Type\": \"Update\",\n", + " \"Domain\": \"MarketByPrice\",\n", + " \"UpdateType\": \"Unspecified\",\n", + " \"Key\": {\n", + " \"Service\": \"ELEKTRON_DD\",\n", + " \"Name\": \"BB.TO\"\n", + " },\n", + " \"SeqNumber\": 31040,\n", + " \"Map\": {\n", + " \"KeyType\": \"Buffer\",\n", + " \"Summary\": {\n", + " \"Fields\": {\n", + " \"TIMACT_MS\": 50360887\n", + " }\n", + " },\n", + " \"Entries\": [\n", + " {\n", + " \"Action\": \"Update\",\n", + " \"Key\": \"Ni45MTAwMDBC\",\n", + " \"Fields\": {\n", + " \"ORDER_PRC\": 6.91,\n", + " \"ORDER_SIDE\": \"BID\",\n", + " \"ACC_SIZE\": 21600,\n", + " \"NO_ORD\": 16,\n", + " \"LV_TIM_MS\": 50328073,\n", + " \"LV_TIM_MSP\": 536,\n", + " \"LV_DATE\": \"2022-06-22\"\n", + " }\n", + " }\n", + " ]\n", + " }\n", + "}\n", + "----------------------------------------------------------\n", + ">>> Update event received at 15:59:20.884164\n", + "{\n", + " \"ID\": 5,\n", + " \"Type\": \"Update\",\n", + " \"Domain\": \"MarketByPrice\",\n", + " \"UpdateType\": \"Unspecified\",\n", + " \"Key\": {\n", + " \"Service\": \"ELEKTRON_DD\",\n", + " \"Name\": \"BB.TO\"\n", + " },\n", + " \"SeqNumber\": 31056,\n", + " \"Map\": {\n", + " \"KeyType\": \"Buffer\",\n", + " \"Summary\": {\n", + " \"Fields\": {\n", + " \"TIMACT_MS\": 50360893\n", + " }\n", + " },\n", + " \"Entries\": [\n", + " {\n", + " \"Action\": \"Update\",\n", + " \"Key\": \"Ni45MTAwMDBC\",\n", + " \"Fields\": {\n", + " \"ORDER_PRC\": 6.91,\n", + " \"ORDER_SIDE\": \"BID\",\n", + " \"ACC_SIZE\": 15300,\n", + " \"NO_ORD\": 15,\n", + " \"LV_TIM_MS\": 50328073,\n", + " \"LV_TIM_MSP\": 536,\n", + " \"LV_DATE\": \"2022-06-22\"\n", + " }\n", + " }\n", + " ]\n", + " }\n", + "}\n", + "----------------------------------------------------------\n", + ">>> Update event received at 15:59:20.884896\n", + "{\n", + " \"ID\": 5,\n", + " \"Type\": \"Update\",\n", + " \"Domain\": \"MarketByPrice\",\n", + " \"UpdateType\": \"Unspecified\",\n", + " \"Key\": {\n", + " \"Service\": \"ELEKTRON_DD\",\n", + " \"Name\": \"BB.TO\"\n", + " },\n", + " \"SeqNumber\": 31072,\n", + " \"Map\": {\n", + " \"KeyType\": \"Buffer\",\n", + " \"Summary\": {\n", + " \"Fields\": {\n", + " \"TIMACT_MS\": 50360893\n", + " }\n", + " },\n", + " \"Entries\": [\n", + " {\n", + " \"Action\": \"Update\",\n", + " \"Key\": \"Ni45MTAwMDBC\",\n", + " \"Fields\": {\n", + " \"ORDER_PRC\": 6.91,\n", + " \"ORDER_SIDE\": \"BID\",\n", + " \"ACC_SIZE\": 21100,\n", + " \"NO_ORD\": 16,\n", + " \"LV_TIM_MS\": 50328073,\n", + " \"LV_TIM_MSP\": 536,\n", + " \"LV_DATE\": \"2022-06-22\"\n", + " }\n", + " }\n", + " ]\n", + " }\n", + "}\n", + "----------------------------------------------------------\n", + ">>> Update event received at 15:59:21.057063\n", + "{\n", + " \"ID\": 5,\n", + " \"Type\": \"Update\",\n", + " \"Domain\": \"MarketByPrice\",\n", + " \"UpdateType\": \"Unspecified\",\n", + " \"Key\": {\n", + " \"Service\": \"ELEKTRON_DD\",\n", + " \"Name\": \"BB.TO\"\n", + " },\n", + " \"SeqNumber\": 31088,\n", + " \"Map\": {\n", + " \"KeyType\": \"Buffer\",\n", + " \"Summary\": {\n", + " \"Fields\": {\n", + " \"TIMACT_MS\": 50361066\n", + " }\n", + " },\n", + " \"Entries\": [\n", + " {\n", + " \"Action\": \"Update\",\n", + " \"Key\": \"Ni44ODAwMDBC\",\n", + " \"Fields\": {\n", + " \"ORDER_PRC\": 6.88,\n", + " \"ORDER_SIDE\": \"BID\",\n", + " \"ACC_SIZE\": 18700,\n", + " \"NO_ORD\": 13,\n", + " \"LV_TIM_MS\": 50360885,\n", + " \"LV_TIM_MSP\": 313,\n", + " \"LV_DATE\": \"2022-06-22\"\n", + " }\n", + " }\n", + " ]\n", + " }\n", + "}\n", + "----------------------------------------------------------\n", + ">>> Update event received at 15:59:21.057582\n", + "{\n", + " \"ID\": 5,\n", + " \"Type\": \"Update\",\n", + " \"Domain\": \"MarketByPrice\",\n", + " \"UpdateType\": \"Unspecified\",\n", + " \"Key\": {\n", + " \"Service\": \"ELEKTRON_DD\",\n", + " \"Name\": \"BB.TO\"\n", + " },\n", + " \"SeqNumber\": 31104,\n", + " \"Map\": {\n", + " \"KeyType\": \"Buffer\",\n", + " \"Summary\": {\n", + " \"Fields\": {\n", + " \"TIMACT_MS\": 50361066\n", + " }\n", + " },\n", + " \"Entries\": [\n", + " {\n", + " \"Action\": \"Update\",\n", + " \"Key\": \"Ni44ODAwMDBC\",\n", + " \"Fields\": {\n", + " \"ORDER_PRC\": 6.88,\n", + " \"ORDER_SIDE\": \"BID\",\n", + " \"ACC_SIZE\": 20200,\n", + " \"NO_ORD\": 14,\n", + " \"LV_TIM_MS\": 50360885,\n", + " \"LV_TIM_MSP\": 313,\n", + " \"LV_DATE\": \"2022-06-22\"\n", + " }\n", + " }\n", + " ]\n", + " }\n", + "}\n", + "----------------------------------------------------------\n", + ">>> Update event received at 15:59:21.168062\n", + "{\n", + " \"ID\": 5,\n", + " \"Type\": \"Update\",\n", + " \"Domain\": \"MarketByPrice\",\n", + " \"UpdateType\": \"Unspecified\",\n", + " \"Key\": {\n", + " \"Service\": \"ELEKTRON_DD\",\n", + " \"Name\": \"BB.TO\"\n", + " },\n", + " \"SeqNumber\": 31120,\n", + " \"Map\": {\n", + " \"KeyType\": \"Buffer\",\n", + " \"Summary\": {\n", + " \"Fields\": {\n", + " \"TIMACT_MS\": 50361175\n", + " }\n", + " },\n", + " \"Entries\": [\n", + " {\n", + " \"Action\": \"Update\",\n", + " \"Key\": \"Ni45MTAwMDBC\",\n", + " \"Fields\": {\n", + " \"ORDER_PRC\": 6.91,\n", + " \"ORDER_SIDE\": \"BID\",\n", + " \"ACC_SIZE\": 15300,\n", + " \"NO_ORD\": 15,\n", + " \"LV_TIM_MS\": 50328073,\n", + " \"LV_TIM_MSP\": 536,\n", + " \"LV_DATE\": \"2022-06-22\"\n", + " }\n", + " }\n", + " ]\n", + " }\n", + "}\n", + "----------------------------------------------------------\n", + ">>> Update event received at 15:59:21.168439\n", + "{\n", + " \"ID\": 5,\n", + " \"Type\": \"Update\",\n", + " \"Domain\": \"MarketByPrice\",\n", + " \"UpdateType\": \"Unspecified\",\n", + " \"Key\": {\n", + " \"Service\": \"ELEKTRON_DD\",\n", + " \"Name\": \"BB.TO\"\n", + " },\n", + " \"SeqNumber\": 31136,\n", + " \"Map\": {\n", + " \"KeyType\": \"Buffer\",\n", + " \"Summary\": {\n", + " \"Fields\": {\n", + " \"TIMACT_MS\": 50361175\n", + " }\n", + " },\n", + " \"Entries\": [\n", + " {\n", + " \"Action\": \"Update\",\n", + " \"Key\": \"Ni45MTAwMDBC\",\n", + " \"Fields\": {\n", + " \"ORDER_PRC\": 6.91,\n", + " \"ORDER_SIDE\": \"BID\",\n", + " \"ACC_SIZE\": 20600,\n", + " \"NO_ORD\": 16,\n", + " \"LV_TIM_MS\": 50328073,\n", + " \"LV_TIM_MSP\": 536,\n", + " \"LV_DATE\": \"2022-06-22\"\n", + " }\n", + " }\n", + " ]\n", + " }\n", + "}\n", + "----------------------------------------------------------\n", + ">>> Update event received at 15:59:21.168793\n", + "{\n", + " \"ID\": 5,\n", + " \"Type\": \"Update\",\n", + " \"Domain\": \"MarketByPrice\",\n", + " \"UpdateType\": \"Unspecified\",\n", + " \"Key\": {\n", + " \"Service\": \"ELEKTRON_DD\",\n", + " \"Name\": \"BB.TO\"\n", + " },\n", + " \"SeqNumber\": 31152,\n", + " \"Map\": {\n", + " \"KeyType\": \"Buffer\",\n", + " \"Summary\": {\n", + " \"Fields\": {\n", + " \"TIMACT_MS\": 50361176\n", + " }\n", + " },\n", + " \"Entries\": [\n", + " {\n", + " \"Action\": \"Update\",\n", + " \"Key\": \"Ni45MTAwMDBC\",\n", + " \"Fields\": {\n", + " \"ORDER_PRC\": 6.91,\n", + " \"ORDER_SIDE\": \"BID\",\n", + " \"ACC_SIZE\": 15300,\n", + " \"NO_ORD\": 15,\n", + " \"LV_TIM_MS\": 50328073,\n", + " \"LV_TIM_MSP\": 536,\n", + " \"LV_DATE\": \"2022-06-22\"\n", + " }\n", + " }\n", + " ]\n", + " }\n", + "}\n", + "----------------------------------------------------------\n", + ">>> Update event received at 15:59:21.169025\n", + "{\n", + " \"ID\": 5,\n", + " \"Type\": \"Update\",\n", + " \"Domain\": \"MarketByPrice\",\n", + " \"UpdateType\": \"Unspecified\",\n", + " \"Key\": {\n", + " \"Service\": \"ELEKTRON_DD\",\n", + " \"Name\": \"BB.TO\"\n", + " },\n", + " \"SeqNumber\": 31168,\n", + " \"Map\": {\n", + " \"KeyType\": \"Buffer\",\n", + " \"Summary\": {\n", + " \"Fields\": {\n", + " \"TIMACT_MS\": 50361176\n", + " }\n", + " },\n", + " \"Entries\": [\n", + " {\n", + " \"Action\": \"Update\",\n", + " \"Key\": \"Ni45MTAwMDBC\",\n", + " \"Fields\": {\n", + " \"ORDER_PRC\": 6.91,\n", + " \"ORDER_SIDE\": \"BID\",\n", + " \"ACC_SIZE\": 17900,\n", + " \"NO_ORD\": 16,\n", + " \"LV_TIM_MS\": 50328073,\n", + " \"LV_TIM_MSP\": 536,\n", + " \"LV_DATE\": \"2022-06-22\"\n", + " }\n", + " }\n", + " ]\n", + " }\n", + "}\n", + "----------------------------------------------------------\n", + ">>> Update event received at 15:59:21.169240\n", + "{\n", + " \"ID\": 5,\n", + " \"Type\": \"Update\",\n", + " \"Domain\": \"MarketByPrice\",\n", + " \"UpdateType\": \"Unspecified\",\n", + " \"Key\": {\n", + " \"Service\": \"ELEKTRON_DD\",\n", + " \"Name\": \"BB.TO\"\n", + " },\n", + " \"SeqNumber\": 31184,\n", + " \"Map\": {\n", + " \"KeyType\": \"Buffer\",\n", + " \"Summary\": {\n", + " \"Fields\": {\n", + " \"TIMACT_MS\": 50361176\n", + " }\n", + " },\n", + " \"Entries\": [\n", + " {\n", + " \"Action\": \"Update\",\n", + " \"Key\": \"Ni45MTAwMDBC\",\n", + " \"Fields\": {\n", + " \"ORDER_PRC\": 6.91,\n", + " \"ORDER_SIDE\": \"BID\",\n", + " \"ACC_SIZE\": 15300,\n", + " \"NO_ORD\": 15,\n", + " \"LV_TIM_MS\": 50328073,\n", + " \"LV_TIM_MSP\": 536,\n", + " \"LV_DATE\": \"2022-06-22\"\n", + " }\n", + " }\n", + " ]\n", + " }\n", + "}\n", + "----------------------------------------------------------\n", + ">>> Update event received at 15:59:21.169742\n", + "{\n", + " \"ID\": 5,\n", + " \"Type\": \"Update\",\n", + " \"Domain\": \"MarketByPrice\",\n", + " \"UpdateType\": \"Unspecified\",\n", + " \"Key\": {\n", + " \"Service\": \"ELEKTRON_DD\",\n", + " \"Name\": \"BB.TO\"\n", + " },\n", + " \"SeqNumber\": 31200,\n", + " \"Map\": {\n", + " \"KeyType\": \"Buffer\",\n", + " \"Summary\": {\n", + " \"Fields\": {\n", + " \"TIMACT_MS\": 50361176\n", + " }\n", + " },\n", + " \"Entries\": [\n", + " {\n", + " \"Action\": \"Update\",\n", + " \"Key\": \"Ni45MTAwMDBC\",\n", + " \"Fields\": {\n", + " \"ORDER_PRC\": 6.91,\n", + " \"ORDER_SIDE\": \"BID\",\n", + " \"ACC_SIZE\": 17700,\n", + " \"NO_ORD\": 16,\n", + " \"LV_TIM_MS\": 50328073,\n", + " \"LV_TIM_MSP\": 536,\n", + " \"LV_DATE\": \"2022-06-22\"\n", + " }\n", + " }\n", + " ]\n", + " }\n", + "}\n", + "----------------------------------------------------------\n", + ">>> Update event received at 15:59:21.235552\n", + "{\n", + " \"ID\": 5,\n", + " \"Type\": \"Update\",\n", + " \"Domain\": \"MarketByPrice\",\n", + " \"UpdateType\": \"Unspecified\",\n", + " \"Key\": {\n", + " \"Service\": \"ELEKTRON_DD\",\n", + " \"Name\": \"BB.TO\"\n", + " },\n", + " \"SeqNumber\": 31216,\n", + " \"Map\": {\n", + " \"KeyType\": \"Buffer\",\n", + " \"Summary\": {\n", + " \"Fields\": {\n", + " \"TIMACT_MS\": 50361244\n", + " }\n", + " },\n", + " \"Entries\": [\n", + " {\n", + " \"Action\": \"Update\",\n", + " \"Key\": \"Ni44ODAwMDBC\",\n", + " \"Fields\": {\n", + " \"ORDER_PRC\": 6.88,\n", + " \"ORDER_SIDE\": \"BID\",\n", + " \"ACC_SIZE\": 25600,\n", + " \"NO_ORD\": 15,\n", + " \"LV_TIM_MS\": 50361244,\n", + " \"LV_TIM_MSP\": 861,\n", + " \"LV_DATE\": \"2022-06-22\"\n", + " }\n", + " }\n", + " ]\n", + " }\n", + "}\n", + "----------------------------------------------------------\n", + ">>> Update event received at 15:59:21.513423\n", + "{\n", + " \"ID\": 5,\n", + " \"Type\": \"Update\",\n", + " \"Domain\": \"MarketByPrice\",\n", + " \"UpdateType\": \"Unspecified\",\n", + " \"Key\": {\n", + " \"Service\": \"ELEKTRON_DD\",\n", + " \"Name\": \"BB.TO\"\n", + " },\n", + " \"SeqNumber\": 31232,\n", + " \"Map\": {\n", + " \"KeyType\": \"Buffer\",\n", + " \"Summary\": {\n", + " \"Fields\": {\n", + " \"TIMACT_MS\": 50361521\n", + " }\n", + " },\n", + " \"Entries\": [\n", + " {\n", + " \"Action\": \"Update\",\n", + " \"Key\": \"Ni45NDAwMDBB\",\n", + " \"Fields\": {\n", + " \"ORDER_PRC\": 6.94,\n", + " \"ORDER_SIDE\": \"ASK\",\n", + " \"ACC_SIZE\": 5800,\n", + " \"NO_ORD\": 13,\n", + " \"LV_TIM_MS\": 50360445,\n", + " \"LV_TIM_MSP\": 176,\n", + " \"LV_DATE\": \"2022-06-22\"\n", + " }\n", + " }\n", + " ]\n", + " }\n", + "}\n", + "----------------------------------------------------------\n", + ">>> Update event received at 15:59:21.535597\n", + "{\n", + " \"ID\": 5,\n", + " \"Type\": \"Update\",\n", + " \"Domain\": \"MarketByPrice\",\n", + " \"UpdateType\": \"Unspecified\",\n", + " \"Key\": {\n", + " \"Service\": \"ELEKTRON_DD\",\n", + " \"Name\": \"BB.TO\"\n", + " },\n", + " \"SeqNumber\": 31248,\n", + " \"Map\": {\n", + " \"KeyType\": \"Buffer\",\n", + " \"Summary\": {\n", + " \"Fields\": {\n", + " \"TIMACT_MS\": 50361545\n", + " }\n", + " },\n", + " \"Entries\": [\n", + " {\n", + " \"Action\": \"Update\",\n", + " \"Key\": \"Ni45MzAwMDBC\",\n", + " \"Fields\": {\n", + " \"ORDER_PRC\": 6.93,\n", + " \"ORDER_SIDE\": \"BID\",\n", + " \"ACC_SIZE\": 500,\n", + " \"NO_ORD\": 3,\n", + " \"LV_TIM_MS\": 50361545,\n", + " \"LV_TIM_MSP\": 531,\n", + " \"LV_DATE\": \"2022-06-22\"\n", + " }\n", + " }\n", + " ]\n", + " }\n", + "}\n", + "----------------------------------------------------------\n", + ">>> Update event received at 15:59:21.589789\n", + "{\n", + " \"ID\": 5,\n", + " \"Type\": \"Update\",\n", + " \"Domain\": \"MarketByPrice\",\n", + " \"UpdateType\": \"Unspecified\",\n", + " \"Key\": {\n", + " \"Service\": \"ELEKTRON_DD\",\n", + " \"Name\": \"BB.TO\"\n", + " },\n", + " \"SeqNumber\": 31264,\n", + " \"Map\": {\n", + " \"KeyType\": \"Buffer\",\n", + " \"Summary\": {\n", + " \"Fields\": {\n", + " \"TIMACT_MS\": 50361601\n", + " }\n", + " },\n", + " \"Entries\": [\n", + " {\n", + " \"Action\": \"Update\",\n", + " \"Key\": \"Ni45MjAwMDBC\",\n", + " \"Fields\": {\n", + " \"ORDER_PRC\": 6.92,\n", + " \"ORDER_SIDE\": \"BID\",\n", + " \"ACC_SIZE\": 6000,\n", + " \"NO_ORD\": 7,\n", + " \"LV_TIM_MS\": 50361601,\n", + " \"LV_TIM_MSP\": 548,\n", + " \"LV_DATE\": \"2022-06-22\"\n", + " }\n", + " }\n", + " ]\n", + " }\n", + "}\n", + "----------------------------------------------------------\n", + ">>> Update event received at 15:59:22.038850\n", + "{\n", + " \"ID\": 5,\n", + " \"Type\": \"Update\",\n", + " \"Domain\": \"MarketByPrice\",\n", + " \"UpdateType\": \"Unspecified\",\n", + " \"Key\": {\n", + " \"Service\": \"ELEKTRON_DD\",\n", + " \"Name\": \"BB.TO\"\n", + " },\n", + " \"SeqNumber\": 31280,\n", + " \"Map\": {\n", + " \"KeyType\": \"Buffer\",\n", + " \"Summary\": {\n", + " \"Fields\": {\n", + " \"TIMACT_MS\": 50362047\n", + " }\n", + " },\n", + " \"Entries\": [\n", + " {\n", + " \"Action\": \"Update\",\n", + " \"Key\": \"Ni45NTAwMDBB\",\n", + " \"Fields\": {\n", + " \"ORDER_PRC\": 6.95,\n", + " \"ORDER_SIDE\": \"ASK\",\n", + " \"ACC_SIZE\": 30000,\n", + " \"NO_ORD\": 11,\n", + " \"LV_TIM_MS\": 50358911,\n", + " \"LV_TIM_MSP\": 850,\n", + " \"LV_DATE\": \"2022-06-22\"\n", + " }\n", + " }\n", + " ]\n", + " }\n", + "}\n", + "----------------------------------------------------------\n", + ">>> Update event received at 15:59:22.039185\n", + "{\n", + " \"ID\": 5,\n", + " \"Type\": \"Update\",\n", + " \"Domain\": \"MarketByPrice\",\n", + " \"UpdateType\": \"Unspecified\",\n", + " \"Key\": {\n", + " \"Service\": \"ELEKTRON_DD\",\n", + " \"Name\": \"BB.TO\"\n", + " },\n", + " \"SeqNumber\": 31296,\n", + " \"Map\": {\n", + " \"KeyType\": \"Buffer\",\n", + " \"Summary\": {\n", + " \"Fields\": {\n", + " \"TIMACT_MS\": 50362047\n", + " }\n", + " },\n", + " \"Entries\": [\n", + " {\n", + " \"Action\": \"Update\",\n", + " \"Key\": \"Ni45NDAwMDBB\",\n", + " \"Fields\": {\n", + " \"ORDER_PRC\": 6.94,\n", + " \"ORDER_SIDE\": \"ASK\",\n", + " \"ACC_SIZE\": 6000,\n", + " \"NO_ORD\": 14,\n", + " \"LV_TIM_MS\": 50362047,\n", + " \"LV_TIM_MSP\": 880,\n", + " \"LV_DATE\": \"2022-06-22\"\n", + " }\n", + " }\n", + " ]\n", + " }\n", + "}\n", + "----------------------------------------------------------\n", + ">>> Update event received at 15:59:22.631957\n", + "{\n", + " \"ID\": 5,\n", + " \"Type\": \"Update\",\n", + " \"Domain\": \"MarketByPrice\",\n", + " \"UpdateType\": \"Unspecified\",\n", + " \"Key\": {\n", + " \"Service\": \"ELEKTRON_DD\",\n", + " \"Name\": \"BB.TO\"\n", + " },\n", + " \"SeqNumber\": 31312,\n", + " \"Map\": {\n", + " \"KeyType\": \"Buffer\",\n", + " \"Summary\": {\n", + " \"Fields\": {\n", + " \"TIMACT_MS\": 50362640\n", + " }\n", + " },\n", + " \"Entries\": [\n", + " {\n", + " \"Action\": \"Update\",\n", + " \"Key\": \"Ni45MjAwMDBC\",\n", + " \"Fields\": {\n", + " \"ORDER_PRC\": 6.92,\n", + " \"ORDER_SIDE\": \"BID\",\n", + " \"ACC_SIZE\": 5800,\n", + " \"NO_ORD\": 6,\n", + " \"LV_TIM_MS\": 50361601,\n", + " \"LV_TIM_MSP\": 548,\n", + " \"LV_DATE\": \"2022-06-22\"\n", + " }\n", + " }\n", + " ]\n", + " }\n", + "}\n", + "----------------------------------------------------------\n", + ">>> Update event received at 15:59:22.632563\n", + "{\n", + " \"ID\": 5,\n", + " \"Type\": \"Update\",\n", + " \"Domain\": \"MarketByPrice\",\n", + " \"UpdateType\": \"Unspecified\",\n", + " \"Key\": {\n", + " \"Service\": \"ELEKTRON_DD\",\n", + " \"Name\": \"BB.TO\"\n", + " },\n", + " \"SeqNumber\": 31328,\n", + " \"Map\": {\n", + " \"KeyType\": \"Buffer\",\n", + " \"Summary\": {\n", + " \"Fields\": {\n", + " \"TIMACT_MS\": 50362640\n", + " }\n", + " },\n", + " \"Entries\": [\n", + " {\n", + " \"Action\": \"Update\",\n", + " \"Key\": \"Ni45MjAwMDBC\",\n", + " \"Fields\": {\n", + " \"ORDER_PRC\": 6.92,\n", + " \"ORDER_SIDE\": \"BID\",\n", + " \"ACC_SIZE\": 5900,\n", + " \"NO_ORD\": 7,\n", + " \"LV_TIM_MS\": 50361601,\n", + " \"LV_TIM_MSP\": 548,\n", + " \"LV_DATE\": \"2022-06-22\"\n", + " }\n", + " }\n", + " ]\n", + " }\n", + "}\n", + "----------------------------------------------------------\n", + ">>> Update event received at 15:59:22.639583\n", + "{\n", + " \"ID\": 5,\n", + " \"Type\": \"Update\",\n", + " \"Domain\": \"MarketByPrice\",\n", + " \"UpdateType\": \"Unspecified\",\n", + " \"Key\": {\n", + " \"Service\": \"ELEKTRON_DD\",\n", + " \"Name\": \"BB.TO\"\n", + " },\n", + " \"SeqNumber\": 31344,\n", + " \"Map\": {\n", + " \"KeyType\": \"Buffer\",\n", + " \"Summary\": {\n", + " \"Fields\": {\n", + " \"TIMACT_MS\": 50362650\n", + " }\n", + " },\n", + " \"Entries\": [\n", + " {\n", + " \"Action\": \"Update\",\n", + " \"Key\": \"Ni45MjAwMDBC\",\n", + " \"Fields\": {\n", + " \"ORDER_PRC\": 6.92,\n", + " \"ORDER_SIDE\": \"BID\",\n", + " \"ACC_SIZE\": 5800,\n", + " \"NO_ORD\": 6,\n", + " \"LV_TIM_MS\": 50361601,\n", + " \"LV_TIM_MSP\": 548,\n", + " \"LV_DATE\": \"2022-06-22\"\n", + " }\n", + " }\n", + " ]\n", + " }\n", + "}\n", + "----------------------------------------------------------\n", + ">>> Update event received at 15:59:22.683100\n", + "{\n", + " \"ID\": 5,\n", + " \"Type\": \"Update\",\n", + " \"Domain\": \"MarketByPrice\",\n", + " \"UpdateType\": \"Unspecified\",\n", + " \"Key\": {\n", + " \"Service\": \"ELEKTRON_DD\",\n", + " \"Name\": \"BB.TO\"\n", + " },\n", + " \"SeqNumber\": 31360,\n", + " \"Map\": {\n", + " \"KeyType\": \"Buffer\",\n", + " \"Summary\": {\n", + " \"Fields\": {\n", + " \"TIMACT_MS\": 50362692\n", + " }\n", + " },\n", + " \"Entries\": [\n", + " {\n", + " \"Action\": \"Update\",\n", + " \"Key\": \"Ni45MzAwMDBC\",\n", + " \"Fields\": {\n", + " \"ORDER_PRC\": 6.93,\n", + " \"ORDER_SIDE\": \"BID\",\n", + " \"ACC_SIZE\": 300,\n", + " \"NO_ORD\": 2,\n", + " \"LV_TIM_MS\": 50361545,\n", + " \"LV_TIM_MSP\": 531,\n", + " \"LV_DATE\": \"2022-06-22\"\n", + " }\n", + " }\n", + " ]\n", + " }\n", + "}\n", + "----------------------------------------------------------\n", + ">>> Update event received at 15:59:23.897803\n", + "{\n", + " \"ID\": 5,\n", + " \"Type\": \"Update\",\n", + " \"Domain\": \"MarketByPrice\",\n", + " \"UpdateType\": \"Unspecified\",\n", + " \"Key\": {\n", + " \"Service\": \"ELEKTRON_DD\",\n", + " \"Name\": \"BB.TO\"\n", + " },\n", + " \"SeqNumber\": 31376,\n", + " \"Map\": {\n", + " \"KeyType\": \"Buffer\",\n", + " \"Summary\": {\n", + " \"Fields\": {\n", + " \"TIMACT_MS\": 50363902\n", + " }\n", + " },\n", + " \"Entries\": [\n", + " {\n", + " \"Action\": \"Update\",\n", + " \"Key\": \"Ni44ODAwMDBC\",\n", + " \"Fields\": {\n", + " \"ORDER_PRC\": 6.88,\n", + " \"ORDER_SIDE\": \"BID\",\n", + " \"ACC_SIZE\": 20200,\n", + " \"NO_ORD\": 14,\n", + " \"LV_TIM_MS\": 50361244,\n", + " \"LV_TIM_MSP\": 861,\n", + " \"LV_DATE\": \"2022-06-22\"\n", + " }\n", + " }\n", + " ]\n", + " }\n", + "}\n", + "----------------------------------------------------------\n", + ">>> Update event received at 15:59:23.898146\n", + "{\n", + " \"ID\": 5,\n", + " \"Type\": \"Update\",\n", + " \"Domain\": \"MarketByPrice\",\n", + " \"UpdateType\": \"Unspecified\",\n", + " \"Key\": {\n", + " \"Service\": \"ELEKTRON_DD\",\n", + " \"Name\": \"BB.TO\"\n", + " },\n", + " \"SeqNumber\": 31392,\n", + " \"Map\": {\n", + " \"KeyType\": \"Buffer\",\n", + " \"Summary\": {\n", + " \"Fields\": {\n", + " \"TIMACT_MS\": 50363902\n", + " }\n", + " },\n", + " \"Entries\": [\n", + " {\n", + " \"Action\": \"Update\",\n", + " \"Key\": \"Ni44ODAwMDBC\",\n", + " \"Fields\": {\n", + " \"ORDER_PRC\": 6.88,\n", + " \"ORDER_SIDE\": \"BID\",\n", + " \"ACC_SIZE\": 20300,\n", + " \"NO_ORD\": 15,\n", + " \"LV_TIM_MS\": 50361244,\n", + " \"LV_TIM_MSP\": 861,\n", + " \"LV_DATE\": \"2022-06-22\"\n", + " }\n", + " }\n", + " ]\n", + " }\n", + "}\n" + ] + } + ], "source": [ "stream.open()" ] @@ -193,16 +10530,16 @@ }, { "cell_type": "code", - "execution_count": 11, + "execution_count": 7, "metadata": {}, "outputs": [ { "data": { "text/plain": [ - "" + "" ] }, - "execution_count": 11, + "execution_count": 7, "metadata": {}, "output_type": "execute_result" } @@ -220,17 +10557,24 @@ }, { "cell_type": "code", - "execution_count": 12, + "execution_count": 8, "metadata": {}, "outputs": [], "source": [ "rd.close_session()" ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [] } ], "metadata": { "kernelspec": { - "display_name": "Python 3", + "display_name": "Python 3 (ipykernel)", "language": "python", "name": "python3" }, @@ -244,7 +10588,7 @@ "name": "python", "nbconvert_exporter": "python", "pygments_lexer": "ipython3", - "version": "3.7.6" + "version": "3.9.7" } }, "nbformat": 4, diff --git a/Examples/3-Delivery/3.02-Streaming/EX-3.03.03-RDPStream-IPAFxCross.ipynb b/Examples/3-Delivery/3.02-Streaming/EX-3.02.03-RDPStream-IPAFxCross.ipynb similarity index 75% rename from Examples/3-Delivery/3.02-Streaming/EX-3.03.03-RDPStream-IPAFxCross.ipynb rename to Examples/3-Delivery/3.02-Streaming/EX-3.02.03-RDPStream-IPAFxCross.ipynb index fefd843..d652204 100644 --- a/Examples/3-Delivery/3.02-Streaming/EX-3.03.03-RDPStream-IPAFxCross.ipynb +++ b/Examples/3-Delivery/3.02-Streaming/EX-3.02.03-RDPStream-IPAFxCross.ipynb @@ -66,7 +66,7 @@ }, { "cell_type": "code", - "execution_count": 2, + "execution_count": 4, "metadata": {}, "outputs": [], "source": [ @@ -86,16 +86,16 @@ }, { "cell_type": "code", - "execution_count": 3, + "execution_count": 5, "metadata": {}, "outputs": [ { "data": { "text/plain": [ - "" + "" ] }, - "execution_count": 3, + "execution_count": 5, "metadata": {}, "output_type": "execute_result" } @@ -120,11 +120,13 @@ }, { "cell_type": "code", - "execution_count": 4, - "metadata": {}, + "execution_count": 6, + "metadata": { + "tags": [] + }, "outputs": [], "source": [ - "def display_event(stream, eventType, event):\n", + "def display_event(event, eventType):\n", " currentTime = datetime.datetime.now().time()\n", " print(\"----------------------------------------------------------\")\n", " print(\">>> {} event received at {}\".format(eventType, currentTime))\n", @@ -140,13 +142,13 @@ }, { "cell_type": "code", - "execution_count": 5, + "execution_count": 7, "metadata": {}, "outputs": [], "source": [ "stream = rdp_stream.Definition(\n", " service = None,\n", - " api = \"streaming/quantitative-analytics/financial-contracts\",\n", + " api = \"streaming.quantitative-analytics.endpoints.financial-contracts\",\n", " universe = {\n", " \"instrumentType\": \"FxCross\", \n", " \"instrumentDefinition\": {\n", @@ -174,24 +176,24 @@ }, { "cell_type": "code", - "execution_count": 6, + "execution_count": 8, "metadata": {}, "outputs": [ { "data": { "text/plain": [ - "" + "" ] }, - "execution_count": 6, + "execution_count": 8, "metadata": {}, "output_type": "execute_result" } ], "source": [ - "stream.on_response(lambda stream, event: display_event(stream, 'response', event))\n", - "stream.on_update(lambda stream, event: display_event(stream, 'update', event))\n", - "stream.on_alarm(lambda stream, event: display_event(stream, 'alarm', event))" + "stream.on_response(lambda event, stream: display_event(event, 'response'))\n", + "stream.on_update(lambda event, stream: display_event(event, 'update'))\n", + "stream.on_alarm(lambda event, stream: display_event(event, 'alarm'))" ] }, { @@ -204,25 +206,23 @@ }, { "cell_type": "code", - "execution_count": 7, + "execution_count": 9, "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ - "----------------------------------------------------------\n", - ">>> response event received at 17:02:57.933885\n", - "{'data': [['USDAUD', {'bid': 1.3906271728549577, 'ask': 1.3910140492418974, 'mid': 1.3908206110484276, 'processingInformation': ''}, '', '2021-12-20', '2021-12-20']], 'type': 'Response', 'streamID': '1'}\n" + "----------------------------------------------------------" ] }, { "data": { "text/plain": [ - "" + "" ] }, - "execution_count": 7, + "execution_count": 9, "metadata": {}, "output_type": "execute_result" }, @@ -230,18 +230,18 @@ "name": "stdout", "output_type": "stream", "text": [ + "\n", + ">>> response event received at 15:57:48.058436\n", + "{'data': [['USDAUD', {'bid': 1.4799467219180111, 'ask': 1.4803849000740192, 'mid': 1.4801658109960152, 'processingInformation': ''}, '', '2022-12-14', '2022-12-14']], 'type': 'Response', 'streamID': '5'}\n", "----------------------------------------------------------\n", - ">>> update event received at 17:03:00.914925\n", - "{'data': [['USDAUD', {'bid': 1.3906271728549577, 'ask': 1.3910140492418974, 'mid': 1.3908206110484276, 'processingInformation': ''}, '', '2021-12-20', '2021-12-20']], 'type': 'Update', 'streamID': '1'}\n", - "----------------------------------------------------------\n", - ">>> update event received at 17:03:01.913708\n", - "{'data': [['USDAUD', {'bid': 1.3906271728549577, 'ask': 1.3910140492418974, 'mid': 1.3908206110484276, 'processingInformation': ''}, '', '2021-12-20', '2021-12-20']], 'type': 'Update', 'streamID': '1'}\n", + ">>> update event received at 15:57:48.962743\n", + "{'data': [['USDAUD', {'bid': 1.4799467219180111, 'ask': 1.4803849000740192, 'mid': 1.4801658109960152, 'processingInformation': ''}, '', '2022-12-14', '2022-12-14']], 'type': 'Update', 'streamID': '5'}\n", "----------------------------------------------------------\n", - ">>> update event received at 17:03:03.933867\n", - "{'data': [['USDAUD', {'bid': 1.3906271728549577, 'ask': 1.3910140492418974, 'mid': 1.3908206110484276, 'processingInformation': ''}, '', '2021-12-20', '2021-12-20']], 'type': 'Update', 'streamID': '1'}\n", + ">>> update event received at 15:57:50.019615\n", + "{'data': [['USDAUD', {'bid': 1.4797277300976621, 'ask': 1.4806040864672787, 'mid': 1.4801659082824705, 'processingInformation': ''}, '', '2022-12-14', '2022-12-14']], 'type': 'Update', 'streamID': '5'}\n", "----------------------------------------------------------\n", - ">>> update event received at 17:03:04.975500\n", - "{'data': [['USDAUD', {'bid': 1.3906271728549577, 'ask': 1.3908205841446455, 'mid': 1.3907238784998017, 'processingInformation': ''}, '', '2021-12-20', '2021-12-20']], 'type': 'Update', 'streamID': '1'}\n" + ">>> update event received at 15:57:50.968141\n", + "{'data': [['USDAUD', {'bid': 1.4799467219180111, 'ask': 1.4803849000740192, 'mid': 1.4801658109960152, 'processingInformation': ''}, '', '2022-12-14', '2022-12-14']], 'type': 'Update', 'streamID': '5'}\n" ] } ], @@ -258,25 +258,16 @@ }, { "cell_type": "code", - "execution_count": 8, + "execution_count": 10, "metadata": {}, "outputs": [ - { - "name": "stdout", - "output_type": "stream", - "text": [ - "----------------------------------------------------------\n", - ">>> update event received at 17:03:05.909605\n", - "{'data': [['USDAUD', {'bid': 1.3906271728549577, 'ask': 1.3910140492418974, 'mid': 1.3908206110484276, 'processingInformation': ''}, '', '2021-12-20', '2021-12-20']], 'type': 'Update', 'streamID': '1'}\n" - ] - }, { "data": { "text/plain": [ - "" + "" ] }, - "execution_count": 8, + "execution_count": 10, "metadata": {}, "output_type": "execute_result" } @@ -294,7 +285,7 @@ }, { "cell_type": "code", - "execution_count": 9, + "execution_count": 11, "metadata": {}, "outputs": [], "source": [ @@ -311,7 +302,7 @@ ], "metadata": { "kernelspec": { - "display_name": "Python 3", + "display_name": "Python 3 (ipykernel)", "language": "python", "name": "python3" }, @@ -325,7 +316,7 @@ "name": "python", "nbconvert_exporter": "python", "pygments_lexer": "ipython3", - "version": "3.7.6" + "version": "3.9.7" } }, "nbformat": 4, diff --git a/Examples/3-Delivery/3.03-Bulk/EX-3.03.01-Bulk-ClientFileStore.ipynb b/Examples/3-Delivery/3.03-Bulk/EX-3.03.01-Bulk-ClientFileStore.ipynb index a46cbea..7a2b001 100644 --- a/Examples/3-Delivery/3.03-Bulk/EX-3.03.01-Bulk-ClientFileStore.ipynb +++ b/Examples/3-Delivery/3.03-Bulk/EX-3.03.01-Bulk-ClientFileStore.ipynb @@ -66,12 +66,12 @@ }, { "cell_type": "code", - "execution_count": 2, + "execution_count": 1, "metadata": {}, "outputs": [], "source": [ "import refinitiv.data as rd\n", - "import refinitiv.data.delivery.bulk.cfs as cfs\n", + "import refinitiv.data.delivery.cfs as cfs\n", "from datetime import timedelta" ] }, @@ -86,16 +86,16 @@ }, { "cell_type": "code", - "execution_count": 3, + "execution_count": 2, "metadata": {}, "outputs": [ { "data": { "text/plain": [ - "" + "" ] }, - "execution_count": 3, + "execution_count": 2, "metadata": {}, "output_type": "execute_result" } @@ -127,7 +127,7 @@ }, { "cell_type": "code", - "execution_count": 4, + "execution_count": 3, "metadata": {}, "outputs": [ { @@ -151,342 +151,342 @@ " \n", " \n", " \n", - " modified\n", - " created\n", - " publisherName\n", - " private\n", " attributes\n", " name\n", - " description\n", " restricted\n", + " modified\n", + " private\n", " availableFrom\n", + " description\n", + " publisherName\n", + " created\n", " availableTo\n", " \n", " \n", " \n", " \n", " 0\n", - " 2020-10-23T12:17:11Z\n", - " 2020-10-23T12:17:11Z\n", - " SM_predictive_analytics\n", + " None\n", + " research-bulk-prod\n", + " False\n", + " 2022-01-08T08:14:07Z\n", " False\n", + " 2022-01-08T08:14:07Z\n", + " Bucket for Research bulk prod\n", + " Refinitiv\n", + " 2022-01-08T08:14:07Z\n", " None\n", - " STARMINE_PREDICTIVE_ANALYTICS_SMARTECON_LIVE\n", + " \n", + " \n", + " 1\n", " None\n", + " STARMINE_PREDICTIVE_ANALYTICS_SMARTECON_LIVE\n", " False\n", " 2020-10-23T12:17:11Z\n", + " False\n", + " 2020-10-23T12:17:11Z\n", + " None\n", + " SM_predictive_analytics\n", + " 2020-10-23T12:17:11Z\n", " None\n", " \n", " \n", - " 1\n", - " 2020-09-11T04:53:13Z\n", - " 2020-05-20T07:47:59Z\n", - " test\n", - " False\n", + " 2\n", " None\n", " TestCFSBucketConcept\n", - " Test bucket for CFS UI\n", + " False\n", + " 2020-09-11T04:53:13Z\n", " False\n", " 2020-06-01T10:45:11Z\n", + " Test bucket for CFS UI\n", + " test\n", + " 2020-05-20T07:47:59Z\n", " 9999-12-30T00:00:00Z\n", " \n", " \n", - " 2\n", - " 2021-08-27T07:29:56Z\n", - " 2021-08-27T07:29:56Z\n", - " SM_predictive_analytics\n", - " False\n", + " 3\n", " None\n", " STARMINE_PREDICTIVE_ANALYTICS_SMARTECON_POLLS_...\n", - " None\n", + " False\n", + " 2021-08-27T07:29:56Z\n", " False\n", " 2021-08-27T10:00:00Z\n", " None\n", + " SM_predictive_analytics\n", + " 2021-08-27T07:29:56Z\n", + " None\n", " \n", " \n", - " 3\n", - " 2021-12-09T09:39:25Z\n", - " 2021-12-09T09:39:25Z\n", - " SM_predictive_analytics\n", + " 4\n", + " [Team, Purpose, test]\n", + " Test_CFS_BucketTiming\n", " False\n", + " 2022-11-12T18:28:55Z\n", + " False\n", + " 2022-02-01T08:03:31Z\n", + " test\n", + " test\n", + " 2022-01-11T10:32:00Z\n", + " None\n", + " \n", + " \n", + " 5\n", " None\n", " STARMINE_PREDICTIVE_ANALYTICS_SYMBOLOGY_DAILY_...\n", - " Starmine Symbology Daily Research Pack CUSIP a...\n", " False\n", " 2021-12-09T09:39:25Z\n", + " False\n", + " 2021-12-09T09:39:25Z\n", + " Starmine Symbology Daily Research Pack CUSIP a...\n", + " SM_predictive_analytics\n", + " 2021-12-09T09:39:25Z\n", " None\n", " \n", " \n", - " 4\n", - " 2021-05-28T10:18:27Z\n", - " 2021-05-28T10:18:27Z\n", - " LSEG\n", - " False\n", + " 6\n", " None\n", " rft-bulk-lseg\n", - " Bulk feeds containing Revenue Synergies data f...\n", + " False\n", + " 2021-05-28T10:18:27Z\n", " False\n", " 2021-05-28T10:18:26Z\n", + " Bulk feeds containing Revenue Synergies data f...\n", + " LSEG\n", + " 2021-05-28T10:18:27Z\n", " None\n", " \n", " \n", - " 5\n", - " 2021-06-18T14:02:41Z\n", - " 2021-06-18T14:02:41Z\n", - " SM_predictive_analytics\n", + " 7\n", + " [DayOfWeek]\n", + " bucket2_v1\n", " False\n", + " 2022-09-14T04:36:29Z\n", + " False\n", + " 2022-09-14T04:36:29Z\n", + " test\n", + " Viking\n", + " 2022-09-14T04:36:29Z\n", + " 9999-12-30T00:00:00Z\n", + " \n", + " \n", + " 8\n", " None\n", " STARMINE_PREDICTIVE_ANALYTICS_MATARGET_EMEA\n", - " Starmine MA Target EMEA files\n", " False\n", " 2021-06-18T14:02:41Z\n", + " False\n", + " 2021-06-18T14:02:41Z\n", + " Starmine MA Target EMEA files\n", + " SM_predictive_analytics\n", + " 2021-06-18T14:02:41Z\n", " None\n", " \n", " \n", - " 6\n", - " 2021-06-07T09:52:55Z\n", - " 2021-06-07T09:52:55Z\n", - " SM_predictive_analytics\n", - " False\n", + " 9\n", " None\n", " STARMINE_PREDICTIVE_ANALYTICS_SYMBOLOGY_HOURLY...\n", - " starmine predictive analytics symbology hourly...\n", " False\n", " 2021-06-07T09:52:55Z\n", + " False\n", + " 2021-06-07T09:52:55Z\n", + " starmine predictive analytics symbology hourly...\n", + " SM_predictive_analytics\n", + " 2021-06-07T09:52:55Z\n", " None\n", " \n", " \n", - " 7\n", - " 2021-10-14T08:35:43Z\n", + " 10\n", + " [SubDomainName, DomainName]\n", + " daniel_demo_bucket_100\n", + " False\n", " 2021-10-14T08:35:43Z\n", - " Refinitiv\n", " False\n", - " [DomainName, SubDomainName]\n", - " daniel_demo_bucket_100\n", + " 2021-10-14T08:35:43Z\n", " test\n", - " False\n", + " Refinitiv\n", " 2021-10-14T08:35:43Z\n", " None\n", " \n", " \n", - " 8\n", - " 2019-10-03T16:44:24Z\n", - " 2019-06-18T09:48:14Z\n", - " TickHistory\n", - " False\n", - " [releaseTime, md5, size, message_id, depth, ve...\n", + " 11\n", + " [releaseTime, venue, depth, message_id, source...\n", " TICKHISTORY_VBD_NO_EMBARGO\n", - " None\n", + " False\n", + " 2022-12-11T09:31:09Z\n", " False\n", " 2000-01-01T01:00:00Z\n", + " Includes Full Tick History Venue By Day files ...\n", + " TickHistory\n", + " 2019-06-18T09:48:14Z\n", " 2038-01-19T03:14:07Z\n", " \n", " \n", - " 9\n", - " 2020-08-18T08:49:02Z\n", - " 2020-08-18T08:49:02Z\n", + " 12\n", + " [ContentType, ResultCount]\n", " ESG\n", " False\n", - " [ResultCount, ContentType]\n", - " ESG\n", - " Bulk feeds containing ESG data\n", + " 2022-06-09T09:22:00Z\n", " False\n", " 2020-08-18T08:49:02Z\n", + " Bulk feeds containing ESG data\n", + " ESG\n", + " 2020-08-18T08:49:02Z\n", " None\n", " \n", " \n", - " 10\n", - " 2020-03-25T00:41:10Z\n", - " 2020-03-25T00:41:10Z\n", - " BattleFin\n", - " False\n", - " None\n", - " production-linkup-battlefin\n", + " 13\n", " None\n", + " STARMINE_PREDICTIVE_ANALYTICS_SMARTECON_POLLS_...\n", " False\n", - " 2020-03-25T00:41:10Z\n", - " 2022-03-20T18:25:07Z\n", - " \n", - " \n", - " 11\n", " 2021-08-27T07:29:56Z\n", - " 2021-08-27T07:29:56Z\n", - " SM_predictive_analytics\n", - " False\n", - " None\n", - " STARMINE_PREDICTIVE_ANALYTICS_SMARTECON_POLLS_...\n", - " None\n", " False\n", " 2021-08-27T10:00:00Z\n", " None\n", + " SM_predictive_analytics\n", + " 2021-08-27T07:29:56Z\n", + " None\n", " \n", " \n", - " 12\n", - " 2021-06-11T15:13:13Z\n", - " 2021-06-11T15:13:13Z\n", - " GE-4459\n", - " False\n", + " 14\n", " None\n", " a250269-prod-rdp-reports\n", - " RDP Usage Reporting API\n", " False\n", " 2021-06-11T15:13:13Z\n", + " False\n", + " 2021-06-11T15:13:13Z\n", + " RDP Usage Reporting API\n", + " GE-4459\n", + " 2021-06-11T15:13:13Z\n", " None\n", " \n", " \n", - " 13\n", - " 2021-06-07T09:52:56Z\n", - " 2021-06-07T09:52:56Z\n", - " SM_predictive_analytics\n", - " False\n", + " 15\n", " None\n", " STARMINE_PREDICTIVE_ANALYTICS_SYMBOLOGY_HOURLY...\n", - " starmine predictive analytics symbology hourly...\n", " False\n", " 2021-06-07T09:52:56Z\n", - " None\n", - " \n", - " \n", - " 14\n", - " 2021-04-06T10:29:20Z\n", - " 2021-04-06T10:29:20Z\n", - " DSP\n", - " False\n", - " [ContentType, ResultCount]\n", - " rft-bulk-dsp-corax\n", - " Bulk feeds containing DSP data\n", " False\n", - " 2021-04-06T10:29:20Z\n", - " None\n", - " \n", - " \n", - " 15\n", - " 2020-07-15T10:08:11Z\n", - " 2020-07-15T10:08:11Z\n", + " 2021-06-07T09:52:56Z\n", + " starmine predictive analytics symbology hourly...\n", " SM_predictive_analytics\n", - " False\n", - " None\n", - " STARMINE_PREDICTIVE_ANALYTICS_SYMBOLOGY_HOURLY_RP\n", - " None\n", - " False\n", - " 2020-07-15T10:08:11Z\n", + " 2021-06-07T09:52:56Z\n", " None\n", " \n", " \n", " 16\n", - " 2021-08-27T07:29:57Z\n", - " 2021-08-27T07:29:57Z\n", - " SM_predictive_analytics\n", + " [DayOfWeek]\n", + " idps-scope3-prod\n", " False\n", - " None\n", - " STARMINE_PREDICTIVE_ANALYTICS_SMARTECON_POLLS_RP\n", - " None\n", + " 2022-07-05T15:29:12Z\n", " False\n", - " 2021-08-27T10:00:00Z\n", - " None\n", + " 2022-07-05T15:30:07Z\n", + " Bucket used by FTSE IDPS to publish Scope 3 data\n", + " FTSE IDPS\n", + " 2022-07-05T15:29:12Z\n", + " 2038-03-21T18:25:07Z\n", " \n", " \n", " 17\n", - " 2021-06-07T09:52:56Z\n", - " 2021-06-07T09:52:56Z\n", - " SM_predictive_analytics\n", + " [ResultCount, ContentType]\n", + " rft-bulk-dsp-corax\n", " False\n", - " None\n", - " STARMINE_PREDICTIVE_ANALYTICS_SYMBOLOGY_DAILY_...\n", - " starmine predictive analytics symbology daily ...\n", + " 2022-06-09T09:22:05Z\n", " False\n", - " 2021-06-07T09:52:56Z\n", + " 2021-04-06T10:29:20Z\n", + " Bulk feeds containing DSP data\n", + " DSP\n", + " 2021-04-06T10:29:20Z\n", " None\n", " \n", " \n", " 18\n", - " 2019-10-18T07:57:30Z\n", - " 2019-10-18T07:57:30Z\n", - " Refinitiv\n", - " False\n", - " [product, fitca_jobid]\n", - " a205843-fitca-production\n", " None\n", + " STARMINE_PREDICTIVE_ANALYTICS_SYMBOLOGY_HOURLY_RP\n", " False\n", - " 2019-10-18T07:57:30Z\n", + " 2020-07-15T10:08:11Z\n", + " False\n", + " 2020-07-15T10:08:11Z\n", + " None\n", + " SM_predictive_analytics\n", + " 2020-07-15T10:08:11Z\n", " None\n", " \n", " \n", " 19\n", - " 2021-06-07T09:52:55Z\n", - " 2021-06-07T09:52:55Z\n", - " SM_predictive_analytics\n", - " False\n", " None\n", - " STARMINE_PREDICTIVE_ANALYTICS_SYMBOLOGY_DAILY_...\n", - " starmine predictive analytics symbology daily ...\n", + " STARMINE_PREDICTIVE_ANALYTICS_SMARTECON_POLLS_RP\n", " False\n", - " 2021-06-07T09:52:55Z\n", + " 2021-08-27T07:29:57Z\n", + " False\n", + " 2021-08-27T10:00:00Z\n", + " None\n", + " SM_predictive_analytics\n", + " 2021-08-27T07:29:57Z\n", " None\n", " \n", " \n", " 20\n", - " 2020-02-10T18:10:38Z\n", - " 2020-02-10T18:10:38Z\n", - " SM_predictive_analytics\n", + " [frtbType, frtbVenueCode, frtbDate]\n", + " frtbcp-lch-bucket\n", " False\n", - " None\n", - " STARMINE_PREDICTIVE_ANALYTICS_ARM_AMERS\n", - " None\n", + " 2022-05-25T16:54:20Z\n", " False\n", - " 2020-02-10T18:10:38Z\n", - " None\n", + " 2022-05-25T17:30:00Z\n", + " files posted by LCH\n", + " refinitiv_frtbcp\n", + " 2022-05-25T16:54:20Z\n", + " 2099-07-08T16:40:00Z\n", " \n", " \n", " 21\n", - " 2020-04-10T03:00:17Z\n", - " 2020-04-03T03:00:44Z\n", - " BattleFin Link up\n", + " [frtbDate, frtbType, frtbVenueCode]\n", + " frtbcp-fxal-bucket\n", " False\n", - " None\n", - " linkUp-cfs-test\n", - " None\n", + " 2022-05-25T16:54:37Z\n", " False\n", - " 2020-04-03T03:00:44Z\n", - " None\n", + " 2022-05-25T17:30:00Z\n", + " files posted by FXAL\n", + " refinitiv_frtbcp\n", + " 2022-05-25T16:54:37Z\n", + " 2099-07-08T16:40:00Z\n", " \n", " \n", " 22\n", - " 2020-03-04T09:44:29Z\n", - " 2020-03-04T09:44:29Z\n", - " SM_predictive_analytics\n", - " False\n", - " None\n", - " STARMINE_PREDICTIVE_ANALYTICS_ARM_SYMBOLOGY\n", " None\n", + " STARMINE_PREDICTIVE_ANALYTICS_SYMBOLOGY_DAILY_...\n", + " False\n", + " 2021-06-07T09:52:56Z\n", " False\n", - " 2020-03-04T12:00:00Z\n", + " 2021-06-07T09:52:56Z\n", + " starmine predictive analytics symbology daily ...\n", + " SM_predictive_analytics\n", + " 2021-06-07T09:52:56Z\n", " None\n", " \n", " \n", " 23\n", - " 2021-01-26T10:07:42Z\n", - " 2021-01-26T10:07:42Z\n", - " CTP Derived Content\n", + " [DayOfWeek, Prefix]\n", + " RFR-TSRR-OUTPUT\n", " False\n", - " None\n", - " Commodities\n", - " CTP Derived Content\n", + " 2022-11-02T15:15:17Z\n", " False\n", - " 2021-01-26T10:07:42Z\n", + " 2022-11-02T14:50:25Z\n", + " To store output RFR file from SELF\n", + " SELF Application\n", + " 2022-11-02T14:50:25Z\n", " None\n", " \n", " \n", " 24\n", - " 2021-12-09T09:39:15Z\n", - " 2021-12-09T09:39:15Z\n", - " SM_predictive_analytics\n", + " [product, fitca_jobid]\n", + " a205843-fitca-production\n", " False\n", - " None\n", - " STARMINE_PREDICTIVE_ANALYTICS_SYMBOLOGY_HOURLY...\n", - " Starmine Symbology Hourly Research Pack CUSIP ...\n", + " 2019-10-18T07:57:30Z\n", " False\n", - " 2021-12-09T09:39:15Z\n", + " 2019-10-18T07:57:30Z\n", + " None\n", + " Refinitiv\n", + " 2019-10-18T07:57:30Z\n", " None\n", " \n", " \n", @@ -494,143 +494,143 @@ "" ], "text/plain": [ - " modified created publisherName \\\n", - "0 2020-10-23T12:17:11Z 2020-10-23T12:17:11Z SM_predictive_analytics \n", - "1 2020-09-11T04:53:13Z 2020-05-20T07:47:59Z test \n", - "2 2021-08-27T07:29:56Z 2021-08-27T07:29:56Z SM_predictive_analytics \n", - "3 2021-12-09T09:39:25Z 2021-12-09T09:39:25Z SM_predictive_analytics \n", - "4 2021-05-28T10:18:27Z 2021-05-28T10:18:27Z LSEG \n", - "5 2021-06-18T14:02:41Z 2021-06-18T14:02:41Z SM_predictive_analytics \n", - "6 2021-06-07T09:52:55Z 2021-06-07T09:52:55Z SM_predictive_analytics \n", - "7 2021-10-14T08:35:43Z 2021-10-14T08:35:43Z Refinitiv \n", - "8 2019-10-03T16:44:24Z 2019-06-18T09:48:14Z TickHistory \n", - "9 2020-08-18T08:49:02Z 2020-08-18T08:49:02Z ESG \n", - "10 2020-03-25T00:41:10Z 2020-03-25T00:41:10Z BattleFin \n", - "11 2021-08-27T07:29:56Z 2021-08-27T07:29:56Z SM_predictive_analytics \n", - "12 2021-06-11T15:13:13Z 2021-06-11T15:13:13Z GE-4459 \n", - "13 2021-06-07T09:52:56Z 2021-06-07T09:52:56Z SM_predictive_analytics \n", - "14 2021-04-06T10:29:20Z 2021-04-06T10:29:20Z DSP \n", - "15 2020-07-15T10:08:11Z 2020-07-15T10:08:11Z SM_predictive_analytics \n", - "16 2021-08-27T07:29:57Z 2021-08-27T07:29:57Z SM_predictive_analytics \n", - "17 2021-06-07T09:52:56Z 2021-06-07T09:52:56Z SM_predictive_analytics \n", - "18 2019-10-18T07:57:30Z 2019-10-18T07:57:30Z Refinitiv \n", - "19 2021-06-07T09:52:55Z 2021-06-07T09:52:55Z SM_predictive_analytics \n", - "20 2020-02-10T18:10:38Z 2020-02-10T18:10:38Z SM_predictive_analytics \n", - "21 2020-04-10T03:00:17Z 2020-04-03T03:00:44Z BattleFin Link up \n", - "22 2020-03-04T09:44:29Z 2020-03-04T09:44:29Z SM_predictive_analytics \n", - "23 2021-01-26T10:07:42Z 2021-01-26T10:07:42Z CTP Derived Content \n", - "24 2021-12-09T09:39:15Z 2021-12-09T09:39:15Z SM_predictive_analytics \n", + " attributes \\\n", + "0 None \n", + "1 None \n", + "2 None \n", + "3 None \n", + "4 [Team, Purpose, test] \n", + "5 None \n", + "6 None \n", + "7 [DayOfWeek] \n", + "8 None \n", + "9 None \n", + "10 [SubDomainName, DomainName] \n", + "11 [releaseTime, venue, depth, message_id, source... \n", + "12 [ContentType, ResultCount] \n", + "13 None \n", + "14 None \n", + "15 None \n", + "16 [DayOfWeek] \n", + "17 [ResultCount, ContentType] \n", + "18 None \n", + "19 None \n", + "20 [frtbType, frtbVenueCode, frtbDate] \n", + "21 [frtbDate, frtbType, frtbVenueCode] \n", + "22 None \n", + "23 [DayOfWeek, Prefix] \n", + "24 [product, fitca_jobid] \n", "\n", - " private attributes \\\n", - "0 False None \n", - "1 False None \n", - "2 False None \n", - "3 False None \n", - "4 False None \n", - "5 False None \n", - "6 False None \n", - "7 False [DomainName, SubDomainName] \n", - "8 False [releaseTime, md5, size, message_id, depth, ve... \n", - "9 False [ResultCount, ContentType] \n", - "10 False None \n", - "11 False None \n", - "12 False None \n", - "13 False None \n", - "14 False [ContentType, ResultCount] \n", - "15 False None \n", - "16 False None \n", - "17 False None \n", - "18 False [product, fitca_jobid] \n", - "19 False None \n", - "20 False None \n", - "21 False None \n", - "22 False None \n", - "23 False None \n", - "24 False None \n", + " name restricted \\\n", + "0 research-bulk-prod False \n", + "1 STARMINE_PREDICTIVE_ANALYTICS_SMARTECON_LIVE False \n", + "2 TestCFSBucketConcept False \n", + "3 STARMINE_PREDICTIVE_ANALYTICS_SMARTECON_POLLS_... False \n", + "4 Test_CFS_BucketTiming False \n", + "5 STARMINE_PREDICTIVE_ANALYTICS_SYMBOLOGY_DAILY_... False \n", + "6 rft-bulk-lseg False \n", + "7 bucket2_v1 False \n", + "8 STARMINE_PREDICTIVE_ANALYTICS_MATARGET_EMEA False \n", + "9 STARMINE_PREDICTIVE_ANALYTICS_SYMBOLOGY_HOURLY... False \n", + "10 daniel_demo_bucket_100 False \n", + "11 TICKHISTORY_VBD_NO_EMBARGO False \n", + "12 ESG False \n", + "13 STARMINE_PREDICTIVE_ANALYTICS_SMARTECON_POLLS_... False \n", + "14 a250269-prod-rdp-reports False \n", + "15 STARMINE_PREDICTIVE_ANALYTICS_SYMBOLOGY_HOURLY... False \n", + "16 idps-scope3-prod False \n", + "17 rft-bulk-dsp-corax False \n", + "18 STARMINE_PREDICTIVE_ANALYTICS_SYMBOLOGY_HOURLY_RP False \n", + "19 STARMINE_PREDICTIVE_ANALYTICS_SMARTECON_POLLS_RP False \n", + "20 frtbcp-lch-bucket False \n", + "21 frtbcp-fxal-bucket False \n", + "22 STARMINE_PREDICTIVE_ANALYTICS_SYMBOLOGY_DAILY_... False \n", + "23 RFR-TSRR-OUTPUT False \n", + "24 a205843-fitca-production False \n", "\n", - " name \\\n", - "0 STARMINE_PREDICTIVE_ANALYTICS_SMARTECON_LIVE \n", - "1 TestCFSBucketConcept \n", - "2 STARMINE_PREDICTIVE_ANALYTICS_SMARTECON_POLLS_... \n", - "3 STARMINE_PREDICTIVE_ANALYTICS_SYMBOLOGY_DAILY_... \n", - "4 rft-bulk-lseg \n", - "5 STARMINE_PREDICTIVE_ANALYTICS_MATARGET_EMEA \n", - "6 STARMINE_PREDICTIVE_ANALYTICS_SYMBOLOGY_HOURLY... \n", - "7 daniel_demo_bucket_100 \n", - "8 TICKHISTORY_VBD_NO_EMBARGO \n", - "9 ESG \n", - "10 production-linkup-battlefin \n", - "11 STARMINE_PREDICTIVE_ANALYTICS_SMARTECON_POLLS_... \n", - "12 a250269-prod-rdp-reports \n", - "13 STARMINE_PREDICTIVE_ANALYTICS_SYMBOLOGY_HOURLY... \n", - "14 rft-bulk-dsp-corax \n", - "15 STARMINE_PREDICTIVE_ANALYTICS_SYMBOLOGY_HOURLY_RP \n", - "16 STARMINE_PREDICTIVE_ANALYTICS_SMARTECON_POLLS_RP \n", - "17 STARMINE_PREDICTIVE_ANALYTICS_SYMBOLOGY_DAILY_... \n", - "18 a205843-fitca-production \n", - "19 STARMINE_PREDICTIVE_ANALYTICS_SYMBOLOGY_DAILY_... \n", - "20 STARMINE_PREDICTIVE_ANALYTICS_ARM_AMERS \n", - "21 linkUp-cfs-test \n", - "22 STARMINE_PREDICTIVE_ANALYTICS_ARM_SYMBOLOGY \n", - "23 Commodities \n", - "24 STARMINE_PREDICTIVE_ANALYTICS_SYMBOLOGY_HOURLY... \n", + " modified private availableFrom \\\n", + "0 2022-01-08T08:14:07Z False 2022-01-08T08:14:07Z \n", + "1 2020-10-23T12:17:11Z False 2020-10-23T12:17:11Z \n", + "2 2020-09-11T04:53:13Z False 2020-06-01T10:45:11Z \n", + "3 2021-08-27T07:29:56Z False 2021-08-27T10:00:00Z \n", + "4 2022-11-12T18:28:55Z False 2022-02-01T08:03:31Z \n", + "5 2021-12-09T09:39:25Z False 2021-12-09T09:39:25Z \n", + "6 2021-05-28T10:18:27Z False 2021-05-28T10:18:26Z \n", + "7 2022-09-14T04:36:29Z False 2022-09-14T04:36:29Z \n", + "8 2021-06-18T14:02:41Z False 2021-06-18T14:02:41Z \n", + "9 2021-06-07T09:52:55Z False 2021-06-07T09:52:55Z \n", + "10 2021-10-14T08:35:43Z False 2021-10-14T08:35:43Z \n", + "11 2022-12-11T09:31:09Z False 2000-01-01T01:00:00Z \n", + "12 2022-06-09T09:22:00Z False 2020-08-18T08:49:02Z \n", + "13 2021-08-27T07:29:56Z False 2021-08-27T10:00:00Z \n", + "14 2021-06-11T15:13:13Z False 2021-06-11T15:13:13Z \n", + "15 2021-06-07T09:52:56Z False 2021-06-07T09:52:56Z \n", + "16 2022-07-05T15:29:12Z False 2022-07-05T15:30:07Z \n", + "17 2022-06-09T09:22:05Z False 2021-04-06T10:29:20Z \n", + "18 2020-07-15T10:08:11Z False 2020-07-15T10:08:11Z \n", + "19 2021-08-27T07:29:57Z False 2021-08-27T10:00:00Z \n", + "20 2022-05-25T16:54:20Z False 2022-05-25T17:30:00Z \n", + "21 2022-05-25T16:54:37Z False 2022-05-25T17:30:00Z \n", + "22 2021-06-07T09:52:56Z False 2021-06-07T09:52:56Z \n", + "23 2022-11-02T15:15:17Z False 2022-11-02T14:50:25Z \n", + "24 2019-10-18T07:57:30Z False 2019-10-18T07:57:30Z \n", "\n", - " description restricted \\\n", - "0 None False \n", - "1 Test bucket for CFS UI False \n", - "2 None False \n", - "3 Starmine Symbology Daily Research Pack CUSIP a... False \n", - "4 Bulk feeds containing Revenue Synergies data f... False \n", - "5 Starmine MA Target EMEA files False \n", - "6 starmine predictive analytics symbology hourly... False \n", - "7 test False \n", - "8 None False \n", - "9 Bulk feeds containing ESG data False \n", - "10 None False \n", - "11 None False \n", - "12 RDP Usage Reporting API False \n", - "13 starmine predictive analytics symbology hourly... False \n", - "14 Bulk feeds containing DSP data False \n", - "15 None False \n", - "16 None False \n", - "17 starmine predictive analytics symbology daily ... False \n", - "18 None False \n", - "19 starmine predictive analytics symbology daily ... False \n", - "20 None False \n", - "21 None False \n", - "22 None False \n", - "23 CTP Derived Content False \n", - "24 Starmine Symbology Hourly Research Pack CUSIP ... False \n", + " description \\\n", + "0 Bucket for Research bulk prod \n", + "1 None \n", + "2 Test bucket for CFS UI \n", + "3 None \n", + "4 test \n", + "5 Starmine Symbology Daily Research Pack CUSIP a... \n", + "6 Bulk feeds containing Revenue Synergies data f... \n", + "7 test \n", + "8 Starmine MA Target EMEA files \n", + "9 starmine predictive analytics symbology hourly... \n", + "10 test \n", + "11 Includes Full Tick History Venue By Day files ... \n", + "12 Bulk feeds containing ESG data \n", + "13 None \n", + "14 RDP Usage Reporting API \n", + "15 starmine predictive analytics symbology hourly... \n", + "16 Bucket used by FTSE IDPS to publish Scope 3 data \n", + "17 Bulk feeds containing DSP data \n", + "18 None \n", + "19 None \n", + "20 files posted by LCH \n", + "21 files posted by FXAL \n", + "22 starmine predictive analytics symbology daily ... \n", + "23 To store output RFR file from SELF \n", + "24 None \n", "\n", - " availableFrom availableTo \n", - "0 2020-10-23T12:17:11Z None \n", - "1 2020-06-01T10:45:11Z 9999-12-30T00:00:00Z \n", - "2 2021-08-27T10:00:00Z None \n", - "3 2021-12-09T09:39:25Z None \n", - "4 2021-05-28T10:18:26Z None \n", - "5 2021-06-18T14:02:41Z None \n", - "6 2021-06-07T09:52:55Z None \n", - "7 2021-10-14T08:35:43Z None \n", - "8 2000-01-01T01:00:00Z 2038-01-19T03:14:07Z \n", - "9 2020-08-18T08:49:02Z None \n", - "10 2020-03-25T00:41:10Z 2022-03-20T18:25:07Z \n", - "11 2021-08-27T10:00:00Z None \n", - "12 2021-06-11T15:13:13Z None \n", - "13 2021-06-07T09:52:56Z None \n", - "14 2021-04-06T10:29:20Z None \n", - "15 2020-07-15T10:08:11Z None \n", - "16 2021-08-27T10:00:00Z None \n", - "17 2021-06-07T09:52:56Z None \n", - "18 2019-10-18T07:57:30Z None \n", - "19 2021-06-07T09:52:55Z None \n", - "20 2020-02-10T18:10:38Z None \n", - "21 2020-04-03T03:00:44Z None \n", - "22 2020-03-04T12:00:00Z None \n", - "23 2021-01-26T10:07:42Z None \n", - "24 2021-12-09T09:39:15Z None " + " publisherName created availableTo \n", + "0 Refinitiv 2022-01-08T08:14:07Z None \n", + "1 SM_predictive_analytics 2020-10-23T12:17:11Z None \n", + "2 test 2020-05-20T07:47:59Z 9999-12-30T00:00:00Z \n", + "3 SM_predictive_analytics 2021-08-27T07:29:56Z None \n", + "4 test 2022-01-11T10:32:00Z None \n", + "5 SM_predictive_analytics 2021-12-09T09:39:25Z None \n", + "6 LSEG 2021-05-28T10:18:27Z None \n", + "7 Viking 2022-09-14T04:36:29Z 9999-12-30T00:00:00Z \n", + "8 SM_predictive_analytics 2021-06-18T14:02:41Z None \n", + "9 SM_predictive_analytics 2021-06-07T09:52:55Z None \n", + "10 Refinitiv 2021-10-14T08:35:43Z None \n", + "11 TickHistory 2019-06-18T09:48:14Z 2038-01-19T03:14:07Z \n", + "12 ESG 2020-08-18T08:49:02Z None \n", + "13 SM_predictive_analytics 2021-08-27T07:29:56Z None \n", + "14 GE-4459 2021-06-11T15:13:13Z None \n", + "15 SM_predictive_analytics 2021-06-07T09:52:56Z None \n", + "16 FTSE IDPS 2022-07-05T15:29:12Z 2038-03-21T18:25:07Z \n", + "17 DSP 2021-04-06T10:29:20Z None \n", + "18 SM_predictive_analytics 2020-07-15T10:08:11Z None \n", + "19 SM_predictive_analytics 2021-08-27T07:29:57Z None \n", + "20 refinitiv_frtbcp 2022-05-25T16:54:20Z 2099-07-08T16:40:00Z \n", + "21 refinitiv_frtbcp 2022-05-25T16:54:37Z 2099-07-08T16:40:00Z \n", + "22 SM_predictive_analytics 2021-06-07T09:52:56Z None \n", + "23 SELF Application 2022-11-02T14:50:25Z None \n", + "24 Refinitiv 2019-10-18T07:57:30Z None " ] }, - "execution_count": 4, + "execution_count": 3, "metadata": {}, "output_type": "execute_result" } @@ -675,52 +675,40 @@ " \n", " \n", " \n", - " modified\n", - " created\n", - " publisherName\n", - " private\n", " attributes\n", " name\n", - " description\n", " restricted\n", + " modified\n", + " private\n", " availableFrom\n", + " description\n", + " publisherName\n", + " created\n", " \n", " \n", " \n", " \n", " 0\n", - " 2020-08-18T08:49:02Z\n", - " 2020-08-18T08:49:02Z\n", - " ESG\n", + " [ContentType, ResultCount]\n", + " rft-bulk-esg\n", " False\n", - " [ResultCount, ContentType]\n", - " ESG\n", - " Bulk feeds containing ESG data\n", + " 2022-06-09T09:22:07Z\n", " False\n", - " 2020-08-18T08:49:02Z\n", - " \n", - " \n", - " 1\n", " 2021-06-15T15:24:09Z\n", - " 2021-06-15T15:24:09Z\n", - " ESG\n", - " False\n", - " [ResultCount, ContentType]\n", - " rft-bulk-esg\n", " Bulk feeds containing ESG data\n", - " False\n", + " ESG\n", " 2021-06-15T15:24:09Z\n", " \n", " \n", - " 2\n", - " 2021-11-14T10:30:05Z\n", - " 2021-11-14T10:30:05Z\n", - " edpbulkdev@refinitiv.com\n", - " False\n", + " 1\n", " [ContentType, ResultCount]\n", " bulk-ESG\n", - " CFS bucket created automatically in bulk core\n", " False\n", + " 2022-06-09T09:22:17Z\n", + " False\n", + " 2021-11-14T10:30:05Z\n", + " CFS bucket created automatically in bulk core\n", + " edpbulkdev@refinitiv.com\n", " 2021-11-14T10:30:05Z\n", " \n", " \n", @@ -728,25 +716,21 @@ "" ], "text/plain": [ - " modified created publisherName \\\n", - "0 2020-08-18T08:49:02Z 2020-08-18T08:49:02Z ESG \n", - "1 2021-06-15T15:24:09Z 2021-06-15T15:24:09Z ESG \n", - "2 2021-11-14T10:30:05Z 2021-11-14T10:30:05Z edpbulkdev@refinitiv.com \n", + " attributes name restricted modified \\\n", + "0 [ContentType, ResultCount] rft-bulk-esg False 2022-06-09T09:22:07Z \n", + "1 [ContentType, ResultCount] bulk-ESG False 2022-06-09T09:22:17Z \n", "\n", - " private attributes name \\\n", - "0 False [ResultCount, ContentType] ESG \n", - "1 False [ResultCount, ContentType] rft-bulk-esg \n", - "2 False [ContentType, ResultCount] bulk-ESG \n", + " private availableFrom \\\n", + "0 False 2021-06-15T15:24:09Z \n", + "1 False 2021-11-14T10:30:05Z \n", "\n", - " description restricted \\\n", - "0 Bulk feeds containing ESG data False \n", - "1 Bulk feeds containing ESG data False \n", - "2 CFS bucket created automatically in bulk core False \n", + " description publisherName \\\n", + "0 Bulk feeds containing ESG data ESG \n", + "1 CFS bucket created automatically in bulk core edpbulkdev@refinitiv.com \n", "\n", - " availableFrom \n", - "0 2020-08-18T08:49:02Z \n", - "1 2021-06-15T15:24:09Z \n", - "2 2021-11-14T10:30:05Z " + " created \n", + "0 2021-06-15T15:24:09Z \n", + "1 2021-11-14T10:30:05Z " ] }, "execution_count": 5, @@ -755,7 +739,7 @@ } ], "source": [ - "response = cfs.buckets.Definition('esg').get_data()\n", + "response = cfs.buckets.Definition('bulk-ESG').get_data()\n", "response.data.df" ] }, @@ -772,7 +756,7 @@ "metadata": {}, "outputs": [], "source": [ - "response = cfs.buckets.Definition('esg').get_data()\n", + "response = cfs.buckets.Definition('bulk-ESG').get_data()\n", "\n", "for bucket in response.data.buckets:\n", " print(bucket)\n", @@ -798,7 +782,7 @@ }, { "cell_type": "code", - "execution_count": 6, + "execution_count": 10, "metadata": {}, "outputs": [ { @@ -822,650 +806,650 @@ " \n", " \n", " \n", - " availableFrom\n", - " status\n", + " bucketName\n", + " attributes\n", " name\n", - " created\n", - " modified\n", - " files\n", - " packageId\n", + " contentTo\n", " id\n", - " attributes\n", - " bucketName\n", + " files\n", " contentFrom\n", - " contentTo\n", + " modified\n", + " packageId\n", + " availableFrom\n", " numFiles\n", + " created\n", " availableTo\n", + " status\n", " \n", " \n", " \n", " \n", " 0\n", - " 2021-12-09T10:46:03Z\n", - " READY\n", - " RFT-ESG-Symbology-InstrumentQuote-Init-2021-12-09\n", - " 2021-12-09T10:46:03Z\n", - " 2021-12-09T10:47:06Z\n", - " [4d30-dd3b-b06ee43c-ab81-79888df15611]\n", - " 41d7-a3e2-21d38219-9052-85b8f7dadb3c\n", - " 4003-1870-f5f80de9-a9a7-dcbe0ff51736\n", - " [{'name': 'ContentType', 'value': 'Symbology I...\n", - " ESG\n", - " 1970-01-01T00:00:00Z\n", - " 2021-12-09T10:30:00Z\n", + " bulk-ESG\n", + " [{'name': 'ContentType', 'value': 'ESG Scores'}]\n", + " Bulk-ESG-Global-Scores-Full-v1-Jsonl-Delta-202...\n", + " 2022-12-11T16:25:00Z\n", + " 4010-5730-b53a7546-ad9a-0ae591a4fed1\n", + " [422b-b545-a0431e70-b15c-8d0fad346456]\n", + " 2022-12-04T16:25:00Z\n", + " 2022-12-11T16:35:16Z\n", + " 4f1d-c1e4-b448e23b-a51a-e4315800de31\n", + " 2022-12-11T16:34:42Z\n", " 1\n", - " 2021-12-23T10:46:03Z\n", + " 2022-12-11T16:34:42Z\n", + " 2022-12-25T16:34:42Z\n", + " READY\n", " \n", " \n", " 1\n", - " 2021-12-13T00:37:50Z\n", - " READY\n", - " RFT-ESG-Raw-Full-SchemeB-Social-Delta-2021-12-13\n", - " 2021-12-13T00:37:50Z\n", - " 2021-12-13T00:43:13Z\n", - " [42c3-3ab5-79961011-ae24-cb6fcde7a348]\n", - " 4b6c-def9-dd1c991c-8535-6f9a61df9fc8\n", - " 40c9-19c5-2e5f4dbe-aa10-61f298b603bc\n", - " [{'name': 'ResultCount', 'value': '51453'}, {'...\n", - " ESG\n", - " 2021-12-05T16:05:00Z\n", - " 2021-12-13T00:14:12Z\n", + " bulk-ESG\n", + " [{'name': 'ContentType', 'value': 'ESG EU BMR'}]\n", + " Bulk-ESG-Global-EU-BMR-v1-Jsonl-Init-2022-12-0...\n", + " 2022-12-04T15:55:00Z\n", + " 405e-257f-8f555107-90ea-04a4dadeaa86\n", + " [4bf4-9a6a-69aec78b-b22d-a2631977a6c9]\n", + " 1970-01-01T00:00:00Z\n", + " 2022-12-04T16:05:12Z\n", + " 48d4-e278-215dca78-bb4a-bca14a86a8f5\n", + " 2022-12-04T16:04:17Z\n", " 1\n", - " 2021-12-27T00:37:49Z\n", + " 2022-12-04T16:04:17Z\n", + " 2022-12-18T16:04:17Z\n", + " READY\n", " \n", " \n", " 2\n", - " 2021-12-05T16:15:58Z\n", - " READY\n", - " RFT-ESG-Raw-Full-SchemeB-Social-Init-2021-12-05\n", - " 2021-12-05T16:15:58Z\n", - " 2021-12-05T16:25:49Z\n", - " [4592-58c5-c2b0a415-8596-f4e82bb0f9f4]\n", - " 4b6c-def9-dd1c991c-8535-6f9a61df9fc8\n", - " 4121-c09e-fece32e1-90b3-fd1a4a389f15\n", - " [{'name': 'ResultCount', 'value': '107765'}, {...\n", - " ESG\n", - " 1970-01-01T00:00:00Z\n", - " 2021-12-05T16:05:00Z\n", + " bulk-ESG\n", + " [{'name': 'ResultCount', 'value': '69943'}, {'...\n", + " Bulk-ESG-Global-Sources-Full-v1-Jsonl-Delta-20...\n", + " 2022-12-04T16:45:00Z\n", + " 405e-a8f2-4e0bfcc3-9014-4218f081a539\n", + " [4a48-2280-a32705a0-9e27-34d343d4afad]\n", + " 2022-11-27T16:45:00Z\n", + " 2022-12-04T16:54:46Z\n", + " 43ac-6749-947dd136-bad9-f4d575af2253\n", + " 2022-12-04T16:54:20Z\n", " 1\n", - " 2021-12-19T16:15:58Z\n", + " 2022-12-04T16:54:20Z\n", + " 2022-12-18T16:54:19Z\n", + " READY\n", " \n", " \n", " 3\n", - " 2021-12-13T00:30:43Z\n", + " bulk-ESG\n", + " [{'name': 'ContentType', 'value': 'Symbology I...\n", + " Bulk-ESG-Global-Symbology-ISIN-v1-Jsonl-Init-2...\n", + " 2022-12-04T10:25:00Z\n", + " 408f-0df2-ee2e4fda-a333-ea55c1d19a6a\n", + " [4508-4e1f-d52415e1-be65-f1d323d21b59]\n", + " 1970-01-01T00:00:00Z\n", + " 2022-12-04T10:34:45Z\n", + " 444f-4895-36da1f18-9930-c3d6a89fac7c\n", + " 2022-12-04T10:34:42Z\n", + " 1\n", + " 2022-12-04T10:34:42Z\n", + " 2023-01-04T10:34:42Z\n", " READY\n", - " RFT-ESG-Raw-Wealth-Standard-delta-2021-12-13\n", - " 2021-12-13T00:30:43Z\n", - " 2021-12-13T00:31:45Z\n", - " [4b57-c2d4-4cd1d3aa-9fa7-00c4593f90ac, 4ee0-b7...\n", - " 4c3a-aca4-0cc88a33-b599-9647b1fb65ac\n", - " 4163-6c7f-d2f6b364-98d6-d0aa7a002f5f\n", - " [{'name': 'ResultCount', 'value': '28314'}, {'...\n", - " ESG\n", - " 2021-12-05T17:45:00Z\n", - " 2021-12-13T00:14:12Z\n", - " 2\n", - " 2022-01-13T00:30:43Z\n", " \n", " \n", " 4\n", - " 2021-12-05T16:08:13Z\n", - " READY\n", - " RFT-ESG-Raw-Full-SchemeA-Init-2021-12-05\n", - " 2021-12-05T16:08:13Z\n", - " 2021-12-05T16:11:59Z\n", - " [413a-3108-11690470-94b8-67c5c415c5e0, 453e-26...\n", - " 4e6a-ca79-af368ff5-931d-d2781b1cdb85\n", - " 41c1-0049-1579c97f-a761-1baae507517c\n", - " [{'name': 'ResultCount', 'value': '107765'}, {...\n", - " ESG\n", + " bulk-ESG\n", + " [{'name': 'ContentType', 'value': 'Symbology S...\n", + " Bulk-ESG-Global-Symbology-SEDOL-v1-Jsonl-Init-...\n", + " 2022-11-20T10:25:00Z\n", + " 40b0-5165-ec200230-84f9-09d527c460c2\n", + " [43df-4283-914e75ba-bf62-9ff0b391944f]\n", " 1970-01-01T00:00:00Z\n", - " 2021-12-05T15:55:00Z\n", - " 7\n", - " 2021-12-19T16:08:12Z\n", + " 2022-11-20T10:47:44Z\n", + " 48ff-7e86-20bd08b2-8bbf-ee1b93395d59\n", + " 2022-11-20T10:47:35Z\n", + " 1\n", + " 2022-11-20T10:47:35Z\n", + " 2022-12-20T10:47:35Z\n", + " READY\n", " \n", " \n", " 5\n", - " 2021-11-21T19:25:21Z\n", - " READY\n", - " RFT-ESG-Scores-Wealth-Standard-delta-2021-11-21\n", - " 2021-11-21T19:25:21Z\n", - " 2021-11-21T19:25:26Z\n", - " [4a93-33a1-daec9217-a23b-948a7a802bb4]\n", - " 4bcc-4602-0a57ebb2-baf0-1fc9825e76b6\n", - " 425f-9323-42c19562-91c3-91362c82d256\n", - " [{'name': 'ResultCount', 'value': '28076'}, {'...\n", - " ESG\n", - " 2021-11-15T00:20:25Z\n", - " 2021-11-21T17:15:00Z\n", + " bulk-ESG\n", + " [{'name': 'ContentType', 'value': 'ESG Raw Cur...\n", + " Bulk-ESG-Global-Raw-Current-Limited-SchemeB-v1...\n", + " 2022-12-11T17:35:00Z\n", + " 40e8-8013-8efa3636-8820-1a94fe627291\n", + " [495a-b597-10aa1b9f-a7d1-73f8f9ce6b46]\n", + " 2022-12-04T17:35:00Z\n", + " 2022-12-11T17:42:36Z\n", + " 448b-4cc8-301b4e6a-9f6e-a0935eb8454b\n", + " 2022-12-11T17:42:24Z\n", " 1\n", - " 2021-12-21T19:25:21Z\n", + " 2022-12-11T17:42:24Z\n", + " 2022-12-25T17:42:24Z\n", + " READY\n", " \n", " \n", " 6\n", - " 2021-12-13T00:31:10Z\n", - " READY\n", - " RFT-ESG-Scores-Wealth-Standard-init-2021-12-13\n", - " 2021-12-13T00:31:11Z\n", - " 2021-12-13T00:31:17Z\n", - " [4860-4d47-8d488a8b-a081-ce9ee132024b]\n", - " 4bcc-4602-0a57ebb2-baf0-1fc9825e76b6\n", - " 4293-91ad-6641a5e9-aae6-75099bc18905\n", - " [{'name': 'ResultCount', 'value': '32382'}, {'...\n", - " ESG\n", - " 1970-01-01T00:00:00Z\n", - " 2021-12-13T00:14:12Z\n", + " bulk-ESG\n", + " [{'name': 'ContentType', 'value': 'ESG Raw Cur...\n", + " Bulk-ESG-Global-Raw-Current-Limited-SchemeB-v1...\n", + " 2022-12-04T17:35:00Z\n", + " 40f7-9cd9-ff2e3c7d-819d-6e082ec8071e\n", + " [4ca6-efb9-a46da6da-994c-ed11da669e2e]\n", + " 2022-11-27T17:35:00Z\n", + " 2022-12-04T17:42:29Z\n", + " 448b-4cc8-301b4e6a-9f6e-a0935eb8454b\n", + " 2022-12-04T17:42:14Z\n", " 1\n", - " 2022-01-13T00:31:10Z\n", + " 2022-12-04T17:42:14Z\n", + " 2022-12-18T17:42:14Z\n", + " READY\n", " \n", " \n", " 7\n", - " 2021-11-18T10:32:49Z\n", - " READY\n", - " RFT-ESG-Symbology-ISIN-Init-2021-11-18\n", - " 2021-11-18T10:32:49Z\n", - " 2021-11-18T10:32:52Z\n", - " [41f2-f04a-9a9a9f91-bd9f-3a327e91c4d9]\n", - " 48f0-8bdd-28d8432a-aae3-928067b0f64e\n", - " 429f-8ac4-267dfb5b-99ae-8e86245e0fb8\n", - " [{'name': 'ContentType', 'value': 'Symbology I...\n", - " ESG\n", + " bulk-ESG\n", + " [{'name': 'ContentType', 'value': 'ESG Scores'}]\n", + " Bulk-ESG-Global-Scores-Wealth-Standard-v1-Json...\n", + " 2022-12-04T17:15:00Z\n", + " 4116-3460-006487a2-b7ce-6a8f2d659335\n", + " [483e-a433-194323d0-9d51-e21c9011dae1]\n", " 1970-01-01T00:00:00Z\n", - " 2021-11-18T10:25:00Z\n", + " 2022-12-04T17:24:42Z\n", + " 4d07-921a-7337a7cc-a291-e5b049ddf4dc\n", + " 2022-12-04T17:24:17Z\n", " 1\n", - " 2021-12-18T10:32:49Z\n", + " 2022-12-04T17:24:17Z\n", + " 2022-12-18T17:24:17Z\n", + " READY\n", " \n", " \n", " 8\n", - " 2021-12-09T10:55:17Z\n", - " READY\n", - " RFT-ESG-Symbology-InstrumentQuote-Delta-2021-1...\n", - " 2021-12-09T10:55:17Z\n", - " 2021-12-09T10:55:57Z\n", - " [4c34-00cb-fc96a541-930e-6a451c95d6c5]\n", - " 4ff9-00c0-b0d9c39c-bf9c-3dcb2050fdbd\n", - " 42cb-2fde-346a2ada-b77e-5c85554fba70\n", - " [{'name': 'ContentType', 'value': 'Symbology I...\n", - " ESG\n", - " 2021-12-02T10:40:00Z\n", - " 2021-12-09T10:40:00Z\n", + " bulk-ESG\n", + " [{'name': 'ContentType', 'value': 'ESG Scores'}]\n", + " Bulk-ESG-Global-Scores-Full-v1-Jsonl-Delta-202...\n", + " 2022-12-04T16:25:00Z\n", + " 412d-82bd-e5a10723-834a-1e9298e5e22e\n", + " [42af-2bd7-5d915c41-8802-871fbda73d07]\n", + " 2022-11-27T16:25:00Z\n", + " 2022-12-04T16:35:10Z\n", + " 4f1d-c1e4-b448e23b-a51a-e4315800de31\n", + " 2022-12-04T16:34:35Z\n", " 1\n", - " 2021-12-23T10:55:17Z\n", + " 2022-12-04T16:34:35Z\n", + " 2022-12-18T16:34:35Z\n", + " READY\n", " \n", " \n", " 9\n", - " 2021-11-21T20:12:49Z\n", + " bulk-ESG\n", + " [{'name': 'ContentType', 'value': 'Symbology I...\n", + " Bulk-ESG-Global-Symbology-InstrumentQuote-v1-J...\n", + " 2022-12-04T10:25:00Z\n", + " 414d-b6a5-d2cf1498-9b8a-dc657ee67e22\n", + " [4ad2-d94b-944646e5-8001-3b22af8386a7]\n", + " 1970-01-01T00:00:00Z\n", + " 2022-12-04T10:49:12Z\n", + " 4dc5-4efa-bf8327db-8997-57899e9833cc\n", + " 2022-12-04T10:48:04Z\n", + " 1\n", + " 2022-12-04T10:48:04Z\n", + " 2022-12-18T10:48:04Z\n", " READY\n", - " RFT-ESG-Raw-Wealth-Standard-delta-2021-11-21\n", - " 2021-11-21T20:12:49Z\n", - " 2021-11-21T20:13:46Z\n", - " [447c-afc7-3507e47b-81f2-41a6e0df20b7, 4be0-96...\n", - " 4c3a-aca4-0cc88a33-b599-9647b1fb65ac\n", - " 430c-8a44-66efaf0d-b224-926e6ed588e4\n", - " [{'name': 'ContentType', 'value': 'ESG Raw Wea...\n", - " ESG\n", - " 2021-11-15T00:20:25Z\n", - " 2021-11-21T17:45:00Z\n", - " 2\n", - " 2021-12-21T20:12:48Z\n", " \n", " \n", " 10\n", - " 2021-12-13T00:44:36Z\n", - " READY\n", - " RFT-ESG-Raw-Full-SchemeB-Env-Init-2021-12-13\n", - " 2021-12-13T00:44:36Z\n", - " 2021-12-13T00:47:13Z\n", - " [42e9-c4c6-7eb48883-bf70-fe7472f7a066, 480d-06...\n", - " 4b6c-def9-dd1c991c-8535-6f9a61df9fc8\n", - " 432a-6938-8c47bfa5-900f-d8f84d874cdf\n", - " [{'name': 'ResultCount', 'value': '107883'}, {...\n", - " ESG\n", + " bulk-ESG\n", + " [{'name': 'ContentType', 'value': 'ESG Raw Wea...\n", + " Bulk-ESG-Global-Raw-Wealth-Standard-v1-Jsonl-I...\n", + " 2022-12-11T17:45:00Z\n", + " 4168-b1de-d9d34dac-87a8-36e0ee3c5198\n", + " [4564-0ef0-983e8e7d-8164-8bef2fd70ab0, 4cc1-11...\n", " 1970-01-01T00:00:00Z\n", - " 2021-12-13T00:14:12Z\n", + " 2022-12-11T18:00:03Z\n", + " 49ff-c9ea-60379028-9a3b-1288eb7e1bde\n", + " 2022-12-11T17:53:55Z\n", " 3\n", - " 2021-12-27T00:44:35Z\n", + " 2022-12-11T17:53:55Z\n", + " 2022-12-25T17:53:55Z\n", + " READY\n", " \n", " \n", " 11\n", - " 2021-12-13T01:58:40Z\n", - " READY\n", - " RFT-ESG-EU-BMR-init-2021-12-13T01:57:16.943Z\n", - " 2021-12-13T01:58:40Z\n", - " 2021-12-13T01:58:52Z\n", - " [4db7-b552-f8aaef8d-a302-739d210afb98]\n", - " 4a74-237d-78a6e194-90d8-a80c304b110b\n", - " 43c4-f9c3-c45a4f6a-8866-39f7321526ed\n", - " [{'name': 'ContentType', 'value': 'ESG EU BMR'}]\n", - " ESG\n", + " bulk-ESG\n", + " [{'name': 'ContentType', 'value': 'ESG Raw Cur...\n", + " Bulk-ESG-Global-Raw-Current-Limited-SchemeA-v1...\n", + " 2022-12-11T17:25:00Z\n", + " 417d-a89a-1f8c30bc-b3a9-ae8f74310a87\n", + " [48e0-d10c-c5cb58db-93b0-3b0d558e274b]\n", " 1970-01-01T00:00:00Z\n", - " 2021-12-13T01:55:00Z\n", + " 2022-12-11T17:33:01Z\n", + " 46d7-4fb6-80fbaeda-a5e1-5d6b193f1386\n", + " 2022-12-11T17:32:49Z\n", " 1\n", - " 2021-12-27T01:58:39Z\n", + " 2022-12-11T17:32:49Z\n", + " 2022-12-25T17:32:49Z\n", + " READY\n", " \n", " \n", " 12\n", - " 2021-12-16T10:47:21Z\n", - " READY\n", - " RFT-ESG-Symbology-ISIN-Delta-2021-12-16\n", - " 2021-12-16T10:47:21Z\n", - " 2021-12-16T10:47:23Z\n", - " [464e-2b23-73ab6dfd-9751-954231d90055]\n", - " 4038-cfc9-f5fa1794-9c65-5ead51a3d9fb\n", - " 43f1-6e73-00458f7f-bf95-af72045604d0\n", - " [{'name': 'ContentType', 'value': 'Symbology I...\n", - " ESG\n", - " 2021-12-09T10:40:00Z\n", - " 2021-12-16T10:40:00Z\n", + " bulk-ESG\n", + " [{'name': 'ContentType', 'value': 'ESG Raw Cur...\n", + " Bulk-ESG-Global-Raw-Current-Limited-SchemeB-v1...\n", + " 2022-12-11T17:35:00Z\n", + " 418d-e9c1-aeaa4a08-8e87-79340c2f0571\n", + " [4a01-7f40-c264e30b-9c78-795bc3ee9857]\n", + " 2022-12-04T17:35:00Z\n", + " 2022-12-11T17:42:36Z\n", + " 448b-4cc8-301b4e6a-9f6e-a0935eb8454b\n", + " 2022-12-11T17:42:22Z\n", " 1\n", - " 2021-12-30T10:47:20Z\n", + " 2022-12-11T17:42:22Z\n", + " 2022-12-25T17:42:22Z\n", + " READY\n", " \n", " \n", " 13\n", - " 2021-12-05T16:52:26Z\n", + " bulk-ESG\n", + " [{'name': 'ContentType', 'value': 'ESG Raw Ful...\n", + " Bulk-ESG-Global-Raw-Full-SchemeB-v1-Env-Csv-In...\n", + " 2022-12-04T16:05:00Z\n", + " 41bf-d72f-13a571ba-82a3-3594ebc36474\n", + " [41c1-e4c6-168ece18-a103-d74c9afd498c, 4243-f7...\n", + " 1970-01-01T00:00:00Z\n", + " 2022-12-04T16:53:27Z\n", + " 4288-ebb6-93372235-acb2-89882a826af1\n", + " 2022-12-04T16:39:48Z\n", + " 5\n", + " 2022-12-04T16:39:48Z\n", + " 2022-12-18T16:39:47Z\n", " READY\n", - " RFT-ESG-Sources-Full-Delta-2021-12-05\n", - " 2021-12-05T16:52:26Z\n", - " 2021-12-05T16:52:30Z\n", - " [4904-c9ff-8190b54a-a33f-de9ce8e605e7]\n", - " 4308-bc80-2054dc20-83db-6224911311d0\n", - " 43fa-d5ef-750ab58c-9883-270e6804c8b1\n", - " [{'name': 'ContentType', 'value': 'ESG Sources...\n", - " ESG\n", - " 2021-11-29T16:45:00Z\n", - " 2021-12-05T16:45:00Z\n", - " 1\n", - " 2021-12-19T16:52:26Z\n", " \n", " \n", " 14\n", - " 2021-11-21T22:23:49Z\n", - " READY\n", - " RFT-ESG-Raw-Current-SchemeA-init-2021-11-21\n", - " 2021-11-21T22:23:49Z\n", - " 2021-11-21T22:24:24Z\n", - " [45ef-a38a-405faa19-9879-03ba8f712ac4]\n", - " 4c62-b05c-2a529a9d-81b3-224eacd50379\n", - " 440c-32a6-6d3aaca5-b6ba-3fcb08e5c6b0\n", - " [{'name': 'ContentType', 'value': 'ESG Raw Cur...\n", - " ESG\n", + " bulk-ESG\n", + " [{'name': 'ContentType', 'value': 'ESG Scores'}]\n", + " Bulk-ESG-Global-Scores-Full-v1-Csv-Init-2022-1...\n", + " 2022-12-04T16:25:00Z\n", + " 41c6-ebe3-38e9fd36-a5df-79427c65d06f\n", + " [4703-2c75-85deaa5c-80e4-5cb660a495f6]\n", " 1970-01-01T00:00:00Z\n", - " 2021-11-21T17:25:00Z\n", + " 2022-12-04T16:36:42Z\n", + " 4f1d-c1e4-b448e23b-a51a-e4315800de31\n", + " 2022-12-04T16:36:06Z\n", " 1\n", - " 2021-12-21T22:23:49Z\n", + " 2022-12-04T16:36:06Z\n", + " 2022-12-18T16:36:06Z\n", + " READY\n", " \n", " \n", " 15\n", - " 2021-12-05T17:44:18Z\n", - " READY\n", - " RFT-ESG-Raw-Current-SchemeB-Env-Delta-2021-12-05\n", - " 2021-12-05T17:44:18Z\n", - " 2021-12-05T17:44:43Z\n", - " [40b6-11e1-2dbeb077-be14-a68548daf8ac]\n", - " 4cbb-e27e-318835e3-bad7-dee7a0ebc3b0\n", - " 4437-fa4a-6f8097bd-a8f1-3dd665183559\n", - " [{'name': 'ResultCount', 'value': '10789'}, {'...\n", - " ESG\n", - " 2021-11-29T17:35:00Z\n", - " 2021-12-05T17:35:00Z\n", + " bulk-ESG\n", + " [{'name': 'ContentType', 'value': 'ESG Raw Ful...\n", + " Bulk-ESG-Global-Raw-Full-SchemeB-v1-Env-Jsonl-...\n", + " 2022-12-04T16:05:00Z\n", + " 41e7-7bd1-9c9bf631-aa1f-dc3331b3760b\n", + " [4666-a190-39f102cd-820d-5d7942be6be9]\n", + " 2022-11-27T16:05:00Z\n", + " 2022-12-04T16:39:54Z\n", + " 4288-ebb6-93372235-acb2-89882a826af1\n", + " 2022-12-04T16:28:04Z\n", " 1\n", - " 2022-01-05T17:44:18Z\n", + " 2022-12-04T16:28:05Z\n", + " 2022-12-18T16:28:04Z\n", + " READY\n", " \n", " \n", " 16\n", - " 2021-12-16T10:47:36Z\n", - " READY\n", - " RFT-ESG-Symbology-Cusip-Delta-2021-12-16\n", - " 2021-12-16T10:47:36Z\n", - " 2021-12-16T10:47:38Z\n", - " [4086-df75-acb1ca30-8790-7e63533b2e7b]\n", - " 4e22-f95e-157e6f14-89da-51b20f3f04c0\n", - " 4439-9c2a-8a5594cf-831d-cd354f744a24\n", + " bulk-ESG\n", " [{'name': 'ContentType', 'value': 'Symbology C...\n", - " ESG\n", - " 2021-12-09T10:40:00Z\n", - " 2021-12-16T10:40:00Z\n", + " Bulk-ESG-Global-Symbology-Cusip-v1-Jsonl-Delta...\n", + " 2022-12-04T10:25:00Z\n", + " 41ef-c2eb-eba6994d-9d92-4f9085f2b9e9\n", + " [408a-89d6-d7ba90f0-a76d-04cb6d3c72e9]\n", + " 2022-11-27T10:25:00Z\n", + " 2022-12-04T10:35:07Z\n", + " 442c-d526-65702a11-b6b2-54f7d4f3cd7f\n", + " 2022-12-04T10:35:06Z\n", " 1\n", - " 2021-12-30T10:47:36Z\n", + " 2022-12-04T10:35:06Z\n", + " 2022-12-18T10:35:05Z\n", + " READY\n", " \n", " \n", " 17\n", - " 2021-12-16T10:55:37Z\n", + " bulk-ESG\n", + " [{'name': 'ContentType', 'value': 'ESG Raw Wea...\n", + " Bulk-ESG-Global-Raw-Wealth-Standard-v1-Csv-Del...\n", + " 2022-12-04T17:45:00Z\n", + " 420c-f914-6fe57811-a36b-48e7db859377\n", + " [44b2-b5bb-ed5efc0a-91ba-1929e20e29f2, 4900-38...\n", + " 2022-11-27T17:45:00Z\n", + " 2022-12-04T17:58:32Z\n", + " 49ff-c9ea-60379028-9a3b-1288eb7e1bde\n", + " 2022-12-04T17:55:35Z\n", + " 4\n", + " 2022-12-04T17:55:35Z\n", + " 2022-12-18T17:55:34Z\n", " READY\n", - " RFT-ESG-Symbology-InstrumentQuote-Delta-2021-1...\n", - " 2021-12-16T10:55:37Z\n", - " 2021-12-16T10:56:24Z\n", - " [4d7c-0743-092d3ccf-b675-4cc042ddea77]\n", - " 4ff9-00c0-b0d9c39c-bf9c-3dcb2050fdbd\n", - " 443e-a6c0-ab768812-8f2c-9f00dc4cec2e\n", - " [{'name': 'ContentType', 'value': 'Symbology I...\n", - " ESG\n", - " 2021-12-09T10:40:00Z\n", - " 2021-12-16T10:40:00Z\n", - " 1\n", - " 2021-12-30T10:55:37Z\n", " \n", " \n", " 18\n", - " 2021-11-18T23:28:13Z\n", + " bulk-ESG\n", + " [{'name': 'ContentType', 'value': 'ESG Raw Ful...\n", + " Bulk-ESG-Global-Raw-Full-SchemeB-v1-Social-Csv...\n", + " 2022-12-11T16:05:00Z\n", + " 4226-29ed-eeae8db0-bdc4-a3c366c948a3\n", + " [4168-04c2-17e8b6b7-960b-58e65047293e, 4584-d3...\n", + " 2022-12-04T16:05:00Z\n", + " 2022-12-11T16:36:44Z\n", + " 4288-ebb6-93372235-acb2-89882a826af1\n", + " 2022-12-11T16:20:53Z\n", + " 4\n", + " 2022-12-11T16:20:53Z\n", + " 2022-12-25T16:20:53Z\n", " READY\n", - " RFT-ESG-Raw-Current-SchemeB-Social-Delta-2021-...\n", - " 2021-11-18T23:28:13Z\n", - " 2021-11-18T23:30:07Z\n", - " [44f1-1740-6a8e4f6e-9088-dbe65be44b4f]\n", - " 4cbb-e27e-318835e3-bad7-dee7a0ebc3b0\n", - " 4449-fe81-b0b0abbb-9711-4a4272d61326\n", - " [{'name': 'ContentType', 'value': 'ESG Raw Cur...\n", - " ESG\n", - " 2021-11-08T01:18:01Z\n", - " 2021-11-18T23:20:24Z\n", - " 1\n", - " 2021-12-18T23:28:13Z\n", " \n", " \n", " 19\n", - " 2021-12-16T10:53:45Z\n", - " READY\n", - " RFT-ESG-Symbology-SEDOL-Delta-2021-12-16\n", - " 2021-12-16T10:53:45Z\n", - " 2021-12-16T10:53:52Z\n", - " [4b42-b5c6-5bb0047d-90a3-ae0c82d4f090]\n", - " 4db5-3cd4-008c366e-8ed7-ab22fc94fb47\n", - " 444f-c20f-06653931-9033-72a4f578b5a4\n", - " [{'name': 'ContentType', 'value': 'Symbology S...\n", - " ESG\n", - " 2021-12-09T10:40:00Z\n", - " 2021-12-16T10:40:00Z\n", + " bulk-ESG\n", + " [{'name': 'ContentType', 'value': 'ESG Scores'}]\n", + " Bulk-ESG-Global-Scores-Full-v1-Csv-Delta-2022-...\n", + " 2022-12-04T16:25:00Z\n", + " 4239-4be1-7993b48d-b4d8-1f2cd4d9f662\n", + " [4e3f-bc67-1bb3dc23-8f98-3b0485bb708c]\n", + " 2022-11-27T16:25:00Z\n", + " 2022-12-04T16:35:11Z\n", + " 4f1d-c1e4-b448e23b-a51a-e4315800de31\n", + " 2022-12-04T16:34:50Z\n", " 1\n", - " 2021-12-30T10:53:45Z\n", + " 2022-12-04T16:34:50Z\n", + " 2022-12-18T16:34:50Z\n", + " READY\n", " \n", " \n", " 20\n", - " 2021-12-09T10:47:41Z\n", - " READY\n", - " RFT-ESG-Symbology-Cusip-Delta-2021-12-09\n", - " 2021-12-09T10:47:41Z\n", - " 2021-12-09T10:47:43Z\n", - " [4f7b-d1f5-98207a8c-a0c4-5f10f5b8a780]\n", - " 4e22-f95e-157e6f14-89da-51b20f3f04c0\n", - " 4461-fb32-0982bc6d-8e98-c824d75a3145\n", - " [{'name': 'ContentType', 'value': 'Symbology C...\n", - " ESG\n", - " 2021-12-02T10:40:00Z\n", - " 2021-12-09T10:40:00Z\n", + " bulk-ESG\n", + " [{'name': 'ContentType', 'value': 'ESG Raw Cur...\n", + " Bulk-ESG-Global-Raw-Current-Limited-SchemeB-v1...\n", + " 2022-12-11T17:35:00Z\n", + " 423b-1c81-781c6ded-af03-504f23b143c8\n", + " [48ed-c070-e77d0b15-8996-09d48ca7c658]\n", + " 1970-01-01T00:00:00Z\n", + " 2022-12-11T17:44:41Z\n", + " 448b-4cc8-301b4e6a-9f6e-a0935eb8454b\n", + " 2022-12-11T17:44:36Z\n", " 1\n", - " 2021-12-23T10:47:41Z\n", + " 2022-12-11T17:44:36Z\n", + " 2022-12-25T17:44:36Z\n", + " READY\n", " \n", " \n", " 21\n", - " 2021-12-05T16:22:51Z\n", - " READY\n", - " RFT-ESG-Raw-Full-SchemeB-Env-Init-2021-12-05\n", - " 2021-12-05T16:22:51Z\n", - " 2021-12-05T16:25:49Z\n", - " [400e-4116-4318e3df-b0b6-dc6977ac0f6c, 4b29-68...\n", - " 4b6c-def9-dd1c991c-8535-6f9a61df9fc8\n", - " 447e-03ec-2800b22e-b54c-1ac946417daa\n", + " bulk-ESG\n", " [{'name': 'ContentType', 'value': 'ESG Raw Ful...\n", - " ESG\n", + " Bulk-ESG-Global-Raw-Full-Limited-SchemeA-v1-Cs...\n", + " 2022-12-04T15:55:00Z\n", + " 426e-d3a8-85be0c0f-bf86-e45edc71eee3\n", + " [4c2a-67f4-b5cfc68d-bd2e-f9bea0ed2915]\n", " 1970-01-01T00:00:00Z\n", - " 2021-12-05T16:05:00Z\n", - " 3\n", - " 2021-12-19T16:22:51Z\n", + " 2022-12-04T16:06:28Z\n", + " 42df-7422-e5154b41-a4a2-ebe464390a50\n", + " 2022-12-04T16:06:15Z\n", + " 1\n", + " 2022-12-04T16:06:15Z\n", + " 2022-12-18T16:06:15Z\n", + " READY\n", " \n", " \n", " 22\n", - " 2021-12-05T17:43:11Z\n", - " READY\n", - " RFT-ESG-Raw-Current-SchemeB-Social-Delta-2021-...\n", - " 2021-12-05T17:43:11Z\n", - " 2021-12-05T17:44:43Z\n", - " [4973-3e5a-411fe1cb-8365-f4b9a4b4c2aa]\n", - " 4cbb-e27e-318835e3-bad7-dee7a0ebc3b0\n", - " 4491-a0f7-50851a2c-9f2a-2b92e9a338f8\n", - " [{'name': 'ResultCount', 'value': '10789'}, {'...\n", - " ESG\n", - " 2021-11-29T17:35:00Z\n", - " 2021-12-05T17:35:00Z\n", + " bulk-ESG\n", + " [{'name': 'ContentType', 'value': 'ESG Scores'}]\n", + " Bulk-ESG-Global-Scores-Full-v1-Csv-Delta-2022-...\n", + " 2022-12-11T16:25:00Z\n", + " 427d-1a05-d09bf115-add0-cca77835e84a\n", + " [4d12-4efe-ceccda2a-b511-429e9048f882]\n", + " 2022-12-04T16:25:00Z\n", + " 2022-12-11T16:35:16Z\n", + " 4f1d-c1e4-b448e23b-a51a-e4315800de31\n", + " 2022-12-11T16:34:57Z\n", " 1\n", - " 2022-01-05T17:43:11Z\n", + " 2022-12-11T16:34:57Z\n", + " 2022-12-25T16:34:57Z\n", + " READY\n", " \n", " \n", " 23\n", - " 2021-11-21T17:49:11Z\n", - " READY\n", - " RFT-ESG-Scores-Wealth-Standard-init-2021-11-21\n", - " 2021-11-21T17:49:11Z\n", - " 2021-11-21T17:49:16Z\n", - " [4cb0-a467-c8870a34-beb1-64621d32cdd5]\n", - " 4bcc-4602-0a57ebb2-baf0-1fc9825e76b6\n", - " 44ab-90bc-f25f096c-8ce9-60c58f16beb5\n", - " [{'name': 'ContentType', 'value': 'ESG Scores'...\n", - " ESG\n", - " 1970-01-01T00:00:00Z\n", - " 2021-11-21T17:15:00Z\n", + " bulk-ESG\n", + " [{'name': 'ContentType', 'value': 'ESG Scores'}]\n", + " Bulk-ESG-Global-Scores-Wealth-Standard-v1-Csv-...\n", + " 2022-12-11T17:15:00Z\n", + " 4281-3a91-bc2ed44b-9e6c-79114e3e8d8f\n", + " [48ff-0f00-21f154c8-8104-8d76603e19d8]\n", + " 2022-12-04T17:15:00Z\n", + " 2022-12-11T17:24:04Z\n", + " 4d07-921a-7337a7cc-a291-e5b049ddf4dc\n", + " 2022-12-11T17:23:51Z\n", " 1\n", - " 2021-12-21T17:49:10Z\n", + " 2022-12-11T17:23:51Z\n", + " 2022-12-25T17:23:51Z\n", + " READY\n", " \n", " \n", " 24\n", - " 2021-12-05T17:22:12Z\n", - " READY\n", - " RFT-ESG-Scores-Wealth-Standard-delta-2021-12-05\n", - " 2021-12-05T17:22:12Z\n", - " 2021-12-05T17:22:17Z\n", - " [4210-5dca-6979035d-a101-725d7a96cad3]\n", - " 4bcc-4602-0a57ebb2-baf0-1fc9825e76b6\n", - " 451c-9da9-ea522b72-ad7c-719c3b081181\n", - " [{'name': 'ContentType', 'value': 'ESG Scores'...\n", - " ESG\n", - " 2021-11-29T17:15:00Z\n", - " 2021-12-05T17:15:00Z\n", + " bulk-ESG\n", + " [{'name': 'ContentType', 'value': 'Symbology O...\n", + " Bulk-ESG-Global-Symbology-Organization-v2-Json...\n", + " 2022-12-04T10:25:00Z\n", + " 4290-785a-59883f5b-a690-342f7e17807f\n", + " [466e-7a31-db6d3661-97f0-efcf865c5af7]\n", + " 2022-11-27T10:25:00Z\n", + " 2022-12-04T10:46:48Z\n", + " 4df5-78b2-c5e4f1ae-a81a-a83822272ea0\n", + " 2022-12-04T10:46:41Z\n", " 1\n", - " 2022-01-05T17:22:11Z\n", + " 2022-12-04T10:46:41Z\n", + " 2022-12-18T10:46:41Z\n", + " READY\n", " \n", " \n", "\n", "" ], "text/plain": [ - " availableFrom status \\\n", - "0 2021-12-09T10:46:03Z READY \n", - "1 2021-12-13T00:37:50Z READY \n", - "2 2021-12-05T16:15:58Z READY \n", - "3 2021-12-13T00:30:43Z READY \n", - "4 2021-12-05T16:08:13Z READY \n", - "5 2021-11-21T19:25:21Z READY \n", - "6 2021-12-13T00:31:10Z READY \n", - "7 2021-11-18T10:32:49Z READY \n", - "8 2021-12-09T10:55:17Z READY \n", - "9 2021-11-21T20:12:49Z READY \n", - "10 2021-12-13T00:44:36Z READY \n", - "11 2021-12-13T01:58:40Z READY \n", - "12 2021-12-16T10:47:21Z READY \n", - "13 2021-12-05T16:52:26Z READY \n", - "14 2021-11-21T22:23:49Z READY \n", - "15 2021-12-05T17:44:18Z READY \n", - "16 2021-12-16T10:47:36Z READY \n", - "17 2021-12-16T10:55:37Z READY \n", - "18 2021-11-18T23:28:13Z READY \n", - "19 2021-12-16T10:53:45Z READY \n", - "20 2021-12-09T10:47:41Z READY \n", - "21 2021-12-05T16:22:51Z READY \n", - "22 2021-12-05T17:43:11Z READY \n", - "23 2021-11-21T17:49:11Z READY \n", - "24 2021-12-05T17:22:12Z READY \n", + " bucketName attributes \\\n", + "0 bulk-ESG [{'name': 'ContentType', 'value': 'ESG Scores'}] \n", + "1 bulk-ESG [{'name': 'ContentType', 'value': 'ESG EU BMR'}] \n", + "2 bulk-ESG [{'name': 'ResultCount', 'value': '69943'}, {'... \n", + "3 bulk-ESG [{'name': 'ContentType', 'value': 'Symbology I... \n", + "4 bulk-ESG [{'name': 'ContentType', 'value': 'Symbology S... \n", + "5 bulk-ESG [{'name': 'ContentType', 'value': 'ESG Raw Cur... \n", + "6 bulk-ESG [{'name': 'ContentType', 'value': 'ESG Raw Cur... \n", + "7 bulk-ESG [{'name': 'ContentType', 'value': 'ESG Scores'}] \n", + "8 bulk-ESG [{'name': 'ContentType', 'value': 'ESG Scores'}] \n", + "9 bulk-ESG [{'name': 'ContentType', 'value': 'Symbology I... \n", + "10 bulk-ESG [{'name': 'ContentType', 'value': 'ESG Raw Wea... \n", + "11 bulk-ESG [{'name': 'ContentType', 'value': 'ESG Raw Cur... \n", + "12 bulk-ESG [{'name': 'ContentType', 'value': 'ESG Raw Cur... \n", + "13 bulk-ESG [{'name': 'ContentType', 'value': 'ESG Raw Ful... \n", + "14 bulk-ESG [{'name': 'ContentType', 'value': 'ESG Scores'}] \n", + "15 bulk-ESG [{'name': 'ContentType', 'value': 'ESG Raw Ful... \n", + "16 bulk-ESG [{'name': 'ContentType', 'value': 'Symbology C... \n", + "17 bulk-ESG [{'name': 'ContentType', 'value': 'ESG Raw Wea... \n", + "18 bulk-ESG [{'name': 'ContentType', 'value': 'ESG Raw Ful... \n", + "19 bulk-ESG [{'name': 'ContentType', 'value': 'ESG Scores'}] \n", + "20 bulk-ESG [{'name': 'ContentType', 'value': 'ESG Raw Cur... \n", + "21 bulk-ESG [{'name': 'ContentType', 'value': 'ESG Raw Ful... \n", + "22 bulk-ESG [{'name': 'ContentType', 'value': 'ESG Scores'}] \n", + "23 bulk-ESG [{'name': 'ContentType', 'value': 'ESG Scores'}] \n", + "24 bulk-ESG [{'name': 'ContentType', 'value': 'Symbology O... \n", "\n", - " name created \\\n", - "0 RFT-ESG-Symbology-InstrumentQuote-Init-2021-12-09 2021-12-09T10:46:03Z \n", - "1 RFT-ESG-Raw-Full-SchemeB-Social-Delta-2021-12-13 2021-12-13T00:37:50Z \n", - "2 RFT-ESG-Raw-Full-SchemeB-Social-Init-2021-12-05 2021-12-05T16:15:58Z \n", - "3 RFT-ESG-Raw-Wealth-Standard-delta-2021-12-13 2021-12-13T00:30:43Z \n", - "4 RFT-ESG-Raw-Full-SchemeA-Init-2021-12-05 2021-12-05T16:08:13Z \n", - "5 RFT-ESG-Scores-Wealth-Standard-delta-2021-11-21 2021-11-21T19:25:21Z \n", - "6 RFT-ESG-Scores-Wealth-Standard-init-2021-12-13 2021-12-13T00:31:11Z \n", - "7 RFT-ESG-Symbology-ISIN-Init-2021-11-18 2021-11-18T10:32:49Z \n", - "8 RFT-ESG-Symbology-InstrumentQuote-Delta-2021-1... 2021-12-09T10:55:17Z \n", - "9 RFT-ESG-Raw-Wealth-Standard-delta-2021-11-21 2021-11-21T20:12:49Z \n", - "10 RFT-ESG-Raw-Full-SchemeB-Env-Init-2021-12-13 2021-12-13T00:44:36Z \n", - "11 RFT-ESG-EU-BMR-init-2021-12-13T01:57:16.943Z 2021-12-13T01:58:40Z \n", - "12 RFT-ESG-Symbology-ISIN-Delta-2021-12-16 2021-12-16T10:47:21Z \n", - "13 RFT-ESG-Sources-Full-Delta-2021-12-05 2021-12-05T16:52:26Z \n", - "14 RFT-ESG-Raw-Current-SchemeA-init-2021-11-21 2021-11-21T22:23:49Z \n", - "15 RFT-ESG-Raw-Current-SchemeB-Env-Delta-2021-12-05 2021-12-05T17:44:18Z \n", - "16 RFT-ESG-Symbology-Cusip-Delta-2021-12-16 2021-12-16T10:47:36Z \n", - "17 RFT-ESG-Symbology-InstrumentQuote-Delta-2021-1... 2021-12-16T10:55:37Z \n", - "18 RFT-ESG-Raw-Current-SchemeB-Social-Delta-2021-... 2021-11-18T23:28:13Z \n", - "19 RFT-ESG-Symbology-SEDOL-Delta-2021-12-16 2021-12-16T10:53:45Z \n", - "20 RFT-ESG-Symbology-Cusip-Delta-2021-12-09 2021-12-09T10:47:41Z \n", - "21 RFT-ESG-Raw-Full-SchemeB-Env-Init-2021-12-05 2021-12-05T16:22:51Z \n", - "22 RFT-ESG-Raw-Current-SchemeB-Social-Delta-2021-... 2021-12-05T17:43:11Z \n", - "23 RFT-ESG-Scores-Wealth-Standard-init-2021-11-21 2021-11-21T17:49:11Z \n", - "24 RFT-ESG-Scores-Wealth-Standard-delta-2021-12-05 2021-12-05T17:22:12Z \n", + " name contentTo \\\n", + "0 Bulk-ESG-Global-Scores-Full-v1-Jsonl-Delta-202... 2022-12-11T16:25:00Z \n", + "1 Bulk-ESG-Global-EU-BMR-v1-Jsonl-Init-2022-12-0... 2022-12-04T15:55:00Z \n", + "2 Bulk-ESG-Global-Sources-Full-v1-Jsonl-Delta-20... 2022-12-04T16:45:00Z \n", + "3 Bulk-ESG-Global-Symbology-ISIN-v1-Jsonl-Init-2... 2022-12-04T10:25:00Z \n", + "4 Bulk-ESG-Global-Symbology-SEDOL-v1-Jsonl-Init-... 2022-11-20T10:25:00Z \n", + "5 Bulk-ESG-Global-Raw-Current-Limited-SchemeB-v1... 2022-12-11T17:35:00Z \n", + "6 Bulk-ESG-Global-Raw-Current-Limited-SchemeB-v1... 2022-12-04T17:35:00Z \n", + "7 Bulk-ESG-Global-Scores-Wealth-Standard-v1-Json... 2022-12-04T17:15:00Z \n", + "8 Bulk-ESG-Global-Scores-Full-v1-Jsonl-Delta-202... 2022-12-04T16:25:00Z \n", + "9 Bulk-ESG-Global-Symbology-InstrumentQuote-v1-J... 2022-12-04T10:25:00Z \n", + "10 Bulk-ESG-Global-Raw-Wealth-Standard-v1-Jsonl-I... 2022-12-11T17:45:00Z \n", + "11 Bulk-ESG-Global-Raw-Current-Limited-SchemeA-v1... 2022-12-11T17:25:00Z \n", + "12 Bulk-ESG-Global-Raw-Current-Limited-SchemeB-v1... 2022-12-11T17:35:00Z \n", + "13 Bulk-ESG-Global-Raw-Full-SchemeB-v1-Env-Csv-In... 2022-12-04T16:05:00Z \n", + "14 Bulk-ESG-Global-Scores-Full-v1-Csv-Init-2022-1... 2022-12-04T16:25:00Z \n", + "15 Bulk-ESG-Global-Raw-Full-SchemeB-v1-Env-Jsonl-... 2022-12-04T16:05:00Z \n", + "16 Bulk-ESG-Global-Symbology-Cusip-v1-Jsonl-Delta... 2022-12-04T10:25:00Z \n", + "17 Bulk-ESG-Global-Raw-Wealth-Standard-v1-Csv-Del... 2022-12-04T17:45:00Z \n", + "18 Bulk-ESG-Global-Raw-Full-SchemeB-v1-Social-Csv... 2022-12-11T16:05:00Z \n", + "19 Bulk-ESG-Global-Scores-Full-v1-Csv-Delta-2022-... 2022-12-04T16:25:00Z \n", + "20 Bulk-ESG-Global-Raw-Current-Limited-SchemeB-v1... 2022-12-11T17:35:00Z \n", + "21 Bulk-ESG-Global-Raw-Full-Limited-SchemeA-v1-Cs... 2022-12-04T15:55:00Z \n", + "22 Bulk-ESG-Global-Scores-Full-v1-Csv-Delta-2022-... 2022-12-11T16:25:00Z \n", + "23 Bulk-ESG-Global-Scores-Wealth-Standard-v1-Csv-... 2022-12-11T17:15:00Z \n", + "24 Bulk-ESG-Global-Symbology-Organization-v2-Json... 2022-12-04T10:25:00Z \n", "\n", - " modified files \\\n", - "0 2021-12-09T10:47:06Z [4d30-dd3b-b06ee43c-ab81-79888df15611] \n", - "1 2021-12-13T00:43:13Z [42c3-3ab5-79961011-ae24-cb6fcde7a348] \n", - "2 2021-12-05T16:25:49Z [4592-58c5-c2b0a415-8596-f4e82bb0f9f4] \n", - "3 2021-12-13T00:31:45Z [4b57-c2d4-4cd1d3aa-9fa7-00c4593f90ac, 4ee0-b7... \n", - "4 2021-12-05T16:11:59Z [413a-3108-11690470-94b8-67c5c415c5e0, 453e-26... \n", - "5 2021-11-21T19:25:26Z [4a93-33a1-daec9217-a23b-948a7a802bb4] \n", - "6 2021-12-13T00:31:17Z [4860-4d47-8d488a8b-a081-ce9ee132024b] \n", - "7 2021-11-18T10:32:52Z [41f2-f04a-9a9a9f91-bd9f-3a327e91c4d9] \n", - "8 2021-12-09T10:55:57Z [4c34-00cb-fc96a541-930e-6a451c95d6c5] \n", - "9 2021-11-21T20:13:46Z [447c-afc7-3507e47b-81f2-41a6e0df20b7, 4be0-96... \n", - "10 2021-12-13T00:47:13Z [42e9-c4c6-7eb48883-bf70-fe7472f7a066, 480d-06... \n", - "11 2021-12-13T01:58:52Z [4db7-b552-f8aaef8d-a302-739d210afb98] \n", - "12 2021-12-16T10:47:23Z [464e-2b23-73ab6dfd-9751-954231d90055] \n", - "13 2021-12-05T16:52:30Z [4904-c9ff-8190b54a-a33f-de9ce8e605e7] \n", - "14 2021-11-21T22:24:24Z [45ef-a38a-405faa19-9879-03ba8f712ac4] \n", - "15 2021-12-05T17:44:43Z [40b6-11e1-2dbeb077-be14-a68548daf8ac] \n", - "16 2021-12-16T10:47:38Z [4086-df75-acb1ca30-8790-7e63533b2e7b] \n", - "17 2021-12-16T10:56:24Z [4d7c-0743-092d3ccf-b675-4cc042ddea77] \n", - "18 2021-11-18T23:30:07Z [44f1-1740-6a8e4f6e-9088-dbe65be44b4f] \n", - "19 2021-12-16T10:53:52Z [4b42-b5c6-5bb0047d-90a3-ae0c82d4f090] \n", - "20 2021-12-09T10:47:43Z [4f7b-d1f5-98207a8c-a0c4-5f10f5b8a780] \n", - "21 2021-12-05T16:25:49Z [400e-4116-4318e3df-b0b6-dc6977ac0f6c, 4b29-68... \n", - "22 2021-12-05T17:44:43Z [4973-3e5a-411fe1cb-8365-f4b9a4b4c2aa] \n", - "23 2021-11-21T17:49:16Z [4cb0-a467-c8870a34-beb1-64621d32cdd5] \n", - "24 2021-12-05T17:22:17Z [4210-5dca-6979035d-a101-725d7a96cad3] \n", + " id \\\n", + "0 4010-5730-b53a7546-ad9a-0ae591a4fed1 \n", + "1 405e-257f-8f555107-90ea-04a4dadeaa86 \n", + "2 405e-a8f2-4e0bfcc3-9014-4218f081a539 \n", + "3 408f-0df2-ee2e4fda-a333-ea55c1d19a6a \n", + "4 40b0-5165-ec200230-84f9-09d527c460c2 \n", + "5 40e8-8013-8efa3636-8820-1a94fe627291 \n", + "6 40f7-9cd9-ff2e3c7d-819d-6e082ec8071e \n", + "7 4116-3460-006487a2-b7ce-6a8f2d659335 \n", + "8 412d-82bd-e5a10723-834a-1e9298e5e22e \n", + "9 414d-b6a5-d2cf1498-9b8a-dc657ee67e22 \n", + "10 4168-b1de-d9d34dac-87a8-36e0ee3c5198 \n", + "11 417d-a89a-1f8c30bc-b3a9-ae8f74310a87 \n", + "12 418d-e9c1-aeaa4a08-8e87-79340c2f0571 \n", + "13 41bf-d72f-13a571ba-82a3-3594ebc36474 \n", + "14 41c6-ebe3-38e9fd36-a5df-79427c65d06f \n", + "15 41e7-7bd1-9c9bf631-aa1f-dc3331b3760b \n", + "16 41ef-c2eb-eba6994d-9d92-4f9085f2b9e9 \n", + "17 420c-f914-6fe57811-a36b-48e7db859377 \n", + "18 4226-29ed-eeae8db0-bdc4-a3c366c948a3 \n", + "19 4239-4be1-7993b48d-b4d8-1f2cd4d9f662 \n", + "20 423b-1c81-781c6ded-af03-504f23b143c8 \n", + "21 426e-d3a8-85be0c0f-bf86-e45edc71eee3 \n", + "22 427d-1a05-d09bf115-add0-cca77835e84a \n", + "23 4281-3a91-bc2ed44b-9e6c-79114e3e8d8f \n", + "24 4290-785a-59883f5b-a690-342f7e17807f \n", "\n", - " packageId \\\n", - "0 41d7-a3e2-21d38219-9052-85b8f7dadb3c \n", - "1 4b6c-def9-dd1c991c-8535-6f9a61df9fc8 \n", - "2 4b6c-def9-dd1c991c-8535-6f9a61df9fc8 \n", - "3 4c3a-aca4-0cc88a33-b599-9647b1fb65ac \n", - "4 4e6a-ca79-af368ff5-931d-d2781b1cdb85 \n", - "5 4bcc-4602-0a57ebb2-baf0-1fc9825e76b6 \n", - "6 4bcc-4602-0a57ebb2-baf0-1fc9825e76b6 \n", - "7 48f0-8bdd-28d8432a-aae3-928067b0f64e \n", - "8 4ff9-00c0-b0d9c39c-bf9c-3dcb2050fdbd \n", - "9 4c3a-aca4-0cc88a33-b599-9647b1fb65ac \n", - "10 4b6c-def9-dd1c991c-8535-6f9a61df9fc8 \n", - "11 4a74-237d-78a6e194-90d8-a80c304b110b \n", - "12 4038-cfc9-f5fa1794-9c65-5ead51a3d9fb \n", - "13 4308-bc80-2054dc20-83db-6224911311d0 \n", - "14 4c62-b05c-2a529a9d-81b3-224eacd50379 \n", - "15 4cbb-e27e-318835e3-bad7-dee7a0ebc3b0 \n", - "16 4e22-f95e-157e6f14-89da-51b20f3f04c0 \n", - "17 4ff9-00c0-b0d9c39c-bf9c-3dcb2050fdbd \n", - "18 4cbb-e27e-318835e3-bad7-dee7a0ebc3b0 \n", - "19 4db5-3cd4-008c366e-8ed7-ab22fc94fb47 \n", - "20 4e22-f95e-157e6f14-89da-51b20f3f04c0 \n", - "21 4b6c-def9-dd1c991c-8535-6f9a61df9fc8 \n", - "22 4cbb-e27e-318835e3-bad7-dee7a0ebc3b0 \n", - "23 4bcc-4602-0a57ebb2-baf0-1fc9825e76b6 \n", - "24 4bcc-4602-0a57ebb2-baf0-1fc9825e76b6 \n", + " files contentFrom \\\n", + "0 [422b-b545-a0431e70-b15c-8d0fad346456] 2022-12-04T16:25:00Z \n", + "1 [4bf4-9a6a-69aec78b-b22d-a2631977a6c9] 1970-01-01T00:00:00Z \n", + "2 [4a48-2280-a32705a0-9e27-34d343d4afad] 2022-11-27T16:45:00Z \n", + "3 [4508-4e1f-d52415e1-be65-f1d323d21b59] 1970-01-01T00:00:00Z \n", + "4 [43df-4283-914e75ba-bf62-9ff0b391944f] 1970-01-01T00:00:00Z \n", + "5 [495a-b597-10aa1b9f-a7d1-73f8f9ce6b46] 2022-12-04T17:35:00Z \n", + "6 [4ca6-efb9-a46da6da-994c-ed11da669e2e] 2022-11-27T17:35:00Z \n", + "7 [483e-a433-194323d0-9d51-e21c9011dae1] 1970-01-01T00:00:00Z \n", + "8 [42af-2bd7-5d915c41-8802-871fbda73d07] 2022-11-27T16:25:00Z \n", + "9 [4ad2-d94b-944646e5-8001-3b22af8386a7] 1970-01-01T00:00:00Z \n", + "10 [4564-0ef0-983e8e7d-8164-8bef2fd70ab0, 4cc1-11... 1970-01-01T00:00:00Z \n", + "11 [48e0-d10c-c5cb58db-93b0-3b0d558e274b] 1970-01-01T00:00:00Z \n", + "12 [4a01-7f40-c264e30b-9c78-795bc3ee9857] 2022-12-04T17:35:00Z \n", + "13 [41c1-e4c6-168ece18-a103-d74c9afd498c, 4243-f7... 1970-01-01T00:00:00Z \n", + "14 [4703-2c75-85deaa5c-80e4-5cb660a495f6] 1970-01-01T00:00:00Z \n", + "15 [4666-a190-39f102cd-820d-5d7942be6be9] 2022-11-27T16:05:00Z \n", + "16 [408a-89d6-d7ba90f0-a76d-04cb6d3c72e9] 2022-11-27T10:25:00Z \n", + "17 [44b2-b5bb-ed5efc0a-91ba-1929e20e29f2, 4900-38... 2022-11-27T17:45:00Z \n", + "18 [4168-04c2-17e8b6b7-960b-58e65047293e, 4584-d3... 2022-12-04T16:05:00Z \n", + "19 [4e3f-bc67-1bb3dc23-8f98-3b0485bb708c] 2022-11-27T16:25:00Z \n", + "20 [48ed-c070-e77d0b15-8996-09d48ca7c658] 1970-01-01T00:00:00Z \n", + "21 [4c2a-67f4-b5cfc68d-bd2e-f9bea0ed2915] 1970-01-01T00:00:00Z \n", + "22 [4d12-4efe-ceccda2a-b511-429e9048f882] 2022-12-04T16:25:00Z \n", + "23 [48ff-0f00-21f154c8-8104-8d76603e19d8] 2022-12-04T17:15:00Z \n", + "24 [466e-7a31-db6d3661-97f0-efcf865c5af7] 2022-11-27T10:25:00Z \n", "\n", - " id \\\n", - "0 4003-1870-f5f80de9-a9a7-dcbe0ff51736 \n", - "1 40c9-19c5-2e5f4dbe-aa10-61f298b603bc \n", - "2 4121-c09e-fece32e1-90b3-fd1a4a389f15 \n", - "3 4163-6c7f-d2f6b364-98d6-d0aa7a002f5f \n", - "4 41c1-0049-1579c97f-a761-1baae507517c \n", - "5 425f-9323-42c19562-91c3-91362c82d256 \n", - "6 4293-91ad-6641a5e9-aae6-75099bc18905 \n", - "7 429f-8ac4-267dfb5b-99ae-8e86245e0fb8 \n", - "8 42cb-2fde-346a2ada-b77e-5c85554fba70 \n", - "9 430c-8a44-66efaf0d-b224-926e6ed588e4 \n", - "10 432a-6938-8c47bfa5-900f-d8f84d874cdf \n", - "11 43c4-f9c3-c45a4f6a-8866-39f7321526ed \n", - "12 43f1-6e73-00458f7f-bf95-af72045604d0 \n", - "13 43fa-d5ef-750ab58c-9883-270e6804c8b1 \n", - "14 440c-32a6-6d3aaca5-b6ba-3fcb08e5c6b0 \n", - "15 4437-fa4a-6f8097bd-a8f1-3dd665183559 \n", - "16 4439-9c2a-8a5594cf-831d-cd354f744a24 \n", - "17 443e-a6c0-ab768812-8f2c-9f00dc4cec2e \n", - "18 4449-fe81-b0b0abbb-9711-4a4272d61326 \n", - "19 444f-c20f-06653931-9033-72a4f578b5a4 \n", - "20 4461-fb32-0982bc6d-8e98-c824d75a3145 \n", - "21 447e-03ec-2800b22e-b54c-1ac946417daa \n", - "22 4491-a0f7-50851a2c-9f2a-2b92e9a338f8 \n", - "23 44ab-90bc-f25f096c-8ce9-60c58f16beb5 \n", - "24 451c-9da9-ea522b72-ad7c-719c3b081181 \n", + " modified packageId \\\n", + "0 2022-12-11T16:35:16Z 4f1d-c1e4-b448e23b-a51a-e4315800de31 \n", + "1 2022-12-04T16:05:12Z 48d4-e278-215dca78-bb4a-bca14a86a8f5 \n", + "2 2022-12-04T16:54:46Z 43ac-6749-947dd136-bad9-f4d575af2253 \n", + "3 2022-12-04T10:34:45Z 444f-4895-36da1f18-9930-c3d6a89fac7c \n", + "4 2022-11-20T10:47:44Z 48ff-7e86-20bd08b2-8bbf-ee1b93395d59 \n", + "5 2022-12-11T17:42:36Z 448b-4cc8-301b4e6a-9f6e-a0935eb8454b \n", + "6 2022-12-04T17:42:29Z 448b-4cc8-301b4e6a-9f6e-a0935eb8454b \n", + "7 2022-12-04T17:24:42Z 4d07-921a-7337a7cc-a291-e5b049ddf4dc \n", + "8 2022-12-04T16:35:10Z 4f1d-c1e4-b448e23b-a51a-e4315800de31 \n", + "9 2022-12-04T10:49:12Z 4dc5-4efa-bf8327db-8997-57899e9833cc \n", + "10 2022-12-11T18:00:03Z 49ff-c9ea-60379028-9a3b-1288eb7e1bde \n", + "11 2022-12-11T17:33:01Z 46d7-4fb6-80fbaeda-a5e1-5d6b193f1386 \n", + "12 2022-12-11T17:42:36Z 448b-4cc8-301b4e6a-9f6e-a0935eb8454b \n", + "13 2022-12-04T16:53:27Z 4288-ebb6-93372235-acb2-89882a826af1 \n", + "14 2022-12-04T16:36:42Z 4f1d-c1e4-b448e23b-a51a-e4315800de31 \n", + "15 2022-12-04T16:39:54Z 4288-ebb6-93372235-acb2-89882a826af1 \n", + "16 2022-12-04T10:35:07Z 442c-d526-65702a11-b6b2-54f7d4f3cd7f \n", + "17 2022-12-04T17:58:32Z 49ff-c9ea-60379028-9a3b-1288eb7e1bde \n", + "18 2022-12-11T16:36:44Z 4288-ebb6-93372235-acb2-89882a826af1 \n", + "19 2022-12-04T16:35:11Z 4f1d-c1e4-b448e23b-a51a-e4315800de31 \n", + "20 2022-12-11T17:44:41Z 448b-4cc8-301b4e6a-9f6e-a0935eb8454b \n", + "21 2022-12-04T16:06:28Z 42df-7422-e5154b41-a4a2-ebe464390a50 \n", + "22 2022-12-11T16:35:16Z 4f1d-c1e4-b448e23b-a51a-e4315800de31 \n", + "23 2022-12-11T17:24:04Z 4d07-921a-7337a7cc-a291-e5b049ddf4dc \n", + "24 2022-12-04T10:46:48Z 4df5-78b2-c5e4f1ae-a81a-a83822272ea0 \n", "\n", - " attributes bucketName \\\n", - "0 [{'name': 'ContentType', 'value': 'Symbology I... ESG \n", - "1 [{'name': 'ResultCount', 'value': '51453'}, {'... ESG \n", - "2 [{'name': 'ResultCount', 'value': '107765'}, {... ESG \n", - "3 [{'name': 'ResultCount', 'value': '28314'}, {'... ESG \n", - "4 [{'name': 'ResultCount', 'value': '107765'}, {... ESG \n", - "5 [{'name': 'ResultCount', 'value': '28076'}, {'... ESG \n", - "6 [{'name': 'ResultCount', 'value': '32382'}, {'... ESG \n", - "7 [{'name': 'ContentType', 'value': 'Symbology I... ESG \n", - "8 [{'name': 'ContentType', 'value': 'Symbology I... ESG \n", - "9 [{'name': 'ContentType', 'value': 'ESG Raw Wea... ESG \n", - "10 [{'name': 'ResultCount', 'value': '107883'}, {... ESG \n", - "11 [{'name': 'ContentType', 'value': 'ESG EU BMR'}] ESG \n", - "12 [{'name': 'ContentType', 'value': 'Symbology I... ESG \n", - "13 [{'name': 'ContentType', 'value': 'ESG Sources... ESG \n", - "14 [{'name': 'ContentType', 'value': 'ESG Raw Cur... ESG \n", - "15 [{'name': 'ResultCount', 'value': '10789'}, {'... ESG \n", - "16 [{'name': 'ContentType', 'value': 'Symbology C... ESG \n", - "17 [{'name': 'ContentType', 'value': 'Symbology I... ESG \n", - "18 [{'name': 'ContentType', 'value': 'ESG Raw Cur... ESG \n", - "19 [{'name': 'ContentType', 'value': 'Symbology S... ESG \n", - "20 [{'name': 'ContentType', 'value': 'Symbology C... ESG \n", - "21 [{'name': 'ContentType', 'value': 'ESG Raw Ful... ESG \n", - "22 [{'name': 'ResultCount', 'value': '10789'}, {'... ESG \n", - "23 [{'name': 'ContentType', 'value': 'ESG Scores'... ESG \n", - "24 [{'name': 'ContentType', 'value': 'ESG Scores'... ESG \n", + " availableFrom numFiles created \\\n", + "0 2022-12-11T16:34:42Z 1 2022-12-11T16:34:42Z \n", + "1 2022-12-04T16:04:17Z 1 2022-12-04T16:04:17Z \n", + "2 2022-12-04T16:54:20Z 1 2022-12-04T16:54:20Z \n", + "3 2022-12-04T10:34:42Z 1 2022-12-04T10:34:42Z \n", + "4 2022-11-20T10:47:35Z 1 2022-11-20T10:47:35Z \n", + "5 2022-12-11T17:42:24Z 1 2022-12-11T17:42:24Z \n", + "6 2022-12-04T17:42:14Z 1 2022-12-04T17:42:14Z \n", + "7 2022-12-04T17:24:17Z 1 2022-12-04T17:24:17Z \n", + "8 2022-12-04T16:34:35Z 1 2022-12-04T16:34:35Z \n", + "9 2022-12-04T10:48:04Z 1 2022-12-04T10:48:04Z \n", + "10 2022-12-11T17:53:55Z 3 2022-12-11T17:53:55Z \n", + "11 2022-12-11T17:32:49Z 1 2022-12-11T17:32:49Z \n", + "12 2022-12-11T17:42:22Z 1 2022-12-11T17:42:22Z \n", + "13 2022-12-04T16:39:48Z 5 2022-12-04T16:39:48Z \n", + "14 2022-12-04T16:36:06Z 1 2022-12-04T16:36:06Z \n", + "15 2022-12-04T16:28:04Z 1 2022-12-04T16:28:05Z \n", + "16 2022-12-04T10:35:06Z 1 2022-12-04T10:35:06Z \n", + "17 2022-12-04T17:55:35Z 4 2022-12-04T17:55:35Z \n", + "18 2022-12-11T16:20:53Z 4 2022-12-11T16:20:53Z \n", + "19 2022-12-04T16:34:50Z 1 2022-12-04T16:34:50Z \n", + "20 2022-12-11T17:44:36Z 1 2022-12-11T17:44:36Z \n", + "21 2022-12-04T16:06:15Z 1 2022-12-04T16:06:15Z \n", + "22 2022-12-11T16:34:57Z 1 2022-12-11T16:34:57Z \n", + "23 2022-12-11T17:23:51Z 1 2022-12-11T17:23:51Z \n", + "24 2022-12-04T10:46:41Z 1 2022-12-04T10:46:41Z \n", "\n", - " contentFrom contentTo numFiles availableTo \n", - "0 1970-01-01T00:00:00Z 2021-12-09T10:30:00Z 1 2021-12-23T10:46:03Z \n", - "1 2021-12-05T16:05:00Z 2021-12-13T00:14:12Z 1 2021-12-27T00:37:49Z \n", - "2 1970-01-01T00:00:00Z 2021-12-05T16:05:00Z 1 2021-12-19T16:15:58Z \n", - "3 2021-12-05T17:45:00Z 2021-12-13T00:14:12Z 2 2022-01-13T00:30:43Z \n", - "4 1970-01-01T00:00:00Z 2021-12-05T15:55:00Z 7 2021-12-19T16:08:12Z \n", - "5 2021-11-15T00:20:25Z 2021-11-21T17:15:00Z 1 2021-12-21T19:25:21Z \n", - "6 1970-01-01T00:00:00Z 2021-12-13T00:14:12Z 1 2022-01-13T00:31:10Z \n", - "7 1970-01-01T00:00:00Z 2021-11-18T10:25:00Z 1 2021-12-18T10:32:49Z \n", - "8 2021-12-02T10:40:00Z 2021-12-09T10:40:00Z 1 2021-12-23T10:55:17Z \n", - "9 2021-11-15T00:20:25Z 2021-11-21T17:45:00Z 2 2021-12-21T20:12:48Z \n", - "10 1970-01-01T00:00:00Z 2021-12-13T00:14:12Z 3 2021-12-27T00:44:35Z \n", - "11 1970-01-01T00:00:00Z 2021-12-13T01:55:00Z 1 2021-12-27T01:58:39Z \n", - "12 2021-12-09T10:40:00Z 2021-12-16T10:40:00Z 1 2021-12-30T10:47:20Z \n", - "13 2021-11-29T16:45:00Z 2021-12-05T16:45:00Z 1 2021-12-19T16:52:26Z \n", - "14 1970-01-01T00:00:00Z 2021-11-21T17:25:00Z 1 2021-12-21T22:23:49Z \n", - "15 2021-11-29T17:35:00Z 2021-12-05T17:35:00Z 1 2022-01-05T17:44:18Z \n", - "16 2021-12-09T10:40:00Z 2021-12-16T10:40:00Z 1 2021-12-30T10:47:36Z \n", - "17 2021-12-09T10:40:00Z 2021-12-16T10:40:00Z 1 2021-12-30T10:55:37Z \n", - "18 2021-11-08T01:18:01Z 2021-11-18T23:20:24Z 1 2021-12-18T23:28:13Z \n", - "19 2021-12-09T10:40:00Z 2021-12-16T10:40:00Z 1 2021-12-30T10:53:45Z \n", - "20 2021-12-02T10:40:00Z 2021-12-09T10:40:00Z 1 2021-12-23T10:47:41Z \n", - "21 1970-01-01T00:00:00Z 2021-12-05T16:05:00Z 3 2021-12-19T16:22:51Z \n", - "22 2021-11-29T17:35:00Z 2021-12-05T17:35:00Z 1 2022-01-05T17:43:11Z \n", - "23 1970-01-01T00:00:00Z 2021-11-21T17:15:00Z 1 2021-12-21T17:49:10Z \n", - "24 2021-11-29T17:15:00Z 2021-12-05T17:15:00Z 1 2022-01-05T17:22:11Z " + " availableTo status \n", + "0 2022-12-25T16:34:42Z READY \n", + "1 2022-12-18T16:04:17Z READY \n", + "2 2022-12-18T16:54:19Z READY \n", + "3 2023-01-04T10:34:42Z READY \n", + "4 2022-12-20T10:47:35Z READY \n", + "5 2022-12-25T17:42:24Z READY \n", + "6 2022-12-18T17:42:14Z READY \n", + "7 2022-12-18T17:24:17Z READY \n", + "8 2022-12-18T16:34:35Z READY \n", + "9 2022-12-18T10:48:04Z READY \n", + "10 2022-12-25T17:53:55Z READY \n", + "11 2022-12-25T17:32:49Z READY \n", + "12 2022-12-25T17:42:22Z READY \n", + "13 2022-12-18T16:39:47Z READY \n", + "14 2022-12-18T16:36:06Z READY \n", + "15 2022-12-18T16:28:04Z READY \n", + "16 2022-12-18T10:35:05Z READY \n", + "17 2022-12-18T17:55:34Z READY \n", + "18 2022-12-25T16:20:53Z READY \n", + "19 2022-12-18T16:34:50Z READY \n", + "20 2022-12-25T17:44:36Z READY \n", + "21 2022-12-18T16:06:15Z READY \n", + "22 2022-12-25T16:34:57Z READY \n", + "23 2022-12-25T17:23:51Z READY \n", + "24 2022-12-18T10:46:41Z READY " ] }, - "execution_count": 6, + "execution_count": 10, "metadata": {}, "output_type": "execute_result" } ], "source": [ - "response = cfs.file_sets.Definition('esg').get_data()\n", + "response = cfs.file_sets.Definition('bulk-ESG').get_data()\n", "response.data.df" ] }, @@ -1478,7 +1462,7 @@ }, { "cell_type": "code", - "execution_count": 7, + "execution_count": 12, "metadata": {}, "outputs": [ { @@ -1502,279 +1486,291 @@ " \n", " \n", " \n", - " availableFrom\n", - " status\n", + " bucketName\n", + " attributes\n", " name\n", - " created\n", - " modified\n", - " files\n", - " packageId\n", + " contentTo\n", " id\n", - " attributes\n", - " bucketName\n", + " files\n", " contentFrom\n", - " contentTo\n", + " modified\n", + " packageId\n", + " availableFrom\n", " numFiles\n", + " created\n", " availableTo\n", + " status\n", " \n", " \n", " \n", " \n", " 0\n", - " 2021-12-09T10:27:43Z\n", - " READY\n", - " RFT-ESG-Symbology-Cusip-Init-2021-12-09\n", - " 2021-12-09T10:27:43Z\n", - " 2021-12-09T10:27:46Z\n", - " [45cd-fc7d-75b253f3-a165-8d8fb6945412]\n", - " 466c-c470-22a4cab3-8d0c-770cdfa5fc45\n", - " 4864-bfd1-4e5695c0-a035-f7900c236ea8\n", + " bulk-ESG\n", " [{'name': 'ContentType', 'value': 'Symbology C...\n", - " ESG\n", + " Bulk-ESG-Global-Symbology-Cusip-v1-Jsonl-Init-...\n", + " 2022-12-04T10:25:00Z\n", + " 463f-1afa-a582f0a5-b58a-c0135b9eb6b1\n", + " [4c91-47f6-5937d21a-93ad-54c2e30949fe]\n", " 1970-01-01T00:00:00Z\n", - " 2021-12-09T10:20:00Z\n", + " 2022-12-04T10:34:04Z\n", + " 4a7b-19e3-ac9446f0-9db9-9eab901a4953\n", + " 2022-12-04T10:34:01Z\n", " 1\n", - " 2021-12-23T10:27:43Z\n", + " 2022-12-04T10:34:01Z\n", + " 2023-01-04T10:34:01Z\n", + " READY\n", " \n", " \n", " 1\n", - " 2021-12-09T10:32:41Z\n", - " READY\n", - " RFT-ESG-Symbology-ISIN-Init-2021-12-09\n", - " 2021-12-09T10:32:41Z\n", - " 2021-12-09T10:32:44Z\n", - " [4d9b-dce5-2cb598a1-ad29-7dc59921519a]\n", - " 48f0-8bdd-28d8432a-aae3-928067b0f64e\n", - " 48f3-16f7-f533c3e1-a782-bbefc6414241\n", + " bulk-ESG\n", " [{'name': 'ContentType', 'value': 'Symbology I...\n", - " ESG\n", - " 1970-01-01T00:00:00Z\n", - " 2021-12-09T10:25:00Z\n", + " Bulk-ESG-Global-Symbology-ISIN-v1-Jsonl-Delta-...\n", + " 2022-12-04T10:25:00Z\n", + " 4b17-3681-7a3cd7c2-833a-efe7f3e9b0e0\n", + " [4428-cc0c-5a90419f-b141-9e315f9efa46]\n", + " 2022-11-27T10:25:00Z\n", + " 2022-12-04T10:34:42Z\n", + " 42db-71ff-ea4bd04c-9739-849990675c7d\n", + " 2022-12-04T10:34:40Z\n", " 1\n", - " 2022-01-09T10:32:41Z\n", + " 2022-12-04T10:34:40Z\n", + " 2022-12-18T10:34:40Z\n", + " READY\n", " \n", " \n", " 2\n", - " 2021-12-09T10:34:17Z\n", - " READY\n", - " RFT-ESG-Symbology-Organization-Init-2021-12-09...\n", - " 2021-12-09T10:34:17Z\n", - " 2021-12-09T10:34:21Z\n", - " [4959-6d5d-e217dd39-8226-67782f72be33]\n", - " 4961-f8c5-20beccf6-850e-fd549b242fb5\n", - " 4a49-cdde-dba9556b-8b73-90a22c172603\n", - " [{'name': 'ContentType', 'value': 'Symbology O...\n", - " ESG\n", + " bulk-ESG\n", + " [{'name': 'ContentType', 'value': 'Symbology I...\n", + " Bulk-ESG-Global-Symbology-ISIN-v1-Jsonl-Init-2...\n", + " 2022-12-04T10:25:00Z\n", + " 408f-0df2-ee2e4fda-a333-ea55c1d19a6a\n", + " [4508-4e1f-d52415e1-be65-f1d323d21b59]\n", " 1970-01-01T00:00:00Z\n", - " 2021-12-09T10:25:00Z\n", + " 2022-12-04T10:34:45Z\n", + " 444f-4895-36da1f18-9930-c3d6a89fac7c\n", + " 2022-12-04T10:34:42Z\n", " 1\n", - " 2021-12-23T10:34:16Z\n", + " 2022-12-04T10:34:42Z\n", + " 2023-01-04T10:34:42Z\n", + " READY\n", " \n", " \n", " 3\n", - " 2021-12-09T10:44:07Z\n", - " READY\n", - " RFT-ESG-Symbology-SEDOL-Init-2021-12-09\n", - " 2021-12-09T10:44:07Z\n", - " 2021-12-09T10:44:15Z\n", - " [40fe-7af9-0f865404-8954-bec3fbeb32ba]\n", - " 4b75-7bb9-7e73ca6a-b61e-855c6335a6b6\n", - " 4fe5-edc6-1bdc08f6-a8e6-1db410d90faf\n", - " [{'name': 'ContentType', 'value': 'Symbology S...\n", - " ESG\n", - " 1970-01-01T00:00:00Z\n", - " 2021-12-09T10:30:00Z\n", + " bulk-ESG\n", + " [{'name': 'ContentType', 'value': 'Symbology C...\n", + " Bulk-ESG-Global-Symbology-Cusip-v1-Jsonl-Delta...\n", + " 2022-12-04T10:25:00Z\n", + " 41ef-c2eb-eba6994d-9d92-4f9085f2b9e9\n", + " [408a-89d6-d7ba90f0-a76d-04cb6d3c72e9]\n", + " 2022-11-27T10:25:00Z\n", + " 2022-12-04T10:35:07Z\n", + " 442c-d526-65702a11-b6b2-54f7d4f3cd7f\n", + " 2022-12-04T10:35:06Z\n", " 1\n", - " 2021-12-23T10:44:07Z\n", + " 2022-12-04T10:35:06Z\n", + " 2022-12-18T10:35:05Z\n", + " READY\n", " \n", " \n", - " 4\n", - " 2021-12-09T10:46:03Z\n", - " READY\n", - " RFT-ESG-Symbology-InstrumentQuote-Init-2021-12-09\n", - " 2021-12-09T10:46:03Z\n", - " 2021-12-09T10:47:06Z\n", - " [4d30-dd3b-b06ee43c-ab81-79888df15611]\n", - " 41d7-a3e2-21d38219-9052-85b8f7dadb3c\n", - " 4003-1870-f5f80de9-a9a7-dcbe0ff51736\n", - " [{'name': 'ContentType', 'value': 'Symbology I...\n", - " ESG\n", + " 4\n", + " bulk-ESG\n", + " [{'name': 'ContentType', 'value': 'Symbology O...\n", + " Bulk-ESG-Global-Symbology-Organization-v1-Json...\n", + " 2022-12-04T10:25:00Z\n", + " 4f21-3107-bbbecfee-9850-d6df53d116f8\n", + " [4868-c3d6-637eb601-84a9-8d2c76e724a3]\n", " 1970-01-01T00:00:00Z\n", - " 2021-12-09T10:30:00Z\n", + " 2022-12-04T10:36:18Z\n", + " 4037-e79c-96b73648-a42a-6b65ef8ccbd1\n", + " 2022-12-04T10:36:12Z\n", " 1\n", - " 2021-12-23T10:46:03Z\n", + " 2022-12-04T10:36:12Z\n", + " 2022-12-18T10:36:12Z\n", + " READY\n", " \n", " \n", " 5\n", - " 2021-12-09T10:46:52Z\n", - " READY\n", - " RFT-ESG-Symbology-ISIN-Delta-2021-12-09\n", - " 2021-12-09T10:46:52Z\n", - " 2021-12-09T10:46:54Z\n", - " [4539-f9ab-3365dbed-ac51-cca969ef84fa]\n", - " 4038-cfc9-f5fa1794-9c65-5ead51a3d9fb\n", - " 4981-b80c-ec155930-996f-4d6e5f409dca\n", - " [{'name': 'ContentType', 'value': 'Symbology I...\n", - " ESG\n", - " 2021-12-02T10:40:00Z\n", - " 2021-12-09T10:40:00Z\n", + " bulk-ESG\n", + " [{'name': 'ContentType', 'value': 'Symbology O...\n", + " Bulk-ESG-Global-Symbology-Organization-v1-Json...\n", + " 2022-12-04T10:25:00Z\n", + " 4cad-4c63-d7d72104-9801-161099b18be2\n", + " [47ef-4158-40f87247-9322-0d22f956f166]\n", + " 2022-11-27T10:25:00Z\n", + " 2022-12-04T10:45:43Z\n", + " 45b3-4a72-65d1d317-af12-b38e106dc026\n", + " 2022-12-04T10:45:38Z\n", " 1\n", - " 2021-12-23T10:46:52Z\n", + " 2022-12-04T10:45:38Z\n", + " 2022-12-18T10:45:38Z\n", + " READY\n", " \n", " \n", " 6\n", - " 2021-12-09T10:47:41Z\n", - " READY\n", - " RFT-ESG-Symbology-Cusip-Delta-2021-12-09\n", - " 2021-12-09T10:47:41Z\n", - " 2021-12-09T10:47:43Z\n", - " [4f7b-d1f5-98207a8c-a0c4-5f10f5b8a780]\n", - " 4e22-f95e-157e6f14-89da-51b20f3f04c0\n", - " 4461-fb32-0982bc6d-8e98-c824d75a3145\n", - " [{'name': 'ContentType', 'value': 'Symbology C...\n", - " ESG\n", - " 2021-12-02T10:40:00Z\n", - " 2021-12-09T10:40:00Z\n", + " bulk-ESG\n", + " [{'name': 'ContentType', 'value': 'Symbology S...\n", + " Bulk-ESG-Global-Symbology-SEDOL-v1-Jsonl-Delta...\n", + " 2022-12-04T10:25:00Z\n", + " 4a17-74e7-d9310ba8-80eb-3280d053f867\n", + " [48d7-7420-1685cbc0-bcf2-4f0844041e13]\n", + " 2022-11-27T10:25:00Z\n", + " 2022-12-04T10:46:21Z\n", + " 467d-dd94-53097bc5-a15e-ec653a0e29de\n", + " 2022-12-04T10:46:16Z\n", " 1\n", - " 2021-12-23T10:47:41Z\n", + " 2022-12-04T10:46:16Z\n", + " 2022-12-18T10:46:16Z\n", + " READY\n", " \n", " \n", " 7\n", - " 2021-12-09T10:48:14Z\n", - " READY\n", - " RFT-ESG-Symbology-Organization-Delta-2021-12-0...\n", - " 2021-12-09T10:48:14Z\n", - " 2021-12-09T10:48:17Z\n", - " [4787-0cd8-72681273-9b44-3a2cac9264eb]\n", - " 4f5a-5a7d-f6e66b22-b52c-613fd5d28f5e\n", - " 4526-0707-0327a3b8-ac7a-9407ee986295\n", - " [{'name': 'ContentType', 'value': 'Symbology O...\n", - " ESG\n", - " 2021-12-02T10:40:00Z\n", - " 2021-12-09T10:40:00Z\n", + " bulk-ESG\n", + " [{'name': 'ContentType', 'value': 'Symbology S...\n", + " Bulk-ESG-Global-Symbology-SEDOL-v1-Jsonl-Init-...\n", + " 2022-12-04T10:25:00Z\n", + " 4b4b-b0d1-3924c754-a228-7778e1a7a9c6\n", + " [466e-6440-01b46fac-a011-104dacac3bd9]\n", + " 1970-01-01T00:00:00Z\n", + " 2022-12-04T10:46:27Z\n", + " 48ff-7e86-20bd08b2-8bbf-ee1b93395d59\n", + " 2022-12-04T10:46:18Z\n", " 1\n", - " 2021-12-23T10:48:14Z\n", + " 2022-12-04T10:46:18Z\n", + " 2023-01-04T10:46:18Z\n", + " READY\n", " \n", " \n", " 8\n", - " 2021-12-09T10:53:43Z\n", - " READY\n", - " RFT-ESG-Symbology-SEDOL-Delta-2021-12-09\n", - " 2021-12-09T10:53:43Z\n", - " 2021-12-09T10:53:48Z\n", - " [40a3-c30b-423a505c-b8af-dc0afca3a9fe]\n", - " 4db5-3cd4-008c366e-8ed7-ab22fc94fb47\n", - " 4c21-38b5-1a8d09da-8e6a-311a2f6da1af\n", - " [{'name': 'ContentType', 'value': 'Symbology S...\n", - " ESG\n", - " 2021-12-02T10:40:00Z\n", - " 2021-12-09T10:40:00Z\n", + " bulk-ESG\n", + " [{'name': 'ContentType', 'value': 'Symbology O...\n", + " Bulk-ESG-Global-Symbology-Organization-v2-Json...\n", + " 2022-12-04T10:25:00Z\n", + " 4290-785a-59883f5b-a690-342f7e17807f\n", + " [466e-7a31-db6d3661-97f0-efcf865c5af7]\n", + " 2022-11-27T10:25:00Z\n", + " 2022-12-04T10:46:48Z\n", + " 4df5-78b2-c5e4f1ae-a81a-a83822272ea0\n", + " 2022-12-04T10:46:41Z\n", " 1\n", - " 2021-12-23T10:53:43Z\n", + " 2022-12-04T10:46:41Z\n", + " 2022-12-18T10:46:41Z\n", + " READY\n", " \n", " \n", " 9\n", - " 2021-12-09T10:55:17Z\n", - " READY\n", - " RFT-ESG-Symbology-InstrumentQuote-Delta-2021-1...\n", - " 2021-12-09T10:55:17Z\n", - " 2021-12-09T10:55:57Z\n", - " [4c34-00cb-fc96a541-930e-6a451c95d6c5]\n", - " 4ff9-00c0-b0d9c39c-bf9c-3dcb2050fdbd\n", - " 42cb-2fde-346a2ada-b77e-5c85554fba70\n", - " [{'name': 'ContentType', 'value': 'Symbology I...\n", - " ESG\n", - " 2021-12-02T10:40:00Z\n", - " 2021-12-09T10:40:00Z\n", + " bulk-ESG\n", + " [{'name': 'ContentType', 'value': 'Symbology O...\n", + " Bulk-ESG-Global-Symbology-Organization-v2-Json...\n", + " 2022-12-04T10:25:00Z\n", + " 4a82-443d-d4d2f12a-893e-557069e098c1\n", + " [4cbc-eacc-1e6f9a5b-8e4c-1971f9611d57]\n", + " 1970-01-01T00:00:00Z\n", + " 2022-12-04T10:47:19Z\n", + " 4827-be50-c5f6fd9f-9e78-5f57121b5a4c\n", + " 2022-12-04T10:47:13Z\n", " 1\n", - " 2021-12-23T10:55:17Z\n", + " 2022-12-04T10:47:13Z\n", + " 2022-12-18T10:47:13Z\n", + " READY\n", " \n", " \n", "\n", "" ], "text/plain": [ - " availableFrom status \\\n", - "0 2021-12-09T10:27:43Z READY \n", - "1 2021-12-09T10:32:41Z READY \n", - "2 2021-12-09T10:34:17Z READY \n", - "3 2021-12-09T10:44:07Z READY \n", - "4 2021-12-09T10:46:03Z READY \n", - "5 2021-12-09T10:46:52Z READY \n", - "6 2021-12-09T10:47:41Z READY \n", - "7 2021-12-09T10:48:14Z READY \n", - "8 2021-12-09T10:53:43Z READY \n", - "9 2021-12-09T10:55:17Z READY \n", + " bucketName attributes \\\n", + "0 bulk-ESG [{'name': 'ContentType', 'value': 'Symbology C... \n", + "1 bulk-ESG [{'name': 'ContentType', 'value': 'Symbology I... \n", + "2 bulk-ESG [{'name': 'ContentType', 'value': 'Symbology I... \n", + "3 bulk-ESG [{'name': 'ContentType', 'value': 'Symbology C... \n", + "4 bulk-ESG [{'name': 'ContentType', 'value': 'Symbology O... \n", + "5 bulk-ESG [{'name': 'ContentType', 'value': 'Symbology O... \n", + "6 bulk-ESG [{'name': 'ContentType', 'value': 'Symbology S... \n", + "7 bulk-ESG [{'name': 'ContentType', 'value': 'Symbology S... \n", + "8 bulk-ESG [{'name': 'ContentType', 'value': 'Symbology O... \n", + "9 bulk-ESG [{'name': 'ContentType', 'value': 'Symbology O... \n", "\n", - " name created \\\n", - "0 RFT-ESG-Symbology-Cusip-Init-2021-12-09 2021-12-09T10:27:43Z \n", - "1 RFT-ESG-Symbology-ISIN-Init-2021-12-09 2021-12-09T10:32:41Z \n", - "2 RFT-ESG-Symbology-Organization-Init-2021-12-09... 2021-12-09T10:34:17Z \n", - "3 RFT-ESG-Symbology-SEDOL-Init-2021-12-09 2021-12-09T10:44:07Z \n", - "4 RFT-ESG-Symbology-InstrumentQuote-Init-2021-12-09 2021-12-09T10:46:03Z \n", - "5 RFT-ESG-Symbology-ISIN-Delta-2021-12-09 2021-12-09T10:46:52Z \n", - "6 RFT-ESG-Symbology-Cusip-Delta-2021-12-09 2021-12-09T10:47:41Z \n", - "7 RFT-ESG-Symbology-Organization-Delta-2021-12-0... 2021-12-09T10:48:14Z \n", - "8 RFT-ESG-Symbology-SEDOL-Delta-2021-12-09 2021-12-09T10:53:43Z \n", - "9 RFT-ESG-Symbology-InstrumentQuote-Delta-2021-1... 2021-12-09T10:55:17Z \n", + " name contentTo \\\n", + "0 Bulk-ESG-Global-Symbology-Cusip-v1-Jsonl-Init-... 2022-12-04T10:25:00Z \n", + "1 Bulk-ESG-Global-Symbology-ISIN-v1-Jsonl-Delta-... 2022-12-04T10:25:00Z \n", + "2 Bulk-ESG-Global-Symbology-ISIN-v1-Jsonl-Init-2... 2022-12-04T10:25:00Z \n", + "3 Bulk-ESG-Global-Symbology-Cusip-v1-Jsonl-Delta... 2022-12-04T10:25:00Z \n", + "4 Bulk-ESG-Global-Symbology-Organization-v1-Json... 2022-12-04T10:25:00Z \n", + "5 Bulk-ESG-Global-Symbology-Organization-v1-Json... 2022-12-04T10:25:00Z \n", + "6 Bulk-ESG-Global-Symbology-SEDOL-v1-Jsonl-Delta... 2022-12-04T10:25:00Z \n", + "7 Bulk-ESG-Global-Symbology-SEDOL-v1-Jsonl-Init-... 2022-12-04T10:25:00Z \n", + "8 Bulk-ESG-Global-Symbology-Organization-v2-Json... 2022-12-04T10:25:00Z \n", + "9 Bulk-ESG-Global-Symbology-Organization-v2-Json... 2022-12-04T10:25:00Z \n", "\n", - " modified files \\\n", - "0 2021-12-09T10:27:46Z [45cd-fc7d-75b253f3-a165-8d8fb6945412] \n", - "1 2021-12-09T10:32:44Z [4d9b-dce5-2cb598a1-ad29-7dc59921519a] \n", - "2 2021-12-09T10:34:21Z [4959-6d5d-e217dd39-8226-67782f72be33] \n", - "3 2021-12-09T10:44:15Z [40fe-7af9-0f865404-8954-bec3fbeb32ba] \n", - "4 2021-12-09T10:47:06Z [4d30-dd3b-b06ee43c-ab81-79888df15611] \n", - "5 2021-12-09T10:46:54Z [4539-f9ab-3365dbed-ac51-cca969ef84fa] \n", - "6 2021-12-09T10:47:43Z [4f7b-d1f5-98207a8c-a0c4-5f10f5b8a780] \n", - "7 2021-12-09T10:48:17Z [4787-0cd8-72681273-9b44-3a2cac9264eb] \n", - "8 2021-12-09T10:53:48Z [40a3-c30b-423a505c-b8af-dc0afca3a9fe] \n", - "9 2021-12-09T10:55:57Z [4c34-00cb-fc96a541-930e-6a451c95d6c5] \n", + " id \\\n", + "0 463f-1afa-a582f0a5-b58a-c0135b9eb6b1 \n", + "1 4b17-3681-7a3cd7c2-833a-efe7f3e9b0e0 \n", + "2 408f-0df2-ee2e4fda-a333-ea55c1d19a6a \n", + "3 41ef-c2eb-eba6994d-9d92-4f9085f2b9e9 \n", + "4 4f21-3107-bbbecfee-9850-d6df53d116f8 \n", + "5 4cad-4c63-d7d72104-9801-161099b18be2 \n", + "6 4a17-74e7-d9310ba8-80eb-3280d053f867 \n", + "7 4b4b-b0d1-3924c754-a228-7778e1a7a9c6 \n", + "8 4290-785a-59883f5b-a690-342f7e17807f \n", + "9 4a82-443d-d4d2f12a-893e-557069e098c1 \n", "\n", - " packageId id \\\n", - "0 466c-c470-22a4cab3-8d0c-770cdfa5fc45 4864-bfd1-4e5695c0-a035-f7900c236ea8 \n", - "1 48f0-8bdd-28d8432a-aae3-928067b0f64e 48f3-16f7-f533c3e1-a782-bbefc6414241 \n", - "2 4961-f8c5-20beccf6-850e-fd549b242fb5 4a49-cdde-dba9556b-8b73-90a22c172603 \n", - "3 4b75-7bb9-7e73ca6a-b61e-855c6335a6b6 4fe5-edc6-1bdc08f6-a8e6-1db410d90faf \n", - "4 41d7-a3e2-21d38219-9052-85b8f7dadb3c 4003-1870-f5f80de9-a9a7-dcbe0ff51736 \n", - "5 4038-cfc9-f5fa1794-9c65-5ead51a3d9fb 4981-b80c-ec155930-996f-4d6e5f409dca \n", - "6 4e22-f95e-157e6f14-89da-51b20f3f04c0 4461-fb32-0982bc6d-8e98-c824d75a3145 \n", - "7 4f5a-5a7d-f6e66b22-b52c-613fd5d28f5e 4526-0707-0327a3b8-ac7a-9407ee986295 \n", - "8 4db5-3cd4-008c366e-8ed7-ab22fc94fb47 4c21-38b5-1a8d09da-8e6a-311a2f6da1af \n", - "9 4ff9-00c0-b0d9c39c-bf9c-3dcb2050fdbd 42cb-2fde-346a2ada-b77e-5c85554fba70 \n", + " files contentFrom \\\n", + "0 [4c91-47f6-5937d21a-93ad-54c2e30949fe] 1970-01-01T00:00:00Z \n", + "1 [4428-cc0c-5a90419f-b141-9e315f9efa46] 2022-11-27T10:25:00Z \n", + "2 [4508-4e1f-d52415e1-be65-f1d323d21b59] 1970-01-01T00:00:00Z \n", + "3 [408a-89d6-d7ba90f0-a76d-04cb6d3c72e9] 2022-11-27T10:25:00Z \n", + "4 [4868-c3d6-637eb601-84a9-8d2c76e724a3] 1970-01-01T00:00:00Z \n", + "5 [47ef-4158-40f87247-9322-0d22f956f166] 2022-11-27T10:25:00Z \n", + "6 [48d7-7420-1685cbc0-bcf2-4f0844041e13] 2022-11-27T10:25:00Z \n", + "7 [466e-6440-01b46fac-a011-104dacac3bd9] 1970-01-01T00:00:00Z \n", + "8 [466e-7a31-db6d3661-97f0-efcf865c5af7] 2022-11-27T10:25:00Z \n", + "9 [4cbc-eacc-1e6f9a5b-8e4c-1971f9611d57] 1970-01-01T00:00:00Z \n", "\n", - " attributes bucketName \\\n", - "0 [{'name': 'ContentType', 'value': 'Symbology C... ESG \n", - "1 [{'name': 'ContentType', 'value': 'Symbology I... ESG \n", - "2 [{'name': 'ContentType', 'value': 'Symbology O... ESG \n", - "3 [{'name': 'ContentType', 'value': 'Symbology S... ESG \n", - "4 [{'name': 'ContentType', 'value': 'Symbology I... ESG \n", - "5 [{'name': 'ContentType', 'value': 'Symbology I... ESG \n", - "6 [{'name': 'ContentType', 'value': 'Symbology C... ESG \n", - "7 [{'name': 'ContentType', 'value': 'Symbology O... ESG \n", - "8 [{'name': 'ContentType', 'value': 'Symbology S... ESG \n", - "9 [{'name': 'ContentType', 'value': 'Symbology I... ESG \n", + " modified packageId \\\n", + "0 2022-12-04T10:34:04Z 4a7b-19e3-ac9446f0-9db9-9eab901a4953 \n", + "1 2022-12-04T10:34:42Z 42db-71ff-ea4bd04c-9739-849990675c7d \n", + "2 2022-12-04T10:34:45Z 444f-4895-36da1f18-9930-c3d6a89fac7c \n", + "3 2022-12-04T10:35:07Z 442c-d526-65702a11-b6b2-54f7d4f3cd7f \n", + "4 2022-12-04T10:36:18Z 4037-e79c-96b73648-a42a-6b65ef8ccbd1 \n", + "5 2022-12-04T10:45:43Z 45b3-4a72-65d1d317-af12-b38e106dc026 \n", + "6 2022-12-04T10:46:21Z 467d-dd94-53097bc5-a15e-ec653a0e29de \n", + "7 2022-12-04T10:46:27Z 48ff-7e86-20bd08b2-8bbf-ee1b93395d59 \n", + "8 2022-12-04T10:46:48Z 4df5-78b2-c5e4f1ae-a81a-a83822272ea0 \n", + "9 2022-12-04T10:47:19Z 4827-be50-c5f6fd9f-9e78-5f57121b5a4c \n", + "\n", + " availableFrom numFiles created availableTo \\\n", + "0 2022-12-04T10:34:01Z 1 2022-12-04T10:34:01Z 2023-01-04T10:34:01Z \n", + "1 2022-12-04T10:34:40Z 1 2022-12-04T10:34:40Z 2022-12-18T10:34:40Z \n", + "2 2022-12-04T10:34:42Z 1 2022-12-04T10:34:42Z 2023-01-04T10:34:42Z \n", + "3 2022-12-04T10:35:06Z 1 2022-12-04T10:35:06Z 2022-12-18T10:35:05Z \n", + "4 2022-12-04T10:36:12Z 1 2022-12-04T10:36:12Z 2022-12-18T10:36:12Z \n", + "5 2022-12-04T10:45:38Z 1 2022-12-04T10:45:38Z 2022-12-18T10:45:38Z \n", + "6 2022-12-04T10:46:16Z 1 2022-12-04T10:46:16Z 2022-12-18T10:46:16Z \n", + "7 2022-12-04T10:46:18Z 1 2022-12-04T10:46:18Z 2023-01-04T10:46:18Z \n", + "8 2022-12-04T10:46:41Z 1 2022-12-04T10:46:41Z 2022-12-18T10:46:41Z \n", + "9 2022-12-04T10:47:13Z 1 2022-12-04T10:47:13Z 2022-12-18T10:47:13Z \n", "\n", - " contentFrom contentTo numFiles availableTo \n", - "0 1970-01-01T00:00:00Z 2021-12-09T10:20:00Z 1 2021-12-23T10:27:43Z \n", - "1 1970-01-01T00:00:00Z 2021-12-09T10:25:00Z 1 2022-01-09T10:32:41Z \n", - "2 1970-01-01T00:00:00Z 2021-12-09T10:25:00Z 1 2021-12-23T10:34:16Z \n", - "3 1970-01-01T00:00:00Z 2021-12-09T10:30:00Z 1 2021-12-23T10:44:07Z \n", - "4 1970-01-01T00:00:00Z 2021-12-09T10:30:00Z 1 2021-12-23T10:46:03Z \n", - "5 2021-12-02T10:40:00Z 2021-12-09T10:40:00Z 1 2021-12-23T10:46:52Z \n", - "6 2021-12-02T10:40:00Z 2021-12-09T10:40:00Z 1 2021-12-23T10:47:41Z \n", - "7 2021-12-02T10:40:00Z 2021-12-09T10:40:00Z 1 2021-12-23T10:48:14Z \n", - "8 2021-12-02T10:40:00Z 2021-12-09T10:40:00Z 1 2021-12-23T10:53:43Z \n", - "9 2021-12-02T10:40:00Z 2021-12-09T10:40:00Z 1 2021-12-23T10:55:17Z " + " status \n", + "0 READY \n", + "1 READY \n", + "2 READY \n", + "3 READY \n", + "4 READY \n", + "5 READY \n", + "6 READY \n", + "7 READY \n", + "8 READY \n", + "9 READY " ] }, - "execution_count": 7, + "execution_count": 12, "metadata": {}, "output_type": "execute_result" } ], "source": [ "response = cfs.file_sets.Definition(\n", - " bucket='esg',\n", + " bucket='bulk-ESG',\n", " page_size=10,\n", " available_from=timedelta(days=-10),\n", " created_since=\"2020-10-02T12:00:00Z\"\n", @@ -1791,7 +1787,7 @@ }, { "cell_type": "code", - "execution_count": 8, + "execution_count": 14, "metadata": {}, "outputs": [ { @@ -1815,154 +1811,161 @@ " \n", " \n", " \n", - " availableFrom\n", - " status\n", + " bucketName\n", + " attributes\n", " name\n", - " created\n", - " modified\n", - " files\n", - " packageId\n", + " contentTo\n", " id\n", - " attributes\n", - " bucketName\n", + " files\n", " contentFrom\n", - " contentTo\n", + " modified\n", + " packageId\n", + " availableFrom\n", " numFiles\n", + " created\n", " availableTo\n", + " status\n", " \n", " \n", " \n", " \n", " 0\n", - " 2021-12-09T10:46:03Z\n", - " READY\n", - " RFT-ESG-Symbology-InstrumentQuote-Init-2021-12-09\n", - " 2021-12-09T10:46:03Z\n", - " 2021-12-09T10:47:06Z\n", - " [4d30-dd3b-b06ee43c-ab81-79888df15611]\n", - " 41d7-a3e2-21d38219-9052-85b8f7dadb3c\n", - " 4003-1870-f5f80de9-a9a7-dcbe0ff51736\n", - " [{'name': 'ContentType', 'value': 'Symbology I...\n", - " ESG\n", - " 1970-01-01T00:00:00Z\n", - " 2021-12-09T10:30:00Z\n", + " bulk-ESG\n", + " [{'name': 'ContentType', 'value': 'ESG Scores'}]\n", + " Bulk-ESG-Global-Scores-Full-v1-Jsonl-Delta-202...\n", + " 2022-12-11T16:25:00Z\n", + " 4010-5730-b53a7546-ad9a-0ae591a4fed1\n", + " [422b-b545-a0431e70-b15c-8d0fad346456]\n", + " 2022-12-04T16:25:00Z\n", + " 2022-12-11T16:35:16Z\n", + " 4f1d-c1e4-b448e23b-a51a-e4315800de31\n", + " 2022-12-11T16:34:42Z\n", " 1\n", - " 2021-12-23T10:46:03Z\n", + " 2022-12-11T16:34:42Z\n", + " 2022-12-25T16:34:42Z\n", + " READY\n", " \n", " \n", " 1\n", - " 2021-12-13T00:37:50Z\n", - " READY\n", - " RFT-ESG-Raw-Full-SchemeB-Social-Delta-2021-12-13\n", - " 2021-12-13T00:37:50Z\n", - " 2021-12-13T00:43:13Z\n", - " [42c3-3ab5-79961011-ae24-cb6fcde7a348]\n", - " 4b6c-def9-dd1c991c-8535-6f9a61df9fc8\n", - " 40c9-19c5-2e5f4dbe-aa10-61f298b603bc\n", - " [{'name': 'ResultCount', 'value': '51453'}, {'...\n", - " ESG\n", - " 2021-12-05T16:05:00Z\n", - " 2021-12-13T00:14:12Z\n", + " bulk-ESG\n", + " [{'name': 'ContentType', 'value': 'ESG EU BMR'}]\n", + " Bulk-ESG-Global-EU-BMR-v1-Jsonl-Init-2022-12-0...\n", + " 2022-12-04T15:55:00Z\n", + " 405e-257f-8f555107-90ea-04a4dadeaa86\n", + " [4bf4-9a6a-69aec78b-b22d-a2631977a6c9]\n", + " 1970-01-01T00:00:00Z\n", + " 2022-12-04T16:05:12Z\n", + " 48d4-e278-215dca78-bb4a-bca14a86a8f5\n", + " 2022-12-04T16:04:17Z\n", " 1\n", - " 2021-12-27T00:37:49Z\n", + " 2022-12-04T16:04:17Z\n", + " 2022-12-18T16:04:17Z\n", + " READY\n", " \n", " \n", " 2\n", - " 2021-12-05T16:15:58Z\n", - " READY\n", - " RFT-ESG-Raw-Full-SchemeB-Social-Init-2021-12-05\n", - " 2021-12-05T16:15:58Z\n", - " 2021-12-05T16:25:49Z\n", - " [4592-58c5-c2b0a415-8596-f4e82bb0f9f4]\n", - " 4b6c-def9-dd1c991c-8535-6f9a61df9fc8\n", - " 4121-c09e-fece32e1-90b3-fd1a4a389f15\n", - " [{'name': 'ResultCount', 'value': '107765'}, {...\n", - " ESG\n", - " 1970-01-01T00:00:00Z\n", - " 2021-12-05T16:05:00Z\n", + " bulk-ESG\n", + " [{'name': 'ResultCount', 'value': '69943'}, {'...\n", + " Bulk-ESG-Global-Sources-Full-v1-Jsonl-Delta-20...\n", + " 2022-12-04T16:45:00Z\n", + " 405e-a8f2-4e0bfcc3-9014-4218f081a539\n", + " [4a48-2280-a32705a0-9e27-34d343d4afad]\n", + " 2022-11-27T16:45:00Z\n", + " 2022-12-04T16:54:46Z\n", + " 43ac-6749-947dd136-bad9-f4d575af2253\n", + " 2022-12-04T16:54:20Z\n", " 1\n", - " 2021-12-19T16:15:58Z\n", + " 2022-12-04T16:54:20Z\n", + " 2022-12-18T16:54:19Z\n", + " READY\n", " \n", " \n", " 3\n", - " 2021-12-13T00:30:43Z\n", + " bulk-ESG\n", + " [{'name': 'ContentType', 'value': 'Symbology I...\n", + " Bulk-ESG-Global-Symbology-ISIN-v1-Jsonl-Init-2...\n", + " 2022-12-04T10:25:00Z\n", + " 408f-0df2-ee2e4fda-a333-ea55c1d19a6a\n", + " [4508-4e1f-d52415e1-be65-f1d323d21b59]\n", + " 1970-01-01T00:00:00Z\n", + " 2022-12-04T10:34:45Z\n", + " 444f-4895-36da1f18-9930-c3d6a89fac7c\n", + " 2022-12-04T10:34:42Z\n", + " 1\n", + " 2022-12-04T10:34:42Z\n", + " 2023-01-04T10:34:42Z\n", " READY\n", - " RFT-ESG-Raw-Wealth-Standard-delta-2021-12-13\n", - " 2021-12-13T00:30:43Z\n", - " 2021-12-13T00:31:45Z\n", - " [4b57-c2d4-4cd1d3aa-9fa7-00c4593f90ac, 4ee0-b7...\n", - " 4c3a-aca4-0cc88a33-b599-9647b1fb65ac\n", - " 4163-6c7f-d2f6b364-98d6-d0aa7a002f5f\n", - " [{'name': 'ResultCount', 'value': '28314'}, {'...\n", - " ESG\n", - " 2021-12-05T17:45:00Z\n", - " 2021-12-13T00:14:12Z\n", - " 2\n", - " 2022-01-13T00:30:43Z\n", " \n", " \n", " 4\n", - " 2021-12-05T16:08:13Z\n", - " READY\n", - " RFT-ESG-Raw-Full-SchemeA-Init-2021-12-05\n", - " 2021-12-05T16:08:13Z\n", - " 2021-12-05T16:11:59Z\n", - " [413a-3108-11690470-94b8-67c5c415c5e0, 453e-26...\n", - " 4e6a-ca79-af368ff5-931d-d2781b1cdb85\n", - " 41c1-0049-1579c97f-a761-1baae507517c\n", - " [{'name': 'ResultCount', 'value': '107765'}, {...\n", - " ESG\n", + " bulk-ESG\n", + " [{'name': 'ContentType', 'value': 'Symbology S...\n", + " Bulk-ESG-Global-Symbology-SEDOL-v1-Jsonl-Init-...\n", + " 2022-11-20T10:25:00Z\n", + " 40b0-5165-ec200230-84f9-09d527c460c2\n", + " [43df-4283-914e75ba-bf62-9ff0b391944f]\n", " 1970-01-01T00:00:00Z\n", - " 2021-12-05T15:55:00Z\n", - " 7\n", - " 2021-12-19T16:08:12Z\n", + " 2022-11-20T10:47:44Z\n", + " 48ff-7e86-20bd08b2-8bbf-ee1b93395d59\n", + " 2022-11-20T10:47:35Z\n", + " 1\n", + " 2022-11-20T10:47:35Z\n", + " 2022-12-20T10:47:35Z\n", + " READY\n", " \n", " \n", "\n", "" ], "text/plain": [ - " availableFrom status \\\n", - "0 2021-12-09T10:46:03Z READY \n", - "1 2021-12-13T00:37:50Z READY \n", - "2 2021-12-05T16:15:58Z READY \n", - "3 2021-12-13T00:30:43Z READY \n", - "4 2021-12-05T16:08:13Z READY \n", + " bucketName attributes \\\n", + "0 bulk-ESG [{'name': 'ContentType', 'value': 'ESG Scores'}] \n", + "1 bulk-ESG [{'name': 'ContentType', 'value': 'ESG EU BMR'}] \n", + "2 bulk-ESG [{'name': 'ResultCount', 'value': '69943'}, {'... \n", + "3 bulk-ESG [{'name': 'ContentType', 'value': 'Symbology I... \n", + "4 bulk-ESG [{'name': 'ContentType', 'value': 'Symbology S... \n", + "\n", + " name contentTo \\\n", + "0 Bulk-ESG-Global-Scores-Full-v1-Jsonl-Delta-202... 2022-12-11T16:25:00Z \n", + "1 Bulk-ESG-Global-EU-BMR-v1-Jsonl-Init-2022-12-0... 2022-12-04T15:55:00Z \n", + "2 Bulk-ESG-Global-Sources-Full-v1-Jsonl-Delta-20... 2022-12-04T16:45:00Z \n", + "3 Bulk-ESG-Global-Symbology-ISIN-v1-Jsonl-Init-2... 2022-12-04T10:25:00Z \n", + "4 Bulk-ESG-Global-Symbology-SEDOL-v1-Jsonl-Init-... 2022-11-20T10:25:00Z \n", "\n", - " name created \\\n", - "0 RFT-ESG-Symbology-InstrumentQuote-Init-2021-12-09 2021-12-09T10:46:03Z \n", - "1 RFT-ESG-Raw-Full-SchemeB-Social-Delta-2021-12-13 2021-12-13T00:37:50Z \n", - "2 RFT-ESG-Raw-Full-SchemeB-Social-Init-2021-12-05 2021-12-05T16:15:58Z \n", - "3 RFT-ESG-Raw-Wealth-Standard-delta-2021-12-13 2021-12-13T00:30:43Z \n", - "4 RFT-ESG-Raw-Full-SchemeA-Init-2021-12-05 2021-12-05T16:08:13Z \n", + " id \\\n", + "0 4010-5730-b53a7546-ad9a-0ae591a4fed1 \n", + "1 405e-257f-8f555107-90ea-04a4dadeaa86 \n", + "2 405e-a8f2-4e0bfcc3-9014-4218f081a539 \n", + "3 408f-0df2-ee2e4fda-a333-ea55c1d19a6a \n", + "4 40b0-5165-ec200230-84f9-09d527c460c2 \n", "\n", - " modified files \\\n", - "0 2021-12-09T10:47:06Z [4d30-dd3b-b06ee43c-ab81-79888df15611] \n", - "1 2021-12-13T00:43:13Z [42c3-3ab5-79961011-ae24-cb6fcde7a348] \n", - "2 2021-12-05T16:25:49Z [4592-58c5-c2b0a415-8596-f4e82bb0f9f4] \n", - "3 2021-12-13T00:31:45Z [4b57-c2d4-4cd1d3aa-9fa7-00c4593f90ac, 4ee0-b7... \n", - "4 2021-12-05T16:11:59Z [413a-3108-11690470-94b8-67c5c415c5e0, 453e-26... \n", + " files contentFrom \\\n", + "0 [422b-b545-a0431e70-b15c-8d0fad346456] 2022-12-04T16:25:00Z \n", + "1 [4bf4-9a6a-69aec78b-b22d-a2631977a6c9] 1970-01-01T00:00:00Z \n", + "2 [4a48-2280-a32705a0-9e27-34d343d4afad] 2022-11-27T16:45:00Z \n", + "3 [4508-4e1f-d52415e1-be65-f1d323d21b59] 1970-01-01T00:00:00Z \n", + "4 [43df-4283-914e75ba-bf62-9ff0b391944f] 1970-01-01T00:00:00Z \n", "\n", - " packageId id \\\n", - "0 41d7-a3e2-21d38219-9052-85b8f7dadb3c 4003-1870-f5f80de9-a9a7-dcbe0ff51736 \n", - "1 4b6c-def9-dd1c991c-8535-6f9a61df9fc8 40c9-19c5-2e5f4dbe-aa10-61f298b603bc \n", - "2 4b6c-def9-dd1c991c-8535-6f9a61df9fc8 4121-c09e-fece32e1-90b3-fd1a4a389f15 \n", - "3 4c3a-aca4-0cc88a33-b599-9647b1fb65ac 4163-6c7f-d2f6b364-98d6-d0aa7a002f5f \n", - "4 4e6a-ca79-af368ff5-931d-d2781b1cdb85 41c1-0049-1579c97f-a761-1baae507517c \n", + " modified packageId \\\n", + "0 2022-12-11T16:35:16Z 4f1d-c1e4-b448e23b-a51a-e4315800de31 \n", + "1 2022-12-04T16:05:12Z 48d4-e278-215dca78-bb4a-bca14a86a8f5 \n", + "2 2022-12-04T16:54:46Z 43ac-6749-947dd136-bad9-f4d575af2253 \n", + "3 2022-12-04T10:34:45Z 444f-4895-36da1f18-9930-c3d6a89fac7c \n", + "4 2022-11-20T10:47:44Z 48ff-7e86-20bd08b2-8bbf-ee1b93395d59 \n", "\n", - " attributes bucketName \\\n", - "0 [{'name': 'ContentType', 'value': 'Symbology I... ESG \n", - "1 [{'name': 'ResultCount', 'value': '51453'}, {'... ESG \n", - "2 [{'name': 'ResultCount', 'value': '107765'}, {... ESG \n", - "3 [{'name': 'ResultCount', 'value': '28314'}, {'... ESG \n", - "4 [{'name': 'ResultCount', 'value': '107765'}, {... ESG \n", + " availableFrom numFiles created availableTo \\\n", + "0 2022-12-11T16:34:42Z 1 2022-12-11T16:34:42Z 2022-12-25T16:34:42Z \n", + "1 2022-12-04T16:04:17Z 1 2022-12-04T16:04:17Z 2022-12-18T16:04:17Z \n", + "2 2022-12-04T16:54:20Z 1 2022-12-04T16:54:20Z 2022-12-18T16:54:19Z \n", + "3 2022-12-04T10:34:42Z 1 2022-12-04T10:34:42Z 2023-01-04T10:34:42Z \n", + "4 2022-11-20T10:47:35Z 1 2022-11-20T10:47:35Z 2022-12-20T10:47:35Z \n", "\n", - " contentFrom contentTo numFiles availableTo \n", - "0 1970-01-01T00:00:00Z 2021-12-09T10:30:00Z 1 2021-12-23T10:46:03Z \n", - "1 2021-12-05T16:05:00Z 2021-12-13T00:14:12Z 1 2021-12-27T00:37:49Z \n", - "2 1970-01-01T00:00:00Z 2021-12-05T16:05:00Z 1 2021-12-19T16:15:58Z \n", - "3 2021-12-05T17:45:00Z 2021-12-13T00:14:12Z 2 2022-01-13T00:30:43Z \n", - "4 1970-01-01T00:00:00Z 2021-12-05T15:55:00Z 7 2021-12-19T16:08:12Z " + " status \n", + "0 READY \n", + "1 READY \n", + "2 READY \n", + "3 READY \n", + "4 READY " ] }, "metadata": {}, @@ -1989,154 +1992,161 @@ " \n", " \n", " \n", - " availableFrom\n", - " status\n", + " bucketName\n", + " attributes\n", " name\n", - " created\n", - " modified\n", - " files\n", - " packageId\n", + " contentTo\n", " id\n", - " attributes\n", - " bucketName\n", + " files\n", " contentFrom\n", - " contentTo\n", + " modified\n", + " packageId\n", + " availableFrom\n", " numFiles\n", + " created\n", " availableTo\n", + " status\n", " \n", " \n", " \n", " \n", " 0\n", - " 2021-11-21T19:25:21Z\n", - " READY\n", - " RFT-ESG-Scores-Wealth-Standard-delta-2021-11-21\n", - " 2021-11-21T19:25:21Z\n", - " 2021-11-21T19:25:26Z\n", - " [4a93-33a1-daec9217-a23b-948a7a802bb4]\n", - " 4bcc-4602-0a57ebb2-baf0-1fc9825e76b6\n", - " 425f-9323-42c19562-91c3-91362c82d256\n", - " [{'name': 'ResultCount', 'value': '28076'}, {'...\n", - " ESG\n", - " 2021-11-15T00:20:25Z\n", - " 2021-11-21T17:15:00Z\n", + " bulk-ESG\n", + " [{'name': 'ContentType', 'value': 'ESG Raw Cur...\n", + " Bulk-ESG-Global-Raw-Current-Limited-SchemeB-v1...\n", + " 2022-12-11T17:35:00Z\n", + " 40e8-8013-8efa3636-8820-1a94fe627291\n", + " [495a-b597-10aa1b9f-a7d1-73f8f9ce6b46]\n", + " 2022-12-04T17:35:00Z\n", + " 2022-12-11T17:42:36Z\n", + " 448b-4cc8-301b4e6a-9f6e-a0935eb8454b\n", + " 2022-12-11T17:42:24Z\n", " 1\n", - " 2021-12-21T19:25:21Z\n", + " 2022-12-11T17:42:24Z\n", + " 2022-12-25T17:42:24Z\n", + " READY\n", " \n", " \n", " 1\n", - " 2021-12-13T00:31:10Z\n", - " READY\n", - " RFT-ESG-Scores-Wealth-Standard-init-2021-12-13\n", - " 2021-12-13T00:31:11Z\n", - " 2021-12-13T00:31:17Z\n", - " [4860-4d47-8d488a8b-a081-ce9ee132024b]\n", - " 4bcc-4602-0a57ebb2-baf0-1fc9825e76b6\n", - " 4293-91ad-6641a5e9-aae6-75099bc18905\n", - " [{'name': 'ResultCount', 'value': '32382'}, {'...\n", - " ESG\n", - " 1970-01-01T00:00:00Z\n", - " 2021-12-13T00:14:12Z\n", + " bulk-ESG\n", + " [{'name': 'ContentType', 'value': 'ESG Raw Cur...\n", + " Bulk-ESG-Global-Raw-Current-Limited-SchemeB-v1...\n", + " 2022-12-04T17:35:00Z\n", + " 40f7-9cd9-ff2e3c7d-819d-6e082ec8071e\n", + " [4ca6-efb9-a46da6da-994c-ed11da669e2e]\n", + " 2022-11-27T17:35:00Z\n", + " 2022-12-04T17:42:29Z\n", + " 448b-4cc8-301b4e6a-9f6e-a0935eb8454b\n", + " 2022-12-04T17:42:14Z\n", " 1\n", - " 2022-01-13T00:31:10Z\n", + " 2022-12-04T17:42:14Z\n", + " 2022-12-18T17:42:14Z\n", + " READY\n", " \n", " \n", " 2\n", - " 2021-11-18T10:32:49Z\n", - " READY\n", - " RFT-ESG-Symbology-ISIN-Init-2021-11-18\n", - " 2021-11-18T10:32:49Z\n", - " 2021-11-18T10:32:52Z\n", - " [41f2-f04a-9a9a9f91-bd9f-3a327e91c4d9]\n", - " 48f0-8bdd-28d8432a-aae3-928067b0f64e\n", - " 429f-8ac4-267dfb5b-99ae-8e86245e0fb8\n", - " [{'name': 'ContentType', 'value': 'Symbology I...\n", - " ESG\n", + " bulk-ESG\n", + " [{'name': 'ContentType', 'value': 'ESG Scores'}]\n", + " Bulk-ESG-Global-Scores-Wealth-Standard-v1-Json...\n", + " 2022-12-04T17:15:00Z\n", + " 4116-3460-006487a2-b7ce-6a8f2d659335\n", + " [483e-a433-194323d0-9d51-e21c9011dae1]\n", " 1970-01-01T00:00:00Z\n", - " 2021-11-18T10:25:00Z\n", + " 2022-12-04T17:24:42Z\n", + " 4d07-921a-7337a7cc-a291-e5b049ddf4dc\n", + " 2022-12-04T17:24:17Z\n", " 1\n", - " 2021-12-18T10:32:49Z\n", + " 2022-12-04T17:24:17Z\n", + " 2022-12-18T17:24:17Z\n", + " READY\n", " \n", " \n", " 3\n", - " 2021-12-09T10:55:17Z\n", - " READY\n", - " RFT-ESG-Symbology-InstrumentQuote-Delta-2021-1...\n", - " 2021-12-09T10:55:17Z\n", - " 2021-12-09T10:55:57Z\n", - " [4c34-00cb-fc96a541-930e-6a451c95d6c5]\n", - " 4ff9-00c0-b0d9c39c-bf9c-3dcb2050fdbd\n", - " 42cb-2fde-346a2ada-b77e-5c85554fba70\n", - " [{'name': 'ContentType', 'value': 'Symbology I...\n", - " ESG\n", - " 2021-12-02T10:40:00Z\n", - " 2021-12-09T10:40:00Z\n", + " bulk-ESG\n", + " [{'name': 'ContentType', 'value': 'ESG Scores'}]\n", + " Bulk-ESG-Global-Scores-Full-v1-Jsonl-Delta-202...\n", + " 2022-12-04T16:25:00Z\n", + " 412d-82bd-e5a10723-834a-1e9298e5e22e\n", + " [42af-2bd7-5d915c41-8802-871fbda73d07]\n", + " 2022-11-27T16:25:00Z\n", + " 2022-12-04T16:35:10Z\n", + " 4f1d-c1e4-b448e23b-a51a-e4315800de31\n", + " 2022-12-04T16:34:35Z\n", " 1\n", - " 2021-12-23T10:55:17Z\n", + " 2022-12-04T16:34:35Z\n", + " 2022-12-18T16:34:35Z\n", + " READY\n", " \n", " \n", " 4\n", - " 2021-11-21T20:12:49Z\n", + " bulk-ESG\n", + " [{'name': 'ContentType', 'value': 'Symbology I...\n", + " Bulk-ESG-Global-Symbology-InstrumentQuote-v1-J...\n", + " 2022-12-04T10:25:00Z\n", + " 414d-b6a5-d2cf1498-9b8a-dc657ee67e22\n", + " [4ad2-d94b-944646e5-8001-3b22af8386a7]\n", + " 1970-01-01T00:00:00Z\n", + " 2022-12-04T10:49:12Z\n", + " 4dc5-4efa-bf8327db-8997-57899e9833cc\n", + " 2022-12-04T10:48:04Z\n", + " 1\n", + " 2022-12-04T10:48:04Z\n", + " 2022-12-18T10:48:04Z\n", " READY\n", - " RFT-ESG-Raw-Wealth-Standard-delta-2021-11-21\n", - " 2021-11-21T20:12:49Z\n", - " 2021-11-21T20:13:46Z\n", - " [447c-afc7-3507e47b-81f2-41a6e0df20b7, 4be0-96...\n", - " 4c3a-aca4-0cc88a33-b599-9647b1fb65ac\n", - " 430c-8a44-66efaf0d-b224-926e6ed588e4\n", - " [{'name': 'ContentType', 'value': 'ESG Raw Wea...\n", - " ESG\n", - " 2021-11-15T00:20:25Z\n", - " 2021-11-21T17:45:00Z\n", - " 2\n", - " 2021-12-21T20:12:48Z\n", " \n", " \n", "\n", "" ], "text/plain": [ - " availableFrom status \\\n", - "0 2021-11-21T19:25:21Z READY \n", - "1 2021-12-13T00:31:10Z READY \n", - "2 2021-11-18T10:32:49Z READY \n", - "3 2021-12-09T10:55:17Z READY \n", - "4 2021-11-21T20:12:49Z READY \n", + " bucketName attributes \\\n", + "0 bulk-ESG [{'name': 'ContentType', 'value': 'ESG Raw Cur... \n", + "1 bulk-ESG [{'name': 'ContentType', 'value': 'ESG Raw Cur... \n", + "2 bulk-ESG [{'name': 'ContentType', 'value': 'ESG Scores'}] \n", + "3 bulk-ESG [{'name': 'ContentType', 'value': 'ESG Scores'}] \n", + "4 bulk-ESG [{'name': 'ContentType', 'value': 'Symbology I... \n", "\n", - " name created \\\n", - "0 RFT-ESG-Scores-Wealth-Standard-delta-2021-11-21 2021-11-21T19:25:21Z \n", - "1 RFT-ESG-Scores-Wealth-Standard-init-2021-12-13 2021-12-13T00:31:11Z \n", - "2 RFT-ESG-Symbology-ISIN-Init-2021-11-18 2021-11-18T10:32:49Z \n", - "3 RFT-ESG-Symbology-InstrumentQuote-Delta-2021-1... 2021-12-09T10:55:17Z \n", - "4 RFT-ESG-Raw-Wealth-Standard-delta-2021-11-21 2021-11-21T20:12:49Z \n", + " name contentTo \\\n", + "0 Bulk-ESG-Global-Raw-Current-Limited-SchemeB-v1... 2022-12-11T17:35:00Z \n", + "1 Bulk-ESG-Global-Raw-Current-Limited-SchemeB-v1... 2022-12-04T17:35:00Z \n", + "2 Bulk-ESG-Global-Scores-Wealth-Standard-v1-Json... 2022-12-04T17:15:00Z \n", + "3 Bulk-ESG-Global-Scores-Full-v1-Jsonl-Delta-202... 2022-12-04T16:25:00Z \n", + "4 Bulk-ESG-Global-Symbology-InstrumentQuote-v1-J... 2022-12-04T10:25:00Z \n", "\n", - " modified files \\\n", - "0 2021-11-21T19:25:26Z [4a93-33a1-daec9217-a23b-948a7a802bb4] \n", - "1 2021-12-13T00:31:17Z [4860-4d47-8d488a8b-a081-ce9ee132024b] \n", - "2 2021-11-18T10:32:52Z [41f2-f04a-9a9a9f91-bd9f-3a327e91c4d9] \n", - "3 2021-12-09T10:55:57Z [4c34-00cb-fc96a541-930e-6a451c95d6c5] \n", - "4 2021-11-21T20:13:46Z [447c-afc7-3507e47b-81f2-41a6e0df20b7, 4be0-96... \n", + " id \\\n", + "0 40e8-8013-8efa3636-8820-1a94fe627291 \n", + "1 40f7-9cd9-ff2e3c7d-819d-6e082ec8071e \n", + "2 4116-3460-006487a2-b7ce-6a8f2d659335 \n", + "3 412d-82bd-e5a10723-834a-1e9298e5e22e \n", + "4 414d-b6a5-d2cf1498-9b8a-dc657ee67e22 \n", "\n", - " packageId id \\\n", - "0 4bcc-4602-0a57ebb2-baf0-1fc9825e76b6 425f-9323-42c19562-91c3-91362c82d256 \n", - "1 4bcc-4602-0a57ebb2-baf0-1fc9825e76b6 4293-91ad-6641a5e9-aae6-75099bc18905 \n", - "2 48f0-8bdd-28d8432a-aae3-928067b0f64e 429f-8ac4-267dfb5b-99ae-8e86245e0fb8 \n", - "3 4ff9-00c0-b0d9c39c-bf9c-3dcb2050fdbd 42cb-2fde-346a2ada-b77e-5c85554fba70 \n", - "4 4c3a-aca4-0cc88a33-b599-9647b1fb65ac 430c-8a44-66efaf0d-b224-926e6ed588e4 \n", + " files contentFrom \\\n", + "0 [495a-b597-10aa1b9f-a7d1-73f8f9ce6b46] 2022-12-04T17:35:00Z \n", + "1 [4ca6-efb9-a46da6da-994c-ed11da669e2e] 2022-11-27T17:35:00Z \n", + "2 [483e-a433-194323d0-9d51-e21c9011dae1] 1970-01-01T00:00:00Z \n", + "3 [42af-2bd7-5d915c41-8802-871fbda73d07] 2022-11-27T16:25:00Z \n", + "4 [4ad2-d94b-944646e5-8001-3b22af8386a7] 1970-01-01T00:00:00Z \n", + "\n", + " modified packageId \\\n", + "0 2022-12-11T17:42:36Z 448b-4cc8-301b4e6a-9f6e-a0935eb8454b \n", + "1 2022-12-04T17:42:29Z 448b-4cc8-301b4e6a-9f6e-a0935eb8454b \n", + "2 2022-12-04T17:24:42Z 4d07-921a-7337a7cc-a291-e5b049ddf4dc \n", + "3 2022-12-04T16:35:10Z 4f1d-c1e4-b448e23b-a51a-e4315800de31 \n", + "4 2022-12-04T10:49:12Z 4dc5-4efa-bf8327db-8997-57899e9833cc \n", "\n", - " attributes bucketName \\\n", - "0 [{'name': 'ResultCount', 'value': '28076'}, {'... ESG \n", - "1 [{'name': 'ResultCount', 'value': '32382'}, {'... ESG \n", - "2 [{'name': 'ContentType', 'value': 'Symbology I... ESG \n", - "3 [{'name': 'ContentType', 'value': 'Symbology I... ESG \n", - "4 [{'name': 'ContentType', 'value': 'ESG Raw Wea... ESG \n", + " availableFrom numFiles created availableTo \\\n", + "0 2022-12-11T17:42:24Z 1 2022-12-11T17:42:24Z 2022-12-25T17:42:24Z \n", + "1 2022-12-04T17:42:14Z 1 2022-12-04T17:42:14Z 2022-12-18T17:42:14Z \n", + "2 2022-12-04T17:24:17Z 1 2022-12-04T17:24:17Z 2022-12-18T17:24:17Z \n", + "3 2022-12-04T16:34:35Z 1 2022-12-04T16:34:35Z 2022-12-18T16:34:35Z \n", + "4 2022-12-04T10:48:04Z 1 2022-12-04T10:48:04Z 2022-12-18T10:48:04Z \n", "\n", - " contentFrom contentTo numFiles availableTo \n", - "0 2021-11-15T00:20:25Z 2021-11-21T17:15:00Z 1 2021-12-21T19:25:21Z \n", - "1 1970-01-01T00:00:00Z 2021-12-13T00:14:12Z 1 2022-01-13T00:31:10Z \n", - "2 1970-01-01T00:00:00Z 2021-11-18T10:25:00Z 1 2021-12-18T10:32:49Z \n", - "3 2021-12-02T10:40:00Z 2021-12-09T10:40:00Z 1 2021-12-23T10:55:17Z \n", - "4 2021-11-15T00:20:25Z 2021-11-21T17:45:00Z 2 2021-12-21T20:12:48Z " + " status \n", + "0 READY \n", + "1 READY \n", + "2 READY \n", + "3 READY \n", + "4 READY " ] }, "metadata": {}, @@ -2145,7 +2155,7 @@ ], "source": [ "page1_response = cfs.file_sets.Definition(\n", - " bucket='esg', \n", + " bucket='bulk-ESG', \n", " page_size=5\n", ").get_data()\n", "display(page1_response.data.df)\n", @@ -2153,7 +2163,7 @@ "token = page1_response.data.raw[\"skip_token\"]\n", "\n", "page2_response = cfs.file_sets.Definition(\n", - " bucket='esg',\n", + " bucket='bulk-ESG',\n", " page_size=5,\n", " skip_token=token,\n", ").get_data()\n", @@ -2176,7 +2186,7 @@ }, { "cell_type": "code", - "execution_count": 9, + "execution_count": 15, "metadata": {}, "outputs": [ { @@ -2200,50 +2210,52 @@ " \n", " \n", " \n", - " modified\n", " fileSizeInBytes\n", - " created\n", - " storageLocation\n", - " filesetId\n", + " md5\n", " id\n", - " href\n", + " filesetId\n", + " modified\n", " filename\n", + " href\n", + " created\n", + " storageLocation\n", " \n", " \n", " \n", " \n", " 0\n", - " 2021-12-09T10:47:06Z\n", - " 39498333\n", - " 2021-12-09T10:47:06Z\n", - " {'url': 'https://a206464-prod-esg.s3.amazonaws...\n", - " 4003-1870-f5f80de9-a9a7-dcbe0ff51736\n", - " 4d30-dd3b-b06ee43c-ab81-79888df15611\n", + " 13640237\n", + " a5d506992be6131d4adc1cbe49fe64e6\n", + " 422b-b545-a0431e70-b15c-8d0fad346456\n", + " 4010-5730-b53a7546-ad9a-0ae591a4fed1\n", + " 2022-12-11T16:34:51Z\n", + " Bulk-ESG-Global-Scores-Full-v1-Delta-2022-12-1...\n", " https://api.refinitiv.com/file-store/v1/files/...\n", - " RFT-ESG-Symbology-InstrumentQuote-Init-2021-12...\n", + " 2022-12-11T16:34:51Z\n", + " {'url': 'https://a206464-bulk-esg.s3.amazonaws...\n", " \n", " \n", "\n", "" ], "text/plain": [ - " modified fileSizeInBytes created \\\n", - "0 2021-12-09T10:47:06Z 39498333 2021-12-09T10:47:06Z \n", + " fileSizeInBytes md5 \\\n", + "0 13640237 a5d506992be6131d4adc1cbe49fe64e6 \n", "\n", - " storageLocation \\\n", - "0 {'url': 'https://a206464-prod-esg.s3.amazonaws... \n", + " id filesetId \\\n", + "0 422b-b545-a0431e70-b15c-8d0fad346456 4010-5730-b53a7546-ad9a-0ae591a4fed1 \n", "\n", - " filesetId id \\\n", - "0 4003-1870-f5f80de9-a9a7-dcbe0ff51736 4d30-dd3b-b06ee43c-ab81-79888df15611 \n", + " modified filename \\\n", + "0 2022-12-11T16:34:51Z Bulk-ESG-Global-Scores-Full-v1-Delta-2022-12-1... \n", "\n", - " href \\\n", - "0 https://api.refinitiv.com/file-store/v1/files/... \n", + " href created \\\n", + "0 https://api.refinitiv.com/file-store/v1/files/... 2022-12-11T16:34:51Z \n", "\n", - " filename \n", - "0 RFT-ESG-Symbology-InstrumentQuote-Init-2021-12... " + " storageLocation \n", + "0 {'url': 'https://a206464-bulk-esg.s3.amazonaws... " ] }, - "execution_count": 9, + "execution_count": 15, "metadata": {}, "output_type": "execute_result" } @@ -2264,16 +2276,16 @@ }, { "cell_type": "code", - "execution_count": 10, + "execution_count": 16, "metadata": {}, "outputs": [ { "data": { "text/plain": [ - "'RFT-ESG-Symbology-InstrumentQuote-Init-2021-12-09.jsonl'" + "'Bulk-ESG-Global-Scores-Full-v1-Delta-2022-12-11T163135.260Z.jsonl'" ] }, - "execution_count": 10, + "execution_count": 16, "metadata": {}, "output_type": "execute_result" } @@ -2301,7 +2313,7 @@ }, { "cell_type": "code", - "execution_count": 11, + "execution_count": 17, "metadata": { "tags": [] }, @@ -2327,55 +2339,55 @@ " \n", " \n", " \n", - " modified\n", - " packageId\n", - " created\n", " contactEmail\n", " bucketNames\n", " packageType\n", + " created\n", + " modified\n", " packageName\n", + " packageId\n", " \n", " \n", " \n", " \n", " 0\n", - " 2021-07-12T06:45:37Z\n", - " 411f-f1a0-b6869167-a819-30c04e554fc6\n", - " 2021-07-12T06:45:37Z\n", " anita.varma@refinitiv.com\n", " [rft-bulk-esg]\n", " bulk\n", + " 2021-07-12T06:45:37Z\n", + " 2021-07-12T06:45:37Z\n", " RFT-ESG-Scores-Wealth-Standard-v1\n", + " 411f-f1a0-b6869167-a819-30c04e554fc6\n", " \n", " \n", " 1\n", - " 2021-05-06T10:02:11Z\n", - " 4bcc-4602-0a57ebb2-baf0-1fc9825e76b6\n", - " 2020-10-09T13:55:14Z\n", - " anita.varma@refinitiv.com\n", + " anita.varma@lseg.com\n", " [ESG]\n", " bulk\n", + " 2020-10-09T13:55:14Z\n", + " 2022-10-21T09:56:43Z\n", " RFT-ESG-Scores-Wealth-Standard\n", + " 4bcc-4602-0a57ebb2-baf0-1fc9825e76b6\n", " \n", " \n", "\n", "" ], "text/plain": [ - " modified packageId \\\n", - "0 2021-07-12T06:45:37Z 411f-f1a0-b6869167-a819-30c04e554fc6 \n", - "1 2021-05-06T10:02:11Z 4bcc-4602-0a57ebb2-baf0-1fc9825e76b6 \n", + " contactEmail bucketNames packageType \\\n", + "0 anita.varma@refinitiv.com [rft-bulk-esg] bulk \n", + "1 anita.varma@lseg.com [ESG] bulk \n", "\n", - " created contactEmail bucketNames \\\n", - "0 2021-07-12T06:45:37Z anita.varma@refinitiv.com [rft-bulk-esg] \n", - "1 2020-10-09T13:55:14Z anita.varma@refinitiv.com [ESG] \n", + " created modified \\\n", + "0 2021-07-12T06:45:37Z 2021-07-12T06:45:37Z \n", + "1 2020-10-09T13:55:14Z 2022-10-21T09:56:43Z \n", "\n", - " packageType packageName \n", - "0 bulk RFT-ESG-Scores-Wealth-Standard-v1 \n", - "1 bulk RFT-ESG-Scores-Wealth-Standard " + " packageName packageId \n", + "0 RFT-ESG-Scores-Wealth-Standard-v1 411f-f1a0-b6869167-a819-30c04e554fc6 \n", + "1 RFT-ESG-Scores-Wealth-Standard 4bcc-4602-0a57ebb2-baf0-1fc9825e76b6 " ] }, - "execution_count": 11, + "execution_count": 17, "metadata": {}, "output_type": "execute_result" } @@ -2394,7 +2406,7 @@ }, { "cell_type": "code", - "execution_count": 12, + "execution_count": 18, "metadata": {}, "outputs": [ { @@ -2419,181 +2431,181 @@ " \n", " \n", " modified\n", - " created\n", - " contactEmail\n", - " bucketNames\n", " packageName\n", " packageId\n", - " description\n", + " contactEmail\n", " packageType\n", + " bucketNames\n", + " description\n", + " created\n", " \n", " \n", " \n", " \n", " 0\n", - " 2020-11-23T06:51:39Z\n", - " 2020-08-29T16:52:56Z\n", + " 2020-11-23T06:01:11Z\n", + " VBD_MEX_SYM_5Y\n", + " 4020-6002-8a707342-be53-88aa6c7e0537\n", " kraken@refinitiv.com\n", - " [TICKHISTORY_VBD_LIMITED]\n", - " VBD_DMX_SYM_CUSIP_SEDOL_GICS_5Y\n", - " 4021-791d-6acc1987-9802-1ac35bf99d10\n", - " Package for venue DMX with view sym-cusip-sedo...\n", " core\n", + " [TICKHISTORY_VBD_LIMITED]\n", + " Package for venue MEX with view sym and depth ...\n", + " 2020-08-29T16:16:54Z\n", " \n", " \n", " 1\n", - " 2020-11-23T06:36:03Z\n", - " 2020-08-29T16:42:08Z\n", + " 2020-11-23T04:15:58Z\n", + " VBD_BRU_REF_DATA_CUSIP_GICS_5Y\n", + " 4020-ccb5-5e51d1af-bd94-bc99948046d2\n", " kraken@refinitiv.com\n", - " [TICKHISTORY_VBD_LIMITED]\n", - " VBD_SCZ_REF_INIT_SEDOL_5Y\n", - " 4022-4ea0-7a90068e-a137-5b833c9d87d3\n", - " Package for venue SCZ with view ref-init-sedol...\n", " core\n", + " [TICKHISTORY_VBD_LIMITED]\n", + " Package for venue BRU with view ref-data-cusip...\n", + " 2020-08-29T15:08:24Z\n", " \n", " \n", " 2\n", - " 2020-11-23T06:53:20Z\n", - " 2020-08-29T16:54:04Z\n", + " 2021-11-01T09:55:48Z\n", + " VBD_CHE_RAW_MP_5Y\n", + " 4020-df87-9c64817a-9c67-efddebffbf4d\n", " kraken@refinitiv.com\n", - " [TICKHISTORY_VBD_LIMITED]\n", - " VBD_TBE_SYM_GICS_5Y\n", - " 4022-99ba-13b70471-acf4-a75383927f01\n", - " Package for venue TBE with view sym-gics and d...\n", " core\n", + " [TICKHISTORY_VBD_LIMITED]\n", + " Package for venue CHE with view rawMP and dept...\n", + " 2020-08-29T15:49:47Z\n", " \n", " \n", " 3\n", - " 2020-11-23T05:15:54Z\n", - " 2020-08-29T15:47:22Z\n", + " 2021-12-05T04:10:03Z\n", + " VBD_PTX_NORMALISED_MBO_5Y\n", + " 4021-71c8-0b7bb5f8-9d8a-37b8e6be645f\n", " kraken@refinitiv.com\n", - " [TICKHISTORY_VBD_LIMITED]\n", - " VBD_TWA_TREU_SYM_SEDOL_GICS_5Y\n", - " 4022-f047-35cea0f8-9254-f14f034959bf\n", - " Package for venue TWA_TREU with view sym-sedol...\n", " core\n", + " [TICKHISTORY_VBD_LIMITED]\n", + " Package for venue PTX with view normalisedMBO ...\n", + " 2021-12-05T04:10:03Z\n", " \n", " \n", " 4\n", - " 2020-11-23T05:17:33Z\n", - " 2020-08-29T15:48:26Z\n", + " 2020-11-23T06:51:39Z\n", + " VBD_DMX_SYM_CUSIP_SEDOL_GICS_5Y\n", + " 4021-791d-6acc1987-9802-1ac35bf99d10\n", " kraken@refinitiv.com\n", - " [TICKHISTORY_VBD_LIMITED]\n", - " VBD_BCU_REF_INIT_CUSIP_SEDOL_5Y\n", - " 4023-67b0-e62e5d64-a88f-1db47a9f8a85\n", - " Package for venue BCU with view ref-init-cusip...\n", " core\n", + " [TICKHISTORY_VBD_LIMITED]\n", + " Package for venue DMX with view sym-cusip-sedo...\n", + " 2020-08-29T16:52:56Z\n", " \n", " \n", " 5\n", - " 2020-11-23T07:14:10Z\n", - " 2020-08-29T17:07:56Z\n", + " 2020-11-23T06:36:03Z\n", + " VBD_SCZ_REF_INIT_SEDOL_5Y\n", + " 4022-4ea0-7a90068e-a137-5b833c9d87d3\n", " kraken@refinitiv.com\n", - " [TICKHISTORY_VBD_LIMITED]\n", - " VBD_TAI_REF_DATA_CUSIP_GICS_5Y\n", - " 4024-2b55-8e247668-b1db-1e6994e2d0bd\n", - " Package for venue TAI with view ref-data-cusip...\n", " core\n", + " [TICKHISTORY_VBD_LIMITED]\n", + " Package for venue SCZ with view ref-init-sedol...\n", + " 2020-08-29T16:42:08Z\n", " \n", " \n", " 6\n", - " 2020-11-23T04:33:06Z\n", - " 2020-08-29T15:19:16Z\n", + " 2020-11-23T06:53:20Z\n", + " VBD_TBE_SYM_GICS_5Y\n", + " 4022-99ba-13b70471-acf4-a75383927f01\n", " kraken@refinitiv.com\n", - " [TICKHISTORY_VBD_LIMITED]\n", - " VBD_CSI_SYM_SEDOL_GICS_5Y\n", - " 4024-e861-bcb8e12f-b4f1-7cff4cbcf76c\n", - " Package for venue CSI with view sym-sedol-gics...\n", " core\n", + " [TICKHISTORY_VBD_LIMITED]\n", + " Package for venue TBE with view sym-gics and d...\n", + " 2020-08-29T16:54:04Z\n", " \n", " \n", " 7\n", - " 2020-11-23T04:07:28Z\n", - " 2020-08-29T15:03:09Z\n", + " 2020-11-23T05:15:54Z\n", + " VBD_TWA_TREU_SYM_SEDOL_GICS_5Y\n", + " 4022-f047-35cea0f8-9254-f14f034959bf\n", " kraken@refinitiv.com\n", - " [TICKHISTORY_VBD_LIMITED]\n", - " VBD_BAR_REF_INIT_CUSIP_SEDOL_5Y\n", - " 4025-bfcc-3a5d1292-b0f0-1bf9982bd0a3\n", - " Package for venue BAR with view ref-init-cusip...\n", " core\n", + " [TICKHISTORY_VBD_LIMITED]\n", + " Package for venue TWA_TREU with view sym-sedol...\n", + " 2020-08-29T15:47:22Z\n", " \n", " \n", " 8\n", - " 2020-11-23T07:34:44Z\n", - " 2020-08-29T17:22:08Z\n", + " 2020-11-23T05:17:33Z\n", + " VBD_BCU_REF_INIT_CUSIP_SEDOL_5Y\n", + " 4023-67b0-e62e5d64-a88f-1db47a9f8a85\n", " kraken@refinitiv.com\n", - " [TICKHISTORY_VBD_LIMITED]\n", - " VBD_MOT_REF_DATA_5Y\n", - " 4026-479b-60060341-a156-b07e7e46b7d3\n", - " Package for venue MOT with view ref-data and d...\n", " core\n", + " [TICKHISTORY_VBD_LIMITED]\n", + " Package for venue BCU with view ref-init-cusip...\n", + " 2020-08-29T15:48:26Z\n", " \n", " \n", " 9\n", - " 2020-11-23T06:15:42Z\n", - " 2020-08-29T16:26:23Z\n", + " 2020-11-23T07:14:10Z\n", + " VBD_TAI_REF_DATA_CUSIP_GICS_5Y\n", + " 4024-2b55-8e247668-b1db-1e6994e2d0bd\n", " kraken@refinitiv.com\n", - " [TICKHISTORY_VBD_LIMITED]\n", - " VBD_SGE_REF_DATA_CUSIP_SEDOL_5Y\n", - " 4026-4ad9-64beb54c-9437-3e83991115f7\n", - " Package for venue SGE with view ref-data-cusip...\n", " core\n", + " [TICKHISTORY_VBD_LIMITED]\n", + " Package for venue TAI with view ref-data-cusip...\n", + " 2020-08-29T17:07:56Z\n", " \n", " \n", "\n", "" ], "text/plain": [ - " modified created contactEmail \\\n", - "0 2020-11-23T06:51:39Z 2020-08-29T16:52:56Z kraken@refinitiv.com \n", - "1 2020-11-23T06:36:03Z 2020-08-29T16:42:08Z kraken@refinitiv.com \n", - "2 2020-11-23T06:53:20Z 2020-08-29T16:54:04Z kraken@refinitiv.com \n", - "3 2020-11-23T05:15:54Z 2020-08-29T15:47:22Z kraken@refinitiv.com \n", - "4 2020-11-23T05:17:33Z 2020-08-29T15:48:26Z kraken@refinitiv.com \n", - "5 2020-11-23T07:14:10Z 2020-08-29T17:07:56Z kraken@refinitiv.com \n", - "6 2020-11-23T04:33:06Z 2020-08-29T15:19:16Z kraken@refinitiv.com \n", - "7 2020-11-23T04:07:28Z 2020-08-29T15:03:09Z kraken@refinitiv.com \n", - "8 2020-11-23T07:34:44Z 2020-08-29T17:22:08Z kraken@refinitiv.com \n", - "9 2020-11-23T06:15:42Z 2020-08-29T16:26:23Z kraken@refinitiv.com \n", + " modified packageName \\\n", + "0 2020-11-23T06:01:11Z VBD_MEX_SYM_5Y \n", + "1 2020-11-23T04:15:58Z VBD_BRU_REF_DATA_CUSIP_GICS_5Y \n", + "2 2021-11-01T09:55:48Z VBD_CHE_RAW_MP_5Y \n", + "3 2021-12-05T04:10:03Z VBD_PTX_NORMALISED_MBO_5Y \n", + "4 2020-11-23T06:51:39Z VBD_DMX_SYM_CUSIP_SEDOL_GICS_5Y \n", + "5 2020-11-23T06:36:03Z VBD_SCZ_REF_INIT_SEDOL_5Y \n", + "6 2020-11-23T06:53:20Z VBD_TBE_SYM_GICS_5Y \n", + "7 2020-11-23T05:15:54Z VBD_TWA_TREU_SYM_SEDOL_GICS_5Y \n", + "8 2020-11-23T05:17:33Z VBD_BCU_REF_INIT_CUSIP_SEDOL_5Y \n", + "9 2020-11-23T07:14:10Z VBD_TAI_REF_DATA_CUSIP_GICS_5Y \n", "\n", - " bucketNames packageName \\\n", - "0 [TICKHISTORY_VBD_LIMITED] VBD_DMX_SYM_CUSIP_SEDOL_GICS_5Y \n", - "1 [TICKHISTORY_VBD_LIMITED] VBD_SCZ_REF_INIT_SEDOL_5Y \n", - "2 [TICKHISTORY_VBD_LIMITED] VBD_TBE_SYM_GICS_5Y \n", - "3 [TICKHISTORY_VBD_LIMITED] VBD_TWA_TREU_SYM_SEDOL_GICS_5Y \n", - "4 [TICKHISTORY_VBD_LIMITED] VBD_BCU_REF_INIT_CUSIP_SEDOL_5Y \n", - "5 [TICKHISTORY_VBD_LIMITED] VBD_TAI_REF_DATA_CUSIP_GICS_5Y \n", - "6 [TICKHISTORY_VBD_LIMITED] VBD_CSI_SYM_SEDOL_GICS_5Y \n", - "7 [TICKHISTORY_VBD_LIMITED] VBD_BAR_REF_INIT_CUSIP_SEDOL_5Y \n", - "8 [TICKHISTORY_VBD_LIMITED] VBD_MOT_REF_DATA_5Y \n", - "9 [TICKHISTORY_VBD_LIMITED] VBD_SGE_REF_DATA_CUSIP_SEDOL_5Y \n", + " packageId contactEmail packageType \\\n", + "0 4020-6002-8a707342-be53-88aa6c7e0537 kraken@refinitiv.com core \n", + "1 4020-ccb5-5e51d1af-bd94-bc99948046d2 kraken@refinitiv.com core \n", + "2 4020-df87-9c64817a-9c67-efddebffbf4d kraken@refinitiv.com core \n", + "3 4021-71c8-0b7bb5f8-9d8a-37b8e6be645f kraken@refinitiv.com core \n", + "4 4021-791d-6acc1987-9802-1ac35bf99d10 kraken@refinitiv.com core \n", + "5 4022-4ea0-7a90068e-a137-5b833c9d87d3 kraken@refinitiv.com core \n", + "6 4022-99ba-13b70471-acf4-a75383927f01 kraken@refinitiv.com core \n", + "7 4022-f047-35cea0f8-9254-f14f034959bf kraken@refinitiv.com core \n", + "8 4023-67b0-e62e5d64-a88f-1db47a9f8a85 kraken@refinitiv.com core \n", + "9 4024-2b55-8e247668-b1db-1e6994e2d0bd kraken@refinitiv.com core \n", "\n", - " packageId \\\n", - "0 4021-791d-6acc1987-9802-1ac35bf99d10 \n", - "1 4022-4ea0-7a90068e-a137-5b833c9d87d3 \n", - "2 4022-99ba-13b70471-acf4-a75383927f01 \n", - "3 4022-f047-35cea0f8-9254-f14f034959bf \n", - "4 4023-67b0-e62e5d64-a88f-1db47a9f8a85 \n", - "5 4024-2b55-8e247668-b1db-1e6994e2d0bd \n", - "6 4024-e861-bcb8e12f-b4f1-7cff4cbcf76c \n", - "7 4025-bfcc-3a5d1292-b0f0-1bf9982bd0a3 \n", - "8 4026-479b-60060341-a156-b07e7e46b7d3 \n", - "9 4026-4ad9-64beb54c-9437-3e83991115f7 \n", + " bucketNames \\\n", + "0 [TICKHISTORY_VBD_LIMITED] \n", + "1 [TICKHISTORY_VBD_LIMITED] \n", + "2 [TICKHISTORY_VBD_LIMITED] \n", + "3 [TICKHISTORY_VBD_LIMITED] \n", + "4 [TICKHISTORY_VBD_LIMITED] \n", + "5 [TICKHISTORY_VBD_LIMITED] \n", + "6 [TICKHISTORY_VBD_LIMITED] \n", + "7 [TICKHISTORY_VBD_LIMITED] \n", + "8 [TICKHISTORY_VBD_LIMITED] \n", + "9 [TICKHISTORY_VBD_LIMITED] \n", "\n", - " description packageType \n", - "0 Package for venue DMX with view sym-cusip-sedo... core \n", - "1 Package for venue SCZ with view ref-init-sedol... core \n", - "2 Package for venue TBE with view sym-gics and d... core \n", - "3 Package for venue TWA_TREU with view sym-sedol... core \n", - "4 Package for venue BCU with view ref-init-cusip... core \n", - "5 Package for venue TAI with view ref-data-cusip... core \n", - "6 Package for venue CSI with view sym-sedol-gics... core \n", - "7 Package for venue BAR with view ref-init-cusip... core \n", - "8 Package for venue MOT with view ref-data and d... core \n", - "9 Package for venue SGE with view ref-data-cusip... core " + " description created \n", + "0 Package for venue MEX with view sym and depth ... 2020-08-29T16:16:54Z \n", + "1 Package for venue BRU with view ref-data-cusip... 2020-08-29T15:08:24Z \n", + "2 Package for venue CHE with view rawMP and dept... 2020-08-29T15:49:47Z \n", + "3 Package for venue PTX with view normalisedMBO ... 2021-12-05T04:10:03Z \n", + "4 Package for venue DMX with view sym-cusip-sedo... 2020-08-29T16:52:56Z \n", + "5 Package for venue SCZ with view ref-init-sedol... 2020-08-29T16:42:08Z \n", + "6 Package for venue TBE with view sym-gics and d... 2020-08-29T16:54:04Z \n", + "7 Package for venue TWA_TREU with view sym-sedol... 2020-08-29T15:47:22Z \n", + "8 Package for venue BCU with view ref-init-cusip... 2020-08-29T15:48:26Z \n", + "9 Package for venue TAI with view ref-data-cusip... 2020-08-29T17:07:56Z " ] }, - "execution_count": 12, + "execution_count": 18, "metadata": {}, "output_type": "execute_result" } @@ -2618,7 +2630,7 @@ }, { "cell_type": "code", - "execution_count": 13, + "execution_count": 19, "metadata": { "pycharm": { "name": "#%%\n" @@ -2639,7 +2651,7 @@ ], "metadata": { "kernelspec": { - "display_name": "Python 3", + "display_name": "Python 3 (ipykernel)", "language": "python", "name": "python3" }, @@ -2653,7 +2665,7 @@ "name": "python", "nbconvert_exporter": "python", "pygments_lexer": "ipython3", - "version": "3.7.6" + "version": "3.9.7" } }, "nbformat": 4, diff --git a/Examples/3-Delivery/3.03-Bulk/EX-3.03.02-Bulk-ClientFileStore-TickHistory.ipynb b/Examples/3-Delivery/3.03-Bulk/EX-3.03.02-Bulk-ClientFileStore-TickHistory.ipynb index 3a11e36..8ce1bed 100644 --- a/Examples/3-Delivery/3.03-Bulk/EX-3.03.02-Bulk-ClientFileStore-TickHistory.ipynb +++ b/Examples/3-Delivery/3.03-Bulk/EX-3.03.02-Bulk-ClientFileStore-TickHistory.ipynb @@ -4,12 +4,7 @@ "cell_type": "markdown", "metadata": {}, "source": [ - "----\n", - "\n", - "\n", - "# Data Library for Python\n", - "\n", - "----" + "# Refinitiv Data Library for Python" ] }, { @@ -71,7 +66,7 @@ "outputs": [], "source": [ "import refinitiv.data as rd\n", - "import refinitiv.data.delivery.bulk.cfs as cfs" + "import refinitiv.data.delivery.cfs as cfs" ] }, { @@ -91,7 +86,7 @@ { "data": { "text/plain": [ - "" + "" ] }, "execution_count": 3, @@ -128,98 +123,283 @@ "text": [ "Bucket: TICKHISTORY_VBD_NO_EMBARGO\n", "\tFile sets: \n", - "\t\tICX_normalised_2012-11-24_UNLIMITED ID:4000-0037-263d473f-920d-7d0b0396d012\n", - "\t\tLSE_normalised_2014-09-24_UNLIMITED ID:4000-007a-a23e2dbb-8e9d-1f576e3876f4\n", - "\t\tKSC_rawLL2_2005-12-23_UNLIMITED ID:4000-0087-4f771645-873b-6e1032de6468\n", - "\t\tMLT_ref-data-sedol-gics_2020-12-13_UNLIMITED ID:4000-00ae-9f577cad-a77f-ecd6d188d6af\n", - "\t\tDIX_rawLL2_2006-08-26_UNLIMITED ID:4000-00c8-0533d86d-9713-2bdc4e322488\n", - "\t\tGER_sym-cusip-sedol_2020-12-08_UNLIMITED ID:4000-00ca-f08bf853-9758-458c7a059c24\n", - "\t\tTWB_CDS_normalised_2021-02-12_UNLIMITED ID:4000-00d2-91ac4ed7-ae30-6d24ad47b342\n", - "\t\tRTF_rawMP_2020-07-24_UNLIMITED ID:4000-00d8-b88f519f-9c92-9e14cfb2829e\n", - "\t\tCYS_normalised_2013-01-31_UNLIMITED ID:4000-00e5-88ec7f50-9428-d6eb220055ab\n", - "\t\tBTQ_ref-data-cusip_2018-11-23_UNLIMITED ID:4000-00ec-06d6d5d3-9e30-8777971bdc6d\n", - "\t\tIEO_ref-data-cusip-sedol_2021-10-09_UNLIMITED ID:4000-0109-e322f504-9569-b4ba452f0655\n", - "\t\tNYQ_corp-data_2021-01-11_UNLIMITED ID:4000-010c-575a872e-99c7-6dce0d061262\n", - "\t\tARC_normalisedLL2_2010-09-05_UNLIMITED ID:4000-011b-e0a012d9-872a-bbc634d5a770\n", - "\t\tBMF_ref-data-sedol-gics_2021-05-02_UNLIMITED ID:4000-0126-acad6862-a3da-39a37bd3a929\n", - "\t\tVTX_rawLL2_2002-02-17_UNLIMITED ID:4000-0143-91bda9de-8dca-0bf4f87eb9b1\n", - "\t\tEQD_ref-data-sedol-gics_2020-11-07_UNLIMITED ID:4000-0172-fb94a726-b49e-0cfe23a7c1cb\n", - "\t\tNMQ_normalised_2011-09-10_UNLIMITED ID:4000-0184-14065855-8514-1f70376d5eaf\n", - "\t\tAQE_ref-data-cusip_2021-01-24_UNLIMITED ID:4000-01a8-576eb78a-b3cb-8de8dba72e21\n", - "\t\tOSA_ref-data-sedol-gics_2020-10-17_UNLIMITED ID:4000-01ba-552d749c-a89b-6e5de764501c\n", - "\t\tBSE_normalised_2008-06-06_UNLIMITED ID:4000-01ed-ed13a89e-b509-613cb7d423fa\n", - "\t\tLCC_sym-gics_2018-11-05_UNLIMITED ID:4000-0206-954d2442-845b-c33ae1afaebe\n", - "\t\tMLT_normalisedLL2_2008-08-13_UNLIMITED ID:4000-0208-6f7c3011-92d5-bb1f4e7dd48f\n", - "\t\tLUX_rawMP_2014-10-11_UNLIMITED ID:4000-0221-bff761a1-ae3c-2672a39bd029\n", - "\t\tTEO_ref-data-cusip-sedol_2020-12-08_UNLIMITED ID:4000-0224-9575dc11-a3dd-a1056353e9f1\n", - "\t\tLUX_rawMP_1999-12-17_UNLIMITED ID:4000-0245-73eedbfc-9115-e513354fd909\n", + "\t\tICX_normalised_2012-11-24_UNLIMITED\tID:4000-0037-263d473f-920d-7d0b0396d012\n", + "\t\t\tFiles: \n", + "\t\t\t\tICX-2012-11-24-NORMALIZEDMP-Report-1-of-1.csv.gz\tSize (in Bytes):1113\n", + "\t\t\t\tICX-2012-11-24-NORMALIZEDMP-Data-1-of-1.csv.gz\tSize (in Bytes):449\n", + "\t\tLSE_normalised_2014-09-24_UNLIMITED\tID:4000-007a-a23e2dbb-8e9d-1f576e3876f4\n", + "\t\t\tFiles: \n", + "\t\t\t\tLSE-2014-09-24-NORMALIZEDMP-Report-1-of-1.csv.gz\tSize (in Bytes):262657\n", + "\t\t\t\tLSE-2014-09-24-NORMALIZEDMP-Data-1-of-1.csv.gz\tSize (in Bytes):195705388\n", + "\t\tKSC_rawLL2_2005-12-23_UNLIMITED\tID:4000-0087-4f771645-873b-6e1032de6468\n", + "\t\t\tFiles: \n", + "\t\t\t\tKSC-2005-12-23-LEGACYLEVEL2-Data-1-of-1.csv.gz\tSize (in Bytes):91072714\n", + "\t\t\t\tKSC-2005-12-23-LEGACYLEVEL2-Report-1-of-1.csv.gz\tSize (in Bytes):54023\n", + "\t\tMLT_ref-data-sedol-gics_2020-12-13_UNLIMITED\tID:4000-00ae-9f577cad-a77f-ecd6d188d6af\n", + "\t\t\tFiles: \n", + "\t\t\t\tMLT-2020-12-13-REF-Data-SEDOL-GICS-1-of-1.csv.gz\tSize (in Bytes):1412\n", + "\t\tDIX_rawLL2_2006-08-26_UNLIMITED\tID:4000-00c8-0533d86d-9713-2bdc4e322488\n", + "\t\t\tFiles: \n", + "\t\t\t\tDIX-2006-08-26-LEGACYLEVEL2-Report-1-of-1.csv.gz\tSize (in Bytes):191\n", + "\t\t\t\tDIX-2006-08-26-LEGACYLEVEL2-Data-1-of-1.csv.gz\tSize (in Bytes):3009\n", + "\t\tGER_sym-cusip-sedol_2020-12-08_UNLIMITED\tID:4000-00ca-f08bf853-9758-458c7a059c24\n", + "\t\t\tFiles: \n", + "\t\t\t\tGER-2020-12-08-Instruments-CUSIP-SEDOL-1-of-1.csv.gz\tSize (in Bytes):124227\n", + "\t\tTWB_CDS_normalised_2021-02-12_UNLIMITED\tID:4000-00d2-91ac4ed7-ae30-6d24ad47b342\n", + "\t\t\tFiles: \n", + "\t\t\t\tTWB_CDS-2021-02-12-NORMALIZEDMP-Report-1-of-1.csv.gz\tSize (in Bytes):31911\n", + "\t\t\t\tTWB_CDS-2021-02-12-NORMALIZEDMP-Data-1-of-1.csv.gz\tSize (in Bytes):845930\n", + "\t\tRTF_rawMP_2020-07-24_UNLIMITED\tID:4000-00d8-b88f519f-9c92-9e14cfb2829e\n", + "\t\t\tFiles: \n", + "\t\t\t\tRTF-2020-07-24-MARKETPRICE-Data-1-of-1.csv.gz\tSize (in Bytes):780516056\n", + "\t\t\t\tRTF-2020-07-24-MARKETPRICE-Report-1-of-1.csv.gz\tSize (in Bytes):574226\n", + "\t\tCYS_normalised_2013-01-31_UNLIMITED\tID:4000-00e5-88ec7f50-9428-d6eb220055ab\n", + "\t\t\tFiles: \n", + "\t\t\t\tCYS-2013-01-31-NORMALIZEDMP-Data-1-of-1.csv.gz\tSize (in Bytes):104161\n", + "\t\t\t\tCYS-2013-01-31-NORMALIZEDMP-Report-1-of-1.csv.gz\tSize (in Bytes):3246\n", + "\t\tBTQ_ref-data-cusip_2018-11-23_UNLIMITED\tID:4000-00ec-06d6d5d3-9e30-8777971bdc6d\n", + "\t\t\tFiles: \n", + "\t\t\t\tBTQ-2018-11-23-REF-Data-CUSIP-1-of-1.csv.gz\tSize (in Bytes):5031\n", + "\t\tSET_ref-data-cusip-sedol-gics_2022-01-02_UNLIMITED\tID:4000-00f2-a0e1c883-9985-a5d297264897\n", + "\t\t\tFiles: \n", + "\t\t\t\tSET-2022-01-02-REF-Data-CUSIP-SEDOL-GICS-1-of-1.csv.gz\tSize (in Bytes):6598\n", + "\t\tIEO_ref-data-cusip-sedol_2021-10-09_UNLIMITED\tID:4000-0109-e322f504-9569-b4ba452f0655\n", + "\t\t\tFiles: \n", + "\t\t\t\tIEO-2021-10-09-REF-Data-CUSIP-SEDOL-1-of-1.csv.gz\tSize (in Bytes):2092\n", + "\t\tNYQ_corp-data_2021-01-11_UNLIMITED\tID:4000-010c-575a872e-99c7-6dce0d061262\n", + "\t\t\tFiles: \n", + "\t\t\t\tNYQ-2021-01-11-CORP-Data-1-of-1.csv.gz\tSize (in Bytes):35137\n", + "\t\tARC_normalisedLL2_2010-09-05_UNLIMITED\tID:4000-011b-e0a012d9-872a-bbc634d5a770\n", + "\t\t\tFiles: \n", + "\t\t\t\tARC-2010-09-05-NORMALIZEDLL2-Report-1-of-1.csv.gz\tSize (in Bytes):87\n", + "\t\t\t\tARC-2010-09-05-NORMALIZEDLL2-Data-1-of-1.csv.gz\tSize (in Bytes):236\n", + "\t\tBMF_ref-data-sedol-gics_2021-05-02_UNLIMITED\tID:4000-0126-acad6862-a3da-39a37bd3a929\n", + "\t\t\tFiles: \n", + "\t\t\t\tBMF-2021-05-02-REF-Data-SEDOL-GICS-1-of-1.csv.gz\tSize (in Bytes):276108\n", + "\t\tVTX_rawLL2_2002-02-17_UNLIMITED\tID:4000-0143-91bda9de-8dca-0bf4f87eb9b1\n", + "\t\t\tFiles: \n", + "\t\t\t\tVTX-2002-02-17-LEGACYLEVEL2-Report-1-of-1.csv.gz\tSize (in Bytes):2487\n", + "\t\t\t\tVTX-2002-02-17-LEGACYLEVEL2-Data-1-of-1.csv.gz\tSize (in Bytes):166\n", + "\t\tOBB_rawMP_2010-01-12_UNLIMITED\tID:4000-015c-56564227-8d04-ce9a134d4918\n", + "\t\t\tFiles: \n", + "\t\t\t\tOBB-2010-01-12-MARKETPRICE-Report-1-of-1.csv.gz\tSize (in Bytes):44602\n", + "\t\t\t\tOBB-2010-01-12-MARKETPRICE-Data-1-of-1.csv.gz\tSize (in Bytes):5024480\n", + "\t\tEQD_ref-data-sedol-gics_2020-11-07_UNLIMITED\tID:4000-0172-fb94a726-b49e-0cfe23a7c1cb\n", + "\t\t\tFiles: \n", + "\t\t\t\tEQD-2020-11-07-REF-Data-SEDOL-GICS-1-of-1.csv.gz\tSize (in Bytes):10827\n", + "\t\tNMQ_normalised_2011-09-10_UNLIMITED\tID:4000-0184-14065855-8514-1f70376d5eaf\n", + "\t\t\tFiles: \n", + "\t\t\t\tNMQ-2011-09-10-NORMALIZEDMP-Report-1-of-1.csv.gz\tSize (in Bytes):8146\n", + "\t\t\t\tNMQ-2011-09-10-NORMALIZEDMP-Data-1-of-1.csv.gz\tSize (in Bytes):14457\n", + "\t\tAQE_ref-data-cusip_2021-01-24_UNLIMITED\tID:4000-01a8-576eb78a-b3cb-8de8dba72e21\n", + "\t\t\tFiles: \n", + "\t\t\t\tAQE-2021-01-24-REF-Data-CUSIP-1-of-1.csv.gz\tSize (in Bytes):1582\n", + "\t\tOSA_ref-data-sedol-gics_2020-10-17_UNLIMITED\tID:4000-01ba-552d749c-a89b-6e5de764501c\n", + "\t\t\tFiles: \n", + "\t\t\t\tOSA-2020-10-17-REF-Data-SEDOL-GICS-1-of-1.csv.gz\tSize (in Bytes):64204\n", + "\t\tBSE_normalised_2008-06-06_UNLIMITED\tID:4000-01ed-ed13a89e-b509-613cb7d423fa\n", + "\t\t\tFiles: \n", + "\t\t\t\tBSE-2008-06-06-NORMALIZEDMP-Data-1-of-1.csv.gz\tSize (in Bytes):22823519\n", + "\t\t\t\tBSE-2008-06-06-NORMALIZEDMP-Report-1-of-1.csv.gz\tSize (in Bytes):157561\n", + "\t\tLCC_sym-gics_2018-11-05_UNLIMITED\tID:4000-0206-954d2442-845b-c33ae1afaebe\n", + "\t\t\tFiles: \n", + "\t\t\t\tLCC-2018-11-05-Instruments-GICS-1-of-1.csv.gz\tSize (in Bytes):12171\n", + "\t\tMLT_normalisedLL2_2008-08-13_UNLIMITED\tID:4000-0208-6f7c3011-92d5-bb1f4e7dd48f\n", + "\t\t\tFiles: \n", + "\t\t\t\tMLT-2008-08-13-NORMALIZEDLL2-Data-1-of-1.csv.gz\tSize (in Bytes):236\n", + "\t\t\t\tMLT-2008-08-13-NORMALIZEDLL2-Report-1-of-1.csv.gz\tSize (in Bytes):522\n", + "\t\tLUX_rawMP_2014-10-11_UNLIMITED\tID:4000-0221-bff761a1-ae3c-2672a39bd029\n", + "\t\t\tFiles: \n", + "\t\t\t\tLUX-2014-10-11-MARKETPRICE-Report-1-of-1.csv.gz\tSize (in Bytes):523078\n", + "\t\t\t\tLUX-2014-10-11-MARKETPRICE-Data-1-of-1.csv.gz\tSize (in Bytes):15645056\n", "Bucket: TICKHISTORY_VBD_LIMITED\n", "\tFile sets: \n", - "\t\tATH_normalised_1999-11-06 ID:4000-0014-872577f1-87aa-a64dab32c669\n", - "\t\tTYO_rawMBP_2020-08-19 ID:4000-00ac-cc2b7824-a0dc-9594d5145fcf\n", - "\t\tASQ_sym-sedol_2018-03-10 ID:4000-00c0-9686b792-b40b-b0564ac2d894\n", - "\t\tOSL_rawLL2_2007-10-19 ID:4000-00e1-80cc8203-a4d0-e6f521a16797\n", - "\t\tGSD_ref-data_2021-05-06 ID:4000-00e6-4ba6c937-9f53-4c7dc77c6fdd\n", - "\t\tKLS_normalised_2007-11-13 ID:4000-0119-e7f728cd-a398-4f5563749859\n", - "\t\tASX_ref-data-sedol-gics_2021-06-25 ID:4000-0138-1afca155-89c6-24bcb63f15f8\n", - "\t\tPHS_ref-data-cusip-gics_2021-02-23 ID:4000-01be-e6e92660-b05d-1431e6f926b0\n", - "\t\tTWB_CNVBND_ref-data-cusip-gics_2021-08-29 ID:4000-01d4-4aad5e73-836e-d0f92f213f20\n", - "\t\tSNF_ref-data-cusip-sedol_2019-07-22 ID:4000-01db-c8264e3e-9ad0-e8cacabbae89\n", - "\t\tCMX_sym-cusip_2018-08-31 ID:4000-01ea-a9701e63-9d57-d069cc555591\n", - "\t\tDBX_normalisedLL2_2018-06-01 ID:4000-01fb-5fc5debf-9581-cc8a77b0d3ce\n", - "\t\tSHZ_rawMBO_2019-02-27 ID:4000-020d-a40ce782-b124-be313c8fcdcd\n", - "\t\tMCX_rawLL2_2012-05-08 ID:4000-0224-094f4424-b642-31a89bd31116\n", - "\t\tNYQ_sym-cusip-sedol-gics_2021-09-25 ID:4000-024d-03598e75-8e5a-bffa5fe4f6c8\n", - "\t\tBTQ_rawMP_2017-07-22 ID:4000-026e-613db1ec-9d53-6670e32b4e2c\n", - "\t\tFRA_ref-init-cusip-gics_2021-08-27 ID:4000-028f-4d73652a-81a6-93e2076f95c0\n", - "\t\tXPH_rawMP_2013-02-17 ID:4000-0290-cd9a347f-98ca-76f1f2b0c567\n", - "\t\tLCB_ref-data-cusip-sedol_2020-06-09 ID:4000-02a9-72db2fff-99bb-2823e1be548a\n", - "\t\tSCY_sym-sedol_2020-09-22 ID:4000-02ac-d875c235-bd7d-3e4af3c63188\n", - "\t\tRTF_ref-init_2021-05-28 ID:4000-02ca-6fb48e60-8cbb-c3d4734f83d5\n", - "\t\tBTQ_sym-cusip-sedol-gics_2021-04-11 ID:4000-02cd-6019fe7f-91ff-0738978e36ad\n", - "\t\tSDA_rawMP_2013-12-09 ID:4000-02d0-13751056-bbeb-583152cfa058\n", - "\t\tFXA_sym-sedol_2021-10-31 ID:4000-02f7-e77b30ba-9d37-6c9bfd18881a\n", - "\t\tISE_rawLL2_2012-03-21 ID:4000-034b-a110d733-9ad2-428d51842c57\n", + "\t\tATH_normalised_1999-11-06\tID:4000-0014-872577f1-87aa-a64dab32c669\n", + "\t\t\tFiles: \n", + "\t\t\t\tATH-1999-11-06-NORMALIZEDMP-Data-1-of-1.csv.gz\tSize (in Bytes):449\n", + "\t\t\t\tATH-1999-11-06-NORMALIZEDMP-Report-1-of-1.csv.gz\tSize (in Bytes):1250\n", + "\t\tTYO_rawMBP_2020-08-19\tID:4000-00ac-cc2b7824-a0dc-9594d5145fcf\n", + "\t\t\tFiles: \n", + "\t\t\t\tTYO-2020-08-19-MARKETBYPRICE-Data-1-of-1.csv.gz\tSize (in Bytes):1624385392\n", + "\t\t\t\tTYO-2020-08-19-MARKETBYPRICE-Report-1-of-1.csv.gz\tSize (in Bytes):51005\n", + "\t\tASQ_sym-sedol_2018-03-10\tID:4000-00c0-9686b792-b40b-b0564ac2d894\n", + "\t\t\tFiles: \n", + "\t\t\t\tASQ-2018-03-10-Instruments-SEDOL-1-of-1.csv.gz\tSize (in Bytes):6440\n", + "\t\tOSL_rawLL2_2007-10-19\tID:4000-00e1-80cc8203-a4d0-e6f521a16797\n", + "\t\t\tFiles: \n", + "\t\t\t\tOSL-2007-10-19-LEGACYLEVEL2-Data-1-of-1.csv.gz\tSize (in Bytes):20667633\n", + "\t\t\t\tOSL-2007-10-19-LEGACYLEVEL2-Report-1-of-1.csv.gz\tSize (in Bytes):90084\n", + "\t\tGSD_ref-data_2021-05-06\tID:4000-00e6-4ba6c937-9f53-4c7dc77c6fdd\n", + "\t\t\tFiles: \n", + "\t\t\t\tGSD-2021-05-06-REF-Data-1-of-1.csv.gz\tSize (in Bytes):4955\n", + "\t\tKLS_normalised_2007-11-13\tID:4000-0119-e7f728cd-a398-4f5563749859\n", + "\t\t\tFiles: \n", + "\t\t\t\tKLS-2007-11-13-NORMALIZEDMP-Report-1-of-1.csv.gz\tSize (in Bytes):27297\n", + "\t\t\t\tKLS-2007-11-13-NORMALIZEDMP-Data-1-of-1.csv.gz\tSize (in Bytes):3554244\n", + "\t\tASX_ref-data-sedol-gics_2021-06-25\tID:4000-0138-1afca155-89c6-24bcb63f15f8\n", + "\t\t\tFiles: \n", + "\t\t\t\tASX-2021-06-25-REF-Data-SEDOL-GICS-1-of-1.csv.gz\tSize (in Bytes):660240\n", + "\t\tBZX_normalisedMBP_2021-12-11\tID:4000-0156-fbb028cb-be3a-4ff7420734c5\n", + "\t\t\tFiles: \n", + "\t\t\t\tBZX-2021-12-11-MARKETBYPRICE-Report-1-of-1.csv.gz\tSize (in Bytes):116379\n", + "\t\t\t\tBZX-2021-12-11-MARKETBYPRICE-Data-1-of-1.csv.gz\tSize (in Bytes):1909888\n", + "\t\tPHS_ref-data-cusip-gics_2021-02-23\tID:4000-01be-e6e92660-b05d-1431e6f926b0\n", + "\t\t\tFiles: \n", + "\t\t\t\tPHS-2021-02-23-REF-Data-CUSIP-GICS-1-of-1.csv.gz\tSize (in Bytes):36663\n", + "\t\tTWB_CNVBND_ref-data-cusip-gics_2021-08-29\tID:4000-01d4-4aad5e73-836e-d0f92f213f20\n", + "\t\t\tFiles: \n", + "\t\t\t\tTWB_CNVBND-2021-08-29-REF-Data-CUSIP-GICS-1-of-1.csv.gz\tSize (in Bytes):2509\n", + "\t\tSNF_ref-data-cusip-sedol_2019-07-22\tID:4000-01db-c8264e3e-9ad0-e8cacabbae89\n", + "\t\t\tFiles: \n", + "\t\t\t\tSNF-2019-07-22-REF-Data-CUSIP-SEDOL-1-of-1.csv.gz\tSize (in Bytes):8944\n", + "\t\tCMX_sym-cusip_2018-08-31\tID:4000-01ea-a9701e63-9d57-d069cc555591\n", + "\t\t\tFiles: \n", + "\t\t\t\tCMX-2018-08-31-Instruments-CUSIP-1-of-1.csv.gz\tSize (in Bytes):1434288\n", + "\t\tDBX_normalisedLL2_2018-06-01\tID:4000-01fb-5fc5debf-9581-cc8a77b0d3ce\n", + "\t\t\tFiles: \n", + "\t\t\t\tDBX-2018-06-01-NORMALIZEDLL2-Report-1-of-1.csv.gz\tSize (in Bytes):618\n", + "\t\t\t\tDBX-2018-06-01-NORMALIZEDLL2-Data-1-of-1.csv.gz\tSize (in Bytes):230\n", + "\t\tSHZ_rawMBO_2019-02-27\tID:4000-020d-a40ce782-b124-be313c8fcdcd\n", + "\t\t\tFiles: \n", + "\t\t\t\tSHZ-2019-02-27-MARKETBYORDER-Data-1-of-1.csv.gz\tSize (in Bytes):3063144149\n", + "\t\t\t\tSHZ-2019-02-27-MARKETBYORDER-Report-1-of-1.csv.gz\tSize (in Bytes):71758\n", + "\t\tMCX_rawLL2_2012-05-08\tID:4000-0224-094f4424-b642-31a89bd31116\n", + "\t\t\tFiles: \n", + "\t\t\t\tMCX-2012-05-08-LEGACYLEVEL2-Report-1-of-1.csv.gz\tSize (in Bytes):36453\n", + "\t\t\t\tMCX-2012-05-08-LEGACYLEVEL2-Data-1-of-1.csv.gz\tSize (in Bytes):201564626\n", + "\t\tNYQ_sym-cusip-sedol-gics_2021-09-25\tID:4000-024d-03598e75-8e5a-bffa5fe4f6c8\n", + "\t\t\tFiles: \n", + "\t\t\t\tNYQ-2021-09-25-Instruments-CUSIP-SEDOL-GICS-1-of-1.csv.gz\tSize (in Bytes):128426\n", + "\t\tBTQ_rawMP_2017-07-22\tID:4000-026e-613db1ec-9d53-6670e32b4e2c\n", + "\t\t\tFiles: \n", + "\t\t\t\tBTQ-2017-07-22-MARKETPRICE-Report-1-of-1.csv.gz\tSize (in Bytes):3824\n", + "\t\t\t\tBTQ-2017-07-22-MARKETPRICE-Data-1-of-1.csv.gz\tSize (in Bytes):104339\n", + "\t\tFRA_ref-init-cusip-gics_2021-08-27\tID:4000-028f-4d73652a-81a6-93e2076f95c0\n", + "\t\t\tFiles: \n", + "\t\t\t\tFRA-2021-08-27-REF-Init-CUSIP-GICS-1-of-1.csv.gz\tSize (in Bytes):95389064\n", + "\t\tXPH_rawMP_2013-02-17\tID:4000-0290-cd9a347f-98ca-76f1f2b0c567\n", + "\t\t\tFiles: \n", + "\t\t\t\tXPH-2013-02-17-MARKETPRICE-Data-1-of-1.csv.gz\tSize (in Bytes):1331979\n", + "\t\t\t\tXPH-2013-02-17-MARKETPRICE-Report-1-of-1.csv.gz\tSize (in Bytes):74911\n", + "\t\tLCB_ref-data-cusip-sedol_2020-06-09\tID:4000-02a9-72db2fff-99bb-2823e1be548a\n", + "\t\t\tFiles: \n", + "\t\t\t\tLCB-2020-06-09-REF-Data-CUSIP-SEDOL-1-of-1.csv.gz\tSize (in Bytes):3935\n", + "\t\tSCY_sym-sedol_2020-09-22\tID:4000-02ac-d875c235-bd7d-3e4af3c63188\n", + "\t\t\tFiles: \n", + "\t\t\t\tSCY-2020-09-22-Instruments-SEDOL-1-of-1.csv.gz\tSize (in Bytes):20912\n", + "\t\tRTF_ref-init_2021-05-28\tID:4000-02ca-6fb48e60-8cbb-c3d4734f83d5\n", + "\t\t\tFiles: \n", + "\t\t\t\tRTF-2021-05-28-REF-Init-1-of-1.csv.gz\tSize (in Bytes):659411\n", + "\t\tBTQ_sym-cusip-sedol-gics_2021-04-11\tID:4000-02cd-6019fe7f-91ff-0738978e36ad\n", + "\t\t\tFiles: \n", + "\t\t\t\tBTQ-2021-04-11-Instruments-CUSIP-SEDOL-GICS-1-of-1.csv.gz\tSize (in Bytes):16315\n", + "\t\tSDA_rawMP_2013-12-09\tID:4000-02d0-13751056-bbeb-583152cfa058\n", + "\t\t\tFiles: \n", + "\t\t\t\tSDA-2013-12-09-MARKETPRICE-Data-1-of-1.csv.gz\tSize (in Bytes):14469248\n", + "\t\t\t\tSDA-2013-12-09-MARKETPRICE-Report-1-of-1.csv.gz\tSize (in Bytes):9173\n", + "\t\tFXA_sym-sedol_2021-10-31\tID:4000-02f7-e77b30ba-9d37-6c9bfd18881a\n", + "\t\t\tFiles: \n", + "\t\t\t\tFXA-2021-10-31-Instruments-SEDOL-1-of-1.csv.gz\tSize (in Bytes):337529\n", "Bucket: TICKHISTORY_VBD\n", "\tFile sets: \n", "Bucket: TICKHISTORY_VBD_UNLIMITED\n", "\tFile sets: \n", - "\t\tPFT_ref-init-gics_2021-01-22 ID:4000-0016-6a7bd302-b5f7-60ef3be290ca\n", - "\t\tCAI_corp-report_2019-02-22 ID:4000-001a-8c9d48cf-b865-d0a77ebcc1c6\n", - "\t\tIST_ref-report_2020-10-05 ID:4000-0041-66363a80-a8ca-cd5a6f534f4e\n", - "\t\tNGO_normalisedLL2_2018-01-14 ID:4000-006e-5f0eeff9-b0e9-bea51ee55bb3\n", - "\t\tFKA_ref-data-cusip-sedol-gics_2019-01-15 ID:4000-0084-7aea8602-a070-5a8e4e88b94b\n", - "\t\tRTF_sym-cusip-sedol_2019-08-26 ID:4000-00bd-7b752ed3-9b56-4d248d068998\n", - "\t\tBRU_corp-data_2019-02-25 ID:4000-00c7-c7954c6a-9583-b7e1eb5e4f9e\n", - "\t\tTFF_rawLL2_2009-02-25 ID:4000-00d2-f00f4407-9412-061923938274\n", - "\t\tSGO_ref-data-sedol-gics_2018-11-30 ID:4000-00da-e5a7ca9c-83d4-d833f701f7fd\n", - "\t\tSCA_ref-data-gics_2018-01-10 ID:4000-00f7-2b6079f5-bf8e-bdd89ef17659\n", - "\t\tTHM_corp-report_2020-05-25 ID:4000-013e-501b5153-83a0-72f2023ac492\n", - "\t\tA2X_normalisedLL2_2018-05-26 ID:4000-0149-c0acdfa7-a5db-0dda0162e4aa\n", - "\t\tGDA_rawMP_2016-11-08 ID:4000-014a-87239328-9ef4-7808b04d7be7\n", - "\t\tTWB_IRS_ref-report_2021-07-02 ID:4000-014c-fa1fa22a-b6da-506b3eac32db\n", - "\t\tNAI_ref-data_2019-09-18 ID:4000-016a-e0e79a6c-aedc-ee843dfb3ba4\n", - "\t\tISG_sym-cusip-gics_2020-12-26 ID:4000-017f-ef7e7a01-9da0-29c11700d9a9\n", - "\t\tBUD_normalisedLL2_2005-09-25 ID:4000-0185-0342b591-86e9-ad8ef2364170\n", - "\t\tMXP_ref-data-sedol-gics_2018-06-15 ID:4000-01dd-51941bf1-8f55-e4c4b43436f9\n", - "\t\tTBE_ref-data-cusip-sedol-gics_2021-03-16 ID:4000-01f6-369a1b33-88c9-b5616bce6f50\n", - "\t\tGSX_ref-data-cusip-sedol-gics_2021-11-24 ID:4000-021a-9440fb78-87dc-8ce4d1ad8d70\n", - "\t\tCMX_normalisedLL2_2020-05-19 ID:4000-021e-58966668-9ccc-750f6240358d\n", - "\t\tLAT_sym-cusip-sedol-gics_2020-12-09 ID:4000-022e-3e2bfe8a-af79-874488fe5c66\n", - "\t\tFSI_ref-data-sedol-gics_2019-08-10 ID:4000-0238-fd5a33a1-a9da-86c5995ed4e0\n", - "\t\tMAT_ref-report_2021-06-17 ID:4000-0258-41ca9e15-af8e-c787122e4e18\n", - "\t\tMLT_sym-cusip-sedol_2021-01-28 ID:4000-0260-05a423d9-b0a5-e20a816de996\n" + "\t\tPFT_ref-init-gics_2021-01-22\tID:4000-0016-6a7bd302-b5f7-60ef3be290ca\n", + "\t\t\tFiles: \n", + "\t\t\t\tPFT-2021-01-22-REF-Init-GICS-1-of-1.csv.gz\tSize (in Bytes):22591\n", + "\t\tCAI_corp-report_2019-02-22\tID:4000-001a-8c9d48cf-b865-d0a77ebcc1c6\n", + "\t\t\tFiles: \n", + "\t\t\t\tCAI-2019-02-22-CORP-Report-1-of-1.csv.gz\tSize (in Bytes):2939\n", + "\t\tIST_ref-report_2020-10-05\tID:4000-0041-66363a80-a8ca-cd5a6f534f4e\n", + "\t\t\tFiles: \n", + "\t\t\t\tIST-2020-10-05-REF-Report-1-of-1.csv.gz\tSize (in Bytes):34374\n", + "\t\tNGO_normalisedLL2_2018-01-14\tID:4000-006e-5f0eeff9-b0e9-bea51ee55bb3\n", + "\t\t\tFiles: \n", + "\t\t\t\tNGO-2018-01-14-NORMALIZEDLL2-Data-1-of-1.csv.gz\tSize (in Bytes):230\n", + "\t\t\t\tNGO-2018-01-14-NORMALIZEDLL2-Report-1-of-1.csv.gz\tSize (in Bytes):3604\n", + "\t\tFKA_ref-data-cusip-sedol-gics_2019-01-15\tID:4000-0084-7aea8602-a070-5a8e4e88b94b\n", + "\t\t\tFiles: \n", + "\t\t\t\tFKA-2019-01-15-REF-Data-CUSIP-SEDOL-GICS-1-of-1.csv.gz\tSize (in Bytes):1421\n", + "\t\tRTF_sym-cusip-sedol_2019-08-26\tID:4000-00bd-7b752ed3-9b56-4d248d068998\n", + "\t\t\tFiles: \n", + "\t\t\t\tRTF-2019-08-26-Instruments-CUSIP-SEDOL-1-of-1.csv.gz\tSize (in Bytes):91948\n", + "\t\tBRU_corp-data_2019-02-25\tID:4000-00c7-c7954c6a-9583-b7e1eb5e4f9e\n", + "\t\t\tFiles: \n", + "\t\t\t\tBRU-2019-02-25-CORP-Data-1-of-1.csv.gz\tSize (in Bytes):3305\n", + "\t\tTFF_rawLL2_2009-02-25\tID:4000-00d2-f00f4407-9412-061923938274\n", + "\t\t\tFiles: \n", + "\t\t\t\tTFF-2009-02-25-LEGACYLEVEL2-Report-1-of-1.csv.gz\tSize (in Bytes):3674\n", + "\t\t\t\tTFF-2009-02-25-LEGACYLEVEL2-Data-1-of-1.csv.gz\tSize (in Bytes):276424\n", + "\t\tSGO_ref-data-sedol-gics_2018-11-30\tID:4000-00da-e5a7ca9c-83d4-d833f701f7fd\n", + "\t\t\tFiles: \n", + "\t\t\t\tSGO-2018-11-30-REF-Data-SEDOL-GICS-1-of-1.csv.gz\tSize (in Bytes):5012\n", + "\t\tSCA_ref-data-gics_2018-01-10\tID:4000-00f7-2b6079f5-bf8e-bdd89ef17659\n", + "\t\t\tFiles: \n", + "\t\t\t\tSCA-2018-01-10-REF-Data-GICS-1-of-1.csv.gz\tSize (in Bytes):3452\n", + "\t\tTHM_corp-report_2020-05-25\tID:4000-013e-501b5153-83a0-72f2023ac492\n", + "\t\t\tFiles: \n", + "\t\t\t\tTHM-2020-05-25-CORP-Report-1-of-1.csv.gz\tSize (in Bytes):17133\n", + "\t\tA2X_normalisedLL2_2018-05-26\tID:4000-0149-c0acdfa7-a5db-0dda0162e4aa\n", + "\t\t\tFiles: \n", + "\t\t\t\tA2X-2018-05-26-NORMALIZEDLL2-Report-1-of-1.csv.gz\tSize (in Bytes):116\n", + "\t\t\t\tA2X-2018-05-26-NORMALIZEDLL2-Data-1-of-1.csv.gz\tSize (in Bytes):236\n", + "\t\tGDA_rawMP_2016-11-08\tID:4000-014a-87239328-9ef4-7808b04d7be7\n", + "\t\t\tFiles: \n", + "\t\t\t\tGDA-2016-11-08-MARKETPRICE-Data-1-of-1.csv.gz\tSize (in Bytes):257568894\n", + "\t\t\t\tGDA-2016-11-08-MARKETPRICE-Report-1-of-1.csv.gz\tSize (in Bytes):27548\n", + "\t\tTWB_IRS_ref-report_2021-07-02\tID:4000-014c-fa1fa22a-b6da-506b3eac32db\n", + "\t\t\tFiles: \n", + "\t\t\t\tTWB_IRS-2021-07-02-REF-Report-1-of-1.csv.gz\tSize (in Bytes):8752\n", + "\t\tNAI_ref-data_2019-09-18\tID:4000-016a-e0e79a6c-aedc-ee843dfb3ba4\n", + "\t\t\tFiles: \n", + "\t\t\t\tNAI-2019-09-18-REF-Data-1-of-1.csv.gz\tSize (in Bytes):1557\n", + "\t\tISG_sym-cusip-gics_2020-12-26\tID:4000-017f-ef7e7a01-9da0-29c11700d9a9\n", + "\t\t\tFiles: \n", + "\t\t\t\tISG-2020-12-26-Instruments-CUSIP-GICS-1-of-1.csv.gz\tSize (in Bytes):46031\n", + "\t\tBUD_normalisedLL2_2005-09-25\tID:4000-0185-0342b591-86e9-ad8ef2364170\n", + "\t\t\tFiles: \n", + "\t\t\t\tBUD-2005-09-25-NORMALIZEDLL2-Report-1-of-1.csv.gz\tSize (in Bytes):7734\n", + "\t\t\t\tBUD-2005-09-25-NORMALIZEDLL2-Data-1-of-1.csv.gz\tSize (in Bytes):230\n", + "\t\tBZX_sym-cusip-sedol-gics_2021-12-29\tID:4000-01c6-ffe77c64-9a95-5bd0bc787305\n", + "\t\t\tFiles: \n", + "\t\t\t\tBZX-2021-12-29-Instruments-CUSIP-SEDOL-GICS-1-of-1.csv.gz\tSize (in Bytes):344263\n", + "\t\tMXP_ref-data-sedol-gics_2018-06-15\tID:4000-01dd-51941bf1-8f55-e4c4b43436f9\n", + "\t\t\tFiles: \n", + "\t\t\t\tMXP-2018-06-15-REF-Data-SEDOL-GICS-1-of-1.csv.gz\tSize (in Bytes):1827\n", + "\t\tTBE_ref-data-cusip-sedol-gics_2021-03-16\tID:4000-01f6-369a1b33-88c9-b5616bce6f50\n", + "\t\t\tFiles: \n", + "\t\t\t\tTBE-2021-03-16-REF-Data-CUSIP-SEDOL-GICS-1-of-1.csv.gz\tSize (in Bytes):5794309\n", + "\t\tGSX_ref-data-cusip-sedol-gics_2021-11-24\tID:4000-021a-9440fb78-87dc-8ce4d1ad8d70\n", + "\t\t\tFiles: \n", + "\t\t\t\tGSX-2021-11-24-REF-Data-CUSIP-SEDOL-GICS-1-of-1.csv.gz\tSize (in Bytes):6048\n", + "\t\tCMX_normalisedLL2_2020-05-19\tID:4000-021e-58966668-9ccc-750f6240358d\n", + "\t\t\tFiles: \n", + "\t\t\t\tCMX-2020-05-19-NORMALIZEDLL2-Report-1-of-1.csv.gz\tSize (in Bytes):1200495\n", + "\t\t\t\tCMX-2020-05-19-NORMALIZEDLL2-Data-1-of-1.csv.gz\tSize (in Bytes):1506211731\n", + "\t\tLAT_sym-cusip-sedol-gics_2020-12-09\tID:4000-022e-3e2bfe8a-af79-874488fe5c66\n", + "\t\t\tFiles: \n", + "\t\t\t\tLAT-2020-12-09-Instruments-CUSIP-SEDOL-GICS-1-of-1.csv.gz\tSize (in Bytes):14792\n", + "\t\tFSI_ref-data-sedol-gics_2019-08-10\tID:4000-0238-fd5a33a1-a9da-86c5995ed4e0\n", + "\t\t\tFiles: \n", + "\t\t\t\tFSI-2019-08-10-REF-Data-SEDOL-GICS-1-of-1.csv.gz\tSize (in Bytes):1566\n", + "\t\tMAT_ref-report_2021-06-17\tID:4000-0258-41ca9e15-af8e-c787122e4e18\n", + "\t\t\tFiles: \n", + "\t\t\t\tMAT-2021-06-17-REF-Report-1-of-1.csv.gz\tSize (in Bytes):16049\n" ] } ], "source": [ "response = cfs.buckets.Definition('history').get_data()\n", "\n", - "for bucket in response.data.buckets:\n", + "buckets = response.data.buckets\n", + "for bucket in buckets:\n", " print(\"Bucket: \", bucket.name)\n", " print(\"\\tFile sets: \")\n", " for file_set in bucket:\n", - " print(\"\\t\\t{} ID:{}\".format(file_set.name, file_set.id))" + " print(\"\\t\\t{}\\tID:{}\".format(file_set.name, file_set.id))\n", + " print(\"\\t\\t\\tFiles: \")\n", + " for file in file_set:\n", + " print(\"\\t\\t\\t\\t{}\\tSize (in Bytes):{}\".format(file.filename, file.file_size_in_bytes))" ] }, { @@ -255,76 +435,80 @@ " \n", " \n", " \n", - " filename\n", - " href\n", - " description\n", - " fileType\n", " modified\n", " fileSizeInBytes\n", - " storageLocation\n", - " id\n", + " fileType\n", " md5\n", - " created\n", + " description\n", + " filename\n", " filesetId\n", + " created\n", + " storageLocation\n", + " id\n", + " href\n", " \n", " \n", " \n", " \n", " 0\n", - " LSE-2014-09-24-NORMALIZEDMP-Report-1-of-1.csv.gz\n", - " https://api.refinitiv.com/file-store/v1/files/...\n", - " Merged data file\n", + " 2019-12-12T22:03:12Z\n", + " 1113\n", " File\n", - " 2021-04-26T10:17:21Z\n", - " 262657\n", + " 533d222b9033e1ea254c4beb63a50e30\n", + " Merged data file\n", + " ICX-2012-11-24-NORMALIZEDMP-Report-1-of-1.csv.gz\n", + " 4000-0037-263d473f-920d-7d0b0396d012\n", + " 2019-12-12T22:03:12Z\n", " {'url': 'https://s3-us-west-1.amazonaws.com/ti...\n", - " 4109-2431-7c4d8009-be11-d5802c7716a7\n", - " 83464d0ec5749a1bdae1bc7258d7c45a\n", - " 2021-04-26T10:17:21Z\n", - " 4000-007a-a23e2dbb-8e9d-1f576e3876f4\n", + " 438d-f6af-263f2c31-abfd-7dacc3c1c7f3\n", + " https://api.refinitiv.com/file-store/v1/files/...\n", " \n", " \n", " 1\n", - " LSE-2014-09-24-NORMALIZEDMP-Data-1-of-1.csv.gz\n", - " https://api.refinitiv.com/file-store/v1/files/...\n", - " Merged data file\n", + " 2019-12-12T22:03:12Z\n", + " 449\n", " File\n", - " 2021-04-26T10:17:20Z\n", - " 195705388\n", + " c66c3b1749dc885e222d3953e522e9b8\n", + " Merged data file\n", + " ICX-2012-11-24-NORMALIZEDMP-Data-1-of-1.csv.gz\n", + " 4000-0037-263d473f-920d-7d0b0396d012\n", + " 2019-12-12T22:03:12Z\n", " {'url': 'https://s3-us-west-1.amazonaws.com/ti...\n", - " 48be-0437-dfd55d8f-b9d1-3e020c074bf9\n", - " aae7da66c12c724ed2499c921afbcf81\n", - " 2021-04-26T10:17:20Z\n", - " 4000-007a-a23e2dbb-8e9d-1f576e3876f4\n", + " 4a93-8ece-24d9988f-8409-7d06502a2dbc\n", + " https://api.refinitiv.com/file-store/v1/files/...\n", " \n", " \n", "\n", "" ], "text/plain": [ - " filename \\\n", - "0 LSE-2014-09-24-NORMALIZEDMP-Report-1-of-1.csv.gz \n", - "1 LSE-2014-09-24-NORMALIZEDMP-Data-1-of-1.csv.gz \n", + " modified fileSizeInBytes fileType \\\n", + "0 2019-12-12T22:03:12Z 1113 File \n", + "1 2019-12-12T22:03:12Z 449 File \n", "\n", - " href description \\\n", - "0 https://api.refinitiv.com/file-store/v1/files/... Merged data file \n", - "1 https://api.refinitiv.com/file-store/v1/files/... Merged data file \n", + " md5 description \\\n", + "0 533d222b9033e1ea254c4beb63a50e30 Merged data file \n", + "1 c66c3b1749dc885e222d3953e522e9b8 Merged data file \n", + "\n", + " filename \\\n", + "0 ICX-2012-11-24-NORMALIZEDMP-Report-1-of-1.csv.gz \n", + "1 ICX-2012-11-24-NORMALIZEDMP-Data-1-of-1.csv.gz \n", "\n", - " fileType modified fileSizeInBytes \\\n", - "0 File 2021-04-26T10:17:21Z 262657 \n", - "1 File 2021-04-26T10:17:20Z 195705388 \n", + " filesetId created \\\n", + "0 4000-0037-263d473f-920d-7d0b0396d012 2019-12-12T22:03:12Z \n", + "1 4000-0037-263d473f-920d-7d0b0396d012 2019-12-12T22:03:12Z \n", "\n", " storageLocation \\\n", "0 {'url': 'https://s3-us-west-1.amazonaws.com/ti... \n", "1 {'url': 'https://s3-us-west-1.amazonaws.com/ti... \n", "\n", - " id md5 \\\n", - "0 4109-2431-7c4d8009-be11-d5802c7716a7 83464d0ec5749a1bdae1bc7258d7c45a \n", - "1 48be-0437-dfd55d8f-b9d1-3e020c074bf9 aae7da66c12c724ed2499c921afbcf81 \n", + " id \\\n", + "0 438d-f6af-263f2c31-abfd-7dacc3c1c7f3 \n", + "1 4a93-8ece-24d9988f-8409-7d06502a2dbc \n", "\n", - " created filesetId \n", - "0 2021-04-26T10:17:21Z 4000-007a-a23e2dbb-8e9d-1f576e3876f4 \n", - "1 2021-04-26T10:17:20Z 4000-007a-a23e2dbb-8e9d-1f576e3876f4 " + " href \n", + "0 https://api.refinitiv.com/file-store/v1/files/... \n", + "1 https://api.refinitiv.com/file-store/v1/files/... " ] }, "execution_count": 5, @@ -333,7 +517,7 @@ } ], "source": [ - "fileset_id = '4000-007a-a23e2dbb-8e9d-1f576e3876f4'\n", + "fileset_id = '4000-0037-263d473f-920d-7d0b0396d012'\n", "response = cfs.files.Definition(fileset_id).get_data()\n", "response.data.df" ] @@ -342,35 +526,42 @@ "cell_type": "markdown", "metadata": {}, "source": [ - "### Download files" + "### Download files\n", + "For the sake of the example, only files under 500KB are downloaded" ] }, { "cell_type": "code", - "execution_count": null, + "execution_count": 6, "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ - "Downloading \"LSE-2014-09-24-NORMALIZEDMP-Report-1-of-1.csv.gz\"...\n", + "Downloading \"ICX-2012-11-24-NORMALIZEDMP-Report-1-of-1.csv.gz\"...\n", + "\t...Done\n", + "Extracting \"ICX-2012-11-24-NORMALIZEDMP-Report-1-of-1.csv.gz\"...\n", "\t...Done\n", - "Extracting \"LSE-2014-09-24-NORMALIZEDMP-Report-1-of-1.csv.gz\"...\n", + "Downloading \"ICX-2012-11-24-NORMALIZEDMP-Data-1-of-1.csv.gz\"...\n", "\t...Done\n", - "Downloading \"LSE-2014-09-24-NORMALIZEDMP-Data-1-of-1.csv.gz\"...\n" + "Extracting \"ICX-2012-11-24-NORMALIZEDMP-Data-1-of-1.csv.gz\"...\n", + "\t...Done\n" ] } ], "source": [ "for file in response.data.files:\n", " print('Downloading \"{}\"...'.format(file.filename))\n", - " file_downloader = cfs.file_downloader.Definition(file).retrieve()\n", - " file_downloader.download()\n", - " print('\\t...Done')\n", - " print('Extracting \"{}\"...'.format(file.filename))\n", - " file_downloader.extract()\n", - " print('\\t...Done')" + " if file.file_size_in_bytes > 500000:\n", + " print('\\t...File skipped. \"{}\" is too big for this example. Size (Bytes): {}'.format(file.filename, file.file_size_in_bytes))\n", + " else:\n", + " file_downloader = cfs.file_downloader.Definition(file).retrieve()\n", + " file_downloader.download()\n", + " print('\\t...Done')\n", + " print('Extracting \"{}\"...'.format(file.filename))\n", + " file_downloader.extract()\n", + " print('\\t...Done')" ] }, { @@ -382,7 +573,7 @@ }, { "cell_type": "code", - "execution_count": 5, + "execution_count": 7, "metadata": { "pycharm": { "name": "#%%\n" @@ -403,7 +594,7 @@ ], "metadata": { "kernelspec": { - "display_name": "Python 3", + "display_name": "Python 3 (ipykernel)", "language": "python", "name": "python3" }, @@ -417,7 +608,7 @@ "name": "python", "nbconvert_exporter": "python", "pygments_lexer": "ipython3", - "version": "3.7.6" + "version": "3.9.7" } }, "nbformat": 4, diff --git a/Quick Start/QS_1.0 - Sessions.ipynb b/Quick Start/QS_1.0 - Sessions.ipynb index 004fda5..ecf08f6 100644 --- a/Quick Start/QS_1.0 - Sessions.ipynb +++ b/Quick Start/QS_1.0 - Sessions.ipynb @@ -121,11 +121,11 @@ "source": [ "The above will look for an entry such as: \n", "> *\"sessions\": { \n", - "> \"default\": \"desktop.default\", \n", + "> \"default\": \"desktop.workspace\", \n", "> .... \n", "> }* \n", "\n", - "and then use the parameters defined in the config section - in this example *\"desktop.default\"*, to create and open a desktop session. \n", + "and then use the parameters defined in the config section - in this example *\"desktop.workspace\"*, to create and open a desktop session. \n", "Please refer to the supplied example **'refinitiv-data.config.json'** file for the full config example.\n", "\n", "### Open a specific configured session\n", @@ -419,14 +419,19 @@ "cell_type": "code", "execution_count": null, "id": "adb83bc9", - "metadata": {}, + "metadata": { + "jupyter": { + "source_hidden": true + }, + "tags": [] + }, "outputs": [], "source": [ "# Callback to handle session state changes\n", - "def on_state_cb(session, state_code, state_msg):\n", + "def on_state_cb(state_code, state_msg, session):\n", " print(f\"Session State:{state_code} | {state_msg}\")\n", "# Callback to handle session events\n", - "def on_event_cb(session, event_code, event_msg):\n", + "def on_event_cb(event_code, event_msg, session):\n", " print(f\"Session event:{event_code} | {event_msg}\")\n", "\n", "# Using PlatformSession - can be applied to DesktopSession as well\n", @@ -460,13 +465,29 @@ "# close the session when done\n", "session.close()" ] + }, + { + "cell_type": "code", + "execution_count": null, + "id": "8b3e68d2-dff9-4df7-a84f-f27ea00c8baf", + "metadata": {}, + "outputs": [], + "source": [] + }, + { + "cell_type": "code", + "execution_count": null, + "id": "a09a59dd-1ea1-4628-a349-54a7f7927854", + "metadata": {}, + "outputs": [], + "source": [] } ], "metadata": { "kernelspec": { - "display_name": "RevData39", + "display_name": "Python 3 (ipykernel)", "language": "python", - "name": "rd39" + "name": "python3" }, "language_info": { "codemirror_mode": { @@ -478,7 +499,7 @@ "name": "python", "nbconvert_exporter": "python", "pygments_lexer": "ipython3", - "version": "3.9.4" + "version": "3.9.7" } }, "nbformat": 4, diff --git a/Tutorials/2.Content/2.2-Pricing/TUT_2.2.03-Pricing-StreamingEvents.ipynb b/Tutorials/2.Content/2.2-Pricing/TUT_2.2.03-Pricing-StreamingEvents.ipynb index 98de42e..95744da 100644 --- a/Tutorials/2.Content/2.2-Pricing/TUT_2.2.03-Pricing-StreamingEvents.ipynb +++ b/Tutorials/2.Content/2.2-Pricing/TUT_2.2.03-Pricing-StreamingEvents.ipynb @@ -80,7 +80,7 @@ { "data": { "text/plain": [ - "" + "" ] }, "execution_count": 3, @@ -106,20 +106,21 @@ "outputs": [], "source": [ "# Function to handle the intial Refresh for each item\n", - "def handle_refresh(streaming_prices, instrument_name, fields):\n", + "def handle_refresh(fields, instrument_name, streaming_prices):\n", " # One way to access data - get dataframe\n", " print(f\"Refresh : {streaming_prices.get_snapshot()}\")\n", " return\n", "\n", "# Function to update dataframe, when we receive updates for individual items\n", - "def handle_update(streaming_prices, instrument_name, fields):\n", + "def handle_update(fields, instrument_name, streaming_prices):\n", " # Alternative way of accesing data - access the updated fields\n", " print(f\"Update : {instrument_name}:{fields}\")\n", " \n", "# Function to extract status code for an item as & when received from server\n", "# Status contains a 'code' and a more detailed 'message'\n", - "def handle_status(streaming_prices, instrument_name, status):\n", - " print(f\"Status : {instrument_name}:{status['code']}:{status['message']}\")" + "def handle_status(status, instrument_name, streaming_prices):\n", + " state=status['State']\n", + " print(f\"Status : {instrument_name}:{state['Code']}:{state['Text']}\")" ] }, { @@ -138,41 +139,28 @@ "name": "stdout", "output_type": "stream", "text": [ - "Refresh : Instrument BID ASK\n", - "0 EUR= 1.1222 1.1226\n", + "Refresh : Instrument ASK BID\n", + "0 EUR= 1.0596 1.0592\n", "1 GBP= \n", "2 JPY= \n", "3 BADRIC \n", - "Refresh : Instrument BID ASK\n", - "0 EUR= 1.1222 1.1226\n", - "1 GBP= 1.3325 1.333\n", - "2 JPY= 115.24 115.27\n", + "Refresh : Instrument ASK BID\n", + "0 EUR= 1.0596 1.0592\n", + "1 GBP= 1.2306 1.2302\n", + "2 JPY= \n", "3 BADRIC \n", - "Refresh : Instrument BID ASK\n", - "0 EUR= 1.1222 1.1226\n", - "1 GBP= 1.3325 1.333\n", - "2 JPY= 115.24 115.27\n", - "3 BADRIC \n" - ] - }, - { - "name": "stderr", - "output_type": "stream", - "text": [ - "[StreamingPrices universe=['EUR=', 'GBP=', 'JPY=', 'BADRIC']] on_status_stream_event raised exception: KeyError('code')\n" - ] - }, - { - "name": "stdout", - "output_type": "stream", - "text": [ - "Update : JPY=:{'BID': 115.24, 'ASK': 115.27}\n" + "Refresh : Instrument ASK BID\n", + "0 EUR= 1.0596 1.0592\n", + "1 GBP= 1.2306 1.2302\n", + "2 JPY= 135.87 135.84\n", + "3 BADRIC \n", + "Status : BADRIC:NotFound:The record could not be found\n" ] }, { "data": { "text/plain": [ - "" + "" ] }, "execution_count": 5, @@ -183,28 +171,22 @@ "name": "stdout", "output_type": "stream", "text": [ - "Update : JPY=:{'BID': 115.25, 'ASK': 115.27}\n", - "Update : GBP=:{'BID': 1.3325, 'ASK': 1.3329}\n", - "Update : GBP=:{'BID': 1.3324, 'ASK': 1.3329}\n", - "Update : EUR=:{'BID': 1.1222, 'ASK': 1.1226}\n", - "Update : GBP=:{'BID': 1.3326, 'ASK': 1.3327}\n", - "Update : GBP=:{'BID': 1.3325, 'ASK': 1.3329}\n", - "Update : JPY=:{'BID': 115.24, 'ASK': 115.27}\n", - "Update : EUR=:{'BID': 1.1223, 'ASK': 1.1224}\n", - "Update : JPY=:{'BID': 115.25, 'ASK': 115.26}\n", - "Update : JPY=:{'BID': 115.25, 'ASK': 115.27}\n", - "Update : JPY=:{'BID': 115.24, 'ASK': 115.27}\n", - "Update : GBP=:{'BID': 1.3326, 'ASK': 1.3329}\n", - "Update : JPY=:{'BID': 115.25, 'ASK': 115.27}\n", - "Update : GBP=:{'BID': 1.3325, 'ASK': 1.3329}\n", - "Update : JPY=:{'BID': 115.25, 'ASK': 115.26}\n", - "Update : JPY=:{'BID': 115.24, 'ASK': 115.27}\n", - "Update : JPY=:{'BID': 115.24, 'ASK': 115.27}\n", - "Update : JPY=:{'BID': 115.24, 'ASK': 115.27}\n", - "Update : GBP=:{'BID': 1.3325, 'ASK': 1.3329}\n", - "Update : EUR=:{'BID': 1.1223, 'ASK': 1.1224}\n", - "Update : JPY=:{'BID': 115.25, 'ASK': 115.27}\n", - "Update : GBP=:{'BID': 1.3326, 'ASK': 1.3329}\n" + "Update : GBP=:{'ASK': 1.2305, 'BID': 1.2304}\n", + "Update : JPY=:{'ASK': 135.86, 'BID': 135.85}\n", + "Update : EUR=:{'ASK': 1.0595, 'BID': 1.0594}\n", + "Update : JPY=:{'ASK': 135.86, 'BID': 135.85}\n", + "Update : EUR=:{'ASK': 1.0596, 'BID': 1.0592}\n", + "Update : JPY=:{'ASK': 135.89, 'BID': 135.84}\n", + "Update : EUR=:{'ASK': 1.0595, 'BID': 1.0593}\n", + "Update : JPY=:{'ASK': 135.86, 'BID': 135.85}\n", + "Update : GBP=:{'ASK': 1.2305, 'BID': 1.2304}\n", + "Update : JPY=:{'ASK': 135.86, 'BID': 135.85}\n", + "Update : JPY=:{'ASK': 135.86, 'BID': 135.85}\n", + "Update : EUR=:{'ASK': 1.0596, 'BID': 1.0592}\n", + "Update : GBP=:{'ASK': 1.2306, 'BID': 1.2302}\n", + "Update : JPY=:{'ASK': 135.86, 'BID': 135.83}\n", + "Update : EUR=:{'ASK': 1.0594, 'BID': 1.0593}\n", + "Update : GBP=:{'ASK': 1.2304, 'BID': 1.2303}\n" ] } ], @@ -242,13 +224,14 @@ "name": "stdout", "output_type": "stream", "text": [ - "Update : EUR=:{'BID': 1.1223, 'ASK': 1.1224}\n" + "Update : JPY=:{'ASK': 135.86, 'BID': 135.85}\n", + "Update : EUR=:{'ASK': 1.0595, 'BID': 1.0593}\n" ] }, { "data": { "text/plain": [ - "" + "" ] }, "execution_count": 6, @@ -286,9 +269,9 @@ ], "metadata": { "kernelspec": { - "display_name": "RevData39", + "display_name": "Python 3 (ipykernel)", "language": "python", - "name": "rd39" + "name": "python3" }, "language_info": { "codemirror_mode": { @@ -300,7 +283,7 @@ "name": "python", "nbconvert_exporter": "python", "pygments_lexer": "ipython3", - "version": "3.9.4" + "version": "3.9.7" } }, "nbformat": 4, diff --git a/Tutorials/2.Content/2.2-Pricing/TUT_2.2.04-Pricing-Chain.ipynb b/Tutorials/2.Content/2.2-Pricing/TUT_2.2.04-Pricing-Chain.ipynb index 1c5d66c..afad140 100644 --- a/Tutorials/2.Content/2.2-Pricing/TUT_2.2.04-Pricing-Chain.ipynb +++ b/Tutorials/2.Content/2.2-Pricing/TUT_2.2.04-Pricing-Chain.ipynb @@ -38,7 +38,7 @@ }, { "cell_type": "code", - "execution_count": null, + "execution_count": 1, "metadata": {}, "outputs": [], "source": [ @@ -48,7 +48,7 @@ }, { "cell_type": "code", - "execution_count": null, + "execution_count": 2, "metadata": {}, "outputs": [], "source": [ @@ -69,7 +69,7 @@ }, { "cell_type": "code", - "execution_count": null, + "execution_count": 3, "metadata": { "collapsed": false, "jupyter": { @@ -79,7 +79,18 @@ "name": "#%%\n" } }, - "outputs": [], + "outputs": [ + { + "data": { + "text/plain": [ + "" + ] + }, + "execution_count": 3, + "metadata": {}, + "output_type": "execute_result" + } + ], "source": [ "rd.open_session()" ] @@ -94,7 +105,7 @@ }, { "cell_type": "code", - "execution_count": null, + "execution_count": 4, "metadata": {}, "outputs": [], "source": [ @@ -111,9 +122,20 @@ }, { "cell_type": "code", - "execution_count": null, + "execution_count": 5, "metadata": {}, - "outputs": [], + "outputs": [ + { + "data": { + "text/plain": [ + "" + ] + }, + "execution_count": 5, + "metadata": {}, + "output_type": "execute_result" + } + ], "source": [ "ftse.open()" ] @@ -135,9 +157,119 @@ }, { "cell_type": "code", - "execution_count": null, + "execution_count": 6, "metadata": {}, - "outputs": [], + "outputs": [ + { + "data": { + "text/plain": [ + "['AAL.L',\n", + " 'ABDN.L',\n", + " 'ABF.L',\n", + " 'ADML.L',\n", + " 'AHT.L',\n", + " 'ANTO.L',\n", + " 'AUTOA.L',\n", + " 'AV.L',\n", + " 'AVST.L',\n", + " 'AVV.L',\n", + " 'AZN.L',\n", + " 'BAES.L',\n", + " 'BARC.L',\n", + " 'BATS.L',\n", + " 'BDEV.L',\n", + " 'BHPB.L',\n", + " 'BKGH.L',\n", + " 'BLND.L',\n", + " 'BMEB.L',\n", + " 'BNZL.L',\n", + " 'BP.L',\n", + " 'BRBY.L',\n", + " 'BT.L',\n", + " 'CCH.L',\n", + " 'CPG.L',\n", + " 'CRDA.L',\n", + " 'CRH.L',\n", + " 'DCC.L',\n", + " 'DGE.L',\n", + " 'DPH.L',\n", + " 'ECM.L',\n", + " 'ENT.L',\n", + " 'EVRE.L',\n", + " 'EXPN.L',\n", + " 'FERG.L',\n", + " 'FLTRF.L',\n", + " 'FRES.L',\n", + " 'GLEN.L',\n", + " 'GSK.L',\n", + " 'HIK.L',\n", + " 'HLMA.L',\n", + " 'HRGV.L',\n", + " 'HSBA.L',\n", + " 'ICAG.L',\n", + " 'ICP.L',\n", + " 'IHG.L',\n", + " 'III.L',\n", + " 'IMB.L',\n", + " 'INF.L',\n", + " 'ITRK.L',\n", + " 'ITV.L',\n", + " 'JD.L',\n", + " 'KGF.L',\n", + " 'LAND.L',\n", + " 'LGEN.L',\n", + " 'LLOY.L',\n", + " 'LSEG.L',\n", + " 'MGGT.L',\n", + " 'MNDI.L',\n", + " 'MNG.L',\n", + " 'MRON.L',\n", + " 'NG.L',\n", + " 'NWG.L',\n", + " 'NXT.L',\n", + " 'OCDO.L',\n", + " 'PHNX.L',\n", + " 'POLYP.L',\n", + " 'PRU.L',\n", + " 'PSHP.L',\n", + " 'PSN.L',\n", + " 'PSON.L',\n", + " 'RDSa.L',\n", + " 'RDSb.L',\n", + " 'REL.L',\n", + " 'RIO.L',\n", + " 'RKT.L',\n", + " 'RMG.L',\n", + " 'RMV.L',\n", + " 'RR.L',\n", + " 'RTO.L',\n", + " 'SBRY.L',\n", + " 'SDR.L',\n", + " 'SGE.L',\n", + " 'SGRO.L',\n", + " 'SJP.L',\n", + " 'SKG.L',\n", + " 'SMDS.L',\n", + " 'SMIN.L',\n", + " 'SMT.L',\n", + " 'SN.L',\n", + " 'SPX.L',\n", + " 'SSE.L',\n", + " 'STAN.L',\n", + " 'SVT.L',\n", + " 'TSCO.L',\n", + " 'TW.L',\n", + " 'ULVR.L',\n", + " 'UU.L',\n", + " 'VOD.L',\n", + " 'WPP.L',\n", + " 'WTB.L']" + ] + }, + "metadata": {}, + "output_type": "display_data" + } + ], "source": [ "constituent_list = ftse.constituents\n", "display(constituent_list)" @@ -159,9 +291,17 @@ }, { "cell_type": "code", - "execution_count": null, + "execution_count": 7, "metadata": {}, - "outputs": [], + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + " is_chain : True\n" + ] + } + ], "source": [ "# check is this a chain or not?\n", "print(f\"{ftse} is_chain :\", ftse.is_chain )" @@ -176,9 +316,17 @@ }, { "cell_type": "code", - "execution_count": null, + "execution_count": 8, "metadata": {}, - "outputs": [], + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + " constituent at index 0 : AAL.L\n" + ] + } + ], "source": [ "# at this point we do snapshot for 1st RIC - as its a streaming request, it may different to the above\n", "first_constituent = ftse.constituents[0]\n", @@ -187,9 +335,117 @@ }, { "cell_type": "code", - "execution_count": null, + "execution_count": 9, "metadata": {}, - "outputs": [], + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "0 = AAL.L\n", + "1 = ABDN.L\n", + "2 = ABF.L\n", + "3 = ADML.L\n", + "4 = AHT.L\n", + "5 = ANTO.L\n", + "6 = AUTOA.L\n", + "7 = AV.L\n", + "8 = AVST.L\n", + "9 = AVV.L\n", + "10 = AZN.L\n", + "11 = BAES.L\n", + "12 = BARC.L\n", + "13 = BATS.L\n", + "14 = BDEV.L\n", + "15 = BHPB.L\n", + "16 = BKGH.L\n", + "17 = BLND.L\n", + "18 = BMEB.L\n", + "19 = BNZL.L\n", + "20 = BP.L\n", + "21 = BRBY.L\n", + "22 = BT.L\n", + "23 = CCH.L\n", + "24 = CPG.L\n", + "25 = CRDA.L\n", + "26 = CRH.L\n", + "27 = DCC.L\n", + "28 = DGE.L\n", + "29 = DPH.L\n", + "30 = ECM.L\n", + "31 = ENT.L\n", + "32 = EVRE.L\n", + "33 = EXPN.L\n", + "34 = FERG.L\n", + "35 = FLTRF.L\n", + "36 = FRES.L\n", + "37 = GLEN.L\n", + "38 = GSK.L\n", + "39 = HIK.L\n", + "40 = HLMA.L\n", + "41 = HRGV.L\n", + "42 = HSBA.L\n", + "43 = ICAG.L\n", + "44 = ICP.L\n", + "45 = IHG.L\n", + "46 = III.L\n", + "47 = IMB.L\n", + "48 = INF.L\n", + "49 = ITRK.L\n", + "50 = ITV.L\n", + "51 = JD.L\n", + "52 = KGF.L\n", + "53 = LAND.L\n", + "54 = LGEN.L\n", + "55 = LLOY.L\n", + "56 = LSEG.L\n", + "57 = MGGT.L\n", + "58 = MNDI.L\n", + "59 = MNG.L\n", + "60 = MRON.L\n", + "61 = NG.L\n", + "62 = NWG.L\n", + "63 = NXT.L\n", + "64 = OCDO.L\n", + "65 = PHNX.L\n", + "66 = POLYP.L\n", + "67 = PRU.L\n", + "68 = PSHP.L\n", + "69 = PSN.L\n", + "70 = PSON.L\n", + "71 = RDSa.L\n", + "72 = RDSb.L\n", + "73 = REL.L\n", + "74 = RIO.L\n", + "75 = RKT.L\n", + "76 = RMG.L\n", + "77 = RMV.L\n", + "78 = RR.L\n", + "79 = RTO.L\n", + "80 = SBRY.L\n", + "81 = SDR.L\n", + "82 = SGE.L\n", + "83 = SGRO.L\n", + "84 = SJP.L\n", + "85 = SKG.L\n", + "86 = SMDS.L\n", + "87 = SMIN.L\n", + "88 = SMT.L\n", + "89 = SN.L\n", + "90 = SPX.L\n", + "91 = SSE.L\n", + "92 = STAN.L\n", + "93 = SVT.L\n", + "94 = TSCO.L\n", + "95 = TW.L\n", + "96 = ULVR.L\n", + "97 = UU.L\n", + "98 = VOD.L\n", + "99 = WPP.L\n", + "100 = WTB.L\n" + ] + } + ], "source": [ "# loop over all constituents in the chain record\n", "for index, constituent in enumerate( ftse.constituents ):\n", @@ -205,9 +461,17 @@ }, { "cell_type": "code", - "execution_count": null, + "execution_count": 10, "metadata": {}, - "outputs": [], + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "summary links of the chain are : ['.FTSE', '.AD.FTSE']\n" + ] + } + ], "source": [ "# Chains often have Summary RICs for the chain\n", "summary_links = ftse.summary_links\n", @@ -223,9 +487,20 @@ }, { "cell_type": "code", - "execution_count": null, + "execution_count": 11, "metadata": {}, - "outputs": [], + "outputs": [ + { + "data": { + "text/plain": [ + "" + ] + }, + "execution_count": 11, + "metadata": {}, + "output_type": "execute_result" + } + ], "source": [ "ftse.close()" ] @@ -247,13 +522,12 @@ }, { "cell_type": "code", - "execution_count": null, + "execution_count": 12, "metadata": {}, "outputs": [], "source": [ "ftse = rd.content.pricing.chain.Definition(name=\"0#.FTSE\", \n", - " skip_summary_links=True, skip_empty=True )\n", - " .get_stream()" + " skip_summary_links=True, skip_empty=True ).get_stream()" ] }, { @@ -266,9 +540,20 @@ }, { "cell_type": "code", - "execution_count": null, + "execution_count": 13, "metadata": {}, - "outputs": [], + "outputs": [ + { + "data": { + "text/plain": [ + "" + ] + }, + "execution_count": 13, + "metadata": {}, + "output_type": "execute_result" + } + ], "source": [ "ftse.open(with_updates=False)" ] @@ -290,7 +575,7 @@ }, { "cell_type": "code", - "execution_count": null, + "execution_count": 14, "metadata": { "tags": [] }, diff --git a/Tutorials/2.Content/2.2-Pricing/TUT_2.2.05-Pricing-StreamingChain.ipynb b/Tutorials/2.Content/2.2-Pricing/TUT_2.2.05-Pricing-StreamingChain.ipynb index 1aac3c5..536b215 100644 --- a/Tutorials/2.Content/2.2-Pricing/TUT_2.2.05-Pricing-StreamingChain.ipynb +++ b/Tutorials/2.Content/2.2-Pricing/TUT_2.2.05-Pricing-StreamingChain.ipynb @@ -83,7 +83,7 @@ { "data": { "text/plain": [ - "" + "" ] }, "execution_count": 3, @@ -124,7 +124,7 @@ " display(df)\n", "\n", "# Function to update dataframe, when we receive updates for individual items\n", - "def update_dataframe(streaming_prices, instrument_name, fields):\n", + "def update_dataframe(fields, instrument_name, streaming_prices):\n", " global df\n", " clear_output(wait=True)\n", " for field_name, field_value in fields.items():\n", @@ -142,14 +142,14 @@ }, { "cell_type": "code", - "execution_count": 8, + "execution_count": 5, "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ - "['.DJI', 'AAPL.OQ', 'AMGN.OQ', 'AXP.N', 'BA.N', 'CAT.N', 'CRM.N', 'CSCO.OQ', 'CVX.N', 'DIS.N', 'DOW.N', 'GS.N', 'HD.N', 'HON.OQ', 'IBM.N', 'INTC.OQ', 'JNJ.N', 'JPM.N', 'KO.N', 'MCD.N', 'MMM.N', 'MRK.N', 'MSFT.OQ', 'NKE.N', 'PG.N', 'TRV.N', 'UNH.N', 'V.N', 'VZ.N', 'WBA.OQ', 'WMT.N']\n" + "['AAPL.OQ', 'AMGN.OQ', 'AXP.N', 'BA.N', 'CAT.N', 'CRM.N', 'CSCO.OQ', 'CVX.N', 'DIS.N', 'DOW.N', 'GS.N', 'HD.N', 'HON.OQ', 'IBM.N', 'INTC.OQ', 'JNJ.N', 'JPM.N', 'KO.N', 'MCD.N', 'MMM.N', 'MRK.N', 'MSFT.OQ', 'NKE.N', 'PG.N', 'TRV.N', 'UNH.N', 'V.N', 'VZ.N', 'WBA.OQ', 'WMT.N']\n" ] } ], @@ -176,16 +176,16 @@ }, { "cell_type": "code", - "execution_count": 9, + "execution_count": 6, "metadata": {}, "outputs": [ { "data": { "text/plain": [ - "" + "" ] }, - "execution_count": 9, + "execution_count": 6, "metadata": {}, "output_type": "execute_result" } @@ -209,7 +209,7 @@ }, { "cell_type": "code", - "execution_count": 10, + "execution_count": 7, "metadata": {}, "outputs": [ { @@ -239,197 +239,191 @@ " \n", " \n", " \n", - " .DJI\n", - " 35667.95\n", - " 35868.11\n", - " \n", - " \n", " AAPL.OQ\n", - " 158.96\n", - " 159.2\n", + " 136.66\n", + " 136.68\n", " \n", " \n", " AMGN.OQ\n", - " 202.0\n", - " 203.04\n", + " 241.49\n", + " 241.58\n", " \n", " \n", " AXP.N\n", - " 0.0\n", - " 0.0\n", + " 144.64\n", + " 144.72\n", " \n", " \n", " BA.N\n", - " 0.0\n", - " 0.0\n", + " 137.11\n", + " 137.17\n", " \n", " \n", " CAT.N\n", - " 0.0\n", - " 0.0\n", + " 191.34\n", + " 191.44\n", " \n", " \n", " CRM.N\n", - " 0.0\n", - " 0.0\n", + " 169.94\n", + " 170.03\n", " \n", " \n", " CSCO.OQ\n", - " 54.83\n", - " 55.1\n", + " 44\n", + " 44.01\n", " \n", " \n", " CVX.N\n", - " 0.0\n", - " 0.0\n", + " 149.58\n", + " 149.62\n", " \n", " \n", " DIS.N\n", - " 0.0\n", - " 0.0\n", + " 94.41\n", + " 94.43\n", " \n", " \n", " DOW.N\n", - " 0.0\n", - " 0.0\n", + " 52.04\n", + " 52.06\n", " \n", " \n", " GS.N\n", - " 0.0\n", - " 0.0\n", + " 283.9\n", + " 284.1\n", " \n", " \n", " HD.N\n", - " 0.0\n", - " 0.0\n", + " 269.37\n", + " 269.52\n", " \n", " \n", " HON.OQ\n", - " 206.76\n", - " 210.47\n", + " 179.16\n", + " 179.35\n", " \n", " \n", " IBM.N\n", - " 0.0\n", - " 0.0\n", + " 137.58\n", + " 137.64\n", " \n", " \n", " INTC.OQ\n", - " 49.07\n", - " 49.18\n", + " 37.51\n", + " 37.52\n", " \n", " \n", " JNJ.N\n", - " 0.0\n", - " 0.0\n", + " 176.94\n", + " 176.99\n", " \n", " \n", " JPM.N\n", - " 0.0\n", - " 0.0\n", + " 115.66\n", + " 115.7\n", " \n", " \n", " KO.N\n", - " 0.0\n", - " 0.0\n", + " 61.02\n", + " 61.03\n", " \n", " \n", " MCD.N\n", - " 0.0\n", - " 0.0\n", + " 242.73\n", + " 242.82\n", " \n", " \n", " MMM.N\n", - " 0.0\n", - " 0.0\n", + " 130.68\n", + " 130.72\n", " \n", " \n", " MRK.N\n", - " 0.0\n", - " 0.0\n", + " 90.18\n", + " 90.2\n", " \n", " \n", " MSFT.OQ\n", - " 334.31\n", - " 334.67\n", + " 256.7\n", + " 256.72\n", " \n", " \n", " NKE.N\n", - " 0.0\n", - " 0.0\n", + " 106.31\n", + " 106.36\n", " \n", " \n", " PG.N\n", - " 0.0\n", - " 0.0\n", + " 138.36\n", + " 138.41\n", " \n", " \n", " TRV.N\n", - " 0.0\n", - " 0.0\n", + " 162.37\n", + " 162.48\n", " \n", " \n", " UNH.N\n", - " 0.0\n", - " 0.0\n", + " 488.72\n", + " 489.33\n", " \n", " \n", " V.N\n", - " 0.0\n", - " 0.0\n", + " 196.06\n", + " 196.14\n", " \n", " \n", " VZ.N\n", - " 0.0\n", - " 0.0\n", + " 51.01\n", + " 51.02\n", " \n", " \n", " WBA.OQ\n", - " 45.96\n", - " 46.41\n", + " 40.45\n", + " 40.46\n", " \n", " \n", " WMT.N\n", - " 0.0\n", - " 0.0\n", + " 122.15\n", + " 122.19\n", " \n", " \n", "\n", "" ], "text/plain": [ - " BID ASK\n", - ".DJI 35667.95 35868.11\n", - "AAPL.OQ 158.96 159.2\n", - "AMGN.OQ 202.0 203.04\n", - "AXP.N 0.0 0.0\n", - "BA.N 0.0 0.0\n", - "CAT.N 0.0 0.0\n", - "CRM.N 0.0 0.0\n", - "CSCO.OQ 54.83 55.1\n", - "CVX.N 0.0 0.0\n", - "DIS.N 0.0 0.0\n", - "DOW.N 0.0 0.0\n", - "GS.N 0.0 0.0\n", - "HD.N 0.0 0.0\n", - "HON.OQ 206.76 210.47\n", - "IBM.N 0.0 0.0\n", - "INTC.OQ 49.07 49.18\n", - "JNJ.N 0.0 0.0\n", - "JPM.N 0.0 0.0\n", - "KO.N 0.0 0.0\n", - "MCD.N 0.0 0.0\n", - "MMM.N 0.0 0.0\n", - "MRK.N 0.0 0.0\n", - "MSFT.OQ 334.31 334.67\n", - "NKE.N 0.0 0.0\n", - "PG.N 0.0 0.0\n", - "TRV.N 0.0 0.0\n", - "UNH.N 0.0 0.0\n", - "V.N 0.0 0.0\n", - "VZ.N 0.0 0.0\n", - "WBA.OQ 45.96 46.41\n", - "WMT.N 0.0 0.0" + " BID ASK\n", + "AAPL.OQ 136.66 136.68\n", + "AMGN.OQ 241.49 241.58\n", + "AXP.N 144.64 144.72\n", + "BA.N 137.11 137.17\n", + "CAT.N 191.34 191.44\n", + "CRM.N 169.94 170.03\n", + "CSCO.OQ 44 44.01\n", + "CVX.N 149.58 149.62\n", + "DIS.N 94.41 94.43\n", + "DOW.N 52.04 52.06\n", + "GS.N 283.9 284.1\n", + "HD.N 269.37 269.52\n", + "HON.OQ 179.16 179.35\n", + "IBM.N 137.58 137.64\n", + "INTC.OQ 37.51 37.52\n", + "JNJ.N 176.94 176.99\n", + "JPM.N 115.66 115.7\n", + "KO.N 61.02 61.03\n", + "MCD.N 242.73 242.82\n", + "MMM.N 130.68 130.72\n", + "MRK.N 90.18 90.2\n", + "MSFT.OQ 256.7 256.72\n", + "NKE.N 106.31 106.36\n", + "PG.N 138.36 138.41\n", + "TRV.N 162.37 162.48\n", + "UNH.N 488.72 489.33\n", + "V.N 196.06 196.14\n", + "VZ.N 51.01 51.02\n", + "WBA.OQ 40.45 40.46\n", + "WMT.N 122.15 122.19" ] }, "metadata": {}, @@ -453,20 +447,9 @@ }, { "cell_type": "code", - "execution_count": 11, + "execution_count": null, "metadata": {}, - "outputs": [ - { - "data": { - "text/plain": [ - "" - ] - }, - "execution_count": 11, - "metadata": {}, - "output_type": "execute_result" - } - ], + "outputs": [], "source": [ "pricing_stream.close()" ] @@ -480,7 +463,7 @@ }, { "cell_type": "code", - "execution_count": 13, + "execution_count": 9, "metadata": {}, "outputs": [], "source": [ @@ -497,9 +480,9 @@ ], "metadata": { "kernelspec": { - "display_name": "RevData39", + "display_name": "Python 3 (ipykernel)", "language": "python", - "name": "rd39" + "name": "python3" }, "language_info": { "codemirror_mode": { @@ -511,7 +494,7 @@ "name": "python", "nbconvert_exporter": "python", "pygments_lexer": "ipython3", - "version": "3.9.4" + "version": "3.9.7" } }, "nbformat": 4, diff --git a/Tutorials/2.Content/2.2-Pricing/TUT_2.2.06-Pricing-StreamingEvents.py b/Tutorials/2.Content/2.2-Pricing/TUT_2.2.06-Pricing-StreamingEvents.py index 27504ac..a23cc2a 100644 --- a/Tutorials/2.Content/2.2-Pricing/TUT_2.2.06-Pricing-StreamingEvents.py +++ b/Tutorials/2.Content/2.2-Pricing/TUT_2.2.06-Pricing-StreamingEvents.py @@ -19,20 +19,21 @@ # Callback function to display data or status events # Function to handle the intial Refresh for each item -def handle_refresh(streaming_prices, instrument_name, fields): +def handle_refresh(fields, instrument_name, streaming_prices): # One way to access data - get dataframe print(f"Refresh : {streaming_prices.get_snapshot()}") return # Function to update dataframe, when we receive updates for individual items -def handle_update(streaming_prices, instrument_name, fields): +def handle_update(fields, instrument_name, streaming_prices): # Alternative way of accesing data - access the updated fields print(f"Update : {instrument_name}:{fields}") # Function to extract status code for an item as & when received from server # Status contains a 'code' and a more detailed 'message' -def handle_status(streaming_prices, instrument_name, status): - print(f"Status : {instrument_name}:{status['code']}:{status['message']}") +def handle_status(status, instrument_name, streaming_prices): + state=status['State'] + print(f"Status : {instrument_name}:{state['Code']}:{state['Text']}") # Our main code section diff --git a/Tutorials/2.Content/2.2-Pricing/TUT_2.2.06-Pricing-StreamingEventsDF.ipynb b/Tutorials/2.Content/2.2-Pricing/TUT_2.2.06-Pricing-StreamingEventsDF.ipynb index ac97007..bcf3c82 100644 --- a/Tutorials/2.Content/2.2-Pricing/TUT_2.2.06-Pricing-StreamingEventsDF.ipynb +++ b/Tutorials/2.Content/2.2-Pricing/TUT_2.2.06-Pricing-StreamingEventsDF.ipynb @@ -83,7 +83,7 @@ { "data": { "text/plain": [ - "" + "" ] }, "execution_count": 3, @@ -124,7 +124,7 @@ " display(df)\n", "\n", "# Function to update dataframe, when we receive updates for individual items\n", - "def update_dataframe(streaming_prices, instrument_name, fields):\n", + "def update_dataframe(fields, instrument_name, streaming_prices):\n", " global df\n", " clear_output(wait=True)\n", " for field_name, field_value in fields.items():\n", @@ -166,41 +166,41 @@ " \n", " \n", " \n", - " BID\n", " ASK\n", + " BID\n", " \n", " \n", " \n", " \n", " EUR=\n", - " 1.1294\n", - " 1.1297\n", + " 1.0598\n", + " 1.0594\n", " \n", " \n", " GBP=\n", - " 1.3337\n", - " 1.334\n", + " 1.2306\n", + " 1.2305\n", " \n", " \n", " JPY=\n", - " 113.87\n", - " 113.88\n", + " 135.93\n", + " 135.92\n", " \n", " \n", " CAD=\n", - " 1.2761\n", - " 1.2765\n", + " 1.2922\n", + " 1.2921\n", " \n", " \n", "\n", "" ], "text/plain": [ - " BID ASK\n", - "EUR= 1.1294 1.1297\n", - "GBP= 1.3337 1.334\n", - "JPY= 113.87 113.88\n", - "CAD= 1.2761 1.2765" + " ASK BID\n", + "EUR= 1.0598 1.0594\n", + "GBP= 1.2306 1.2305\n", + "JPY= 135.93 135.92\n", + "CAD= 1.2922 1.2921" ] }, "metadata": {}, @@ -238,7 +238,7 @@ { "data": { "text/plain": [ - "" + "" ] }, "execution_count": 6, @@ -274,9 +274,9 @@ ], "metadata": { "kernelspec": { - "display_name": "RevData39", + "display_name": "Python 3 (ipykernel)", "language": "python", - "name": "rd39" + "name": "python3" }, "language_info": { "codemirror_mode": { @@ -288,7 +288,7 @@ "name": "python", "nbconvert_exporter": "python", "pygments_lexer": "ipython3", - "version": "3.9.4" + "version": "3.9.7" } }, "nbformat": 4, diff --git a/Tutorials/2.Content/2.6-Search/TUT_2.6.01-Search.ipynb b/Tutorials/2.Content/2.6-Search/TUT_2.6.01-Search.ipynb index 9b1870f..27ccd8a 100644 --- a/Tutorials/2.Content/2.6-Search/TUT_2.6.01-Search.ipynb +++ b/Tutorials/2.Content/2.6-Search/TUT_2.6.01-Search.ipynb @@ -51,7 +51,7 @@ }, { "cell_type": "code", - "execution_count": 2, + "execution_count": 1, "metadata": {}, "outputs": [], "source": [ @@ -72,7 +72,7 @@ }, { "cell_type": "code", - "execution_count": 3, + "execution_count": 2, "metadata": { "collapsed": false, "jupyter": { @@ -86,10 +86,10 @@ { "data": { "text/plain": [ - "" + "" ] }, - "execution_count": 3, + "execution_count": 2, "metadata": {}, "output_type": "execute_result" } @@ -107,16 +107,9 @@ }, { "cell_type": "code", - "execution_count": 4, + "execution_count": 3, "metadata": {}, "outputs": [ - { - "name": "stdout", - "output_type": "stream", - "text": [ - "https://api.refinitiv.com /discovery/search/v1/ None None\n" - ] - }, { "data": { "text/html": [ @@ -138,125 +131,137 @@ " \n", " \n", " \n", - " PI\n", " BusinessEntity\n", - " RIC\n", - " PermID\n", " DocumentTitle\n", + " PermID\n", + " PI\n", + " RIC\n", " \n", " \n", " \n", " \n", " 0\n", - " 0x00102c28b5f20b58\n", " INSTRUMENTxFIXEDINCOMExGOVCORP\n", - " 459200JQ5=\n", - " 46642939296\n", " International Business Machines Corp, Plain Va...\n", + " 46637038358\n", + " 0x00102c80bf6b046c\n", + " 459200JC6=\n", " \n", " \n", " 1\n", - " 0x00102c2452251a75\n", " INSTRUMENTxFIXEDINCOMExGOVCORP\n", - " 459200JX0=\n", - " 192841929423\n", " International Business Machines Corp, Plain Va...\n", + " 192826899363\n", + " 0x00102c53ff1f1897\n", + " US194445601=\n", " \n", " \n", " 2\n", - " 0x0004050e34388b88\n", " INSTRUMENTxFIXEDINCOMExGOVCORP\n", - " 459200HG9=\n", - " 44640212240\n", " International Business Machines Corp, Plain Va...\n", + " 44657843041\n", + " 0x0004051bd47954e3\n", + " US114316318=\n", " \n", " \n", " 3\n", - " 0x00102c05c4dd0222\n", " INSTRUMENTxFIXEDINCOMExGOVCORP\n", - " US127166528=\n", - " 46635711098\n", " International Business Machines Corp, Plain Va...\n", + " 44649129642\n", + " 0x00040513a4865c6c\n", + " 459200HP9=\n", " \n", " \n", " 4\n", - " 0x00102c80bf6b046c\n", " INSTRUMENTxFIXEDINCOMExGOVCORP\n", - " 459200JC6=\n", - " 46637038358\n", " International Business Machines Corp, Plain Va...\n", + " 44653695161\n", + " 0x00040517bba31719\n", + " 459200HU8=\n", " \n", " \n", " 5\n", - " 0x00102c53ff1f1897\n", " INSTRUMENTxFIXEDINCOMExGOVCORP\n", - " US194445601=\n", - " 192826899363\n", " International Business Machines Corp, Plain Va...\n", + " 192841929400\n", + " 0x00102c2052251a71\n", + " 459200JY8=\n", " \n", " \n", " 6\n", - " 0x0004051bd47954e3\n", " INSTRUMENTxFIXEDINCOMExGOVCORP\n", - " US114316318=\n", - " 44657843041\n", " International Business Machines Corp, Plain Va...\n", + " 46638470074\n", + " 0x00102cf964da067d\n", + " US137584123=\n", " \n", " \n", " 7\n", - " 0x00040513a4865c6c\n", " INSTRUMENTxFIXEDINCOMExGOVCORP\n", - " 459200HP9=\n", - " 44649129642\n", " International Business Machines Corp, Plain Va...\n", + " 192826895881\n", + " 0x00102c8de61f1850\n", + " US194445610=\n", " \n", " \n", " 8\n", - " 0x00040517bba31719\n", " INSTRUMENTxFIXEDINCOMExGOVCORP\n", - " 459200HU8=\n", - " 44653695161\n", " International Business Machines Corp, Plain Va...\n", + " 46644611190\n", + " 0x00102c00c0900d61\n", + " US161784508=\n", " \n", " \n", " 9\n", - " 0x00102c2052251a71\n", " INSTRUMENTxFIXEDINCOMExGOVCORP\n", - " 459200JY8=\n", - " 192841929400\n", " International Business Machines Corp, Plain Va...\n", + " 232796002153\n", + " 0x00102cfffd953398\n", + " 459200KS9=\n", " \n", " \n", "\n", "" ], "text/plain": [ - " PI BusinessEntity RIC \\\n", - "0 0x00102c28b5f20b58 INSTRUMENTxFIXEDINCOMExGOVCORP 459200JQ5= \n", - "1 0x00102c2452251a75 INSTRUMENTxFIXEDINCOMExGOVCORP 459200JX0= \n", - "2 0x0004050e34388b88 INSTRUMENTxFIXEDINCOMExGOVCORP 459200HG9= \n", - "3 0x00102c05c4dd0222 INSTRUMENTxFIXEDINCOMExGOVCORP US127166528= \n", - "4 0x00102c80bf6b046c INSTRUMENTxFIXEDINCOMExGOVCORP 459200JC6= \n", - "5 0x00102c53ff1f1897 INSTRUMENTxFIXEDINCOMExGOVCORP US194445601= \n", - "6 0x0004051bd47954e3 INSTRUMENTxFIXEDINCOMExGOVCORP US114316318= \n", - "7 0x00040513a4865c6c INSTRUMENTxFIXEDINCOMExGOVCORP 459200HP9= \n", - "8 0x00040517bba31719 INSTRUMENTxFIXEDINCOMExGOVCORP 459200HU8= \n", - "9 0x00102c2052251a71 INSTRUMENTxFIXEDINCOMExGOVCORP 459200JY8= \n", + " BusinessEntity \\\n", + "0 INSTRUMENTxFIXEDINCOMExGOVCORP \n", + "1 INSTRUMENTxFIXEDINCOMExGOVCORP \n", + "2 INSTRUMENTxFIXEDINCOMExGOVCORP \n", + "3 INSTRUMENTxFIXEDINCOMExGOVCORP \n", + "4 INSTRUMENTxFIXEDINCOMExGOVCORP \n", + "5 INSTRUMENTxFIXEDINCOMExGOVCORP \n", + "6 INSTRUMENTxFIXEDINCOMExGOVCORP \n", + "7 INSTRUMENTxFIXEDINCOMExGOVCORP \n", + "8 INSTRUMENTxFIXEDINCOMExGOVCORP \n", + "9 INSTRUMENTxFIXEDINCOMExGOVCORP \n", + "\n", + " DocumentTitle PermID \\\n", + "0 International Business Machines Corp, Plain Va... 46637038358 \n", + "1 International Business Machines Corp, Plain Va... 192826899363 \n", + "2 International Business Machines Corp, Plain Va... 44657843041 \n", + "3 International Business Machines Corp, Plain Va... 44649129642 \n", + "4 International Business Machines Corp, Plain Va... 44653695161 \n", + "5 International Business Machines Corp, Plain Va... 192841929400 \n", + "6 International Business Machines Corp, Plain Va... 46638470074 \n", + "7 International Business Machines Corp, Plain Va... 192826895881 \n", + "8 International Business Machines Corp, Plain Va... 46644611190 \n", + "9 International Business Machines Corp, Plain Va... 232796002153 \n", "\n", - " PermID DocumentTitle \n", - "0 46642939296 International Business Machines Corp, Plain Va... \n", - "1 192841929423 International Business Machines Corp, Plain Va... \n", - "2 44640212240 International Business Machines Corp, Plain Va... \n", - "3 46635711098 International Business Machines Corp, Plain Va... \n", - "4 46637038358 International Business Machines Corp, Plain Va... \n", - "5 192826899363 International Business Machines Corp, Plain Va... \n", - "6 44657843041 International Business Machines Corp, Plain Va... \n", - "7 44649129642 International Business Machines Corp, Plain Va... \n", - "8 44653695161 International Business Machines Corp, Plain Va... \n", - "9 192841929400 International Business Machines Corp, Plain Va... " + " PI RIC \n", + "0 0x00102c80bf6b046c 459200JC6= \n", + "1 0x00102c53ff1f1897 US194445601= \n", + "2 0x0004051bd47954e3 US114316318= \n", + "3 0x00040513a4865c6c 459200HP9= \n", + "4 0x00040517bba31719 459200HU8= \n", + "5 0x00102c2052251a71 459200JY8= \n", + "6 0x00102cf964da067d US137584123= \n", + "7 0x00102c8de61f1850 US194445610= \n", + "8 0x00102c00c0900d61 US161784508= \n", + "9 0x00102cfffd953398 459200KS9= " ] }, - "execution_count": 4, + "execution_count": 3, "metadata": {}, "output_type": "execute_result" } @@ -275,16 +280,9 @@ }, { "cell_type": "code", - "execution_count": 5, + "execution_count": 4, "metadata": {}, "outputs": [ - { - "name": "stdout", - "output_type": "stream", - "text": [ - "https://api.refinitiv.com /discovery/search/v1/ None None\n" - ] - }, { "data": { "text/html": [ @@ -306,53 +304,53 @@ " \n", " \n", " \n", - " PI\n", " BusinessEntity\n", - " RIC\n", - " PermID\n", " DocumentTitle\n", + " PermID\n", + " PI\n", + " RIC\n", " \n", " \n", " \n", " \n", " 0\n", - " 0x00102c28b5f20b58\n", " INSTRUMENTxFIXEDINCOMExGOVCORP\n", - " 459200JQ5=\n", - " 46642939296\n", " International Business Machines Corp, Plain Va...\n", + " 46637038358\n", + " 0x00102c80bf6b046c\n", + " 459200JC6=\n", " \n", " \n", " 1\n", - " 0x00102c2452251a75\n", " INSTRUMENTxFIXEDINCOMExGOVCORP\n", - " 459200JX0=\n", - " 192841929423\n", " International Business Machines Corp, Plain Va...\n", + " 192826899363\n", + " 0x00102c53ff1f1897\n", + " US194445601=\n", " \n", " \n", " 2\n", - " 0x0004050e34388b88\n", " INSTRUMENTxFIXEDINCOMExGOVCORP\n", - " 459200HG9=\n", - " 44640212240\n", " International Business Machines Corp, Plain Va...\n", + " 44657843041\n", + " 0x0004051bd47954e3\n", + " US114316318=\n", " \n", " \n", " 3\n", - " 0x00102c05c4dd0222\n", " INSTRUMENTxFIXEDINCOMExGOVCORP\n", - " US127166528=\n", - " 46635711098\n", " International Business Machines Corp, Plain Va...\n", + " 44649129642\n", + " 0x00040513a4865c6c\n", + " 459200HP9=\n", " \n", " \n", " 4\n", - " 0x00102c80bf6b046c\n", " INSTRUMENTxFIXEDINCOMExGOVCORP\n", - " 459200JC6=\n", - " 46637038358\n", " International Business Machines Corp, Plain Va...\n", + " 44653695161\n", + " 0x00040517bba31719\n", + " 459200HU8=\n", " \n", " \n", " ...\n", @@ -364,43 +362,43 @@ " \n", " \n", " 95\n", - " 0x000034000037e3e0\n", " INSTRUMENTxFIXEDINCOMExGOVCORP\n", + " IBM Credit LLC, Plain Vanilla Fixed Coupon Bon...\n", " <NA>\n", + " 0x000034000037dfdc\n", " <NA>\n", - " IBM Credit LLC, Plain Vanilla Fixed Coupon Bon...\n", " \n", " \n", " 96\n", - " 0x000034000037e4e7\n", " INSTRUMENTxFIXEDINCOMExGOVCORP\n", + " IBM Credit LLC, Plain Vanilla Fixed Coupon Bon...\n", " <NA>\n", + " 0x000034000037e0e3\n", " <NA>\n", - " IBM Credit LLC, Plain Vanilla Fixed Coupon Bon...\n", " \n", " \n", " 97\n", - " 0x000034000037e5e6\n", " INSTRUMENTxFIXEDINCOMExGOVCORP\n", + " IBM Credit LLC, Plain Vanilla Fixed Coupon Bon...\n", " <NA>\n", + " 0x000034000037e1e2\n", " <NA>\n", - " IBM Credit LLC, Plain Vanilla Fixed Coupon Bon...\n", " \n", " \n", " 98\n", - " 0x000034000037e6e5\n", " INSTRUMENTxFIXEDINCOMExGOVCORP\n", + " IBM Credit LLC, Plain Vanilla Fixed Coupon Bon...\n", " <NA>\n", + " 0x000034000037e3e0\n", " <NA>\n", - " IBM Credit LLC, Plain Vanilla Fixed Coupon Bon...\n", " \n", " \n", " 99\n", - " 0x000034000037e7e4\n", " INSTRUMENTxFIXEDINCOMExGOVCORP\n", + " IBM Credit LLC, Plain Vanilla Fixed Coupon Bon...\n", " <NA>\n", + " 0x000034000037e4e7\n", " <NA>\n", - " IBM Credit LLC, Plain Vanilla Fixed Coupon Bon...\n", " \n", " \n", "\n", @@ -408,36 +406,49 @@ "" ], "text/plain": [ - " PI BusinessEntity RIC \\\n", - "0 0x00102c28b5f20b58 INSTRUMENTxFIXEDINCOMExGOVCORP 459200JQ5= \n", - "1 0x00102c2452251a75 INSTRUMENTxFIXEDINCOMExGOVCORP 459200JX0= \n", - "2 0x0004050e34388b88 INSTRUMENTxFIXEDINCOMExGOVCORP 459200HG9= \n", - "3 0x00102c05c4dd0222 INSTRUMENTxFIXEDINCOMExGOVCORP US127166528= \n", - "4 0x00102c80bf6b046c INSTRUMENTxFIXEDINCOMExGOVCORP 459200JC6= \n", - ".. ... ... ... \n", - "95 0x000034000037e3e0 INSTRUMENTxFIXEDINCOMExGOVCORP \n", - "96 0x000034000037e4e7 INSTRUMENTxFIXEDINCOMExGOVCORP \n", - "97 0x000034000037e5e6 INSTRUMENTxFIXEDINCOMExGOVCORP \n", - "98 0x000034000037e6e5 INSTRUMENTxFIXEDINCOMExGOVCORP \n", - "99 0x000034000037e7e4 INSTRUMENTxFIXEDINCOMExGOVCORP \n", + " BusinessEntity \\\n", + "0 INSTRUMENTxFIXEDINCOMExGOVCORP \n", + "1 INSTRUMENTxFIXEDINCOMExGOVCORP \n", + "2 INSTRUMENTxFIXEDINCOMExGOVCORP \n", + "3 INSTRUMENTxFIXEDINCOMExGOVCORP \n", + "4 INSTRUMENTxFIXEDINCOMExGOVCORP \n", + ".. ... \n", + "95 INSTRUMENTxFIXEDINCOMExGOVCORP \n", + "96 INSTRUMENTxFIXEDINCOMExGOVCORP \n", + "97 INSTRUMENTxFIXEDINCOMExGOVCORP \n", + "98 INSTRUMENTxFIXEDINCOMExGOVCORP \n", + "99 INSTRUMENTxFIXEDINCOMExGOVCORP \n", + "\n", + " DocumentTitle PermID \\\n", + "0 International Business Machines Corp, Plain Va... 46637038358 \n", + "1 International Business Machines Corp, Plain Va... 192826899363 \n", + "2 International Business Machines Corp, Plain Va... 44657843041 \n", + "3 International Business Machines Corp, Plain Va... 44649129642 \n", + "4 International Business Machines Corp, Plain Va... 44653695161 \n", + ".. ... ... \n", + "95 IBM Credit LLC, Plain Vanilla Fixed Coupon Bon... \n", + "96 IBM Credit LLC, Plain Vanilla Fixed Coupon Bon... \n", + "97 IBM Credit LLC, Plain Vanilla Fixed Coupon Bon... \n", + "98 IBM Credit LLC, Plain Vanilla Fixed Coupon Bon... \n", + "99 IBM Credit LLC, Plain Vanilla Fixed Coupon Bon... \n", "\n", - " PermID DocumentTitle \n", - "0 46642939296 International Business Machines Corp, Plain Va... \n", - "1 192841929423 International Business Machines Corp, Plain Va... \n", - "2 44640212240 International Business Machines Corp, Plain Va... \n", - "3 46635711098 International Business Machines Corp, Plain Va... \n", - "4 46637038358 International Business Machines Corp, Plain Va... \n", - ".. ... ... \n", - "95 IBM Credit LLC, Plain Vanilla Fixed Coupon Bon... \n", - "96 IBM Credit LLC, Plain Vanilla Fixed Coupon Bon... \n", - "97 IBM Credit LLC, Plain Vanilla Fixed Coupon Bon... \n", - "98 IBM Credit LLC, Plain Vanilla Fixed Coupon Bon... \n", - "99 IBM Credit LLC, Plain Vanilla Fixed Coupon Bon... \n", + " PI RIC \n", + "0 0x00102c80bf6b046c 459200JC6= \n", + "1 0x00102c53ff1f1897 US194445601= \n", + "2 0x0004051bd47954e3 US114316318= \n", + "3 0x00040513a4865c6c 459200HP9= \n", + "4 0x00040517bba31719 459200HU8= \n", + ".. ... ... \n", + "95 0x000034000037dfdc \n", + "96 0x000034000037e0e3 \n", + "97 0x000034000037e1e2 \n", + "98 0x000034000037e3e0 \n", + "99 0x000034000037e4e7 \n", "\n", "[100 rows x 5 columns]" ] }, - "execution_count": 5, + "execution_count": 4, "metadata": {}, "output_type": "execute_result" } @@ -459,13 +470,6 @@ "execution_count": 6, "metadata": {}, "outputs": [ - { - "name": "stdout", - "output_type": "stream", - "text": [ - "https://api.refinitiv.com /discovery/search/v1/ None None\n" - ] - }, { "data": { "text/html": [ @@ -487,144 +491,144 @@ " \n", " \n", " \n", - " Currency\n", - " IssueDate\n", " ISIN\n", " RIC\n", - " MaturityDate\n", - " CouponRate\n", + " IssueDate\n", + " Currency\n", " FaceIssuedTotal\n", + " CouponRate\n", + " MaturityDate\n", " \n", " \n", " \n", " \n", " 0\n", + " US459200JC60\n", + " 459200JC6=\n", + " 2015-11-09\n", " USD\n", - " 2021-12-09T00:00:00.000Z\n", - " US45920FZL56\n", - " 45920FZL5=\n", - " 2021-12-20T00:00:00.000Z\n", - " 0.0\n", - " <NA>\n", + " 900000000\n", + " 2.875\n", + " 2022-11-09\n", " \n", " \n", " 1\n", - " USD\n", - " 2021-12-09T00:00:00.000Z\n", - " US45920FZN13\n", - " 45920FZN1=\n", - " 2021-12-22T00:00:00.000Z\n", - " 0.0\n", - " <NA>\n", + " XS1944456018\n", + " US194445601=\n", + " 2019-01-31\n", + " EUR\n", + " 1750000000\n", + " 0.375\n", + " 2023-01-31\n", " \n", " \n", " 2\n", - " USD\n", - " 2021-12-10T00:00:00.000Z\n", - " US45920FZT82\n", - " 45920FZT8=\n", - " 2021-12-27T00:00:00.000Z\n", - " 0.0\n", - " <NA>\n", + " XS1143163183\n", + " US114316318=\n", + " 2014-11-26\n", + " EUR\n", + " 1000000000\n", + " 1.25\n", + " 2023-05-26\n", " \n", " \n", " 3\n", + " US459200HP91\n", + " 459200HP9=\n", + " 2013-08-01\n", " USD\n", - " 2021-12-09T00:00:00.000Z\n", - " US45920FZU55\n", - " 45920FZU5=\n", - " 2021-12-28T00:00:00.000Z\n", - " 0.0\n", - " <NA>\n", + " 1500000000\n", + " 3.375\n", + " 2023-08-01\n", " \n", " \n", " 4\n", + " US459200HU86\n", + " 459200HU8=\n", + " 2014-02-12\n", " USD\n", - " 2021-12-09T00:00:00.000Z\n", - " US45920FZV39\n", - " 45920FZV3=\n", - " 2021-12-29T00:00:00.000Z\n", - " 0.0\n", - " <NA>\n", + " 2000000000\n", + " 3.625\n", + " 2024-02-12\n", " \n", " \n", " 5\n", + " US459200JY80\n", + " 459200JY8=\n", + " 2019-05-15\n", " USD\n", - " 2021-12-09T00:00:00.000Z\n", - " US45920FZW12\n", - " 45920FZW1=\n", - " 2021-12-30T00:00:00.000Z\n", - " 0.0\n", - " <NA>\n", + " 3000000000\n", + " 3.0\n", + " 2024-05-15\n", " \n", " \n", " 6\n", - " USD\n", - " 2021-12-10T00:00:00.000Z\n", - " US45920FZX94\n", - " 45920FZX9=\n", - " 2021-12-31T00:00:00.000Z\n", - " 0.0\n", - " <NA>\n", + " XS1375841233\n", + " US137584123=\n", + " 2016-03-07\n", + " EUR\n", + " 750000000\n", + " 1.125\n", + " 2024-09-06\n", " \n", " \n", " 7\n", - " USD\n", - " 2017-01-27T00:00:00.000Z\n", - " US459200JQ56\n", - " 459200JQ5=\n", - " 2022-01-27T00:00:00.000Z\n", - " 2.5\n", - " 1000000000.0\n", + " XS1944456109\n", + " US194445610=\n", + " 2019-01-31\n", + " EUR\n", + " 1000000000\n", + " 0.875\n", + " 2025-01-31\n", " \n", " \n", " 8\n", - " USD\n", - " 2019-05-15T00:00:00.000Z\n", - " US459200JX08\n", - " 459200JX0=\n", - " 2022-05-13T00:00:00.000Z\n", - " 2.85\n", - " 2750000000.0\n", + " XS1617845083\n", + " US161784508=\n", + " 2017-05-23\n", + " EUR\n", + " 1000000000\n", + " 0.95\n", + " 2025-05-23\n", " \n", " \n", " 9\n", + " US459200KS93\n", + " 459200KS9=\n", + " 2022-07-27\n", " USD\n", - " 2012-07-30T00:00:00.000Z\n", - " US459200HG92\n", - " 459200HG9=\n", - " 2022-08-01T00:00:00.000Z\n", - " 1.875\n", - " 1000000000.0\n", + " 1000000000\n", + " 4.0\n", + " 2025-07-27\n", " \n", " \n", "\n", "" ], "text/plain": [ - " Currency IssueDate ISIN RIC \\\n", - "0 USD 2021-12-09T00:00:00.000Z US45920FZL56 45920FZL5= \n", - "1 USD 2021-12-09T00:00:00.000Z US45920FZN13 45920FZN1= \n", - "2 USD 2021-12-10T00:00:00.000Z US45920FZT82 45920FZT8= \n", - "3 USD 2021-12-09T00:00:00.000Z US45920FZU55 45920FZU5= \n", - "4 USD 2021-12-09T00:00:00.000Z US45920FZV39 45920FZV3= \n", - "5 USD 2021-12-09T00:00:00.000Z US45920FZW12 45920FZW1= \n", - "6 USD 2021-12-10T00:00:00.000Z US45920FZX94 45920FZX9= \n", - "7 USD 2017-01-27T00:00:00.000Z US459200JQ56 459200JQ5= \n", - "8 USD 2019-05-15T00:00:00.000Z US459200JX08 459200JX0= \n", - "9 USD 2012-07-30T00:00:00.000Z US459200HG92 459200HG9= \n", + " ISIN RIC IssueDate Currency FaceIssuedTotal \\\n", + "0 US459200JC60 459200JC6= 2015-11-09 USD 900000000 \n", + "1 XS1944456018 US194445601= 2019-01-31 EUR 1750000000 \n", + "2 XS1143163183 US114316318= 2014-11-26 EUR 1000000000 \n", + "3 US459200HP91 459200HP9= 2013-08-01 USD 1500000000 \n", + "4 US459200HU86 459200HU8= 2014-02-12 USD 2000000000 \n", + "5 US459200JY80 459200JY8= 2019-05-15 USD 3000000000 \n", + "6 XS1375841233 US137584123= 2016-03-07 EUR 750000000 \n", + "7 XS1944456109 US194445610= 2019-01-31 EUR 1000000000 \n", + "8 XS1617845083 US161784508= 2017-05-23 EUR 1000000000 \n", + "9 US459200KS93 459200KS9= 2022-07-27 USD 1000000000 \n", "\n", - " MaturityDate CouponRate FaceIssuedTotal \n", - "0 2021-12-20T00:00:00.000Z 0.0 \n", - "1 2021-12-22T00:00:00.000Z 0.0 \n", - "2 2021-12-27T00:00:00.000Z 0.0 \n", - "3 2021-12-28T00:00:00.000Z 0.0 \n", - "4 2021-12-29T00:00:00.000Z 0.0 \n", - "5 2021-12-30T00:00:00.000Z 0.0 \n", - "6 2021-12-31T00:00:00.000Z 0.0 \n", - "7 2022-01-27T00:00:00.000Z 2.5 1000000000.0 \n", - "8 2022-05-13T00:00:00.000Z 2.85 2750000000.0 \n", - "9 2022-08-01T00:00:00.000Z 1.875 1000000000.0 " + " CouponRate MaturityDate \n", + "0 2.875 2022-11-09 \n", + "1 0.375 2023-01-31 \n", + "2 1.25 2023-05-26 \n", + "3 3.375 2023-08-01 \n", + "4 3.625 2024-02-12 \n", + "5 3.0 2024-05-15 \n", + "6 1.125 2024-09-06 \n", + "7 0.875 2025-01-31 \n", + "8 0.95 2025-05-23 \n", + "9 4.0 2025-07-27 " ] }, "execution_count": 6, @@ -634,7 +638,7 @@ ], "source": [ "response = search.Definition(\n", - " view=search.SearchViews.GOV_CORP_INSTRUMENTS,\n", + " view=search.Views.GOV_CORP_INSTRUMENTS,\n", " select=\"ISIN,RIC,IssueDate,Currency,FaceIssuedTotal,CouponRate,MaturityDate\", \n", " filter=\"IssuerTicker eq 'IBM' and IsActive eq true and AssetStatus ne 'MAT'\"\n", ").get_data()\n", @@ -653,13 +657,6 @@ "execution_count": 7, "metadata": {}, "outputs": [ - { - "name": "stdout", - "output_type": "stream", - "text": [ - "https://api.refinitiv.com /discovery/search/v1/metadata/views/GovCorpInstruments None None\n" - ] - }, { "data": { "text/html": [ @@ -809,13 +806,13 @@ " True\n", " True\n", " False\n", - " False\n", + " True\n", " False\n", " True\n", " \n", " \n", "\n", - "

1125 rows × 7 columns

\n", + "

1129 rows × 7 columns

\n", "" ], "text/plain": [ @@ -856,9 +853,9 @@ "WorstYearsToRedem WorstYearsToRedem False False False \n", "YieldCurveBenchmarkRIC YieldCurveBenchmarkRIC False False False \n", "YieldTypeDescription YieldTypeDescription False False False \n", - "ZCodeValue ZCodeValue False False True \n", + "ZCodeValue ZCodeValue True False True \n", "\n", - "[1125 rows x 7 columns]" + "[1129 rows x 7 columns]" ] }, "execution_count": 7, @@ -868,7 +865,7 @@ ], "source": [ "response = search.metadata.Definition(\n", - " view = search.SearchViews.GOV_CORP_INSTRUMENTS # Required parameterc\n", + " view = search.Views.GOV_CORP_INSTRUMENTS # Required parameterc\n", ").get_data()\n", "\n", "# for Pandas Display purpose only\n", @@ -890,15 +887,7 @@ "cell_type": "code", "execution_count": 8, "metadata": {}, - "outputs": [ - { - "name": "stdout", - "output_type": "stream", - "text": [ - "https://api.refinitiv.com /discovery/search/v1/ None None\n" - ] - } - ], + "outputs": [], "source": [ "response = search.Definition(\n", " top=10,\n", @@ -924,7 +913,7 @@ { "data": { "text/plain": [ - "{'Total': 157866392,\n", + "{'Total': 164048551,\n", " 'Hits': [{'BusinessEntity': 'QUOTExMONEY',\n", " 'DocumentTitle': 'Guide to FX and Money Page (Speed Guide)',\n", " 'PI': '1000226241',\n", @@ -965,122 +954,122 @@ " 'PI': '307126',\n", " 'RIC': '.GDAXI'},\n", " {'BusinessEntity': 'INSTRUMENTxINDEX',\n", - " 'DocumentTitle': 'NASDAQ 100 Index, Equity Index',\n", - " 'PermID': '232763199982',\n", - " 'PI': '321391',\n", - " 'RIC': '.NDX'},\n", - " {'BusinessEntity': 'INSTRUMENTxINDEX',\n", " 'DocumentTitle': 'NASDAQ Composite Index, Equity Index',\n", " 'PermID': '8591501188',\n", " 'PI': '276367',\n", - " 'RIC': '.IXIC'}],\n", + " 'RIC': '.IXIC'},\n", + " {'BusinessEntity': 'INSTRUMENTxINDEX',\n", + " 'DocumentTitle': 'NASDAQ 100 Index, Equity Index',\n", + " 'PermID': '232763199982',\n", + " 'PI': '321391',\n", + " 'RIC': '.NDX'}],\n", " 'Navigators': {'RCSTRBC2012Leaf': {'Buckets': [{'Label': 'Banks (NEC)',\n", - " 'Count': 4167595},\n", - " {'Label': 'Corporate Financial Services (NEC)', 'Count': 3040080},\n", - " {'Label': 'Corporate Banks', 'Count': 1431373},\n", - " {'Label': 'Retail & Mortgage Banks', 'Count': 1285291},\n", + " 'Count': 4472569},\n", + " {'Label': 'Retail & Mortgage Banks', 'Count': 2248355},\n", + " {'Label': 'Corporate Financial Services (NEC)', 'Count': 2159652},\n", + " {'Label': 'Corporate Banks', 'Count': 1597596},\n", " {'Label': 'Investment Banking & Brokerage Services (NEC)',\n", - " 'Count': 712886},\n", - " {'Label': 'Public Finance Activities', 'Count': 651636},\n", - " {'Label': 'Government & Government Finance (NEC)', 'Count': 410875},\n", - " {'Label': 'Consumer Lending (NEC)', 'Count': 403538},\n", - " {'Label': 'Investment Management & Fund Operators (NEC)', 'Count': 340224},\n", - " {'Label': 'Investment Holding Companies (NEC)', 'Count': 311441},\n", - " {'Label': 'Construction & Engineering (NEC)', 'Count': 305432},\n", - " {'Label': 'Electric Utilities (NEC)', 'Count': 297827},\n", - " {'Label': 'Wealth Management', 'Count': 295220},\n", - " {'Label': 'Diversified Investment Services', 'Count': 288842},\n", - " {'Label': 'Professional Information Services (NEC)', 'Count': 278113},\n", + " 'Count': 800767},\n", + " {'Label': 'Government & Government Finance (NEC)', 'Count': 578774},\n", + " {'Label': 'Public Finance Activities', 'Count': 573035},\n", + " {'Label': 'Investment Holding Companies (NEC)', 'Count': 406033},\n", + " {'Label': 'Investment Management & Fund Operators (NEC)', 'Count': 384536},\n", + " {'Label': 'Consumer Lending (NEC)', 'Count': 377621},\n", + " {'Label': 'Construction & Engineering (NEC)', 'Count': 377135},\n", + " {'Label': 'Investment Banking', 'Count': 357339},\n", + " {'Label': 'Electric Utilities (NEC)', 'Count': 325380},\n", + " {'Label': 'Business Support Services (NEC)', 'Count': 323109},\n", + " {'Label': 'Wealth Management', 'Count': 311601},\n", + " {'Label': 'Diversified Investment Services', 'Count': 303637},\n", " {'Label': 'Real Estate Rental, Development & Operations (NEC)',\n", - " 'Count': 267149},\n", - " {'Label': 'Business Support Services (NEC)', 'Count': 244993},\n", - " {'Label': 'Building Contractors', 'Count': 201751},\n", + " 'Count': 288204},\n", + " {'Label': 'Professional Information Services (NEC)', 'Count': 278672},\n", + " {'Label': 'Building Contractors', 'Count': 219508},\n", + " {'Label': 'Software (NEC)', 'Count': 189836},\n", " {'Label': 'Financial & Commodity Market Operators & Service Providers (NEC)',\n", - " 'Count': 180458},\n", - " {'Label': 'Management Consulting Services', 'Count': 162354},\n", - " {'Label': 'Investment Banking', 'Count': 143286},\n", - " {'Label': 'Software (NEC)', 'Count': 138378},\n", - " {'Label': 'IT Services & Consulting (NEC)', 'Count': 134076},\n", - " {'Label': 'Investment Management', 'Count': 128392},\n", - " {'Label': 'Hedge Funds', 'Count': 109046},\n", - " {'Label': 'Real Estate Services (NEC)', 'Count': 103683},\n", - " {'Label': 'Supermarkets & Convenience Stores', 'Count': 103606},\n", - " {'Label': 'Pharmaceuticals (NEC)', 'Count': 101298},\n", - " {'Label': 'Government Administration Activities', 'Count': 96332},\n", - " {'Label': 'Integrated Telecommunications Services (NEC)', 'Count': 94526},\n", - " {'Label': 'Oil & Gas Exploration and Production (NEC)', 'Count': 87511},\n", - " {'Label': 'Industrial Machinery & Equipment (NEC)', 'Count': 87214},\n", - " {'Label': 'UK Investment Trusts', 'Count': 87211},\n", - " {'Label': 'Brokerage Services', 'Count': 87096},\n", - " {'Label': 'Hospitals, Clinics & Primary Care Services', 'Count': 84365},\n", - " {'Label': 'Consumer Leasing', 'Count': 83837},\n", - " {'Label': 'Commodity Chemicals (NEC)', 'Count': 83772},\n", + " 'Count': 182470},\n", + " {'Label': 'Management Consulting Services', 'Count': 172456},\n", + " {'Label': 'IT Services & Consulting (NEC)', 'Count': 163328},\n", + " {'Label': 'Investment Management', 'Count': 134610},\n", + " {'Label': 'Supermarkets & Convenience Stores', 'Count': 125772},\n", + " {'Label': 'Pharmaceuticals (NEC)', 'Count': 118817},\n", + " {'Label': 'Real Estate Services (NEC)', 'Count': 117425},\n", + " {'Label': 'Miscellaneous Educational Service Providers', 'Count': 111758},\n", + " {'Label': 'Integrated Telecommunications Services (NEC)', 'Count': 109207},\n", + " {'Label': 'Government Administration Activities', 'Count': 107360},\n", + " {'Label': 'Hospitals, Clinics & Primary Care Services', 'Count': 107000},\n", " {'Label': 'Auto Vehicles, Parts & Service Retailers (NEC)',\n", - " 'Count': 82955},\n", - " {'Label': 'Food Processing (NEC)', 'Count': 77029},\n", - " {'Label': 'Insurance Brokers', 'Count': 75640},\n", - " {'Label': 'Restaurants & Bars (NEC)', 'Count': 71132},\n", - " {'Label': 'Miscellaneous Educational Service Providers', 'Count': 70208},\n", - " {'Label': 'Construction Materials (NEC)', 'Count': 63002},\n", - " {'Label': 'Industrial Machinery', 'Count': 59834},\n", - " {'Label': 'Multiline Utilities', 'Count': 59261},\n", - " {'Label': 'Office Real Estate Rental & Development', 'Count': 58934},\n", - " {'Label': 'Auto, Truck & Motorcycle Parts (NEC)', 'Count': 58752},\n", - " {'Label': 'Shell Companies', 'Count': 57953},\n", - " {'Label': 'Electrical Components & Equipment (NEC)', 'Count': 57706},\n", - " {'Label': 'Freight Trucking', 'Count': 54383},\n", - " {'Label': 'Hotels & Motels', 'Count': 54182},\n", - " {'Label': 'Biotechnology & Medical Research (NEC)', 'Count': 53592},\n", - " {'Label': 'Closed End Funds', 'Count': 52967},\n", - " {'Label': 'Residential Builders - Single Homes', 'Count': 52816},\n", - " {'Label': 'Life & Health Insurance (NEC)', 'Count': 51825},\n", - " {'Label': 'Iron & Steel (NEC)', 'Count': 50562},\n", - " {'Label': 'Oil & Gas Refining and Marketing (NEC)', 'Count': 48676},\n", - " {'Label': 'Highway & Bridge Construction', 'Count': 47794},\n", - " {'Label': 'Land Division & Subdivision', 'Count': 47005},\n", - " {'Label': 'Metallic Rolling & Drawing Products', 'Count': 46848},\n", - " {'Label': 'Plastics', 'Count': 46562},\n", - " {'Label': 'Healthcare Facilities & Services (NEC)', 'Count': 44916},\n", - " {'Label': 'Drug Retailers (NEC)', 'Count': 44867},\n", - " {'Label': 'Consumer Goods Conglomerates', 'Count': 44760},\n", - " {'Label': 'Plumbing Fixtures & Fittings', 'Count': 44569},\n", - " {'Label': 'Personal Services (NEC)', 'Count': 43653},\n", - " {'Label': 'Diversified Mining', 'Count': 41918},\n", - " {'Label': 'Oil & Gas Transportation Services (NEC)', 'Count': 41757},\n", - " {'Label': 'Civil Engineers & Architects', 'Count': 41528},\n", - " {'Label': 'Passenger Transportation, Ground & Sea (NEC)', 'Count': 40104},\n", - " {'Label': 'Petroleum Refining', 'Count': 40047},\n", - " {'Label': 'Commercial Leasing', 'Count': 40030},\n", - " {'Label': 'Gasoline Stations', 'Count': 39927},\n", - " {'Label': 'Homebuilding (NEC)', 'Count': 39762},\n", - " {'Label': 'Commercial Loans', 'Count': 39608},\n", - " {'Label': 'Wireless Telecommunications Services (NEC)', 'Count': 39282},\n", - " {'Label': 'Coal (NEC)', 'Count': 39026},\n", - " {'Label': 'Semiconductors (NEC)', 'Count': 38473},\n", - " {'Label': 'Maintenance & Repair Services', 'Count': 37758},\n", - " {'Label': 'Waste Management, Disposal & Recycling Services',\n", - " 'Count': 37233},\n", + " 'Count': 105592},\n", + " {'Label': 'Industrial Machinery & Equipment (NEC)', 'Count': 103700},\n", + " {'Label': 'Brokerage Services', 'Count': 103354},\n", + " {'Label': 'Commercial Loans', 'Count': 102590},\n", + " {'Label': 'Commodity Chemicals (NEC)', 'Count': 97589},\n", + " {'Label': 'Oil & Gas Exploration and Production (NEC)', 'Count': 89295},\n", + " {'Label': 'Food Processing (NEC)', 'Count': 87890},\n", + " {'Label': 'UK Investment Trusts', 'Count': 83713},\n", + " {'Label': 'Auto, Truck & Motorcycle Parts (NEC)', 'Count': 79230},\n", + " {'Label': 'Construction Materials (NEC)', 'Count': 79006},\n", + " {'Label': 'Insurance Brokers', 'Count': 78915},\n", + " {'Label': 'Restaurants & Bars (NEC)', 'Count': 77926},\n", + " {'Label': 'Electrical Components & Equipment (NEC)', 'Count': 67469},\n", + " {'Label': 'Multiline Utilities', 'Count': 67355},\n", + " {'Label': 'Office Real Estate Rental & Development', 'Count': 65088},\n", + " {'Label': 'Industrial Machinery', 'Count': 65028},\n", + " {'Label': 'Shell Companies', 'Count': 64859},\n", + " {'Label': 'Biotechnology & Medical Research (NEC)', 'Count': 62996},\n", + " {'Label': 'Hotels & Motels', 'Count': 61590},\n", + " {'Label': 'Freight Trucking', 'Count': 60170},\n", + " {'Label': 'Homebuilding (NEC)', 'Count': 59695},\n", + " {'Label': 'Residential Builders - Single Homes', 'Count': 59577},\n", + " {'Label': 'Healthcare Facilities & Services (NEC)', 'Count': 58860},\n", + " {'Label': 'Closed End Funds', 'Count': 58655},\n", + " {'Label': 'Life & Health Insurance (NEC)', 'Count': 56934},\n", + " {'Label': 'Iron & Steel (NEC)', 'Count': 54709},\n", + " {'Label': 'Highway & Bridge Construction', 'Count': 53983},\n", + " {'Label': 'Metallic Rolling & Drawing Products', 'Count': 53606},\n", + " {'Label': 'Hedge Funds', 'Count': 53513},\n", + " {'Label': 'Drug Retailers (NEC)', 'Count': 53204},\n", + " {'Label': 'Plastics', 'Count': 53074},\n", + " {'Label': 'Oil & Gas Refining and Marketing (NEC)', 'Count': 52786},\n", + " {'Label': 'Metal Service Centers', 'Count': 52652},\n", + " {'Label': 'Personal Services (NEC)', 'Count': 52275},\n", + " {'Label': 'Plumbing Fixtures & Fittings', 'Count': 50476},\n", + " {'Label': 'Passenger Transportation, Ground & Sea (NEC)', 'Count': 50332},\n", + " {'Label': 'Gasoline Stations', 'Count': 50105},\n", + " {'Label': 'Diversified Mining', 'Count': 46369},\n", + " {'Label': 'Consumer Goods Conglomerates', 'Count': 46295},\n", + " {'Label': 'Petroleum Refining', 'Count': 46096},\n", + " {'Label': 'Online Services (NEC)', 'Count': 45711},\n", + " {'Label': 'Civil Engineers & Architects', 'Count': 43838},\n", " {'Label': 'Medical Equipment, Supplies & Distribution (NEC)',\n", - " 'Count': 36945},\n", - " {'Label': 'Legal Services', 'Count': 36041},\n", - " {'Label': 'Property & Casualty Insurance (NEC)', 'Count': 35828},\n", - " {'Label': 'Residential Real Estate Rental & Development', 'Count': 35137},\n", - " {'Label': 'Personal Products (NEC)', 'Count': 34376},\n", - " {'Label': 'Cement & Concrete Manufacturing', 'Count': 34079},\n", - " {'Label': 'Ground Freight & Logistics (NEC)', 'Count': 33641},\n", - " {'Label': 'Commercial REITs (NEC)', 'Count': 33565},\n", - " {'Label': 'Commercial Buildings', 'Count': 33361},\n", - " {'Label': 'Bio Therapeutic Drugs', 'Count': 32804},\n", - " {'Label': 'Auto & Truck Manufacturers (NEC)', 'Count': 32521},\n", - " {'Label': 'Natural Gas Distribution', 'Count': 32311},\n", - " {'Label': 'Broadcasting (NEC)', 'Count': 31589},\n", - " {'Label': 'Gold Mining', 'Count': 31449},\n", - " {'Label': 'Natural Gas Utilities (NEC)', 'Count': 31442},\n", - " {'Label': 'Advertising Agency', 'Count': 31277},\n", - " {'Label': 'Food Retail & Distribution (NEC)', 'Count': 31002},\n", - " {'Label': 'Life Insurance', 'Count': 30833},\n", - " {'Label': 'Personal & Car Loans', 'Count': 30739},\n", - " {'Label': 'Apparel & Accessories (NEC)', 'Count': 30694}]}}}" + " 'Count': 43039},\n", + " {'Label': 'Waste Management, Disposal & Recycling Services',\n", + " 'Count': 42629},\n", + " {'Label': 'Oil & Gas Transportation Services (NEC)', 'Count': 42626},\n", + " {'Label': 'Semiconductors (NEC)', 'Count': 42461},\n", + " {'Label': 'Maintenance & Repair Services', 'Count': 42184},\n", + " {'Label': 'Advertising & Marketing (NEC)', 'Count': 41222},\n", + " {'Label': 'Wireless Telecommunications Services (NEC)', 'Count': 40888},\n", + " {'Label': 'Coal (NEC)', 'Count': 40664},\n", + " {'Label': 'Residential Real Estate Rental & Development', 'Count': 40372},\n", + " {'Label': 'Commercial Leasing', 'Count': 39775},\n", + " {'Label': 'Grain (Crop) Production', 'Count': 39372},\n", + " {'Label': 'Consumer Leasing', 'Count': 39331},\n", + " {'Label': 'Commercial Buildings', 'Count': 39211},\n", + " {'Label': 'Natural Gas Distribution', 'Count': 39146},\n", + " {'Label': 'Child Care & Family Services', 'Count': 38458},\n", + " {'Label': 'Cement & Concrete Manufacturing', 'Count': 38100},\n", + " {'Label': 'Personal Products (NEC)', 'Count': 37784},\n", + " {'Label': 'Legal Services', 'Count': 37635},\n", + " {'Label': 'Property & Casualty Insurance (NEC)', 'Count': 37627},\n", + " {'Label': 'Land Division & Subdivision', 'Count': 37289},\n", + " {'Label': 'Auto & Truck Manufacturers (NEC)', 'Count': 36492},\n", + " {'Label': 'Freight Logistics', 'Count': 36207},\n", + " {'Label': 'Multiline Insurance & Brokers (NEC)', 'Count': 35719},\n", + " {'Label': 'Employment Services (NEC)', 'Count': 35652},\n", + " {'Label': 'Life Insurance', 'Count': 35132},\n", + " {'Label': 'Commercial REITs (NEC)', 'Count': 34868},\n", + " {'Label': 'Leisure & Recreation (NEC)', 'Count': 34772}]}}}" ] }, "metadata": {}, @@ -1107,122 +1096,122 @@ " \n", " \n", " \n", - " PI\n", " BusinessEntity\n", + " DocumentTitle\n", " PermID\n", + " PI\n", " RIC\n", - " DocumentTitle\n", " \n", " \n", " \n", " \n", " 0\n", - " 1000226241\n", " QUOTExMONEY\n", + " Guide to FX and Money Page (Speed Guide)\n", " <NA>\n", + " 1000226241\n", " MONEY\n", - " Guide to FX and Money Page (Speed Guide)\n", " \n", " \n", " 1\n", - " 271449\n", " INSTRUMENTxINDEX\n", + " S&P 500 Index - CBOE, Equity Index\n", " 192889955060\n", + " 271449\n", " .SPX\n", - " S&P 500 Index - CBOE, Equity Index\n", " \n", " \n", " 2\n", - " 271406\n", " INSTRUMENTxINDEX\n", + " Dow Jones Industrial Average Index, Equity Index\n", " 232763199566\n", + " 271406\n", " .DJI\n", - " Dow Jones Industrial Average Index, Equity Index\n", " \n", " \n", " 3\n", - " 272181\n", " INSTRUMENTxINDEX\n", + " FTSE 100 Index, Equity Index\n", " 232768448629\n", + " 272181\n", " .FTSE\n", - " FTSE 100 Index, Equity Index\n", " \n", " \n", " 4\n", - " 286133\n", " INSTRUMENTxINDEX\n", + " CAC 40 Index, Equity Index\n", " 232765063694\n", + " 286133\n", " .FCHI\n", - " CAC 40 Index, Equity Index\n", " \n", " \n", " 5\n", - " 308106\n", " INSTRUMENTxINDEX\n", + " Hang Seng Index, Equity Index\n", " 232764254139\n", + " 308106\n", " .HSI\n", - " Hang Seng Index, Equity Index\n", " \n", " \n", " 6\n", - " 324609\n", " INSTRUMENTxINDEX\n", + " Nikkei 225 Index, Equity Index\n", " 232763493270\n", + " 324609\n", " .N225\n", - " Nikkei 225 Index, Equity Index\n", " \n", " \n", " 7\n", - " 307126\n", " INSTRUMENTxINDEX\n", + " Deutsche Boerse DAX Index, Equity Index\n", " 232763199171\n", + " 307126\n", " .GDAXI\n", - " Deutsche Boerse DAX Index, Equity Index\n", " \n", " \n", " 8\n", - " 321391\n", " INSTRUMENTxINDEX\n", - " 232763199982\n", - " .NDX\n", - " NASDAQ 100 Index, Equity Index\n", + " NASDAQ Composite Index, Equity Index\n", + " 8591501188\n", + " 276367\n", + " .IXIC\n", " \n", " \n", " 9\n", - " 276367\n", " INSTRUMENTxINDEX\n", - " 8591501188\n", - " .IXIC\n", - " NASDAQ Composite Index, Equity Index\n", + " NASDAQ 100 Index, Equity Index\n", + " 232763199982\n", + " 321391\n", + " .NDX\n", " \n", " \n", "\n", "" ], "text/plain": [ - " PI BusinessEntity PermID RIC \\\n", - "0 1000226241 QUOTExMONEY MONEY \n", - "1 271449 INSTRUMENTxINDEX 192889955060 .SPX \n", - "2 271406 INSTRUMENTxINDEX 232763199566 .DJI \n", - "3 272181 INSTRUMENTxINDEX 232768448629 .FTSE \n", - "4 286133 INSTRUMENTxINDEX 232765063694 .FCHI \n", - "5 308106 INSTRUMENTxINDEX 232764254139 .HSI \n", - "6 324609 INSTRUMENTxINDEX 232763493270 .N225 \n", - "7 307126 INSTRUMENTxINDEX 232763199171 .GDAXI \n", - "8 321391 INSTRUMENTxINDEX 232763199982 .NDX \n", - "9 276367 INSTRUMENTxINDEX 8591501188 .IXIC \n", + " BusinessEntity DocumentTitle \\\n", + "0 QUOTExMONEY Guide to FX and Money Page (Speed Guide) \n", + "1 INSTRUMENTxINDEX S&P 500 Index - CBOE, Equity Index \n", + "2 INSTRUMENTxINDEX Dow Jones Industrial Average Index, Equity Index \n", + "3 INSTRUMENTxINDEX FTSE 100 Index, Equity Index \n", + "4 INSTRUMENTxINDEX CAC 40 Index, Equity Index \n", + "5 INSTRUMENTxINDEX Hang Seng Index, Equity Index \n", + "6 INSTRUMENTxINDEX Nikkei 225 Index, Equity Index \n", + "7 INSTRUMENTxINDEX Deutsche Boerse DAX Index, Equity Index \n", + "8 INSTRUMENTxINDEX NASDAQ Composite Index, Equity Index \n", + "9 INSTRUMENTxINDEX NASDAQ 100 Index, Equity Index \n", "\n", - " DocumentTitle \n", - "0 Guide to FX and Money Page (Speed Guide) \n", - "1 S&P 500 Index - CBOE, Equity Index \n", - "2 Dow Jones Industrial Average Index, Equity Index \n", - "3 FTSE 100 Index, Equity Index \n", - "4 CAC 40 Index, Equity Index \n", - "5 Hang Seng Index, Equity Index \n", - "6 Nikkei 225 Index, Equity Index \n", - "7 Deutsche Boerse DAX Index, Equity Index \n", - "8 NASDAQ 100 Index, Equity Index \n", - "9 NASDAQ Composite Index, Equity Index " + " PermID PI RIC \n", + "0 1000226241 MONEY \n", + "1 192889955060 271449 .SPX \n", + "2 232763199566 271406 .DJI \n", + "3 232768448629 272181 .FTSE \n", + "4 232765063694 286133 .FCHI \n", + "5 232764254139 308106 .HSI \n", + "6 232763493270 324609 .N225 \n", + "7 232763199171 307126 .GDAXI \n", + "8 8591501188 276367 .IXIC \n", + "9 232763199982 321391 .NDX " ] }, "metadata": {}, @@ -1257,13 +1246,6 @@ "execution_count": 10, "metadata": {}, "outputs": [ - { - "name": "stdout", - "output_type": "stream", - "text": [ - "https://api.refinitiv.com /discovery/search/v1/ None None\n" - ] - }, { "data": { "text/html": [ @@ -1285,122 +1267,134 @@ " \n", " \n", " \n", - " PI\n", " BusinessEntity\n", - " RIC\n", - " PermID\n", " DocumentTitle\n", + " PermID\n", + " PI\n", + " RIC\n", " \n", " \n", " \n", " \n", " 0\n", - " 273610776\n", " QUOTExCOMMODITY\n", - " CSCc1\n", - " 21622940491\n", " CME Cash Settled Cheese Electronic Commodity Future Continuation 1, Commodity Future, Chicago Mercantile Exchange\n", + " 21622940491\n", + " 273610776\n", + " CSCc1\n", " \n", " \n", " 1\n", - " 272623267\n", " QUOTExCOMMODITY\n", - " 0#CSC:\n", - " 21622425217\n", " Cash Settled Cheese Futures Chain Contracts, Commodity Future, Chicago Mercantile Exchange\n", + " 21622425217\n", + " 272623267\n", + " 0#CSC:\n", " \n", " \n", " 2\n", - " 406809544\n", " QUOTExCOMMODITY\n", - " CSCZ1\n", - " 21727643040\n", - " CME Cash Settled Cheese Electronic Commodity Future Dec 2021, Commodity Future, Chicago Mercantile Exchange\n", + " CME Cash Settled Cheese Electronic Commodity Future Jun 2022, Commodity Future, Chicago Mercantile Exchange\n", + " 21757842054\n", + " 444997903\n", + " CSCM2\n", " \n", " \n", " 3\n", - " 413501786\n", " QUOTExCOMMODITY\n", - " CSCF2\n", - " 21733097271\n", - " CME Cash Settled Cheese Electronic Commodity Future Jan 2022, Commodity Future, Chicago Mercantile Exchange\n", + " CME Cash Settled Cheese Electronic Commodity Future Sep 2022, Commodity Future, Chicago Mercantile Exchange\n", + " 21772665846\n", + " 463861357\n", + " CSCU2\n", " \n", " \n", " 4\n", - " 419119906\n", " QUOTExCOMMODITY\n", - " CSCG2\n", - " 21737604992\n", - " CME Cash Settled Cheese Electronic Commodity Future Feb 2022, Commodity Future, Chicago Mercantile Exchange\n", + " CME Cash Settled Cheese Electronic Commodity Future Aug 2022, Commodity Future, Chicago Mercantile Exchange\n", + " 21767494118\n", + " 457131738\n", + " CSCQ2\n", " \n", " \n", " 5\n", - " 427664132\n", " QUOTExCOMMODITY\n", - " CSCH2\n", - " 21744350317\n", - " CME Cash Settled Cheese Electronic Commodity Future Mar 2022, Commodity Future, Chicago Mercantile Exchange\n", + " CME Cash Settled Cheese Electronic Commodity Future Oct 2022, Commodity Future, Chicago Mercantile Exchange\n", + " 21778821217\n", + " 471517057\n", + " CSCV2\n", " \n", " \n", " 6\n", - " 432796175\n", " QUOTExCOMMODITY\n", - " CSCJ2\n", - " 21748334445\n", - " CME Cash Settled Cheese Electronic Commodity Future Apr 2022, Commodity Future, Chicago Mercantile Exchange\n", + " CME Cash Settled Cheese Electronic Commodity Future Nov 2022, Commodity Future, Chicago Mercantile Exchange\n", + " 21784277336\n", + " 478150068\n", + " CSCX2\n", " \n", " \n", " 7\n", - " 439042441\n", " QUOTExCOMMODITY\n", - " CSCK2\n", - " 21753182135\n", - " CME Cash Settled Cheese Electronic Commodity Future May 2022, Commodity Future, Chicago Mercantile Exchange\n", + " CME Cash Settled Cheese Electronic Commodity Future Dec 2022, Commodity Future, Chicago Mercantile Exchange\n", + " 21790857663\n", + " 485909287\n", + " CSCZ2\n", " \n", " \n", " 8\n", - " 444997903\n", " QUOTExCOMMODITY\n", - " CSCM2\n", - " 21757842054\n", - " CME Cash Settled Cheese Electronic Commodity Future Jun 2022, Commodity Future, Chicago Mercantile Exchange\n", + " CME Cash Settled Cheese Electronic Commodity Future Feb 2023, Commodity Future, Chicago Mercantile Exchange\n", + " 21801133645\n", + " 498573458\n", + " CSCG3\n", " \n", " \n", " 9\n", - " 451127563\n", " QUOTExCOMMODITY\n", - " CSCN2\n", - " 21762656526\n", - " CME Cash Settled Cheese Electronic Commodity Future Jul 2022, Commodity Future, Chicago Mercantile Exchange\n", + " CME Cash Settled Cheese Electronic Commodity Future Jun 2023, Commodity Future, Chicago Mercantile Exchange\n", + " 21819204534\n", + " 520638487\n", + " CSCM3\n", " \n", " \n", "\n", "" ], "text/plain": [ - " PI BusinessEntity RIC PermID \\\n", - "0 273610776 QUOTExCOMMODITY CSCc1 21622940491 \n", - "1 272623267 QUOTExCOMMODITY 0#CSC: 21622425217 \n", - "2 406809544 QUOTExCOMMODITY CSCZ1 21727643040 \n", - "3 413501786 QUOTExCOMMODITY CSCF2 21733097271 \n", - "4 419119906 QUOTExCOMMODITY CSCG2 21737604992 \n", - "5 427664132 QUOTExCOMMODITY CSCH2 21744350317 \n", - "6 432796175 QUOTExCOMMODITY CSCJ2 21748334445 \n", - "7 439042441 QUOTExCOMMODITY CSCK2 21753182135 \n", - "8 444997903 QUOTExCOMMODITY CSCM2 21757842054 \n", - "9 451127563 QUOTExCOMMODITY CSCN2 21762656526 \n", + " BusinessEntity \\\n", + "0 QUOTExCOMMODITY \n", + "1 QUOTExCOMMODITY \n", + "2 QUOTExCOMMODITY \n", + "3 QUOTExCOMMODITY \n", + "4 QUOTExCOMMODITY \n", + "5 QUOTExCOMMODITY \n", + "6 QUOTExCOMMODITY \n", + "7 QUOTExCOMMODITY \n", + "8 QUOTExCOMMODITY \n", + "9 QUOTExCOMMODITY \n", + "\n", + " DocumentTitle \\\n", + "0 CME Cash Settled Cheese Electronic Commodity Future Continuation 1, Commodity Future, Chicago Mercantile Exchange \n", + "1 Cash Settled Cheese Futures Chain Contracts, Commodity Future, Chicago Mercantile Exchange \n", + "2 CME Cash Settled Cheese Electronic Commodity Future Jun 2022, Commodity Future, Chicago Mercantile Exchange \n", + "3 CME Cash Settled Cheese Electronic Commodity Future Sep 2022, Commodity Future, Chicago Mercantile Exchange \n", + "4 CME Cash Settled Cheese Electronic Commodity Future Aug 2022, Commodity Future, Chicago Mercantile Exchange \n", + "5 CME Cash Settled Cheese Electronic Commodity Future Oct 2022, Commodity Future, Chicago Mercantile Exchange \n", + "6 CME Cash Settled Cheese Electronic Commodity Future Nov 2022, Commodity Future, Chicago Mercantile Exchange \n", + "7 CME Cash Settled Cheese Electronic Commodity Future Dec 2022, Commodity Future, Chicago Mercantile Exchange \n", + "8 CME Cash Settled Cheese Electronic Commodity Future Feb 2023, Commodity Future, Chicago Mercantile Exchange \n", + "9 CME Cash Settled Cheese Electronic Commodity Future Jun 2023, Commodity Future, Chicago Mercantile Exchange \n", "\n", - " DocumentTitle \n", - "0 CME Cash Settled Cheese Electronic Commodity Future Continuation 1, Commodity Future, Chicago Mercantile Exchange \n", - "1 Cash Settled Cheese Futures Chain Contracts, Commodity Future, Chicago Mercantile Exchange \n", - "2 CME Cash Settled Cheese Electronic Commodity Future Dec 2021, Commodity Future, Chicago Mercantile Exchange \n", - "3 CME Cash Settled Cheese Electronic Commodity Future Jan 2022, Commodity Future, Chicago Mercantile Exchange \n", - "4 CME Cash Settled Cheese Electronic Commodity Future Feb 2022, Commodity Future, Chicago Mercantile Exchange \n", - "5 CME Cash Settled Cheese Electronic Commodity Future Mar 2022, Commodity Future, Chicago Mercantile Exchange \n", - "6 CME Cash Settled Cheese Electronic Commodity Future Apr 2022, Commodity Future, Chicago Mercantile Exchange \n", - "7 CME Cash Settled Cheese Electronic Commodity Future May 2022, Commodity Future, Chicago Mercantile Exchange \n", - "8 CME Cash Settled Cheese Electronic Commodity Future Jun 2022, Commodity Future, Chicago Mercantile Exchange \n", - "9 CME Cash Settled Cheese Electronic Commodity Future Jul 2022, Commodity Future, Chicago Mercantile Exchange " + " PermID PI RIC \n", + "0 21622940491 273610776 CSCc1 \n", + "1 21622425217 272623267 0#CSC: \n", + "2 21757842054 444997903 CSCM2 \n", + "3 21772665846 463861357 CSCU2 \n", + "4 21767494118 457131738 CSCQ2 \n", + "5 21778821217 471517057 CSCV2 \n", + "6 21784277336 478150068 CSCX2 \n", + "7 21790857663 485909287 CSCZ2 \n", + "8 21801133645 498573458 CSCG3 \n", + "9 21819204534 520638487 CSCM3 " ] }, "execution_count": 10, @@ -1410,7 +1404,7 @@ ], "source": [ "response = search.Definition(\n", - " view=search.SearchViews.COMMODITY_QUOTES,\n", + " view=search.Views.COMMODITY_QUOTES,\n", " query=\"cheese\",\n", " navigators=\"ExchangeName\"\n", ").get_data()\n", @@ -1454,71 +1448,64 @@ }, { "cell_type": "code", - "execution_count": 12, + "execution_count": 11, "metadata": {}, "outputs": [ - { - "name": "stdout", - "output_type": "stream", - "text": [ - "https://api.refinitiv.com /discovery/search/v1/ None None\n" - ] - }, { "data": { "text/plain": [ - "{'Total': 8773167,\n", + "{'Total': 11496561,\n", " 'Hits': [],\n", " 'Navigators': {'Currency': {'Buckets': [{'Label': 'USD',\n", - " 'Count': 3549475,\n", + " 'Count': 3764582,\n", " 'max_CouponRate': 1800.0,\n", - " 'sum_FaceOutstandingUSD': 48419673275034.0},\n", + " 'sum_FaceOutstandingUSD': 49575897805915.78},\n", " {'Label': 'EUR',\n", - " 'Count': 1047715,\n", - " 'max_CouponRate': 850.0,\n", - " 'sum_FaceOutstandingUSD': 23247215066159.0},\n", + " 'Count': 1093977,\n", + " 'max_CouponRate': 500.0,\n", + " 'sum_FaceOutstandingUSD': 21535139401296.0},\n", " {'Label': 'CNY',\n", - " 'Count': 305736,\n", + " 'Count': 342836,\n", " 'max_CouponRate': 72.0,\n", - " 'sum_FaceOutstandingUSD': 19781229224099.0},\n", + " 'sum_FaceOutstandingUSD': 20038914754114.297},\n", " {'Label': 'JPY',\n", - " 'Count': 446734,\n", - " 'max_CouponRate': 500.0,\n", - " 'sum_FaceOutstandingUSD': 12914794611822.018},\n", + " 'Count': 471332,\n", + " 'max_CouponRate': 632.0,\n", + " 'sum_FaceOutstandingUSD': 10876142808654.016},\n", " {'Label': 'GBP',\n", - " 'Count': 187427,\n", + " 'Count': 200759,\n", " 'max_CouponRate': 120.0,\n", - " 'sum_FaceOutstandingUSD': 4637611321276.0},\n", - " {'Label': 'INR',\n", - " 'Count': 106804,\n", - " 'max_CouponRate': 42.75,\n", - " 'sum_FaceOutstandingUSD': 2606658058418.0},\n", + " 'sum_FaceOutstandingUSD': 4186214063303.0},\n", " {'Label': 'CAD',\n", - " 'Count': 303100,\n", + " 'Count': 321276,\n", " 'max_CouponRate': 100.0,\n", - " 'sum_FaceOutstandingUSD': 2538573430544.0},\n", + " 'sum_FaceOutstandingUSD': 2573804105645.0},\n", + " {'Label': 'INR',\n", + " 'Count': 112941,\n", + " 'max_CouponRate': 42.75,\n", + " 'sum_FaceOutstandingUSD': 2490981469686.0},\n", " {'Label': 'KRW',\n", - " 'Count': 384863,\n", + " 'Count': 400876,\n", " 'max_CouponRate': 46.41,\n", - " 'sum_FaceOutstandingUSD': 2319477171468.5967},\n", + " 'sum_FaceOutstandingUSD': 2138794661786.0},\n", " {'Label': 'AUD',\n", - " 'Count': 138121,\n", + " 'Count': 150030,\n", " 'max_CouponRate': 120.96,\n", - " 'sum_FaceOutstandingUSD': 1564185345284.4172},\n", + " 'sum_FaceOutstandingUSD': 1570564719634.6873},\n", " {'Label': 'BRL',\n", - " 'Count': 60691,\n", + " 'Count': 68850,\n", " 'max_CouponRate': 108.5,\n", - " 'sum_FaceOutstandingUSD': 840130327977.4407}]}}}" + " 'sum_FaceOutstandingUSD': 1388941915738.8413}]}}}" ] }, - "execution_count": 12, + "execution_count": 11, "metadata": {}, "output_type": "execute_result" } ], "source": [ "response = search.Definition(\n", - " view=search.SearchViews.GOV_CORP_INSTRUMENTS,\n", + " view=search.Views.GOV_CORP_INSTRUMENTS,\n", " top=0,\n", " navigators=\"Currency(buckets:10,desc:sum_FaceOutstandingUSD,calc:max_CouponRate)\"\n", ").get_data()\n", @@ -1535,41 +1522,34 @@ }, { "cell_type": "code", - "execution_count": 13, + "execution_count": 12, "metadata": {}, "outputs": [ - { - "name": "stdout", - "output_type": "stream", - "text": [ - "https://api.refinitiv.com /discovery/search/v1/ None None\n" - ] - }, { "data": { "text/plain": [ "[{'Label': 'John',\n", - " 'Count': 40513,\n", - " 'LastName': {'Buckets': [{'Label': 'Wilson', 'Count': 109},\n", - " {'Label': 'Lee', 'Count': 105}]}},\n", + " 'Count': 41501,\n", + " 'LastName': {'Buckets': [{'Label': 'Wilson', 'Count': 110},\n", + " {'Label': 'Lee', 'Count': 107}]}},\n", " {'Label': 'David',\n", - " 'Count': 39228,\n", - " 'LastName': {'Buckets': [{'Label': 'Smith', 'Count': 234},\n", - " {'Label': 'Williams', 'Count': 158}]}},\n", + " 'Count': 40476,\n", + " 'LastName': {'Buckets': [{'Label': 'Smith', 'Count': 239},\n", + " {'Label': 'Williams', 'Count': 164}]}},\n", " {'Label': 'Michael',\n", - " 'Count': 37674,\n", - " 'LastName': {'Buckets': [{'Label': 'Smith', 'Count': 179},\n", - " {'Label': 'Brown', 'Count': 122}]}}]" + " 'Count': 38963,\n", + " 'LastName': {'Buckets': [{'Label': 'Smith', 'Count': 186},\n", + " {'Label': 'Brown', 'Count': 126}]}}]" ] }, - "execution_count": 13, + "execution_count": 12, "metadata": {}, "output_type": "execute_result" } ], "source": [ "response = search.Definition(\n", - " view=search.SearchViews.PEOPLE,\n", + " view=search.Views.PEOPLE,\n", " top=0,\n", " navigators=\"FirstName(buckets:3,sub:LastName(buckets:2))\"\n", ").get_data()\n", @@ -1586,18 +1566,11 @@ }, { "cell_type": "code", - "execution_count": 14, + "execution_count": 13, "metadata": { "scrolled": true }, "outputs": [ - { - "name": "stdout", - "output_type": "stream", - "text": [ - "https://api.refinitiv.com /discovery/search/v1/ None None\n" - ] - }, { "data": { "text/html": [ @@ -1619,99 +1592,99 @@ " \n", " \n", " \n", - " DocumentTitle\n", " YearOfBirth\n", + " DocumentTitle\n", " \n", " \n", " \n", " \n", " 0\n", - " Shu Yao - Dongjiang Environmental Co Ltd - Ex-Chief Executive Officer, Executive Director\n", " 1996\n", + " Hiroyasu Saito - Gracia Inc - Chief Executive Officer, Representative Director\n", " \n", " \n", " 1\n", - " Connor Campbell - Osler Diagnostics Ltd - Chief Executive Officer, Co-Founder\n", - " 1994\n", + " 1996\n", + " Shu Yao - Dongjiang Environmental Co Ltd - Ex-Chief Executive Officer, Executive Director\n", " \n", " \n", " 2\n", - " Alberto Rizzoli - V7 Ltd - Chief Executive Officer\n", - " 1993\n", + " 1994\n", + " Connor Campbell - Osler Diagnostics Ltd - Chief Executive Officer, Co-Founder\n", " \n", " \n", " 3\n", - " Tongda Wu - Pi2Star Technology Ltd - Chief Executive Officer, Co-Founder\n", " 1993\n", + " Yiduitakuya Iwamoto - Polyuse Inc - Chief Executive Officer, Co-Founder, Representative Director\n", " \n", " \n", " 4\n", - " Ross Bailey - Appear Here Ltd - Chief Executive Officer, Founder\n", - " 1992\n", + " 1993\n", + " Alberto Rizzoli - V7 Ltd - Chief Executive Officer\n", " \n", " \n", " 5\n", - " Christian Besenbruch - Deep Render Ltd - Chief Executive Officer and Co-Founder\n", - " 1992\n", + " 1993\n", + " Tongda Wu - Paifang Technology Tianjin Co Ltd - Chief Executive Officer, Co-Founder\n", " \n", " \n", " 6\n", - " Ed Leon Klinger - Flock Ltd - Chief Executive Officer\n", " 1992\n", + " Ross Bailey - Appear Here Ltd - Chief Executive Officer, Founder\n", " \n", " \n", " 7\n", - " Snigdha Mothukuri - Jeevan Scientific Technology Ltd - Chief Executive Officer, Executive Director\n", " 1992\n", + " Christian Besenbruch - Deep Render Ltd - Chief Executive Officer and Co-Founder\n", " \n", " \n", " 8\n", - " Ivan Aleksandrovich Plekhanov - Territorial'naya Generiruyushchaya Kompaniya No2 PAO - Executive Director, Adviser to General Director (CEO)\n", " 1992\n", + " Ed Leon Klinger - Flock Ltd - Chief Executive Officer\n", " \n", " \n", " 9\n", - " Jack Tang - Urban Massage Ltd - Chief Executive Officer, Co-Founder\n", " 1992\n", + " Snigdha Mothukuri - Jeevan Scientific Technology Ltd - Chief Executive Officer, Executive Director\n", " \n", " \n", "\n", "" ], "text/plain": [ - " DocumentTitle \\\n", - "0 Shu Yao - Dongjiang Environmental Co Ltd - Ex-Chief Executive Officer, Executive Director \n", - "1 Connor Campbell - Osler Diagnostics Ltd - Chief Executive Officer, Co-Founder \n", - "2 Alberto Rizzoli - V7 Ltd - Chief Executive Officer \n", - "3 Tongda Wu - Pi2Star Technology Ltd - Chief Executive Officer, Co-Founder \n", - "4 Ross Bailey - Appear Here Ltd - Chief Executive Officer, Founder \n", - "5 Christian Besenbruch - Deep Render Ltd - Chief Executive Officer and Co-Founder \n", - "6 Ed Leon Klinger - Flock Ltd - Chief Executive Officer \n", - "7 Snigdha Mothukuri - Jeevan Scientific Technology Ltd - Chief Executive Officer, Executive Director \n", - "8 Ivan Aleksandrovich Plekhanov - Territorial'naya Generiruyushchaya Kompaniya No2 PAO - Executive Director, Adviser to General Director (CEO) \n", - "9 Jack Tang - Urban Massage Ltd - Chief Executive Officer, Co-Founder \n", + " YearOfBirth \\\n", + "0 1996 \n", + "1 1996 \n", + "2 1994 \n", + "3 1993 \n", + "4 1993 \n", + "5 1993 \n", + "6 1992 \n", + "7 1992 \n", + "8 1992 \n", + "9 1992 \n", "\n", - " YearOfBirth \n", - "0 1996 \n", - "1 1994 \n", - "2 1993 \n", - "3 1993 \n", - "4 1992 \n", - "5 1992 \n", - "6 1992 \n", - "7 1992 \n", - "8 1992 \n", - "9 1992 " + " DocumentTitle \n", + "0 Hiroyasu Saito - Gracia Inc - Chief Executive Officer, Representative Director \n", + "1 Shu Yao - Dongjiang Environmental Co Ltd - Ex-Chief Executive Officer, Executive Director \n", + "2 Connor Campbell - Osler Diagnostics Ltd - Chief Executive Officer, Co-Founder \n", + "3 Yiduitakuya Iwamoto - Polyuse Inc - Chief Executive Officer, Co-Founder, Representative Director \n", + "4 Alberto Rizzoli - V7 Ltd - Chief Executive Officer \n", + "5 Tongda Wu - Paifang Technology Tianjin Co Ltd - Chief Executive Officer, Co-Founder \n", + "6 Ross Bailey - Appear Here Ltd - Chief Executive Officer, Founder \n", + "7 Christian Besenbruch - Deep Render Ltd - Chief Executive Officer and Co-Founder \n", + "8 Ed Leon Klinger - Flock Ltd - Chief Executive Officer \n", + "9 Snigdha Mothukuri - Jeevan Scientific Technology Ltd - Chief Executive Officer, Executive Director " ] }, - "execution_count": 14, + "execution_count": 13, "metadata": {}, "output_type": "execute_result" } ], "source": [ "response = search.Definition(\n", - " view=search.SearchViews.PEOPLE,\n", + " view=search.Views.PEOPLE,\n", " query=\"ceo\",\n", " order_by=\"YearOfBirth desc,LastName,FirstName\",\n", " select=\"YearOfBirth,DocumentTitle\"\n", @@ -1729,16 +1702,9 @@ }, { "cell_type": "code", - "execution_count": 15, + "execution_count": 14, "metadata": {}, "outputs": [ - { - "name": "stdout", - "output_type": "stream", - "text": [ - "https://api.refinitiv.com /discovery/search/v1/ None None\n" - ] - }, { "data": { "text/html": [ @@ -1760,110 +1726,122 @@ " \n", " \n", " \n", - " RIC\n", " CentralBankName\n", " DocumentTitle\n", + " RIC\n", " \n", " \n", " \n", " \n", " 0\n", - " USFOMC=ECI\n", " Federal Reserve System\n", " United States, Policy Rates, Fed Funds Target Rate, Reuters Polls, Daily, The Federal Open Market Committee\n", + " USFOMC=ECI\n", " \n", " \n", " 1\n", - " USRRP=ECI\n", " Federal Reserve System\n", " United States, Policy Rates, Fed Overnight Repo, Reuters Polls, Daily, Federal Reserve, United States\n", + " USRRP=ECI\n", " \n", " \n", " 2\n", - " EUECBR=ECI\n", " European Central Bank\n", " Euro Zone, Policy Rates, ECB Main refinancing, Fixed Rate (Announcement Dates), Reuters Polls, Monthly, ECB - European Central Bank\n", + " EUECBR=ECI\n", " \n", " \n", " 3\n", - " EUECBD=ECI\n", " European Central Bank\n", " Euro Zone, Policy Rates, ECB Deposit Rate, Reuters Polls, Monthly, ECB - European Central Bank\n", + " EUECBD=ECI\n", " \n", " \n", " 4\n", - " CABOCR=ECI\n", - " Bank of Canada\n", - " Canada, Policy Rates, Overnight Target Rate, Reuters Polls, Daily, Bank of Canada\n", + " Sveriges Riksbank\n", + " Sweden, Policy Rates, Repo Rate (Effective Dates), Reuters Polls, Daily, Sveriges Riksbank\n", + " SERATE=ECI\n", " \n", " \n", " 5\n", - " pCABOCR=L\n", - " Bank of Canada\n", - " Canada, BoC Rate Decision-Low, Reuters Polls, Daily, Reuters\n", + " Sveriges Riksbank\n", + " Sweden, Riksbank Rate-Sest, Reuters Polls, Daily, StarMine\n", + " pSERATE=F\n", " \n", " \n", " 6\n", - " AUCBIR=ECI\n", - " Reserve Bank Of Australia\n", - " Australia, Policy Rates, Cash Target Rate, Reuters Polls, Monthly, Reserve Bank of Australia\n", + " Magyar Nemzeti Bank\n", + " Hungary, Policy Rates, Base Rate, Reuters Polls, Monthly, National Bank of Hungary\n", + " HUINT=ECI\n", " \n", " \n", " 7\n", - " pAUCBIR=M\n", - " Reserve Bank Of Australia\n", - " Australia, RBA Cash Rate-Median, Reuters Polls, Monthly, Reuters\n", + " Magyar Nemzeti Bank\n", + " Hungary, Policy Rates, Base Rate, Reuters Polls, Daily, National Bank of Hungary\n", + " HUOD2=ECI\n", " \n", " \n", " 8\n", - " BRCBMP=ECI\n", - " Banco Central do Brasil\n", - " Brazil, Policy Rates, SELIC Target Rate, Reuters Polls, Daily, Banco Central do Brasil\n", + " Central Bank of Colombia\n", + " Colombia, Policy Rates, Intervention Rate, Reuters Polls, Monthly, Banco de la Republica, Colombia\n", + " COCBIR=ECI\n", " \n", " \n", " 9\n", - " BRLRTE=ECI\n", - " Banco Central do Brasil\n", - " Brazil, Policy Rates, TJLP - Long Term Interest Rate (% p.y.), Reuters Polls, Quarterly, Banco Central do Brasil\n", + " Central Bank of Colombia\n", + " Colombia, Interest Rate-Median, Reuters Polls, Monthly, Reuters\n", + " pCOCBIR=M\n", " \n", " \n", "\n", "" ], "text/plain": [ - " RIC CentralBankName \\\n", - "0 USFOMC=ECI Federal Reserve System \n", - "1 USRRP=ECI Federal Reserve System \n", - "2 EUECBR=ECI European Central Bank \n", - "3 EUECBD=ECI European Central Bank \n", - "4 CABOCR=ECI Bank of Canada \n", - "5 pCABOCR=L Bank of Canada \n", - "6 AUCBIR=ECI Reserve Bank Of Australia \n", - "7 pAUCBIR=M Reserve Bank Of Australia \n", - "8 BRCBMP=ECI Banco Central do Brasil \n", - "9 BRLRTE=ECI Banco Central do Brasil \n", + " CentralBankName \\\n", + "0 Federal Reserve System \n", + "1 Federal Reserve System \n", + "2 European Central Bank \n", + "3 European Central Bank \n", + "4 Sveriges Riksbank \n", + "5 Sveriges Riksbank \n", + "6 Magyar Nemzeti Bank \n", + "7 Magyar Nemzeti Bank \n", + "8 Central Bank of Colombia \n", + "9 Central Bank of Colombia \n", + "\n", + " DocumentTitle \\\n", + "0 United States, Policy Rates, Fed Funds Target Rate, Reuters Polls, Daily, The Federal Open Market Committee \n", + "1 United States, Policy Rates, Fed Overnight Repo, Reuters Polls, Daily, Federal Reserve, United States \n", + "2 Euro Zone, Policy Rates, ECB Main refinancing, Fixed Rate (Announcement Dates), Reuters Polls, Monthly, ECB - European Central Bank \n", + "3 Euro Zone, Policy Rates, ECB Deposit Rate, Reuters Polls, Monthly, ECB - European Central Bank \n", + "4 Sweden, Policy Rates, Repo Rate (Effective Dates), Reuters Polls, Daily, Sveriges Riksbank \n", + "5 Sweden, Riksbank Rate-Sest, Reuters Polls, Daily, StarMine \n", + "6 Hungary, Policy Rates, Base Rate, Reuters Polls, Monthly, National Bank of Hungary \n", + "7 Hungary, Policy Rates, Base Rate, Reuters Polls, Daily, National Bank of Hungary \n", + "8 Colombia, Policy Rates, Intervention Rate, Reuters Polls, Monthly, Banco de la Republica, Colombia \n", + "9 Colombia, Interest Rate-Median, Reuters Polls, Monthly, Reuters \n", "\n", - " DocumentTitle \n", - "0 United States, Policy Rates, Fed Funds Target Rate, Reuters Polls, Daily, The Federal Open Market Committee \n", - "1 United States, Policy Rates, Fed Overnight Repo, Reuters Polls, Daily, Federal Reserve, United States \n", - "2 Euro Zone, Policy Rates, ECB Main refinancing, Fixed Rate (Announcement Dates), Reuters Polls, Monthly, ECB - European Central Bank \n", - "3 Euro Zone, Policy Rates, ECB Deposit Rate, Reuters Polls, Monthly, ECB - European Central Bank \n", - "4 Canada, Policy Rates, Overnight Target Rate, Reuters Polls, Daily, Bank of Canada \n", - "5 Canada, BoC Rate Decision-Low, Reuters Polls, Daily, Reuters \n", - "6 Australia, Policy Rates, Cash Target Rate, Reuters Polls, Monthly, Reserve Bank of Australia \n", - "7 Australia, RBA Cash Rate-Median, Reuters Polls, Monthly, Reuters \n", - "8 Brazil, Policy Rates, SELIC Target Rate, Reuters Polls, Daily, Banco Central do Brasil \n", - "9 Brazil, Policy Rates, TJLP - Long Term Interest Rate (% p.y.), Reuters Polls, Quarterly, Banco Central do Brasil " + " RIC \n", + "0 USFOMC=ECI \n", + "1 USRRP=ECI \n", + "2 EUECBR=ECI \n", + "3 EUECBD=ECI \n", + "4 SERATE=ECI \n", + "5 pSERATE=F \n", + "6 HUINT=ECI \n", + "7 HUOD2=ECI \n", + "8 COCBIR=ECI \n", + "9 pCOCBIR=M " ] }, - "execution_count": 15, + "execution_count": 14, "metadata": {}, "output_type": "execute_result" } ], "source": [ "response = search.Definition(\n", - " view=search.SearchViews.INDICATOR_QUOTES,\n", + " view=search.Views.INDICATOR_QUOTES,\n", " query=\"rate\",\n", " group_by=\"CentralBankName\",\n", " group_count=2,\n", @@ -1882,16 +1860,9 @@ }, { "cell_type": "code", - "execution_count": 16, + "execution_count": 15, "metadata": {}, "outputs": [ - { - "name": "stdout", - "output_type": "stream", - "text": [ - "https://api.refinitiv.com /discovery/search/v1/ None None\n" - ] - }, { "data": { "text/html": [ @@ -1913,114 +1884,126 @@ " \n", " \n", " \n", - " PI\n", " BusinessEntity\n", - " PermID\n", " DocumentTitle\n", + " PermID\n", + " PI\n", " \n", " \n", " \n", " \n", " 0\n", - " 34415553383\n", " PERSON\n", - " 34415553383\n", " Amy E. Hood - Microsoft Corp - Chief Financial Officer, Executive Vice President\n", + " 34415553383\n", + " 34415553383\n", " \n", " \n", " 1\n", - " 34414554748\n", " PERSON\n", - " 34414554748\n", " Luca Maestri - Apple Inc - Chief Financial Officer, Senior Vice President\n", + " 34414554748\n", + " 34414554748\n", " \n", " \n", " 2\n", - " 34417610894\n", " PERSON\n", - " 34417610894\n", " Brian T. Olsavsky - Amazon.com Inc - Chief Financial Officer, Senior Vice President\n", + " 34417610894\n", + " 34417610894\n", " \n", " \n", " 3\n", - " 34413960665\n", " PERSON\n", - " 34413960665\n", " Ruth M. Porat - Alphabet Inc - Chief Financial Officer, Senior Vice President\n", + " 34413960665\n", + " 34413960665\n", " \n", " \n", " 4\n", - " 34414804241\n", " PERSON\n", - " 34414804241\n", " David M. Wehner - Meta Platforms Inc - Chief Financial Officer\n", + " 34414804241\n", + " 34414804241\n", " \n", " \n", " 5\n", - " 34413152672\n", " PERSON\n", - " 34413152672\n", " Marc D. Hamburg - Berkshire Hathaway Inc - Chief Financial Officer, Senior Vice President\n", + " 34413152672\n", + " 34413152672\n", " \n", " \n", " 6\n", - " 34414966250\n", " PERSON\n", - " 34414966250\n", " Andrew K. Klatt - Berkshire Hathaway Inc - CFO & COO\n", + " 34414966250\n", + " 34414966250\n", " \n", " \n", " 7\n", - " 34414263702\n", " PERSON\n", - " 34414263702\n", - " Maggie Wu - Alibaba Group Holding Ltd - Chief Financial Officer, Director\n", + " Xu Hong - Alibaba Group Holding Ltd - Chief Financial Officer\n", + " 34425652371\n", + " 34425652371\n", " \n", " \n", " 8\n", - " 34414907131\n", " PERSON\n", - " 34414907131\n", " John Lo - Tencent Holdings Ltd - Chief Financial Officer, Senior Vice President\n", + " 34414907131\n", + " 34414907131\n", " \n", " \n", " 9\n", - " 34413340523\n", " PERSON\n", - " 34413340523\n", " Vasant M. Prabhu - Visa Inc - Vice Chairman of the Board, Chief Financial Officer\n", + " 34413340523\n", + " 34413340523\n", " \n", " \n", "\n", "" ], "text/plain": [ - " PI BusinessEntity PermID \\\n", - "0 34415553383 PERSON 34415553383 \n", - "1 34414554748 PERSON 34414554748 \n", - "2 34417610894 PERSON 34417610894 \n", - "3 34413960665 PERSON 34413960665 \n", - "4 34414804241 PERSON 34414804241 \n", - "5 34413152672 PERSON 34413152672 \n", - "6 34414966250 PERSON 34414966250 \n", - "7 34414263702 PERSON 34414263702 \n", - "8 34414907131 PERSON 34414907131 \n", - "9 34413340523 PERSON 34413340523 \n", + " BusinessEntity \\\n", + "0 PERSON \n", + "1 PERSON \n", + "2 PERSON \n", + "3 PERSON \n", + "4 PERSON \n", + "5 PERSON \n", + "6 PERSON \n", + "7 PERSON \n", + "8 PERSON \n", + "9 PERSON \n", + "\n", + " DocumentTitle \\\n", + "0 Amy E. Hood - Microsoft Corp - Chief Financial Officer, Executive Vice President \n", + "1 Luca Maestri - Apple Inc - Chief Financial Officer, Senior Vice President \n", + "2 Brian T. Olsavsky - Amazon.com Inc - Chief Financial Officer, Senior Vice President \n", + "3 Ruth M. Porat - Alphabet Inc - Chief Financial Officer, Senior Vice President \n", + "4 David M. Wehner - Meta Platforms Inc - Chief Financial Officer \n", + "5 Marc D. Hamburg - Berkshire Hathaway Inc - Chief Financial Officer, Senior Vice President \n", + "6 Andrew K. Klatt - Berkshire Hathaway Inc - CFO & COO \n", + "7 Xu Hong - Alibaba Group Holding Ltd - Chief Financial Officer \n", + "8 John Lo - Tencent Holdings Ltd - Chief Financial Officer, Senior Vice President \n", + "9 Vasant M. Prabhu - Visa Inc - Vice Chairman of the Board, Chief Financial Officer \n", "\n", - " DocumentTitle \n", - "0 Amy E. Hood - Microsoft Corp - Chief Financial Officer, Executive Vice President \n", - "1 Luca Maestri - Apple Inc - Chief Financial Officer, Senior Vice President \n", - "2 Brian T. Olsavsky - Amazon.com Inc - Chief Financial Officer, Senior Vice President \n", - "3 Ruth M. Porat - Alphabet Inc - Chief Financial Officer, Senior Vice President \n", - "4 David M. Wehner - Meta Platforms Inc - Chief Financial Officer \n", - "5 Marc D. Hamburg - Berkshire Hathaway Inc - Chief Financial Officer, Senior Vice President \n", - "6 Andrew K. Klatt - Berkshire Hathaway Inc - CFO & COO \n", - "7 Maggie Wu - Alibaba Group Holding Ltd - Chief Financial Officer, Director \n", - "8 John Lo - Tencent Holdings Ltd - Chief Financial Officer, Senior Vice President \n", - "9 Vasant M. Prabhu - Visa Inc - Vice Chairman of the Board, Chief Financial Officer " + " PermID PI \n", + "0 34415553383 34415553383 \n", + "1 34414554748 34414554748 \n", + "2 34417610894 34417610894 \n", + "3 34413960665 34413960665 \n", + "4 34414804241 34414804241 \n", + "5 34413152672 34413152672 \n", + "6 34414966250 34414966250 \n", + "7 34425652371 34425652371 \n", + "8 34414907131 34414907131 \n", + "9 34413340523 34413340523 " ] }, - "execution_count": 16, + "execution_count": 15, "metadata": {}, "output_type": "execute_result" } @@ -2028,7 +2011,7 @@ "source": [ "response = search.Definition(\n", " query=\"cfo\",\n", - " view=search.SearchViews.PEOPLE\n", + " view=search.Views.PEOPLE\n", ").get_data()\n", "\n", "response.data.df" @@ -2043,16 +2026,9 @@ }, { "cell_type": "code", - "execution_count": 17, + "execution_count": 16, "metadata": {}, "outputs": [ - { - "name": "stdout", - "output_type": "stream", - "text": [ - "https://api.refinitiv.com /discovery/search/v1/lookup None None\n" - ] - }, { "data": { "text/html": [ @@ -2074,79 +2050,79 @@ " \n", " \n", " \n", - " SEDOL\n", - " CUSIP\n", " BusinessEntity\n", " DocumentTitle\n", + " CUSIP\n", + " SEDOL\n", " \n", " \n", " \n", " \n", " MSFT.O\n", - " <NA>\n", - " 594918104\n", " INSTRUMENTxEQUITY\n", " Microsoft Corp, Ordinary Share\n", + " 594918104\n", + " <NA>\n", " \n", " \n", " AAPL.O\n", - " <NA>\n", - " 037833100\n", " INSTRUMENTxEQUITY\n", " Apple Inc, Ordinary Share\n", + " 037833100\n", + " <NA>\n", " \n", " \n", " GOOG.O\n", - " <NA>\n", - " 02079K107\n", " INSTRUMENTxEQUITY\n", " Alphabet Inc, Ordinary Share\n", + " 02079K107\n", + " <NA>\n", " \n", " \n", " KBANK.BK\n", - " 6888783\n", - " <NA>\n", " INSTRUMENTxEQUITY\n", " Kasikornbank PCL, Ordinary Share\n", + " <NA>\n", + " 6888783\n", " \n", " \n", " SCC.BK\n", - " 6609917\n", - " <NA>\n", " INSTRUMENTxEQUITY\n", " Siam Cement PCL, Ordinary Share\n", + " <NA>\n", + " 6609917\n", " \n", " \n", "\n", "" ], "text/plain": [ - " SEDOL CUSIP BusinessEntity \\\n", - "MSFT.O 594918104 INSTRUMENTxEQUITY \n", - "AAPL.O 037833100 INSTRUMENTxEQUITY \n", - "GOOG.O 02079K107 INSTRUMENTxEQUITY \n", - "KBANK.BK 6888783 INSTRUMENTxEQUITY \n", - "SCC.BK 6609917 INSTRUMENTxEQUITY \n", + " BusinessEntity DocumentTitle CUSIP \\\n", + "MSFT.O INSTRUMENTxEQUITY Microsoft Corp, Ordinary Share 594918104 \n", + "AAPL.O INSTRUMENTxEQUITY Apple Inc, Ordinary Share 037833100 \n", + "GOOG.O INSTRUMENTxEQUITY Alphabet Inc, Ordinary Share 02079K107 \n", + "KBANK.BK INSTRUMENTxEQUITY Kasikornbank PCL, Ordinary Share \n", + "SCC.BK INSTRUMENTxEQUITY Siam Cement PCL, Ordinary Share \n", "\n", - " DocumentTitle \n", - "MSFT.O Microsoft Corp, Ordinary Share \n", - "AAPL.O Apple Inc, Ordinary Share \n", - "GOOG.O Alphabet Inc, Ordinary Share \n", - "KBANK.BK Kasikornbank PCL, Ordinary Share \n", - "SCC.BK Siam Cement PCL, Ordinary Share " + " SEDOL \n", + "MSFT.O \n", + "AAPL.O \n", + "GOOG.O \n", + "KBANK.BK 6888783 \n", + "SCC.BK 6609917 " ] }, - "execution_count": 17, + "execution_count": 16, "metadata": {}, "output_type": "execute_result" } ], "source": [ "response = search.lookup.Definition(\n", - " view=search.SearchViews.INSTRUMENTS, # Required parameter\n", - " scope=\"RIC\", # Required parameter\n", - " terms=\"MSFT.O,AAPL.O,GOOG.O,IBM.N,KBANK.BK,SCC.BK\", # Required parameter\n", - " select=\"BusinessEntity,DocumentTitle,CUSIP,SEDOL\", # Required parameter\n", + " view=search.Views.INSTRUMENTS,\n", + " scope=\"RIC\",\n", + " terms=\"MSFT.O,AAPL.O,GOOG.O,IBM.N,KBANK.BK,SCC.BK\",\n", + " select=\"BusinessEntity,DocumentTitle,CUSIP,SEDOL\",\n", ").get_data()\n", "\n", "response.data.df" @@ -2154,18 +2130,11 @@ }, { "cell_type": "code", - "execution_count": 18, + "execution_count": 17, "metadata": { "scrolled": true }, "outputs": [ - { - "name": "stdout", - "output_type": "stream", - "text": [ - "https://api.refinitiv.com /discovery/search/v1/lookup None None\n" - ] - }, { "data": { "text/html": [ @@ -2224,17 +2193,17 @@ "D QUOTExEQUITY Dominion Energy Inc, Ordinary Share, NYSE Consolidated " ] }, - "execution_count": 18, + "execution_count": 17, "metadata": {}, "output_type": "execute_result" } ], "source": [ "response = search.lookup.Definition(\n", - " view=search.SearchViews.SEARCH_ALL, # Required parameter\n", - " scope=\"RIC\", # Required parameter\n", - " terms=\"A,B,NOSUCHRIC,C,D\", # Required parameter\n", - " select=\"BusinessEntity,DocumentTitle\", # Required parameter\n", + " view=search.Views.SEARCH_ALL,\n", + " scope=\"RIC\",\n", + " terms=\"A,B,NOSUCHRIC,C,D\",\n", + " select=\"BusinessEntity,DocumentTitle\",\n", ").get_data()\n", "\n", "response.data.df" @@ -2249,7 +2218,7 @@ }, { "cell_type": "code", - "execution_count": 19, + "execution_count": 18, "metadata": {}, "outputs": [], "source": [ @@ -2266,9 +2235,9 @@ ], "metadata": { "kernelspec": { - "display_name": "RevData39", + "display_name": "Python 3 (ipykernel)", "language": "python", - "name": "rd39" + "name": "python3" }, "language_info": { "codemirror_mode": { @@ -2280,7 +2249,7 @@ "name": "python", "nbconvert_exporter": "python", "pygments_lexer": "ipython3", - "version": "3.9.4" + "version": "3.9.7" } }, "nbformat": 4, diff --git a/Tutorials/3.Delivery/3.1-Streaming/TUT_3.1.01-OMMStream-MarketPrice.ipynb b/Tutorials/3.Delivery/3.1-Streaming/TUT_3.1.01-OMMStream-MarketPrice.ipynb index db4bf87..b964d30 100644 --- a/Tutorials/3.Delivery/3.1-Streaming/TUT_3.1.01-OMMStream-MarketPrice.ipynb +++ b/Tutorials/3.Delivery/3.1-Streaming/TUT_3.1.01-OMMStream-MarketPrice.ipynb @@ -81,7 +81,7 @@ { "data": { "text/plain": [ - "" + "" ] }, "execution_count": 3, @@ -130,7 +130,7 @@ { "data": { "text/plain": [ - "" + "" ] }, "execution_count": 5, @@ -144,14 +144,14 @@ " fields=['BID', 'ASK','OPEN_PRC','HST_CLOSE','TIMACT'], \n", " domain='MarketPrice').get_stream()\n", "\n", - "# Refresh - the first full imaage we get back from the server\n", - "stream.on_refresh(lambda stream, event : display_event(\"Refresh\", event))\n", + "# Refresh - the first full image we get back from the server\n", + "stream.on_refresh(lambda event, stream : display_event(\"Refresh\", event))\n", "# Update - as and when field values change, we receive updates from the server\n", - "stream.on_update(lambda stream, event : display_event(\"Update\", event))\n", + "stream.on_update(lambda event, stream : display_event(\"Update\", event))\n", "# Status - if data goes stale or item closes, we get a status message\n", - "stream.on_status(lambda stream, event : display_event(\"Status\", event))\n", + "stream.on_status(lambda event, stream : display_event(\"Status\", event))\n", "# Other errors\n", - "stream.on_error(lambda stream, event : display_event(\"Error\", event))" + "stream.on_error(lambda event, stream : display_event(\"Error\", event))" ] }, { @@ -176,30 +176,31 @@ "output_type": "stream", "text": [ "----------------------------------------------------------\n", - ">>> Refresh event received at 10:26:05.938979\n", + ">>> Refresh event received at 17:51:55.032083\n", "{\n", - " \"ID\": 1,\n", + " \"ID\": 5,\n", " \"Type\": \"Refresh\",\n", " \"Key\": {\n", - " \"Service\": \"ELEKTRON_DD\",\n", + " \"Service\": \"IDN_RDFNTS_CF\",\n", " \"Name\": \"EUR=\"\n", " },\n", " \"State\": {\n", " \"Stream\": \"Open\",\n", - " \"Data\": \"Ok\"\n", + " \"Data\": \"Ok\",\n", + " \"Text\": \"New Session Mounted\"\n", " },\n", " \"Qos\": {\n", " \"Timeliness\": \"Realtime\",\n", " \"Rate\": \"JitConflated\"\n", " },\n", - " \"PermData\": \"AwEBUmw=\",\n", - " \"SeqNumber\": 39550,\n", + " \"PermData\": \"AwD+Umw=\",\n", + " \"SeqNumber\": 9374,\n", " \"Fields\": {\n", - " \"TIMACT\": \"10:26:00\",\n", - " \"OPEN_PRC\": 1.1259,\n", - " \"HST_CLOSE\": 1.1257,\n", - " \"BID\": 1.127,\n", - " \"ASK\": 1.1273\n", + " \"BID\": 1.0585,\n", + " \"ASK\": 1.0589,\n", + " \"OPEN_PRC\": 1.0525,\n", + " \"HST_CLOSE\": 1.0525,\n", + " \"TIMACT\": \"15:51:00\"\n", " }\n", "}\n" ] @@ -207,7 +208,7 @@ { "data": { "text/plain": [ - "" + "" ] }, "execution_count": 6, @@ -219,111 +220,37 @@ "output_type": "stream", "text": [ "----------------------------------------------------------\n", - ">>> Update event received at 10:26:06.011530\n", + ">>> Update event received at 17:51:55.082900\n", "{\n", - " \"ID\": 1,\n", + " \"ID\": 5,\n", " \"Type\": \"Update\",\n", " \"UpdateType\": \"Unspecified\",\n", - " \"DoNotConflate\": true,\n", " \"Key\": {\n", - " \"Service\": \"ELEKTRON_DD\",\n", + " \"Service\": \"IDN_RDFNTS_CF\",\n", " \"Name\": \"EUR=\"\n", " },\n", - " \"SeqNumber\": 39566,\n", + " \"SeqNumber\": 9390,\n", " \"Fields\": {\n", - " \"BID\": 1.1272,\n", - " \"ASK\": 1.1275,\n", - " \"TIMACT\": \"10:26:00\"\n", + " \"BID\": 1.0585,\n", + " \"ASK\": 1.0589,\n", + " \"TIMACT\": \"15:51:00\"\n", " }\n", "}\n", "----------------------------------------------------------\n", - ">>> Update event received at 10:26:07.000999\n", + ">>> Update event received at 17:51:56.105043\n", "{\n", - " \"ID\": 1,\n", + " \"ID\": 5,\n", " \"Type\": \"Update\",\n", " \"UpdateType\": \"Unspecified\",\n", - " \"DoNotConflate\": true,\n", " \"Key\": {\n", - " \"Service\": \"ELEKTRON_DD\",\n", + " \"Service\": \"IDN_RDFNTS_CF\",\n", " \"Name\": \"EUR=\"\n", " },\n", - " \"SeqNumber\": 39630,\n", + " \"SeqNumber\": 9454,\n", " \"Fields\": {\n", - " \"BID\": 1.127,\n", - " \"ASK\": 1.1273,\n", - " \"TIMACT\": \"10:26:00\"\n", - " }\n", - "}\n", - "----------------------------------------------------------\n", - ">>> Update event received at 10:26:08.002936\n", - "{\n", - " \"ID\": 1,\n", - " \"Type\": \"Update\",\n", - " \"UpdateType\": \"Unspecified\",\n", - " \"DoNotConflate\": true,\n", - " \"Key\": {\n", - " \"Service\": \"ELEKTRON_DD\",\n", - " \"Name\": \"EUR=\"\n", - " },\n", - " \"SeqNumber\": 39694,\n", - " \"Fields\": {\n", - " \"BID\": 1.1272,\n", - " \"ASK\": 1.1275,\n", - " \"TIMACT\": \"10:26:00\"\n", - " }\n", - "}\n", - "----------------------------------------------------------\n", - ">>> Update event received at 10:26:08.991996\n", - "{\n", - " \"ID\": 1,\n", - " \"Type\": \"Update\",\n", - " \"UpdateType\": \"Unspecified\",\n", - " \"DoNotConflate\": true,\n", - " \"Key\": {\n", - " \"Service\": \"ELEKTRON_DD\",\n", - " \"Name\": \"EUR=\"\n", - " },\n", - " \"SeqNumber\": 39758,\n", - " \"Fields\": {\n", - " \"BID\": 1.127,\n", - " \"ASK\": 1.1273,\n", - " \"TIMACT\": \"10:26:00\"\n", - " }\n", - "}\n", - "----------------------------------------------------------\n", - ">>> Update event received at 10:26:09.652304\n", - "{\n", - " \"ID\": 1,\n", - " \"Type\": \"Update\",\n", - " \"UpdateType\": \"Unspecified\",\n", - " \"DoNotConflate\": true,\n", - " \"Key\": {\n", - " \"Service\": \"ELEKTRON_DD\",\n", - " \"Name\": \"EUR=\"\n", - " },\n", - " \"SeqNumber\": 39822,\n", - " \"Fields\": {\n", - " \"BID\": 1.127,\n", - " \"ASK\": 1.1273,\n", - " \"TIMACT\": \"10:26:00\"\n", - " }\n", - "}\n", - "----------------------------------------------------------\n", - ">>> Update event received at 10:26:10.001258\n", - "{\n", - " \"ID\": 1,\n", - " \"Type\": \"Update\",\n", - " \"UpdateType\": \"Unspecified\",\n", - " \"DoNotConflate\": true,\n", - " \"Key\": {\n", - " \"Service\": \"ELEKTRON_DD\",\n", - " \"Name\": \"EUR=\"\n", - " },\n", - " \"SeqNumber\": 39886,\n", - " \"Fields\": {\n", - " \"BID\": 1.1272,\n", - " \"ASK\": 1.1275,\n", - " \"TIMACT\": \"10:26:00\"\n", + " \"BID\": 1.0585,\n", + " \"ASK\": 1.0589,\n", + " \"TIMACT\": \"15:51:00\"\n", " }\n", "}\n" ] @@ -345,23 +272,12 @@ }, { "cell_type": "code", - "execution_count": 7, + "execution_count": null, "metadata": { "scrolled": true, "tags": [] }, - "outputs": [ - { - "data": { - "text/plain": [ - "" - ] - }, - "execution_count": 7, - "metadata": {}, - "output_type": "execute_result" - } - ], + "outputs": [], "source": [ "stream.close()" ] @@ -392,9 +308,9 @@ ], "metadata": { "kernelspec": { - "display_name": "RevData39", + "display_name": "Python 3 (ipykernel)", "language": "python", - "name": "rd39" + "name": "python3" }, "language_info": { "codemirror_mode": { @@ -406,7 +322,7 @@ "name": "python", "nbconvert_exporter": "python", "pygments_lexer": "ipython3", - "version": "3.9.4" + "version": "3.9.7" } }, "nbformat": 4, diff --git a/Tutorials/3.Delivery/3.1-Streaming/TUT_3.1.02-OMMStream-MarketByPrice.ipynb b/Tutorials/3.Delivery/3.1-Streaming/TUT_3.1.02-OMMStream-MarketByPrice.ipynb index 05e9eb5..57ab8aa 100644 --- a/Tutorials/3.Delivery/3.1-Streaming/TUT_3.1.02-OMMStream-MarketByPrice.ipynb +++ b/Tutorials/3.Delivery/3.1-Streaming/TUT_3.1.02-OMMStream-MarketByPrice.ipynb @@ -150,13 +150,13 @@ "stream = omm_stream.Definition(name=\"VOD.L\", domain='MarketByPrice').get_stream()\n", "\n", "# Refresh - the first full imaage we get back from the server\n", - "stream.on_refresh(lambda stream, event : display_event(\"Refresh\", event))\n", + "stream.on_refresh(lambda event, stream : display_event(\"Refresh\", event))\n", "# Update - as and when field values change, we receive updates from the server\n", - "stream.on_update(lambda stream, event : display_event(\"Update\", event))\n", + "stream.on_update(lambda event, stream : display_event(\"Update\", event))\n", "# Status - if data goes stale or item closes, we get a status message\n", - "stream.on_status(lambda stream, event : display_event(\"Status\", event))\n", + "stream.on_status(lambda event, stream : display_event(\"Status\", event))\n", "# Other errors\n", - "stream.on_error(lambda stream, event : display_event(\"Error\", event))" + "stream.on_error(lambda event, stream : display_event(\"Error\", event))" ] }, { @@ -1058,9 +1058,9 @@ ], "metadata": { "kernelspec": { - "display_name": "RevData39", + "display_name": "Python 3 (ipykernel)", "language": "python", - "name": "rd39" + "name": "python3" }, "language_info": { "codemirror_mode": { @@ -1072,7 +1072,7 @@ "name": "python", "nbconvert_exporter": "python", "pygments_lexer": "ipython3", - "version": "3.9.4" + "version": "3.9.7" } }, "nbformat": 4, diff --git a/Tutorials/3.Delivery/3.2-Endpoint/TUT_3.2.01-EndPoint-Overview.ipynb b/Tutorials/3.Delivery/3.2-Endpoint/TUT_3.2.01-EndPoint-Overview.ipynb index 9723e00..2f6536b 100644 --- a/Tutorials/3.Delivery/3.2-Endpoint/TUT_3.2.01-EndPoint-Overview.ipynb +++ b/Tutorials/3.Delivery/3.2-Endpoint/TUT_3.2.01-EndPoint-Overview.ipynb @@ -1685,8 +1685,8 @@ ")\n", "\n", "# Wait for all tasks to be completed\n", - "asyncio.get_event_loop().run_until_complete(tasks)\n", - "ibm,bt = tasks._result" + "await tasks\n", + "ibm,bt = tasks.result()" ] }, { @@ -2078,9 +2078,9 @@ ], "metadata": { "kernelspec": { - "display_name": "RevData39", + "display_name": "Python 3 (ipykernel)", "language": "python", - "name": "rd39" + "name": "python3" }, "language_info": { "codemirror_mode": { @@ -2092,7 +2092,7 @@ "name": "python", "nbconvert_exporter": "python", "pygments_lexer": "ipython3", - "version": "3.9.4" + "version": "3.9.7" } }, "nbformat": 4, diff --git a/Tutorials/3.Delivery/3.2-Endpoint/TUT_3.2.03-EndPoint-IPA-FinancialContracts.ipynb b/Tutorials/3.Delivery/3.2-Endpoint/TUT_3.2.03-EndPoint-IPA-FinancialContracts.ipynb index 5051fd4..7fe97e6 100644 --- a/Tutorials/3.Delivery/3.2-Endpoint/TUT_3.2.03-EndPoint-IPA-FinancialContracts.ipynb +++ b/Tutorials/3.Delivery/3.2-Endpoint/TUT_3.2.03-EndPoint-IPA-FinancialContracts.ipynb @@ -101,7 +101,7 @@ "outputs": [], "source": [ "request_definition = rd.delivery.endpoint_request.Definition(\n", - " url = \"/data/quantitative-analytics/beta1/financial-contracts\",\n", + " url = \"/data/quantitative-analytics/v1/financial-contracts\",\n", " method = rd.delivery.endpoint_request.RequestMethod.POST,\n", " body_parameters = {\n", " \"fields\": [\n", @@ -284,9 +284,9 @@ ], "metadata": { "kernelspec": { - "display_name": "RevData39", + "display_name": "Python 3 (ipykernel)", "language": "python", - "name": "rd39" + "name": "python3" }, "language_info": { "codemirror_mode": { @@ -298,7 +298,7 @@ "name": "python", "nbconvert_exporter": "python", "pygments_lexer": "ipython3", - "version": "3.9.4" + "version": "3.9.7" } }, "nbformat": 4,