{"_id":"@anjana_75/trade-lib","_rev":"13-cf4b240897bb476ba35591baecccee78","name":"@anjana_75/trade-lib","dist-tags":{"latest":"1.3.4"},"versions":{"1.0.0":{"name":"@anjana_75/trade-lib","version":"1.0.0","keywords":["angelone","angelbroking","smartapi","trading","broker","stocks","options","algo-trading"],"author":{"name":"Anjana George"},"license":"MIT","_id":"@anjana_75/trade-lib@1.0.0","maintainers":[{"name":"anjana_75","email":"anjana7581@gmail.com"}],"homepage":"https://github.com/vvvipindsm/trade_lib#readme","bugs":{"url":"https://github.com/vvvipindsm/trade_lib/issues"},"dist":{"shasum":"877cd10f2526b3ee011a984a0b6a42193141d273","tarball":"https://registry.npmjs.org/@anjana_75/trade-lib/-/trade-lib-1.0.0.tgz","fileCount":11,"integrity":"sha512-dyJhVcB2NYQ+MFx3DT+V96mbP2++VQhoLX93KmHS8LgoJLi2IEh2fk0g9seO5GA3oSGVv60WV5C23fobaYrSIA==","signatures":[{"sig":"MEUCIEYTMreTtxO4UsjZ8GGu6+l9+ow5ghoC4JCyrB6S81CiAiEAvJyN83CLxvpsiHsl3rLufTdj3uPLckwE2ALsoysgsL4=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":43789},"main":"index.js","type":"commonjs","gitHead":"edc151f65d09a8c539d0c6bfc6320fe355c2e86c","_npmUser":{"name":"anjana_75","email":"anjana7581@gmail.com"},"repository":{"url":"git+https://github.com/vvvipindsm/trade_lib.git","type":"git"},"_npmVersion":"11.6.1","description":"Reusable Angel One trading library for placing orders, modifying orders, fetching positions, order management and master data operations.","directories":{},"_nodeVersion":"24.11.0","dependencies":{"axios":"^1.16.1","dotenv":"^17.4.2","smartapi-javascript":"^1.0.27","@otplib/preset-default":"^12.0.1"},"_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/trade-lib_1.0.0_1782116731356_0.8935939727107898","host":"s3://npm-registry-packages-npm-production"}},"1.0.1":{"name":"@anjana_75/trade-lib","version":"1.0.1","keywords":["angelone","angelbroking","smartapi","trading","broker","stocks","options","algo-trading"],"author":{"name":"Anjana George"},"license":"MIT","_id":"@anjana_75/trade-lib@1.0.1","maintainers":[{"name":"anjana_75","email":"anjana7581@gmail.com"}],"homepage":"https://github.com/vvvipindsm/trade_lib#readme","bugs":{"url":"https://github.com/vvvipindsm/trade_lib/issues"},"dist":{"shasum":"aea6893b0d2242740c31af6f0eb7da0869074090","tarball":"https://registry.npmjs.org/@anjana_75/trade-lib/-/trade-lib-1.0.1.tgz","fileCount":11,"integrity":"sha512-Wj9jYPHBYek9u0kSGNDiggnUv79hifNIaFUAtvJDhUWtXurAmkNrDr+2Pst+/5KsDcP78iFKyqPvfMfRp5ceww==","signatures":[{"sig":"MEYCIQDIGWTwao3A64DDk/G+PcP82K1vsj0NhSI9SezdsUZD1AIhANnco/5EG+9+rp1pSqo7CDv19sDoiksAXlb2sQEQfy3b","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":43704},"main":"index.js","type":"commonjs","gitHead":"2b3aa6cd83cc6996b83161f2913d5e27cb05c0c7","_npmUser":{"name":"anjana_75","email":"anjana7581@gmail.com"},"repository":{"url":"git+https://github.com/vvvipindsm/trade_lib.git","type":"git"},"_npmVersion":"11.6.1","description":"Reusable Angel One trading library for placing orders, modifying orders, fetching positions, order management and master data operations.","directories":{},"_nodeVersion":"24.11.0","dependencies":{"axios":"^1.16.1","dotenv":"^17.4.2","smartapi-javascript":"^1.0.27","@otplib/preset-default":"^12.0.1"},"_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/trade-lib_1.0.1_1782118582407_0.7519434434923149","host":"s3://npm-registry-packages-npm-production"}},"1.0.2":{"name":"@anjana_75/trade-lib","version":"1.0.2","keywords":["angelone","angelbroking","smartapi","trading","broker","stocks","options","algo-trading"],"author":{"name":"Anjana George"},"license":"MIT","_id":"@anjana_75/trade-lib@1.0.2","maintainers":[{"name":"anjana_75","email":"anjana7581@gmail.com"}],"homepage":"https://github.com/vvvipindsm/trade_lib#readme","bugs":{"url":"https://github.com/vvvipindsm/trade_lib/issues"},"dist":{"shasum":"77d86d002e125c85e4ccee4df931a40104f819bd","tarball":"https://registry.npmjs.org/@anjana_75/trade-lib/-/trade-lib-1.0.2.tgz","fileCount":11,"integrity":"sha512-O6PvTMF4GSQJPW9zud/HATR9T6hPuMZd8gb+e/8C1K021ielD/RpucvstQLPQrRq+5/XrplpR9lvqgLw24AZjg==","signatures":[{"sig":"MEYCIQCFy5PiL6Nloh07gIAvVPKA6UozQsrRb27Kj+jT3ilzjAIhAILCxrU5d9qftyvde3Ce7pgI06PtG07gf6EnqrBwXxrT","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":43706},"main":"index.js","type":"commonjs","gitHead":"fc6d32ee996011ed9602a3c2991a606e6897c187","_npmUser":{"name":"anjana_75","email":"anjana7581@gmail.com"},"repository":{"url":"git+https://github.com/vvvipindsm/trade_lib.git","type":"git"},"_npmVersion":"11.6.1","description":"Reusable Angel One trading library for placing orders, modifying orders, fetching positions, order management and master data operations.","directories":{},"_nodeVersion":"24.11.0","dependencies":{"axios":"^1.16.1","dotenv":"^17.4.2","smartapi-javascript":"^1.0.27","@otplib/preset-default":"^12.0.1"},"_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/trade-lib_1.0.2_1782119413043_0.031084820250424805","host":"s3://npm-registry-packages-npm-production"}},"1.0.4":{"name":"@anjana_75/trade-lib","version":"1.0.4","keywords":["angelone","angelbroking","smartapi","trading","broker","stocks","options","algo-trading"],"author":{"name":"Anjana George"},"license":"MIT","_id":"@anjana_75/trade-lib@1.0.4","maintainers":[{"name":"anjana_75","email":"anjana7581@gmail.com"}],"homepage":"https://github.com/vvvipindsm/trade_lib#readme","bugs":{"url":"https://github.com/vvvipindsm/trade_lib/issues"},"dist":{"shasum":"319624ff639c6c46f352b89528a53591ab9609d9","tarball":"https://registry.npmjs.org/@anjana_75/trade-lib/-/trade-lib-1.0.4.tgz","fileCount":12,"integrity":"sha512-mYlA0RHuzTA3UPWEIjApWMuJJE04RvKe4uARBrrIYajwlZE05ZxhJ4Rg01uEeHsrMxAJzRnLKFh7iDiT+9r/uA==","signatures":[{"sig":"MEUCIQCv2SNjViENiZs/3lPCb7J9Ezmzl1P20agET4bziMMaagIgeY7nPnshFerCjmoHREAwEWZjCUkCrkgqGlRnYb/js6I=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":41210},"main":"index.js","type":"commonjs","gitHead":"de6f194d7ce17ceca091964d572a663e83a8b20a","_npmUser":{"name":"anjana_75","email":"anjana7581@gmail.com"},"repository":{"url":"git+https://github.com/vvvipindsm/trade_lib.git","type":"git"},"_npmVersion":"11.6.1","description":"Reusable Angel One trading library for placing orders, modifying orders, fetching positions, order management and master data operations.","directories":{},"_nodeVersion":"24.11.0","dependencies":{"axios":"^1.16.1","dotenv":"^17.4.2","node-cron":"^4.5.0","smartapi-javascript":"^1.0.27","@otplib/preset-default":"^12.0.1"},"_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/trade-lib_1.0.4_1782209942774_0.11894219760249447","host":"s3://npm-registry-packages-npm-production"}},"1.0.5":{"name":"@anjana_75/trade-lib","version":"1.0.5","keywords":["angelone","angelbroking","smartapi","trading","broker","stocks","options","algo-trading"],"author":{"name":"Anjana George"},"license":"MIT","_id":"@anjana_75/trade-lib@1.0.5","maintainers":[{"name":"anjana_75","email":"anjana7581@gmail.com"}],"homepage":"https://github.com/vvvipindsm/trade_lib#readme","bugs":{"url":"https://github.com/vvvipindsm/trade_lib/issues"},"dist":{"shasum":"a1c6e97002d8a45e1884b2441ec987162ae9ead2","tarball":"https://registry.npmjs.org/@anjana_75/trade-lib/-/trade-lib-1.0.5.tgz","fileCount":15,"integrity":"sha512-A7VdnAK/jrOKhAPcfcUHjBjM5pX5QOTIqeS3Qb0/9dN0Jifhiog8wYV43uYB0Lm0LdSj1WOWTt8cTFxkJ5TpJw==","signatures":[{"sig":"MEYCIQDj7Q6bGNzBimbclW0v6oEZL2IwroIZsrPlgdBMZgGz+wIhAId01v6PmnqqC33tLDAK0FWRu8jtZVXUomSZPHISs/KH","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":59034},"main":"index.js","type":"commonjs","gitHead":"7c94cf95d73d4fd5cb87adcfd9b2f2d63db84832","_npmUser":{"name":"anjana_75","email":"anjana7581@gmail.com"},"repository":{"url":"git+https://github.com/vvvipindsm/trade_lib.git","type":"git"},"_npmVersion":"11.6.1","description":"Reusable Angel One trading library for placing orders, modifying orders, fetching positions, order management and master data operations.","directories":{},"_nodeVersion":"24.11.0","dependencies":{"axios":"^1.16.1","redis":"^6.0.0","dotenv":"^17.4.2","node-cron":"^4.5.0","smartapi-javascript":"^1.0.27","@otplib/preset-default":"^12.0.1"},"_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/trade-lib_1.0.5_1782281851422_0.878879547052156","host":"s3://npm-registry-packages-npm-production"}},"1.0.6":{"name":"@anjana_75/trade-lib","version":"1.0.6","keywords":["angelone","angelbroking","smartapi","trading","broker","stocks","options","algo-trading"],"author":{"name":"Anjana George"},"license":"MIT","_id":"@anjana_75/trade-lib@1.0.6","maintainers":[{"name":"anjana_75","email":"anjana7581@gmail.com"}],"homepage":"https://github.com/vvvipindsm/trade_lib#readme","bugs":{"url":"https://github.com/vvvipindsm/trade_lib/issues"},"dist":{"shasum":"21c6b3e306009dc8ba3e01c0a74354374b87bf03","tarball":"https://registry.npmjs.org/@anjana_75/trade-lib/-/trade-lib-1.0.6.tgz","fileCount":15,"integrity":"sha512-f4MoumNdp9FAROeaFGz/W8MTbGG8QLQqxn+WrF6bpN4PbaNo3E2o5KLHRThgqeOHwmTIfUGp6iqvIVZ+chIv/g==","signatures":[{"sig":"MEQCIBYrEqiMbzVnQxEJGRbE7U9CfX8DttNSMK65q4F+qpPbAiB2Skg6b0IEXiidRpFOTlZrDv0ul46ajEY/ZnHABdQy+g==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":60133},"main":"index.js","type":"commonjs","gitHead":"d5a4206cbd268c0157d6f8f8423172cfe6fe2cc9","_npmUser":{"name":"anjana_75","email":"anjana7581@gmail.com"},"repository":{"url":"git+https://github.com/vvvipindsm/trade_lib.git","type":"git"},"_npmVersion":"11.6.1","description":"Reusable Angel One trading library for placing orders, modifying orders, fetching positions, order management and master data operations.","directories":{},"_nodeVersion":"24.11.0","dependencies":{"axios":"^1.16.1","redis":"^6.0.0","dotenv":"^17.4.2","node-cron":"^4.5.0","smartapi-javascript":"^1.0.27","@otplib/preset-default":"^12.0.1"},"_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/trade-lib_1.0.6_1782308646022_0.5721115590195465","host":"s3://npm-registry-packages-npm-production"}},"1.1.0":{"name":"@anjana_75/trade-lib","version":"1.1.0","keywords":["angelone","angelbroking","smartapi","trading","broker","stocks","options","algo-trading"],"author":{"name":"Anjana George"},"license":"MIT","_id":"@anjana_75/trade-lib@1.1.0","maintainers":[{"name":"anjana_75","email":"anjana7581@gmail.com"}],"homepage":"https://github.com/vvvipindsm/trade_lib#readme","bugs":{"url":"https://github.com/vvvipindsm/trade_lib/issues"},"dist":{"shasum":"b0d8d94a6af5cea94448f5e47c15d2d684b0f1a7","tarball":"https://registry.npmjs.org/@anjana_75/trade-lib/-/trade-lib-1.1.0.tgz","fileCount":17,"integrity":"sha512-EWsmeLBeQbZbsC8IWMckuCWKJA6y8zPEAJlFwDLrBBtegLLaz2ODU6OGUANHQWMlDPiNfyhyg80xVBFmSnrgXw==","signatures":[{"sig":"MEQCIG9S99/qc2YJJl6vrSn2iDJeW7iCZMictdwWp2PVjIdgAiBfPz5ZrTfQRa8m9iay65AKqWzPNKplT4VwovLD6Ep/hA==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":104093},"main":"index.js","type":"commonjs","gitHead":"d14051c56ac33d96d3b616e25fa8a5c8bc22873e","_npmUser":{"name":"anjana_75","email":"anjana7581@gmail.com"},"repository":{"url":"git+https://github.com/vvvipindsm/trade_lib.git","type":"git"},"_npmVersion":"11.6.1","description":"Reusable Angel One trading library for placing orders, modifying orders, fetching positions, order management and master data operations.","directories":{},"_nodeVersion":"24.11.0","dependencies":{"axios":"^1.16.1","redis":"^6.0.0","dotenv":"^17.4.2","node-cron":"^4.5.0","smartapi-javascript":"^1.0.27","@otplib/preset-default":"^12.0.1"},"_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/trade-lib_1.1.0_1783162816848_0.3631070391126914","host":"s3://npm-registry-packages-npm-production"}},"1.2.0":{"name":"@anjana_75/trade-lib","version":"1.2.0","keywords":["angelone","angelbroking","smartapi","trading","broker","stocks","options","algo-trading"],"author":{"name":"Anjana George"},"license":"MIT","_id":"@anjana_75/trade-lib@1.2.0","maintainers":[{"name":"anjana_75","email":"anjana7581@gmail.com"}],"homepage":"https://github.com/vvvipindsm/trade_lib#readme","bugs":{"url":"https://github.com/vvvipindsm/trade_lib/issues"},"dist":{"shasum":"57594dbd21e532dc1f4b56b12bfb30ea744b5744","tarball":"https://registry.npmjs.org/@anjana_75/trade-lib/-/trade-lib-1.2.0.tgz","fileCount":17,"integrity":"sha512-k+GgvWHUErS1X3gWhDDxrkyaAaMfLTSh7fJ+JAfdKZRdPW7rP4QybdbWSlOgnua/yBCQzHmfBFnNhD5eBhPMVQ==","signatures":[{"sig":"MEUCIQCxKC4sYX4jRKiCf06EAzJ7FtM9GCxpihCrCrdT0lt7pwIgaYSYhp/4LVSOYT1wjFmpIPI/oIiVcOaDPLaCfYLylF4=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":105074},"main":"index.js","type":"commonjs","gitHead":"14cbf45951aacbd9cdc9aa45db842e913a230672","_npmUser":{"name":"anjana_75","email":"anjana7581@gmail.com"},"repository":{"url":"git+https://github.com/vvvipindsm/trade_lib.git","type":"git"},"_npmVersion":"11.6.1","description":"Reusable Angel One trading library for placing orders, modifying orders, fetching positions, order management and master data operations.","directories":{},"_nodeVersion":"24.11.0","dependencies":{"axios":"^1.16.1","redis":"^6.0.0","dotenv":"^17.4.2","node-cron":"^4.5.0","smartapi-javascript":"^1.0.27","@otplib/preset-default":"^12.0.1"},"_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/trade-lib_1.2.0_1783175378324_0.8014764354452166","host":"s3://npm-registry-packages-npm-production"}},"1.3.0":{"name":"@anjana_75/trade-lib","version":"1.3.0","keywords":["angelone","angelbroking","smartapi","trading","broker","stocks","options","algo-trading"],"author":{"name":"Anjana George"},"license":"MIT","_id":"@anjana_75/trade-lib@1.3.0","maintainers":[{"name":"anjana_75","email":"anjana7581@gmail.com"}],"homepage":"https://github.com/vvvipindsm/trade_lib#readme","bugs":{"url":"https://github.com/vvvipindsm/trade_lib/issues"},"dist":{"shasum":"b11cb6698b04654fd955882fd7fa079fd379d0f7","tarball":"https://registry.npmjs.org/@anjana_75/trade-lib/-/trade-lib-1.3.0.tgz","fileCount":17,"integrity":"sha512-MhnR21nyZx4+TTnAeuiljZxTj4mYO2PHDcC0yTtx/0B1bu0vMesGZfSK9OZK8zsh2yVspI5GzTVnm64i84gBuA==","signatures":[{"sig":"MEYCIQCBHJtjSww699xqK0HyPoJA02WIpJmSJVBZOyqFhAMD7QIhAJp3viy1FmhR/1PdQ5iLOupFl9JSo5hSL0l7crq3wxoi","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":105078},"main":"index.js","type":"commonjs","gitHead":"8623212aed426c9a4f8e2c5aff256816e1943a93","_npmUser":{"name":"anjana_75","email":"anjana7581@gmail.com"},"repository":{"url":"git+https://github.com/vvvipindsm/trade_lib.git","type":"git"},"_npmVersion":"11.6.1","description":"Reusable Angel One trading library for placing orders, modifying orders, fetching positions, order management and master data operations.","directories":{},"_nodeVersion":"24.11.0","dependencies":{"axios":"^1.16.1","redis":"^6.0.0","dotenv":"^17.4.2","node-cron":"^4.5.0","smartapi-javascript":"^1.0.27","@otplib/preset-default":"^12.0.1"},"_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/trade-lib_1.3.0_1783175884647_0.8562551606330038","host":"s3://npm-registry-packages-npm-production"}},"1.3.1":{"name":"@anjana_75/trade-lib","version":"1.3.1","keywords":["angelone","angelbroking","smartapi","trading","broker","stocks","options","algo-trading"],"author":{"name":"Anjana George"},"license":"MIT","_id":"@anjana_75/trade-lib@1.3.1","maintainers":[{"name":"anjana_75","email":"anjana7581@gmail.com"}],"homepage":"https://github.com/vvvipindsm/trade_lib#readme","bugs":{"url":"https://github.com/vvvipindsm/trade_lib/issues"},"dist":{"shasum":"45bfeb0e5c158dcfca484b9ec725898369a1855a","tarball":"https://registry.npmjs.org/@anjana_75/trade-lib/-/trade-lib-1.3.1.tgz","fileCount":17,"integrity":"sha512-6h3aQUtVV8xbmrC6F+6lG92lvfEO/nSjL7KMIn8VzTNG9tMg3XAfXwUxL/WxuA521TXCEKfMmfcSXH8CgZhoTg==","signatures":[{"sig":"MEYCIQCjlNmvbKli+SF3aExLS47+VGF1Snna8JhQ2yzOfK/1tgIhAN1ZcvQAnpLuPQcr4HA9ro+6HjjNNjn7fcnOXFglT+pJ","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":105126},"main":"index.js","type":"commonjs","gitHead":"d2d9f37a33db588ff2199620f21915e1fc530441","_npmUser":{"name":"anjana_75","email":"anjana7581@gmail.com"},"repository":{"url":"git+https://github.com/vvvipindsm/trade_lib.git","type":"git"},"_npmVersion":"11.6.1","description":"Reusable Angel One trading library for placing orders, modifying orders, fetching positions, order management and master data operations.","directories":{},"_nodeVersion":"24.11.0","dependencies":{"axios":"^1.16.1","redis":"^6.0.0","dotenv":"^17.4.2","node-cron":"^4.5.0","smartapi-javascript":"^1.0.27","@otplib/preset-default":"^12.0.1"},"_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/trade-lib_1.3.1_1783176853359_0.853250386923744","host":"s3://npm-registry-packages-npm-production"}},"1.3.2":{"name":"@anjana_75/trade-lib","version":"1.3.2","keywords":["angelone","angelbroking","smartapi","trading","broker","stocks","options","algo-trading"],"author":{"name":"Anjana George"},"license":"MIT","_id":"@anjana_75/trade-lib@1.3.2","maintainers":[{"name":"anjana_75","email":"anjana7581@gmail.com"}],"homepage":"https://github.com/vvvipindsm/trade_lib#readme","bugs":{"url":"https://github.com/vvvipindsm/trade_lib/issues"},"dist":{"shasum":"53283c52c2fe7e8ac681aadab822cb36e6a22c84","tarball":"https://registry.npmjs.org/@anjana_75/trade-lib/-/trade-lib-1.3.2.tgz","fileCount":17,"integrity":"sha512-ircqv0IZChcVoh3r8zlBUebcneIOc7Wxa3H1wTmgh8wl3fYkUcFqWSHBC0wXhwumpp4q+Q9NBLz2kskNffP0pg==","signatures":[{"sig":"MEUCIDlUeKFD9vD7A7/U8hXyQRh9I7rw5Y5nHHQv1NecqHnkAiEA4UX3aQ+TvdUby+xieuLnpbNfegJdyttGqqBmJ7LEpjs=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":105389},"main":"index.js","type":"commonjs","gitHead":"84a73f1df56d6e2e097e7c754942853e5332cb60","_npmUser":{"name":"anjana_75","email":"anjana7581@gmail.com"},"repository":{"url":"git+https://github.com/vvvipindsm/trade_lib.git","type":"git"},"_npmVersion":"11.6.1","description":"Reusable Angel One trading library for placing orders, modifying orders, fetching positions, order management and master data operations.","directories":{},"_nodeVersion":"24.11.0","dependencies":{"axios":"^1.16.1","redis":"^6.0.0","dotenv":"^17.4.2","node-cron":"^4.5.0","smartapi-javascript":"^1.0.27","@otplib/preset-default":"^12.0.1"},"_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/trade-lib_1.3.2_1783410894442_0.7239212942461852","host":"s3://npm-registry-packages-npm-production"}},"1.3.3":{"name":"@anjana_75/trade-lib","version":"1.3.3","keywords":["angelone","angelbroking","smartapi","trading","broker","stocks","options","algo-trading"],"author":{"name":"Anjana George"},"license":"MIT","_id":"@anjana_75/trade-lib@1.3.3","maintainers":[{"name":"anjana_75","email":"anjana7581@gmail.com"}],"homepage":"https://github.com/vvvipindsm/trade_lib#readme","bugs":{"url":"https://github.com/vvvipindsm/trade_lib/issues"},"dist":{"shasum":"94801903d7baae74527891585184a49b191dc3eb","tarball":"https://registry.npmjs.org/@anjana_75/trade-lib/-/trade-lib-1.3.3.tgz","fileCount":17,"integrity":"sha512-3Q1pY0in4y9ilDYQP6HZNm6yE1bSLJ5CZ/6g6lj/C/n8FQ7VMFv6tKu7VQaenW9da/33kuvdjj3hmElVp4AG7w==","signatures":[{"sig":"MEYCIQCpwUTSBoqKzdRZr0pJB06HqAqcy2A4/09FzRdSHAhzUQIhAJrLbCxXbMlrBdaI7xLUZrE+aR9GE7aetVSx8bPs4b/V","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":105393},"main":"index.js","type":"commonjs","gitHead":"bc88f47952086ae752d925743da09b6503698911","_npmUser":{"name":"anjana_75","email":"anjana7581@gmail.com"},"repository":{"url":"git+https://github.com/vvvipindsm/trade_lib.git","type":"git"},"_npmVersion":"11.6.1","description":"Reusable Angel One trading library for placing orders, modifying orders, fetching positions, order management and master data operations.","directories":{},"_nodeVersion":"24.11.0","dependencies":{"axios":"^1.16.1","redis":"^6.0.0","dotenv":"^17.4.2","node-cron":"^4.5.0","smartapi-javascript":"^1.0.27","@otplib/preset-default":"^12.0.1"},"_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/trade-lib_1.3.3_1783429948724_0.11527344315290278","host":"s3://npm-registry-packages-npm-production"}},"1.3.4":{"name":"@anjana_75/trade-lib","version":"1.3.4","description":"Reusable Angel One trading library for placing orders, modifying orders, fetching positions, order management and master data operations.","main":"index.js","type":"commonjs","keywords":["angelone","angelbroking","smartapi","trading","broker","stocks","options","algo-trading"],"author":{"name":"Anjana George"},"license":"MIT","repository":{"type":"git","url":"git+https://github.com/vvvipindsm/trade_lib.git"},"bugs":{"url":"https://github.com/vvvipindsm/trade_lib/issues"},"homepage":"https://github.com/vvvipindsm/trade_lib#readme","dependencies":{"@otplib/preset-default":"^12.0.1","axios":"^1.16.1","dotenv":"^17.4.2","kiteconnect":"^5.3.0","node-cron":"^4.5.0","playwright":"^1.61.1","puppeteer":"^25.3.0","redis":"^6.0.0","smartapi-javascript":"^1.0.27"},"gitHead":"6a83bc6827c369498dc256da360a386b92379410","_id":"@anjana_75/trade-lib@1.3.4","_nodeVersion":"24.11.0","_npmVersion":"11.6.1","dist":{"integrity":"sha512-/Cu3K4i5/nqhvUDkzjVwOt6GYAsFir5cPtAdPphUqdzVfBgmpCKfV2IwPP9Y7DgX/r48OaGjzzBXfyqvYWtsAQ==","shasum":"8a50be82b91c4089043489ba74ce2329c29eecd8","tarball":"https://registry.npmjs.org/@anjana_75/trade-lib/-/trade-lib-1.3.4.tgz","fileCount":22,"unpackedSize":194559,"signatures":[{"keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U","sig":"MEQCIE1mUwO0ZVbZZkP9ULCnX63LgO0MO5A1UzTo8CKOZwmbAiBRqsghvPE4VLdrjVoBJqjoZV49OtM3Dj6k2aoXBJnUuw=="}]},"_npmUser":{"name":"anjana_75","email":"anjana7581@gmail.com"},"directories":{},"maintainers":[{"name":"anjana_75","email":"anjana7581@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages-npm-production","tmp":"tmp/trade-lib_1.3.4_1783595484612_0.4055206477546349"},"_hasShrinkwrap":false}},"time":{"created":"2026-06-22T08:25:31.191Z","modified":"2026-07-09T11:11:24.859Z","1.0.0":"2026-06-22T08:25:31.542Z","1.0.1":"2026-06-22T08:56:22.549Z","1.0.2":"2026-06-22T09:10:13.202Z","1.0.4":"2026-06-23T10:19:02.948Z","1.0.5":"2026-06-24T06:17:31.577Z","1.0.6":"2026-06-24T13:44:06.159Z","1.1.0":"2026-07-04T11:00:16.983Z","1.2.0":"2026-07-04T14:29:38.457Z","1.3.0":"2026-07-04T14:38:04.780Z","1.3.1":"2026-07-04T14:54:13.494Z","1.3.2":"2026-07-07T07:54:54.591Z","1.3.3":"2026-07-07T13:12:28.866Z","1.3.4":"2026-07-09T11:11:24.761Z"},"bugs":{"url":"https://github.com/vvvipindsm/trade_lib/issues"},"author":{"name":"Anjana George"},"license":"MIT","homepage":"https://github.com/vvvipindsm/trade_lib#readme","keywords":["angelone","angelbroking","smartapi","trading","broker","stocks","options","algo-trading"],"repository":{"type":"git","url":"git+https://github.com/vvvipindsm/trade_lib.git"},"description":"Reusable Angel One trading library for placing orders, modifying orders, fetching positions, order management and master data operations.","maintainers":[{"name":"anjana_75","email":"anjana7581@gmail.com"}],"readme":"# Trade Lib\r\n\r\nA reusable Node.js trading library for broker integrations.\r\n\r\nCurrently supports Angel One SmartAPI and is designed to support additional brokers such as AliceBlue and Upstox in the future.\r\n\r\n---\r\n\r\n## Features\r\n\r\n### Trading\r\n\r\n* Place Orders\r\n* Place Stop Loss Orders\r\n* Place Target Orders\r\n* Modify Orders\r\n* Fetch Order Book\r\n* Fetch Positions\r\n* Check Open Orders\r\n* Check Open Positions\r\n* Exit All Open Positions\r\n\r\n### Master Data & Contracts\r\n\r\n* Download Master Data\r\n* Store Contracts Locally\r\n* Symbol → Token Search\r\n* Token → Contract Search\r\n* Option Contract Search\r\n* Exchange-wise Contract Storage\r\n\r\n### Redis Integration\r\n\r\n* Redis Contract Cache\r\n* Symbol Lookup Index\r\n* Token Lookup Index\r\n* Option Lookup Index\r\n* Automatic Redis Cache Rebuild\r\n\r\n### Automation\r\n\r\n* Daily Master Data Download\r\n* Automatic Log Cleanup\r\n* Scheduled Cron Jobs\r\n\r\n### Logging\r\n\r\n* Order Logs\r\n* Error Logs\r\n* Master Data Download Errors\r\n* Log Retention Management\r\n\r\n---\r\n\r\n## Installation\r\n\r\n```bash\r\nnpm install @anjana_75/trade-lib\r\n```\r\n\r\n---\r\n\r\n## Environment Variables\r\n\r\nCreate a `.env` file in your project:\r\n\r\n```env\r\nANGEL_API_KEY=YOUR_API_KEY\r\nANGEL_CLIENT_ID=YOUR_CLIENT_ID\r\nANGEL_PIN=YOUR_PIN\r\nANGEL_TOTP_SECRET=YOUR_TOTP_SECRET\r\n\r\nREDIS_URL=redis://localhost:6379\r\n```\r\n\r\n---\r\n\r\n## Redis Setup (Docker)\r\n\r\nThis library uses Redis for fast contract and option searches.\r\n\r\n### Docker Compose\r\n\r\nCreate a `docker-compose.yml` file:\r\n\r\n```yaml\r\nservices:\r\n  redis:\r\n    image: redis:latest\r\n    container_name: trade_lib_redis\r\n    ports:\r\n      - \"6379:6379\"\r\n\r\n  redisinsight:\r\n    image: redis/redisinsight:latest\r\n    container_name: trade_lib_redisinsight\r\n    ports:\r\n      - \"5540:5540\"\r\n```\r\n\r\n### Start Services\r\n\r\n```bash\r\ndocker compose up -d\r\n```\r\n\r\n### Verify Containers\r\n\r\n```bash\r\ndocker ps\r\n```\r\n\r\n### RedisInsight\r\n\r\nOpen:\r\n\r\n```text\r\nhttp://localhost:5540\r\n```\r\n\r\nCreate a connection:\r\n\r\n```text\r\nHost: localhost\r\nPort: 6379\r\n```\r\n\r\n### Stop Services\r\n\r\n```bash\r\ndocker compose down\r\n```\r\n\r\n---\r\n\r\n## Order Tag Support\r\n\r\nOrder tags can be passed while placing orders for easier tracking and logging.\r\n\r\n```javascript\r\nconst result = await placeOrder('angelone', {\r\n    tradingsymbol: 'SBIN-EQ',\r\n    symboltoken: '3045',\r\n    transactiontype: 'BUY',\r\n    exchange: 'NSE',\r\n    quantity: 1,\r\n    ordertype: 'MARKET',\r\n    ordertag: 'strategy_1'\r\n});\r\n```\r\n\r\n---\r\n\r\n## Contract Search Architecture\r\n\r\n### Local Storage\r\n\r\nFull contract master data is stored locally:\r\n\r\n```text\r\ncontracts/\r\n└── angelone/\r\n    └── masterdata/\r\n        ├── nse.json\r\n        ├── nfo.json\r\n        ├── bse.json\r\n        ├── bfo.json\r\n        ├── cds.json\r\n        ├── mcx.json\r\n        ├── ncdex.json\r\n        └── nco.json\r\n```\r\n\r\n### Redis Search Indexes\r\n\r\nRedis stores only search indexes to reduce memory usage.\r\n\r\n```text\r\ncontracts:angelone:masterdata:nse:symbol:SBIN-EQ\r\ncontracts:angelone:masterdata:nse:token:3045\r\n\r\ncontracts:angelone:option:NIFTY:30JUN2026:30000:PE\r\n```\r\n\r\n### Search Flow\r\n\r\nStock Search:\r\n\r\n```text\r\nSymbol\r\n ↓\r\nRedis\r\n ↓\r\nToken\r\n ↓\r\nContract Details\r\n```\r\n\r\nOption Search:\r\n\r\n```text\r\nUnderlying + Expiry + Strike + Option Type\r\n ↓\r\nRedis Option Index\r\n ↓\r\nToken\r\n ↓\r\nContract Details\r\n```\r\n\r\n### Redis Memory Optimization\r\n\r\nThe library stores:\r\n\r\n- Symbol → Token\r\n- Token → Contract\r\n- Option → Token\r\n\r\nFull exchange master data remains in JSON files, reducing Redis memory usage while maintaining fast searches.\r\n\r\n---\r\n\r\n## Broker Architecture\r\n\r\nThe library is designed to support multiple brokers through a common interface.\r\n\r\nCurrent Structure:\r\n\r\n```text\r\nbrokers/\r\n├── angelone.js\r\n├── aliceblue.js\r\n└── upstox.js\r\n```\r\n\r\nCurrently Supported:\r\n\r\n- Angel One\r\n\r\nPlanned:\r\n\r\n- AliceBlue\r\n- Upstox\r\n\r\n---\r\n\r\n## Usage\r\n\r\n```javascript\r\nrequire('dotenv').config();\r\n\r\nconst {\r\n    placeOrder,\r\n    placeSLOrder,\r\n    placeTPOrder,\r\n    modifyOrder,\r\n    getOrders,\r\n    getPositions,\r\n    hasOpenOrder,\r\n    hasOpenPosition,\r\n    loopExitPositions,\r\n    downloadMasterData,\r\n    readMasterData,\r\n    downloadAndStoreContracts,\r\n    getTokenBySymbol,\r\n    getContractByToken,\r\n    getOptionContract\r\n} = require('@anjana_75/trade-lib');\r\n```\r\n\r\n---\r\n\r\n## Place Order\r\n\r\n```javascript\r\nconst result = await placeOrder('angelone', {\r\n    tradingsymbol: 'SBIN-EQ',\r\n    symboltoken: '3045',\r\n    transactiontype: 'BUY',\r\n    exchange: 'NSE',\r\n    quantity: 1,\r\n    ordertype: 'MARKET'\r\n});\r\n\r\nconsole.log(result);\r\n```\r\n\r\n---\r\n\r\n## Place Stop Loss Order\r\n\r\n```javascript\r\nconst result = await placeSLOrder('angelone', {\r\n    tradingsymbol: 'SBIN-EQ',\r\n    symboltoken: '3045',\r\n    quantity: 1\r\n});\r\n```\r\n\r\n---\r\n\r\n## Place Target Order\r\n\r\n```javascript\r\nconst result = await placeTPOrder('angelone', {\r\n    tradingsymbol: 'SBIN-EQ',\r\n    symboltoken: '3045',\r\n    quantity: 1\r\n});\r\n```\r\n\r\n---\r\n\r\n## Get Orders\r\n\r\n```javascript\r\nconst orders = await getOrders('angelone');\r\n```\r\n\r\n---\r\n\r\n## Get Positions\r\n\r\n```javascript\r\nconst positions = await getPositions('angelone');\r\n```\r\n\r\n---\r\n\r\n## Download Master Data\r\n\r\n```javascript\r\nconst result = await downloadMasterData('angelone');\r\n\r\nconsole.log(result);\r\n```\r\n\r\n---\r\n\r\n## Download And Store Contracts\r\n\r\n```javascript\r\nconst result = await downloadAndStoreContracts(\r\n    'angelone'\r\n);\r\n\r\nconsole.log(result);\r\n```\r\n\r\n---\r\n\r\n## Search Token By Symbol\r\n\r\n```javascript\r\nconst result = await getTokenBySymbol(\r\n    'angelone',\r\n    'nse',\r\n    'SBIN-EQ'\r\n);\r\n\r\nconsole.log(result);\r\n```\r\n\r\n---\r\n\r\n## Search Contract By Token\r\n\r\n```javascript\r\nconst result = await getContractByToken(\r\n    'angelone',\r\n    'nse',\r\n    '3045'\r\n);\r\n\r\nconsole.log(result);\r\n```\r\n\r\n---\r\n\r\n## Search Option Contract\r\n\r\n```javascript\r\nconst result = await getOptionContract(\r\n    'angelone',\r\n    'NIFTY',\r\n    '30JUN2026',\r\n    30000,\r\n    'PE'\r\n);\r\n\r\nconsole.log(result);\r\n```\r\n\r\n---\r\n\r\n## Contract Storage Structure\r\n\r\n```text\r\ncontracts/\r\n└── angelone/\r\n    └── masterdata/\r\n        ├── nse.json\r\n        └── nfo.json\r\n```\r\n\r\n---\r\n\r\n## Redis Structure\r\n\r\n```text\r\ncontracts:angelone:masterdata:nse:symbol:SBIN-EQ\r\ncontracts:angelone:masterdata:nse:token:3045\r\n\r\ncontracts:angelone:option:NIFTY:30JUN2026:30000:PE\r\n```\r\n\r\n---\r\n\r\n## Cron Jobs\r\n\r\n### Master Data Download\r\n\r\nRuns daily and downloads the latest contract master data.\r\n\r\n### Log Cleanup\r\n\r\nAutomatically removes logs older than the configured retention period.\r\n\r\n---\r\n\r\n## Supported Brokers\r\n\r\nCurrently Supported:\r\n\r\n* Angel One ✅\r\n* AliceBlue ✅\r\n\r\nPlanned:\r\n\r\n* Upstox 🚧\r\n---\r\n---\r\n\r\n# AliceBlue Support\r\n\r\nTrade Lib now supports AliceBlue Open API alongside Angel One.\r\n\r\n## AliceBlue Environment Variables\r\n\r\nAdd the following values to your `.env` file:\r\n\r\n```env\r\nALICEBLUE_BASE_URL=https://a3.aliceblueonline.com/open-api/od/v1\r\n\r\nALICEBLUE_USER_ID=YOUR_USER_ID\r\nALICEBLUE_API_KEY=YOUR_API_KEY\r\nALICEBLUE_API_SECRET=YOUR_API_SECRET\r\nALICEBLUE_AUTH_CODE=YOUR_AUTH_CODE\r\n```\r\n\r\n---\r\n\r\n## AliceBlue Login\r\n\r\n```javascript\r\nconst { aliceblue } = require('@anjana_75/trade-lib');\r\n\r\nconst result = await aliceblue.login();\r\n\r\nconsole.log(result);\r\n```\r\n\r\n---\r\n\r\n## AliceBlue Place Order\r\n\r\n```javascript\r\nconst result = await placeOrder('aliceblue', {\r\n    exchange: 'NSE',\r\n    tradingsymbol: 'SBIN',\r\n    transactiontype: 'BUY',\r\n    quantity: 1,\r\n    ordertype: 'MARKET',\r\n    producttype: 'INTRADAY'\r\n});\r\n\r\nconsole.log(result);\r\n```\r\n\r\n---\r\n\r\n## AliceBlue Modify Order\r\n\r\n```javascript\r\nconst result = await modifyOrder('aliceblue', {\r\n    brokerOrderId: 'ORDER_ID',\r\n    quantity: 1,\r\n    price: 100\r\n});\r\n\r\nconsole.log(result);\r\n```\r\n\r\n---\r\n\r\n## AliceBlue Get Orders\r\n\r\n```javascript\r\nconst orders = await getOrders('aliceblue');\r\n\r\nconsole.log(orders);\r\n```\r\n\r\n---\r\n\r\n## AliceBlue Get Positions\r\n\r\n```javascript\r\nconst positions = await getPositions('aliceblue');\r\n\r\nconsole.log(positions);\r\n```\r\n\r\n---\r\n\r\n## AliceBlue Check Open Orders\r\n\r\n```javascript\r\nconst hasOpenOrder = await hasOpenOrder(\r\n    'aliceblue'\r\n);\r\n\r\nconsole.log(hasOpenOrder);\r\n```\r\n\r\nCheck specific token:\r\n\r\n```javascript\r\nconst hasOpenOrder = await hasOpenOrder(\r\n    'aliceblue',\r\n    '123456'\r\n);\r\n\r\nconsole.log(hasOpenOrder);\r\n```\r\n\r\n---\r\n\r\n## AliceBlue Check Open Positions\r\n\r\n```javascript\r\nconst hasOpenPosition = await hasOpenPosition(\r\n    'aliceblue'\r\n);\r\n\r\nconsole.log(hasOpenPosition);\r\n```\r\n\r\nCheck specific token:\r\n\r\n```javascript\r\nconst hasOpenPosition = await hasOpenPosition(\r\n    'aliceblue',\r\n    '123456'\r\n);\r\n\r\nconsole.log(hasOpenPosition);\r\n```\r\n\r\n---\r\n\r\n## AliceBlue Exit All Positions\r\n\r\n```javascript\r\nconst result = await loopExitPositions(\r\n    'aliceblue'\r\n);\r\n\r\nconsole.log(result);\r\n```\r\n\r\n---\r\n\r\n## AliceBlue Profile\r\n\r\n```javascript\r\nconst result = await aliceblue.getProfile();\r\n\r\nconsole.log(result);\r\n```\r\n\r\n---\r\n\r\n## AliceBlue Limits\r\n\r\n```javascript\r\nconst result = await aliceblue.getLimits();\r\n\r\nconsole.log(result);\r\n```\r\n\r\n---\r\n\r\n## AliceBlue Cancel Order\r\n\r\n```javascript\r\nconst result = await aliceblue.cancelOrder(\r\n    'BROKER_ORDER_ID'\r\n);\r\n\r\nconsole.log(result);\r\n```\r\n\r\n---\r\n\r\n## AliceBlue Master Data\r\n\r\nDownload latest master data:\r\n\r\n```javascript\r\nconst result = await downloadMasterData(\r\n    'aliceblue'\r\n);\r\n\r\nconsole.log(result);\r\n```\r\n\r\n---\r\n\r\n## AliceBlue Contract Download\r\n\r\nDownload contracts and build Redis indexes:\r\n\r\n```javascript\r\nconst result = await downloadAndStoreContracts(\r\n    'aliceblue'\r\n);\r\n\r\nconsole.log(result);\r\n```\r\n\r\nExample Response:\r\n\r\n```javascript\r\n{\r\n    success: true,\r\n    broker: 'aliceblue',\r\n    total: 50000,\r\n    nseTotal: 20000,\r\n    nfoTotal: 30000,\r\n    storedCount: 50000,\r\n    optionIndexCount: 25000\r\n}\r\n```\r\n\r\n---\r\n\r\n## AliceBlue Token Search\r\n\r\n```javascript\r\nconst result = await getTokenBySymbol(\r\n    'aliceblue',\r\n    'nse',\r\n    'SBIN'\r\n);\r\n\r\nconsole.log(result);\r\n```\r\n\r\n---\r\n\r\n## AliceBlue Contract Search\r\n\r\n```javascript\r\nconst result = await getContractByToken(\r\n    'aliceblue',\r\n    'nse',\r\n    '123456'\r\n);\r\n\r\nconsole.log(result);\r\n```\r\n\r\n---\r\n\r\n## AliceBlue Option Contract Search\r\n\r\n```javascript\r\nconst result = await getOptionContract(\r\n    'aliceblue',\r\n    'NIFTY',\r\n    '31JUL2026',\r\n    25000,\r\n    'CE'\r\n);\r\n\r\nconsole.log(result);\r\n```\r\n\r\n---\r\n\r\n## AliceBlue Contract Storage\r\n\r\n```text\r\ncontracts/\r\n└── aliceblue/\r\n    └── masterdata/\r\n        ├── nse.json\r\n        └── nfo.json\r\n```\r\n\r\n---\r\n\r\n## AliceBlue Redis Contract Structure\r\n\r\n```text\r\ncontracts:aliceblue:masterdata:nse:symbol:SBIN\r\n\r\ncontracts:aliceblue:masterdata:nse:token:123456\r\n\r\ncontracts:aliceblue:masterdata:nfo:option:NIFTY:31JUL2026:25000:CE\r\n```\r\n\r\n---\r\n\r\n## AliceBlue Redis Auth Tokens\r\n\r\nTrade Lib automatically stores AliceBlue authentication tokens in Redis after successful login.\r\n\r\n```text\r\nauth:aliceblue:userSession\r\nauth:aliceblue:clientId\r\n```\r\n\r\nAccount specific keys:\r\n\r\n```text\r\nauth:aliceblue:2675340:userSession\r\nauth:aliceblue:2675340:clientId\r\n```\r\n\r\n---\r\n\r\n## AliceBlue Rate Limiting\r\n\r\nTrade Lib automatically applies broker-safe delays when fetching:\r\n\r\n```javascript\r\nawait getOrders('aliceblue');\r\n\r\nawait getPositions('aliceblue');\r\n```\r\n\r\nThis helps prevent broker API throttling and excessive request rates.\r\n\r\n---\r\n\r\n## License\r\n\r\nMIT License\r\n\r\n---\r\n\r\n## Author\r\n\r\nAnjana George\r\n","readmeFilename":"README.md"}