{
"cells": [
{
"cell_type": "markdown",
"metadata": {},
"source": [
"# Downloading and Analyzing Stock Data with fintorch\n",
"\n",
"\n",
" \n",
"\n",
"\n",
"In this tutorial, we'll explore how to use the `fintorch` Python package to download historical stock data and prepare it for machine learning tasks. Specifically, we'll focus on Apple (AAPL), Microsoft (MSFT), and Google (GOOG) stocks from January 1, 2015, to June 30, 2023. We'll also discuss how `fintorch` integrates with the `neuralforecast` library by providing a `TimeSeriesDataset` that's compatible with its data structures, making it easier to organize data for training, validation, and testing.\n"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"## Overview\n",
"\n",
"\n",
"The `fintorch` library is designed for financial data analysis and machine learning applications. It simplifies the process of downloading, storing, and preparing financial datasets. Under the hood, it uses `yfinance` to retrieve data from Yahoo Finance, ensuring a reliable and comprehensive data source.\n",
"\n",
"One of the key features of `fintorch` is that it provides data in a `TimeSeriesDataset` format compatible with the `neuralforecast` library. This compatibility streamlines the process of organizing time series data for machine learning models, including handling train/validation/test splits.\n"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"## Step-by-Step Explanation\n",
"\n",
"Let's break down the code to understand how each part contributes to downloading and analyzing the stock data."
]
},
{
"cell_type": "code",
"execution_count": 1,
"metadata": {},
"outputs": [],
"source": [
"import logging\n",
"from datetime import date\n",
"from pathlib import Path\n",
"\n",
"from fintorch.datasets import stockticker"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"- **Importing Modules**:\n",
" - `logging`: For logging information during execution.\n",
" - `date` from `datetime`: To specify the start and end dates for the data.\n",
" - `Path` from `pathlib`: To handle file system paths.\n",
" - `stockticker` from `fintorch.datasets`: Contains the `StockTicker` class for handling stock data."
]
},
{
"cell_type": "code",
"execution_count": 2,
"metadata": {},
"outputs": [],
"source": [
"# Set logging level to INFO\n",
"logging.basicConfig(level=logging.INFO)"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"- **Setting Logging Level**: Configures the logging system to display messages of level `INFO` and higher.\n"
]
},
{
"cell_type": "code",
"execution_count": 3,
"metadata": {},
"outputs": [],
"source": [
"# Parameters\n",
"tickers = [\"AAPL\", \"MSFT\", \"GOOG\"]\n",
"data_path = Path(\"~/.fintorch_data/stocktickers/\").expanduser()\n",
"start_date = date(2015, 1, 1)\n",
"end_date = date(2023, 6, 30)"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"- **Defining Parameters**:\n",
" - `tickers`: A list of stock ticker symbols we're interested in.\n",
" - `data_path`: The directory path where the stock data will be stored locally.\n",
" - `start_date` and `end_date`: Define the time range for the historical data."
]
},
{
"cell_type": "code",
"execution_count": 4,
"metadata": {},
"outputs": [],
"source": [
"# Create a dictionary mapping from tickers to index\n",
"ticker_index = {ticker: index for index, ticker in enumerate(tickers)}"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"- **Mapping Tickers to Indices**:\n",
" - Creates a dictionary that maps each ticker symbol to a unique index. This can be useful for referencing and organizing data.\n"
]
},
{
"cell_type": "code",
"execution_count": 5,
"metadata": {},
"outputs": [
{
"name": "stderr",
"output_type": "stream",
"text": [
"INFO:root:StockTicker dataset initialization\n",
"INFO:root:force reloading stock data from yahoo finance\n",
"[*********************100%%**********************] 3 of 3 completed\n",
"INFO:root:All datsets loaded sucessfully\n",
"INFO:root:loaded dataset:TimeSeriesDataset(n_data=8,655, n_groups=3)\n"
]
}
],
"source": [
"# Load the stock dataset\n",
"stockdata = stockticker.StockTicker(\n",
" data_path,\n",
" tickers=tickers,\n",
" start_date=start_date,\n",
" end_date=end_date,\n",
" mapping=ticker_index,\n",
" force_reload=True,\n",
")"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"- **Loading the Stock Data**:\n",
" - Instantiates the `StockTicker` class with the specified parameters.\n",
" - **Parameters Explained**:\n",
" - `data_path`: Where the data will be stored.\n",
" - `tickers`: The list of stock symbols.\n",
" - `start_date` and `end_date`: The date range for the data.\n",
" - `mapping`: The ticker-to-index mapping.\n",
" - `force_reload=True`: Forces the data to be re-downloaded even if it already exists locally.\n",
" - **Under the Hood**:\n",
" - The `StockTicker` class uses `yfinance` to fetch the stock data from Yahoo Finance.\n",
" - It organizes the data into a `TimeSeriesDataset` compatible with the `neuralforecast` library."
]
},
{
"cell_type": "code",
"execution_count": 6,
"metadata": {},
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
" ds y unique_id\n",
"count 8655 8655.000000 8655.000000\n",
"mean 2020-02-26 03:56:05.407000 118.096947 1.000000\n",
"min 2015-01-02 00:00:00 20.697262 0.000000\n",
"25% 2017-11-10 00:00:00 49.313992 0.000000\n",
"50% 2020-09-24 00:00:00 103.036682 1.000000\n",
"75% 2022-07-15 00:00:00 155.169968 2.000000\n",
"max 2023-06-29 00:00:00 344.776672 2.000000\n",
"std NaN 80.441103 0.816544\n"
]
}
],
"source": [
"print(stockdata.df_timeseries_dataset.to_pandas().describe())"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"## Integration with `neuralforecast`\n",
"\n",
"### TimeSeriesDataset Compatibility\n",
"\n",
"The `stockdata.df_timeseries_dataset` provided by `fintorch` is designed to be compatible with the `TimeSeriesDataset` format used by the `neuralforecast` library. This compatibility is significant because it:\n",
"\n",
"- **Simplifies Data Preparation**: The data is already organized in a way that's suitable for machine learning models, reducing the need for additional data wrangling.\n",
"- **Eases Train/Validation/Test Splits**: `neuralforecast` has built-in methods for splitting datasets, and having data in the compatible format allows you to leverage these methods directly.\n",
"- **Facilitates Model Training and Evaluation**: Consistent data formatting ensures smoother integration with `neuralforecast` models and evaluation metrics.\n"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"### Example of Using TimeSeriesDataset with `neuralforecast`\n",
"\n",
"Here's how you might proceed to use the dataset with `neuralforecast`:"
]
},
{
"cell_type": "code",
"execution_count": 7,
"metadata": {},
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
" ds y unique_id\n",
"0 2022-01-03 179.076599 0\n",
"1 2022-01-04 176.803833 0\n",
"2 2022-01-05 172.100861 0\n",
"3 2022-01-06 169.227921 0\n",
"4 2022-01-07 169.395172 0\n",
"... ... ... ...\n",
"8650 2023-06-23 122.718620 2\n",
"8651 2023-06-26 118.798248 2\n",
"8652 2023-06-27 118.718452 2\n",
"8653 2023-06-28 120.783379 2\n",
"8654 2023-06-29 119.716003 2\n",
"\n",
"[8655 rows x 3 columns]\n"
]
}
],
"source": [
"print(stockdata.df_timeseries_dataset.to_pandas())"
]
},
{
"cell_type": "code",
"execution_count": 8,
"metadata": {},
"outputs": [
{
"name": "stderr",
"output_type": "stream",
"text": [
"Seed set to 1\n",
"GPU available: True (cuda), used: True\n",
"TPU available: False, using: 0 TPU cores\n",
"HPU available: False, using: 0 HPUs\n",
"You are using a CUDA device ('NVIDIA GeForce RTX 3090') that has Tensor Cores. To properly utilize them, you should set `torch.set_float32_matmul_precision('medium' | 'high')` which will trade-off precision for performance. For more details, read https://pytorch.org/docs/stable/generated/torch.set_float32_matmul_precision.html#torch.set_float32_matmul_precision\n",
"LOCAL_RANK: 0 - CUDA_VISIBLE_DEVICES: [0]\n",
"\n",
" | Name | Type | Params | Mode \n",
"-------------------------------------------------------\n",
"0 | loss | MAE | 0 | train\n",
"1 | padder_train | ConstantPad1d | 0 | train\n",
"2 | scaler | TemporalNorm | 0 | train\n",
"3 | blocks | ModuleList | 2.4 M | train\n",
"-------------------------------------------------------\n",
"2.4 M Trainable params\n",
"555 Non-trainable params\n",
"2.4 M Total params\n",
"9.786 Total estimated model params size (MB)\n"
]
},
{
"name": "stdout",
"output_type": "stream",
"text": [
"Epoch 999: 100%|██████████| 1/1 [00:00<00:00, 48.77it/s, v_num=12, train_loss_step=2.200, train_loss_epoch=2.200, valid_loss=2.410] "
]
},
{
"name": "stderr",
"output_type": "stream",
"text": [
"`Trainer.fit` stopped: `max_steps=1000` reached.\n"
]
},
{
"name": "stdout",
"output_type": "stream",
"text": [
"Epoch 999: 100%|██████████| 1/1 [00:00<00:00, 45.46it/s, v_num=12, train_loss_step=2.200, train_loss_epoch=2.200, valid_loss=2.410]\n"
]
},
{
"name": "stderr",
"output_type": "stream",
"text": [
"GPU available: True (cuda), used: True\n",
"TPU available: False, using: 0 TPU cores\n",
"HPU available: False, using: 0 HPUs\n",
"LOCAL_RANK: 0 - CUDA_VISIBLE_DEVICES: [0]\n"
]
},
{
"name": "stdout",
"output_type": "stream",
"text": [
"Predicting DataLoader 0: 100%|██████████| 1/1 [00:00<00:00, 269.38it/s]\n"
]
},
{
"name": "stderr",
"output_type": "stream",
"text": [
"/home/marcel/Documents/research/FinTorch/.conda/lib/python3.11/site-packages/neuralforecast/core.py:199: FutureWarning: In a future version the predictions will have the id as a column. You can set the `NIXTLA_ID_AS_COL` environment variable to adopt the new behavior and to suppress this warning.\n",
" warnings.warn(\n"
]
}
],
"source": [
"from neuralforecast import NeuralForecast\n",
"from neuralforecast.models import NBEATS\n",
"\n",
"# Initialize the model\n",
"model = NBEATS(input_size=30, h=7)\n",
"\n",
"# Create a NeuralForecast object\n",
"nf = NeuralForecast(models=[model], freq='D')\n",
"\n",
"# Define validation and test sizes\n",
"val_size = 100 # Number of days for validation\n",
"test_size = 100 # Number of days for testing\n",
"\n",
"# Perform cross-validation\n",
"Y_hat_df = nf.cross_validation(\n",
" df=stockdata.df_timeseries_dataset.to_pandas(),\n",
" val_size=val_size,\n",
" test_size=test_size,\n",
" n_windows=None # Uses expanding window if None\n",
")\n"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"Here we plot the mean prediction of the cross validation function for the 4-folds"
]
},
{
"cell_type": "code",
"execution_count": 10,
"metadata": {},
"outputs": [
{
"data": {
"image/png": "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M88ktHIiIiIiIiIi/Y2rpw948cUXeeaZZzjqqKOwLCu2fPz48WzcuDGhlRMRERERERHpb3rco11eXk5ubm6n5Y2NjXHBe0/cfffdHHnkkaSmppKbm8sZZ5zBunXr4srMmDEDy7LipssuuyyuTHFxMaeccgpJSUnk5ubyox/9SOeOi4iIiIiISJ/ocdCeMmUK//73v2P328L1n/70J6ZNm9ajbS1atIi5c+fy7rvv8vrrrxMKhZg5cyaNjY1x5S699FJKSkpi07333htbF4lEOOWUUwgGgyxZsoQnnniCxx9/nFtuuaWnuyYiIiIiIiLypfX40PG77rqL2bNns2bNGsLhMA8++CBr1qxhyZIlLFq0qEfbeuWVV+LuP/744+Tm5vLRRx9x3HHHxZYnJSWRn5/f5TZee+011qxZwxtvvEFeXh6TJk3ijjvu4Prrr+e2227D4/H0dBdFRERERERE9lqPg/YxxxzD8uXLueeee5gwYQKvvfYahx9+OEuXLmXChAlfqjK1tbUAZGVlxS1/8skn+dvf/kZ+fj6nnnoqN998M0lJSQCx583Ly4uVnzVrFpdffjmrV69m8uTJnZ4nEAgQCARi9+vq6gCIRqNEo9EvtQ/S3o5qy31PbS2g90FvUlv3HrV171FbH3i6e031Gov0nh4HbYARI0bwxz/+MaEViUajXH311Rx99NEceuihseXnnXceQ4YMobCwkJUrV3L99dezbt06nn/+eQBKS0vjQjYQu19aWtrlc919993cfvvtnZZv3bqV1NTURO3SQcsYQ3V1deycetl31NYCeh/0JrV171Fb9x619YGnu9e0vr6+D2slcnDpcdBuu252dwYPHrxXFZk7dy6rVq3i7bffjlv+ve99LzY/YcIECgoKOOGEE9i4cSMjRozYq+e64YYbuPbaa2P36+rqKCoqoqioiLS0tL3aprSLRqMYYygqKsLh6PEwANIDamsBvQ96k9q696ite4/a+sDT3WvadhSniOx7PQ7aQ4cO3e2vnZFIpMeVuOKKK5g/fz6LFy9m0KBBuy07depUADZs2MCIESPIz8/n/fffjyuzc+dOgG7P6/Z6vXi93k7LHQ6H/oNJkLa2VHvue2prAb0PepPauveorXuP2vrA09VrqtdXpPf0OGgvW7Ys7n4oFGLZsmX86le/4s477+zRtowxXHnllbzwwgssXLiQYcOGfeFjli9fDkBBQQEA06ZN484776SsrCx22bHXX3+dtLQ0xo0b16P6iIiIiIiIiHxZPQ7ahx12WKdlU6ZMobCwkF/84hecddZZe7ytuXPnMm/ePP75z3+SmpoaO6c6PT0dv9/Pxo0bmTdvHnPmzCE7O5uVK1dyzTXXcNxxxzFx4kQAZs6cybhx47jgggu49957KS0t5aabbmLu3Lld9lqLiIiIiIiI7EsJO35k9OjRfPDBBz16zG9/+1tqa2uZMWMGBQUFsemZZ54BwOPx8MYbbzBz5kzGjBnDddddx9lnn81LL70U24bT6WT+/Pk4nU6mTZvGt7/9bb7zne/ws5/9LFG7JiIiIiIiIrLHetyjvesgCsYYSkpKuO222xg1alSPtmWM2e36oqKiPbo295AhQ3j55Zd79NwiIiIiIiIi+0KPg3ZGRkanwdDaRjV8+umnE1YxERERERERkf6ox0F7wYIFcfcdDgc5OTmMHDkSl2uvLsstIiIiIiIicsDocTI+/vjj90U9RERERERERA4IexS0//Wvf+3xBk877bS9royIiIiIiIhIf7dHQfuMM87Yo41ZlkUkEvky9RERERERERHp1/YoaEej0X1dDxEREREREZEDQsKuoy0iIiIiIiIiezEYGkBjYyOLFi2iuLiYYDAYt+6qq65KSMVERERERERE+qMeB+1ly5YxZ84cmpqaaGxsJCsri4qKCpKSksjNzVXQFhERERERkYNajw8dv+aaazj11FOprq7G7/fz7rvv8vnnn3PEEUdw33337Ys6ioiIiIiIiPQbPQ7ay5cv57rrrsPhcOB0OgkEAhQVFXHvvffy05/+dF/UUURERERERKTf6HHQdrvdOBz2w3JzcykuLgYgPT2drVu3JrZ2IiIiIiIiIv1Mj8/Rnjx5Mh988AGjRo3i+OOP55ZbbqGiooK//vWvHHroofuijiIiIiIiIiL9Ro97tO+66y4KCgoAuPPOO8nMzOTyyy+nvLycP/zhDwmvoIiIiIiIiEh/0uMe7SlTpsTmc3NzeeWVVxJaIREREREREZH+rMc92v/3f//H5s2b90VdRERERERERPq9Hgft5557jpEjRzJ9+nQeeeQRKioq9kW9RERERERERPqlHgftFStWsHLlSmbMmMF9991HYWEhp5xyCvPmzaOpqWlf1FFERERERESk3+hx0AYYP348d911F5s2bWLBggUMHTqUq6++mvz8/ETXT0RERERERKRf2aug3VFycjJ+vx+Px0MoFEpEnURERERERET6rb0K2ps3b+bOO+9k/PjxTJkyhWXLlnH77bdTWlqa6PqJiIiIiIiI9Cs9vrzXUUcdxQcffMDEiRP57ne/y7nnnsvAgQP3Rd1ERERERERE+p0eB+0TTjiBRx99lHHjxu2L+oiIiIiIiIj0az0O2nfeeee+qIeIiIiIiIjIAeFLD4YmIiIiIiIiIu0UtEVEREREREQSSEFbREREREREJIF6HLR3d63sioqKL1UZERERERERkf6ux0H7nHPOwRjTafnOnTuZMWNGIuokIiIiIiIi0m/1OGgXFxdzySWXxC0rLS1lxowZjBkzJmEVExEREREREemPehy0X375ZZYsWcK1114LwI4dOzj++OOZMGECzz77bMIrKCIiIiIiItKf9Pg62jk5Obz22mscc8wxAMyfP5/DDz+cJ598EodDY6uJiIiIiIjIwa3HQRugqKiI119/nWOPPZaTTjqJv/71r1iWlei6iYiIiIiIiPQ7exS0MzMzuwzSTU1NvPTSS2RnZ8eWVVVVJa52IiIiIiIiIv3MHgXtBx54YB9XQ0REREREROTAsEdB+8ILL9zX9RARERERERE5IOzVqOOvvvpqp+WvvfYa//nPfxJSKREREREREZH+qsdB+yc/+QmRSKTT8mg0yk9+8pOEVEpERERERESkv+px0P7ss88YN25cp+Vjxoxhw4YNCamUiIiIiIiISH/V46Cdnp7Opk2bOi3fsGEDycnJCamUiIiIiIiISH/V46B9+umnc/XVV7Nx48bYsg0bNnDddddx2mmnJbRyIiIiIiIiIv1Nj4P2vffeS3JyMmPGjGHYsGEMGzaMsWPHkp2dzX333bcv6igiIiIiIiLSb+zR5b06Sk9PZ8mSJbz++uusWLECv9/PxIkTOe644/ZF/URERERERET6lR4HbQDLspg5cyYzZ85MdH1ERERERERE+rUeHzoOsGjRIk499VRGjhzJyJEjOe2003jrrbcSXTcRERERERGRfqfHQftvf/sbJ554IklJSVx11VVcddVV+P1+TjjhBObNm7cv6igiIiIiIiLSb/T40PE777yTe++9l2uuuSa27KqrruJXv/oVd9xxB+edd15CKygiIiIiIiLSn/S4R3vTpk2ceuqpnZafdtppbN68OSGVEhEREREREemvehy0i4qKePPNNzstf+ONNygqKkpIpURERERERET6qx4fOn7ddddx1VVXsXz5cqZPnw7AO++8w+OPP86DDz6Y8AqKiIiIiIiI9Cc9DtqXX345+fn5/PKXv+TZZ58FYOzYsTzzzDOcfvrpCa+giIiIiIiISH+yV9fRPvPMMznzzDMTXRcRERERERGRfq/H52gPHz6cysrKTstramoYPnx4QiolIiIiIiIi0l/1OGhv2bKFSCTSaXkgEGD79u0JqZSIiIiIiIhIf7XHh47/61//is2/+uqrpKenx+5HIhHefPNNhg4dmtDKiYiIiIiIiPQ3exy0zzjjDAAsy+LCCy+MW+d2uxk6dCi//OUvE1o5ERERERERkf5mj4N2NBoFYNiwYXzwwQcMGDBgn1VKREREREREpL/q8ajjmzdv3hf1EBERERERETkg7PFgaEuXLmX+/Plxy/7yl78wbNgwcnNz+d73vkcgEEh4BUVERERERET6kz0O2j/72c9YvXp17P4nn3zCxRdfzIknnshPfvITXnrpJe6+++59UkkRERERERGR/mKPg/by5cs54YQTYveffvpppk6dyh//+EeuvfZafv3rX/Pss8/uk0qKiIiIiIiI9Bd7HLSrq6vJy8uL3V+0aBGzZ8+O3T/yyCPZunVrYmsnIiIiIiIi0s/scdDOy8uLDYQWDAb5+OOPOeqoo2Lr6+vrcbvdia+hiIiIiIiISD+yx0F7zpw5/OQnP+Gtt97ihhtuICkpiWOPPTa2fuXKlYwYMWKfVFJERERERESkv9jjy3vdcccdnHXWWRx//PGkpKTwxBNP4PF4YusfffRRZs6cuU8qKSIiIiIiItJf7HHQHjBgAIsXL6a2tpaUlBScTmfc+ueee46UlJSEV1BERERERESkP9njoN0mPT29y+VZWVlfujIiIiIiIiIi/d0en6MtIiIiIiIiIl9MQVtEREREREQkgfo0aN99990ceeSRpKamkpubyxlnnMG6deviyrS0tDB37lyys7NJSUnh7LPPZufOnXFliouLOeWUU0hKSiI3N5cf/ehHhMPh3twVEREREREREaCPg/aiRYuYO3cu7777Lq+//jqhUIiZM2fS2NgYK3PNNdfw0ksv8dxzz7Fo0SJ27NjBWWedFVsfiUQ45ZRTCAaDLFmyhCeeeILHH3+cW265pS92SURERERERA5yPR4MLZFeeeWVuPuPP/44ubm5fPTRRxx33HHU1tby5z//mXnz5vG1r30NgMcee4yxY8fy7rvvctRRR/Haa6+xZs0a3njjDfLy8pg0aRJ33HEH119/PbfddlvcJchERERERERE9rX96hzt2tpaoH0E848++ohQKMSJJ54YKzNmzBgGDx7M0qVLAVi6dCkTJkwgLy8vVmbWrFnU1dWxevXqXqy9iIiIiIiISB/3aHcUjUa5+uqrOfroozn00EMBKC0txePxkJGREVc2Ly+P0tLSWJmOIbttfdu6rgQCAQKBQOx+XV1drA7RaDQh+3Mwa2tHteW+p7YW0PugN6mte4/auveorQ883b2meo1Fes9+E7Tnzp3LqlWrePvtt/f5c919993cfvvtnZZv3bqV1NTUff78BzpjDNXV1ViWhWVZfV2dA5raWkDvg96ktu49auveo7Y+8HT3mtbX1/dhrUQOLvtF0L7iiiuYP38+ixcvZtCgQbHl+fn5BINBampq4nq1d+7cSX5+fqzM+++/H7e9tlHJ28rs6oYbbuDaa6+N3a+rq6OoqIiioiLS0tIStVsHrWg0ijGGoqIiHI796uyEA47aWkDvg96ktu49auveo7Y+8HT3mrYdxSki+16fBm1jDFdeeSUvvPACCxcuZNiwYXHrjzjiCNxuN2+++SZnn302AOvWraO4uJhp06YBMG3aNO68807KysrIzc0F4PXXXyctLY1x48Z1+bxerxev19tpucPh0H8wCdLWlmrPfU9tLaD3QW9SW/cetXXvUVsfeLp6TfX6ivSePg3ac+fOZd68efzzn/8kNTU1dk51eno6fr+f9PR0Lr74Yq699lqysrJIS0vjyiuvZNq0aRx11FEAzJw5k3HjxnHBBRdw7733Ulpayk033cTcuXO7DNMiIiIiIiIi+1KfBu3f/va3AMyYMSNu+WOPPcZFF10EwP3334/D4eDss88mEAgwa9YsHnnkkVhZp9PJ/Pnzufzyy5k2bRrJyclceOGF/OxnP+ut3RARERERERGJ6fNDx7+Iz+fj4Ycf5uGHH+62zJAhQ3j55ZcTWTURERERERGRvaITNUREREREREQSSEFbREREREREJIEUtEVEREREREQSSEFbREREREREJIEUtEVEREREREQS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O3bsoLCwcI//w7YsSPO5SfI47cO998jeHbZ9sPC5ncwan8+s8fkEw1He2VjBK5+UsvizcsJRg8/twOdyth7C7sDrar11O1uXO/C5nXhdDvxuJ/npPoYNSGZIdjIDUjw9eJ06UM+0iIiIiBwE9K1XvhSnw8K5S+9kNOomXOemMMOvX8b3Ex6Xg6+OzuWro3P7uioiIiIiIgc8pSARERERERGRBFLQFhEREREREUkgBW0RERERERGRBFLQFhEREREREUkgBW0RERERERGRBFLQFhEREREREUkgBW0RERERERGRBFLQFhEREREREUkgBW0RERERERGRBFLQFhEREREREUkgBW0RERERERGRBFLQFhEREREREUkgBW0RERERERGRBFLQFhEREREREUkgBW0RERERERGRBFLQFhEREREREUkgBW0RERERERGRBFLQFhEREREREUkgBW0RERERERGRBFLQFhEREREREUkgBW0RERERERGRBFLQFhEREREREUkgBW0RERERERGRBFLQFhEREREREUkgBW0RERERERGRBFLQFhEREREREUmgPg3aixcv5tRTT6WwsBDLsnjxxRfj1l900UVYlhU3nXzyyXFlqqqqOP/880lLSyMjI4OLL76YhoaGXtwLERERERERkXZ9GrQbGxs57LDDePjhh7stc/LJJ1NSUhKbnnrqqbj1559/PqtXr+b1119n/vz5LF68mO9973v7uuoiIiIiIiIiXXL15ZPPnj2b2bNn77aM1+slPz+/y3Vr167llVde4YMPPmDKlCkAPPTQQ8yZM4f77ruPwsLChNdZREREREREZHf2+3O0Fy5cSG5uLqNHj+byyy+nsrIytm7p0qVkZGTEQjbAiSeeiMPh4L333uuL6oqIiIiIiMhBrk97tL/IySefzFlnncWwYcPYuHEjP/3pT5k9ezZLly7F6XRSWlpKbm5u3GNcLhdZWVmUlpZ2u91AIEAgEIjdr6urAyAajRKNRvfNzhxE2tpRbbnvqa0F9D7oTWrr3qO27j1q6wNPd6+pXmOR3rNfB+1zzjknNj9hwgQmTpzIiBEjWLhwISeccMJeb/fuu+/m9ttv77R869atpKam7vV2xWaMobq6OjaAnew7amsBvQ96k9q696ite4/a+sDT3WtaX1/fh7USObjs10F7V8OHD2fAgAFs2LCBE044gfz8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MJvkzHTcXl+X4TQ9ZwwDR4/5wu06/Q4KRw2lcNTQPa1Jj+odjRrCwQjhYLT9NhSx50NRgs5aho8aquvMioiIiIjIQUdBu4/ZI2tO7Otq9JjDYeHxufB0cQnIaDRKcXF971dKRERERERkP6DuRhEREREREZEEUtAWERERERERSSAFbREREREREZEEUtAWERERERERSSAFbREREREREZEEUtAWERERERERSSAFbREREREREZEEUtAWERERERERSSAFbREREREREZEEUtAWERERERERSSAFbREREREREZEEUtAWERERERERSSAFbREREREREZEEUtAWERERERERSSAFbREREREREZEEcvV1BfYHxhgA6urq+rgmB4ZoNEp9fT11dXU4HPotZ19SWwvofdCb1Na9R23de9TWB57uXtO277pt331FZN9R0Abq6+sBKCoq6uOaiIiIiIjsW/X19aSnp/d1NUQOaJbRT1pEo1F27NhBamoqlmX1dXX6vbq6OoqKiti6dStpaWl9XZ0DmtpaQO+D3qS27j1q696jtj7wdPeaGmOor6+nsLBQRy+I7GPq0QYcDgeDBg3q62occNLS0vQfdi9RWwvofdCb1Na9R23de9TWB56uXlP1ZIv0Dv2UJSIiIiIiIpJACtoiIiIiIiIiCaSgLQnn9Xq59dZb8Xq9fV2VA57aWkDvg96ktu49auveo7Y+8Og1Fel7GgxNREREREREJIHUoy0iIiIiIiKSQAraIiIiIiIiIgmkoC0iIiIiIiKSQAra/djdd9/NkUceSWpqKrm5uZxxxhmsW7curkxLSwtz584lOzublJQUzj77bHbu3Blbv2LFCs4991yKiorw+/2MHTuWBx98MG4bb7/9NkcffTTZ2dn4/X7GjBnD/fff/4X1M8Zwyy23UFBQgN/v58QTT+Szzz6LKzN06FAsy4qb7rnnnt1ut6SkhPPOO49DDjkEh8PB1Vdf3anM448/3mm7Pp/vC+vcnYO1rZ9//nlOOukkcnJySEtLY9q0abz66qs9bpsDxYHwPgD497//zdSpU/H7/WRmZnLGGWd84bZXrlzJsccei8/no6ioiHvvvTdu/erVqzn77LNj77MHHnjgC7e5O2rr7tsa4IEHHmD06NH4/X6Kioq45ppraGlp+cJtd+VgbeuWlhYuuugiJkyYgMvl6rL8woULO31uWpZFaWnpF9a7KwdrWy9cuJDTTz+dgoICkpOTmTRpEk8++WRcmT/+8Y8ce+yxZGZmkpmZyYknnsj777//hXXua/39Ne3uPW5ZFh988MFut71w4UIOP/xwvF4vI0eO5PHHH49bv3jxYk499VQKCwuxLIsXX3zxC+srckAx0m/NmjXLPPbYY2bVqlVm+fLlZs6cOWbw4MGmoaEhVuayyy4zRUVF5s033zQffvihOeqoo8z06dNj6//85z+bq666yixcuNBs3LjR/PWvfzV+v9889NBDsTIff/yxmTdvnlm1apXZvHmz+etf/2qSkpLM73//+93W75577jHp6enmxRdfNCtWrDCnnXaaGTZsmGlubo6VGTJkiPnZz35mSkpKYlPH+ndl8+bN5qqrrjJPPPGEmTRpkvnBD37Qqcxjjz1m0tLS4rZbWlr6RU3arYO1rX/wgx+Yn//85+b9998369evNzfccINxu93m448/7lHbHCgOhPfB3//+d5OZmWl++9vfmnXr1pnVq1ebZ555Zrfbra2tNXl5eeb88883q1atMk899ZTx+/1x9Xn//ffND3/4Q/PUU0+Z/Px8c//99+9ps3ZJbd19Wz/55JPG6/WaJ5980mzevNm8+uqrpqCgwFxzzTV73L4dHaxt3dDQYC677DLzhz/8wcyaNcucfvrpncosWLDAAGbdunVxn52RSOSLmrVLB2tb33nnneamm24y77zzjtmwYYN54IEHjMPhMC+99FKszHnnnWcefvhhs2zZMrN27Vpz0UUXmfT0dLNt27Y9bt++0N9f00AgEPfeLikpMZdccokZNmyYiUaj3W5306ZNJikpyVx77bVmzZo15qGHHjJOp9O88sorsTIvv/yyufHGG83zzz9vAPPCCy/0tHlF+jUF7QNIWVmZAcyiRYuMMcbU1NQYt9ttnnvuuViZtWvXGsAsXbq02+18//vfN1/96ld3+1xnnnmm+fa3v93t+mg0avLz880vfvGL2LKamhrj9XrNU089FVs2ZMiQL/WF/Pjjj+82aKenp+/1dr/IwdjWbcaNG2duv/32btfv2jYHsv72PgiFQmbgwIHmT3/60x7tX5tHHnnEZGZmmkAgEFt2/fXXm9GjR3dZPlHvtY7U1u1tPXfuXPO1r30t7nHXXnutOfroo3v0XN05WNq6owsvvHC3Qbu6unqvt707B2Nbt5kzZ4757ne/2+36cDhsUlNTzRNPPPGln6s39bfXdFfBYNDk5OSYn/3sZ7t97h//+Mdm/Pjxccu+9a1vmVmzZnVZXkFbDkY6dPwAUltbC0BWVhYAH330EaFQiBNPPDFWZsyYMQwePJilS5fudjtt2+jKsmXLWLJkCccff3y3ZTZv3kxpaWncc6enpzN16tROz33PPfeQnZ3N5MmT+cUvfkE4HN79ju6hhoYGhgwZQlFREaeffjqrV69OyHbh4G3raDRKfX39buu8a9scyPrb++Djjz9m+/btOBwOJk+eTEFBAbNnz2bVqlW73c+lS5dy3HHH4fF4YstmzZrFunXrqK6u3u1jE0Vt3d7W06dP56OPPoodVrtp0yZefvll5syZs9tt76mDpa17YtKkSRQUFHDSSSfxzjvvJGy7B3Nbf1Gdm5qaCIVC/e7/kv72mu7qX//6F5WVlXz3u9/tdrtgf1Z13C7Yn1W72yeRg42rrysgiRGNRrn66qs5+uijOfTQQwEoLS3F4/GQkZERVzYvL6/b88uWLFnCM888w7///e9O6wYNGkR5eTnhcJjbbruNSy65pNv6tG0/Ly9vt8991VVXcfjhh5OVlcWSJUu44YYbKCkp4Ve/+tUe7Xd3Ro8ezaOPPsrEiROpra3lvvvuY/r06axevZpBgwZ9qW0fzG1933330dDQwDe/+c0u13fVNgeq/vg+2LRpEwC33XYbv/rVrxg6dCi//OUvmTFjBuvXr+/2S11paSnDhg3rtN22dZmZmd3WKxHU1vFtfd5551FRUcExxxyDMYZwOMxll13GT3/6027rvKcOprbeEwUFBfzud79jypQpBAIB/vSnPzFjxgzee+89Dj/88L3eLhzcbf3ss8/ywQcf8Pvf/77bMtdffz2FhYWdwtz+rD++prv685//zKxZs77wu1JpaWmX262rq6O5uRm/37/bx4scDNSjfYCYO3cuq1at4umnn97rbaxatYrTTz+dW2+9lZkzZ3Za/9Zbb/Hhhx/yu9/9jgceeICnnnoKgCeffJKUlJTY9NZbb+3xc1577bXMmDGDiRMnctlll/HLX/6Shx56iEAgABC33csuu2yPtztt2jS+853vMGnSJI4//nief/55cnJydvuf+p46WNt63rx53H777Tz77LPk5uZ2+RyJaJv+oj++D6LRKAA33ngjZ599NkcccQSPPfYYlmXx3HPPATB+/PjYdmfPnr3X+5ZIaut4Cxcu5K677uKRRx7h448/5vnnn+ff//43d9xxxx5voztq63ijR4/m//2//8cRRxzB9OnTefTRR5k+ffoeDUL1RQ7Wtl6wYAHf/e53+eMf/8j48eO7fJ577rmHp59+mhdeeOFLDWTa2/rja9rRtm3bePXVV7n44ovjlu/tdzGRg516tA8AV1xxBfPnz2fx4sVxv0Dm5+cTDAapqamJ+yV1586d5Ofnx21jzZo1nHDCCXzve9/jpptu6vJ52npZJkyYwM6dO7nttts499xzOe2005g6dWqs3MCBAykpKYk9V0FBQdxzT5o0qdt9mTp1KuFwmC1btjB69GiWL18eW5eWlvaFbdEdt9vN5MmT2bBhw15vAw7etn766ae55JJLeO6557rtXeiubQ5E/fV90LZ83LhxsfVer5fhw4dTXFwMwMsvv0woFAKI9Ujk5+fHjZDbtt22dfuS2rpzW998881ccMEFsZ6sCRMm0NjYyPe+9z1uvPFGHI69+w39YGvrvfWVr3yFt99++0tt42Bt60WLFnHqqady//33853vfKfLOt93333cc889vPHGG0ycOLHLMvuj/vqadvTYY4+RnZ3NaaedFre8q+8H3X1WpaWlqTdbpE1fnyQuey8ajZq5c+eawsJCs379+k7r2wbg+Pvf/x5b9umnn3YagGPVqlUmNzfX/OhHP9rj57799tvNkCFDdlu3/Px8c99998WW1dbW7nYADmOM+dvf/mYcDoepqqrao3p0NxjarsLhsBk9evRej8p7MLf1vHnzjM/nMy+++GK3z7+7tjmQ9Pf3Qdv9jgMZBYNBk5ubu9uRa9sG6AoGg7FlN9xwwz4dDE1t3X1bH3744ebHP/5x3OPmzZtn/H6/CYfDe7yfHffnYGzrjrobDK0rJ554ojnzzDP3qOyuDua2XrBggUlOTja/+c1vui3z85//3KSlpe12kLD9TX9/TTuWHTZsmLnuuuv26Ll//OMfm0MPPTRu2bnnnqvB0EQ6UNDuxy6//HKTnp5uFi5cGHdZhqampliZyy67zAwePNj897//NR9++KGZNm2amTZtWmz9J598YnJycsy3v/3tuG2UlZXFyvzmN78x//rXv8z69evN+vXrzZ/+9CeTmppqbrzxxt3W75577jEZGRnmn//8p1m5cqU5/fTT4y4psWTJEnP//feb5cuXm40bN5q//e1vJicnx3znO9/5wn1ftmyZWbZsmTniiCPMeeedZ5YtW2ZWr14dW3/77bebV1991WzcuNF89NFH5pxzzjE+ny+uTE8crG395JNPGpfLZR5++OG4OtfU1PSobQ4U/f19YIx9ybaBAweaV1991Xz66afm4osvNrm5ubv9waWmpsbk5eWZCy64wKxatco8/fTTnS4rEwgEYn+XBQUF5oc//KFZtmyZ+eyzz3rUxm3U1t239a233mpSU1PNU089ZTZt2mRee+01M2LECPPNb36zR23c5mBta2OMWb16tVm2bJk59dRTzYwZM2Lv4Tb333+/efHFF81nn31mPvnkE/ODH/zAOBwO88Ybb+xp88Y5WNv6v//9r0lKSjI33HBDXJ0rKyvjntvj8Zi///3vcWXq6+t71Ma97UB4TY0x5o033jCAWbt27R7td9vlvX70ox+ZtWvXmocffrjT5b3q6+tjf1OA+dWvfmWWLVtmPv/88z16DpH+TkG7HwO6nB577LFYmebmZvP973/fZGZmmqSkJHPmmWeakpKS2Ppbb721y210/IX017/+tRk/frxJSkoyaWlpZvLkyeaRRx75wuuIRqNRc/PNN5u8vDzj9XrNCSecYNatWxdb/9FHH5mpU6ea9PR04/P5zNixY81dd91lWlpa9mrfO9b56quvNoMHDzYej8fk5eWZOXPmxF37uacO1rY+/vjju6zzhRde2KO2OVD09/eBMXbv03XXXWdyc3NNamqqOfHEE82qVau+cN9XrFhhjjnmGOP1es3AgQPNPffcE7d+8+bNXe7X8ccf/4Xb7orauvu2DoVC5rbbbjMjRowwPp/PFBUVme9///t7fQmqg7mthwwZ0mW92/z85z+PtXNWVpaZMWOG+e9///uF2+3OwdrWF1544Rd+PnT3Wtx6661f2K596UB4TY2xe6M7Xtt7TyxYsMBMmjTJeDweM3z48E7/77ddHm933yFEDmSWMcYgIiIiIiIiIgmhUcdFREREREREEkhBW0RERERERCSBFLRFREREREREEkhBW0RERERERCSBFLRFREREREREEkhBW0RERERERCSBFLRFREREREREEkhBW0RERERERCSBFLRFRA5QF110EWeccUZfV2O/N2PGDCzLwrIsli9fvtuyF110Uazsiy++2Cv1ExERkf5HQVtEpB9qC3vdTbfddhsPPvggjz/+eJ/Ws7+E/UsvvZSSkhIOPfRQABYuXIhlWdTU1MSVe/DBBykpKemDGoqIiEh/4urrCoiISM91DHvPPPMMt9xyC+vWrYstS0lJISUlpS+q1i8lJSWRn5//heXS09NJT0/vhRqJiIhIf6YebRGRfig/Pz82paenY1lW3LKUlJROvckzZszgyiuv5OqrryYzM5O8vDz++Mc/0tjYyHe/+11SU1MZOXIk//nPf+Kea9WqVcyePZuUlBTy8vK44IILqKioiK3/+9//zoQJE/D7/WRnZ3PiiSfS2NjIbbfdxhNPPME///nPWE/7woULAbj++us55JBDSEpKYvjw4dx8882EQqHYNm+77TYmTZrEo48+yuDBg0lJSeH73/8+kUiEe++9l/z8fHJzc7nzzjvj6mpZFr/97W+ZPXs2fr+f4cOH8/e//71Hbbtlyxa++tWvApCZmYllWVx00UU92oaIiIgc3BS0RUQOIk888QQDBgzg/fff58orr+Tyyy/nG9/4BtOnT+fjjz9m5syZXHDBBTQ1NQFQU1PD1772NSZPnsyHH37IK6+8ws6dO/nmN78J2D3r5557Lv/7v//L2rVrWbhwIWeddRbGGH74wx/yzW9+k5NPPpmSkhJKSkqYPn06AKmpqTz++OOsWbOGBx98kD/+8Y/cf//9cXXduHEj//nPf3jllVd46qmn+POf/8wpp5zCtm3bWLRoET//+c+56aabeO+99+Ied/PNN3P22WezYsUKzj//fM455xzWrl27x21UVFTEP/7xDwDWrVtHSUkJDz744F63uYiIiBx8dOi4iMhB5LDDDuOmm24C4IYbbuCee+5hwIABXHrppQDccsst/Pa3v2XlypUcddRR/OY3v2Hy5MncddddsW08+uijFBUVsX79ehoaGgiHw5x11lkMGTIEgAkTJsTK+v1+AoFAp8Oy2+oAMHToUH74wx/y9NNP8+Mf/zi2PBqN8uijj5Kamsq4ceP46le/yrp163j55ZdxOByMHj2an//85yxYsICpU6fGHveNb3yDSy65BIA77riD119/nYceeohHHnlkj9rI6XSSlZUFQG5uLhkZGXv0OBEREZE2CtoiIgeRiRMnxuadTifZ2dlxwTgvLw+AsrIyAFasWMGCBQu6PN9748aNzJw5kxNOOIEJEyYwa9YsZs6cyde//nUyMzN3W49nnnmGX//612zcuDEW1tPS0uLKDB06lNTU1Li6OZ1OHA5H3LK2uraZNm1ap/tfNJq4iIiISCLp0HERkYOI2+2Ou29ZVtwyy7IAuzcZoKGhgVNPPZXly5fHTZ999hnHHXccTqeT119/nf/85z+MGzeOhx56iNGjR7N58+Zu67B06VLOP/985syZw/z581m2bBk33ngjwWCwR3VtW9ZWVxEREZH9hYK2iIh06/DDD2f16tUMHTqUkSNHxk3JycmAHXaPPvpobr/9dpYtW4bH4+GFF14AwOPxEIlE4ra5ZMkShgwZwo033siUKVMYNWoUn3/+ecLq/O6773a6P3bs2B5tw+PxAHSqu4iIiMieUNAWEZFuzZ07l6qqKs4991w++OADNm7cyKuvvsp3v/tdIpEI7733HnfddRcffvghxcXFPP/885SXl8eC7dChQ1m5ciXr1q2joqKCUCjEqFGjKC4u5umnn2bjxo38+te/jgXzRHjuued49NFHWb9+Pbfeeivvv/8+V1xxRY+2MWTIECzLYv78+ZSXl9PQ0JCw+omIiMiBT0FbRES6VVhYyDvvvEMkEmHmzJlMmDCBq6++moyMDBwOB2lpaSxevJg5c+ZwyCGHcNNNN/HLX/6S2bNnA3DppZcyevRopkyZQk5ODu+88w6nnXYa11xzDVdccQWTJk1iyZIl3HzzzQmr8+23387TTz/NxIkT+ctf/sJTTz3FuHHjerSNgQMHcvvtt/OTn/yEvLy8Hgd1ERERObhZxhjT15UQERFJBMuyeOGFF+KuH/5FZsyYwaRJk3jggQf26fOIiIjIwUM92iIictB75JFHSElJ4ZNPPtltucsuu6zLEdhFREREOlKPtoiIHDD2pqd5+/btNDc3AzB48ODYQGhdKSsro66uDoCCgoLYgHAiIiIiHSloi4iIiIiIiCSQDh0XERERERERSSAFbREREREREZEEUtAWERERERERSSAFbREREREREZEEUtAWERERERERSSAFbREREREREZEEUtAWERERERERSSAFbREREREREZEEUtAWERERERERSaD/DyipFVy9LkWiAAAAAElFTkSuQmCC",
"text/plain": [
""
]
},
"metadata": {},
"output_type": "display_data"
}
],
"source": [
"import matplotlib.pyplot as plt\n",
"\n",
"plt.figure(figsize=(10, 5))\n",
"\n",
"# Iterate through each unique stock using the index\n",
"for unique_id in Y_hat_df.index.unique():\n",
" stock_data = Y_hat_df.loc[unique_id] # Index-based selection\n",
" stock_data = stock_data.reset_index().groupby('ds').mean().reset_index()\n",
"\n",
" # Plot true values and forecast for the current stock\n",
" plt.plot(stock_data['ds'], stock_data['y'], label=f'True ({tickers[unique_id]})')\n",
" plt.plot(stock_data['ds'], stock_data['NBEATS'], label=f'Forecast ({tickers[unique_id]})', linestyle='--') # Dashed line for forecast\n",
"\n",
"\n",
"\n",
"# General plot formatting\n",
"plt.xlabel('Timestamp [t]')\n",
"plt.ylabel('Stock value')\n",
"plt.title('True vs. Forecast Values per Stock')\n",
"plt.grid(alpha=0.4) \n",
"\n",
"# Adjust legend to fit better\n",
"plt.legend(bbox_to_anchor=(1.05, 1), loc='upper left') \n",
"\n",
"plt.tight_layout() \n",
"plt.show()"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"## Understanding `yfinance`\n",
"\n",
"`yfinance` is a Python library that provides a convenient way to download historical market data from Yahoo Finance. It supports a wide range of data, including:\n",
"\n",
"- Historical prices\n",
"- Dividends\n",
"- Splits\n",
"- Financial statements\n",
"\n",
"In this tutorial, `fintorch` leverages `yfinance` to handle the data retrieval of stocktick data, making it seamless to obtain and work with financial datasets."
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"## Conclusion\n",
"\n",
"By following this tutorial, you've learned how to:\n",
"\n",
"- Set up logging for better debugging and information tracking.\n",
"- Specify parameters for data retrieval, including tickers and date ranges.\n",
"- Use `fintorch` and `yfinance` to download historical stock data.\n",
"- Obtain a `TimeSeriesDataset` compatible with `neuralforecast`, simplifying the process of preparing data for machine learning models.\n",
"\n",
"This foundational knowledge can be expanded upon for more complex analyses, such as building financial models or integrating advanced machine learning algorithms.\n",
"\n",
"## Next Steps\n",
"\n",
"- **Explore the Data**: Use visualization libraries like Matplotlib or Seaborn to plot the stock prices and observe trends.\n",
"- **Feature Engineering**: Create additional features such as moving averages, volatility indicators, or technical analysis signals.\n",
"- **Model Training**: Use the prepared `TimeSeriesDataset` to train machine learning models using `neuralforecast` or other libraries like TensorFlow or PyTorch.\n",
"- **Model Evaluation**: Implement evaluation metrics to assess the performance of your models on validation and test sets.\n",
"\n"
]
}
],
"metadata": {
"language_info": {
"name": "python"
}
},
"nbformat": 4,
"nbformat_minor": 2
}