Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- <!DOCTYPE html>
- <html>
- <head>
- <title></title>
- <script>
- function balance(assets, portfolioWorth) {
- try {
- var portfolio = {};
- var numberOfAssets = Object.keys(assets).length;
- var moneyPerAsset = portfolioWorth / numberOfAssets;
- for (var asset in assets) {
- var price = assets[asset];
- var stock = moneyPerAsset / price;
- console.log(moneyPerAsset, 'will buy', stock, 'stock from', asset);
- portfolio[asset] = stock;
- }
- return portfolio;
- } catch (e) {
- console.error(e);
- }
- }
- function foolish4(assets, portfolioWorth) {
- try {
- var portfolio = {};
- var numberOfAssets = Object.keys(assets).length;
- var cheapestAssetPrice = Object.keys(assets).reduce(function(m, k){ return assets[k] < m ? assets[k] : m }, +Infinity);
- var cheapestAssetKey = val2key(cheapestAssetPrice, assets);
- console.log('40% of portfolio -', portfolioWorth * 0.4, '- will buy', (portfolioWorth * 0.4) / cheapestAssetPrice, 'stock from', cheapestAssetKey);
- for (var asset in assets) {
- if (asset !== cheapestAssetKey) {
- console.log('20% of portfolio -', portfolioWorth * 0.2, '- will buy', (portfolioWorth * 0.2) / assets[asset], 'stock from', asset);
- }
- }
- } catch (e) {
- console.error(e);
- }
- }
- function val2key(val, array) {
- for (var key in array) {
- if (array[key] == val) {
- return key;
- }
- }
- return false;
- }
- </script>
- </head>
- <body>
- <script>
- console.log('Foolish 4 2018');
- foolish4({
- vz: 52.34,
- pfe: 36.46,
- ko: 46.03,
- csco: 37.90
- }, 500);
- console.log('Dow 4 2018');
- balance({
- vz: 52.34,
- pfe: 36.46,
- ko: 46.03,
- csco: 37.90
- }, 500);
- console.log('Small Dogs of the Dow 2018');
- balance({
- ge: 17.64,
- vz: 52.34,
- pfe: 36.46,
- ko: 46.03,
- csco: 37.90
- }, 500);
- console.log('Dogs of the Dow 2018');
- balance({
- ge: 17.64,
- vz: 52.34,
- ibm: 154.00,
- xom: 82.90,
- cvx: 119.53,
- pfe: 36.46,
- mrk: 56.01,
- ko: 46.03,
- csco: 37.90,
- pg: 91.00
- }, 500);
- console.log('U.S. Fundamental Growth');
- balance({
- goog: 1018.38,
- aapl: 169.01,
- avgo: 263.89,
- cvs: 71.38,
- hd: 180.8,
- mmc: 84.4,
- ma: 147.42,
- msft: 82.78,
- rtn: 185.2,
- tmo: 183.87
- }, 500);
- </script>
- </body>
- </html>
Add Comment
Please, Sign In to add comment