ConPA 4 is a complete stack for an asset allocation application.
ConPA 4 is a single page app with the following components: the asset search, the list of assets, the basket info, the assets stats and the dashboard of portfolios.
To fill the basket, the user needs to add an asset, using the autocomplete search: typing the name or the symbol of an asset, the autocomplete component suggests a few assets. When the user selects an asset, it is added to the basket, displaying the symbol.
In the meantime for the last asset added to the basket, the app provides the key statistics.
When the basket contains at least three assets, the basket is optimized, displaying the optimal weights of the assets.
There is also a dashboard of portfolios. It contains the stats of all portfolios created by the users: last created portfolios, best/worst performing portfolios, high/low risk profile portfolios and high/low return profile portfolios.
Clone the project and install the dependencies with npm:
Start PouchDB instance and backend:
And browse, for instance,
Tested locally with Node.js 6.x.
The first time you land on the page the rendering is very slow, because the db, behind the scenes, is creating the views.
If you have a remote db instance you may use the environment variables:
The portfolios are saved on a PouchDB instance. The configuration allows a live and testing system, you don't need to change the source code when the app is delivered to a live system.
ConPA Sequence Diagram.
- ConPA rel. 0 (2008 - 2011): Jaxer + YUI.
- ConPA rel. 1 (2011 - 2012): Node.js + YUI + Cloudant.
- ConPA rel. 2 (2012 - 2015): Node.js + jQuery MVC + Cloudant.
- ConPA rel. 3 (2015 - 2016): Node.js + AngularJS 1 + Cloudant.
- ConPA rel. 4 (2016 - present): Node.js + AngularJS 1 + PouchDB.
NOT INVESTMENT ADVICE AND WILL LOSE LOTS OF MONEY SO PROCEED WITH CAUTION.