Guest User

Untitled

a guest
Dec 18th, 2017
92
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 2.18 KB | None | 0 0
  1. <!DOCTYPE html>
  2. <html>
  3. <head>
  4. <title></title>
  5. <script>
  6. function balance(assets, portfolioWorth) {
  7. try {
  8. var portfolio = {};
  9. var numberOfAssets = Object.keys(assets).length;
  10. var moneyPerAsset = portfolioWorth / numberOfAssets;
  11. for (var asset in assets) {
  12. var price = assets[asset];
  13. var stock = moneyPerAsset / price;
  14. console.log(moneyPerAsset, 'will buy', stock, 'stock from', asset);
  15. portfolio[asset] = stock;
  16. }
  17. return portfolio;
  18. } catch (e) {
  19. console.error(e);
  20. }
  21. }
  22. function foolish4(assets, portfolioWorth) {
  23. try {
  24. var portfolio = {};
  25. var numberOfAssets = Object.keys(assets).length;
  26. var cheapestAssetPrice = Object.keys(assets).reduce(function(m, k){ return assets[k] < m ? assets[k] : m }, +Infinity);
  27. var cheapestAssetKey = val2key(cheapestAssetPrice, assets);
  28. console.log('40% of portfolio -', portfolioWorth * 0.4, '- will buy', (portfolioWorth * 0.4) / cheapestAssetPrice, 'stock from', cheapestAssetKey);
  29. for (var asset in assets) {
  30. if (asset !== cheapestAssetKey) {
  31. console.log('20% of portfolio -', portfolioWorth * 0.2, '- will buy', (portfolioWorth * 0.2) / assets[asset], 'stock from', asset);
  32. }
  33. }
  34. } catch (e) {
  35. console.error(e);
  36. }
  37. }
  38. function val2key(val, array) {
  39. for (var key in array) {
  40. if (array[key] == val) {
  41. return key;
  42. }
  43. }
  44. return false;
  45. }
  46. </script>
  47. </head>
  48. <body>
  49. <script>
  50. console.log('Foolish 4 2018');
  51. foolish4({
  52. vz: 52.34,
  53. pfe: 36.46,
  54. ko: 46.03,
  55. csco: 37.90
  56. }, 500);
  57. console.log('Dow 4 2018');
  58. balance({
  59. vz: 52.34,
  60. pfe: 36.46,
  61. ko: 46.03,
  62. csco: 37.90
  63. }, 500);
  64. console.log('Small Dogs of the Dow 2018');
  65. balance({
  66. ge: 17.64,
  67. vz: 52.34,
  68. pfe: 36.46,
  69. ko: 46.03,
  70. csco: 37.90
  71. }, 500);
  72. console.log('Dogs of the Dow 2018');
  73. balance({
  74. ge: 17.64,
  75. vz: 52.34,
  76. ibm: 154.00,
  77. xom: 82.90,
  78. cvx: 119.53,
  79. pfe: 36.46,
  80. mrk: 56.01,
  81. ko: 46.03,
  82. csco: 37.90,
  83. pg: 91.00
  84. }, 500);
  85. console.log('U.S. Fundamental Growth');
  86. balance({
  87. goog: 1018.38,
  88. aapl: 169.01,
  89. avgo: 263.89,
  90. cvs: 71.38,
  91. hd: 180.8,
  92. mmc: 84.4,
  93. ma: 147.42,
  94. msft: 82.78,
  95. rtn: 185.2,
  96. tmo: 183.87
  97. }, 500);
  98. </script>
  99. </body>
  100. </html>
Add Comment
Please, Sign In to add comment