Updated Hugo Server for Portfolio Menu Refactor (#1104)

* Updated menu tree for refactored portfolio menu

* updated for refactor

* no longer exists

* added menu screenshot

* updated description

* updated description

* added image

* added image

* added image

* added image

* added screenshot

* updated description

* added image

* updated description/added image

* added image/updated description

* added image/updated description

* added image
This commit is contained in:
Danglewood
2021-12-29 03:07:53 -08:00
committed by GitHub
parent 11d89b7928
commit 05889b9756
15 changed files with 100 additions and 56 deletions

View File

@@ -1,3 +1,25 @@
```text
(✨) / $ portfolio
What do you want to do?
> bro brokers holdings, supports: robinhood, ally, degiro, coinbase
> po portfolio optimization, optimal portfolio weights from pyportfolioopt
Portfolio:
load load data into the portfolio
save save your portfolio for future use
show show existing transactions
add add a security to your portfolio
rmv remove a security from your portfolio
Reports:
ar annual report for performance of a given portfolio
Graphs:
rmr graph your returns versus the market's returns
```
---
geekdocCollapseSection: true
---

View File

@@ -2,11 +2,11 @@
usage: ar [-m MARKET] [-h]
```
Generate an a PDF annual report for a portfolio
Create an annual report based on a saved portfolio with a selectable benchmark for performance vs. market.
```
optional arguments:
-m MARKET, --market MARKEt
the asset that represents the market
-h, --help show this help message
-m MARKET, --market MARKET
Choose a ticker to be the market asset (default: SPY)
-h, --help show this help message (default: False)
```

View File

@@ -1,7 +0,0 @@
---
geekdocCollapseSection: true
---
## TODO: Update after refactoring
{{< toc-tree >}}

View File

@@ -1,3 +1,29 @@
The terminal has incorporated PyPortfolioOpt. Refer to the documentation here: https://pyportfolioopt.readthedocs.io/en/latest/MeanVariance.html
```text
Portfolio Optimization:
select select list of tickers to be optimized
add add tickers to the list of the tickers to be optimized
rmv remove tickers from the list of the tickers to be optimized
Tickers: VT, QQQ, SPY
Optimization:
equal equally weighted
mktcap weighted according to market cap (property marketCap)
dividend weighted according to dividend yield (property dividendYield)
property weight according to selected info property
Mean Variance Optimization:
maxsharpe optimizes for maximal Sharpe ratio (a.k.a the tangency portfolio
minvol optimizes for minimum volatility
maxquadutil maximises the quadratic utility, given some risk aversion
effret maximises return for a given target risk
effrisk minimises risk for a given target return
ef show the efficient frontier
```
---
geekdocCollapseSection: true
---

View File

@@ -1,28 +1,14 @@
```
usage: property [-p PROPERTY] [-v VALUE] [--pie] [-h]
```text
usage: dividend [-v VALUE] [--pie] [-h]
```
Returns a portfolio that is weighted based on a selected property info
Returns a portfolio that is weighted for optimaal dividend yield.
```
optional arguments:
-p PROPERTY, --property PROPERTY
Property info to weigh. Use one of: previousClose, regularMarketOpen, twoHundredDayAverage, trailingAnnualDividendYield,
payoutRatio, volume24Hr, regularMarketDayHigh, navPrice, averageDailyVolume10Day, totalAssets, regularMarketPreviousClose,
fiftyDayAverage, trailingAnnualDividendRate, open, toCurrency, averageVolume10days, expireDate, yield, algorithm,
dividendRate, exDividendDate, beta, circulatingSupply, regularMarketDayLow, priceHint, currency, trailingPE,
regularMarketVolume, lastMarket, maxSupply, openInterest, marketCap, volumeAllCurrencies, strikePrice, averageVolume,
priceToSalesTrailing12Months, dayLow, ask, ytdReturn, askSize, volume, fiftyTwoWeekHigh, forwardPE, fromCurrency,
fiveYearAvgDividendYield, fiftyTwoWeekLow, bid, dividendYield, bidSize, dayHigh, annualHoldingsTurnover, enterpriseToRevenue,
beta3Year, profitMargins, enterpriseToEbitda, 52WeekChange, morningStarRiskRating, forwardEps, revenueQuarterlyGrowth,
sharesOutstanding, fundInceptionDate, annualReportExpenseRatio, bookValue, sharesShort, sharesPercentSharesOut, fundFamily,
lastFiscalYearEnd, heldPercentInstitutions, netIncomeToCommon, trailingEps, lastDividendValue, SandP52WeekChange,
priceToBook, heldPercentInsiders, shortRatio, sharesShortPreviousMonthDate, floatShares, enterpriseValue,
threeYearAverageReturn, lastSplitFactor, legalType, lastDividendDate, morningStarOverallRating, earningsQuarterlyGrowth,
pegRatio, lastCapGain, shortPercentOfFloat, sharesShortPriorMonth, impliedSharesOutstanding, fiveYearAverageReturn, and
regularMarketPrice. (default: None)
-v VALUE, --value VALUE
Amount to allocate to portfolio (default: 1)
--pie Display a pie chart for weights (default: False)
-h, --help show this help message (default: False)
```
<img width="1400" alt="Feature Screenshot - weighted portfolio for dividend yield" src="https://user-images.githubusercontent.com/85772166/147161924-ea4f202e-8325-4f29-8bdd-c45913d08c6c.png">

View File

@@ -2,7 +2,9 @@
usage: ef [-p {1d,5d,1mo,3mo,6mo,1y,2y,5y,10y,ytd,max}] [-n N_PORT] [-h] [-r]
```
This function plots random portfolios based on their risk and returns and shows the efficient frontier.
This function plots random portfolios based on their risk and returns and shows the efficient frontier.
https://pyportfolioopt.readthedocs.io/en/latest/GeneralEfficientFrontier.html
```
optional arguments:
@@ -13,3 +15,4 @@ optional arguments:
-h, --help show this help message (default: False)
-r, --risk-free shows the risk free optimal line
```
<img width="1400" alt="Feature Screenshot - ef" src="https://user-images.githubusercontent.com/85772166/147480056-27682fb8-4087-44ff-acdc-4dcb931ea674.png">

View File

@@ -2,7 +2,7 @@
usage: effret [-p {1d,5d,1mo,3mo,6mo,1y,2y,5y,10y,ytd,max}] [-v VALUE] [-n] [--pie] [-t TARGET_RETURN] [-h]
```
Calculate the 'Markowitz portfolio', minimising volatility for a given target return
Calculate the 'Markowitz portfolio', minimising volatility for a given target return. By combining assets with different expected returns and volatilities, one can decide on a mathematically optimal allocation.
```
optional arguments:
@@ -17,3 +17,4 @@ optional arguments:
the desired return of the resulting portfolio (default: 0.1)
-h, --help show this help message (default: False)
```
<img width="1400" alt="Feature Screenshot - effret" src="https://user-images.githubusercontent.com/85772166/147483749-b03832ac-24ca-4f33-baf5-edcc07b7e6e4.png">

View File

@@ -11,3 +11,4 @@ optional arguments:
--pie Display a pie chart for weights (default: False)
-h, --help show this help message (default: False)
```
<img width="1400" alt="Feature Screenshot - equal" src="https://user-images.githubusercontent.com/85772166/147146034-a52c3d56-1665-4339-92a8-915937f56f67.png">

View File

@@ -1,8 +1,9 @@
```
usage: maxquadutil [-p {1d,5d,1mo,3mo,6mo,1y,2y,5y,10y,ytd,max}] [-v VALUE] [-n] [--pie] [-r RISK_AVERSION] [-h]
```
In financial economics, the utility function most frequently used to describe investor behaviour is the quadratic utility function. Its popularity stems from the fact that, under the assumption of quadratic utility, mean-variance analysis is optimal.
Maximises the quadratic utility, given some risk aversion
https://www.d42.com/portfolio/analysis/quadratic-utility
```
optional arguments:
@@ -17,3 +18,4 @@ optional arguments:
risk aversion parameter (default: 1)
-h, --help show this help message (default: False)
```
<img width="1400" alt="Feature Screenshot - maxquadutil" src="https://user-images.githubusercontent.com/85772166/147484659-44fc1892-aa13-4e4e-8b5e-cab4686acc0f.png">

View File

@@ -1,8 +1,15 @@
```
usage: maxsharpe [-p {1d,5d,1mo,3mo,6mo,1y,2y,5y,10y,ytd,max}] [-v VALUE] [--pie] [-r RISK_FREE_RATE] [-h]
```
The Sharpe ratio is one of the most widely used methods for calculating risk-adjusted return. Modern Portfolio Theory (MPT) states that adding assets to a diversified portfolio that has low correlations can decrease portfolio risk without sacrificing returns. Adding diversification should increase the Sharpe ratio compared to similar portfolios with a lower level of diversification. For this to be true, investors must also accept the assumption that risk is equal to volatility, which is not unreasonable but may be too narrow to be applied to all investments.
Maximise the Sharpe Ratio
The Sharpe Ratio is calculated as follows:
1. Subtract the risk-free rate from the return of the portfolio. The risk-free rate could be a U.S. Treasury rate or yield, such as the one-year or two-year Treasury yield.
2. Divide the result by the standard deviation of the portfolio’s excess return. The standard deviation helps to show how much the portfolio's return deviates from the expected return. The standard deviation also sheds light on the portfolio's volatility.
The Sharpe ratio can also help explain whether a portfolio's excess returns are due to smart investment decisions or a result of too much risk.
```
optional arguments:
@@ -16,3 +23,4 @@ optional arguments:
(default: 0.02)
-h, --help show this help message (default: False)
```
<img width="1400" alt="Feature Screenshot - maxsharpe" src="https://user-images.githubusercontent.com/85772166/147481783-0b8f3ecf-8946-49a9-bd97-3db2a0348b3d.png">

View File

@@ -13,3 +13,4 @@ optional arguments:
--pie Display a pie chart for weights (default: False)
-h, --help show this help message (default: False)
```
<img width="1400" alt="Feature Screenshot - minvol" src="https://user-images.githubusercontent.com/85772166/147485096-cac6c072-6bcc-4bbf-b0f6-85e899fe1ac9.png">

View File

@@ -2,27 +2,13 @@
usage: property [-p PROPERTY] [-v VALUE] [--pie] [-h]
```
Returns a portfolio that is weighted based on a selected property info
Returns a portfolio that is weighted based on market cap.
```
optional arguments:
-p PROPERTY, --property PROPERTY
Property info to weigh. Use one of: previousClose, regularMarketOpen, twoHundredDayAverage, trailingAnnualDividendYield,
payoutRatio, volume24Hr, regularMarketDayHigh, navPrice, averageDailyVolume10Day, totalAssets, regularMarketPreviousClose,
fiftyDayAverage, trailingAnnualDividendRate, open, toCurrency, averageVolume10days, expireDate, yield, algorithm,
dividendRate, exDividendDate, beta, circulatingSupply, regularMarketDayLow, priceHint, currency, trailingPE,
regularMarketVolume, lastMarket, maxSupply, openInterest, marketCap, volumeAllCurrencies, strikePrice, averageVolume,
priceToSalesTrailing12Months, dayLow, ask, ytdReturn, askSize, volume, fiftyTwoWeekHigh, forwardPE, fromCurrency,
fiveYearAvgDividendYield, fiftyTwoWeekLow, bid, dividendYield, bidSize, dayHigh, annualHoldingsTurnover, enterpriseToRevenue,
beta3Year, profitMargins, enterpriseToEbitda, 52WeekChange, morningStarRiskRating, forwardEps, revenueQuarterlyGrowth,
sharesOutstanding, fundInceptionDate, annualReportExpenseRatio, bookValue, sharesShort, sharesPercentSharesOut, fundFamily,
lastFiscalYearEnd, heldPercentInstitutions, netIncomeToCommon, trailingEps, lastDividendValue, SandP52WeekChange,
priceToBook, heldPercentInsiders, shortRatio, sharesShortPreviousMonthDate, floatShares, enterpriseValue,
threeYearAverageReturn, lastSplitFactor, legalType, lastDividendDate, morningStarOverallRating, earningsQuarterlyGrowth,
pegRatio, lastCapGain, shortPercentOfFloat, sharesShortPriorMonth, impliedSharesOutstanding, fiveYearAverageReturn, and
regularMarketPrice. (default: None)
-v VALUE, --value VALUE
Amount to allocate to portfolio (default: 1)
--pie Display a pie chart for weights (default: False)
-h, --help show this help message (default: False)
```
<img size="1400" alt="Feature Screenshot - mktcap" src="https://user-images.githubusercontent.com/85772166/147147744-327d7db7-dcc2-4fa7-94dc-ff83d91a6cc6.png">

View File

@@ -2,7 +2,7 @@
usage: property [-p PROPERTY] [-v VALUE] [--pie] [-h]
```
Returns a portfolio that is weighted based on a selected property info
Suggests a weighting based on a targeted statistic.
```
optional arguments:
@@ -26,3 +26,4 @@ optional arguments:
--pie Display a pie chart for weights (default: False)
-h, --help show this help message (default: False)
```
<img size="1400" alt="Feature Screenshot - property" src="https://user-images.githubusercontent.com/85772166/147179496-6d1f9ef4-c42e-4bdf-b438-f877169d1de8.png">

View File

@@ -2,11 +2,11 @@
usage: rmr [-m MARKET] [-h]
```
Show portfolio returns versus market returns
A graph of portfolio returns versus a chosen benchmark or market.
```
optional arguments:
-m MARKET, --market MARKEt
the asset that represents the market
-h, --help show this help message
-m MARKET, --market MARKET
Choose a ticker to be the market asset (default: SPY)
-h, --help show this help message (default: False)
```

View File

@@ -974,12 +974,12 @@ main:
- name: robinhood
ref: "/portfolio/brokers/robinhood"
sub:
- name: login
ref: "/portfolio/portfolio/brokers/robinhood/login"
- name: history
ref: "/portfolio/brokers/robinhood/history"
- name: holdings
ref: "/portfolio/brokers/robinhood/holdings"
- name: portfolio analysis
ref: "/portfolio/portfolio_analysis"
- name: portfolio optimization
ref: "/portfolio/portfolio_optimization"
sub:
@@ -1009,6 +1009,20 @@ main:
ref: "/portfolio/portfolio_optimization/effrisk"
- name: ef
ref: "/portfolio/portfolio_optimization/ef"
- name: load
ref: "/portfolio/load"
- name: save
ref: "/portfolio/save"
- name: show
ref: "/portfolio/show"
- name: add
ref: "/portfolio/add"
- name: rmv
ref: "/portfolio/rmv"
- name: ar
ref: "/portfolio/ar"
- name: rmr
ref: "/portfolio/rmr"
- name: forex
ref: "/forex"
sub: