Okama Versions Save

Investment portfolio and stocks analyzing tools for Python with free historical data

v.1.1.4

2 years ago

Replace deprecated .append with .concat for new versions of panda package.

v1.1.3

2 years ago

Add poetry as a dependency manager.

v1.1.2

2 years ago

Sortino ratio and Diversification ratios:

  • get_sortiono_ratio() method is available in AssetList and Portfolio
  • diversification_ratio property is added to Portfolio
  • get_most_diversified_portfolio() method is added to EfficientFrontier
  • mdp_points property is added to EfficientFrontier

mdp_points is a DataFrame with the Most diversified portfolios points.

More examples in Jupyter Notebooks:

  • 08 financial database.ipynb has financial database queries examples

v1.1.1

2 years ago

New method in AssetList:

Fixed:

  • if the asset historical data period is too short there is an ValuError in initialization

Full Changelog: https://github.com/mbk-dev/okama/compare/v1.1.0...v1.1.1

v1.1.0

2 years ago

Sharpe Ratio, Tangency portfolio and Capital Market Line (CML):

  • .get_sharpe_ratio() method is available in Portfolio and AssetList
  • .get_tangency_portfolio() method in EfficientFrontier to optimize allocation with Sharpe Ratio as objective function
  • .plot_cml() method in EfficientFrontier to plot the Capital Market Line (CML) and Maximum Sharpe Ratio (MSR) point with the Efficient Frontier

Refactoring:

  • .plot_assets() method is at ListMaker abstract class and is available from: AssetList, Portfolio, EfficientFrontier and EfficientFrontierReb
  • .plot_pair_ef() method is at EfficientFrontier
  • .plot_transition_map() is at EfficientFrontier
  • Plots class discontinued

v1.0.2

2 years ago

Database Search improvements:

  • ok.search() accepts namespace as an argument
  • ok.search() and ok.symbols_in_namespace() return DataFrame (default) or json. It can be changed with response_format argument ('frame' or 'json')

Bugs fixed:

  • limit .inflation_ts by 'first_date' and 'last_date' in Portfolio and AssetList
  • np.nan and np.inf are replaced with 0 in AssetList.get_dividend_mean_grow()

v1.0.1

2 years ago

Documentation added for all methods and attributes in Assets, AssetList and Portfolio.

v1.0.0

2 years ago

Several important updates in Portfolio and AssetList classes:

  • Portfolio is an asset (like stocks, ETF or commodities) and can be included in the AssetList
  • Portfolio has a symbol (.PF namespace)
  • Rebalancing period is an attribute of Portfolio
  • Asset has .close and .adj_close properties (close time series)
  • Dividend time series are adjusted to the base currency in Portfolio and AssetList
  • .dividend_yield for Portfolio is a weighted sum of the assets dividend yields (adjusted to the base currency)
  • Portfolio has .dividends method (dividends history time series)
  • New notebook in examples for investment portfolios (examples/03 investment portfolios.ipynb)

v0.99

3 years ago

Several improvements to Portoflio and AssetList classes:

  • get_return_ts has rebalancing_period parameter
  • get_rebalanced_portfolio_return_ts method in Portfolio is depreciated
  • get_rolling_cagr and get_rolling_cumulative_return could use real=True option to calculate real return values
  • get_cagr and cumulative_return have real option
  • Several new docstrings in Portfolio and AssetLists classes

Project RoadMap and Contributing guidelines are added to GitHub repository.

0.98

3 years ago

Several bugs are fixed. New methods in Portfolio class:

  • get_cagr (instead of cagr property)
  • get_cumulative_return
  • get_rolling_cumulative_return