{"_id":"@vascosantos/moving-average","_rev":"1-cff3ab7f4340af06b101d3f646a350b6","name":"@vascosantos/moving-average","dist-tags":{"latest":"1.1.0"},"versions":{"1.1.0":{"name":"@vascosantos/moving-average","version":"1.1.0","description":"Exponential Moving Average","main":"index.js","types":"index.d.ts","scripts":{"test":"npm run lint && npm run test:node","test:node":"node tests/moving_average.js","lint":"standard"},"repository":{"type":"git","url":"git+ssh://git@github.com/pgte/moving-average.git"},"devDependencies":{"standard":"^10.0.3","tap":"*"},"keywords":["moving","average","average","statistics"],"author":{"name":"Pedro Teixeira","email":"i@pgte.me"},"contributors":[{"name":"Pedro Teixeira","email":"i@pgte.me"},{"name":"John Meisner","email":"jhn_msnr@yahoo.com"},{"name":"Max Kutny","email":"https://github.com/mkutny"}],"license":"MIT","gitHead":"52ae199f13736244c55b33576ed21cb96d7e4beb","bugs":{"url":"https://github.com/pgte/moving-average/issues"},"homepage":"https://github.com/pgte/moving-average#readme","_id":"@vascosantos/moving-average@1.1.0","_nodeVersion":"14.16.1","_npmVersion":"6.14.12","dist":{"integrity":"sha512-MVEJ4vWAPNbrGLjz7ITnHYg+YXZ6ijAqtH5/cHwSoCpbvuJ98aLXwFfPKAUfZpJMQR5uXB58UJajbY130IRF/w==","shasum":"8d5793b09b2d6021ba5e620c6a0f876c20db7eaa","tarball":"https://registry.npmjs.org/@vascosantos/moving-average/-/moving-average-1.1.0.tgz","fileCount":6,"unpackedSize":5622,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgi805CRA9TVsSAnZWagAAwVEP/03moC+kSNqyZYlFZm0f\nWj2e5krjpKuHvf5bgV8awK+Tostm4kASXO5umtKbjHrko93nDBGUh/qFnA4c\nPCWj+PtxUI7l17iNhyboesfgEf+JqqA/F/S7dJAJp+EsdxjBRquj83cEXXs1\n42/DliY/UjjRLk1TpFdMpRvAqFWJ6Fnkh8Wy47qjwaPJLuTT8JQCLf8Kq8GV\nyuRzE9HckXdD7AU0dO/1vsbslW4oNrEAgmu1gsh1kJ1xY8V6O8Q8H8gCnaXF\nsWWFddQ99VL/hZ81CFXx5ww4RJIsypthLAvLBnELl+r0DvxHRKc8NetqKXql\nqOkQaX9tGf0SikfRRdIzwZsNLILbDqEzPnVxmtF8VXESEJK++TpsG6d0RS5G\nHECp1YMv1VWQJjqz5h62uNRC893fKTOQkKNdT8p0N3A827wRQ3imtmMZ2keH\n86+YKnsRUevbplyZZTGvNvcu6CvHwLzsFnn/x/iqWSbVb3L9L0JOpjPFM65J\nwblwyuvfOLcTv8tW0c5DOl6I9hOCmrogSSJWPoWtE70B11Mty40qW9dcTUOy\nLukfhVgYWNTxE+bDw0JEzvCLOSuZJ0DUQzC4xR44LxjRvuw69w6DDhGnYK/C\nnPlGRPGDAmV0gYk6p+7I18sOd9DtzJz8JvooRJv70HOVvxZDw/uJQ/ug+wco\nQG6n\r\n=BH4J\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIDm6bPa5wtc30EpI5ooCWf+IIo2WHLgz0zeDehAUS5ZvAiATT727w+1HpyI/0nhFWX9zOg1tzoQTw6WPM85TeFSpbQ=="}]},"_npmUser":{"name":"vascosantos","email":"vasco.santos@moxy.studio"},"directories":{},"maintainers":[{"name":"vascosantos","email":"vasco.santos@moxy.studio"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/moving-average_1.1.0_1619774776533_0.6582216714541287"},"_hasShrinkwrap":false}},"time":{"created":"2021-04-30T09:26:16.533Z","1.1.0":"2021-04-30T09:26:16.709Z","modified":"2022-04-07T10:18:46.846Z"},"maintainers":[{"name":"vascosantos","email":"vasco.santos@moxy.studio"}],"description":"Exponential Moving Average","homepage":"https://github.com/pgte/moving-average#readme","keywords":["moving","average","average","statistics"],"repository":{"type":"git","url":"git+ssh://git@github.com/pgte/moving-average.git"},"contributors":[{"name":"Pedro Teixeira","email":"i@pgte.me"},{"name":"John Meisner","email":"jhn_msnr@yahoo.com"},{"name":"Max Kutny","email":"https://github.com/mkutny"}],"author":{"name":"Pedro Teixeira","email":"i@pgte.me"},"bugs":{"url":"https://github.com/pgte/moving-average/issues"},"license":"MIT","readme":"# moving-average\n\n[![Build Status](https://travis-ci.org/pgte/moving-average.svg?branch=master)](https://travis-ci.org/pgte/moving-average)\n\nOnline calculation of Exponential Moving Average for Node.js.\n\nAlso suports Moving Variance, Moving Deviation and Forecast.\n\nThe [following](https://en.wikipedia.org/wiki/Moving_average#Exponential_moving_average) online algorithm is implemented:\n\n```\ndiff := x - mean\nincr := alpha * diff\nmean := mean + incr\nvariance := (1 - alpha) * (variance + diff * incr)\nforecast := mean + alpha * diff\n```\n\n## Install\n\n```bash\n$ npm install moving-average\n```\n\n## Use\n\n```javascript\nvar timeInterval = 5 * 60 * 1000; // 5 minutes\n\nvar MA = require('moving-average');\nvar ma = MA(timeInterval);\n\nsetInterval(function() {\n  ma.push(Date.now(), Math.random() * 500);\n  console.log('moving average now is', ma.movingAverage());\n  console.log('moving variance now is', ma.variance());\n  console.log('moving deviation now is', ma.deviation());\n  console.log('forecast is', ma.forecast());\n});\n```\n\n## License\n\nMIT\n","readmeFilename":"README.md"}