diff --git a/mos/EQMX.js b/mos/EQMX.js new file mode 100644 index 0000000..ffa63e1 --- /dev/null +++ b/mos/EQMX.js @@ -0,0 +1,190 @@ +const dates = +`2024-07-30 +2024-07-31 +2024-08-01 +2024-08-02 +2024-08-03 +2024-08-04 +2024-08-05 +2024-08-06 +2024-08-07 +2024-08-08 +2024-08-09 +2024-08-10 +2024-08-11 +2024-08-12 +2024-08-13 +2024-08-14 +2024-08-15 +2024-08-16 +2024-08-17 +2024-08-18 +2024-08-19 +2024-08-20 +2024-08-21 +2024-08-22 +2024-08-23 +2024-08-24 +2024-08-25 +2024-08-26 +2024-08-27 +2024-08-28 +2024-08-29 +2024-08-30 +2024-08-31 +2024-09-01 +2024-09-02 +2024-09-03 +2024-09-04 +2024-09-05 +2024-09-06 +2024-09-07 +2024-09-08 +2024-09-09 +2024-09-10 +2024-09-11 +2024-09-12 +2024-09-13 +2024-09-14 +2024-09-15 +2024-09-16 +2024-09-17 +2024-09-18 +2024-09-19 +2024-09-20 +2024-09-21 +2024-09-22 +2024-09-23 +2024-09-24 +2024-09-25 +2024-09-26 +2024-09-27 +2024-09-28 +2024-09-29 +2024-09-30 +2024-10-01 +2024-10-02 +2024-10-03 +2024-10-04 +2024-10-05 +2024-10-06 +2024-10-07 +2024-10-08 +2024-10-09 +2024-10-10 +2024-10-11 +2024-10-12 +2024-10-13 +2024-10-14 +2024-10-15 +2024-10-16 +2024-10-17 +2024-10-18 +2024-10-19 +2024-10-20 +2024-10-21 +2024-10-22 +2024-10-23 +2024-10-24 +2024-10-25 +2024-10-26 +2024-10-27 +2024-10-28 +2024-10-29 +2024-10-30 +2024-10-31 +2024-11-01 +2024-11-02 +2024-11-03 +2024-11-04 +2024-11-05 +2024-11-06 +2024-11-07 +2024-11-08 +2024-11-09 +2024-11-10 +2024-11-11 +2024-11-12 +2024-11-13 +2024-11-14 +2024-11-15 +2024-11-16 +2024-11-17 +2024-11-18 +2024-11-19 +2024-11-20 +2024-11-21 +2024-11-22 +2024-11-23 +2024-11-24 +2024-11-25 +2024-11-26 +2024-11-27 +2024-11-28 +2024-11-29 +2024-11-30 +2024-12-01 +2024-12-02 +2024-12-03 +2024-12-04 +2024-12-05 +2024-12-06 +2024-12-07 +2024-12-08 +2024-12-09 +2024-12-10 +2024-12-11 +2024-12-12 +2024-12-13 +2024-12-14 +2024-12-15 +2024-12-16 +2024-12-17 +2024-12-18 +2024-12-19 +2024-12-20 +2024-12-21 +2024-12-22 +2024-12-23 +2024-12-24 +2024-12-25 +2024-12-26 +2024-12-27 +2024-12-28 +2024-12-29 +2024-12-30 +2024-12-31 +2025-01-01 +2025-01-02 +2025-01-03 +2025-01-04 +2025-01-05 +2025-01-06 +2025-01-07 +2025-01-08 +2025-01-09 +2025-01-10 +2025-01-11 +2025-01-12` + +const data = {} + +async function main() { + const resp = await fetch("https://iss.moex.com/iss/history/engines/stock/markets/shares/boards/TQTF/securities/EQMX.json?from=2024-07-30&till=2025-01-12") + const prices = await resp.json() + let prev; + for(date of dates.split('\n')) { + const rec = prices.history.data.find(rec => rec[1] == date) + if(rec) { + data[date] = rec[11] + prev = rec[11] + } else { + data[date] = prev + } + } + for(d of Object.values(data)) { + console.log(d) + } +} + +main() \ No newline at end of file diff --git a/mos/RU000A105BY1.js b/mos/RU000A105BY1.js new file mode 100644 index 0000000..5b913f0 --- /dev/null +++ b/mos/RU000A105BY1.js @@ -0,0 +1,190 @@ +const dates = +`2024-07-30 +2024-07-31 +2024-08-01 +2024-08-02 +2024-08-03 +2024-08-04 +2024-08-05 +2024-08-06 +2024-08-07 +2024-08-08 +2024-08-09 +2024-08-10 +2024-08-11 +2024-08-12 +2024-08-13 +2024-08-14 +2024-08-15 +2024-08-16 +2024-08-17 +2024-08-18 +2024-08-19 +2024-08-20 +2024-08-21 +2024-08-22 +2024-08-23 +2024-08-24 +2024-08-25 +2024-08-26 +2024-08-27 +2024-08-28 +2024-08-29 +2024-08-30 +2024-08-31 +2024-09-01 +2024-09-02 +2024-09-03 +2024-09-04 +2024-09-05 +2024-09-06 +2024-09-07 +2024-09-08 +2024-09-09 +2024-09-10 +2024-09-11 +2024-09-12 +2024-09-13 +2024-09-14 +2024-09-15 +2024-09-16 +2024-09-17 +2024-09-18 +2024-09-19 +2024-09-20 +2024-09-21 +2024-09-22 +2024-09-23 +2024-09-24 +2024-09-25 +2024-09-26 +2024-09-27 +2024-09-28 +2024-09-29 +2024-09-30 +2024-10-01 +2024-10-02 +2024-10-03 +2024-10-04 +2024-10-05 +2024-10-06 +2024-10-07 +2024-10-08 +2024-10-09 +2024-10-10 +2024-10-11 +2024-10-12 +2024-10-13 +2024-10-14 +2024-10-15 +2024-10-16 +2024-10-17 +2024-10-18 +2024-10-19 +2024-10-20 +2024-10-21 +2024-10-22 +2024-10-23 +2024-10-24 +2024-10-25 +2024-10-26 +2024-10-27 +2024-10-28 +2024-10-29 +2024-10-30 +2024-10-31 +2024-11-01 +2024-11-02 +2024-11-03 +2024-11-04 +2024-11-05 +2024-11-06 +2024-11-07 +2024-11-08 +2024-11-09 +2024-11-10 +2024-11-11 +2024-11-12 +2024-11-13 +2024-11-14 +2024-11-15 +2024-11-16 +2024-11-17 +2024-11-18 +2024-11-19 +2024-11-20 +2024-11-21 +2024-11-22 +2024-11-23 +2024-11-24 +2024-11-25 +2024-11-26 +2024-11-27 +2024-11-28 +2024-11-29 +2024-11-30 +2024-12-01 +2024-12-02 +2024-12-03 +2024-12-04 +2024-12-05 +2024-12-06 +2024-12-07 +2024-12-08 +2024-12-09 +2024-12-10 +2024-12-11 +2024-12-12 +2024-12-13 +2024-12-14 +2024-12-15 +2024-12-16 +2024-12-17 +2024-12-18 +2024-12-19 +2024-12-20 +2024-12-21 +2024-12-22 +2024-12-23 +2024-12-24 +2024-12-25 +2024-12-26 +2024-12-27 +2024-12-28 +2024-12-29 +2024-12-30 +2024-12-31 +2025-01-01 +2025-01-02 +2025-01-03 +2025-01-04 +2025-01-05 +2025-01-06 +2025-01-07 +2025-01-08 +2025-01-09 +2025-01-10 +2025-01-11 +2025-01-12` + +const data = {} + +async function main() { + const resp = await fetch("https://iss.moex.com/iss/history/engines/stock/markets/bonds/boards/TQCB/securities/RU000A105BY1.json?from=2024-07-30&till=2025-01-12") + const prices = await resp.json() + let prev; + for(date of dates.split('\n')) { + const rec = prices.history.data.find(rec => rec[1] == date) + if(rec) { + data[date] = rec[8] + prev = rec[8] + } else { + data[date] = prev + } + } + for(d of Object.values(data)) { + console.log(d) + } +} + +main() \ No newline at end of file diff --git a/mos/RU000A105QX1.js b/mos/RU000A105QX1.js new file mode 100644 index 0000000..6053c2a --- /dev/null +++ b/mos/RU000A105QX1.js @@ -0,0 +1,190 @@ +const dates = +`2024-07-30 +2024-07-31 +2024-08-01 +2024-08-02 +2024-08-03 +2024-08-04 +2024-08-05 +2024-08-06 +2024-08-07 +2024-08-08 +2024-08-09 +2024-08-10 +2024-08-11 +2024-08-12 +2024-08-13 +2024-08-14 +2024-08-15 +2024-08-16 +2024-08-17 +2024-08-18 +2024-08-19 +2024-08-20 +2024-08-21 +2024-08-22 +2024-08-23 +2024-08-24 +2024-08-25 +2024-08-26 +2024-08-27 +2024-08-28 +2024-08-29 +2024-08-30 +2024-08-31 +2024-09-01 +2024-09-02 +2024-09-03 +2024-09-04 +2024-09-05 +2024-09-06 +2024-09-07 +2024-09-08 +2024-09-09 +2024-09-10 +2024-09-11 +2024-09-12 +2024-09-13 +2024-09-14 +2024-09-15 +2024-09-16 +2024-09-17 +2024-09-18 +2024-09-19 +2024-09-20 +2024-09-21 +2024-09-22 +2024-09-23 +2024-09-24 +2024-09-25 +2024-09-26 +2024-09-27 +2024-09-28 +2024-09-29 +2024-09-30 +2024-10-01 +2024-10-02 +2024-10-03 +2024-10-04 +2024-10-05 +2024-10-06 +2024-10-07 +2024-10-08 +2024-10-09 +2024-10-10 +2024-10-11 +2024-10-12 +2024-10-13 +2024-10-14 +2024-10-15 +2024-10-16 +2024-10-17 +2024-10-18 +2024-10-19 +2024-10-20 +2024-10-21 +2024-10-22 +2024-10-23 +2024-10-24 +2024-10-25 +2024-10-26 +2024-10-27 +2024-10-28 +2024-10-29 +2024-10-30 +2024-10-31 +2024-11-01 +2024-11-02 +2024-11-03 +2024-11-04 +2024-11-05 +2024-11-06 +2024-11-07 +2024-11-08 +2024-11-09 +2024-11-10 +2024-11-11 +2024-11-12 +2024-11-13 +2024-11-14 +2024-11-15 +2024-11-16 +2024-11-17 +2024-11-18 +2024-11-19 +2024-11-20 +2024-11-21 +2024-11-22 +2024-11-23 +2024-11-24 +2024-11-25 +2024-11-26 +2024-11-27 +2024-11-28 +2024-11-29 +2024-11-30 +2024-12-01 +2024-12-02 +2024-12-03 +2024-12-04 +2024-12-05 +2024-12-06 +2024-12-07 +2024-12-08 +2024-12-09 +2024-12-10 +2024-12-11 +2024-12-12 +2024-12-13 +2024-12-14 +2024-12-15 +2024-12-16 +2024-12-17 +2024-12-18 +2024-12-19 +2024-12-20 +2024-12-21 +2024-12-22 +2024-12-23 +2024-12-24 +2024-12-25 +2024-12-26 +2024-12-27 +2024-12-28 +2024-12-29 +2024-12-30 +2024-12-31 +2025-01-01 +2025-01-02 +2025-01-03 +2025-01-04 +2025-01-05 +2025-01-06 +2025-01-07 +2025-01-08 +2025-01-09 +2025-01-10 +2025-01-11 +2025-01-12` + +const data = {} + +async function main() { + const resp = await fetch("https://iss.moex.com/iss/history/engines/stock/markets/bonds/boards/TQCB/securities/RU000A105QX1.json?from=2024-07-30&till=2025-01-12") + const prices = await resp.json() + let prev; + for(date of dates.split('\n')) { + const rec = prices.history.data.find(rec => rec[1] == date) + if(rec) { + data[date] = rec[8] + prev = rec[8] + } else { + data[date] = prev + } + } + for(d of Object.values(data)) { + console.log(d) + } +} + +main() \ No newline at end of file diff --git a/mos/SBCB.js b/mos/SBCB.js new file mode 100644 index 0000000..a09a765 --- /dev/null +++ b/mos/SBCB.js @@ -0,0 +1,190 @@ +const dates = +`2024-07-30 +2024-07-31 +2024-08-01 +2024-08-02 +2024-08-03 +2024-08-04 +2024-08-05 +2024-08-06 +2024-08-07 +2024-08-08 +2024-08-09 +2024-08-10 +2024-08-11 +2024-08-12 +2024-08-13 +2024-08-14 +2024-08-15 +2024-08-16 +2024-08-17 +2024-08-18 +2024-08-19 +2024-08-20 +2024-08-21 +2024-08-22 +2024-08-23 +2024-08-24 +2024-08-25 +2024-08-26 +2024-08-27 +2024-08-28 +2024-08-29 +2024-08-30 +2024-08-31 +2024-09-01 +2024-09-02 +2024-09-03 +2024-09-04 +2024-09-05 +2024-09-06 +2024-09-07 +2024-09-08 +2024-09-09 +2024-09-10 +2024-09-11 +2024-09-12 +2024-09-13 +2024-09-14 +2024-09-15 +2024-09-16 +2024-09-17 +2024-09-18 +2024-09-19 +2024-09-20 +2024-09-21 +2024-09-22 +2024-09-23 +2024-09-24 +2024-09-25 +2024-09-26 +2024-09-27 +2024-09-28 +2024-09-29 +2024-09-30 +2024-10-01 +2024-10-02 +2024-10-03 +2024-10-04 +2024-10-05 +2024-10-06 +2024-10-07 +2024-10-08 +2024-10-09 +2024-10-10 +2024-10-11 +2024-10-12 +2024-10-13 +2024-10-14 +2024-10-15 +2024-10-16 +2024-10-17 +2024-10-18 +2024-10-19 +2024-10-20 +2024-10-21 +2024-10-22 +2024-10-23 +2024-10-24 +2024-10-25 +2024-10-26 +2024-10-27 +2024-10-28 +2024-10-29 +2024-10-30 +2024-10-31 +2024-11-01 +2024-11-02 +2024-11-03 +2024-11-04 +2024-11-05 +2024-11-06 +2024-11-07 +2024-11-08 +2024-11-09 +2024-11-10 +2024-11-11 +2024-11-12 +2024-11-13 +2024-11-14 +2024-11-15 +2024-11-16 +2024-11-17 +2024-11-18 +2024-11-19 +2024-11-20 +2024-11-21 +2024-11-22 +2024-11-23 +2024-11-24 +2024-11-25 +2024-11-26 +2024-11-27 +2024-11-28 +2024-11-29 +2024-11-30 +2024-12-01 +2024-12-02 +2024-12-03 +2024-12-04 +2024-12-05 +2024-12-06 +2024-12-07 +2024-12-08 +2024-12-09 +2024-12-10 +2024-12-11 +2024-12-12 +2024-12-13 +2024-12-14 +2024-12-15 +2024-12-16 +2024-12-17 +2024-12-18 +2024-12-19 +2024-12-20 +2024-12-21 +2024-12-22 +2024-12-23 +2024-12-24 +2024-12-25 +2024-12-26 +2024-12-27 +2024-12-28 +2024-12-29 +2024-12-30 +2024-12-31 +2025-01-01 +2025-01-02 +2025-01-03 +2025-01-04 +2025-01-05 +2025-01-06 +2025-01-07 +2025-01-08 +2025-01-09 +2025-01-10 +2025-01-11 +2025-01-12` + +const data = {} + +async function main() { + const resp = await fetch("https://iss.moex.com/iss/history/engines/stock/markets/shares/boards/TQTF/securities/SBCB.json?from=2024-07-30&till=2025-01-12") + const prices = await resp.json() + let prev; + for(date of dates.split('\n')) { + const rec = prices.history.data.find(rec => rec[1] == date) + if(rec) { + data[date] = rec[11] + prev = rec[11] + } else { + data[date] = prev + } + } + for(d of Object.values(data)) { + console.log(d) + } +} + +main() \ No newline at end of file diff --git a/mos/package-lock.json b/mos/package-lock.json new file mode 100644 index 0000000..26f95ef --- /dev/null +++ b/mos/package-lock.json @@ -0,0 +1,106 @@ +{ + "name": "mos", + "version": "1.0.0", + "lockfileVersion": 3, + "requires": true, + "packages": { + "": { + "name": "mos", + "version": "1.0.0", + "license": "ISC", + "dependencies": { + "node-fetch": "^3.3.2" + } + }, + "node_modules/data-uri-to-buffer": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/data-uri-to-buffer/-/data-uri-to-buffer-4.0.1.tgz", + "integrity": "sha512-0R9ikRb668HB7QDxT1vkpuUBtqc53YyAwMwGeUFKRojY/NWKvdZ+9UYtRfGmhqNbRkTSVpMbmyhXipFFv2cb/A==", + "license": "MIT", + "engines": { + "node": ">= 12" + } + }, + "node_modules/fetch-blob": { + "version": "3.2.0", + "resolved": "https://registry.npmjs.org/fetch-blob/-/fetch-blob-3.2.0.tgz", + "integrity": "sha512-7yAQpD2UMJzLi1Dqv7qFYnPbaPx7ZfFK6PiIxQ4PfkGPyNyl2Ugx+a/umUonmKqjhM4DnfbMvdX6otXq83soQQ==", + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/jimmywarting" + }, + { + "type": "paypal", + "url": "https://paypal.me/jimmywarting" + } + ], + "license": "MIT", + "dependencies": { + "node-domexception": "^1.0.0", + "web-streams-polyfill": "^3.0.3" + }, + "engines": { + "node": "^12.20 || >= 14.13" + } + }, + "node_modules/formdata-polyfill": { + "version": "4.0.10", + "resolved": "https://registry.npmjs.org/formdata-polyfill/-/formdata-polyfill-4.0.10.tgz", + "integrity": "sha512-buewHzMvYL29jdeQTVILecSaZKnt/RJWjoZCF5OW60Z67/GmSLBkOFM7qh1PI3zFNtJbaZL5eQu1vLfazOwj4g==", + "license": "MIT", + "dependencies": { + "fetch-blob": "^3.1.2" + }, + "engines": { + "node": ">=12.20.0" + } + }, + "node_modules/node-domexception": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/node-domexception/-/node-domexception-1.0.0.tgz", + "integrity": "sha512-/jKZoMpw0F8GRwl4/eLROPA3cfcXtLApP0QzLmUT/HuPCZWyB7IY9ZrMeKw2O/nFIqPQB3PVM9aYm0F312AXDQ==", + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/jimmywarting" + }, + { + "type": "github", + "url": "https://paypal.me/jimmywarting" + } + ], + "license": "MIT", + "engines": { + "node": ">=10.5.0" + } + }, + "node_modules/node-fetch": { + "version": "3.3.2", + "resolved": "https://registry.npmjs.org/node-fetch/-/node-fetch-3.3.2.tgz", + "integrity": "sha512-dRB78srN/l6gqWulah9SrxeYnxeddIG30+GOqK/9OlLVyLg3HPnr6SqOWTWOXKRwC2eGYCkZ59NNuSgvSrpgOA==", + "license": "MIT", + "dependencies": { + "data-uri-to-buffer": "^4.0.0", + "fetch-blob": "^3.1.4", + "formdata-polyfill": "^4.0.10" + }, + "engines": { + "node": "^12.20.0 || ^14.13.1 || >=16.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/node-fetch" + } + }, + "node_modules/web-streams-polyfill": { + "version": "3.3.3", + "resolved": "https://registry.npmjs.org/web-streams-polyfill/-/web-streams-polyfill-3.3.3.tgz", + "integrity": "sha512-d2JWLCivmZYTSIoge9MsgFCZrt571BikcWGYkjC1khllbTeDlGqZ2D8vD8E/lJa8WGWbb7Plm8/XJYV7IJHZZw==", + "license": "MIT", + "engines": { + "node": ">= 8" + } + } + } +} diff --git a/mos/package.json b/mos/package.json new file mode 100644 index 0000000..801cd92 --- /dev/null +++ b/mos/package.json @@ -0,0 +1,15 @@ +{ + "name": "mos", + "version": "1.0.0", + "main": "SBCB.js", + "scripts": { + "test": "echo \"Error: no test specified\" && exit 1" + }, + "keywords": [], + "author": "", + "license": "ISC", + "description": "", + "dependencies": { + "node-fetch": "^3.3.2" + } +}