{"id":5163,"date":"2024-03-11T15:24:29","date_gmt":"2024-03-11T15:24:29","guid":{"rendered":"https:\/\/eodhd.com\/financial-academy\/?p=5163"},"modified":"2025-02-05T11:44:43","modified_gmt":"2025-02-05T11:44:43","slug":"arima-analysis-on-stock-trends","status":"publish","type":"post","link":"https:\/\/eodhd.com\/financial-academy\/fundamental-analysis-examples\/arima-analysis-on-stock-trends","title":{"rendered":"ARIMA Analysis on Stock Returns"},"content":{"rendered":"\n<p>In the ever-changing realm of financial markets, a crucial aspect lies in deciphering the intricate patterns within time series data. Delving into the dynamics of finance, analysts and investors often turn to <a href=\"https:\/\/www.investopedia.com\/terms\/a\/autoregressive-integrated-moving-average-arima.asp\" target=\"_blank\" rel=\"noreferrer noopener\">ARIMA<\/a>, the Autoregressive Integrated Moving Average model. This robust statistical tool allows one to unravel and forecast the nuanced trends embedded in financial time series, providing a compass for navigating the currents of market movements.\u200b<\/p>\n\n\n\n\n\n\n<h1 class=\"wp-block-heading\" id=\"h-data\">Data<\/h1>\n\n\n\n<p>To retrieve our data through the&nbsp;<a href=\"https:\/\/eodhd.com\/\" target=\"_blank\" rel=\"noreferrer noopener\">EOD API service<\/a>, we first need to download and import the&nbsp;<a href=\"https:\/\/pypi.org\/project\/eod\/\" target=\"_blank\" rel=\"noreferrer noopener\">EOD Python package<\/a>, and then authenticate using your personal API key. It\u2019s recommendable to save your API keys in the environment variable. We are going to use the Historical Data API, which is available in our plans. However, some plans have limited time depth (1-30 years).<\/p>\n\n\n\n            <div class=\"code__wrapper\">\n                <div class=\"code__content\">\n                    \n<pre class=\"wp-block-code has-white-color has-black-background-color has-text-color has-background has-link-color wp-elements-f031b81e7ae3efd3a99316fd5c58c5f6\"><code lang=\"python\" class=\"language-python\">pip install eod<\/code><\/pre>\n\n                <\/div>\n                <div class=\"code__btns\">\n                    <button class=\"code__copy\" class=\"copy\" title=\"Copy url\">\n                        <svg class=\"code__copy__icon\" width=\"20\" height=\"20\" viewBox=\"0 0 20 20\" xmlns=\"http:\/\/www.w3.org\/2000\/svg\">\n                            <use xlink:href=\"\/img\/icons\/copy.svg#copy\"><\/use>\n                        <\/svg>\n                        <img decoding=\"async\" class=\"code__copy__approve\" alt=\"\" src=\"\/img\/approve_ico.svg\" loading=\"eager\">\n                    <\/button>\n                <\/div>\n            <\/div>\n        \n\n\n            <div class=\"code__wrapper\">\n                <div class=\"code__content\">\n                    \n<pre class=\"wp-block-code has-white-color has-black-background-color has-text-color has-background has-link-color wp-elements-b9607cf8b8377463847c96a0ab369b0b\"><code lang=\"python\" class=\"language-python\">import os\n# load the key from the environment variables\napi_key = os.environ['API_EOD']\n\nimport eod\nclient = EodHistoricalData(api_key)<\/code><\/pre>\n\n                <\/div>\n                <div class=\"code__btns\">\n                    <button class=\"code__copy\" class=\"copy\" title=\"Copy url\">\n                        <svg class=\"code__copy__icon\" width=\"20\" height=\"20\" viewBox=\"0 0 20 20\" xmlns=\"http:\/\/www.w3.org\/2000\/svg\">\n                            <use xlink:href=\"\/img\/icons\/copy.svg#copy\"><\/use>\n                        <\/svg>\n                        <img decoding=\"async\" class=\"code__copy__approve\" alt=\"\" src=\"\/img\/approve_ico.svg\" loading=\"eager\">\n                    <\/button>\n                <\/div>\n            <\/div>\n        \n\n\n<p class=\"bordered_paragraph\">1. Use the \u201c<strong>demo<\/strong>\u201d API key to test our data from a limited set of tickers without registering:<br><a href=\"https:\/\/eodhistoricaldata.com\/financial-summary\/AAPL.US\">AAPL.US<\/a> | <a href=\"https:\/\/eodhistoricaldata.com\/financial-summary\/TSLA.US\">TSLA.US <\/a>| <a href=\"https:\/\/eodhistoricaldata.com\/financial-summary\/VTI.US\">VTI.US<\/a> | <a href=\"https:\/\/eodhistoricaldata.com\/financial-summary\/AMZN.US\">AMZN.US<\/a> | <a href=\"https:\/\/eodhistoricaldata.com\/financial-summary\/BTC-USD.CC\">BTC-USD<\/a> | <a href=\"https:\/\/eodhistoricaldata.com\/financial-summary\/EURUSD.FOREX\">EUR-USD<\/a><br><a href=\"https:\/\/eodhistoricaldata.com\/financial-apis\/new-real-time-data-api-websockets\/\">Real-Time Data<\/a> and all of the APIs (except Bulk) are included without API calls limitations with these tickers and the demo key.<br>2. Register to get your free API key (limited to 20 API calls per day) with access to:<br><a href=\"https:\/\/eodhistoricaldata.com\/financial-apis\/api-for-historical-data-and-volumes\/\">End-Of-Day Historical Data<\/a> with only the past year for any ticker, and the <a href=\"https:\/\/eodhistoricaldata.com\/financial-apis\/exchanges-api-list-of-tickers-and-trading-hours\/#Get_List_of_Tickers_Exchange_Symbols\">List of tickers per Exchange<\/a>.<br>3. To unlock your API key, we recommend to choose the subscription plan which covers your needs.<\/p>\n\n\n\n<p class=\"has-text-align-center\"><a class=\"maxbutton-1 maxbutton maxbutton-subscribe-to-api external-css btn\" href=\"https:\/\/eodhd.com\/register\"><span class='mb-text'>Register &amp; Get Data<\/span><\/a><\/p>\n\n\n\n<h1 class=\"wp-block-heading\" id=\"h-arima-p-d-q\">ARIMA (<em>p, d, q<\/em>)<\/h1>\n\n\n\n<p>ARIMA processes can be broken down into 3 main components:<\/p>\n\n\n\n<h2 class=\"wp-block-heading\" id=\"h-autoregressive-ar-component\"><strong>Autoregressive (AR) Component:<\/strong><\/h2>\n\n\n\n<p>The autoregressive part captures the relationship between an observation and its past values. The term &#8220;autoregressive&#8221; signifies that the model uses past observations as predictors for future values.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\" id=\"h-integrated-i-component\"><strong>Integrated (I) Component:<\/strong><\/h2>\n\n\n\n<p>The integrated part involves differencing the time series data to make it <a href=\"https:\/\/www.investopedia.com\/articles\/trading\/07\/stationary.asp\" target=\"_blank\" rel=\"noreferrer noopener\">stationary<\/a>. Stationarity is crucial for many time series models, including ARIMA. Differencing helps in stabilizing the mean and variance of the series. In the case of stock prices, we can use arithmetic or log returns instead of the first difference.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\" id=\"h-moving-average-ma-component\"><strong>Moving Average (MA) Component:<\/strong><\/h2>\n\n\n\n<p>The moving average component represents the relationship between an observation and a residual error from a moving average model. It captures the short-term fluctuations in the data that are not accounted for by the autoregressive component.<\/p>\n\n\n\n<p>The notation for ARIMA is often represented as ARIMA(p, d, q), where:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li><em>p<\/em> is the order of the autoregressive component.<\/li>\n\n\n\n<li><em>d<\/em> is the degree of differencing.<\/li>\n\n\n\n<li><em>q<\/em> is the order of the moving average component.<br><br><\/li>\n<\/ul>\n\n\n\n<p>The process of selecting appropriate values for <em>p<\/em>, <em>d<\/em>, and <em>q<\/em> involves analyzing the <a href=\"https:\/\/www.investopedia.com\/terms\/a\/autocorrelation.asp\" target=\"_blank\" rel=\"noreferrer noopener\">autocorrelation<\/a> function (ACF) and partial autocorrelation function (PACF) of the time series data. These functions help identify the presence of autoregressive and moving average components and guide the choice parameters for the model: <\/p>\n\n\n\n<p class=\"has-text-align-left\"><img decoding=\"async\" src=\"https:\/\/s0.wp.com\/latex.php?latex=Y_t&#038;bg=ffffff&#038;fg=000&#038;s=0&#038;c=20201002\" alt=\"Y_t\" class=\"latex\" \/> = <img decoding=\"async\" src=\"https:\/\/s0.wp.com\/latex.php?latex=%5Csum_%7Bi%3D1%7D%5E%7Bp%7D+%5Cphi_i+Y_%7Bt-i%7D+%2B+%5Cvarepsilon_t+-+%5Csum_%7Bj%3D1%7D%5E%7Bq%7D+%5Ctheta_j+%5Cvarepsilon_%7Bt-j%7D&#038;bg=ffffff&#038;fg=000&#038;s=0&#038;c=20201002\" alt=\"&#92;sum_{i=1}^{p} &#92;phi_i Y_{t-i} + &#92;varepsilon_t - &#92;sum_{j=1}^{q} &#92;theta_j &#92;varepsilon_{t-j}\" class=\"latex\" \/><\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li><img decoding=\"async\" src=\"https:\/\/s0.wp.com\/latex.php?latex=Y_t&#038;bg=ffffff&#038;fg=000&#038;s=0&#038;c=20201002\" alt=\"Y_t\" class=\"latex\" \/> is the value of the time series at time <em>t<\/em><\/li>\n\n\n\n<li><img decoding=\"async\" src=\"https:\/\/s0.wp.com\/latex.php?latex=%5Cphi_1%2C+%5Cphi_2%2C+%5Cldots%2C+%5Cphi_p&#038;bg=ffffff&#038;fg=000&#038;s=0&#038;c=20201002\" alt=\"&#92;phi_1, &#92;phi_2, &#92;ldots, &#92;phi_p\" class=\"latex\" \/> are the autoregressive coefficients<\/li>\n\n\n\n<li><img decoding=\"async\" src=\"https:\/\/s0.wp.com\/latex.php?latex=%5Cvarepsilon_t&#038;bg=ffffff&#038;fg=000&#038;s=0&#038;c=20201002\" alt=\"&#92;varepsilon_t\" class=\"latex\" \/> is the white noise error term at time <em>t<\/em><\/li>\n\n\n\n<li><img decoding=\"async\" src=\"https:\/\/s0.wp.com\/latex.php?latex=%5Ctheta_1%2C+%5Ctheta_2%2C+%5Cldots%2C+%5Ctheta_q&#038;bg=ffffff&#038;fg=000&#038;s=0&#038;c=20201002\" alt=\"&#92;theta_1, &#92;theta_2, &#92;ldots, &#92;theta_q\" class=\"latex\" \/> are the moving average coefficients<br><br><\/li>\n<\/ul>\n\n\n\n<h1 class=\"wp-block-heading\" id=\"h-application\">Application<br><\/h1>\n\n\n\n<h2 class=\"wp-block-heading\" id=\"h-step-1-checking-for-stationarity\">Step 1 &#8211; Checking for Stationarity <\/h2>\n\n\n\n<p>Stationarity is a crucial concept in time series analysis. A stationary time series is one whose statistical properties, such as mean, variance, and autocorrelation, do not change over time. In simpler terms, it exhibits a consistent and stable behavior, making it easier to model and analyze. To check for stationarity one can use a variety of tests such as the Phillips-Perron, KPPS, and the Augmented Dickey-Fuller (ADF). Checking for stationarity involves identifying the presence of a unit root, which represents a coefficient of 1 for the first lagged term (<img decoding=\"async\" src=\"https:\/\/s0.wp.com\/latex.php?latex=%5Cphi_1&#038;bg=ffffff&#038;fg=000&#038;s=0&#038;c=20201002\" alt=\"&#92;phi_1\" class=\"latex\" \/>) in the AR process, meaning the series depends on its past value plus some random term <img decoding=\"async\" src=\"https:\/\/s0.wp.com\/latex.php?latex=%5Cvarepsilon_t&#038;bg=ffffff&#038;fg=000&#038;s=0&#038;c=20201002\" alt=\"&#92;varepsilon_t\" class=\"latex\" \/>. To test, you can use the function provided below:<\/p>\n\n\n\n            <div class=\"code__wrapper\">\n                <div class=\"code__content\">\n                    \n<pre class=\"wp-block-code has-white-color has-black-background-color has-text-color has-background has-link-color wp-elements-6274b284ea0db9fb4403d0efa315304f\"><code lang=\"python\" class=\"language-python\">def ADF(time_series):\n  \n    trend_types = ['c', 'ct', 'n']\n\n    for trend in trend_types:\n        print(f\"Augmented Dickey-Fuller (ADF) test with trend '{trend}':\")\n        result = sm.tsa.adfuller(time_series, autolag='AIC', regression=trend)\n        print(f'ADF Statistic: {result[0]}')\n        print(f'p-value: {result[1]}')\n        print('Critical Values:')\n        for key, value in result[4].items():\n            print(f'   {key}: {value}')\n\n        if result[1] &lt;= 0.05:\n            print(\"Reject the null hypothesis; the time series has no unit root.\\n\")\n        else:\n            print(\"Fail to reject the null hypothesis; the time series has a unit root.\\n\")<\/code><\/pre>\n\n                <\/div>\n                <div class=\"code__btns\">\n                    <button class=\"code__copy\" class=\"copy\" title=\"Copy url\">\n                        <svg class=\"code__copy__icon\" width=\"20\" height=\"20\" viewBox=\"0 0 20 20\" xmlns=\"http:\/\/www.w3.org\/2000\/svg\">\n                            <use xlink:href=\"\/img\/icons\/copy.svg#copy\"><\/use>\n                        <\/svg>\n                        <img decoding=\"async\" class=\"code__copy__approve\" alt=\"\" src=\"\/img\/approve_ico.svg\" loading=\"eager\">\n                    <\/button>\n                <\/div>\n            <\/div>\n        \n\n\n<p>In case of failure in rejecting the null hypothesis, the next step would be to take the first difference of the series (<em>d<\/em> = 1), or in the case of prices, to calculate the returns.<br><br><\/p>\n\n\n\n<h2 class=\"wp-block-heading\" id=\"h-step-2-analyzing-the-auto-correlation-and-partial-autocorrelation-functions\">Step 2 &#8211; Analyzing the Auto Correlation and Partial Autocorrelation Functions<\/h2>\n\n\n\n<p>Once our series becomes stationary, we need to analyze the ACF and PACF to identify the ARMA structure of the process. Many consider this process more art than science, as identifying the orders of p and q can be challenging. That&#8217;s why it&#8217;s advisable to start from the most complex explanation and test your way into the most parsimonious model. A simpler model with fewer parameters is favored over more complex models with more parameters. To get started, the picture below provides the essentials to identify the order of any ARMA structure and offers a few examples:<\/p>\n\n\n\n<figure class=\"wp-block-image size-full is-resized\" id=\"ACF_PACF_Interpretation\"><img loading=\"lazy\" decoding=\"async\" width=\"1000\" height=\"1109\" src=\"https:\/\/eodhd.com\/financial-academy\/wp-content\/uploads\/2024\/03\/interpret.png\" alt=\"\" class=\"wp-image-5164\" style=\"width:840px;height:auto\"\/><figcaption class=\"wp-element-caption\">Image from <a href=\"https:\/\/towardsdatascience.com\/interpreting-acf-and-pacf-plots-for-time-series-forecasting-af0d6db4061c\" target=\"_blank\" rel=\"noreferrer noopener\">Towards Data Science<\/a><\/figcaption><\/figure>\n\n\n\n<p>The functions below are useful to plot the ACF and PACF during analysis: <\/p>\n\n\n\n            <div class=\"code__wrapper\">\n                <div class=\"code__content\">\n                    \n<pre class=\"wp-block-code has-white-color has-black-background-color has-text-color has-background has-link-color wp-elements-11cba3e5b7f56b51f935fa9d1cde0d89\"><code lang=\"python\" class=\"language-python\">def ACF(variable):        \n    sm.graphics.tsa.plot_acf(variable, lags=20)\n    plt.title(\"ACF\")\n    plt.show()   \n\ndef PACF(variable):        \n    sm.graphics.tsa.plot_pacf(variable, lags=20)\n    plt.title(\"PACF\")\n    plt.show() <\/code><\/pre>\n\n                <\/div>\n                <div class=\"code__btns\">\n                    <button class=\"code__copy\" class=\"copy\" title=\"Copy url\">\n                        <svg class=\"code__copy__icon\" width=\"20\" height=\"20\" viewBox=\"0 0 20 20\" xmlns=\"http:\/\/www.w3.org\/2000\/svg\">\n                            <use xlink:href=\"\/img\/icons\/copy.svg#copy\"><\/use>\n                        <\/svg>\n                        <img decoding=\"async\" class=\"code__copy__approve\" alt=\"\" src=\"\/img\/approve_ico.svg\" loading=\"eager\">\n                    <\/button>\n                <\/div>\n            <\/div>\n        \n\n\n<p><br><\/p>\n\n\n\n<h2 class=\"wp-block-heading\" id=\"h-step-3-modeling-arma-p-q\">Step 3 &#8211; Modeling ARMA(<em>p,q<\/em>)<\/h2>\n\n\n\n<p>Once the orders of <em>p<\/em> and<em> q<\/em> have been identified, the following step would be to set up an ARMA(<em>p,q<\/em>) model. To do so, the code provided below:<\/p>\n\n\n\n            <div class=\"code__wrapper\">\n                <div class=\"code__content\">\n                    \n<pre class=\"wp-block-code has-white-color has-black-background-color has-text-color has-background has-link-color wp-elements-060c02a9d67a5c2eb942e6bab2062e4b\"><code lang=\"python\" class=\"language-python\">import statsmodels.api as sm\n\np_order = 1 # AR order\nq_order = 1 # MA order\nd_order = 0 # differencing order\n\nmodel = sm.tsa.ARIMA(series, order=(p_order, d_order, q_order))\nmodel_fit = model.fit()\nprint(model_fit.summary())<\/code><\/pre>\n\n                <\/div>\n                <div class=\"code__btns\">\n                    <button class=\"code__copy\" class=\"copy\" title=\"Copy url\">\n                        <svg class=\"code__copy__icon\" width=\"20\" height=\"20\" viewBox=\"0 0 20 20\" xmlns=\"http:\/\/www.w3.org\/2000\/svg\">\n                            <use xlink:href=\"\/img\/icons\/copy.svg#copy\"><\/use>\n                        <\/svg>\n                        <img decoding=\"async\" class=\"code__copy__approve\" alt=\"\" src=\"\/img\/approve_ico.svg\" loading=\"eager\">\n                    <\/button>\n                <\/div>\n            <\/div>\n        \n\n\n<p><br><\/p>\n\n\n\n<h2 class=\"wp-block-heading\" id=\"h-step-4-interpreting-summary\">Step 4 &#8211; Interpreting Summary <\/h2>\n\n\n\n<div class=\"wp-block-media-text is-stacked-on-mobile is-vertically-aligned-top\" style=\"grid-template-columns:48% auto\" id=\"Python_ARMA_Summary_Result_Screenshot\"><figure class=\"wp-block-media-text__media\"><img loading=\"lazy\" decoding=\"async\" width=\"979\" height=\"628\" src=\"https:\/\/eodhd.com\/financial-academy\/wp-content\/uploads\/2024\/03\/summary-1.png\" alt=\"Image by author\" class=\"wp-image-5166 size-full\"\/><\/figure><div class=\"wp-block-media-text__content\">\n<p>In the sample summary provided, one is able to identify the coefficients for the AR and MA process and judge their efficiency in describing the series according to their respective p-value. In the example provided, it would be interesting to remove the MA part and do a pure AR model due to the p-value above the significance level (1%, 5%, or 10%). <\/p>\n\n\n\n<p><br><br><\/p>\n<\/div><\/div>\n\n\n\n<p>When encountering two reliable models to describe the behavior of the series, it is wise to choose the most parsimonious model and compare models based on the selection criterias such as the Akaike Information Criterion (AIC), Bayesian Information Criterion (BIC) and Hannan-Quinn Information Criterion (HQIC), where the lowest value represents the better fitting model. <br><br><\/p>\n\n\n\n<h1 class=\"wp-block-heading\" id=\"h-example-nvidia-stock\">Example: NVIDIA stock <\/h1>\n\n\n\n<p>To retrieve data, we utilize the&nbsp;<a href=\"https:\/\/eodhd.com\/financial-apis\/python-financial-libraries-and-code-samples\/#Official_EODHD_APIs_Python_Financial_Library_by_Michael_Whittle\" target=\"_blank\" rel=\"noreferrer noopener\">Official EOD Python API&nbsp;<\/a>library. Our process begins with gathering data for NVIDIA dating back to March 2014. Information on stocks is accessible through the use of the&nbsp;<em>get_historical_data<\/em>&nbsp;function.<\/p>\n\n\n\n            <div class=\"code__wrapper\">\n                <div class=\"code__content\">\n                    \n<pre class=\"wp-block-code has-white-color has-black-background-color has-text-color has-background has-link-color wp-elements-be65acf2c0f1850e7861d625eee00431\"><code lang=\"python\" class=\"language-python\">start = \"2014-03-01\"\n\nprices = api.get_historical_data(\"NVDA\", interval=\"d\", iso8601_start=start,\n                              iso8601_end=\"2024-03-01\")[\"adjusted_close\"].astype(float)\nprices.name = \"NVDA\"<\/code><\/pre>\n\n                <\/div>\n                <div class=\"code__btns\">\n                    <button class=\"code__copy\" class=\"copy\" title=\"Copy url\">\n                        <svg class=\"code__copy__icon\" width=\"20\" height=\"20\" viewBox=\"0 0 20 20\" xmlns=\"http:\/\/www.w3.org\/2000\/svg\">\n                            <use xlink:href=\"\/img\/icons\/copy.svg#copy\"><\/use>\n                        <\/svg>\n                        <img decoding=\"async\" class=\"code__copy__approve\" alt=\"\" src=\"\/img\/approve_ico.svg\" loading=\"eager\">\n                    <\/button>\n                <\/div>\n            <\/div>\n        \n\n\n<div class=\"wp-block-media-text is-stacked-on-mobile\" id=\"NVIDA_Prices\"><figure class=\"wp-block-media-text__media\"><img loading=\"lazy\" decoding=\"async\" width=\"552\" height=\"435\" src=\"https:\/\/eodhd.com\/financial-academy\/wp-content\/uploads\/2024\/03\/output-1.png\" alt=\"\" class=\"wp-image-5178 size-full\"\/><\/figure><div class=\"wp-block-media-text__content\">\n<p>Using the provided code and API, you can fetch the closing prices for the stock and plot them on the left. Upon visual inspection, it&#8217;s evident that the data is not stationary. To address this, one should conduct a stationarity test with the ADF-test and identify the type of trend to remove it from the data. Considering prices as random walks, where they are their past value plus some random term, it&#8217;s advisable to analyze their returns. This can be achieved with the following code:<\/p>\n<\/div><\/div>\n\n\n\n<h2 class=\"wp-block-heading\" id=\"h-calculating-returns\">Calculating Returns<\/h2>\n\n\n\n            <div class=\"code__wrapper\">\n                <div class=\"code__content\">\n                    \n<pre class=\"wp-block-code has-white-color has-black-background-color has-text-color has-background has-link-color wp-elements-b57cb6c1e01b7cffb0874233b94ff864\"><code lang=\"python\" class=\"language-python\">returns = log(prices\/prices.shift(1))[1:]<\/code><\/pre>\n\n                <\/div>\n                <div class=\"code__btns\">\n                    <button class=\"code__copy\" class=\"copy\" title=\"Copy url\">\n                        <svg class=\"code__copy__icon\" width=\"20\" height=\"20\" viewBox=\"0 0 20 20\" xmlns=\"http:\/\/www.w3.org\/2000\/svg\">\n                            <use xlink:href=\"\/img\/icons\/copy.svg#copy\"><\/use>\n                        <\/svg>\n                        <img decoding=\"async\" class=\"code__copy__approve\" alt=\"\" src=\"\/img\/approve_ico.svg\" loading=\"eager\">\n                    <\/button>\n                <\/div>\n            <\/div>\n        \n\n\n<div class=\"wp-block-media-text is-stacked-on-mobile\" id=\"NVIDIA_Returns\"><figure class=\"wp-block-media-text__media\"><img loading=\"lazy\" decoding=\"async\" width=\"559\" height=\"413\" src=\"https:\/\/eodhd.com\/financial-academy\/wp-content\/uploads\/2024\/03\/return-1.png\" alt=\"\" class=\"wp-image-5179 size-full\"\/><\/figure><div class=\"wp-block-media-text__content\">\n<p>Look how beautiful it is! Now this we can work with. Although there are still some outliers and clustering in the returns, for learning purposes we can proceed to a further analysis on the behavior of NVIDIA&#8217;s stock returns. <\/p>\n<\/div><\/div>\n\n\n\n<h2 class=\"wp-block-heading\" id=\"h-autocorrelation-and-partial-autocorrelation-functions\">Autocorrelation and Partial Autocorrelation Functions<\/h2>\n\n\n\n<div class=\"wp-block-media-text is-stacked-on-mobile\" id=\"NVIDIA_Returns_ACF\"><figure class=\"wp-block-media-text__media\"><img loading=\"lazy\" decoding=\"async\" width=\"568\" height=\"435\" src=\"https:\/\/eodhd.com\/financial-academy\/wp-content\/uploads\/2024\/03\/return-acf.png\" alt=\"\" class=\"wp-image-5180 size-full\"\/><\/figure><div class=\"wp-block-media-text__content\">\n<p>Examining the ACF plot for significant spikes beyond the shaded region, we can identify the presence of a <em>q<\/em> of order 1 for the MA term. As for the spikes on lag orders 7 and 8, it is possible to build a degenerate model excluding the lags between 1 and 7, but for simplicity and in the search for the most parsimonious model, we will take <em>q<\/em> with a value of 1.<\/p>\n<\/div><\/div>\n\n\n\n<div class=\"wp-block-media-text is-stacked-on-mobile\" id=\"NVIDIA_Returns_PACF\"><figure class=\"wp-block-media-text__media\"><img loading=\"lazy\" decoding=\"async\" width=\"568\" height=\"435\" src=\"https:\/\/eodhd.com\/financial-academy\/wp-content\/uploads\/2024\/03\/return-pacf.png\" alt=\"\" class=\"wp-image-5182 size-full\"\/><\/figure><div class=\"wp-block-media-text__content\">\n<p>Applying the same process to identify <em>p<\/em> for the AR term, we can notice a similar pattern and obtain the same result as the one for <em>q<\/em>. <\/p>\n\n\n\n<p>In conclusion from the observations made we can continue to modeling an ARMA (1,1) process.<\/p>\n<\/div><\/div>\n\n\n\n<p><br><\/p>\n\n\n\n<h2 class=\"wp-block-heading\" id=\"h-result-summary\">Result Summary <\/h2>\n\n\n\n<figure class=\"wp-block-gallery has-nested-images columns-default is-cropped wp-block-gallery-1 is-layout-flex wp-block-gallery-is-layout-flex\">\n<figure class=\"wp-block-image size-large\" id=\"NVIDIA_Returns_ARMA_Model\"><img loading=\"lazy\" decoding=\"async\" width=\"997\" height=\"613\" data-id=\"5184\" src=\"https:\/\/eodhd.com\/financial-academy\/wp-content\/uploads\/2024\/03\/AR.png\" alt=\"\" class=\"wp-image-5184\"\/><figcaption class=\"wp-element-caption\">ARMA (1,1) by author<\/figcaption><\/figure>\n\n\n\n<figure class=\"wp-block-image size-large\" id=\"NVIDIA_Returns_AR_Model\"><img loading=\"lazy\" decoding=\"async\" width=\"997\" height=\"649\" data-id=\"5185\" src=\"https:\/\/eodhd.com\/financial-academy\/wp-content\/uploads\/2024\/03\/ARMA.png\" alt=\"\" class=\"wp-image-5185\"\/><figcaption class=\"wp-element-caption\">AR (1) by author<\/figcaption><\/figure>\n\n\n\n<figure class=\"wp-block-image size-large\" id=\"NVIDIA_Returns_MA_Model\"><img loading=\"lazy\" decoding=\"async\" width=\"997\" height=\"636\" data-id=\"5183\" src=\"https:\/\/eodhd.com\/financial-academy\/wp-content\/uploads\/2024\/03\/MA.png\" alt=\"\" class=\"wp-image-5183\"\/><figcaption class=\"wp-element-caption\">MA (1) by author<\/figcaption><\/figure>\n<\/figure>\n\n\n\n<p>Finding the best fitting model for your time series can be challenging, it is always wise to explore all possibilities before making a decision. On our first attempt, the ARMA(1,1) model, both coefficients for the AR and MA terms are statically insignificant, meaning the model would be better represented without their presence. To extend the analysis, one should test two models, one removing the MA term and another removing only the AR part, as it was done above in the pictures. In both our models, AR(1) and MA(1) the coefficients are statically significant, and both have the same number of parameters. To select a final model, we turn to the selection criteria. The AR(1) process shows a lower value for all three selection criterion meaning it would be the model of choice. <\/p>\n\n\n\n<p>With the information obtained in this article, one should be able to apply the Box\u2013Jenkins method to apply autoregressive moving average (ARMA) or autoregressive integrated moving average (ARIMA) models to find the best fit of a time-series model to past values of a time series. <\/p>\n\n\n\n<p class=\"has-text-align-center\"><a class=\"maxbutton-1 maxbutton maxbutton-subscribe-to-api external-css btn\" href=\"https:\/\/eodhd.com\/register\"><span class='mb-text'>Register &amp; Get Data<\/span><\/a><\/p>\n\n\n\n<p id=\"boardered-paragraph\"><em>References<\/em>:<br>Full code available <a href=\"https:\/\/github.com\/gbaglini\/baglinifinance\/blob\/main\/src\/II.5%20Time%20Series%20Models\/ARIMA%20Analysis%20on%20Stock%20Trends.ipynb\" target=\"_blank\" rel=\"noreferrer noopener\">here<\/a><br>Website:&nbsp;<a href=\"https:\/\/baglinifinance.com\/\" target=\"_blank\" rel=\"noreferrer noopener\">baglinifinance.com<\/a><\/p>\n","protected":false},"excerpt":{"rendered":"<p>In the ever-changing realm of financial markets, a crucial aspect lies in deciphering the intricate patterns within time series data. Delving into the dynamics of finance, analysts and investors often turn to ARIMA, the Autoregressive Integrated Moving Average model. This robust statistical tool allows one to unravel and forecast the nuanced trends embedded in financial [&hellip;]<\/p>\n","protected":false},"author":26,"featured_media":5212,"comment_status":"closed","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"jetpack_post_was_ever_published":false,"_jetpack_newsletter_access":"","_jetpack_dont_email_post_to_subs":false,"_jetpack_newsletter_tier_id":0,"_jetpack_memberships_contains_paywalled_content":false,"_jetpack_memberships_contains_paid_content":false,"footnotes":""},"categories":[1,42,62],"tags":[],"coding-language":[30],"ready-to-go-solution":[56],"qualification":[31],"financial-apis-category":[36],"financial-apis-manuals":[],"class_list":["post-5163","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-fundamental-analysis-examples","category-stocks-data-analysis-examples","category-stocks-price-prediction-examples","coding-language-python","ready-to-go-solution-eodhd-python-financial-library","qualification-experienced","financial-apis-category-stock-market-prices","has_thumb"],"yoast_head":"<!-- This site is optimized with the Yoast SEO Premium plugin v21.9 (Yoast SEO v26.7) - https:\/\/yoast.com\/wordpress\/plugins\/seo\/ -->\n<title>ARIMA Analysis on Stock Returns | EODHD APIs Academy<\/title>\n<meta name=\"description\" content=\"Discover ARIMA modeling in Python for precise time series analysis. Learn its components and practical application steps, illustrated with a real-world example using NVIDIA stock data. Perfect for mastering financial forecasting.\" \/>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/eodhd.com\/financial-academy\/fundamental-analysis-examples\/arima-analysis-on-stock-trends\" \/>\n<meta property=\"og:locale\" content=\"en_US\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"ARIMA Analysis on Stock Returns\" \/>\n<meta property=\"og:description\" content=\"Discover ARIMA modeling in Python for precise time series analysis. Learn its components and practical application steps, illustrated with a real-world example using NVIDIA stock data. Perfect for mastering financial forecasting.\" \/>\n<meta property=\"og:url\" content=\"https:\/\/eodhd.com\/financial-academy\/fundamental-analysis-examples\/arima-analysis-on-stock-trends\" \/>\n<meta property=\"og:site_name\" content=\"Financial Academy\" \/>\n<meta property=\"article:publisher\" content=\"https:\/\/www.facebook.com\/eodhistoricaldata\" \/>\n<meta property=\"article:published_time\" content=\"2024-03-11T15:24:29+00:00\" \/>\n<meta property=\"article:modified_time\" content=\"2025-02-05T11:44:43+00:00\" \/>\n<meta property=\"og:image\" content=\"https:\/\/eodhd.com\/financial-academy\/wp-content\/uploads\/2024\/03\/ARIMA_Analysis_On_Stock-Returns.jpg\" \/>\n\t<meta property=\"og:image:width\" content=\"2000\" \/>\n\t<meta property=\"og:image:height\" content=\"1142\" \/>\n\t<meta property=\"og:image:type\" content=\"image\/jpeg\" \/>\n<meta name=\"author\" content=\"Vinicius Marignac\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:creator\" content=\"@EOD_data\" \/>\n<meta name=\"twitter:site\" content=\"@EOD_data\" \/>\n<meta name=\"twitter:label1\" content=\"Written by\" \/>\n\t<meta name=\"twitter:data1\" content=\"Vinicius Marignac\" \/>\n\t<meta name=\"twitter:label2\" content=\"Est. reading time\" \/>\n\t<meta name=\"twitter:data2\" content=\"9 minutes\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\/\/schema.org\",\"@graph\":[{\"@type\":\"Article\",\"@id\":\"https:\/\/eodhd.com\/financial-academy\/fundamental-analysis-examples\/arima-analysis-on-stock-trends#article\",\"isPartOf\":{\"@id\":\"https:\/\/eodhd.com\/financial-academy\/fundamental-analysis-examples\/arima-analysis-on-stock-trends\"},\"author\":{\"name\":\"Vinicius Marignac\",\"@id\":\"https:\/\/eodhd.com\/financial-academy\/#\/schema\/person\/51d78f664703cec9b788385398192be7\"},\"headline\":\"ARIMA Analysis on Stock Returns\",\"datePublished\":\"2024-03-11T15:24:29+00:00\",\"dateModified\":\"2025-02-05T11:44:43+00:00\",\"mainEntityOfPage\":{\"@id\":\"https:\/\/eodhd.com\/financial-academy\/fundamental-analysis-examples\/arima-analysis-on-stock-trends\"},\"wordCount\":1458,\"publisher\":{\"@id\":\"https:\/\/eodhd.com\/financial-academy\/#organization\"},\"image\":{\"@id\":\"https:\/\/eodhd.com\/financial-academy\/fundamental-analysis-examples\/arima-analysis-on-stock-trends#primaryimage\"},\"thumbnailUrl\":\"https:\/\/eodhd.com\/financial-academy\/wp-content\/uploads\/2024\/03\/ARIMA_Analysis_On_Stock-Returns.jpg\",\"articleSection\":[\"Fundamental Analysis Examples\",\"Stocks Data Analysis Examples\",\"Stocks Price Predictions Examples\"],\"inLanguage\":\"en-US\"},{\"@type\":\"WebPage\",\"@id\":\"https:\/\/eodhd.com\/financial-academy\/fundamental-analysis-examples\/arima-analysis-on-stock-trends\",\"url\":\"https:\/\/eodhd.com\/financial-academy\/fundamental-analysis-examples\/arima-analysis-on-stock-trends\",\"name\":\"ARIMA Analysis on Stock Returns | EODHD APIs Academy\",\"isPartOf\":{\"@id\":\"https:\/\/eodhd.com\/financial-academy\/#website\"},\"primaryImageOfPage\":{\"@id\":\"https:\/\/eodhd.com\/financial-academy\/fundamental-analysis-examples\/arima-analysis-on-stock-trends#primaryimage\"},\"image\":{\"@id\":\"https:\/\/eodhd.com\/financial-academy\/fundamental-analysis-examples\/arima-analysis-on-stock-trends#primaryimage\"},\"thumbnailUrl\":\"https:\/\/eodhd.com\/financial-academy\/wp-content\/uploads\/2024\/03\/ARIMA_Analysis_On_Stock-Returns.jpg\",\"datePublished\":\"2024-03-11T15:24:29+00:00\",\"dateModified\":\"2025-02-05T11:44:43+00:00\",\"description\":\"Discover ARIMA modeling in Python for precise time series analysis. Learn its components and practical application steps, illustrated with a real-world example using NVIDIA stock data. Perfect for mastering financial forecasting.\",\"breadcrumb\":{\"@id\":\"https:\/\/eodhd.com\/financial-academy\/fundamental-analysis-examples\/arima-analysis-on-stock-trends#breadcrumb\"},\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\/\/eodhd.com\/financial-academy\/fundamental-analysis-examples\/arima-analysis-on-stock-trends\"]}]},{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\/\/eodhd.com\/financial-academy\/fundamental-analysis-examples\/arima-analysis-on-stock-trends#primaryimage\",\"url\":\"https:\/\/eodhd.com\/financial-academy\/wp-content\/uploads\/2024\/03\/ARIMA_Analysis_On_Stock-Returns.jpg\",\"contentUrl\":\"https:\/\/eodhd.com\/financial-academy\/wp-content\/uploads\/2024\/03\/ARIMA_Analysis_On_Stock-Returns.jpg\",\"width\":2000,\"height\":1142},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\/\/eodhd.com\/financial-academy\/fundamental-analysis-examples\/arima-analysis-on-stock-trends#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https:\/\/eodhd.com\/financial-academy\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"ARIMA Analysis on Stock Returns\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\/\/eodhd.com\/financial-academy\/#website\",\"url\":\"https:\/\/eodhd.com\/financial-academy\/\",\"name\":\"Financial APIs Academy | EODHD\",\"description\":\"Financial Stock Market Academy\",\"publisher\":{\"@id\":\"https:\/\/eodhd.com\/financial-academy\/#organization\"},\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\/\/eodhd.com\/financial-academy\/?s={search_term_string}\"},\"query-input\":{\"@type\":\"PropertyValueSpecification\",\"valueRequired\":true,\"valueName\":\"search_term_string\"}}],\"inLanguage\":\"en-US\"},{\"@type\":\"Organization\",\"@id\":\"https:\/\/eodhd.com\/financial-academy\/#organization\",\"name\":\"EODHD (EOD Historical Data)\",\"url\":\"https:\/\/eodhd.com\/financial-academy\/\",\"logo\":{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\/\/eodhd.com\/financial-academy\/#\/schema\/logo\/image\/\",\"url\":\"https:\/\/eodhd.com\/financial-academy\/wp-content\/uploads\/2023\/12\/EODHD-Logo.png\",\"contentUrl\":\"https:\/\/eodhd.com\/financial-academy\/wp-content\/uploads\/2023\/12\/EODHD-Logo.png\",\"width\":159,\"height\":82,\"caption\":\"EODHD (EOD Historical Data)\"},\"image\":{\"@id\":\"https:\/\/eodhd.com\/financial-academy\/#\/schema\/logo\/image\/\"},\"sameAs\":[\"https:\/\/www.facebook.com\/eodhistoricaldata\",\"https:\/\/x.com\/EOD_data\",\"https:\/\/www.reddit.com\/r\/EODHistoricalData\/\",\"https:\/\/eod-historical-data.medium.com\/\"]},{\"@type\":\"Person\",\"@id\":\"https:\/\/eodhd.com\/financial-academy\/#\/schema\/person\/51d78f664703cec9b788385398192be7\",\"name\":\"Vinicius Marignac\",\"image\":{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\/\/eodhd.com\/financial-academy\/#\/schema\/person\/image\/\",\"url\":\"https:\/\/secure.gravatar.com\/avatar\/e4be34d69c00f800295039cd85a135c00438362eb54dd84cb42d4d16b96b81e4?s=96&d=mm&r=g\",\"contentUrl\":\"https:\/\/secure.gravatar.com\/avatar\/e4be34d69c00f800295039cd85a135c00438362eb54dd84cb42d4d16b96b81e4?s=96&d=mm&r=g\",\"caption\":\"Vinicius Marignac\"},\"description\":\"Researcher at Geneva Finance Research Institute, Financial &amp; Risk Analyst, Python Developer\",\"gender\":\"male\",\"knowsAbout\":[\"Python\",\"R\",\"EViews\"],\"knowsLanguage\":[\"English\",\"French\",\"Portuguese\",\"Spanish\"],\"jobTitle\":\"Researcher\",\"worksFor\":\"Geneva Finance Research Institute\",\"url\":\"https:\/\/eodhd.com\/financial-academy\/author\/viniciusmarignac\"}]}<\/script>\n<!-- \/ Yoast SEO Premium plugin. -->","yoast_head_json":{"title":"ARIMA Analysis on Stock Returns | EODHD APIs Academy","description":"Discover ARIMA modeling in Python for precise time series analysis. Learn its components and practical application steps, illustrated with a real-world example using NVIDIA stock data. Perfect for mastering financial forecasting.","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/eodhd.com\/financial-academy\/fundamental-analysis-examples\/arima-analysis-on-stock-trends","og_locale":"en_US","og_type":"article","og_title":"ARIMA Analysis on Stock Returns","og_description":"Discover ARIMA modeling in Python for precise time series analysis. Learn its components and practical application steps, illustrated with a real-world example using NVIDIA stock data. Perfect for mastering financial forecasting.","og_url":"https:\/\/eodhd.com\/financial-academy\/fundamental-analysis-examples\/arima-analysis-on-stock-trends","og_site_name":"Financial Academy","article_publisher":"https:\/\/www.facebook.com\/eodhistoricaldata","article_published_time":"2024-03-11T15:24:29+00:00","article_modified_time":"2025-02-05T11:44:43+00:00","og_image":[{"width":2000,"height":1142,"url":"https:\/\/eodhd.com\/financial-academy\/wp-content\/uploads\/2024\/03\/ARIMA_Analysis_On_Stock-Returns.jpg","type":"image\/jpeg"}],"author":"Vinicius Marignac","twitter_card":"summary_large_image","twitter_creator":"@EOD_data","twitter_site":"@EOD_data","twitter_misc":{"Written by":"Vinicius Marignac","Est. reading time":"9 minutes"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"Article","@id":"https:\/\/eodhd.com\/financial-academy\/fundamental-analysis-examples\/arima-analysis-on-stock-trends#article","isPartOf":{"@id":"https:\/\/eodhd.com\/financial-academy\/fundamental-analysis-examples\/arima-analysis-on-stock-trends"},"author":{"name":"Vinicius Marignac","@id":"https:\/\/eodhd.com\/financial-academy\/#\/schema\/person\/51d78f664703cec9b788385398192be7"},"headline":"ARIMA Analysis on Stock Returns","datePublished":"2024-03-11T15:24:29+00:00","dateModified":"2025-02-05T11:44:43+00:00","mainEntityOfPage":{"@id":"https:\/\/eodhd.com\/financial-academy\/fundamental-analysis-examples\/arima-analysis-on-stock-trends"},"wordCount":1458,"publisher":{"@id":"https:\/\/eodhd.com\/financial-academy\/#organization"},"image":{"@id":"https:\/\/eodhd.com\/financial-academy\/fundamental-analysis-examples\/arima-analysis-on-stock-trends#primaryimage"},"thumbnailUrl":"https:\/\/eodhd.com\/financial-academy\/wp-content\/uploads\/2024\/03\/ARIMA_Analysis_On_Stock-Returns.jpg","articleSection":["Fundamental Analysis Examples","Stocks Data Analysis Examples","Stocks Price Predictions Examples"],"inLanguage":"en-US"},{"@type":"WebPage","@id":"https:\/\/eodhd.com\/financial-academy\/fundamental-analysis-examples\/arima-analysis-on-stock-trends","url":"https:\/\/eodhd.com\/financial-academy\/fundamental-analysis-examples\/arima-analysis-on-stock-trends","name":"ARIMA Analysis on Stock Returns | EODHD APIs Academy","isPartOf":{"@id":"https:\/\/eodhd.com\/financial-academy\/#website"},"primaryImageOfPage":{"@id":"https:\/\/eodhd.com\/financial-academy\/fundamental-analysis-examples\/arima-analysis-on-stock-trends#primaryimage"},"image":{"@id":"https:\/\/eodhd.com\/financial-academy\/fundamental-analysis-examples\/arima-analysis-on-stock-trends#primaryimage"},"thumbnailUrl":"https:\/\/eodhd.com\/financial-academy\/wp-content\/uploads\/2024\/03\/ARIMA_Analysis_On_Stock-Returns.jpg","datePublished":"2024-03-11T15:24:29+00:00","dateModified":"2025-02-05T11:44:43+00:00","description":"Discover ARIMA modeling in Python for precise time series analysis. Learn its components and practical application steps, illustrated with a real-world example using NVIDIA stock data. Perfect for mastering financial forecasting.","breadcrumb":{"@id":"https:\/\/eodhd.com\/financial-academy\/fundamental-analysis-examples\/arima-analysis-on-stock-trends#breadcrumb"},"inLanguage":"en-US","potentialAction":[{"@type":"ReadAction","target":["https:\/\/eodhd.com\/financial-academy\/fundamental-analysis-examples\/arima-analysis-on-stock-trends"]}]},{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/eodhd.com\/financial-academy\/fundamental-analysis-examples\/arima-analysis-on-stock-trends#primaryimage","url":"https:\/\/eodhd.com\/financial-academy\/wp-content\/uploads\/2024\/03\/ARIMA_Analysis_On_Stock-Returns.jpg","contentUrl":"https:\/\/eodhd.com\/financial-academy\/wp-content\/uploads\/2024\/03\/ARIMA_Analysis_On_Stock-Returns.jpg","width":2000,"height":1142},{"@type":"BreadcrumbList","@id":"https:\/\/eodhd.com\/financial-academy\/fundamental-analysis-examples\/arima-analysis-on-stock-trends#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https:\/\/eodhd.com\/financial-academy\/"},{"@type":"ListItem","position":2,"name":"ARIMA Analysis on Stock Returns"}]},{"@type":"WebSite","@id":"https:\/\/eodhd.com\/financial-academy\/#website","url":"https:\/\/eodhd.com\/financial-academy\/","name":"Financial APIs Academy | EODHD","description":"Financial Stock Market Academy","publisher":{"@id":"https:\/\/eodhd.com\/financial-academy\/#organization"},"potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/eodhd.com\/financial-academy\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"en-US"},{"@type":"Organization","@id":"https:\/\/eodhd.com\/financial-academy\/#organization","name":"EODHD (EOD Historical Data)","url":"https:\/\/eodhd.com\/financial-academy\/","logo":{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/eodhd.com\/financial-academy\/#\/schema\/logo\/image\/","url":"https:\/\/eodhd.com\/financial-academy\/wp-content\/uploads\/2023\/12\/EODHD-Logo.png","contentUrl":"https:\/\/eodhd.com\/financial-academy\/wp-content\/uploads\/2023\/12\/EODHD-Logo.png","width":159,"height":82,"caption":"EODHD (EOD Historical Data)"},"image":{"@id":"https:\/\/eodhd.com\/financial-academy\/#\/schema\/logo\/image\/"},"sameAs":["https:\/\/www.facebook.com\/eodhistoricaldata","https:\/\/x.com\/EOD_data","https:\/\/www.reddit.com\/r\/EODHistoricalData\/","https:\/\/eod-historical-data.medium.com\/"]},{"@type":"Person","@id":"https:\/\/eodhd.com\/financial-academy\/#\/schema\/person\/51d78f664703cec9b788385398192be7","name":"Vinicius Marignac","image":{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/eodhd.com\/financial-academy\/#\/schema\/person\/image\/","url":"https:\/\/secure.gravatar.com\/avatar\/e4be34d69c00f800295039cd85a135c00438362eb54dd84cb42d4d16b96b81e4?s=96&d=mm&r=g","contentUrl":"https:\/\/secure.gravatar.com\/avatar\/e4be34d69c00f800295039cd85a135c00438362eb54dd84cb42d4d16b96b81e4?s=96&d=mm&r=g","caption":"Vinicius Marignac"},"description":"Researcher at Geneva Finance Research Institute, Financial &amp; Risk Analyst, Python Developer","gender":"male","knowsAbout":["Python","R","EViews"],"knowsLanguage":["English","French","Portuguese","Spanish"],"jobTitle":"Researcher","worksFor":"Geneva Finance Research Institute","url":"https:\/\/eodhd.com\/financial-academy\/author\/viniciusmarignac"}]}},"jetpack_featured_media_url":"https:\/\/eodhd.com\/financial-academy\/wp-content\/uploads\/2024\/03\/ARIMA_Analysis_On_Stock-Returns.jpg","jetpack_shortlink":"https:\/\/wp.me\/pdOdVT-1lh","jetpack_sharing_enabled":true,"acf":[],"_links":{"self":[{"href":"https:\/\/eodhd.com\/financial-academy\/wp-json\/wp\/v2\/posts\/5163","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/eodhd.com\/financial-academy\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/eodhd.com\/financial-academy\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/eodhd.com\/financial-academy\/wp-json\/wp\/v2\/users\/26"}],"replies":[{"embeddable":true,"href":"https:\/\/eodhd.com\/financial-academy\/wp-json\/wp\/v2\/comments?post=5163"}],"version-history":[{"count":33,"href":"https:\/\/eodhd.com\/financial-academy\/wp-json\/wp\/v2\/posts\/5163\/revisions"}],"predecessor-version":[{"id":6231,"href":"https:\/\/eodhd.com\/financial-academy\/wp-json\/wp\/v2\/posts\/5163\/revisions\/6231"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/eodhd.com\/financial-academy\/wp-json\/wp\/v2\/media\/5212"}],"wp:attachment":[{"href":"https:\/\/eodhd.com\/financial-academy\/wp-json\/wp\/v2\/media?parent=5163"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/eodhd.com\/financial-academy\/wp-json\/wp\/v2\/categories?post=5163"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/eodhd.com\/financial-academy\/wp-json\/wp\/v2\/tags?post=5163"},{"taxonomy":"coding-language","embeddable":true,"href":"https:\/\/eodhd.com\/financial-academy\/wp-json\/wp\/v2\/coding-language?post=5163"},{"taxonomy":"ready-to-go-solution","embeddable":true,"href":"https:\/\/eodhd.com\/financial-academy\/wp-json\/wp\/v2\/ready-to-go-solution?post=5163"},{"taxonomy":"qualification","embeddable":true,"href":"https:\/\/eodhd.com\/financial-academy\/wp-json\/wp\/v2\/qualification?post=5163"},{"taxonomy":"financial-apis-category","embeddable":true,"href":"https:\/\/eodhd.com\/financial-academy\/wp-json\/wp\/v2\/financial-apis-category?post=5163"},{"taxonomy":"financial-apis-manuals","embeddable":true,"href":"https:\/\/eodhd.com\/financial-academy\/wp-json\/wp\/v2\/financial-apis-manuals?post=5163"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}