{"id":16352,"date":"2021-09-28T02:32:56","date_gmt":"2021-09-27T18:32:56","guid":{"rendered":"https:\/\/www.tejwin.com\/?post_type=insight&#038;p=16352"},"modified":"2024-07-03T17:35:57","modified_gmt":"2024-07-03T09:35:57","slug":"backtesting-by-macd-indicator","status":"publish","type":"insight","link":"https:\/\/tejwin20260323.j.webweb.today\/en\/insight\/backtesting-by-macd-indicator\/","title":{"rendered":"Backtesting by MACD Indicator"},"content":{"rendered":"\n<p>Use free database to do backtesting<\/p>\n\n\n\n<figure class=\"wp-block-image aligncenter caption-align-center\"><img decoding=\"async\" src=\"https:\/\/tejwin20260323.j.webweb.today\/wp-content\/uploads\/0xg9xN92wf-UAIbz1.jpg\" alt=\"\"\/><figcaption class=\"wp-element-caption\">Photo Creds:&nbsp;<a href=\"https:\/\/unsplash.com\/photos\/NDfqqq_7QWM\" 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-6a1197bc55d3b\" 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-6a1197bc55d3b\"  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:\/\/tejwin20260323.j.webweb.today\/en\/insight\/backtesting-by-macd-indicator\/#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:\/\/tejwin20260323.j.webweb.today\/en\/insight\/backtesting-by-macd-indicator\/#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:\/\/tejwin20260323.j.webweb.today\/en\/insight\/backtesting-by-macd-indicator\/#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:\/\/tejwin20260323.j.webweb.today\/en\/insight\/backtesting-by-macd-indicator\/#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:\/\/tejwin20260323.j.webweb.today\/en\/insight\/backtesting-by-macd-indicator\/#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:\/\/tejwin20260323.j.webweb.today\/en\/insight\/backtesting-by-macd-indicator\/#Calculate_the_Return\" >Calculate the Return<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-2'><a class=\"ez-toc-link ez-toc-heading-7\" href=\"https:\/\/tejwin20260323.j.webweb.today\/en\/insight\/backtesting-by-macd-indicator\/#Visualization\" >Visualization<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-2'><a class=\"ez-toc-link ez-toc-heading-8\" href=\"https:\/\/tejwin20260323.j.webweb.today\/en\/insight\/backtesting-by-macd-indicator\/#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:\/\/tejwin20260323.j.webweb.today\/en\/insight\/backtesting-by-macd-indicator\/#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:\/\/tejwin20260323.j.webweb.today\/en\/insight\/backtesting-by-macd-indicator\/#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:\/\/tejwin20260323.j.webweb.today\/en\/insight\/backtesting-by-macd-indicator\/#Related_Link\" >Related Link<\/a><\/li><\/ul><\/nav><\/div>\n<h2 class=\"wp-block-heading\" id=\"53ba\"><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\u2606\u2606\u2606<\/li>\n\n\n\n<li>MACD backtesting and identification of buying and selling points<\/li>\n\n\n\n<li>Advice: This article demonstrates the backtesting practice by using technical analysis indicator MACD and visualizing the results. Also, this article is intended to provide readers the framework and the aspects that need to be considered while doing the backtesting, instead of promoting the usefulness of certain indicators. If readers are interested in other indicators, please refer to\u00a0<a href=\"https:\/\/medium.com\/tej-api-financial-data-anlaysis\/quant-2-technical-analysis-2958435a8922\" class=\"ek-link\" target=\"_blank\" rel=\"noopener\">\u3010Quant(2)\u3011- Technical Analysis<\/a>\u00a0and come up with your own trading strategies !<\/li>\n<\/ul>\n\n\n\n<h2 class=\"wp-block-heading\" id=\"9f4d\"><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=\"ebdc\">MACD, standing for moving average convergence divergence, can be used to identify the medium-term and long-term trend of stock price. If the fast line (DIF) crosses from below to above the slow line(MACD), indicating there\u2019s an upside momentum. On the contrary, when the fast line crosses from above to below the slow line, the stock price is more likely to go up in the future. Since this kind of indicator can produce clear signals, it\u2019s proper to backtest the performance of strategies based on it.<\/p>\n\n\n\n<p id=\"4609\">An effective backtesting should not only have clear signals, but also have to take the timing of the occurrence of signals, transaction fee and the minimum charge of it, and transfer tax into consideration. When calculating the return of the strategy, cash position in hand should also be considered to have a more realistic performance evaluation of participating in the stock market.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\" id=\"0dfe\"><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=\"3b8a\">Windows OS and Jupyter Notebook<\/p>\n\n\n\n<pre class=\"wp-block-preformatted\">#Basic function<br>import numpy as np<br>import pandas as pd#Visualization<br>import plotly.graph_objects as go<br>from plotly import subplots#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=\"bd95\"><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\/datatables.html?db=TRAIL&amp;t=%E8%A9%A6%E7%94%A8%E8%B3%87%E6%96%99%E5%BA%AB\" rel=\"noreferrer noopener\" target=\"_blank\">Trial Database<\/a>&nbsp;: the code of the database is \u2018 TRAIL\/TAPRCD \u2019, covering the unadjusted stock price of listed firms in 2020<\/li>\n<\/ul>\n\n\n\n<h2 class=\"wp-block-heading\" id=\"1e5d\"><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=\"e096\"><strong>Step 1.&nbsp;Obtain the stock price<\/strong><\/h4>\n\n\n\n<pre class=\"wp-block-preformatted\">stock_data = tejapi.get('TRAIL\/TAPRCD',<br>            coid= '3481',<br>            mdate={'gte': '2020-01-01', 'lte': '2020-12-31'},<br>            opts={'columns': ['coid', 'mdate', 'open_d','close_d']},<br>            chinese_column_name=True,<br>            paginate=True)<\/pre>\n\n\n\n<p id=\"c0a6\">We choose Innolux Corporation (3481) as an example and the columns include opening price, which is used to calculate buying and selling price, and closing price that will produce buy and sell signal.<\/p>\n\n\n\n<figure class=\"wp-block-image aligncenter\"><img decoding=\"async\" src=\"https:\/\/tejwin20260323.j.webweb.today\/wp-content\/uploads\/0QM5roQphBNe_7OEW.png\" alt=\"\"\/><\/figure>\n\n\n\n<h4 class=\"wp-block-heading\" id=\"229a\"><strong>Step 2.&nbsp;Generate signal<\/strong><\/h4>\n\n\n\n<pre class=\"wp-block-preformatted\">stock_data['12_ema'] = stock_data['\u6536\u76e4\u50f9(\u5143)'].ewm(span = 12).mean()<br>stock_data['26_ema'] = stock_data['\u6536\u76e4\u50f9(\u5143)'].ewm(span = 26).mean()<br>stock_data['dif'] = stock_data['12_ema']  - stock_data['26_ema']<br>stock_data['macd'] = stock_data['dif'].ewm(span = 9).mean()<\/pre>\n\n\n\n<p id=\"6260\">Then we use the closing price to calculate the MACD. First of all,&nbsp;<code>ewm().mean()<\/code>&nbsp;is applied to produce 12-day and 26-day exponential moving averages. The difference between these two averages is fast line (DIF). If we further take 9-day exponential moving average of fast line, then we get the slow line (MACD)<\/p>\n\n\n\n<figure class=\"wp-block-image aligncenter\"><img decoding=\"async\" src=\"https:\/\/tejwin20260323.j.webweb.today\/wp-content\/uploads\/0OPHpCJcOLptEWe2Z.png\" alt=\"\"\/><\/figure>\n\n\n\n<pre class=\"wp-block-preformatted\">stock_data['\u8cb7\u8ce3\u80a1\u6578'] = 0 #golden cross<br>stock_data['\u8cb7\u8ce3\u80a1\u6578'] = np.where((stock_data['dif'].shift(1)&gt;stock_data['macd'].shift(1)) &amp; (stock_data['dif'].shift(2)&lt;stock_data['macd'].shift(2)), 1000, stock_data['\u8cb7\u8ce3\u80a1\u6578'])#death cross<br>stock_data['\u8cb7\u8ce3\u80a1\u6578'] = np.where((stock_data['dif'].shift(1)&lt;stock_data['macd'].shift(1)) &amp; (stock_data['dif'].shift(2)&gt;stock_data['macd'].shift(2)), -1000, stock_data['\u8cb7\u8ce3\u80a1\u6578'])<\/pre>\n\n\n\n<p id=\"0d82\">Once the fast line and slow line are calculated, then we can start to build the signals of buying and selling. If the DIF was still lower than the MACD two days ago, but suddenly surpassed the MACD yesterday, meaning there was a \u2018golden cross\u2019 yesterday. Since the buying signal popped up after the market closed, we\u2019ll buy 1000 shares at opening price the next day. Similarly, if death cross occurs, we are going to sell 1000 shares at opening price the next day.<\/p>\n\n\n\n<figure class=\"wp-block-image aligncenter\"><img decoding=\"async\" src=\"https:\/\/tejwin20260323.j.webweb.today\/wp-content\/uploads\/0Q_ygJnXmGSuooJcn.png\" alt=\"\"\/><\/figure>\n\n\n\n<pre class=\"wp-block-preformatted\">stock_data['\u624b\u7e8c\u8cbb'] = stock_data['\u958b\u76e4\u50f9(\u5143)']* abs(stock_data['\u8cb7\u8ce3\u80a1\u6578'])*0.001425<br>stock_data['\u624b\u7e8c\u8cbb'] = np.where((stock_data['\u624b\u7e8c\u8cbb']&gt;0)&amp;(stock_data['\u624b\u7e8c\u8cbb'] &lt; 20), 20, stock_data['\u624b\u7e8c\u8cbb'])<br>stock_data['\u8b49\u4ea4\u7a05'] = np.where(stock_data['\u8cb7\u8ce3\u80a1\u6578']&lt;0, stock_data['\u958b\u76e4\u50f9(\u5143)']* abs(stock_data['\u8cb7\u8ce3\u80a1\u6578'])*0.003, 0)<br>stock_data['\u6469\u64e6\u6210\u672c'] = (stock_data['\u624b\u7e8c\u8cbb'] + stock_data['\u8b49\u4ea4\u7a05']).apply(np.floor)<\/pre>\n\n\n\n<p id=\"041a\">Here comes the friction costs which include transaction fees(0.1425%) and transfer tax (0.3%) in Taiwan. When we buy the stock, the cost incurred is the transaction fee. It\u2019s worth noting here that there\u2019s a minimum charge of 20 NTD for transaction fees if the dealers don\u2019t offer any discount. While we sell the stock, what we need to afford is both transaction fees and transfer fee<\/p>\n\n\n\n<figure class=\"wp-block-image aligncenter\"><img decoding=\"async\" src=\"https:\/\/tejwin20260323.j.webweb.today\/wp-content\/uploads\/0CaykEC7B1Gxk5TGi.png\" alt=\"\"\/><\/figure>\n\n\n\n<h2 class=\"wp-block-heading\" id=\"8079\"><span class=\"ez-toc-section\" id=\"Calculate_the_Return\"><\/span><strong>Calculate the Return<\/strong><span class=\"ez-toc-section-end\"><\/span><\/h2>\n\n\n\n<pre class=\"wp-block-preformatted\">stock_data['\u80a1\u7968\u50f9\u503c'] = stock_data['\u8cb7\u8ce3\u80a1\u6578'].cumsum() * stock_data['\u6536\u76e4\u50f9(\u5143)']<br>stock_data['\u73fe\u91d1\u50f9\u503c'] = 10000 - stock_data['\u6469\u64e6\u6210\u672c'] + (stock_data['\u958b\u76e4\u50f9(\u5143)']* -stock_data['\u8cb7\u8ce3\u80a1\u6578']).cumsum() <br>stock_data['\u8cc7\u7522\u50f9\u503c'] = stock_data['\u80a1\u7968\u50f9\u503c'] + stock_data['\u73fe\u91d1\u50f9\u503c']<\/pre>\n\n\n\n<p id=\"6b84\">Suppose we have 10,000 NTD at the beginning. Total asset value equals stock position plus cash position. The value of stock position fluctuates with the number of holding shares and stock price; while the value of cash position changes with buying or selling actions, and also the friction costs incurred.<\/p>\n\n\n\n<figure class=\"wp-block-image aligncenter\"><img decoding=\"async\" src=\"https:\/\/tejwin20260323.j.webweb.today\/wp-content\/uploads\/0ZON5wVTVAkU_f5YA.png\" alt=\"\"\/><\/figure>\n\n\n\n<pre class=\"wp-block-preformatted\">stock_data['\u7576\u65e5\u50f9\u503c\u8b8a\u52d5(%)'] = (stock_data['\u8cc7\u7522\u50f9\u503c']\/stock_data['\u8cc7\u7522\u50f9\u503c'].shift(1) - 1)*100<br>stock_data['\u7d2f\u8a08\u5831\u916c(%)'] = (stock_data['\u8cc7\u7522\u50f9\u503c']\/10000 - 1)*100<\/pre>\n\n\n\n<p id=\"480f\">Next we can calculate the daily change in total asset value and cumulative return<\/p>\n\n\n\n<figure class=\"wp-block-image aligncenter\"><img decoding=\"async\" src=\"https:\/\/tejwin20260323.j.webweb.today\/wp-content\/uploads\/0WexXg-KZJxum1gGq.png\" alt=\"\"\/><\/figure>\n\n\n\n<h2 class=\"wp-block-heading\" id=\"9478\"><span class=\"ez-toc-section\" id=\"Visualization\"><\/span><strong>Visualization<\/strong><span class=\"ez-toc-section-end\"><\/span><\/h2>\n\n\n\n<h4 class=\"wp-block-heading\" id=\"3a96\"><strong>Step 1.&nbsp;Observe the buying and selling points (The code can be seen in source code)<\/strong><\/h4>\n\n\n\n<figure class=\"wp-block-image aligncenter\"><img decoding=\"async\" src=\"https:\/\/tejwin20260323.j.webweb.today\/wp-content\/uploads\/0fNCIkr1_nj2bkNmj.gif\" alt=\"\"\/><\/figure>\n\n\n\n<p id=\"4231\">Here we can see this strategy does capture some trend and earn the profits. However, it\u2019s risky when stock price barely changes in some periods and keep triggering buying and selling points<\/p>\n\n\n\n<h4 class=\"wp-block-heading\" id=\"e030\"><strong>Step 2.&nbsp;Strategy performance (The code can be seen in source code)<\/strong><\/h4>\n\n\n\n<figure class=\"wp-block-image aligncenter\"><img decoding=\"async\" src=\"https:\/\/tejwin20260323.j.webweb.today\/wp-content\/uploads\/07IvM0lY5zpji7QMK.png\" alt=\"\"\/><\/figure>\n\n\n\n<p id=\"fa06\">As we can see in the picture, the daily total asset value changes within 8%. If there\u2019s no change, it means the stock price remains the same or we only hold cash. The cumulative return is around 63% at the end, better than the 2020 Taiwan stock market performance.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\" id=\"2fc8\"><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=\"801e\">Readers may find out that this kind of strategy may result in overtrading and incur lots of friction costs, which leads to its performance could be worse than buy and holding strategy. The amount of beginning capital also shows the importance of asset allocation. If we hold too much cash in hand, the overall return will decrease, but the daily volatility could be lower as well. In fact, to get closer to the strategy performance in real life, we should also consider the dividend or other corporate policies that affect stock price. The reason to choose unadjusted stock price in this article is because we want to show the buying and selling points at that time. Furthermore, we may short the stock for some firms with regard to this strategy, then we also have to consider margin issues. But for Innolux Corporation, we have no shorting action. If readers want to backtest longer periods or access more data, welcome to&nbsp;<a href=\"https:\/\/eshop.tej.com.tw\/E-Shop\/Edata_intro\" target=\"_blank\" rel=\"noreferrer noopener\">TEJ E-Shop<\/a>&nbsp;to choose your own optimal plan!<\/p>\n\n\n\n<h2 class=\"wp-block-heading\"><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\/19a3feb6e17b001c9d927ddd715ad2ac#file-tejapi_medium-8-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=\"7ffc\"><span class=\"ez-toc-section\" id=\"Extended_Reading\"><\/span>Extended Reading<span class=\"ez-toc-section-end\"><\/span><\/h2>\n\n\n\n<ul class=\"wp-block-list\">\n<li><a href=\"https:\/\/tejwin20260323.j.webweb.today\/en\/insight\/starting-using-tej-trial-database\/\" class=\"ek-link\">Starting Using TEJ Trial Database<\/a><\/li>\n\n\n\n<li><a href=\"https:\/\/tejwin20260323.j.webweb.today\/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=\"853d\"><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\" target=\"_blank\" rel=\"noreferrer noopener\" class=\"ek-link\">TEJ E-Shop<\/a><\/li>\n<\/ul>\n","protected":false},"excerpt":{"rendered":"<p>Use free database to do backtesting Highlights Preface MACD, standing for moving average convergence divergence, can be used to identify the medium-term and long-term trend of stock price. If the fast line (DIF) crosses from below to above the slow line(MACD), indicating there\u2019s an upside momentum. On the contrary, when the fast line crosses from [&hellip;]<\/p>\n","protected":false},"featured_media":16355,"template":"","tags":[2603,2371,2639,3008,2428],"insight-category":[690,50],"class_list":["post-16352","insight","type-insight","status-publish","has-post-thumbnail","hentry","tag-macd","tag-python","tag-technical-analysis","tag-tejapi-quant","tag-2428","insight-category-data-analysis","insight-category-fintech"],"acf":[],"_links":{"self":[{"href":"https:\/\/tejwin20260323.j.webweb.today\/en\/wp-json\/wp\/v2\/insight\/16352","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/tejwin20260323.j.webweb.today\/en\/wp-json\/wp\/v2\/insight"}],"about":[{"href":"https:\/\/tejwin20260323.j.webweb.today\/en\/wp-json\/wp\/v2\/types\/insight"}],"version-history":[{"count":1,"href":"https:\/\/tejwin20260323.j.webweb.today\/en\/wp-json\/wp\/v2\/insight\/16352\/revisions"}],"predecessor-version":[{"id":24866,"href":"https:\/\/tejwin20260323.j.webweb.today\/en\/wp-json\/wp\/v2\/insight\/16352\/revisions\/24866"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/tejwin20260323.j.webweb.today\/en\/wp-json\/wp\/v2\/media\/16355"}],"wp:attachment":[{"href":"https:\/\/tejwin20260323.j.webweb.today\/en\/wp-json\/wp\/v2\/media?parent=16352"}],"wp:term":[{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/tejwin20260323.j.webweb.today\/en\/wp-json\/wp\/v2\/tags?post=16352"},{"taxonomy":"insight-category","embeddable":true,"href":"https:\/\/tejwin20260323.j.webweb.today\/en\/wp-json\/wp\/v2\/insight-category?post=16352"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}