{"id":16388,"date":"2021-10-12T02:30:46","date_gmt":"2021-10-11T18:30:46","guid":{"rendered":"https:\/\/www.tejwin.com\/?post_type=insight&#038;p=16388"},"modified":"2026-03-03T13:24:44","modified_gmt":"2026-03-03T05:24:44","slug":"stocks-selection-by-esg-factors","status":"publish","type":"insight","link":"https:\/\/www.tejwin.com\/en\/insight\/stocks-selection-by-esg-factors\/","title":{"rendered":"Stocks Selection by ESG Factors"},"content":{"rendered":"\n<p>Observe the relation between employee turnover rate and stocks return<\/p>\n\n\n\n<figure class=\"wp-block-image aligncenter caption-align-center\"><img decoding=\"async\" src=\"https:\/\/www.tejwin.com\/wp-content\/uploads\/0u_bgUZCfDmPQIf25.jpg\" alt=\"\"\/><figcaption class=\"wp-element-caption\">Photo by&nbsp;<a href=\"https:\/\/unsplash.com\/@wocintechchat?utm_source=medium&amp;utm_medium=referral\" rel=\"noreferrer noopener\" target=\"_blank\">Christina @ wocintechchat.com<\/a>&nbsp;on&nbsp;<a href=\"https:\/\/unsplash.com\/?utm_source=medium&amp;utm_medium=referral\" rel=\"noreferrer noopener\" target=\"_blank\">Unsplash<\/a><\/figcaption><\/figure>\n\n\n\n<div id=\"ez-toc-container\" class=\"ez-toc-v2_0_81 counter-hierarchy ez-toc-counter ez-toc-grey ez-toc-container-direction\">\n<p class=\"ez-toc-title\" style=\"cursor:inherit\">Table of Contents<\/p>\n<label for=\"ez-toc-cssicon-toggle-item-69f2bdcca3b24\" class=\"ez-toc-cssicon-toggle-label\"><span class=\"ez-toc-cssicon\"><span class=\"eztoc-hide\" style=\"display:none;\">Toggle<\/span><span class=\"ez-toc-icon-toggle-span\"><svg style=\"fill: #999;color:#999\" xmlns=\"http:\/\/www.w3.org\/2000\/svg\" class=\"list-377408\" width=\"20px\" height=\"20px\" viewBox=\"0 0 24 24\" fill=\"none\"><path d=\"M6 6H4v2h2V6zm14 0H8v2h12V6zM4 11h2v2H4v-2zm16 0H8v2h12v-2zM4 16h2v2H4v-2zm16 0H8v2h12v-2z\" fill=\"currentColor\"><\/path><\/svg><svg style=\"fill: #999;color:#999\" class=\"arrow-unsorted-368013\" xmlns=\"http:\/\/www.w3.org\/2000\/svg\" width=\"10px\" height=\"10px\" viewBox=\"0 0 24 24\" version=\"1.2\" baseProfile=\"tiny\"><path d=\"M18.2 9.3l-6.2-6.3-6.2 6.3c-.2.2-.3.4-.3.7s.1.5.3.7c.2.2.4.3.7.3h11c.3 0 .5-.1.7-.3.2-.2.3-.5.3-.7s-.1-.5-.3-.7zM5.8 14.7l6.2 6.3 6.2-6.3c.2-.2.3-.5.3-.7s-.1-.5-.3-.7c-.2-.2-.4-.3-.7-.3h-11c-.3 0-.5.1-.7.3-.2.2-.3.5-.3.7s.1.5.3.7z\"\/><\/svg><\/span><\/span><\/label><input type=\"checkbox\"  id=\"ez-toc-cssicon-toggle-item-69f2bdcca3b24\"  aria-label=\"Toggle\" \/><nav><ul class='ez-toc-list ez-toc-list-level-1 ' ><li class='ez-toc-page-1 ez-toc-heading-level-2'><a class=\"ez-toc-link ez-toc-heading-1\" href=\"https:\/\/www.tejwin.com\/en\/insight\/stocks-selection-by-esg-factors\/#Highlights\" >Highlights<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-2'><a class=\"ez-toc-link ez-toc-heading-2\" href=\"https:\/\/www.tejwin.com\/en\/insight\/stocks-selection-by-esg-factors\/#Preface\" >Preface<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-2'><a class=\"ez-toc-link ez-toc-heading-3\" href=\"https:\/\/www.tejwin.com\/en\/insight\/stocks-selection-by-esg-factors\/#The_Editing_Environment_and_Modules_Required\" >The Editing Environment and Modules Required<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-2'><a class=\"ez-toc-link ez-toc-heading-4\" href=\"https:\/\/www.tejwin.com\/en\/insight\/stocks-selection-by-esg-factors\/#Database_Used\" >Database Used<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-2'><a class=\"ez-toc-link ez-toc-heading-5\" href=\"https:\/\/www.tejwin.com\/en\/insight\/stocks-selection-by-esg-factors\/#Data_Processing\" >Data Processing<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-2'><a class=\"ez-toc-link ez-toc-heading-6\" href=\"https:\/\/www.tejwin.com\/en\/insight\/stocks-selection-by-esg-factors\/#Portfolio_Formation\" >Portfolio Formation<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-2'><a class=\"ez-toc-link ez-toc-heading-7\" href=\"https:\/\/www.tejwin.com\/en\/insight\/stocks-selection-by-esg-factors\/#Visualization_see_details_in_source_code\" >Visualization (see details in source code)<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-2'><a class=\"ez-toc-link ez-toc-heading-8\" href=\"https:\/\/www.tejwin.com\/en\/insight\/stocks-selection-by-esg-factors\/#Conclusion\" >Conclusion<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-2'><a class=\"ez-toc-link ez-toc-heading-9\" href=\"https:\/\/www.tejwin.com\/en\/insight\/stocks-selection-by-esg-factors\/#Source_Code\" >Source Code<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-2'><a class=\"ez-toc-link ez-toc-heading-10\" href=\"https:\/\/www.tejwin.com\/en\/insight\/stocks-selection-by-esg-factors\/#Extended_Reading\" >Extended Reading<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-2'><a class=\"ez-toc-link ez-toc-heading-11\" href=\"https:\/\/www.tejwin.com\/en\/insight\/stocks-selection-by-esg-factors\/#Related_Link\" >Related Link<\/a><\/li><\/ul><\/nav><\/div>\n<h2 class=\"wp-block-heading\" id=\"443d\"><span class=\"ez-toc-section\" id=\"Highlights\"><\/span><strong>Highlights<\/strong><span class=\"ez-toc-section-end\"><\/span><\/h2>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Difficulty\uff1a\u2605\u2605\u2605\u2606\u2606<\/li>\n\n\n\n<li>Check whether ESG factor can bring abnormal return<\/li>\n\n\n\n<li>Advice: This article aims to discuss the connection between firm performance and employee turnover rate, which is one of indictors of corporate governance. Thus, this article offers readers the framework to examine the feasibility of ESG investing. If readers are interested in detailed stock selection and backtesting procedure, the video&nbsp;<a href=\"https:\/\/www.youtube.com\/watch?v=5fdHLDUHzuk\" rel=\"noreferrer noopener\" target=\"_blank\">TEJ ESG multi-factors stock selection<\/a>&nbsp;is highly recommended and find more profitable factors yourselves.<\/li>\n<\/ul>\n\n\n\n<h2 class=\"wp-block-heading\" id=\"e290\"><span class=\"ez-toc-section\" id=\"Preface\"><\/span><strong>Preface<\/strong><span class=\"ez-toc-section-end\"><\/span><\/h2>\n\n\n\n<p id=\"a885\">In recent years, there\u2019s an investment called ESG investing, meaning when investing, the firm\u2019s financial performance is not the only thing to be considered. Instead, its influence over environment and society and its corporate governance should be stressed as well. There are no trade-off relations between each other, but a virtuous cycle that promises the future prospect of the firm, bringing tremendous wealth for the investors.<\/p>\n\n\n\n<p id=\"9718\">Factor investing is intended to find some key factors that will help earn excessive return. For example, according to the literature, size factor, book to market factor and risk factor are common factors in this regard. Therefore, this week we use \u201cemployee turnover rate\u201d provided by TEJ database as our factor, and see how ESG investing works !<\/p>\n\n\n\n<h2 class=\"wp-block-heading\" id=\"7251\"><span class=\"ez-toc-section\" id=\"The_Editing_Environment_and_Modules_Required\"><\/span><strong>The Editing Environment and Modules Required<\/strong><span class=\"ez-toc-section-end\"><\/span><\/h2>\n\n\n\n<p id=\"13b7\">Windows OS and Jupyter Notebook<\/p>\n\n\n\n<pre class=\"wp-block-preformatted\">#Basic<br>import pandas as pd<br>import numpy as np<br>import plotly.express as px<br>import plotly.graph_objects as go<br>#TEJ<br>import tejapi<br>tejapi.ApiConfig.api_key = 'Your Key'<br>tejapi.ApiConfig.ignoretz = True<\/pre>\n\n\n\n<h2 class=\"wp-block-heading\" id=\"723e\"><span class=\"ez-toc-section\" id=\"Database_Used\"><\/span><strong>Database Used<\/strong><span class=\"ez-toc-section-end\"><\/span><\/h2>\n\n\n\n<ul class=\"wp-block-list\">\n<li><a href=\"https:\/\/api.tej.com.tw\/columns.html?idCode=TWN%2FACSR01A\" rel=\"noreferrer noopener\" target=\"_blank\">Employee turnover<\/a>: the code of the database is \u2018TWN\/ACSR01A\u2019, detailing employee-related information since 2008<\/li>\n\n\n\n<li><a href=\"https:\/\/api.tej.com.tw\/columns.html?idCode=TWN%2FAPRCD2\" rel=\"noreferrer noopener\" target=\"_blank\">Daily return of listed firms<\/a>: the code of the database is \u2018TWN\/APRCD2\u2019, covering stock return data<\/li>\n<\/ul>\n\n\n\n<h2 class=\"wp-block-heading\" id=\"8f66\"><span class=\"ez-toc-section\" id=\"Data_Processing\"><\/span><strong>Data Processing<\/strong><span class=\"ez-toc-section-end\"><\/span><\/h2>\n\n\n\n<h4 class=\"wp-block-heading\" id=\"abc1\"><strong>Step 1.\u00a0Obtain employee turnover rate<\/strong><\/h4>\n\n\n\n<pre class=\"wp-block-preformatted\">turnover = tejapi.get('TWN\/ACSR01A',<br>        paginate = True,<br>        opts = {'columns':['coid','mdate','turn_rate','num_staff']},<br>        chinese_column_name = True)<\/pre>\n\n\n\n<figure class=\"wp-block-image aligncenter\"><img decoding=\"async\" src=\"https:\/\/www.tejwin.com\/wp-content\/uploads\/02-wVZpwR-CIxtF2k.png\" alt=\"\"\/><\/figure>\n\n\n\n<h4 class=\"wp-block-heading\" id=\"31f2\"><strong>Step 2.\u00a0Remove the missing value data<\/strong><\/h4>\n\n\n\n<pre class=\"wp-block-preformatted\">turnover = turnover[turnover['\u54e1\u5de5\u6d41\u52d5\u7387(%)'].isnull() == False]<\/pre>\n\n\n\n<figure class=\"wp-block-image aligncenter\"><img decoding=\"async\" src=\"https:\/\/www.tejwin.com\/wp-content\/uploads\/0nUxeJqfz67P3Xjyu.png\" alt=\"\"\/><\/figure>\n\n\n\n<h2 class=\"wp-block-heading\" id=\"6b48\"><span class=\"ez-toc-section\" id=\"Portfolio_Formation\"><\/span><strong>Portfolio Formation<\/strong><span class=\"ez-toc-section-end\"><\/span><\/h2>\n\n\n\n<h4 class=\"wp-block-heading\" id=\"f290\"><strong>Step 1.\u00a0Create an empty dataframe to store the outcome<\/strong><\/h4>\n\n\n\n<pre class=\"wp-block-preformatted\">result = pd.DataFrame()<br>ret_table = pd.DataFrame()<\/pre>\n\n\n\n<p id=\"8008\">Since the employee turnover rate is disclosed in annual report, to avoid look-ahead bias, we take the deadline of disclosing annual report as our portfolio formation date, which is the end of next year\u2019s March and we will hold the portfolio for one year. However, based on the approach, the portfolio built on 2020 information will be held between 2021\u201303\u201331 and 2022\u201303\u201331, which currently has no complete one-year-return. Thus, we will exclude this year.<\/p>\n\n\n\n<pre class=\"wp-block-preformatted\">date_list = sorted(turnover['\u5e74\u5ea6'].unique())[:-1]<\/pre>\n\n\n\n<figure class=\"wp-block-image aligncenter\"><img decoding=\"async\" src=\"https:\/\/www.tejwin.com\/wp-content\/uploads\/0jkCCKhVTCA2uAz6F.png\" alt=\"\"\/><\/figure>\n\n\n\n<h4 class=\"wp-block-heading\" id=\"805e\"><strong>Step 2.\u00a0For each year, Create 10 portfolios based on the magnitude of employee turnover rate and calculate the annual return of them<\/strong><\/h4>\n\n\n\n<p id=\"b530\">Next, we use loop to calculate the return of each year\u2019s portfolios. We will use the first year (date = \u20182008\u201301\u201301\u2019) to demonstrate how each loop works in detail. The complete code can be viewed in source code section<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Divide the sample into 10 groups based on turnover rate<\/li>\n<\/ul>\n\n\n\n<pre class=\"wp-block-preformatted\">#Choose this year's data<br>data = turnover[turnover['\u5e74\u5ea6'] == date].reset_index(drop=True)#Remove the firm with few employees<br>data = data[data['\u54e1\u5de5\u4eba\u6578'] &gt;= data['\u54e1\u5de5\u4eba\u6578'].quantile(0.1)]#Grouping<br>data['group'] = pd.qcut(data['\u54e1\u5de5\u6d41\u52d5\u7387(%)'], q=10,labels = [i for i in range(1,11)])#Store<br>result = result.append(data)<\/pre>\n\n\n\n<p id=\"8f42\">First of all, choose that year\u2019s data and remove the firm with few employees (less than 10th quantile). Then, use the function&nbsp;<code>pd.qcut()<\/code>&nbsp;to form 10 groups by turnover rate and show the group number in new column&nbsp;<code>group<\/code>. Finally, store it in&nbsp;<code>result<\/code><\/p>\n\n\n\n<figure class=\"wp-block-image aligncenter\"><img decoding=\"async\" src=\"https:\/\/www.tejwin.com\/wp-content\/uploads\/0eueqkMMhdH50x-XR.png\" alt=\"\"\/><\/figure>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Calculate the return<\/li>\n<\/ul>\n\n\n\n<pre class=\"wp-block-preformatted\">#Sell date of portfolios <br>sell_date = date + pd.Timedelta(days = 365 + 90 + 365)<br>    <br>#to store data and portfolio return <br>port_ret = [date]<\/pre>\n\n\n\n<p id=\"e52a\">2008-based portfolios will be sold in 2020\u201303\u201331. The date (2008\u201301\u201301) and these 10 portfolios\u2019 return will be stored in list&nbsp;<code>port_ret<\/code><\/p>\n\n\n\n<pre class=\"wp-block-preformatted\">#Calculate this year's portfolios' return<br>for group in range(1,11):<br>        <br>      #this year, certain group<br>      sub_data = data[data['group'] == group].reset_index(drop=True)<br>    <br>      #Obtain return<br>      ret = tejapi.get('TWN\/APRCD2',<br>                   coid = sub_data['\u516c\u53f8\u78bc'].tolist(),<br>                   mdate = {'gte':sell_date - pd.Timedelta(days = 5), 'lte':sell_date},<br>                   opts = {'columns':['coid','mdate', 'roi_y']},<br>                   paginate = True,<br>                   chinese_column_name = True)<br>        <br>       #Get the data closest to sell date<br>       ret = ret.groupby(by='\u8b49\u5238\u4ee3\u78bc').last().reset_index()<br>    <br>       #Portfolio return(%)<br>       port_ret.append(ret['\u5e74\u5831\u916c\u7387 %'].mean())<br>#Table<br>ret_table =  ret_table.append(pd.DataFrame(data = np.array(port_ret).reshape((1,11)), columns = ['\u65e5\u671f'] + [i for i in range(1,11)])).reset_index(drop=True)<\/pre>\n\n\n\n<p id=\"c8f2\">Next, we use&nbsp;<code>for loop&nbsp;<\/code>to go through each group. For starters, we choose the group\u2019s data and obtain annual return based on the firms\u2019 codes and sell date. The tip here is we first select the several days\u2019 return before the sell date, and get the return that\u2019s closest to sell date, which is the annual return over the past one year. Lastly, we take average and get equally-weighted return. After calculating all groups\u2019 return, we will store them in list&nbsp;<code>port_ret<\/code>, transform it to a dataframe and store in&nbsp;<code>ret_table<\/code><\/p>\n\n\n\n<figure class=\"wp-block-image aligncenter\"><img decoding=\"async\" src=\"https:\/\/www.tejwin.com\/wp-content\/uploads\/0wYTPTekRiqvzK8Ee.png\" alt=\"\"\/><\/figure>\n\n\n\n<p id=\"4742\">Other years follow the same procedure. Through each loop,&nbsp;<code>result&nbsp;<\/code>and&nbsp;<code>ret_table&nbsp;<\/code>are updated as follows<\/p>\n\n\n\n<figure class=\"wp-block-image aligncenter\"><img decoding=\"async\" src=\"https:\/\/www.tejwin.com\/wp-content\/uploads\/0xwbyxouzznCbUswH.png\" alt=\"\"\/><\/figure>\n\n\n\n<h2 class=\"wp-block-heading\" id=\"4914\"><span class=\"ez-toc-section\" id=\"Visualization_see_details_in_source_code\"><\/span><strong>Visualization (see details in source code)<\/strong><span class=\"ez-toc-section-end\"><\/span><\/h2>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Each group\u2019s average turnover rate(%)<\/li>\n<\/ul>\n\n\n\n<figure class=\"wp-block-image aligncenter\"><img decoding=\"async\" src=\"https:\/\/www.tejwin.com\/wp-content\/uploads\/0h-csgDRg9ex5_XR2.png\" alt=\"\"\/><\/figure>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Portfolios performance for every year<\/li>\n<\/ul>\n\n\n\n<figure class=\"wp-block-image aligncenter\"><img decoding=\"async\" src=\"https:\/\/www.tejwin.com\/wp-content\/uploads\/0zRVlT2zi9OOSc2Zw.gif\" alt=\"\"\/><\/figure>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Cumulative return<\/li>\n<\/ul>\n\n\n\n<pre class=\"wp-block-preformatted\">cum_ret = ret_table[[i for i in range(1,11)]].apply(lambda x : (x*0.01 + 1)).cumprod()<br>cum_ret.insert(0, '\u65e5\u671f', date_list)<\/pre>\n\n\n\n<p id=\"2f43\">Calculate cumulative return for these ten portfolios and insert the date back<\/p>\n\n\n\n<figure class=\"wp-block-image aligncenter\"><img decoding=\"async\" src=\"https:\/\/www.tejwin.com\/wp-content\/uploads\/0iA_Wwg-ovOcV0WmV.png\" alt=\"\"\/><\/figure>\n\n\n\n<figure class=\"wp-block-image aligncenter\"><img decoding=\"async\" src=\"https:\/\/www.tejwin.com\/wp-content\/uploads\/0JHuJ6e7hBzDv-qhL.gif\" alt=\"\"\/><\/figure>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Sharpe ratio (assume risk-free rate is 1%)<\/li>\n<\/ul>\n\n\n\n<pre class=\"wp-block-preformatted\">sharpe_list = []<br>for i in range(1,11):<br>    <br>    #Annual return<br>    cagr = (cum_ret[i].values[-1]**(1\/len(cum_ret)) - 1)*100<br>    <br>    #Annual standard deviation<br>    std = ret_table[i].std()<br>    <br>    #Update list<br>    sharpe_list.append(i)<br>    sharpe_list.append((cagr-1)\/std)#Form a table<br>sharpe = pd.DataFrame(np.array(sharpe_list).reshape((10,2)), columns = [\"group\",\"\u590f\u666e\u6bd4\u7387(%)\"])<\/pre>\n\n\n\n<p id=\"5438\">Calculate the sharpe ratio first, then visualize it<\/p>\n\n\n\n<figure class=\"wp-block-image aligncenter\"><img decoding=\"async\" src=\"https:\/\/www.tejwin.com\/wp-content\/uploads\/0CFzoHBzvKFWOOpjH.png\" alt=\"\"\/><\/figure>\n\n\n\n<figure class=\"wp-block-image aligncenter\"><img decoding=\"async\" src=\"https:\/\/www.tejwin.com\/wp-content\/uploads\/0RP0f1ZEfQDYuASQz.png\" alt=\"\"\/><\/figure>\n\n\n\n<h2 class=\"wp-block-heading\" id=\"51d7\"><span class=\"ez-toc-section\" id=\"Conclusion\"><\/span><strong>Conclusion<\/strong><span class=\"ez-toc-section-end\"><\/span><\/h2>\n\n\n\n<p id=\"0091\">From the cumulative chart and sharpe ratio, it\u2019s shown that the 10th group&nbsp;<strong>(the highest turnover rate\u2019s group) has the worst performance<\/strong>, even though it has good performance in certain years. However, it doesn\u2019t necessarily mean the lowest turnover rate is the best. For example, from cumulative chart we know it\u2019s 7th group that is the best instead of the 1st group. Probably, it implies maintaining a certain degree of employee turnover rate can make firms more competitive and energetic<\/p>\n\n\n\n<p id=\"362d\">Overall, in the bear market, the firms with higher turnover rate tend to loss more, meaning ESG investing may provide downside risk protection. If readers are interested in other ESG factors, welcome to&nbsp;<a href=\"https:\/\/eshop.tej.com.tw\/E-Shop\/Edata_caseIntro\/3\" rel=\"noreferrer noopener\" target=\"_blank\">TEJ E-Shop<\/a>&nbsp;to choose the optimal plan and find out more profitable factors !<\/p>\n\n\n\n<h2 class=\"wp-block-heading\" id=\"7419\"><span class=\"ez-toc-section\" id=\"Source_Code\"><\/span><strong>Source Code<\/strong><span class=\"ez-toc-section-end\"><\/span><\/h2>\n\n\n\n<ul class=\"wp-block-list\">\n<li><a href=\"https:\/\/gist.github.com\/tej87681088\/b6191cbe455ba29527fb21b5b4d533c9#file-tejapi_medium-9-ipynb\" class=\"ek-link\" target=\"_blank\" rel=\"noopener\">Click here to go Github<\/a><\/li>\n<\/ul>\n\n\n\n<h2 class=\"wp-block-heading\" id=\"9422\"><span class=\"ez-toc-section\" id=\"Extended_Reading\"><\/span><strong>Extended Reading<\/strong><span class=\"ez-toc-section-end\"><\/span><\/h2>\n\n\n\n<ul class=\"wp-block-list\">\n<li><a href=\"https:\/\/www.tejwin.com\/en\/insight\/the-investing-strategy-of-benjamin-graham-the-founder-of-securities-analysis\/\" class=\"ek-link\">The investing strategy of Benjamin Graham \u2014 the founder of securities analysis.<\/a><\/li>\n\n\n\n<li><a href=\"https:\/\/www.tejwin.com\/en\/insight\/trading-strategy-by-keeping-an-eye-on-big-players\/\" class=\"ek-link\">Trading Strategy by Keeping an Eye on Big Players<\/a><\/li>\n<\/ul>\n\n\n\n<h2 class=\"wp-block-heading\" id=\"25d5\"><span class=\"ez-toc-section\" id=\"Related_Link\"><\/span><strong>Related Link<\/strong><span class=\"ez-toc-section-end\"><\/span><\/h2>\n\n\n\n<ul class=\"wp-block-list\">\n<li><a href=\"https:\/\/api.tej.com.tw\/index.html\" rel=\"noreferrer noopener\" target=\"_blank\">TEJ API<\/a><\/li>\n\n\n\n<li><a href=\"https:\/\/eshop.tej.com.tw\/E-Shop\/Edata_intro\" rel=\"noreferrer noopener\" target=\"_blank\">TEJ E-Shop<\/a><\/li>\n<\/ul>\n","protected":false},"excerpt":{"rendered":"<p>Observe the relation between employee turnover rate and stocks return Highlights Preface In recent years, there\u2019s an investment called ESG investing, meaning when investing, the firm\u2019s financial performance is not the only thing to be considered. Instead, its influence over environment and society and its corporate governance should be stressed as well. There are no [&hellip;]<\/p>\n","protected":false},"featured_media":16390,"template":"","tags":[3204,2923,2926,3176,3000,3008],"insight-category":[690,3509,50],"class_list":["post-16388","insight","type-insight","status-publish","has-post-thumbnail","hentry","tag-esg-2","tag-esg-investing","tag-factor-investing","tag-python-2","tag-stock-selection","tag-tejapi-quant","insight-category-data-analysis","insight-category-fintech-en","insight-category-fintech"],"acf":[],"_links":{"self":[{"href":"https:\/\/www.tejwin.com\/en\/wp-json\/wp\/v2\/insight\/16388","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.tejwin.com\/en\/wp-json\/wp\/v2\/insight"}],"about":[{"href":"https:\/\/www.tejwin.com\/en\/wp-json\/wp\/v2\/types\/insight"}],"version-history":[{"count":1,"href":"https:\/\/www.tejwin.com\/en\/wp-json\/wp\/v2\/insight\/16388\/revisions"}],"predecessor-version":[{"id":44100,"href":"https:\/\/www.tejwin.com\/en\/wp-json\/wp\/v2\/insight\/16388\/revisions\/44100"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/www.tejwin.com\/en\/wp-json\/wp\/v2\/media\/16390"}],"wp:attachment":[{"href":"https:\/\/www.tejwin.com\/en\/wp-json\/wp\/v2\/media?parent=16388"}],"wp:term":[{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.tejwin.com\/en\/wp-json\/wp\/v2\/tags?post=16388"},{"taxonomy":"insight-category","embeddable":true,"href":"https:\/\/www.tejwin.com\/en\/wp-json\/wp\/v2\/insight-category?post=16388"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}