Files
OpenBB/website/content/sdk/reference/forecast/tft.md
DidierRLopes 4ad995fdd0 Docs/terminalpro and improvement (#5622)
* add first iteration of content for Terminal Pro

* Update index.md

* Update dashboards.md

* Update folders.md

* Update grouping.md

* Update report.md

* Update templates.md

* Update quick-start.md

* Update index.md

* Update index.md

* Update home.md

* Update news.md

* Update index.md

* Update index.md

* Update index.md

* Update data-provider.md

* Update chat-with-widget.md

* Update data-manipulation.md

* Update forecasting.md

* fix: images self closing tags

* fix: only pro visitors can see pro

* inter font

* improve SEO content and restructuring

* add new package for toggle on tutorials

* move folder around

* improve main page of each prod

* small updates and improvements

* fix logo above

* small improvement in headtitle for portfolio funcs

* fix typos from OpenAI's GPT-4

* fix _category_ json

* remove generic SEO words

* add script that generates SEO for documentation

* add missing file

* remove sdk warning message

* fix links for andrew

---------

Co-authored-by: jose-donato <zmcdonato@gmail.com>
Co-authored-by: jose-donato <43375532+jose-donato@users.noreply.github.com>
Co-authored-by: andrewkenreich <andrew.kenreich@gmail.com>
2023-10-30 21:01:29 +00:00

8.5 KiB
Vendored

title, description, keywords
title description keywords
tft This Docusaurus page provides in-depth information on the use of Temporal Fusion Transformer for forecasting purposes, as implemented through OpenBB finance. It includes details on the model's parameters, usage, and output, along with the source code and chart visualization capabilities. The page is of high relevance for developers, data analysts, and professionals dealing with predictive modeling and data analysis tasks.
Temporal Fusion Transformer forecasting
OpenBB finance
Temporal Fusion Transformer chart
Machine Learning
Data analysis
Predictive modeling
Predictive analytics
Data modeling

import HeadTitle from '@site/src/components/General/HeadTitle.tsx';

import Tabs from '@theme/Tabs'; import TabItem from '@theme/TabItem';

Performs Temporal Fusion Transformer forecasting

Source Code: [link]

openbb.forecast.tft(data: Union[pd.Series, pd.DataFrame], target_column: str = "close", n_predict: int = 5, past_covariates: str = None, train_split: float = 0.85, forecast_horizon: int = 5, input_chunk_length: int = 14, output_chunk_length: int = 5, hidden_size: int = 16, lstm_layers: int = 1, num_attention_heads: int = 4, full_attention: bool = False, dropout: float = 0.1, hidden_continuous_size: int = 8, n_epochs: int = 200, batch_size: int = 32, model_save_name: str = "tft_model", force_reset: bool = True, save_checkpoints: bool = True)

Parameters

Name Type Description Default Optional
data (Union[pd.Series, pd.DataFrame]) Input Data None True
target_column Optional[str]: Target column to forecast. Defaults to "close". close True
n_predict (int, optional) Days to predict. Defaults to 5. None True
train_split (float, optional) Train/val split. Defaults to 0.85. None True
past_covariates (str, optional) Multiple secondary columns to factor in when forecasting. Defaults to None. None True
forecast_horizon (int, optional) Forecast horizon when performing historical forecasting. Defaults to 5. None True
input_chunk_length (int, optional) Number of past time steps that are fed to the forecasting module at prediction time.
Defaults to 14.
None True
output_chunk_length (int, optional) The length of the forecast of the model. Defaults to 5. None True
hidden_size (int, optional) Hidden state size of the TFT. Defaults to 16. None True
lstm_layers (int, optional) Number of layers for the Long Short Term Memory Encoder and Decoder. Defaults to 16. None True
num_attention_headers (int, optional) Number of attention heads. Defaults to 4. None True
full_attention (bool, optional) Whether to apply a multi-head attention query. Defaults to False> None True
dropout (float, optional) Fraction of neurons affected by dropout. Defaults to 0.1. None True
hidden_continuous_size (int, optional) Default hidden size for processing continuous variables. Defaults to 8. None True
n_epochs (int, optional) Number of epochs to run during training. Defaults to 200. None True
batch_size (int, optional) Number of samples to pass through network during a single epoch. Defaults to 32. None True
model_save_name (str, optional) The name for the model. Defaults to tft_model None True
force_reset (bool, optional) If set to True, any previously-existing model with the same name will be reset
(all checkpoints will be discarded). Defaults to True.
None True
save_checkpoints (bool, optional) Whether or not to automatically save the untrained model and checkpoints from training.
Defaults to True.
None True

Returns

Type Description
Adjusted Data series,
List of historical fcast values,
List of predicted fcast values,
Optional[float] - precision,
Fit Prob. TFT model object.

Display Temporal Fusion Transformer forecast

Source Code: [link]

openbb.forecast.tft_chart(data: Union[pd.Series, pd.DataFrame], target_column: str = "close", dataset_name: str = "", n_predict: int = 5, past_covariates: str = None, train_split: float = 0.85, forecast_horizon: int = 5, input_chunk_length: int = 14, output_chunk_length: int = 5, hidden_size: int = 16, lstm_layers: int = 1, num_attention_heads: int = 4, full_attention: bool = False, dropout: float = 0.1, hidden_continuous_size: int = 8, n_epochs: int = 200, batch_size: int = 32, model_save_name: str = "tft_model", force_reset: bool = True, save_checkpoints: bool = True, export: str = "", residuals: bool = False, forecast_only: bool = False, start_date: Optional[datetime.datetime] = None, end_date: Optional[datetime.datetime] = None, naive: bool = False, export_pred_raw: bool = False, external_axes: Optional[List[axes]] = None)

Parameters

Name Type Description Default Optional
data (Union[pd.Series, pd.DataFrame]) Input Data None True
target_column Optional[str]: Target column to forecast. Defaults to "close". close True
dataset_name str None The name of the ticker to be predicted None True
n_predict (int, optional) Days to predict. Defaults to 5. None True
train_split (float, optional) Train/val split. Defaults to 0.85. None True
past_covariates (str, optional) Multiple secondary columns to factor in when forecasting. Defaults to None. None True
forecast_horizon (int, optional) Forecast horizon when performing historical forecasting. Defaults to 5. None True
input_chunk_length (int, optional) Number of past time steps that are fed to the forecasting module at prediction time.
Defaults to 14.
None True
output_chunk_length (int, optional) The length of the forecast of the model. Defaults to 5. None True
hidden_size (int, optional) Hidden state size of the TFT. Defaults to 16. None True
lstm_layers (int, optional) Number of layers for the Long Short Term Memory Encoder and Decoder. Defaults to 16. None True
num_attention_headers (int, optional) Number of attention heads. Defaults to 4. None True
full_attention (bool, optional) Whether to apply a multi-head attention query. Defaults to False> None True
dropout (float, optional) Fraction of neurons affected by dropout. Defaults to 0.1. None True
hidden_continuous_size (int, optional) Default hidden size for processing continuous variables. Defaults to 8. None True
n_epochs (int, optional) Number of epochs to run during training. Defaults to 200. None True
batch_size (int, optional) Number of samples to pass through network during a single epoch. Defaults to 32. None True
model_save_name (str, optional) The name for the model. Defaults to tft_model None True
force_reset (bool, optional) If set to True, any previously-existing model with the same name will be reset
(all checkpoints will be discarded). Defaults to True.
None True
save_checkpoints (bool, optional) Whether or not to automatically save the untrained model and checkpoints from training.
Defaults to True.
None True
residuals bool Whether to show residuals for the model. Defaults to False. False True
forecast_only bool Whether to only show dates in the forecasting range. Defaults to False. False True
start_date Optional[datetime] The starting date to perform analysis, data before this is trimmed. Defaults to None. None True
end_date Optional[datetime] The ending date to perform analysis, data after this is trimmed. Defaults to None. None True
naive bool Whether to show the naive baseline. This just assumes the closing price will be the same
as the previous day's closing price. Defaults to False.
False True
external_axes Optional[List[plt.axes]] External axes to plot on None True

Returns

This function does not return anything