Files
OpenBB/sdk/data-available/portfolio.html
github-actions[bot] 349e1f554c deploy: 3d34e56ca7
2024-02-27 19:11:45 +00:00

22 lines
95 KiB
HTML
Raw Blame History

This file contains invisible Unicode characters

This file contains invisible Unicode characters that are indistinguishable to humans but may be processed differently by a computer. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

<!doctype html>
<html lang="en" dir="ltr" class="docs-wrapper docs-doc-page docs-version-current plugin-docs plugin-id-default docs-doc-id-sdk/data-available/portfolio/index" data-has-hydrated="false">
<head>
<meta charset="UTF-8">
<meta name="generator" content="Docusaurus v2.4.3">
<title data-rh="true">Portfolio | OpenBB Docs</title><meta data-rh="true" name="viewport" content="width=device-width,initial-scale=1"><meta data-rh="true" name="twitter:card" content="summary_large_image"><meta data-rh="true" property="og:image" content="https://docs.openbb.co/img/banner.png"><meta data-rh="true" name="twitter:image" content="https://docs.openbb.co/img/banner.png"><meta data-rh="true" property="og:url" content="https://docs.openbb.co/sdk/data-available/portfolio"><meta data-rh="true" name="docusaurus_locale" content="en"><meta data-rh="true" name="docsearch:language" content="en"><meta data-rh="true" name="docusaurus_version" content="current"><meta data-rh="true" name="docusaurus_tag" content="docs-default-current"><meta data-rh="true" name="docsearch:version" content="current"><meta data-rh="true" name="docsearch:docusaurus_tag" content="docs-default-current"><meta data-rh="true" property="og:title" content="Portfolio | OpenBB Docs"><meta data-rh="true" name="description" content="Docusaurus page focuses on the usage of the OpenBB Terminal Portfolio module, detailing its features and examples of use like portfolio performance benchmarking, risk metrics calculation or maximum drawdown calculation."><meta data-rh="true" property="og:description" content="Docusaurus page focuses on the usage of the OpenBB Terminal Portfolio module, detailing its features and examples of use like portfolio performance benchmarking, risk metrics calculation or maximum drawdown calculation."><meta data-rh="true" name="keywords" content="portfolio module,performance benchmarking,risk metrics,maximum drawdown,portfolio loading,OpenBB SDK,portfolio transactions"><link data-rh="true" rel="icon" href="/img/favicon.ico"><link data-rh="true" rel="canonical" href="https://docs.openbb.co/sdk/data-available/portfolio"><link data-rh="true" rel="alternate" href="https://docs.openbb.co/sdk/data-available/portfolio" hreflang="en"><link data-rh="true" rel="alternate" href="https://docs.openbb.co/sdk/data-available/portfolio" hreflang="x-default"><link data-rh="true" rel="preconnect" href="https://7D1HQ0IXAS-dsn.algolia.net" crossorigin="anonymous"><link rel="search" type="application/opensearchdescription+xml" title="OpenBB Docs" href="/opensearch.xml">
<link rel="stylesheet" href="/katex/katex.min.css"><link rel="stylesheet" href="/assets/css/styles.22849d6d.css">
<link rel="preload" href="/assets/js/runtime~main.c0e31297.js" as="script">
<link rel="preload" href="/assets/js/main.b1ae2b5f.js" as="script">
</head>
<body class="navigation-with-keyboard">
<script>!function(){function t(t){document.documentElement.setAttribute("data-theme",t)}var e=function(){var t=null;try{t=new URLSearchParams(window.location.search).get("docusaurus-theme")}catch(t){}return t}()||function(){var t=null;try{t=localStorage.getItem("theme")}catch(t){}return t}();t(null!==e?e:"dark")}()</script><div id="__docusaurus">
<div role="region" aria-label="Skip to main content"><a class="skipToContent_fXgn" href="#__docusaurus_skipToContent_fallback">Skip to main content</a></div><nav class="border-b border-grey-600 lg:px-12 header_docs_sdk navbar navbar--fixed-top"><div class="navbar__inner items-center"><div class="navbar__items"><div class="items-center ml-2 flex"><a href="/"><svg viewBox="0 0 271 19" width="271" height="19" fill="none" xmlns="http://www.w3.org/2000/svg"><path fill="#fff" d="M126.316.99V14.33l-1.144-1.11-1.142-1.113-1.144-1.11-1.142-1.114-1.144-1.11-1.145-1.113-1.141-1.11-1.145-1.114-1.142-1.113-1.144-1.11-1.142-1.11-1.144-1.114H110.311v17.788H112.597V4.323l1.144 1.113 1.142 1.113 1.144 1.11 1.142 1.114 1.145 1.11 1.141 1.113 1.145 1.11 1.144 1.114 1.142 1.11 1.144 1.113 1.142 1.113 1.144 1.11 1.142 1.111h1.145V.989h-2.287ZM163.123 7.66h-2.286V.99H147.12v17.79h18.294V7.65h-2.286l-.005.01ZM149.406 6.54V3.213h9.144V7.66h-9.144V6.54Zm13.717 4.447v5.566h-13.717V9.886h13.717v1.102ZM201.057 7.66h-3.427V.99h-13.72v17.79h18.289V7.65l-1.142.01ZM186.196 6.54V3.213h9.148V7.66h-9.148V6.54Zm13.72 4.447v5.566h-13.72V9.886h13.72v1.102ZM89.662.99H73.656v17.787H91.942v-2.22H75.945V12.106H89.656V9.883H75.945V3.213H91.942V.99H89.661ZM16.02.99H.018v17.79h18.291V.99H16.02Zm0 3.336v12.23H2.301V3.213h13.72v1.113ZM52.862.99H36.86v17.79h2.286v-6.673h16.003V.977h-2.287V.99Zm0 3.336v5.565H39.146V3.213h13.716v1.113ZM226.316 10.14h-6.117v8.64h6.141l.992-1v-7l-1.016-.64Zm-.002 1.62v5.94h-5.1v-6.48h5.1v.54ZM240.447 10.14h-7.115v8.64h8.133v-8.64h-1.018Zm0 1.62v5.94h-6.1v-6.48h6.1v.54ZM254.9 10.14H247.465v8.64H255.959V17.7H248.528V11.22H255.959v-1.08H254.9ZM269.404 10.14h-7.444V15h7.448v2.701h-5.853l-1.596.005.001.535v.539h8.505V17.7h-1.061.004H263.555l6.913.066.002-.607-.002-.41-.003-.67.005-1.08h-6.248 6.248l-.002-1.08H263.024v-2.7h7.441v-1.08h-1.061Z"></path></svg></a></div></div><div class="navbar__items navbar__items--right hidden sm:block"><div class="flex items-center"><div class="flex gap-4 mr-12 md:mr-0 ml-4"><button type="button" aria-haspopup="dialog" aria-expanded="false" aria-controls="" data-state="closed" class="bg-grey-900 radix-state-open:text-white hover:border-grey-200 hover:text-grey-200 radix-state-open:border-white border -mt-[0.6px] h-[34px] w-[34px] text-grey-400 border-grey-400 rounded flex items-center justify-center"><svg viewBox="0 0 24 24" width="24" height="24" fill="none" xmlns="http://www.w3.org/2000/svg" class="w-4 h-4"><path d="M21 12.79A9 9 0 1 1 11.21 3 7 7 0 0 0 21 12.79Z" stroke="currentColor" stroke-width="1.5" stroke-linecap="round" stroke-linejoin="round"></path></svg></button></div><div class="searchBox_ZlJk"><div class="flex gap-2"><button type="button" class="DocSearch DocSearch-Button" aria-label="Search"><span class="DocSearch-Button-Container"><svg width="20" height="20" class="DocSearch-Search-Icon" viewBox="0 0 20 20"><path d="M14.386 14.386l4.0877 4.0877-4.0877-4.0877c-2.9418 2.9419-7.7115 2.9419-10.6533 0-2.9419-2.9418-2.9419-7.7115 0-10.6533 2.9418-2.9419 7.7115-2.9419 10.6533 0 2.9419 2.9418 2.9419 7.7115 0 10.6533z" stroke="currentColor" fill="none" fill-rule="evenodd" stroke-linecap="round" stroke-linejoin="round"></path></svg><span class="DocSearch-Button-Placeholder">Search</span></span><span class="DocSearch-Button-Keys"></span></button><a href="https://my.openbb.co/" class="_btn-dark text-xs hover:text-black"><span class="md:hidden">Hub</span><span class="hidden md:inline">OpenBB Hub</span></a></div></div></div></div></div><div role="presentation" class="navbar-sidebar__backdrop"></div></nav><div id="__docusaurus_skipToContent_fallback" class="main-wrapper mainWrapper_z2l0 docsWrapper_BCFX"><button aria-label="Scroll back to top" class="clean-btn theme-back-to-top-button backToTopButton_sjWU" type="button"></button><div class="docPage__5DB"><aside class="theme-doc-sidebar-container docSidebarContainer_b6E3"><div class="sidebarViewport_Xe31"><div class="sidebar_njMd"><nav class="menu thin-scrollbar !px-10 text-sm !pb-10 mt-[40px] menu_Y1UP"><ul class="theme-doc-sidebar-menu menu__list"><li class="theme-doc-sidebar-item-category theme-doc-sidebar-item-category-level-1 menu__list-item menu__list-item--collapsed"><div class="menu__list-item-collapsible"><a class="menu__link menu__link--sublist" aria-expanded="false" href="/platform">OpenBB Platform</a><button aria-label="Toggle the collapsible sidebar category &#x27;OpenBB Platform&#x27;" type="button" class="clean-btn menu__caret"></button></div></li><li class="theme-doc-sidebar-item-category theme-doc-sidebar-item-category-level-1 menu__list-item menu__list-item--collapsed"><div class="menu__list-item-collapsible"><a class="menu__link menu__link--sublist" aria-expanded="false" href="/terminal">OpenBB Terminal</a><button aria-label="Toggle the collapsible sidebar category &#x27;OpenBB Terminal&#x27;" type="button" class="clean-btn menu__caret"></button></div></li><li class="theme-doc-sidebar-item-category theme-doc-sidebar-item-category-level-1 menu__list-item menu__list-item--collapsed"><div class="menu__list-item-collapsible"><a class="menu__link menu__link--sublist" aria-expanded="false" href="/bot">OpenBB Bot</a><button aria-label="Toggle the collapsible sidebar category &#x27;OpenBB Bot&#x27;" type="button" class="clean-btn menu__caret"></button></div></li><li class="theme-doc-sidebar-item-link theme-doc-sidebar-item-link-level-1"><span class="sidebar-divider"></li><li class="theme-doc-sidebar-item-link theme-doc-sidebar-item-link-level-1 menuHtmlItem_PEWV menu__list-item sidebar-title">LEGACY</li><li class="theme-doc-sidebar-item-category theme-doc-sidebar-item-category-level-1 menu__list-item"><div class="menu__list-item-collapsible"><a class="menu__link menu__link--sublist menu__link--sublist-caret menu__link--active" aria-expanded="true" href="/sdk">OpenBB SDK</a></div><ul style="display:block;overflow:visible;height:auto" class="menu__list"><li class="theme-doc-sidebar-item-link theme-doc-sidebar-item-link-level-2 menu__list-item"><a class="menu__link" tabindex="0" href="/sdk">Introduction</a></li><li class="theme-doc-sidebar-item-link theme-doc-sidebar-item-link-level-2 menu__list-item"><a class="menu__link" tabindex="0" href="/sdk/installation">Installation</a></li><li class="theme-doc-sidebar-item-category theme-doc-sidebar-item-category-level-2 menu__list-item menu__list-item--collapsed"><div class="menu__list-item-collapsible"><a class="menu__link menu__link--sublist" aria-expanded="false" tabindex="0" href="/sdk/usage">Usage</a><button aria-label="Toggle the collapsible sidebar category &#x27;Usage&#x27;" type="button" class="clean-btn menu__caret"></button></div></li><li class="theme-doc-sidebar-item-category theme-doc-sidebar-item-category-level-2 menu__list-item"><div class="menu__list-item-collapsible"><a class="menu__link menu__link--sublist menu__link--active" aria-expanded="true" tabindex="0" href="/sdk/data-available">Data Available</a><button aria-label="Toggle the collapsible sidebar category &#x27;Data Available&#x27;" type="button" class="clean-btn menu__caret"></button></div><ul style="display:block;overflow:visible;height:auto" class="menu__list"><li class="theme-doc-sidebar-item-category theme-doc-sidebar-item-category-level-3 menu__list-item menu__list-item--collapsed"><div class="menu__list-item-collapsible"><a class="menu__link menu__link--sublist" aria-expanded="false" tabindex="0" href="/sdk/data-available/stocks">Stocks</a><button aria-label="Toggle the collapsible sidebar category &#x27;Stocks&#x27;" type="button" class="clean-btn menu__caret"></button></div></li><li class="theme-doc-sidebar-item-category theme-doc-sidebar-item-category-level-3 menu__list-item menu__list-item--collapsed"><div class="menu__list-item-collapsible"><a class="menu__link menu__link--sublist" aria-expanded="false" tabindex="0" href="/sdk/data-available/crypto">Crypto</a><button aria-label="Toggle the collapsible sidebar category &#x27;Crypto&#x27;" type="button" class="clean-btn menu__caret"></button></div></li><li class="theme-doc-sidebar-item-category theme-doc-sidebar-item-category-level-3 menu__list-item"><div class="menu__list-item-collapsible menu__list-item-collapsible--active"><a class="menu__link menu__link--sublist menu__link--active" aria-current="page" aria-expanded="true" tabindex="0" href="/sdk/data-available/portfolio">Portfolio</a><button aria-label="Toggle the collapsible sidebar category &#x27;Portfolio&#x27;" type="button" class="clean-btn menu__caret"></button></div><ul style="display:block;overflow:visible;height:auto" class="menu__list"><li class="theme-doc-sidebar-item-link theme-doc-sidebar-item-link-level-4 menu__list-item"><a class="menu__link" tabindex="0" href="/sdk/data-available/portfolio/po">Portfolio Optimization</a></li></ul></li><li class="theme-doc-sidebar-item-link theme-doc-sidebar-item-link-level-3 menu__list-item"><a class="menu__link" tabindex="0" href="/sdk/data-available/alternative">Alternative</a></li><li class="theme-doc-sidebar-item-link theme-doc-sidebar-item-link-level-3 menu__list-item"><a class="menu__link" tabindex="0" href="/sdk/data-available/econometrics">Econometrics</a></li><li class="theme-doc-sidebar-item-link theme-doc-sidebar-item-link-level-3 menu__list-item"><a class="menu__link" tabindex="0" href="/sdk/data-available/economy">Economy</a></li><li class="theme-doc-sidebar-item-link theme-doc-sidebar-item-link-level-3 menu__list-item"><a class="menu__link" tabindex="0" href="/sdk/data-available/etf">ETF</a></li><li class="theme-doc-sidebar-item-link theme-doc-sidebar-item-link-level-3 menu__list-item"><a class="menu__link" tabindex="0" href="/sdk/data-available/fixedincome">Fixed Income</a></li><li class="theme-doc-sidebar-item-link theme-doc-sidebar-item-link-level-3 menu__list-item"><a class="menu__link" tabindex="0" href="/sdk/data-available/forecast">Forecast</a></li><li class="theme-doc-sidebar-item-link theme-doc-sidebar-item-link-level-3 menu__list-item"><a class="menu__link" tabindex="0" href="/sdk/data-available/forex">Forex</a></li><li class="theme-doc-sidebar-item-link theme-doc-sidebar-item-link-level-3 menu__list-item"><a class="menu__link" tabindex="0" href="/sdk/data-available/futures">Futures</a></li><li class="theme-doc-sidebar-item-link theme-doc-sidebar-item-link-level-3 menu__list-item"><a class="menu__link" tabindex="0" href="/sdk/data-available/quantitative-analysis">Quantitative Analysis</a></li><li class="theme-doc-sidebar-item-link theme-doc-sidebar-item-link-level-3 menu__list-item"><a class="menu__link" tabindex="0" href="/sdk/data-available/ta">Technical Analysis</a></li></ul></li><li class="theme-doc-sidebar-item-category theme-doc-sidebar-item-category-level-2 menu__list-item menu__list-item--collapsed"><div class="menu__list-item-collapsible"><a class="menu__link menu__link--sublist" aria-expanded="false" tabindex="0" href="/sdk/reference">Reference</a><button aria-label="Toggle the collapsible sidebar category &#x27;Reference&#x27;" type="button" class="clean-btn menu__caret"></button></div></li><li class="theme-doc-sidebar-item-category theme-doc-sidebar-item-category-level-2 menu__list-item menu__list-item--collapsed"><div class="menu__list-item-collapsible"><a class="menu__link menu__link--sublist" aria-expanded="false" tabindex="0" href="/sdk/faqs">FAQs</a><button aria-label="Toggle the collapsible sidebar category &#x27;FAQs&#x27;" type="button" class="clean-btn menu__caret"></button></div></li><li class="theme-doc-sidebar-item-link theme-doc-sidebar-item-link-level-2 menu__list-item"><a class="menu__link" tabindex="0" href="/sdk/showcase">Showcase</a></li></ul></li></ul></nav></div></div></aside><main class="docMainContainer_gTbr"><div class="container padding-top--md padding-bottom--lg"><div class="row"><div class="col docItemCol_VOVn"><div class="docItemContainer_Djhp"><article><nav class="theme-doc-breadcrumbs breadcrumbsContainer_Z_bl" aria-label="Breadcrumbs"><ul class="breadcrumbs" itemscope="" itemtype="https://schema.org/BreadcrumbList"><li class="breadcrumbs__item"><a aria-label="Home page" class="breadcrumbs__link" href="/"><svg viewBox="0 0 24 24" class="breadcrumbHomeIcon_YNFT"><path d="M10 19v-5h4v5c0 .55.45 1 1 1h3c.55 0 1-.45 1-1v-7h1.7c.46 0 .68-.57.33-.87L12.67 3.6c-.38-.34-.96-.34-1.34 0l-8.36 7.53c-.34.3-.13.87.33.87H5v7c0 .55.45 1 1 1h3c.55 0 1-.45 1-1z" fill="currentColor"></path></svg></a></li><li class="breadcrumbs__item"><span class="breadcrumbs__link">OpenBB SDK</span><meta itemprop="position" content="1"></li><li itemscope="" itemprop="itemListElement" itemtype="https://schema.org/ListItem" class="breadcrumbs__item"><a class="breadcrumbs__link" itemprop="item" href="/sdk/data-available"><span itemprop="name">Data Available</span></a><meta itemprop="position" content="2"></li><li itemscope="" itemprop="itemListElement" itemtype="https://schema.org/ListItem" class="breadcrumbs__item breadcrumbs__item--active"><span class="breadcrumbs__link" itemprop="name">Portfolio</span><meta itemprop="position" content="3"></li></ul></nav><div class="tocCollapsible_ETCw theme-doc-toc-mobile tocMobile_bxCs"><button type="button" class="clean-btn tocCollapsibleButton_TO0P">On this page</button></div><div class="theme-doc-markdown markdown"><header><h1>Portfolio</h1></header><p>The <a href="/terminal/reference/portfolio/load">Portfolio menu</a>, from the OpenBB Terminal, is wrapped into a Python SDK layer, enabling users to programmatically work with the data in a flexible environment, fully customizable for the needs of any user. This guide will introduce the functions within the main Portfolio module, and walk through examples demonstrating how to work with a portfolio file and object.</p><h2 class="anchor anchorWithStickyNavbar_LWe7" id="how-to-use">How to Use<a href="#how-to-use" class="hash-link" aria-label="Direct link to How to Use" title="Direct link to How to Use">​</a></h2><p>Below is a brief description of each function within the Portfolio module:</p><table><thead><tr><th align="left">Path</th><th align="center">Type</th><th align="right">Description</th></tr></thead><tbody><tr><td align="left">openbb.portfolio.alloc</td><td align="center">Sub-Module</td><td align="right">Allocation Metrics Compared to the Benchmark</td></tr><tr><td align="left">openbb.portfolio.bench</td><td align="center">Function</td><td align="right">Select a Benchmark for the Portfolio</td></tr><tr><td align="left">openbb.portfolio.distr</td><td align="center">Function</td><td align="right">Distribution of Daily Returns</td></tr><tr><td align="left">openbb.portfolio.dret</td><td align="center">Function</td><td align="right">Daily Returns</td></tr><tr><td align="left">openbb.portfolio.es</td><td align="center">Function</td><td align="right">Expected Shortfall</td></tr><tr><td align="left">openbb.portfolio.holdp</td><td align="center">Function</td><td align="right">Holdings of Assets as a %</td></tr><tr><td align="left">openbb.portfolio.holdv</td><td align="center">Function</td><td align="right">Holdings of Assets as an Absolute Value</td></tr><tr><td align="left">openbb.portfolio.load</td><td align="center">Function</td><td align="right">Load a Portfolio File</td></tr><tr><td align="left">openbb.portfolio.maxdd</td><td align="center">Function</td><td align="right">Maximum Drawdown</td></tr><tr><td align="left">openbb.portfolio.metric</td><td align="center">Sub-Module</td><td align="right">Risk and Portfolio Metrics</td></tr><tr><td align="left">openbb.portfolio.mret</td><td align="center">Function</td><td align="right">Monthly Returns</td></tr><tr><td align="left">openbb.portfolio.om</td><td align="center">Function</td><td align="right">Omega Ratio</td></tr><tr><td align="left">openbb.portfolio.perf</td><td align="center">Function</td><td align="right">Portfolio Performance vs Benchmark</td></tr><tr><td align="left">openbb.portfolio.po</td><td align="center">Sub-Module</td><td align="right">Portfolio Optimization Sub Menu</td></tr><tr><td align="left">openbb.portfolio.rbeta</td><td align="center">Function</td><td align="right">Rolling Beta of Portfolio and Benchmark Returns</td></tr><tr><td align="left">openbb.portfolio.rsharpe</td><td align="center">Function</td><td align="right">Rolling Sharpe Ratio</td></tr><tr><td align="left">openbb.portfolio.rsort</td><td align="center">Function</td><td align="right">Rolling Sortino Ratio</td></tr><tr><td align="left">openbb.portfolio.rvol</td><td align="center">Function</td><td align="right">Rolling Volatility</td></tr><tr><td align="left">openbb.portfolio.show</td><td align="center">Function</td><td align="right">Portfolio Transactions</td></tr><tr><td align="left">openbb.portfolio.summary</td><td align="center">Function</td><td align="right">Summary of Portfolio and Benchmark Returns</td></tr><tr><td align="left">openbb.portfolio.var</td><td align="center">Function</td><td align="right">Portfolio VaR</td></tr><tr><td align="left">openbb.portfolio.yret</td><td align="center">Function</td><td align="right">Yearly Returns</td></tr></tbody></table><p>Alternatively, the contents of the Porfolio module is printed with:</p><div class="language-python codeBlockContainer_Ckt0 theme-code-block" style="--prism-color:#9CDCFE;--prism-background-color:#1E1E1E"><div class="codeBlockContent_m3Ux"><pre tabindex="0" class="prism-code language-python codeBlock_qGQc thin-scrollbar"><code class="codeBlockLines_p187"><span class="token-line" style="color:#9CDCFE"><span class="token builtin" style="color:rgb(86, 156, 214)">help</span><span class="token punctuation" style="color:rgb(212, 212, 212)">(</span><span class="token plain">openbb</span><span class="token punctuation" style="color:rgb(212, 212, 212)">.</span><span class="token plain">portfolio</span><span class="token punctuation" style="color:rgb(212, 212, 212)">)</span><br></span></code></pre><div class="buttonGroup_6DOT"><button type="button" aria-label="Copy code to clipboard" title="Copy" class="clean-btn"><span class="copyButtonIcons_eSgA" aria-hidden="true"><svg viewBox="0 0 24 24" class="copyButtonIcon_y97N"><path fill="currentColor" d="M19,21H8V7H19M19,5H8A2,2 0 0,0 6,7V21A2,2 0 0,0 8,23H19A2,2 0 0,0 21,21V7A2,2 0 0,0 19,5M16,1H4A2,2 0 0,0 2,3V17H4V3H16V1Z"></path></svg><svg viewBox="0 0 24 24" class="copyButtonSuccessIcon_LjdS"><path fill="currentColor" d="M21,7L9,19L3.5,13.5L4.91,12.09L9,16.17L19.59,5.59L21,7Z"></path></svg></span></button></div></div></div><p>Many of the functions in this module will also have a companion command, <code>_chart</code>.</p><h3 class="anchor anchorWithStickyNavbar_LWe7" id="portfolio-files">Portfolio Files<a href="#portfolio-files" class="hash-link" aria-label="Direct link to Portfolio Files" title="Direct link to Portfolio Files">​</a></h3><p>Portfolio files are spreadsheets (xlsx or csv files) containing historical trades which add up to represent a net balance in the Portfolio Engine. Users should keep their collection of holdings files in the OpenBBUserData folder, <code>~/OpenBBUserData/portfolio/holdings</code>.</p><div class="theme-admonition theme-admonition-note alert alert--secondary admonition_LlT9"><div class="admonitionHeading_tbUL"><span class="admonitionIcon_kALy"><svg viewBox="0 0 14 16"><path fill-rule="evenodd" d="M6.3 5.69a.942.942 0 0 1-.28-.7c0-.28.09-.52.28-.7.19-.18.42-.28.7-.28.28 0 .52.09.7.28.18.19.28.42.28.7 0 .28-.09.52-.28.7a1 1 0 0 1-.7.3c-.28 0-.52-.11-.7-.3zM8 7.99c-.02-.25-.11-.48-.31-.69-.2-.19-.42-.3-.69-.31H6c-.27.02-.48.13-.69.31-.2.2-.3.44-.31.69h1v3c.02.27.11.5.31.69.2.2.42.31.69.31h1c.27 0 .48-.11.69-.31.2-.19.3-.42.31-.69H8V7.98v.01zM7 2.3c-3.14 0-5.7 2.54-5.7 5.68 0 3.14 2.56 5.7 5.7 5.7s5.7-2.55 5.7-5.7c0-3.15-2.56-5.69-5.7-5.69v.01zM7 .98c3.86 0 7 3.14 7 7s-3.14 7-7 7-7-3.12-7-7 3.14-7 7-7z"></path></svg></span>If you wish to load in your own Excel holdings file, please follow the following steps:</div><div class="admonitionContent_S0QG"><ol><li>Download the Excel file that can be used as a template <a href="https://www.dropbox.com/s/03wjjf1lfkqjmtn/holdings_example.xlsx?dl=0" target="_blank" rel="noopener noreferrer">here</a>.</li><li>Move the file inside the <code>portfolio/holdings</code> folder within the <a href="/terminal/usage/advanceddata">OpenBBUserData</a> folder and, optionally, adjust the name to your liking.</li><li>Open the Excel file and remove, edit or add to the values as you desire (e.g. your own orders). This is the default template that is also loaded in with <code>load --example</code>.</li><li>Open up the OpenBB Terminal, go to <code>portfolio</code> and type <code>load --file</code>. Your Excel file should then be one of the options.</li></ol></div></div><p>Note that the Excel sheet requires the following columns:</p><ul><li><strong>Date</strong> - The date the trade occurred</li><li><strong>Name</strong> - The name of the security</li><li><strong>Type</strong> - The type of the security. Use Cash/Stock/Crypto/ETF as appropriate</li><li><strong>Price</strong> - The price the security was added or removed at, on a per-unit
basis</li><li><strong>Quantity</strong> - How much of the security in question was added or removed</li><li><strong>Side</strong> - Whether you bought or sold. Use Buy/Deposit/1 to add to the
portfolio or Sell/Withdrawal/0 to remove from the portfolio a search criteria,
country, sector or industry.</li></ul><p>The table below illustrates the required column titles:</p><table><thead><tr><th align="left">Date</th><th align="left">Type</th><th align="left">Ticker</th><th align="left">Side</th><th align="right">Price</th><th align="right">Quantity</th><th align="right">Fees</th><th align="right">Investment</th><th align="left">Currency</th><th align="left">Sector</th><th align="left">Industry</th><th align="left">Country</th><th align="left">Region</th></tr></thead><tbody><tr><td align="left">2021-10-29</td><td align="left">STOCK</td><td align="left">K.TO</td><td align="left">Buy</td><td align="right">7.93</td><td align="right">190</td><td align="right">20</td><td align="right">1526.7</td><td align="left">CAD</td><td align="left">Basic Materials</td><td align="left">Gold</td><td align="left">Canada</td><td align="left">North America</td></tr><tr><td align="left">2015-01-02</td><td align="left">ETF</td><td align="left">SPY</td><td align="left">Buy</td><td align="right">178.28</td><td align="right">5.6</td><td align="right">0</td><td align="right">998.368</td><td align="left">USD</td><td align="left">-</td><td align="left">-</td><td align="left">-</td><td align="left">-</td></tr><tr><td align="left">2015-01-01</td><td align="left">CRYPTO</td><td align="left">BTC-USD</td><td align="left">Buy</td><td align="right">1000</td><td align="right">2</td><td align="right">0</td><td align="right">2000</td><td align="left">USD</td><td align="left">Crypto</td><td align="left">Crypto</td><td align="left">Crypto</td><td align="left">Crypto</td></tr><tr><td align="left">2011-01-03</td><td align="left">STOCK</td><td align="left">AMZN</td><td align="left">Buy</td><td align="right">9.22</td><td align="right">100</td><td align="right">0</td><td align="right">922</td><td align="left">USD</td><td align="left">Consumer Cyclical</td><td align="left">Internet Retail</td><td align="left">United States</td><td align="left">North America</td></tr><tr><td align="left">2011-01-03</td><td align="left">STOCK</td><td align="left">AAPL</td><td align="left">Buy</td><td align="right">11.74</td><td align="right">100</td><td align="right">0</td><td align="right">1174</td><td align="left">USD</td><td align="left">Technology</td><td align="left">Consumer Electronics</td><td align="left">United States</td><td align="left">North America</td></tr><tr><td align="left">2011-01-03</td><td align="left">STOCK</td><td align="left">MSFT</td><td align="left">Buy</td><td align="right">28.04</td><td align="right">100</td><td align="right">0</td><td align="right">2804</td><td align="left">USD</td><td align="left">Technology</td><td align="left">Software-Infrastructure</td><td align="left">United States</td><td align="left">North America</td></tr><tr><td align="left">2011-01-03</td><td align="left">STOCK</td><td align="left">TSLA</td><td align="left">Buy</td><td align="right">1.76</td><td align="right">100</td><td align="right">0</td><td align="right">176</td><td align="left">USD</td><td align="left">Consumer Cyclical</td><td align="left">Auto Manufacturers</td><td align="left">United States</td><td align="left">North America</td></tr><tr><td align="left">2011-01-03</td><td align="left">STOCK</td><td align="left">GOOG</td><td align="left">Buy</td><td align="right">15.01</td><td align="right">100</td><td align="right">0</td><td align="right">1501</td><td align="left">USD</td><td align="left">Communication Services</td><td align="left">Internet Content &amp; Information</td><td align="left">United States</td><td align="left">North America</td></tr></tbody></table><p>The template Excel file also has additional columns but these are <em>optional</em>. The OpenBB SDK can figure out by itself what industry, sector, country and region belongs to the loaded in Equity. So the field can be left blank if your holdings do not include this information.</p><h2 class="anchor anchorWithStickyNavbar_LWe7" id="examples">Examples<a href="#examples" class="hash-link" aria-label="Direct link to Examples" title="Direct link to Examples">​</a></h2><p>The examples in this guide will assume that the import statements below are included at the top of the Python script or Jupyter Notebook.</p><h3 class="anchor anchorWithStickyNavbar_LWe7" id="import-statements">Import Statements<a href="#import-statements" class="hash-link" aria-label="Direct link to Import Statements" title="Direct link to Import Statements">​</a></h3><div class="language-python codeBlockContainer_Ckt0 theme-code-block" style="--prism-color:#9CDCFE;--prism-background-color:#1E1E1E"><div class="codeBlockContent_m3Ux"><pre tabindex="0" class="prism-code language-python codeBlock_qGQc thin-scrollbar"><code class="codeBlockLines_p187"><span class="token-line" style="color:#9CDCFE"><span class="token keyword" style="color:rgb(86, 156, 214)">from</span><span class="token plain"> openbb_terminal</span><span class="token punctuation" style="color:rgb(212, 212, 212)">.</span><span class="token plain">sdk </span><span class="token keyword" style="color:rgb(86, 156, 214)">import</span><span class="token plain"> openbb</span><br></span><span class="token-line" style="color:#9CDCFE"><span class="token plain"></span><span class="token keyword" style="color:rgb(86, 156, 214)">import</span><span class="token plain"> pandas </span><span class="token keyword" style="color:rgb(86, 156, 214)">as</span><span class="token plain"> pd</span><br></span><span class="token-line" style="color:#9CDCFE"><span class="token plain"></span><span class="token comment" style="color:rgb(106, 153, 85)"># %matplotlib inline (uncomment if using a Jupyter Notebook or an Interactive Window)</span><br></span></code></pre><div class="buttonGroup_6DOT"><button type="button" aria-label="Copy code to clipboard" title="Copy" class="clean-btn"><span class="copyButtonIcons_eSgA" aria-hidden="true"><svg viewBox="0 0 24 24" class="copyButtonIcon_y97N"><path fill="currentColor" d="M19,21H8V7H19M19,5H8A2,2 0 0,0 6,7V21A2,2 0 0,0 8,23H19A2,2 0 0,0 21,21V7A2,2 0 0,0 19,5M16,1H4A2,2 0 0,0 2,3V17H4V3H16V1Z"></path></svg><svg viewBox="0 0 24 24" class="copyButtonSuccessIcon_LjdS"><path fill="currentColor" d="M21,7L9,19L3.5,13.5L4.91,12.09L9,16.17L19.59,5.59L21,7Z"></path></svg></span></button></div></div></div><h3 class="anchor anchorWithStickyNavbar_LWe7" id="load">Load<a href="#load" class="hash-link" aria-label="Direct link to Load" title="Direct link to Load">​</a></h3><p>Taking the downloaded <code>holdings_example.xlsx</code> file from the previous section, let&#x27;s load it into the Portfolio Engine. There are a few parameters available for this function, and an object is returned.</p><div class="language-python codeBlockContainer_Ckt0 theme-code-block" style="--prism-color:#9CDCFE;--prism-background-color:#1E1E1E"><div class="codeBlockContent_m3Ux"><pre tabindex="0" class="prism-code language-python codeBlock_qGQc thin-scrollbar"><code class="codeBlockLines_p187"><span class="token-line" style="color:#9CDCFE"><span class="token builtin" style="color:rgb(86, 156, 214)">help</span><span class="token punctuation" style="color:rgb(212, 212, 212)">(</span><span class="token plain">openbb</span><span class="token punctuation" style="color:rgb(212, 212, 212)">.</span><span class="token plain">portfolio</span><span class="token punctuation" style="color:rgb(212, 212, 212)">.</span><span class="token plain">load</span><span class="token punctuation" style="color:rgb(212, 212, 212)">)</span><br></span></code></pre><div class="buttonGroup_6DOT"><button type="button" aria-label="Copy code to clipboard" title="Copy" class="clean-btn"><span class="copyButtonIcons_eSgA" aria-hidden="true"><svg viewBox="0 0 24 24" class="copyButtonIcon_y97N"><path fill="currentColor" d="M19,21H8V7H19M19,5H8A2,2 0 0,0 6,7V21A2,2 0 0,0 8,23H19A2,2 0 0,0 21,21V7A2,2 0 0,0 19,5M16,1H4A2,2 0 0,0 2,3V17H4V3H16V1Z"></path></svg><svg viewBox="0 0 24 24" class="copyButtonSuccessIcon_LjdS"><path fill="currentColor" d="M21,7L9,19L3.5,13.5L4.91,12.09L9,16.17L19.59,5.59L21,7Z"></path></svg></span></button></div></div></div><div class="language-console codeBlockContainer_Ckt0 theme-code-block" style="--prism-color:#9CDCFE;--prism-background-color:#1E1E1E"><div class="codeBlockContent_m3Ux"><pre tabindex="0" class="prism-code language-console codeBlock_qGQc thin-scrollbar"><code class="codeBlockLines_p187"><span class="token-line" style="color:#9CDCFE"><span class="token plain"> Get PortfolioEngine object</span><br></span><span class="token-line" style="color:#9CDCFE"><span class="token plain" style="display:inline-block"></span><br></span><span class="token-line" style="color:#9CDCFE"><span class="token plain"> Parameters</span><br></span><span class="token-line" style="color:#9CDCFE"><span class="token plain"> ----------</span><br></span><span class="token-line" style="color:#9CDCFE"><span class="token plain"> transactions_file_path : str</span><br></span><span class="token-line" style="color:#9CDCFE"><span class="token plain"> Path to transactions file</span><br></span><span class="token-line" style="color:#9CDCFE"><span class="token plain"> benchmark_symbol : str</span><br></span><span class="token-line" style="color:#9CDCFE"><span class="token plain"> Benchmark ticker to download data</span><br></span><span class="token-line" style="color:#9CDCFE"><span class="token plain"> full_shares : bool</span><br></span><span class="token-line" style="color:#9CDCFE"><span class="token plain"> Whether to mimic the portfolio trades exactly (partial shares) or round down the</span><br></span><span class="token-line" style="color:#9CDCFE"><span class="token plain"> quantity to the nearest number</span><br></span><span class="token-line" style="color:#9CDCFE"><span class="token plain"> risk_free_rate : float</span><br></span><span class="token-line" style="color:#9CDCFE"><span class="token plain"> Risk free rate in float format</span><br></span><span class="token-line" style="color:#9CDCFE"><span class="token plain" style="display:inline-block"></span><br></span><span class="token-line" style="color:#9CDCFE"><span class="token plain"> Returns</span><br></span><span class="token-line" style="color:#9CDCFE"><span class="token plain"> -------</span><br></span><span class="token-line" style="color:#9CDCFE"><span class="token plain"> PortfolioEngine</span><br></span><span class="token-line" style="color:#9CDCFE"><span class="token plain"> PortfolioEngine class instance, this will hold transactions and perform calculations</span><br></span><span class="token-line" style="color:#9CDCFE"><span class="token plain" style="display:inline-block"></span><br></span><span class="token-line" style="color:#9CDCFE"><span class="token plain"> Examples</span><br></span><span class="token-line" style="color:#9CDCFE"><span class="token plain"> --------</span><br></span><span class="token-line" style="color:#9CDCFE"><span class="token plain"> &gt;&gt;&gt; from openbb_terminal.sdk import openbb</span><br></span><span class="token-line" style="color:#9CDCFE"><span class="token plain"> &gt;&gt;&gt; p = openbb.portfolio.load(&quot;openbb_terminal/miscellaneous/portfolio_examples/holdings/example.csv&quot;)</span><br></span></code></pre><div class="buttonGroup_6DOT"><button type="button" aria-label="Copy code to clipboard" title="Copy" class="clean-btn"><span class="copyButtonIcons_eSgA" aria-hidden="true"><svg viewBox="0 0 24 24" class="copyButtonIcon_y97N"><path fill="currentColor" d="M19,21H8V7H19M19,5H8A2,2 0 0,0 6,7V21A2,2 0 0,0 8,23H19A2,2 0 0,0 21,21V7A2,2 0 0,0 19,5M16,1H4A2,2 0 0,0 2,3V17H4V3H16V1Z"></path></svg><svg viewBox="0 0 24 24" class="copyButtonSuccessIcon_LjdS"><path fill="currentColor" d="M21,7L9,19L3.5,13.5L4.91,12.09L9,16.17L19.59,5.59L21,7Z"></path></svg></span></button></div></div></div><p>The syntax should resemble something like the sample below; don&#x27;t forget to modify the path to match the local path.</p><div class="language-python codeBlockContainer_Ckt0 theme-code-block" style="--prism-color:#9CDCFE;--prism-background-color:#1E1E1E"><div class="codeBlockContent_m3Ux"><pre tabindex="0" class="prism-code language-python codeBlock_qGQc thin-scrollbar"><code class="codeBlockLines_p187"><span class="token-line" style="color:#9CDCFE"><span class="token plain">P </span><span class="token operator" style="color:rgb(212, 212, 212)">=</span><span class="token plain"> openbb</span><span class="token punctuation" style="color:rgb(212, 212, 212)">.</span><span class="token plain">portfolio</span><span class="token punctuation" style="color:rgb(212, 212, 212)">.</span><span class="token plain">load</span><span class="token punctuation" style="color:rgb(212, 212, 212)">(</span><span class="token plain"></span><br></span><span class="token-line" style="color:#9CDCFE"><span class="token plain"> transactions_file_path </span><span class="token operator" style="color:rgb(212, 212, 212)">=</span><span class="token plain"> </span><span class="token string" style="color:rgb(206, 145, 120)">&#x27;/Users/path_to/OpenBBUserData/portfolio/holdings/holdings_example.xlsx&#x27;</span><span class="token punctuation" style="color:rgb(212, 212, 212)">,</span><span class="token plain"></span><br></span><span class="token-line" style="color:#9CDCFE"><span class="token plain"> benchmark_symbol </span><span class="token operator" style="color:rgb(212, 212, 212)">=</span><span class="token plain"> </span><span class="token string" style="color:rgb(206, 145, 120)">&#x27;VTI&#x27;</span><span class="token punctuation" style="color:rgb(212, 212, 212)">,</span><span class="token plain"></span><br></span><span class="token-line" style="color:#9CDCFE"><span class="token plain"> full_shares </span><span class="token operator" style="color:rgb(212, 212, 212)">=</span><span class="token plain"> </span><span class="token boolean">False</span><span class="token punctuation" style="color:rgb(212, 212, 212)">,</span><span class="token plain"></span><br></span><span class="token-line" style="color:#9CDCFE"><span class="token plain"> risk_free_rate </span><span class="token operator" style="color:rgb(212, 212, 212)">=</span><span class="token plain"> </span><span class="token number" style="color:rgb(181, 206, 168)">3.0</span><span class="token plain"></span><br></span><span class="token-line" style="color:#9CDCFE"><span class="token plain"></span><span class="token punctuation" style="color:rgb(212, 212, 212)">)</span><br></span></code></pre><div class="buttonGroup_6DOT"><button type="button" aria-label="Copy code to clipboard" title="Copy" class="clean-btn"><span class="copyButtonIcons_eSgA" aria-hidden="true"><svg viewBox="0 0 24 24" class="copyButtonIcon_y97N"><path fill="currentColor" d="M19,21H8V7H19M19,5H8A2,2 0 0,0 6,7V21A2,2 0 0,0 8,23H19A2,2 0 0,0 21,21V7A2,2 0 0,0 19,5M16,1H4A2,2 0 0,0 2,3V17H4V3H16V1Z"></path></svg><svg viewBox="0 0 24 24" class="copyButtonSuccessIcon_LjdS"><path fill="currentColor" d="M21,7L9,19L3.5,13.5L4.91,12.09L9,16.17L19.59,5.59L21,7Z"></path></svg></span></button></div></div></div><div class="language-console codeBlockContainer_Ckt0 theme-code-block" style="--prism-color:#9CDCFE;--prism-background-color:#1E1E1E"><div class="codeBlockContent_m3Ux"><pre tabindex="0" class="prism-code language-console codeBlock_qGQc thin-scrollbar"><code class="codeBlockLines_p187"><span class="token-line" style="color:#9CDCFE"><span class="token plain">Preprocessing transactions: 100%|██████████| 14/14 [00:01&lt;00:00, 8.82it/s]</span><br></span><span class="token-line" style="color:#9CDCFE"><span class="token plain"> Loading price data: 100%|██████████| 3/3 [00:01&lt;00:00, 2.64it/s]</span><br></span><span class="token-line" style="color:#9CDCFE"><span class="token plain"> Calculating returns: 100%|██████████| 1/1 [00:00&lt;00:00, 14.52it/s]</span><br></span><span class="token-line" style="color:#9CDCFE"><span class="token plain"> Loading benchmark: 100%|██████████| 4/4 [00:04&lt;00:00, 1.21s/it]</span><br></span></code></pre><div class="buttonGroup_6DOT"><button type="button" aria-label="Copy code to clipboard" title="Copy" class="clean-btn"><span class="copyButtonIcons_eSgA" aria-hidden="true"><svg viewBox="0 0 24 24" class="copyButtonIcon_y97N"><path fill="currentColor" d="M19,21H8V7H19M19,5H8A2,2 0 0,0 6,7V21A2,2 0 0,0 8,23H19A2,2 0 0,0 21,21V7A2,2 0 0,0 19,5M16,1H4A2,2 0 0,0 2,3V17H4V3H16V1Z"></path></svg><svg viewBox="0 0 24 24" class="copyButtonSuccessIcon_LjdS"><path fill="currentColor" d="M21,7L9,19L3.5,13.5L4.91,12.09L9,16.17L19.59,5.59L21,7Z"></path></svg></span></button></div></div></div><h3 class="anchor anchorWithStickyNavbar_LWe7" id="the-portfolio-object">The Portfolio Object<a href="#the-portfolio-object" class="hash-link" aria-label="Direct link to The Portfolio Object" title="Direct link to The Portfolio Object">​</a></h3><p>A Portfolio Object is assigned to the variable, <code>P</code>. The created object, or parts of it, are used as inputs to the other functions in this module. It can also be interacted with directly, for example, to change the benchmark ticker. <code>SPY</code> is a holding in the example portfolio, so let&#x27;s stick with <code>VTI</code> as the performance benchmark.</p><div class="language-python codeBlockContainer_Ckt0 theme-code-block" style="--prism-color:#9CDCFE;--prism-background-color:#1E1E1E"><div class="codeBlockContent_m3Ux"><pre tabindex="0" class="prism-code language-python codeBlock_qGQc thin-scrollbar"><code class="codeBlockLines_p187"><span class="token-line" style="color:#9CDCFE"><span class="token plain">P</span><span class="token punctuation" style="color:rgb(212, 212, 212)">.</span><span class="token plain">set_benchmark</span><span class="token punctuation" style="color:rgb(212, 212, 212)">(</span><span class="token plain">symbol </span><span class="token operator" style="color:rgb(212, 212, 212)">=</span><span class="token plain"> </span><span class="token string" style="color:rgb(206, 145, 120)">&#x27;SPY&#x27;</span><span class="token punctuation" style="color:rgb(212, 212, 212)">)</span><span class="token plain"></span><br></span><span class="token-line" style="color:#9CDCFE"><span class="token plain" style="display:inline-block"></span><br></span><span class="token-line" style="color:#9CDCFE"><span class="token plain"> Loading benchmark</span><span class="token punctuation" style="color:rgb(212, 212, 212)">:</span><span class="token plain"> </span><span class="token number" style="color:rgb(181, 206, 168)">50</span><span class="token operator" style="color:rgb(212, 212, 212)">%</span><span class="token operator" style="color:rgb(212, 212, 212)">|</span><span class="token plain">█████ </span><span class="token operator" style="color:rgb(212, 212, 212)">|</span><span class="token plain"> </span><span class="token number" style="color:rgb(181, 206, 168)">2</span><span class="token operator" style="color:rgb(212, 212, 212)">/</span><span class="token number" style="color:rgb(181, 206, 168)">4</span><span class="token plain"> </span><span class="token punctuation" style="color:rgb(212, 212, 212)">[</span><span class="token number" style="color:rgb(181, 206, 168)">00</span><span class="token punctuation" style="color:rgb(212, 212, 212)">:</span><span class="token number" style="color:rgb(181, 206, 168)">00</span><span class="token operator" style="color:rgb(212, 212, 212)">&lt;</span><span class="token number" style="color:rgb(181, 206, 168)">00</span><span class="token punctuation" style="color:rgb(212, 212, 212)">:</span><span class="token number" style="color:rgb(181, 206, 168)">00</span><span class="token punctuation" style="color:rgb(212, 212, 212)">,</span><span class="token plain"> </span><span class="token number" style="color:rgb(181, 206, 168)">5</span><span class="token punctuation" style="color:rgb(212, 212, 212)">.</span><span class="token plain">69it</span><span class="token operator" style="color:rgb(212, 212, 212)">/</span><span class="token plain">s</span><span class="token punctuation" style="color:rgb(212, 212, 212)">]</span><span class="token plain"></span><br></span><span class="token-line" style="color:#9CDCFE"><span class="token plain" style="display:inline-block"></span><br></span><span class="token-line" style="color:#9CDCFE"><span class="token plain"></span><span class="token keyword" style="color:rgb(86, 156, 214)">print</span><span class="token punctuation" style="color:rgb(212, 212, 212)">(</span><span class="token plain">P</span><span class="token punctuation" style="color:rgb(212, 212, 212)">.</span><span class="token plain">benchmark_ticker</span><span class="token punctuation" style="color:rgb(212, 212, 212)">)</span><span class="token plain"></span><br></span><span class="token-line" style="color:#9CDCFE"><span class="token plain" style="display:inline-block"></span><br></span><span class="token-line" style="color:#9CDCFE"><span class="token plain">SPY</span><br></span></code></pre><div class="buttonGroup_6DOT"><button type="button" aria-label="Copy code to clipboard" title="Copy" class="clean-btn"><span class="copyButtonIcons_eSgA" aria-hidden="true"><svg viewBox="0 0 24 24" class="copyButtonIcon_y97N"><path fill="currentColor" d="M19,21H8V7H19M19,5H8A2,2 0 0,0 6,7V21A2,2 0 0,0 8,23H19A2,2 0 0,0 21,21V7A2,2 0 0,0 19,5M16,1H4A2,2 0 0,0 2,3V17H4V3H16V1Z"></path></svg><svg viewBox="0 0 24 24" class="copyButtonSuccessIcon_LjdS"><path fill="currentColor" d="M21,7L9,19L3.5,13.5L4.91,12.09L9,16.17L19.59,5.59L21,7Z"></path></svg></span></button></div></div></div><p>Populating a list of tickers from the Portfolio Object is accomplished by assigning a variable to it:</p><div class="language-python codeBlockContainer_Ckt0 theme-code-block" style="--prism-color:#9CDCFE;--prism-background-color:#1E1E1E"><div class="codeBlockContent_m3Ux"><pre tabindex="0" class="prism-code language-python codeBlock_qGQc thin-scrollbar"><code class="codeBlockLines_p187"><span class="token-line" style="color:#9CDCFE"><span class="token plain">tickers </span><span class="token operator" style="color:rgb(212, 212, 212)">=</span><span class="token plain"> P</span><span class="token punctuation" style="color:rgb(212, 212, 212)">.</span><span class="token plain">tickers_list</span><br></span><span class="token-line" style="color:#9CDCFE"><span class="token plain"></span><span class="token keyword" style="color:rgb(86, 156, 214)">print</span><span class="token punctuation" style="color:rgb(212, 212, 212)">(</span><span class="token plain">tickers</span><span class="token punctuation" style="color:rgb(212, 212, 212)">)</span><span class="token plain"></span><br></span><span class="token-line" style="color:#9CDCFE"><span class="token plain" style="display:inline-block"></span><br></span><span class="token-line" style="color:#9CDCFE"><span class="token plain"></span><span class="token punctuation" style="color:rgb(212, 212, 212)">[</span><span class="token string" style="color:rgb(206, 145, 120)">&#x27;SPY&#x27;</span><span class="token punctuation" style="color:rgb(212, 212, 212)">,</span><span class="token plain"> </span><span class="token string" style="color:rgb(206, 145, 120)">&#x27;TSLA&#x27;</span><span class="token punctuation" style="color:rgb(212, 212, 212)">,</span><span class="token plain"> </span><span class="token string" style="color:rgb(206, 145, 120)">&#x27;K.TO&#x27;</span><span class="token punctuation" style="color:rgb(212, 212, 212)">,</span><span class="token plain"> </span><span class="token string" style="color:rgb(206, 145, 120)">&#x27;AAPL&#x27;</span><span class="token punctuation" style="color:rgb(212, 212, 212)">,</span><span class="token plain"> </span><span class="token string" style="color:rgb(206, 145, 120)">&#x27;AMZN&#x27;</span><span class="token punctuation" style="color:rgb(212, 212, 212)">,</span><span class="token plain"> </span><span class="token string" style="color:rgb(206, 145, 120)">&#x27;MSFT&#x27;</span><span class="token punctuation" style="color:rgb(212, 212, 212)">,</span><span class="token plain"> </span><span class="token string" style="color:rgb(206, 145, 120)">&#x27;BTC-USD&#x27;</span><span class="token punctuation" style="color:rgb(212, 212, 212)">,</span><span class="token plain"> </span><span class="token string" style="color:rgb(206, 145, 120)">&#x27;GOOG&#x27;</span><span class="token punctuation" style="color:rgb(212, 212, 212)">]</span><br></span></code></pre><div class="buttonGroup_6DOT"><button type="button" aria-label="Copy code to clipboard" title="Copy" class="clean-btn"><span class="copyButtonIcons_eSgA" aria-hidden="true"><svg viewBox="0 0 24 24" class="copyButtonIcon_y97N"><path fill="currentColor" d="M19,21H8V7H19M19,5H8A2,2 0 0,0 6,7V21A2,2 0 0,0 8,23H19A2,2 0 0,0 21,21V7A2,2 0 0,0 19,5M16,1H4A2,2 0 0,0 2,3V17H4V3H16V1Z"></path></svg><svg viewBox="0 0 24 24" class="copyButtonSuccessIcon_LjdS"><path fill="currentColor" d="M21,7L9,19L3.5,13.5L4.91,12.09L9,16.17L19.59,5.59L21,7Z"></path></svg></span></button></div></div></div><h3 class="anchor anchorWithStickyNavbar_LWe7" id="show">Show<a href="#show" class="hash-link" aria-label="Direct link to Show" title="Direct link to Show">​</a></h3><p><code>openbb.portfolio.show</code> is for displaying the transactions from the loaded portfolio file. Scroll back up to view the output of this function again.</p><div class="language-python codeBlockContainer_Ckt0 theme-code-block" style="--prism-color:#9CDCFE;--prism-background-color:#1E1E1E"><div class="codeBlockContent_m3Ux"><pre tabindex="0" class="prism-code language-python codeBlock_qGQc thin-scrollbar"><code class="codeBlockLines_p187"><span class="token-line" style="color:#9CDCFE"><span class="token plain">openbb</span><span class="token punctuation" style="color:rgb(212, 212, 212)">.</span><span class="token plain">portfolio</span><span class="token punctuation" style="color:rgb(212, 212, 212)">.</span><span class="token plain">show</span><span class="token punctuation" style="color:rgb(212, 212, 212)">(</span><span class="token plain">P</span><span class="token punctuation" style="color:rgb(212, 212, 212)">)</span><br></span></code></pre><div class="buttonGroup_6DOT"><button type="button" aria-label="Copy code to clipboard" title="Copy" class="clean-btn"><span class="copyButtonIcons_eSgA" aria-hidden="true"><svg viewBox="0 0 24 24" class="copyButtonIcon_y97N"><path fill="currentColor" d="M19,21H8V7H19M19,5H8A2,2 0 0,0 6,7V21A2,2 0 0,0 8,23H19A2,2 0 0,0 21,21V7A2,2 0 0,0 19,5M16,1H4A2,2 0 0,0 2,3V17H4V3H16V1Z"></path></svg><svg viewBox="0 0 24 24" class="copyButtonSuccessIcon_LjdS"><path fill="currentColor" d="M21,7L9,19L3.5,13.5L4.91,12.09L9,16.17L19.59,5.59L21,7Z"></path></svg></span></button></div></div></div><h3 class="anchor anchorWithStickyNavbar_LWe7" id="perf">Perf<a href="#perf" class="hash-link" aria-label="Direct link to Perf" title="Direct link to Perf">​</a></h3><p>Performance against the benchmark is summarized in a table with, <code>openbb.portfolio.perf</code>.</p><div class="language-python codeBlockContainer_Ckt0 theme-code-block" style="--prism-color:#9CDCFE;--prism-background-color:#1E1E1E"><div class="codeBlockContent_m3Ux"><pre tabindex="0" class="prism-code language-python codeBlock_qGQc thin-scrollbar"><code class="codeBlockLines_p187"><span class="token-line" style="color:#9CDCFE"><span class="token keyword" style="color:rgb(86, 156, 214)">print</span><span class="token punctuation" style="color:rgb(212, 212, 212)">(</span><span class="token plain">openbb</span><span class="token punctuation" style="color:rgb(212, 212, 212)">.</span><span class="token plain">portfolio</span><span class="token punctuation" style="color:rgb(212, 212, 212)">.</span><span class="token plain">perf</span><span class="token punctuation" style="color:rgb(212, 212, 212)">(</span><span class="token plain">P</span><span class="token punctuation" style="color:rgb(212, 212, 212)">)</span><span class="token punctuation" style="color:rgb(212, 212, 212)">)</span><br></span></code></pre><div class="buttonGroup_6DOT"><button type="button" aria-label="Copy code to clipboard" title="Copy" class="clean-btn"><span class="copyButtonIcons_eSgA" aria-hidden="true"><svg viewBox="0 0 24 24" class="copyButtonIcon_y97N"><path fill="currentColor" d="M19,21H8V7H19M19,5H8A2,2 0 0,0 6,7V21A2,2 0 0,0 8,23H19A2,2 0 0,0 21,21V7A2,2 0 0,0 19,5M16,1H4A2,2 0 0,0 2,3V17H4V3H16V1Z"></path></svg><svg viewBox="0 0 24 24" class="copyButtonSuccessIcon_LjdS"><path fill="currentColor" d="M21,7L9,19L3.5,13.5L4.91,12.09L9,16.17L19.59,5.59L21,7Z"></path></svg></span></button></div></div></div><table><thead><tr><th align="left"></th><th align="left">Portfolio</th><th align="left">Benchmark</th><th align="left">Difference</th></tr></thead><tbody><tr><td align="left">Total Investment</td><td align="left">11102.07</td><td align="left">11102.07</td><td align="left">-</td></tr><tr><td align="left">Total Value</td><td align="left">114027.38</td><td align="left">36203.96</td><td align="left">77823.43</td></tr><tr><td align="left">Total % Return</td><td align="left">927.08%</td><td align="left">226.10%</td><td align="left">700.98%</td></tr><tr><td align="left">Total Abs Return</td><td align="left">102925.31</td><td align="left">25101.89</td><td align="left">77823.43</td></tr></tbody></table><h3 class="anchor anchorWithStickyNavbar_LWe7" id="summary">Summary<a href="#summary" class="hash-link" aria-label="Direct link to Summary" title="Direct link to Summary">​</a></h3><p><code>openbb.portfolio.summary</code> prints a table of risk metrics, comparing the portfolio against the benchmark.</p><div class="language-python codeBlockContainer_Ckt0 theme-code-block" style="--prism-color:#9CDCFE;--prism-background-color:#1E1E1E"><div class="codeBlockContent_m3Ux"><pre tabindex="0" class="prism-code language-python codeBlock_qGQc thin-scrollbar"><code class="codeBlockLines_p187"><span class="token-line" style="color:#9CDCFE"><span class="token keyword" style="color:rgb(86, 156, 214)">print</span><span class="token punctuation" style="color:rgb(212, 212, 212)">(</span><span class="token plain">openbb</span><span class="token punctuation" style="color:rgb(212, 212, 212)">.</span><span class="token plain">portfolio</span><span class="token punctuation" style="color:rgb(212, 212, 212)">.</span><span class="token plain">summary</span><span class="token punctuation" style="color:rgb(212, 212, 212)">(</span><span class="token plain">P</span><span class="token punctuation" style="color:rgb(212, 212, 212)">)</span><span class="token punctuation" style="color:rgb(212, 212, 212)">)</span><br></span></code></pre><div class="buttonGroup_6DOT"><button type="button" aria-label="Copy code to clipboard" title="Copy" class="clean-btn"><span class="copyButtonIcons_eSgA" aria-hidden="true"><svg viewBox="0 0 24 24" class="copyButtonIcon_y97N"><path fill="currentColor" d="M19,21H8V7H19M19,5H8A2,2 0 0,0 6,7V21A2,2 0 0,0 8,23H19A2,2 0 0,0 21,21V7A2,2 0 0,0 19,5M16,1H4A2,2 0 0,0 2,3V17H4V3H16V1Z"></path></svg><svg viewBox="0 0 24 24" class="copyButtonSuccessIcon_LjdS"><path fill="currentColor" d="M21,7L9,19L3.5,13.5L4.91,12.09L9,16.17L19.59,5.59L21,7Z"></path></svg></span></button></div></div></div><table><thead><tr><th align="left"></th><th align="left">Portfolio</th><th align="left">Benchmark</th><th align="left">Difference</th></tr></thead><tbody><tr><td align="left">Volatility</td><td align="left">1.65%</td><td align="left">0.99%</td><td align="left">0.66%</td></tr><tr><td align="left">Skew</td><td align="left">-0.32</td><td align="left">-0.61</td><td align="left">0.29</td></tr><tr><td align="left">Kurtosis</td><td align="left">8.80</td><td align="left">16.87</td><td align="left">-8.079</td></tr><tr><td align="left">Maximum Drawdown</td><td align="left">-59.05%</td><td align="left">-35.00%</td><td align="left">-24.05%</td></tr><tr><td align="left">Sharpe ratio</td><td align="left">0.05</td><td align="left">0.039</td><td align="left">0.011</td></tr><tr><td align="left">Sortino ratio</td><td align="left">0.06</td><td align="left">0.04</td><td align="left">0.021</td></tr><tr><td align="left">R2 Score</td><td align="left">41.36%</td><td align="left">41.36%</td><td align="left">0.00%</td></tr></tbody></table><h3 class="anchor anchorWithStickyNavbar_LWe7" id="maxdd">MaxDD<a href="#maxdd" class="hash-link" aria-label="Direct link to MaxDD" title="Direct link to MaxDD">​</a></h3><p><code>openbb.portfolio.maxdd</code> calculates the maximum drawdown as price and % value; it returns a Tuple.</p><div class="language-python codeBlockContainer_Ckt0 theme-code-block" style="--prism-color:#9CDCFE;--prism-background-color:#1E1E1E"><div class="codeBlockContent_m3Ux"><pre tabindex="0" class="prism-code language-python codeBlock_qGQc thin-scrollbar"><code class="codeBlockLines_p187"><span class="token-line" style="color:#9CDCFE"><span class="token plain">holdings</span><span class="token punctuation" style="color:rgb(212, 212, 212)">,</span><span class="token plain">dd </span><span class="token operator" style="color:rgb(212, 212, 212)">=</span><span class="token plain"> openbb</span><span class="token punctuation" style="color:rgb(212, 212, 212)">.</span><span class="token plain">portfolio</span><span class="token punctuation" style="color:rgb(212, 212, 212)">.</span><span class="token plain">maxdd</span><span class="token punctuation" style="color:rgb(212, 212, 212)">(</span><span class="token plain">P</span><span class="token punctuation" style="color:rgb(212, 212, 212)">)</span><span class="token plain"></span><br></span><span class="token-line" style="color:#9CDCFE"><span class="token plain">dd </span><span class="token operator" style="color:rgb(212, 212, 212)">=</span><span class="token plain"> pd</span><span class="token punctuation" style="color:rgb(212, 212, 212)">.</span><span class="token plain">DataFrame</span><span class="token punctuation" style="color:rgb(212, 212, 212)">(</span><span class="token plain">dd</span><span class="token punctuation" style="color:rgb(212, 212, 212)">)</span><span class="token plain"></span><br></span><span class="token-line" style="color:#9CDCFE"><span class="token plain">dd</span><span class="token punctuation" style="color:rgb(212, 212, 212)">.</span><span class="token plain">rename</span><span class="token punctuation" style="color:rgb(212, 212, 212)">(</span><span class="token plain">columns </span><span class="token operator" style="color:rgb(212, 212, 212)">=</span><span class="token plain"> </span><span class="token punctuation" style="color:rgb(212, 212, 212)">{</span><span class="token string" style="color:rgb(206, 145, 120)">&#x27;Total&#x27;</span><span class="token punctuation" style="color:rgb(212, 212, 212)">:</span><span class="token plain"> </span><span class="token string" style="color:rgb(206, 145, 120)">&#x27;Portfolio % Drawdown&#x27;</span><span class="token punctuation" style="color:rgb(212, 212, 212)">}</span><span class="token punctuation" style="color:rgb(212, 212, 212)">,</span><span class="token plain"> inplace </span><span class="token operator" style="color:rgb(212, 212, 212)">=</span><span class="token plain"> </span><span class="token boolean">True</span><span class="token punctuation" style="color:rgb(212, 212, 212)">)</span><span class="token plain"></span><br></span><span class="token-line" style="color:#9CDCFE"><span class="token plain">holdings </span><span class="token operator" style="color:rgb(212, 212, 212)">=</span><span class="token plain"> pd</span><span class="token punctuation" style="color:rgb(212, 212, 212)">.</span><span class="token plain">DataFrame</span><span class="token punctuation" style="color:rgb(212, 212, 212)">(</span><span class="token plain">holdings</span><span class="token punctuation" style="color:rgb(212, 212, 212)">)</span><span class="token plain"></span><br></span><span class="token-line" style="color:#9CDCFE"><span class="token plain">holdings</span><span class="token punctuation" style="color:rgb(212, 212, 212)">.</span><span class="token plain">rename</span><span class="token punctuation" style="color:rgb(212, 212, 212)">(</span><span class="token plain">columns </span><span class="token operator" style="color:rgb(212, 212, 212)">=</span><span class="token plain"> </span><span class="token punctuation" style="color:rgb(212, 212, 212)">{</span><span class="token string" style="color:rgb(206, 145, 120)">&#x27;Total&#x27;</span><span class="token punctuation" style="color:rgb(212, 212, 212)">:</span><span class="token plain"> </span><span class="token string" style="color:rgb(206, 145, 120)">&#x27;Portfolio Value&#x27;</span><span class="token punctuation" style="color:rgb(212, 212, 212)">}</span><span class="token punctuation" style="color:rgb(212, 212, 212)">,</span><span class="token plain"> inplace </span><span class="token operator" style="color:rgb(212, 212, 212)">=</span><span class="token plain"> </span><span class="token boolean">True</span><span class="token punctuation" style="color:rgb(212, 212, 212)">)</span><span class="token plain"></span><br></span><span class="token-line" style="color:#9CDCFE"><span class="token plain">dd </span><span class="token operator" style="color:rgb(212, 212, 212)">=</span><span class="token plain"> dd</span><span class="token punctuation" style="color:rgb(212, 212, 212)">.</span><span class="token plain">join</span><span class="token punctuation" style="color:rgb(212, 212, 212)">(</span><span class="token plain">holdings</span><span class="token punctuation" style="color:rgb(212, 212, 212)">)</span><span class="token plain"></span><br></span><span class="token-line" style="color:#9CDCFE"><span class="token plain">dd</span><span class="token punctuation" style="color:rgb(212, 212, 212)">.</span><span class="token plain">index </span><span class="token operator" style="color:rgb(212, 212, 212)">=</span><span class="token plain"> dd</span><span class="token punctuation" style="color:rgb(212, 212, 212)">.</span><span class="token plain">index</span><span class="token punctuation" style="color:rgb(212, 212, 212)">.</span><span class="token plain">strftime</span><span class="token punctuation" style="color:rgb(212, 212, 212)">(</span><span class="token plain">date_format</span><span class="token operator" style="color:rgb(212, 212, 212)">=</span><span class="token string" style="color:rgb(206, 145, 120)">&#x27;%Y-%m-%d&#x27;</span><span class="token punctuation" style="color:rgb(212, 212, 212)">)</span><span class="token plain"></span><br></span><span class="token-line" style="color:#9CDCFE"><span class="token plain"></span><span class="token keyword" style="color:rgb(86, 156, 214)">print</span><span class="token punctuation" style="color:rgb(212, 212, 212)">(</span><span class="token plain">dd</span><span class="token punctuation" style="color:rgb(212, 212, 212)">.</span><span class="token plain">tail</span><span class="token punctuation" style="color:rgb(212, 212, 212)">(</span><span class="token number" style="color:rgb(181, 206, 168)">5</span><span class="token punctuation" style="color:rgb(212, 212, 212)">)</span><span class="token punctuation" style="color:rgb(212, 212, 212)">)</span><br></span></code></pre><div class="buttonGroup_6DOT"><button type="button" aria-label="Copy code to clipboard" title="Copy" class="clean-btn"><span class="copyButtonIcons_eSgA" aria-hidden="true"><svg viewBox="0 0 24 24" class="copyButtonIcon_y97N"><path fill="currentColor" d="M19,21H8V7H19M19,5H8A2,2 0 0,0 6,7V21A2,2 0 0,0 8,23H19A2,2 0 0,0 21,21V7A2,2 0 0,0 19,5M16,1H4A2,2 0 0,0 2,3V17H4V3H16V1Z"></path></svg><svg viewBox="0 0 24 24" class="copyButtonSuccessIcon_LjdS"><path fill="currentColor" d="M21,7L9,19L3.5,13.5L4.91,12.09L9,16.17L19.59,5.59L21,7Z"></path></svg></span></button></div></div></div><table><thead><tr><th align="left">Date</th><th align="right">Portfolio % Drawdown</th><th align="right">Portfolio Value</th></tr></thead><tbody><tr><td align="left">2022-11-21</td><td align="right">-0.58</td><td align="right">109442</td></tr><tr><td align="left">2022-11-22</td><td align="right">-0.57</td><td align="right">111257</td></tr><tr><td align="left">2022-11-23</td><td align="right">-0.56</td><td align="right">114017</td></tr><tr><td align="left">2022-11-24</td><td align="right">-0.56</td><td align="right">114027</td></tr><tr><td align="left">2022-11-25</td><td align="right">-0.56</td><td align="right">113302</td></tr></tbody></table><p>MaxDD also has a <code>_chart</code> command, and is called with:</p><div class="language-python codeBlockContainer_Ckt0 theme-code-block" style="--prism-color:#9CDCFE;--prism-background-color:#1E1E1E"><div class="codeBlockContent_m3Ux"><pre tabindex="0" class="prism-code language-python codeBlock_qGQc thin-scrollbar"><code class="codeBlockLines_p187"><span class="token-line" style="color:#9CDCFE"><span class="token plain">openbb</span><span class="token punctuation" style="color:rgb(212, 212, 212)">.</span><span class="token plain">portfolio</span><span class="token punctuation" style="color:rgb(212, 212, 212)">.</span><span class="token plain">maxdd_chart</span><span class="token punctuation" style="color:rgb(212, 212, 212)">(</span><span class="token plain">P</span><span class="token punctuation" style="color:rgb(212, 212, 212)">)</span><br></span></code></pre><div class="buttonGroup_6DOT"><button type="button" aria-label="Copy code to clipboard" title="Copy" class="clean-btn"><span class="copyButtonIcons_eSgA" aria-hidden="true"><svg viewBox="0 0 24 24" class="copyButtonIcon_y97N"><path fill="currentColor" d="M19,21H8V7H19M19,5H8A2,2 0 0,0 6,7V21A2,2 0 0,0 8,23H19A2,2 0 0,0 21,21V7A2,2 0 0,0 19,5M16,1H4A2,2 0 0,0 2,3V17H4V3H16V1Z"></path></svg><svg viewBox="0 0 24 24" class="copyButtonSuccessIcon_LjdS"><path fill="currentColor" d="M21,7L9,19L3.5,13.5L4.91,12.09L9,16.17L19.59,5.59L21,7Z"></path></svg></span></button></div></div></div><p><img loading="lazy" src="https://user-images.githubusercontent.com/85772166/204072456-f6b8e038-08ef-4ac5-9920-14a9c1e4197f.png" alt="openbb.portfolio.maxdd_chart" title="openbb.portfolio.maxdd_chart" class="img_ev3q"></p><h3 class="anchor anchorWithStickyNavbar_LWe7" id="rsharpe">RSharpe<a href="#rsharpe" class="hash-link" aria-label="Direct link to RSharpe" title="Direct link to RSharpe">​</a></h3><p>Calculate a rolling sharpe ratio over a specified window.</p><div class="language-python codeBlockContainer_Ckt0 theme-code-block" style="--prism-color:#9CDCFE;--prism-background-color:#1E1E1E"><div class="codeBlockContent_m3Ux"><pre tabindex="0" class="prism-code language-python codeBlock_qGQc thin-scrollbar"><code class="codeBlockLines_p187"><span class="token-line" style="color:#9CDCFE"><span class="token plain">rs </span><span class="token operator" style="color:rgb(212, 212, 212)">=</span><span class="token plain"> openbb</span><span class="token punctuation" style="color:rgb(212, 212, 212)">.</span><span class="token plain">portfolio</span><span class="token punctuation" style="color:rgb(212, 212, 212)">.</span><span class="token plain">rsharpe</span><span class="token punctuation" style="color:rgb(212, 212, 212)">(</span><span class="token plain">P</span><span class="token punctuation" style="color:rgb(212, 212, 212)">,</span><span class="token plain"> window </span><span class="token operator" style="color:rgb(212, 212, 212)">=</span><span class="token plain"> </span><span class="token string" style="color:rgb(206, 145, 120)">&#x27;3m&#x27;</span><span class="token punctuation" style="color:rgb(212, 212, 212)">)</span><span class="token plain"></span><br></span><span class="token-line" style="color:#9CDCFE"><span class="token plain">rs</span><span class="token punctuation" style="color:rgb(212, 212, 212)">.</span><span class="token plain">rename</span><span class="token punctuation" style="color:rgb(212, 212, 212)">(</span><span class="token plain">columns </span><span class="token operator" style="color:rgb(212, 212, 212)">=</span><span class="token plain"> </span><span class="token punctuation" style="color:rgb(212, 212, 212)">{</span><span class="token string" style="color:rgb(206, 145, 120)">&#x27;portfolio&#x27;</span><span class="token punctuation" style="color:rgb(212, 212, 212)">:</span><span class="token plain"> </span><span class="token string" style="color:rgb(206, 145, 120)">&#x27;Portfolio Sharpe&#x27;</span><span class="token punctuation" style="color:rgb(212, 212, 212)">,</span><span class="token plain"> </span><span class="token string" style="color:rgb(206, 145, 120)">&#x27;benchmark&#x27;</span><span class="token punctuation" style="color:rgb(212, 212, 212)">:</span><span class="token plain"> </span><span class="token string" style="color:rgb(206, 145, 120)">&#x27;Benchmark Sharpe&#x27;</span><span class="token punctuation" style="color:rgb(212, 212, 212)">}</span><span class="token punctuation" style="color:rgb(212, 212, 212)">,</span><span class="token plain"> inplace </span><span class="token operator" style="color:rgb(212, 212, 212)">=</span><span class="token plain"> </span><span class="token boolean">True</span><span class="token punctuation" style="color:rgb(212, 212, 212)">)</span><span class="token plain"></span><br></span><span class="token-line" style="color:#9CDCFE"><span class="token plain">rs</span><span class="token punctuation" style="color:rgb(212, 212, 212)">.</span><span class="token plain">index </span><span class="token operator" style="color:rgb(212, 212, 212)">=</span><span class="token plain"> rs</span><span class="token punctuation" style="color:rgb(212, 212, 212)">.</span><span class="token plain">index</span><span class="token punctuation" style="color:rgb(212, 212, 212)">.</span><span class="token plain">strftime</span><span class="token punctuation" style="color:rgb(212, 212, 212)">(</span><span class="token plain">date_format</span><span class="token operator" style="color:rgb(212, 212, 212)">=</span><span class="token string" style="color:rgb(206, 145, 120)">&#x27;%Y-%m-%d&#x27;</span><span class="token punctuation" style="color:rgb(212, 212, 212)">)</span><span class="token plain"></span><br></span><span class="token-line" style="color:#9CDCFE"><span class="token plain"></span><span class="token keyword" style="color:rgb(86, 156, 214)">print</span><span class="token punctuation" style="color:rgb(212, 212, 212)">(</span><span class="token plain">rs</span><span class="token punctuation" style="color:rgb(212, 212, 212)">.</span><span class="token plain">tail</span><span class="token punctuation" style="color:rgb(212, 212, 212)">(</span><span class="token number" style="color:rgb(181, 206, 168)">5</span><span class="token punctuation" style="color:rgb(212, 212, 212)">)</span><span class="token punctuation" style="color:rgb(212, 212, 212)">)</span><br></span></code></pre><div class="buttonGroup_6DOT"><button type="button" aria-label="Copy code to clipboard" title="Copy" class="clean-btn"><span class="copyButtonIcons_eSgA" aria-hidden="true"><svg viewBox="0 0 24 24" class="copyButtonIcon_y97N"><path fill="currentColor" d="M19,21H8V7H19M19,5H8A2,2 0 0,0 6,7V21A2,2 0 0,0 8,23H19A2,2 0 0,0 21,21V7A2,2 0 0,0 19,5M16,1H4A2,2 0 0,0 2,3V17H4V3H16V1Z"></path></svg><svg viewBox="0 0 24 24" class="copyButtonSuccessIcon_LjdS"><path fill="currentColor" d="M21,7L9,19L3.5,13.5L4.91,12.09L9,16.17L19.59,5.59L21,7Z"></path></svg></span></button></div></div></div><table><thead><tr><th align="left">Date</th><th align="right">Portfolio Sharpe</th><th align="right">Benchmark Sharpe</th></tr></thead><tbody><tr><td align="left">2022-11-21</td><td align="right">-0.15</td><td align="right">0.02</td></tr><tr><td align="left">2022-11-22</td><td align="right">-0.13</td><td align="right">0.05</td></tr><tr><td align="left">2022-11-23</td><td align="right">-0.09</td><td align="right">0.07</td></tr><tr><td align="left">2022-11-24</td><td align="right">-0.09</td><td align="right">0.08</td></tr><tr><td align="left">2022-11-25</td><td align="right">-0.09</td><td align="right">0.11</td></tr></tbody></table><h3 class="anchor anchorWithStickyNavbar_LWe7" id="rvol">RVol<a href="#rvol" class="hash-link" aria-label="Direct link to RVol" title="Direct link to RVol">​</a></h3><p><code>openbb.portfolio.rvol</code> has the same input parameters as <code>rsharpe</code>.</p><div class="language-python codeBlockContainer_Ckt0 theme-code-block" style="--prism-color:#9CDCFE;--prism-background-color:#1E1E1E"><div class="codeBlockContent_m3Ux"><pre tabindex="0" class="prism-code language-python codeBlock_qGQc thin-scrollbar"><code class="codeBlockLines_p187"><span class="token-line" style="color:#9CDCFE"><span class="token plain">rv </span><span class="token operator" style="color:rgb(212, 212, 212)">=</span><span class="token plain"> openbb</span><span class="token punctuation" style="color:rgb(212, 212, 212)">.</span><span class="token plain">portfolio</span><span class="token punctuation" style="color:rgb(212, 212, 212)">.</span><span class="token plain">rvol</span><span class="token punctuation" style="color:rgb(212, 212, 212)">(</span><span class="token plain">P</span><span class="token punctuation" style="color:rgb(212, 212, 212)">,</span><span class="token plain"> window </span><span class="token operator" style="color:rgb(212, 212, 212)">=</span><span class="token plain"> </span><span class="token string" style="color:rgb(206, 145, 120)">&#x27;3m&#x27;</span><span class="token punctuation" style="color:rgb(212, 212, 212)">)</span><span class="token plain"></span><br></span><span class="token-line" style="color:#9CDCFE"><span class="token plain">rv</span><span class="token punctuation" style="color:rgb(212, 212, 212)">.</span><span class="token plain">rename</span><span class="token punctuation" style="color:rgb(212, 212, 212)">(</span><span class="token plain">columns</span><span class="token operator" style="color:rgb(212, 212, 212)">=</span><span class="token punctuation" style="color:rgb(212, 212, 212)">{</span><span class="token string" style="color:rgb(206, 145, 120)">&#x27;portfolio&#x27;</span><span class="token punctuation" style="color:rgb(212, 212, 212)">:</span><span class="token plain"> </span><span class="token string" style="color:rgb(206, 145, 120)">&#x27;Portfolio Volatility&#x27;</span><span class="token punctuation" style="color:rgb(212, 212, 212)">,</span><span class="token plain"> </span><span class="token string" style="color:rgb(206, 145, 120)">&#x27;benchmark&#x27;</span><span class="token punctuation" style="color:rgb(212, 212, 212)">:</span><span class="token plain"> </span><span class="token string" style="color:rgb(206, 145, 120)">&#x27;Benchmark Volatility&#x27;</span><span class="token punctuation" style="color:rgb(212, 212, 212)">}</span><span class="token punctuation" style="color:rgb(212, 212, 212)">,</span><span class="token plain"> inplace </span><span class="token operator" style="color:rgb(212, 212, 212)">=</span><span class="token plain"> </span><span class="token boolean">True</span><span class="token punctuation" style="color:rgb(212, 212, 212)">)</span><span class="token plain"></span><br></span><span class="token-line" style="color:#9CDCFE"><span class="token plain">rv</span><span class="token punctuation" style="color:rgb(212, 212, 212)">.</span><span class="token plain">index </span><span class="token operator" style="color:rgb(212, 212, 212)">=</span><span class="token plain"> rv</span><span class="token punctuation" style="color:rgb(212, 212, 212)">.</span><span class="token plain">index</span><span class="token punctuation" style="color:rgb(212, 212, 212)">.</span><span class="token plain">strftime</span><span class="token punctuation" style="color:rgb(212, 212, 212)">(</span><span class="token plain">date_format</span><span class="token operator" style="color:rgb(212, 212, 212)">=</span><span class="token string" style="color:rgb(206, 145, 120)">&#x27;%Y-%m-%d&#x27;</span><span class="token punctuation" style="color:rgb(212, 212, 212)">)</span><span class="token plain"></span><br></span><span class="token-line" style="color:#9CDCFE"><span class="token plain" style="display:inline-block"></span><br></span><span class="token-line" style="color:#9CDCFE"><span class="token plain"></span><span class="token keyword" style="color:rgb(86, 156, 214)">print</span><span class="token punctuation" style="color:rgb(212, 212, 212)">(</span><span class="token plain">rv</span><span class="token punctuation" style="color:rgb(212, 212, 212)">.</span><span class="token plain">tail</span><span class="token punctuation" style="color:rgb(212, 212, 212)">(</span><span class="token number" style="color:rgb(181, 206, 168)">5</span><span class="token punctuation" style="color:rgb(212, 212, 212)">)</span><span class="token punctuation" style="color:rgb(212, 212, 212)">)</span><br></span></code></pre><div class="buttonGroup_6DOT"><button type="button" aria-label="Copy code to clipboard" title="Copy" class="clean-btn"><span class="copyButtonIcons_eSgA" aria-hidden="true"><svg viewBox="0 0 24 24" class="copyButtonIcon_y97N"><path fill="currentColor" d="M19,21H8V7H19M19,5H8A2,2 0 0,0 6,7V21A2,2 0 0,0 8,23H19A2,2 0 0,0 21,21V7A2,2 0 0,0 19,5M16,1H4A2,2 0 0,0 2,3V17H4V3H16V1Z"></path></svg><svg viewBox="0 0 24 24" class="copyButtonSuccessIcon_LjdS"><path fill="currentColor" d="M21,7L9,19L3.5,13.5L4.91,12.09L9,16.17L19.59,5.59L21,7Z"></path></svg></span></button></div></div></div><table><thead><tr><th align="left">Date</th><th align="right">Portfolio Volatility</th><th align="right">Benchmark Volatility</th></tr></thead><tbody><tr><td align="left">2022-11-23</td><td align="right">0.021727</td><td align="right">0.014490</td></tr><tr><td align="left">2022-11-24</td><td align="right">0.021715</td><td align="right">0.014439</td></tr><tr><td align="left">2022-11-25</td><td align="right">0.021596</td><td align="right">0.014256</td></tr><tr><td align="left">2022-11-26</td><td align="right">0.021591</td><td align="right">0.014256</td></tr><tr><td align="left">2022-11-27</td><td align="right">0.021592</td><td align="right">0.014256</td></tr></tbody></table><h3 class="anchor anchorWithStickyNavbar_LWe7" id="dret">DRet<a href="#dret" class="hash-link" aria-label="Direct link to DRet" title="Direct link to DRet">​</a></h3><p><code>openbb.portfolio.dret</code> returns a DataFrame with daily returns of the portfolio and benchmark.</p><div class="language-python codeBlockContainer_Ckt0 theme-code-block" style="--prism-color:#9CDCFE;--prism-background-color:#1E1E1E"><div class="codeBlockContent_m3Ux"><pre tabindex="0" class="prism-code language-python codeBlock_qGQc thin-scrollbar"><code class="codeBlockLines_p187"><span class="token-line" style="color:#9CDCFE"><span class="token plain">returns </span><span class="token operator" style="color:rgb(212, 212, 212)">=</span><span class="token plain"> openbb</span><span class="token punctuation" style="color:rgb(212, 212, 212)">.</span><span class="token plain">portfolio</span><span class="token punctuation" style="color:rgb(212, 212, 212)">.</span><span class="token plain">dret</span><span class="token punctuation" style="color:rgb(212, 212, 212)">(</span><span class="token plain">P</span><span class="token punctuation" style="color:rgb(212, 212, 212)">)</span><span class="token plain"></span><br></span><span class="token-line" style="color:#9CDCFE"><span class="token plain">returns</span><span class="token punctuation" style="color:rgb(212, 212, 212)">.</span><span class="token plain">rename</span><span class="token punctuation" style="color:rgb(212, 212, 212)">(</span><span class="token plain">columns </span><span class="token operator" style="color:rgb(212, 212, 212)">=</span><span class="token plain"> </span><span class="token punctuation" style="color:rgb(212, 212, 212)">{</span><span class="token string" style="color:rgb(206, 145, 120)">&#x27;portfolio&#x27;</span><span class="token punctuation" style="color:rgb(212, 212, 212)">:</span><span class="token plain"> </span><span class="token string" style="color:rgb(206, 145, 120)">&#x27;Portfolio % Returns&#x27;</span><span class="token punctuation" style="color:rgb(212, 212, 212)">,</span><span class="token plain"> </span><span class="token string" style="color:rgb(206, 145, 120)">&#x27;benchmark&#x27;</span><span class="token punctuation" style="color:rgb(212, 212, 212)">:</span><span class="token plain"> </span><span class="token string" style="color:rgb(206, 145, 120)">&#x27;Benchmark % Returns&#x27;</span><span class="token punctuation" style="color:rgb(212, 212, 212)">}</span><span class="token punctuation" style="color:rgb(212, 212, 212)">,</span><span class="token plain"> inplace </span><span class="token operator" style="color:rgb(212, 212, 212)">=</span><span class="token plain"> </span><span class="token boolean">True</span><span class="token punctuation" style="color:rgb(212, 212, 212)">)</span><span class="token plain"></span><br></span><span class="token-line" style="color:#9CDCFE"><span class="token plain">returns</span><span class="token punctuation" style="color:rgb(212, 212, 212)">.</span><span class="token plain">index </span><span class="token operator" style="color:rgb(212, 212, 212)">=</span><span class="token plain"> returns</span><span class="token punctuation" style="color:rgb(212, 212, 212)">.</span><span class="token plain">index</span><span class="token punctuation" style="color:rgb(212, 212, 212)">.</span><span class="token plain">rename</span><span class="token punctuation" style="color:rgb(212, 212, 212)">(</span><span class="token string" style="color:rgb(206, 145, 120)">&#x27;Date&#x27;</span><span class="token punctuation" style="color:rgb(212, 212, 212)">)</span><span class="token plain"></span><br></span><span class="token-line" style="color:#9CDCFE"><span class="token plain" style="display:inline-block"></span><br></span><span class="token-line" style="color:#9CDCFE"><span class="token plain"></span><span class="token keyword" style="color:rgb(86, 156, 214)">print</span><span class="token punctuation" style="color:rgb(212, 212, 212)">(</span><span class="token plain">returns</span><span class="token punctuation" style="color:rgb(212, 212, 212)">.</span><span class="token plain">tail</span><span class="token punctuation" style="color:rgb(212, 212, 212)">(</span><span class="token number" style="color:rgb(181, 206, 168)">5</span><span class="token punctuation" style="color:rgb(212, 212, 212)">)</span><span class="token punctuation" style="color:rgb(212, 212, 212)">)</span><br></span></code></pre><div class="buttonGroup_6DOT"><button type="button" aria-label="Copy code to clipboard" title="Copy" class="clean-btn"><span class="copyButtonIcons_eSgA" aria-hidden="true"><svg viewBox="0 0 24 24" class="copyButtonIcon_y97N"><path fill="currentColor" d="M19,21H8V7H19M19,5H8A2,2 0 0,0 6,7V21A2,2 0 0,0 8,23H19A2,2 0 0,0 21,21V7A2,2 0 0,0 19,5M16,1H4A2,2 0 0,0 2,3V17H4V3H16V1Z"></path></svg><svg viewBox="0 0 24 24" class="copyButtonSuccessIcon_LjdS"><path fill="currentColor" d="M21,7L9,19L3.5,13.5L4.91,12.09L9,16.17L19.59,5.59L21,7Z"></path></svg></span></button></div></div></div><table><thead><tr><th align="left">Date</th><th align="right">Portfolio % Returns</th><th align="right">Benchmark % Returns</th></tr></thead><tbody><tr><td align="left">2022-11-21</td><td align="right">-0.03</td><td align="right">-0.00</td></tr><tr><td align="left">2022-11-22</td><td align="right">0.02</td><td align="right">0.01</td></tr><tr><td align="left">2022-11-23</td><td align="right">0.02</td><td align="right">0.01</td></tr><tr><td align="left">2022-11-24</td><td align="right">0.00</td><td align="right">0.00</td></tr><tr><td align="left">2022-11-25</td><td align="right">-0.01</td><td align="right">0.00</td></tr></tbody></table><p>Read the <a href="/sdk/data-available/portfolio/po">Portfolio Optimization Intro</a> to learn about the optimization features, and the parameters preset template.</p></div><footer class="theme-doc-footer docusaurus-mt-lg"><div class="theme-doc-footer-edit-meta-row row"><div class="col"><a href="https://github.com/OpenBB-finance/OpenBBTerminal/edit/main/website/content/sdk/data-available/portfolio/index.md" target="_blank" rel="noreferrer noopener" class="theme-edit-this-page"><svg fill="currentColor" height="20" width="20" viewBox="0 0 40 40" class="iconEdit_Z9Sw" aria-hidden="true"><g><path d="m34.5 11.7l-3 3.1-6.3-6.3 3.1-3q0.5-0.5 1.2-0.5t1.1 0.5l3.9 3.9q0.5 0.4 0.5 1.1t-0.5 1.2z m-29.5 17.1l18.4-18.5 6.3 6.3-18.4 18.4h-6.3v-6.2z"></path></g></svg>Edit this page</a></div><div class="col lastUpdated_vwxv"><span class="theme-last-updated">Last updated<!-- --> on <b><time datetime="2024-02-27T18:46:50.000Z">Feb 27, 2024</time></b> by <b>James Maslek</b></span></div></div></footer></article><nav class="pagination-nav docusaurus-mt-lg" aria-label="Docs pages"><a class="pagination-nav__link pagination-nav__link--prev" href="/sdk/data-available/crypto/discovery"><div class="pagination-nav__sublabel">Previous</div><div class="pagination-nav__label">Discovery</div></a><a class="pagination-nav__link pagination-nav__link--next" href="/sdk/data-available/portfolio/po"><div class="pagination-nav__sublabel">Next</div><div class="pagination-nav__label">Portfolio Optimization</div></a></nav></div></div><div class="col col--3"><div class="tableOfContents_jeP5 thin-scrollbar text-sm mt-[48px] xl:max-w-[216px] theme-doc-toc-desktop"><p class="uppercase text-sm font-bold text-grey-600 dark:text-grey-200 tracking-widest mb-2">On this page</p><ul class="border-l border-grey-300 dark:border-grey-600 list-none pl-4"><li class="pb-1"><a href="#how-to-use" class="text-grey-400 capitalize !no-underline">How to Use</a><ul class="list-none ml-1 border-l border-grey-300 dark:border-grey-600 mt-2"><li class="pb-1 pl-3"><a href="#portfolio-files" class="text-grey-400 capitalize !no-underline">Portfolio Files</a></li></ul></li><li class="py-1"><a href="#examples" class="text-grey-400 capitalize !no-underline">Examples</a><ul class="list-none ml-1 border-l border-grey-300 dark:border-grey-600 mt-2"><li class="pb-1 pl-3"><a href="#import-statements" class="text-grey-400 capitalize !no-underline">Import Statements</a></li><li class="py-1 pl-3"><a href="#load" class="text-grey-400 capitalize !no-underline">Load</a></li><li class="py-1 pl-3"><a href="#the-portfolio-object" class="text-grey-400 capitalize !no-underline">The Portfolio Object</a></li><li class="py-1 pl-3"><a href="#show" class="text-grey-400 capitalize !no-underline">Show</a></li><li class="py-1 pl-3"><a href="#perf" class="text-grey-400 capitalize !no-underline">Perf</a></li><li class="py-1 pl-3"><a href="#summary" class="text-grey-400 capitalize !no-underline">Summary</a></li><li class="py-1 pl-3"><a href="#maxdd" class="text-grey-400 capitalize !no-underline">MaxDD</a></li><li class="py-1 pl-3"><a href="#rsharpe" class="text-grey-400 capitalize !no-underline">RSharpe</a></li><li class="py-1 pl-3"><a href="#rvol" class="text-grey-400 capitalize !no-underline">RVol</a></li><li class="py-1 pl-3"><a href="#dret" class="text-grey-400 capitalize !no-underline">DRet</a></li></ul></li></ul></div></div></div></div></main></div></div><footer class="px-4 border-t dark:border-grey-600/50 lg:px-12 py-14 bg-white dark:bg-grey-850 z-10 overflow-hidden flex flex-col gap-10 items-center justify-center"><div class="flex w-full justify-between md:flex-row"><div class="md:items-start mt-2"><a aria-label="Home" class="hover:text-grey-700 dark:text-white dark:hover:text-gray-50" href="/"><svg viewBox="0 0 170 17" width="170" height="17" fill="none" xmlns="http://www.w3.org/2000/svg" class="h-[14px] w-[140px]"><path d="M106.107 1.889v11.334l-.961-.946-.959-.945-.962-.943-.959-.946-.961-.943-.962-.945-.959-.944-.961-.945-.96-.943-.961-.946-.96-.943-.96-.945H92.66V17H94.582V4.723l.96.943.96.945.961.944.96.945.961.943.959.946.962.943.961.945.959.946.962.943.959.945.961.944.96.945h.961V1.889H106.107ZM137.03 7.557h-1.921V1.889h-11.524V17h15.37V7.546h-1.92l-.005.01Zm-11.524-.946V3.773h7.683v3.78h-7.683V6.61Zm11.524 3.778v4.727h-11.524v-5.67h11.524v.943ZM168.901 7.557h-2.88V1.889h-11.526V0h-1.921v1.889h1.921V17h15.365V7.546l-.959.01Zm-12.485-.946V3.773h7.684v3.78h-7.684V6.61Zm11.526 3.778v4.727h-11.526v-5.67h11.526v.943ZM75.314 1.889H61.867V17H77.23V15.111H63.787V11.332h11.521V9.443H63.788V3.777H77.23V1.89h-1.916ZM13.444 1.889H0V17h15.367V1.889h-1.922Zm0 2.834V15.11H1.918V3.773h11.527v.95ZM44.397 1.889H30.952V17h1.92v-5.666h13.445V1.88h-1.92v.009Zm0 2.834V9.45H32.873V3.773h11.524v.95Z" fill="currentColor"></path></svg></a></div><div class="justify-end"><a class="flex h-[32px] w-[172px] rounded-md border border-grey-300 hover:bg-grey-100 dark:border-white bg-grey-100 dark:bg-white text-xs hover:no-underline" href="https://github.com/OpenBB-finance/OpenBBTerminal" target="_blank" rel="noreferrer"><span class="inline-flex w-[60%] items-center gap-x-[6px] px-3 py-2 text-grey-800"><svg viewBox="0 0 24 24" width="24" height="24" fill="none" xmlns="http://www.w3.org/2000/svg" style="margin-bottom:3px" class="h-[14.67px] w-[14.67px]"><path d="m12 1 3.263 7.439L23 9.403l-5.72 5.562L18.798 23 12 18.999 5.202 23l1.518-8.035L1 9.403l7.737-.964L12 1Z" stroke="currentColor" stroke-width="1.5" stroke-linejoin="round"></path></svg>Star us</span><span class="inline-flex w-[40%] items-center justify-center rounded-r-md bg-grey-850 text-grey-200">0</span></a></div></div><div class="flex w-full flex-col items-center justify-between gap-4 md:flex-row md:gap-0"><div class="flex flex-col items-start justify-end gap-4 self-start font-light text-grey-500 md:flex-row md:items-center"><p class="text-sm">© 2024 OpenBB</p><div class="_divider-x hidden h-[20px] border-[0.5px] md:block"></div><a href="https://openbb.co/legal/privacy-policy" target="_blank" rel="noopener noreferrer" class="text-sm dark:hover:text-white">Privacy Policy</a><div class="_divider-x hidden h-[20px] border-[0.5px] md:block"></div><a href="https://openbb.co/legal/terms-of-service" target="_blank" rel="noopener noreferrer" class="text-sm dark:hover:text-white">Terms</a></div><div class="mt-4 mb-10 grid grid-cols-4 gap-4 self-start md:my-0 md:grid-cols-7 md:self-end"><a aria-label="GitHub Link" class="h-8 w-8 dark:hover:!text-white hover:text-grey-700" target="_blank" rel="noreferrer" href="https://github.com/OpenBB-finance/OpenBBTerminal"><svg width="15" height="16" viewBox="0 0 15 16" fill="none" xmlns="http://www.w3.org/2000/svg" class="h-4 w-4"><path d="M6 12.76c-3.333 1-3.333-1.667-4.667-2l4.667 2Zm4.667 2v-2.58a2.246 2.246 0 0 0-.627-1.74c2.094-.233 4.294-1.027 4.294-4.667 0-.93-.359-1.825-1-2.5a3.38 3.38 0 0 0-.06-2.513s-.787-.233-2.607.987a8.92 8.92 0 0 0-4.667 0C4.18.527 3.393.76 3.393.76a3.38 3.38 0 0 0-.06 2.513 3.627 3.627 0 0 0-1 2.52c0 3.614 2.2 4.407 4.294 4.667A2.248 2.248 0 0 0 6 12.18v2.58" fill="currentColor"></path><path d="M10.667 14.76v-2.58a2.246 2.246 0 0 0-.627-1.74c2.094-.233 4.294-1.027 4.294-4.667 0-.93-.359-1.825-1-2.5a3.38 3.38 0 0 0-.06-2.513s-.787-.233-2.607.987a8.92 8.92 0 0 0-4.667 0C4.18.527 3.393.76 3.393.76a3.38 3.38 0 0 0-.06 2.513 3.627 3.627 0 0 0-1 2.52c0 3.614 2.2 4.407 4.294 4.667A2.248 2.248 0 0 0 6 12.18v2.58m0-2c-3.333 1-3.333-1.667-4.667-2l4.667 2Z" stroke="currentColor" stroke-linecap="round" stroke-linejoin="round"></path></svg></a><a aria-label="LinkedIn Link" class="h-8 w-8 dark:hover:!text-white hover:text-grey-700" target="_blank" rel="noreferrer" href="https://www.linkedin.com/company/openbb-finance/"><svg viewBox="0 0 24 24" width="24" height="24" fill="none" xmlns="http://www.w3.org/2000/svg" class="h-4 w-4"><path d="M13 21H9V9h4v2a4.618 4.618 0 0 1 3.525-1.763A4.5 4.5 0 0 1 21 13.75V21h-4v-6.75a2.265 2.265 0 0 0-2.247-1.944A1.815 1.815 0 0 0 13 14.25V21Zm-6 0H3V9h4v12ZM5 7a2 2 0 1 1 0-4 2 2 0 0 1 0 4Z" fill="currentColor"></path></svg></a><a aria-label="Twitter Link" class="h-8 w-8 dark:hover:!text-white hover:text-grey-700" target="_blank" rel="noreferrer" href="https://twitter.com/openbb_finance"><svg viewBox="0 0 24 24" width="10" height="10" xmlns="http://www.w3.org/2000/svg" class="h-4 w-4"><path d="M18.244 2.25h3.308l-7.227 8.26 8.502 11.24H16.17l-5.214-6.817L4.99 21.75H1.68l7.73-8.835L1.254 2.25H8.08l4.713 6.231zm-1.161 17.52h1.833L7.084 4.126H5.117z" fill="#E7E9EA"></path></svg></a><a aria-label="Tiktok Link" class="h-8 w-8 dark:hover:!text-white hover:text-grey-700" target="_blank" rel="noreferrer" href="https://www.tiktok.com/@openbb"><svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" width="24" height="24" stroke-width="2" stroke="currentColor" fill="none" stroke-linecap="round" stroke-linejoin="round" class="h-5 w-5 pl-[2.5px]"><path d="M0 0h24v24H0z" stroke="none"></path><path d="M9 12a4 4 0 1 0 4 4V4a5 5 0 0 0 5 5"></path></svg></a><a aria-label="Reddit Link" class="h-8 w-8 dark:hover:!text-white hover:text-grey-700" target="_blank" rel="noreferrer" href="https://www.reddit.com/r/openbb/"><svg viewBox="0 0 16 16" width="16" height="16" fill="none" xmlns="http://www.w3.org/2000/svg" class="h-4 w-4"><path d="M8 14.667A6.667 6.667 0 1 1 14.667 8 6.674 6.674 0 0 1 8 14.667ZM4.538 7.029a.973.973 0 0 0-.405 1.858 1.707 1.707 0 0 0 0 .292c0 1.494 1.743 2.708 3.886 2.708 2.142 0 3.886-1.214 3.886-2.708a1.857 1.857 0 0 0 0-.292.96.96 0 0 0-.432-1.825h-.035a.97.97 0 0 0-.638.271 4.744 4.744 0 0 0-2.567-.82l.434-2.08 1.425.3a.667.667 0 0 0 .735.591A.667.667 0 1 0 10.685 4a.667.667 0 0 0-.506.328L8.547 4a.207.207 0 0 0-.244.158l-.499 2.315a4.749 4.749 0 0 0-2.6.82.967.967 0 0 0-.666-.264Zm3.582 3.987h-.225a2.568 2.568 0 0 1-1.534-.515.18.18 0 0 1 .139-.294.18.18 0 0 1 .114.04c.374.274.825.421 1.289.42h.216c.457 0 .903-.143 1.274-.41a.187.187 0 0 1 .267 0 .19.19 0 0 1-.003.267v-.027a2.557 2.557 0 0 1-1.537.518v.001Zm1.418-1.63h-.01l.005-.025a.626.626 0 1 1 .49-.188.659.659 0 0 1-.462.214h-.024.001Zm-3.091-.053a.667.667 0 1 1 0-1.333.667.667 0 0 1 0 1.333Z" fill="currentColor"></path></svg></a><a aria-label="Discord Link" class="h-8 w-8 dark:hover:!text-white hover:text-grey-700" target="_blank" rel="noreferrer" href="https://discord.gg/xPHTuHCmuV"><svg viewBox="0 0 16 12" width="16" height="12" fill="none" xmlns="http://www.w3.org/2000/svg" class="h-4 w-4"><path d="M13.38 8.836a4.375 4.375 0 0 1-2.474 1.507c.407.481.897 1.025.901 1.03 1.655.033 3.221-.688 4.193-1.929-.05-2.572-.724-5.1-1.973-7.397A7.139 7.139 0 0 0 10.194.71h-.016l-.192.203a9.52 9.52 0 0 1 3.412 1.61 11.875 11.875 0 0 0-4.125-1.217 12.415 12.415 0 0 0-2.766.025c-.065.001-.13.008-.193.019h-.04a10.98 10.98 0 0 0-3.11.801c-.493.21-.796.362-.809.368-.013.005 0 0 0-.01A10.022 10.022 0 0 1 5.96.866L5.815.714h-.009a7.142 7.142 0 0 0-3.833 1.335A16.003 16.003 0 0 0 0 9.447c.96 1.249 2.528 1.972 4.182 1.929 0 0 .517-.583.92-1.054a4.307 4.307 0 0 1-2.405-1.496c.01.006.153.096.384.213a.17.17 0 0 0 .056.04.409.409 0 0 0 .058.031 8.043 8.043 0 0 0 1.064.462c.653.24 1.33.423 2.019.548.604.106 1.217.16 1.832.16.576 0 1.15-.049 1.717-.146a9.64 9.64 0 0 0 1.986-.546 8.203 8.203 0 0 0 1.566-.752Zm-2.94-.57c-.627.05-1.224-.26-1.502-.784a1.335 1.335 0 0 1 .244-1.581 1.612 1.612 0 0 1 1.68-.363c.586.212.973.735.973 1.319.032.745-.592 1.374-1.396 1.41h.001Zm-5.001 0c-.79-.064-1.395-.676-1.395-1.41 0-.733.606-1.345 1.395-1.408.363 0 .71.138.963.38.286.276.442.645.433 1.027.033.747-.59 1.378-1.396 1.411Z" fill="currentColor"></path></svg></a><a aria-label="Youtube Link" class="h-8 w-8 dark:hover:!text-white hover:text-grey-700" target="_blank" rel="noreferrer noopener" href="https://www.youtube.com/channel/UCaeFEx-W16IuxRsHlM1ywBQ"><svg viewBox="0 0 24 24" width="24" height="24" fill="none" xmlns="http://www.w3.org/2000/svg" class="h-4 w-4"><path d="M22.54 6.42a2.78 2.78 0 0 0-1.94-2C18.88 4 12 4 12 4s-6.88 0-8.6.46a2.78 2.78 0 0 0-1.94 2A29 29 0 0 0 1 11.75a29 29 0 0 0 .46 5.33A2.78 2.78 0 0 0 3.4 19c1.72.46 8.6.46 8.6.46s6.88 0 8.6-.46a2.78 2.78 0 0 0 1.94-2c.313-1.732.467-3.49.46-5.25a29.005 29.005 0 0 0-.46-5.33v0Z" stroke="currentColor" stroke-width="1.5" stroke-linecap="round" stroke-linejoin="round"></path><path d="m9.75 15.017 5.75-3.27-5.75-3.27v6.54Z" stroke="currentColor" stroke-width="1.5" stroke-linecap="round" stroke-linejoin="round"></path></svg></a></div></div></footer></div>
<script src="/assets/js/runtime~main.c0e31297.js"></script>
<script src="/assets/js/main.b1ae2b5f.js"></script>
</body>
</html>