{"id":478087,"date":"2026-04-30T10:16:07","date_gmt":"2026-04-30T10:16:07","guid":{"rendered":"https:\/\/savepearlharbor.com\/?p=478087"},"modified":"-0001-11-30T00:00:00","modified_gmt":"-0001-11-29T21:00:00","slug":"","status":"publish","type":"post","link":"https:\/\/savepearlharbor.com\/?p=478087","title":{"rendered":"\u041a\u0430\u043a \u044f \u0442\u043e\u0440\u0433\u043e\u0432\u043b\u044e \u0430\u0432\u0442\u043e\u043c\u0430\u0442\u0438\u0437\u0438\u0440\u043e\u0432\u0430\u043b"},"content":{"rendered":"<div xmlns=\"http:\/\/www.w3.org\/1999\/xhtml\">\n<figure class=\"full-width \"><img decoding=\"async\" src=\"https:\/\/habrastorage.org\/r\/w1560\/getpro\/habr\/upload_files\/8df\/324\/891\/8df324891bcb300ce6453a1f50052db0.jpg\" width=\"1368\" height=\"678\" sizes=\"auto, (max-width: 780px) 100vw, 50vw\" srcset=\"https:\/\/habrastorage.org\/r\/w780\/getpro\/habr\/upload_files\/8df\/324\/891\/8df324891bcb300ce6453a1f50052db0.jpg 780w,&#10;       https:\/\/habrastorage.org\/r\/w1560\/getpro\/habr\/upload_files\/8df\/324\/891\/8df324891bcb300ce6453a1f50052db0.jpg 781w\" loading=\"lazy\" decode=\"async\"\/><\/figure>\n<p>\u0420\u0435\u0447\u044c \u043f\u043e\u0439\u0434\u0451\u0442 \u043e \u0440\u0430\u0437\u0440\u0430\u0431\u043e\u0442\u043a\u0435 \u0441\u0438\u0441\u0442\u0435\u043c\u044b \u0430\u043b\u0433\u043e\u0440\u0438\u0442\u043c\u0438\u0447\u0435\u0441\u043a\u043e\u0439 \u0442\u043e\u0440\u0433\u043e\u0432\u043b\u0438 \u0441 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u043d\u0438\u0435\u043c \u043e\u0431\u0443\u0447\u0435\u043d\u0438\u044f \u0441 \u043f\u043e\u0434\u043a\u0440\u0435\u043f\u043b\u0435\u043d\u0438\u0435\u043c (<a href=\"https:\/\/en.wikipedia.org\/wiki\/Reinforcement_learning\" rel=\"noopener noreferrer nofollow\">reinforcement learning<\/a>, \u0434\u0430\u043b\u0435\u0435 RL). \u041f\u0440\u043e\u0439\u0434\u0451\u043c \u043f\u0443\u0442\u044c \u043e\u0442 \u0438\u0434\u0435\u0438 \u0434\u043e \u0440\u0430\u0431\u043e\u0442\u0430\u044e\u0449\u0435\u0439 \u0441\u0438\u0441\u0442\u0435\u043c\u044b \u0441 \u0440\u0430\u0437\u0443\u043c\u043d\u043e\u0439 \u0434\u0435\u0442\u0430\u043b\u0438\u0437\u0430\u0446\u0438\u0435\u0439. \u0420\u0430\u0441\u0441\u043a\u0430\u0436\u0443 \u043f\u0440\u043e \u0441\u0432\u043e\u0438 \u043e\u0448\u0438\u0431\u043a\u0438: \u0440\u0430\u0434\u043e\u0432\u0430\u043b\u0441\u044f single-seed \u0443\u0441\u043f\u0435\u0445\u0430\u043c, \u0432\u0435\u0440\u0438\u043b <strong>Claude Code<\/strong> \u043d\u0430 \u0441\u043b\u043e\u0432\u043e, \u0441\u0447\u0438\u0442\u0430\u043b \u043b\u0443\u0447\u0448\u0443\u044e \u043c\u043e\u0434\u0435\u043b\u044c \u0433\u043e\u0434\u043d\u043e\u0439 \u0434\u043b\u044f production, \u0432 \u0442\u043e \u0432\u0440\u0435\u043c\u044f \u043a\u0430\u043a \u043d\u0430 \u0441\u0430\u043c\u043e\u043c \u0434\u0435\u043b\u0435 \u044d\u0442\u043e \u0431\u044b\u043b \u0432\u0435\u0440\u0445\u043d\u0438\u0439 \u043a\u0432\u0430\u0440\u0442\u0438\u043b\u044c \u0441\u0438\u0434-\u0448\u0443\u043c\u0430. \u0412\u043d\u0443\u0442\u0440\u0438 Mixture-of-Experts \u043f\u043e \u0440\u044b\u043d\u043e\u0447\u043d\u044b\u043c \u0440\u0435\u0436\u0438\u043c\u0430\u043c, shadow-routing \u043d\u0430 rolling Sharpe, hybrid expert-swap, \u043c\u0435\u0442\u043e\u0434\u043e\u043b\u043e\u0433\u0438\u044f \u0432\u0430\u043b\u0438\u0434\u0430\u0446\u0438\u0438, \u0430 \u0442\u0430\u043a\u0436\u0435 \u043d\u0435\u0431\u043e\u043b\u044c\u0448\u043e\u0439 \u0441\u043f\u0438\u0441\u043e\u043a \u0432\u0441\u0435\u0433\u043e \u0442\u043e\u0433\u043e, \u0447\u0442\u043e \u043d\u0435 \u0441\u0440\u0430\u0431\u043e\u0442\u0430\u043b\u043e. \u041f\u043e\u0434\u043e\u0439\u0434\u0451\u0442 \u0432 \u043a\u0430\u0447\u0435\u0441\u0442\u0432\u0435 \u0438\u043d\u0441\u0442\u0440\u0443\u043a\u0446\u0438\u044f \u0434\u043b\u044f ai-\u0430\u0433\u0435\u043d\u0442\u0430, \u0447\u0442\u043e\u0431\u044b \u043f\u043e\u0432\u0442\u043e\u0440\u0438\u0442\u044c \u043e\u043f\u044b\u0442 \u0438 \u043f\u043e\u043d\u044f\u0442\u044c \u043f\u043e\u0447\u0435\u043c\u0443 \u043e\u043d\u043e \u0440\u0430\u0431\u043e\u0442\u0430\u0435\u0442.<\/p>\n<p>\u042d\u0442\u043e \u0438\u0441\u0441\u043b\u0435\u0434\u043e\u0432\u0430\u0442\u0435\u043b\u044c\u0441\u043a\u0438\u0439 \u043f\u0440\u043e\u0435\u043a\u0442, \u0446\u0435\u043b\u044c\u044e \u043a\u043e\u0442\u043e\u0440\u043e\u0433\u043e \u0431\u044b\u043b\u0430 \u043f\u0440\u043e\u0432\u0435\u0440\u043a\u0430 \u0433\u0438\u043f\u043e\u0442\u0435\u0437\u044b, \u0447\u0442\u043e \u043d\u0430 \u043e\u0441\u043d\u043e\u0432\u0435 RL \u043c\u043e\u0436\u043d\u043e \u043f\u043e\u0441\u0442\u0440\u043e\u0438\u0442\u044c \u0447\u0442\u043e-\u0442\u043e \u0440\u0430\u0431\u043e\u0442\u0430\u044e\u0449\u0435\u0435 \u0441 \u0432\u043e\u0437\u043c\u043e\u0436\u043d\u043e\u0441\u0442\u044c\u044e \u0434\u0430\u043b\u044c\u043d\u0435\u0439\u0448\u0435\u0433\u043e \u0441\u043e\u0432\u0435\u0440\u0448\u0435\u043d\u0441\u0442\u0432\u043e\u0432\u0430\u043d\u0438\u044f, \u0442.\u043a. \u0432 \u043e\u0442\u043a\u0440\u044b\u0442\u043e\u043c \u0434\u043e\u0441\u0442\u0443\u043f\u0435 \u043d\u0438\u0447\u0435\u0433\u043e \u0440\u0430\u0431\u043e\u0442\u0430\u044e\u0449\u0435\u0433\u043e \u043d\u0430\u0439\u0442\u0438 \u043d\u0435 \u0443\u0434\u0430\u043b\u043e\u0441\u044c. \u041d\u0435 \u044f\u0432\u043b\u044f\u044e\u0441\u044c \u043f\u0440\u043e\u0444\u0435\u0441\u0441\u0438\u043e\u043d\u0430\u043b\u043e\u043c \u043a\u0432\u0430\u043d\u0442-\u0442\u0440\u0435\u0439\u0434\u0435\u0440\u043e\u043c, \u043f\u043e\u044d\u0442\u043e\u043c\u0443 \u0434\u043b\u044f \u044d\u043a\u0441\u043f\u0435\u0440\u0442\u043e\u0432 \u0440\u0430\u0441\u0441\u0443\u0436\u0434\u0435\u043d\u0438\u044f \u043c\u043e\u0433\u0443\u0442 \u043a\u0430\u0437\u0430\u0442\u044c\u0441\u044f \u0434\u0438\u043b\u0435\u0442\u0430\u043d\u0442\u0441\u043a\u0438\u043c\u0438. \u0411\u0443\u0434\u0443 \u0440\u0430\u0434 \u0440\u0430\u0437\u0443\u043c\u043d\u043e\u0439 \u043a\u0440\u0438\u0442\u0438\u043a\u0435 \u0438 \u0440\u0435\u043a\u043e\u043c\u0435\u043d\u0434\u0430\u0446\u0438\u044f\u043c. \u041a\u0430\u043a\u0438\u0435-\u0442\u043e \u0434\u0435\u0442\u0430\u043b\u0438 \u043e\u043a\u0430\u0437\u0430\u043b\u0438\u0441\u044c \u0437\u0430 \u043f\u0440\u0435\u0434\u0435\u043b\u0430\u043c\u0438 \u0441\u043e\u0434\u0435\u0440\u0436\u0430\u043d\u0438\u044f \u0434\u043b\u044f \u044d\u043a\u043e\u043d\u043e\u043c\u0438\u0438, \u0442.\u043a. \u043f\u043e\u043b\u0443\u0447\u0438\u043b\u0438 \u0441\u0442\u0430\u0442\u0443\u0441 &#171;\u043e\u0447\u0435\u0432\u0438\u0434\u043d\u043e&#187;. \u042d\u0442\u043e \u043d\u0435 \u0441\u0442\u0430\u0442\u044c\u044f \u043f\u0440\u043e \u0442\u043e \u043a\u0430\u043a \u043e\u0431\u044b\u0433\u0440\u0430\u0442\u044c \u0440\u044b\u043d\u043e\u043a \u0438 \u0437\u0430\u0440\u0430\u0431\u043e\u0442\u0430\u0442\u044c, \u0430 \u043f\u043e\u043f\u044b\u0442\u043a\u0430 \u0440\u0435\u0430\u043b\u0438\u0437\u043e\u0432\u0430\u0442\u044c \u0438 \u043e\u0431\u044a\u044f\u0441\u043d\u0438\u0442\u044c \u043f\u043e\u0447\u0435\u043c\u0443 \u0441\u0440\u0430\u0431\u043e\u0442\u0430\u043b\u043e.<\/p>\n<details class=\"spoiler\">\n<summary>\u041f\u0430\u0440\u0430 \u0441\u043b\u043e\u0432 \u0431\u043b\u0430\u0433\u043e\u0434\u0430\u0440\u043d\u043e\u0441\u0442\u0438<\/summary>\n<div class=\"spoiler__content\">\n<p>\u0412 \u0440\u0430\u0437\u0440\u0430\u0431\u043e\u0442\u043a\u0435 \u0441\u0438\u0441\u0442\u0435\u043c\u044b \u0438 \u043f\u043e\u0434\u0433\u043e\u0442\u043e\u0432\u043a\u0435 \u043c\u0430\u0442\u0435\u0440\u0438\u0430\u043b\u043e\u0432 \u043c\u043d\u0435 \u043f\u043e\u043c\u043e\u0433\u0430\u043b <a href=\"https:\/\/claude.com\/product\/claude-code\" rel=\"noopener noreferrer nofollow\"><strong>Claude Code<\/strong><\/a>, \u043f\u043e\u044d\u0442\u043e\u043c\u0443 \u043d\u0435\u043c\u043d\u043e\u0433\u043e \u0443\u0434\u0435\u043b\u044e \u0432\u043d\u0438\u043c\u0430\u043d\u0438\u0435 \u044d\u0442\u043e\u0439 \u0441\u043e\u0432\u043c\u0435\u0441\u0442\u043d\u043e\u0439 \u0440\u0430\u0431\u043e\u0442\u0435. \u0421\u043f\u0438\u0441\u043e\u043a \u0437\u0430\u0441\u043b\u0443\u0433 \u0441 \u0447\u0435\u043c <strong>Claude<\/strong> \u0441\u043f\u0440\u0430\u0432\u043b\u044f\u043b\u0441\u044f \u043d\u0430 \u043f\u0443\u0442\u0438 \u043a \u0440\u0435\u0437\u0443\u043b\u044c\u0442\u0430\u0442\u0443:<\/p>\n<ol>\n<li>\n<p><strong>\u042d\u043a\u0441\u043f\u0435\u0440\u0438\u043c\u0435\u043d\u0442\u044b<\/strong>. \u0415\u0441\u043b\u0438 \u0443 \u0432\u0430\u0441 \u043f\u043e\u043b\u043d\u043e \u0438\u0434\u0435\u0439, \u043d\u043e \u043d\u0435\u0442 \u0432\u0440\u0435\u043c\u0435\u043d\u0438 \u043d\u0430 \u0438\u0445 \u0440\u0435\u0430\u043b\u0438\u0437\u0430\u0446\u0438\u044e \u0438\u043b\u0438 \u0432\u044b \u0442\u0435\u0440\u044f\u0435\u0442\u0435 \u043c\u043e\u0442\u0438\u0432\u0430\u0446\u0438\u044e \u043d\u0430 \u043f\u043e\u043b\u043e\u0432\u0438\u043d\u0435 \u043f\u0443\u0442\u0438, \u0442\u043e \u043f\u0440\u043e\u0438\u0437\u0432\u043e\u0434\u0438\u0442\u0435\u043b\u044c\u043d\u044b\u0435 coding-\u0430\u0433\u0435\u043d\u0442\u044b \u043f\u0440\u0438\u0445\u043e\u0434\u044f\u0442 \u043a \u0432\u0430\u043c \u043d\u0430 \u043f\u043e\u043c\u043e\u0449\u044c. \u041f\u043e\u0441\u043b\u0435 \u0441\u043e\u0433\u043b\u0430\u0441\u043e\u0432\u0430\u043d\u0438\u044f \u0437\u0430\u0434\u0430\u0447\u0438 \u0441 \u0430\u0433\u0435\u043d\u0442\u043e\u043c \u0442\u043e\u0442 \u0437\u0430\u043f\u0443\u0441\u043a\u0430\u043b \u0434\u0435\u0441\u044f\u0442\u043a\u0438 \u043f\u0430\u0440\u0430\u043b\u043b\u0435\u043b\u044c\u043d\u044b\u0445 \u044d\u043a\u0441\u043f\u0435\u0440\u0438\u043c\u0435\u043d\u0442\u043e\u0432, \u0430\u0433\u0440\u0435\u0433\u0438\u0440\u043e\u0432\u0430\u043b \u0438\u043d\u0444\u043e\u0440\u043c\u0430\u0446\u0438\u044e, \u0430\u043a\u043a\u0443\u0440\u0430\u0442\u043d\u043e \u043e\u0444\u043e\u0440\u043c\u043b\u044f\u043b \u0440\u0435\u0437\u0443\u043b\u044c\u0442\u0430\u0442\u044b \u0432 \u0432\u0438\u0434\u0435 \u043e\u0442\u0447\u0451\u0442\u043e\u0432, \u0441\u043e\u043f\u0440\u043e\u0432\u043e\u0436\u0434\u0430\u043b \u0440\u0435\u0437\u0443\u043b\u044c\u0442\u0430\u0442\u044b \u0441\u0432\u043e\u0438\u043c\u0438 \u0432\u044b\u0432\u043e\u0434\u0430\u043c\u0438 \u0438 \u043f\u0440\u0435\u0434\u043b\u043e\u0436\u0435\u043d\u0438\u044f\u043c\u0438. \u0417\u0434\u0435\u0441\u044c \u0431\u0430\u0437\u043e\u0432\u044b\u0445 \u0432\u043e\u0437\u043c\u043e\u0436\u043d\u043e\u0441\u0442\u0435\u0439 <a href=\"https:\/\/code.claude.com\/docs\/en\/best-practices\" rel=\"noopener noreferrer nofollow\"><strong>\u0441laude code cli<\/strong>, <strong>skills<\/strong>, <strong>tools, mcp<\/strong><\/a> \u043a\u0430\u043a \u043f\u0440\u0430\u0432\u0438\u043b\u043e \u0445\u0432\u0430\u0442\u0430\u043b\u043e.<\/p>\n<\/li>\n<li>\n<p><strong>Research<\/strong>. \u0420\u0430\u0437\u0431\u0438\u0440\u0430\u0442\u044c\u0441\u044f \u043a \u043d\u044e\u0430\u043d\u0441\u0430\u0445 \u0432\u0430\u0436\u043d\u043e, \u043d\u043e \u043f\u0435\u0440\u0432\u044b\u0435 \u043d\u0435\u0441\u043a\u043e\u043b\u044c\u043a\u043e \u0438\u0442\u0435\u0440\u0430\u0446\u0438\u0439 \u043f\u043e\u0438\u0441\u043a\u0430 \u0438 \u043f\u0440\u043e\u0432\u0435\u0440\u043a\u0438 \u0438\u0434\u0435\u0439\/\u043f\u043e\u0434\u0445\u043e\u0434\u043e\u0432 \u043c\u043e\u0436\u0435\u0442 \u0432\u044b\u043f\u043e\u043b\u043d\u0438\u0442\u044c ai-\u0430\u0433\u0435\u043d\u0442. \u041f\u0440\u0438\u0448\u043b\u043e\u0441\u044c \u0443\u0441\u043e\u0432\u0435\u0440\u0448\u0435\u043d\u0441\u0442\u0432\u043e\u0432\u0430\u0442\u044c \u043f\u043e\u043c\u043e\u0449\u043d\u0438\u043a\u0430 \u0438 \u0434\u043e\u0431\u0430\u0432\u0438\u0442\u044c <strong>skill<\/strong> (<a href=\"https:\/\/github.com\/OthmanAdi\/planning-with-files\" rel=\"noopener noreferrer nofollow\">planning-with-files<\/a>) \u0438 <strong>mcp<\/strong> (<a href=\"https:\/\/github.com\/modelcontextprotocol\/servers\/tree\/main\/src\/sequentialthinking\" rel=\"noopener noreferrer nofollow\">mcp-sequential-thinking<\/a>, <a href=\"https:\/\/github.com\/spences10\/mcp-sequentialthinking-tools\" rel=\"noopener noreferrer nofollow\">sequential-thinking-tools<\/a>, <a href=\"https:\/\/github.com\/ihor-sokoliuk\/mcp-searxng\" rel=\"noopener noreferrer nofollow\">searxng<\/a>). \u0412 \u0440\u0435\u0437\u0443\u043b\u044c\u0442\u0430\u0442\u0435 \u043e\u0431\u0437\u043e\u0440 \u0441\u0442\u0430\u0442\u0435\u0439 \u0441 arxiv \u0434\u0435\u043b\u0430\u043b\u0441\u044f \u043f\u0440\u044f\u043c\u043e \u0432 \u043a\u043e\u043d\u0441\u043e\u043b\u0438 \u0438\u043b\u0438 \u0447\u0435\u0440\u0435\u0437 \u0430\u043a\u043a\u0440\u0443\u0440\u0430\u0442\u043d\u044b\u0439 markdown-\u0444\u0430\u0439\u043b \u0441\u043e \u0432\u0441\u0435\u043c\u0438 \u043d\u0435\u043e\u0431\u0445\u043e\u0434\u0438\u043c\u044b\u043c\u0438 \u0441\u0441\u044b\u043b\u043a\u0430\u043c\u0438.<\/p>\n<\/li>\n<li>\n<p><strong>Code. <\/strong>\u0422\u0443\u0442 \u0432\u0440\u043e\u0434\u0435 \u0431\u044b \u0432\u0441\u0451 \u043e\u0447\u0435\u0432\u0438\u0434\u043d\u043e. \u041e\u0434\u043d\u0430\u043a\u043e \u044f \u0431\u044b \u0445\u043e\u0442\u0435\u043b \u043e\u0431\u0440\u0430\u0442\u0438\u0442\u044c \u0432\u043d\u0438\u043c\u0430\u043d\u0438\u0435 \u043d\u0430 \u0442\u043e\u0442 \u0444\u0430\u043a\u0442, \u0447\u0442\u043e AI-\u0430\u0433\u0435\u043d\u0442 \u043c\u043e\u0436\u0435\u0442 \u043d\u0430\u043f\u0438\u0441\u0430\u0442\u044c \u0438\u043b\u0438 \u0441\u043a\u043e\u043d\u0444\u0438\u0433\u0443\u0440\u0438\u0440\u043e\u0432\u0430\u0442\u044c \u0438\u043d\u0441\u0442\u0440\u0443\u043c\u0435\u043d\u0442\u044b, \u043a\u043e\u0442\u043e\u0440\u044b\u0435 \u0443\u043f\u0440\u043e\u0449\u0430\u044e\u0442 \u0440\u0435\u0448\u0435\u043d\u0438\u0435 \u0437\u0430\u0434\u0430\u0447\u0438. \u0422\u0430\u043a \u043d\u0430 \u0441\u043c\u0435\u043d\u0443 tensorboard \u0441\u043d\u0430\u0447\u0430\u043b\u0430 \u043f\u0440\u0438\u0448\u043b\u0438 \u0438\u043d\u0442\u0435\u0440\u0430\u043a\u0442\u0438\u0432\u043d\u044b\u0435 \u0433\u0440\u0430\u0444\u0438\u043a\u0438, \u0430 \u0437\u0430\u0442\u0435\u043c \u0438 \u043f\u0440\u043e\u0434\u0432\u0438\u043d\u0443\u0442\u044b\u0435 \u0434\u0430\u0448\u0431\u043e\u0440\u0434\u044b, \u0433\u0434\u0435 \u044f \u043c\u043e\u0433 \u0440\u0430\u0441\u043f\u0443\u0442\u0430\u0442\u044c AI-\u0430\u0433\u0435\u043d\u0442\u0430, \u043a\u043e\u0433\u0434\u0430 \u0442\u043e\u0442 \u043f\u043e\u0442\u0435\u0440\u043f\u0435\u043b \u043e\u0447\u0435\u0440\u0435\u0434\u043d\u0443\u044e \u043d\u0435\u0443\u0434\u0430\u0447\u0443 \u043d\u0430 \u043f\u0443\u0442\u0438 \u0440\u0435\u0448\u0435\u043d\u0438\u044f \u043f\u043e\u0441\u0442\u0430\u0432\u043b\u0435\u043d\u043d\u043e\u0439 \u0441\u043b\u0438\u0448\u043a\u043e\u043c \u0430\u0431\u0441\u0442\u0440\u0430\u043a\u0442\u043d\u043e \u0437\u0430\u0434\u0430\u0447\u0438.<\/p>\n<\/li>\n<\/ol>\n<\/div>\n<\/details>\n<h3>\u0415\u0449\u0451 \u043e\u0434\u043d\u0430 \u0442\u043e\u0440\u0433\u043e\u0432\u0430\u044f \u0441\u0438\u0441\u0442\u0435\u043c\u0430<\/h3>\n<p>RL \u0434\u043b\u044f \u0442\u0440\u0435\u0439\u0434\u0438\u043d\u0433\u0430 \u043e\u0431\u044b\u0447\u043d\u043e \u0437\u0432\u0443\u0447\u0438\u0442 \u043a\u0430\u043a \u043e\u0431\u0435\u0449\u0430\u043d\u0438\u0435 \u0444\u0438\u043d\u0430\u043d\u0441\u043e\u0432\u043e\u0439 \u0441\u0438\u043d\u0433\u0443\u043b\u044f\u0440\u043d\u043e\u0441\u0442\u0438, \u043a\u043e\u0433\u0434\u0430 \u0430\u043b\u0433\u043e\u0440\u0438\u0442\u043c \u0441\u0430\u043c \u0442\u043e\u0440\u0433\u0443\u0435\u0442, \u0441\u0430\u043c \u0441\u0435\u0431\u044f \u0441\u043e\u0432\u0435\u0440\u0448\u0435\u043d\u0441\u0442\u0432\u0443\u0435\u0442, \u0430 \u0432\u044b \u0438\u0437\u044b\u043c\u0430\u0435\u0442\u0435 \u043f\u0440\u0438\u0431\u044b\u043b\u044c. \u041d\u0430 \u043f\u0440\u0430\u043a\u0442\u0438\u043a\u0435 \u044d\u0442\u043e \u043a\u0440\u0430\u0441\u0438\u0432\u044b\u0435 \u043a\u0430\u0440\u0442\u0438\u043d\u043a\u0438 \u0432\u043d\u0443\u0442\u0440\u0438 \u043e\u0431\u0443\u0447\u0430\u044e\u0449\u0435\u0439 \u0432\u044b\u0431\u043e\u0440\u043a\u0438 \u0438 \u043f\u0440\u043e\u0432\u0430\u043b \u0432 \u043f\u0435\u0440\u0438\u043e\u0434 \u043a\u0440\u0438\u0437\u0438\u0441\u0430 \u0438\u043b\u0438 \u0441\u0443\u0449\u0435\u0441\u0442\u0432\u0435\u043d\u043d\u043e\u0433\u043e \u0438\u0437\u043c\u0435\u043d\u0435\u043d\u0438\u044f \u043a\u043e\u043d\u0441\u0435\u043d\u0441\u0443\u0441\u0430\/\u0441\u0435\u043d\u0442\u0438\u043c\u0435\u043d\u0442\u0430. \u0412\u043e \u0432\u0441\u044f\u043a\u043e\u043c \u0441\u043b\u0443\u0447\u0430\u0435 \u043c\u043e\u0439 \u043e\u043f\u044b\u0442 \u0442\u0430\u043a\u043e\u0432:<\/p>\n<ul>\n<li>\n<p>\u043a\u043e\u0434 \u0438\u0437 \u0440\u0435\u043f\u043e\u0437\u0438\u0442\u043e\u0440\u0438\u0435\u0432 \u043d\u0435\u0440\u0430\u0431\u043e\u0447\u0438\u0439;<\/p>\n<\/li>\n<li>\n<p>\u0440\u0435\u0437\u0443\u043b\u044c\u0442\u0430\u0442 \u0438\u0437 \u0441\u0442\u0430\u0442\u0435\u0439 \u043d\u0435 \u0432\u043e\u0441\u043f\u0440\u043e\u0438\u0437\u0432\u043e\u0434\u044f\u0442\u0441\u044f;<\/p>\n<\/li>\n<li>\n<p>\u0432\u044b\u0431\u0438\u0440\u0430\u0435\u043c \u0434\u0440\u0443\u0433\u043e\u0439 <strong>seed<\/strong> \u0438 \u043f\u043e\u043b\u0443\u0447\u0430\u0435\u043c \u0434\u043e\u0445\u043e\u0434\u043d\u043e\u0441\u0442\u044c \u0441 \u043f\u0440\u043e\u0442\u0438\u0432\u043e\u043f\u043e\u043b\u043e\u0436\u043d\u044b\u043c \u0437\u043d\u0430\u043a\u043e\u043c;<\/p>\n<\/li>\n<li>\n<p>SOTA \u0441 \u043a\u043e\u043d\u0444\u0435\u0440\u0435\u043d\u0446\u0438\u0438 \u0445\u0443\u0436\u0435 \u0433\u0440\u0430\u0434\u0438\u0435\u043d\u0442\u043d\u043e\u0433\u043e \u0431\u0443\u0441\u0442\u0438\u043d\u0433\u0430;<\/p>\n<\/li>\n<li>\n<p>\u043d\u043e\u0443\u0442\u0431\u0443\u043a\u0438 \u0441 \u0437\u043e\u043b\u043e\u0442\u044b\u043c\u0438 \u043c\u0435\u0434\u0430\u043b\u044f\u043c\u0438 \u0441 kaggle \u0442\u0440\u0435\u0431\u0443\u044e\u0442 \u043c\u0430\u0441\u0441\u0443 \u0434\u0430\u043d\u043d\u044b\u0445, \u043a\u043e\u0442\u043e\u0440\u044b\u0435 \u0434\u0430\u0436\u0435 \u0441 \u043f\u043e\u0434\u043f\u0438\u0441\u043a\u043e\u0439 \u043d\u0435 \u0434\u043e\u0441\u0442\u0430\u0442\u044c.<\/p>\n<\/li>\n<\/ul>\n<p>\u041c\u043e\u0436\u0435\u0442 \u043c\u043d\u0435 \u043d\u0435 \u043f\u043e\u0432\u0435\u0437\u043b\u043e. \u041a\u0430\u0436\u0434\u0430\u044f \u043d\u043e\u0432\u0430\u044f \u043f\u043e\u043f\u044b\u0442\u043a\u0430 \u043e\u0442\u043a\u043b\u0430\u0434\u044b\u0432\u0430\u043b\u0430\u0441\u044c \u043d\u0430 \u0431\u0443\u0434\u0443\u0449\u0435\u0435. \u0411\u0443\u0434\u0443\u0449\u0435\u0435 \u043d\u0430\u0441\u0442\u0443\u043f\u0438\u043b\u043e \u0441 \u043f\u043e\u0434\u043f\u0438\u0441\u043a\u043e\u0439 5xMAX. \u0414\u0430\u043b\u0435\u0435 \u043d\u0430 \u043f\u0440\u0438\u043c\u0435\u0440\u0435 \u0433\u0438\u043f\u043e\u0442\u0435\u0437, \u0434\u043e\u043f\u0443\u0449\u0435\u043d\u0438\u0439 \u0438 \u044d\u043a\u0441\u043f\u0435\u0440\u0438\u043c\u0435\u043d\u0442\u043e\u0432 \u043f\u043e\u043b\u0443\u0447\u0438\u043b\u0430\u0441\u044c \u0430\u0440\u0445\u0438\u0442\u0435\u043a\u0442\u0443\u0440\u0430 \u0435\u0449\u0451 \u043e\u0434\u043d\u043e\u0439 \u0442\u043e\u0440\u0433\u043e\u0432\u043e\u0439 \u0441\u0438\u0441\u0442\u0435\u043c\u044b.<\/p>\n<details class=\"spoiler\">\n<summary>\u0411\u043e\u043b\u044c\u0448\u0435 \u0434\u0435\u0442\u0430\u043b\u0435\u0439 \u0432 \u043d\u0430\u0441\u0442\u043e\u044f\u0449\u0435\u043c \u0438 \u043c\u0435\u043d\u044c\u0448\u0435 \u0438\u0437 \u0438\u0441\u0442\u043e\u0440\u0438\u0438<\/summary>\n<div class=\"spoiler__content\">\n<p>\u0411\u043e\u043b\u044c\u0448\u0438\u043d\u0441\u0442\u0432\u043e \u044d\u043a\u0441\u043f\u0435\u0440\u0438\u043c\u0435\u043d\u0442\u043e\u0432 \u0434\u043e\u043a\u0443\u043c\u0435\u043d\u0442\u0438\u0440\u043e\u0432\u0430\u043d\u044b, \u043d\u043e \u0432\u0441\u0451 \u0436\u0435 \u043d\u0435 \u0432\u0441\u0435. \u0418\u0434\u0435\u043d\u0442\u0438\u0444\u0438\u043a\u0430\u0442\u043e\u0440 \u043f\u043e\u0441\u043b\u0435\u0434\u043d\u0435\u0433\u043e <strong>137<\/strong>. \u0414\u0435\u0442\u0430\u043b\u0438 \u0432\u0441\u0435\u0433\u043e \u0442\u043e\u0433\u043e, \u0447\u0442\u043e \u0431\u044b\u043b\u043e \u0434\u043e 80 \u044d\u043a\u0441\u043f\u0435\u0440\u0438\u043c\u0435\u043d\u0442\u0430 \u0431\u0435\u0437\u0432\u043e\u0437\u0432\u0440\u0430\u0442\u043d\u043e \u0443\u0442\u0435\u0440\u044f\u043d\u044b \u0438 \u043e\u0441\u0442\u0430\u043b\u0438\u0441\u044c \u0442\u043e\u043b\u044c\u043a\u043e \u043a\u043e\u0440\u043e\u0442\u043a\u0438\u0435 \u0437\u0430\u043f\u0438\u0441\u0438 \u0432 <code>findings.md<\/code>, \u0442.\u043a. \u043e\u0434\u043d\u0430\u0436\u0434\u044b \u044f \u043f\u043e\u043f\u0440\u043e\u0441\u0438\u043b <strong>Claude<\/strong> \u043f\u043e\u0447\u0438\u0441\u0442\u0438\u0442\u044c \u043c\u0443\u0441\u043e\u0440. \u041f\u043e\u0434\u043a\u0430\u0442\u0430\u043b\u043e\u0433 <code>docs\/experiments\/<\/code>\u043e\u043a\u0430\u0437\u0430\u043b\u0441\u044f \u0432 <code>.gitignore<\/code>. <strong>Claude <\/strong>\u043f\u043e\u0441\u0447\u0438\u0442\u0430\u043b \u043c\u0443\u0441\u043e\u0440\u043e\u043c \u0432\u0441\u0451 \u0442\u043e, \u0447\u0442\u043e \u043d\u0435 \u043e\u0442\u043d\u043e\u0441\u0438\u0442\u0441\u044f \u043a \u0442\u0435\u043a\u0443\u0449\u0435\u0439 \u0437\u0430\u0434\u0430\u0447\u0435 \u0438 \u043d\u0435 \u043e\u043f\u0438\u0441\u0430\u043d\u043e \u0432 CLAUDE.md.<\/p>\n<\/div>\n<\/details>\n<hr\/>\n<h2>\u0413\u043b\u0430\u0432\u0430 1. \u0411\u0430\u0437\u043e\u0432\u044b\u0435 \u0434\u043e\u043f\u0443\u0449\u0435\u043d\u0438\u044f \u0442\u043e\u0440\u0433\u043e\u0432\u043e\u0439 \u0441\u0438\u0441\u0442\u0435\u043c\u044b<\/h2>\n<p>\u041c\u043e\u0433\u0443\u0447\u0438\u0439 AI \u043c\u043e\u0433 \u0431\u044b \u0432\u0441\u0451 \u0441\u0434\u0435\u043b\u0430\u0442\u044c \u0441\u0430\u043c?! \u0412\u043e\u0437\u044c\u043c\u0438 <a href=\"https:\/\/arxiv.org\/pdf\/1509.02971\" rel=\"noopener noreferrer nofollow\">DDPG<\/a>, \u0441\u044b\u0440\u044b\u0435 <a href=\"https:\/\/en.wikipedia.org\/wiki\/Open-high-low-close_chart\" rel=\"noopener noreferrer nofollow\">OHLCV<\/a>, \u043d\u0435\u0441\u043a\u043e\u043b\u044c\u043a\u043e \u043c\u0438\u043b\u043b\u0438\u043e\u043d\u043e\u0432 timesteps \u0438 \u043f\u043e\u043b\u0443\u0447\u0438\u043c \u0440\u0430\u0431\u043e\u0442\u0430\u044e\u0449\u0443\u044e \u0441\u0438\u0441\u0442\u0435\u043c\u0443! \u041d\u0435 \u0441\u0440\u0430\u0431\u043e\u0442\u0430\u043b\u043e, \u043f\u043e\u044d\u0442\u043e\u043c\u0443 \u0434\u0430\u043b\u0435\u0435 \u044f \u0443\u043f\u0440\u043e\u0449\u0430\u043b \u0437\u0430\u0434\u0430\u0447\u0443 \u0434\u043b\u044f RL-\u0430\u0433\u0435\u043d\u0442\u0430, \u0447\u0442\u043e\u0431\u044b \u0442\u043e\u0442 \u0438\u0437 \u0448\u0443\u043c\u0430 \u0440\u044b\u043d\u043e\u0447\u043d\u044b\u0445 \u0434\u0430\u043d\u043d\u044b\u0445 \u0441\u043c\u043e\u0433 \u0432\u044b\u0434\u0435\u043b\u0438\u0442\u044c \u0441\u0438\u0433\u043d\u0430\u043b \u0438 \u043d\u0430 \u043d\u0451\u043c \u043d\u0430\u0443\u0447\u0438\u044c\u0441\u044f \u0442\u043e\u0440\u0433\u043e\u0432\u0430\u0442\u044c.<\/p>\n<p>\u041f\u0435\u0440\u0432\u043e\u0435 \u0434\u043e\u043f\u0443\u0449\u0435\u043d\u0438\u0435, \u0438\u0441\u0445\u043e\u0434\u044f \u0438\u0437 \u043a\u043e\u0442\u043e\u0440\u043e\u0433\u043e \u0431\u0443\u0434\u0435\u043c \u0434\u0435\u0439\u0441\u0442\u0432\u043e\u0432\u0430\u0442\u044c \u0434\u0430\u043b\u044c\u0448\u0435:<\/p>\n<blockquote>\n<p>\u041f\u043e \u0441\u0432\u043e\u0435\u0439 \u043f\u0440\u0438\u0440\u043e\u0434\u0435 \u043e\u0431\u0443\u0447\u0435\u043d\u0438\u0435 \u0441 \u043f\u043e\u0434\u043a\u0440\u0435\u043f\u043b\u0435\u043d\u0438\u0435\u043c \u043f\u043e\u0434\u0445\u043e\u0434\u0438\u0442 \u0434\u043b\u044f \u0437\u0430\u0434\u0430\u0447\u0438 \u0430\u0432\u0442\u043e\u043c\u0430\u0442\u0438\u0437\u0430\u0446\u0438\u0438 \u0442\u043e\u0440\u0433\u043e\u0432\u043b\u0438 \u0444\u0438\u043d\u0430\u043d\u0441\u043e\u0432\u044b\u043c\u0438 \u0430\u043a\u0442\u0438\u0432\u0430\u043c\u0438. \u0412\u043e\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u0435\u043c\u0441\u044f RL \u043d\u0435 \u0432 \u043a\u0430\u0447\u0435\u0441\u0442\u0432\u0435 &#171;\u043e\u043f\u0442\u0438\u043c\u0430\u043b\u044c\u043d\u043e\u0433\u043e \u0440\u0435\u0448\u0435\u043d\u0438\u044f&#187;, \u0430 \u043a\u0430\u043a \u043d\u0430\u0438\u043c\u0435\u043d\u0435\u0435 \u0444\u0430\u0442\u0430\u043b\u044c\u043d\u044b\u0439 \u0442\u0438\u043f \u043e\u0448\u0438\u0431\u043a\u0438. \u0418\u0437 \u043f\u0440\u043e\u0441\u0442\u0440\u0430\u043d\u0441\u0442\u0432\u0430 \u0434\u043e\u043f\u0443\u0449\u0435\u043d\u0438\u0439, \u043a\u043e\u0442\u043e\u0440\u044b\u0435 \u0432\u0441\u0435 \u043e\u0434\u0438\u043d\u0430\u043a\u043e\u0432\u043e \u043b\u043e\u0436\u043d\u044b \u043f\u0440\u0438 \u0442\u043e\u0440\u0433\u043e\u0432\u043b\u0435 \u043d\u0430 \u0440\u0435\u0430\u043b\u044c\u043d\u043e\u043c \u0440\u044b\u043d\u043a\u0435, MDP-\u0434\u043e\u043f\u0443\u0449\u0435\u043d\u0438\u0435 &#8212; \u043d\u0430\u0438\u0431\u043e\u043b\u0435\u0435 \u0443\u0441\u0442\u043e\u0439\u0447\u0438\u0432\u043e \u043a \u0447\u0430\u0441\u0442\u0438\u0447\u043d\u044b\u043c \u043d\u0430\u0440\u0443\u0448\u0435\u043d\u0438\u044f\u043c.<\/p>\n<\/blockquote>\n<details class=\"spoiler\">\n<summary>\u041f\u043e\u0434\u0440\u043e\u0431\u043d\u043e\u0435 \u043e\u0431\u044a\u044f\u0441\u043d\u0435\u043d\u0438\u0435<\/summary>\n<div class=\"spoiler__content\">\n<p><strong>Reinforcement Learning<\/strong> \u0444\u043e\u0440\u043c\u0443\u043b\u0438\u0440\u0443\u0435\u0442 \u0437\u0430\u0434\u0430\u0447\u0443 \u0442\u0430\u043a: \u0435\u0441\u0442\u044c <strong>\u0430\u0433\u0435\u043d\u0442<\/strong>, \u043a\u043e\u0442\u043e\u0440\u044b\u0439 \u0432\u0437\u0430\u0438\u043c\u043e\u0434\u0435\u0439\u0441\u0442\u0432\u0443\u0435\u0442 \u0441\u043e <strong>\u0441\u0440\u0435\u0434\u043e\u0439<\/strong> \u043f\u043e \u0448\u0430\u0433\u0430\u043c. \u041d\u0430 \u043a\u0430\u0436\u0434\u043e\u043c \u0448\u0430\u0433\u0435 \u0430\u0433\u0435\u043d\u0442 \u0432\u0438\u0434\u0438\u0442 <strong>\u0441\u043e\u0441\u0442\u043e\u044f\u043d\u0438\u0435<\/strong> <code><em>s_t<\/em><\/code>, \u0432\u044b\u0431\u0438\u0440\u0430\u0435\u0442 <strong>\u0434\u0435\u0439\u0441\u0442\u0432\u0438\u0435<\/strong> <code><em>a_t<\/em><\/code> \u0441\u043e\u0433\u043b\u0430\u0441\u043d\u043e \u0441\u0432\u043e\u0435\u0439 <strong>\u043f\u043e\u043b\u0438\u0442\u0438\u043a\u0435<\/strong> <code><em>\u03c0(a|s)<\/em><\/code>, \u0441\u0440\u0435\u0434\u0430 \u0432\u043e\u0437\u0432\u0440\u0430\u0449\u0430\u0435\u0442 <strong>\u043d\u0430\u0433\u0440\u0430\u0434\u0443<\/strong> <code><em>r_t<\/em><\/code> \u0438 \u043d\u043e\u0432\u043e\u0435 \u0441\u043e\u0441\u0442\u043e\u044f\u043d\u0438\u0435 <code><em>s_{t+1}<\/em><\/code>. \u0426\u0435\u043b\u044c \u043e\u0431\u0443\u0447\u0435\u043d\u0438\u044f &#8212; \u043c\u0430\u043a\u0441\u0438\u043c\u0438\u0437\u0438\u0440\u043e\u0432\u0430\u0442\u044c \u0441\u0443\u043c\u043c\u0430\u0440\u043d\u0443\u044e \u043e\u0436\u0438\u0434\u0430\u0435\u043c\u0443\u044e \u043d\u0430\u0433\u0440\u0430\u0434\u0443 \u043f\u043e \u0432\u0441\u0435\u043c \u0442\u0440\u0430\u0435\u043a\u0442\u043e\u0440\u0438\u044f\u043c:<\/p>\n<p><img decoding=\"async\" class=\"formula\" source=\"\u03c0* = argmax_\u03c0  E_\u03c0[ \u03a3 \u03b3^t * r_t ]\" alt=\"\u03c0* = argmax_\u03c0  E_\u03c0[ \u03a3 \u03b3^t * r_t ]\" src=\"https:\/\/habrastorage.org\/getpro\/habr\/formulas\/e\/e6\/e64\/e6465399c9be2ff5922d69ae5781bcc6.svg\" width=\"208\" height=\"16\" data-width=\"26.194\" data-height=\"2.501\" data-vertical-align=\"-0.566\" sizes=\"auto, (max-width: 780px) 100vw, 50vw\" srcset=\"https:\/\/habrastorage.org\/getpro\/habr\/formulas\/e\/e6\/e64\/e6465399c9be2ff5922d69ae5781bcc6.svg 780w,&#10;       https:\/\/habrastorage.org\/getpro\/habr\/formulas\/e\/e6\/e64\/e6465399c9be2ff5922d69ae5781bcc6.svg 781w\" loading=\"lazy\" decode=\"async\"\/><\/p>\n<p><code>\u03b3 \u2208 [0, 1]<\/code>&#8212; \u0444\u0430\u043a\u0442\u043e\u0440 \u0434\u0438\u0441\u043a\u043e\u043d\u0442\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u044f. \u041a\u043b\u044e\u0447\u0435\u0432\u043e\u0435 \u043e\u0442\u043b\u0438\u0447\u0438\u0435 \u043e\u0442 supervised-learning: <strong>\u043d\u0435\u0442 \u0440\u0430\u0437\u043c\u0435\u0447\u0435\u043d\u043d\u044b\u0445 \u043f\u0440\u0438\u043c\u0435\u0440\u043e\u0432 \u043f\u0440\u0430\u0432\u0438\u043b\u044c\u043d\u044b\u0445 \u0434\u0435\u0439\u0441\u0442\u0432\u0438\u0439<\/strong>. \u0415\u0441\u0442\u044c \u0442\u043e\u043b\u044c\u043a\u043e \u0441\u043a\u0430\u043b\u044f\u0440\u043d\u044b\u0439 \u0441\u0438\u0433\u043d\u0430\u043b \u043d\u0430\u0433\u0440\u0430\u0434\u044b, \u0438 \u0430\u0433\u0435\u043d\u0442 \u0441\u0430\u043c \u0434\u043e\u043b\u0436\u0435\u043d \u0432\u044b\u044f\u0441\u043d\u0438\u0442\u044c, \u043a\u0430\u043a\u0438\u0435 \u0434\u0435\u0439\u0441\u0442\u0432\u0438\u044f \u0435\u0433\u043e \u043c\u0430\u043a\u0441\u0438\u043c\u0438\u0437\u0438\u0440\u0443\u044e\u0442.<\/p>\n<p>\u0422\u043e\u0440\u0433\u043e\u0432\u043b\u044f &#8212; \u044d\u0442\u043e <a href=\"https:\/\/en.wikipedia.org\/wiki\/Markov_decision_process\" rel=\"noopener noreferrer nofollow\">Markov Decision Process<\/a> (\u0438\u043b\u0438 Partially Observable MDP), \u0430 \u043d\u0435 <a href=\"https:\/\/en.wikipedia.org\/wiki\/Supervised_learning\" rel=\"noopener noreferrer nofollow\">supervised prediction problem<\/a>. \u0420\u0430\u0437\u0432\u0435\u0440\u043d\u0451\u043c:<\/p>\n<ol>\n<li>\n<p>\u0421\u0443\u0449\u0435\u0441\u0442\u0432\u0443\u0435\u0442 <code><em>s_t<\/em><\/code>, \u043a\u043e\u0442\u043e\u0440\u044b\u0439 \u0441\u043e\u0434\u0435\u0440\u0436\u0438\u0442 \u0434\u043e\u0441\u0442\u0430\u0442\u043e\u0447\u043d\u043e \u0438\u043d\u0444\u043e\u0440\u043c\u0430\u0446\u0438\u0438, \u0447\u0442\u043e\u0431\u044b <strong>\u043e\u043f\u0442\u0438\u043c\u0430\u043b\u044c\u043d\u043e\u0435<\/strong> <strong>\u0434\u0435\u0439\u0441\u0442\u0432\u0438\u0435<\/strong>\u00a0<code><em>a*_t<\/em><\/code>\u00a0\u0431\u044b\u043b\u043e \u0444\u0443\u043d\u043a\u0446\u0438\u0435\u0439\u00a0<strong>\u0442\u043e\u043b\u044c\u043a\u043e<\/strong>\u00a0\u043e\u0442\u00a0<code><em>s_t<\/em><\/code>\u00a0(\u0430 \u043d\u0435 \u043e\u0442 \u0432\u0441\u0435\u0439 \u0438\u0441\u0442\u043e\u0440\u0438\u0438 \u0446\u0435\u043b\u0438\u043a\u043e\u043c). \u0422\u043e \u0435\u0441\u0442\u044c\u00a0<a href=\"https:\/\/en.wikipedia.org\/wiki\/Markov_property\" rel=\"noopener noreferrer nofollow\">\u043c\u0430\u0440\u043a\u043e\u0432\u0441\u043a\u043e\u0435 \u0441\u0432\u043e\u0439\u0441\u0442\u0432\u043e<\/a>\u00a0\u043f\u0440\u0438\u0431\u043b\u0438\u0437\u0438\u0442\u0435\u043b\u044c\u043d\u043e \u0432\u044b\u043f\u043e\u043b\u043d\u0435\u043d\u043e \u043d\u0430 \u0432\u044b\u0431\u0440\u0430\u043d\u043d\u043e\u043c <strong>\u043d\u0430\u0431\u043b\u044e\u0434\u0435\u043d\u0438\u0438<\/strong>.<\/p>\n<\/li>\n<li>\n<p>\u0426\u0435\u043b\u0435\u0432\u0430\u044f \u0444\u0443\u043d\u043a\u0446\u0438\u044f \u043f\u0440\u0438 \u044d\u0442\u043e\u043c \u0437\u0430\u0432\u0438\u0441\u0438\u0442 \u043e\u0442 \u0432\u0441\u0435\u0439 \u0446\u0435\u043f\u043e\u0447\u043a\u0438 \u0448\u0430\u0433\u043e\u0432: \u043e\u043f\u0442\u0438\u043c\u0438\u0437\u0438\u0440\u0443\u0435\u043c\u00a0<img decoding=\"async\" class=\"formula inline\" source=\"E[\u03a3 \u03b3^t \u00b7 r_t]\" alt=\"E[\u03a3 \u03b3^t \u00b7 r_t]\" src=\"https:\/\/habrastorage.org\/getpro\/habr\/formulas\/1\/19\/191\/191c294c4198d0da75fcbd70423b9517.svg\" width=\"80\" height=\"16\" data-width=\"10.34\" data-height=\"2.501\" data-vertical-align=\"-0.566\" sizes=\"auto, (max-width: 780px) 100vw, 50vw\" srcset=\"https:\/\/habrastorage.org\/getpro\/habr\/formulas\/1\/19\/191\/191c294c4198d0da75fcbd70423b9517.svg 780w,&#10;       https:\/\/habrastorage.org\/getpro\/habr\/formulas\/1\/19\/191\/191c294c4198d0da75fcbd70423b9517.svg 781w\" loading=\"lazy\" decode=\"async\"\/>, \u0430 \u043d\u0435 \u0435\u0434\u0438\u043d\u0441\u0442\u0432\u0435\u043d\u043d\u0443\u044e \u043d\u0430\u0433\u0440\u0430\u0434\u0443 \u043d\u0430 \u043c\u043e\u043c\u0435\u043d\u0442<code><em>r_t<\/em><\/code>. \u0414\u0435\u0439\u0441\u0442\u0432\u0438\u0435 \u0441\u0435\u0433\u043e\u0434\u043d\u044f \u043c\u0435\u043d\u044f\u0435\u0442\u00a0<code><em>s_{t+1}<\/em><\/code>, \u043a\u043e\u0442\u043e\u0440\u043e\u0435 \u043c\u0435\u043d\u044f\u0435\u0442 \u0434\u043e\u0441\u0442\u0443\u043f\u043d\u044b\u0435 \u0434\u0435\u0439\u0441\u0442\u0432\u0438\u044f \u0438 \u043d\u0430\u0433\u0440\u0430\u0434\u044b \u0437\u0430\u0432\u0442\u0440\u0430.<\/p>\n<\/li>\n<li>\n<p>\u041f\u043e\u043b\u0438\u0442\u0438\u043a\u0430\u00a0<code><em>\u03c0(a|s)<\/em><\/code>\u00a0\u043f\u0440\u0435\u0434\u0441\u0442\u0430\u0432\u0438\u043c\u0430\u00a0\u043f\u0430\u0440\u0430\u043c\u0435\u0442\u0440\u0438\u0437\u043e\u0432\u0430\u043d\u043d\u043e\u0439 \u043c\u043e\u0434\u0435\u043b\u044c\u044e \u0443\u043c\u0435\u0440\u0435\u043d\u043d\u043e\u0439 \u0451\u043c\u043a\u043e\u0441\u0442\u0438 (\u0432 \u043d\u0430\u0448\u0435\u043c \u0441\u043b\u0443\u0447\u0430\u0435 MLP 256\u00d7256), \u0438 \u0441\u0443\u0449\u0435\u0441\u0442\u0432\u0443\u044e\u0442 \u0434\u0430\u043d\u043d\u044b\u0435 \u0434\u043b\u044f \u043e\u0431\u0443\u0447\u0435\u043d\u0438\u044f \u044d\u0442\u043e\u0439 \u043c\u043e\u0434\u0435\u043b\u0438 \u0442\u0430\u043a, \u0447\u0442\u043e\u0431\u044b \u043e\u043d\u0430 \u043e\u0431\u043e\u0431\u0449\u0430\u043b\u0430\u0441\u044c \u043d\u0430 \u0431\u0443\u0434\u0443\u0449\u0438\u0439 \u043f\u0435\u0440\u0438\u043e\u0434.<\/p>\n<\/li>\n<\/ol>\n<\/div>\n<\/details>\n<h4>\u0427\u0442\u043e \u0438\u0437 \u044d\u0442\u043e\u0433\u043e \u0441\u043b\u0435\u0434\u0443\u0435\u0442 \u2014 \u0438 \u0447\u0442\u043e \u041d\u0415 \u0441\u043b\u0435\u0434\u0443\u0435\u0442<\/h4>\n<p>\u041c\u043e\u0436\u043d\u043e:<\/p>\n<ol>\n<li>\n<p>\u041f\u0440\u0438\u043c\u0435\u043d\u044f\u0442\u044c \u043c\u043d\u043e\u0436\u0435\u0441\u0442\u0432\u043e RL-\u0430\u043b\u0433\u043e\u0440\u0438\u0442\u043c\u043e\u0432.<\/p>\n<\/li>\n<li>\n<p>\u041d\u0430\u043f\u0440\u044f\u043c\u0443\u044e \u043e\u043f\u0442\u0438\u043c\u0438\u0437\u0438\u0440\u043e\u0432\u0430\u0442\u044c \u0437\u0430\u0432\u0438\u0441\u0438\u043c\u044b\u0435 \u043e\u0442 \u043f\u043e\u0441\u043b\u0435\u0434\u043e\u0432\u0430\u0442\u0435\u043b\u044c\u043d\u043e\u0441\u0442\u0438 \u0434\u0435\u0439\u0441\u0442\u0432\u0438\u0439 \u043c\u0435\u0442\u0440\u0438\u043a\u0438 (sharpe, drawdown penalty, turnover cost).<\/p>\n<\/li>\n<li>\n<p>\u0412\u044b\u0443\u0447\u0438\u0442\u044c <em>\u0440\u0435\u0430\u043a\u0442\u0438\u0432\u043d\u043e\u0435<\/em> \u043f\u043e\u0432\u0435\u0434\u0435\u043d\u0438\u0435 &#8212; \u0431\u044b\u0442\u044c \u043e\u0441\u0442\u043e\u0440\u043e\u0436\u043d\u0435\u0435 \u043f\u043e\u0441\u043b\u0435 \u043f\u0440\u043e\u0441\u0430\u0434\u043a\u0438, \u0430\u0433\u0440\u0435\u0441\u0441\u0438\u0432\u043d\u0435\u0435 \u043f\u043e\u0441\u043b\u0435 \u0432\u043e\u0441\u0441\u0442\u0430\u043d\u043e\u0432\u043b\u0435\u043d\u0438\u044f, \u0438 \u0432\u0441\u0451 \u044d\u0442\u043e \u0431\u0435\u0437 \u044f\u0432\u043d\u043e\u0433\u043e \u043f\u0440\u043e\u0433\u0440\u0430\u043c\u043c\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u044f \u0447\u0451\u0442\u043a\u0438\u0445 \u043f\u0440\u0430\u0432\u0438\u043b.<\/p>\n<\/li>\n<\/ol>\n<p><strong>\u041d\u0415 \u0441\u043b\u0435\u0434\u0443\u0435\u0442<\/strong>:<\/p>\n<ol>\n<li>\n<p>\u0412 \u0440\u044b\u043d\u043a\u0435 \u0435\u0441\u0442\u044c <strong>\u0438\u0441\u0442\u0438\u043d\u043d\u0430\u044f<\/strong> \u0444\u0443\u043d\u043a\u0446\u0438\u044f \u0446\u0435\u043d\u044b \u043e\u0442 \u0444\u0438\u0447\u0435\u0439, \u0430 \u043c\u043e\u0433\u0443\u0447\u0438\u0439 RL \u043d\u0430\u043c \u0435\u0451 \u043d\u0430\u0439\u0434\u0451\u0442. \u042d\u0442\u043e \u043c\u044b\u0448\u043b\u0435\u043d\u0438\u0435 \u0438\u0437 \u043a\u043b\u0430\u0441\u0441\u0438\u0447\u0435\u0441\u043a\u043e\u0433\u043e \u043e\u0431\u0443\u0447\u0435\u043d\u0438\u044f \u0441 \u0443\u0447\u0438\u0442\u0435\u043b\u0435\u043c. \u0412 RL \u043d\u0435\u0442 \u0430\u043d\u0430\u043b\u043e\u0433\u0430 \u0438\u0441\u0442\u0438\u043d\u043d\u044b\u0445 \u0437\u043d\u0430\u0447\u0435\u043d\u0438\u0439 \u0446\u0435\u043b\u0435\u0432\u043e\u0439 \u0444\u0443\u043d\u043a\u0446\u0438\u0438 &#8212; \u0442\u043e\u043b\u044c\u043a\u043e \u043d\u0430\u0433\u0440\u0430\u0434\u0430, \u0437\u0430\u0432\u0438\u0441\u044f\u0449\u0430\u044f \u043e\u0442 \u0440\u0430\u0437\u043b\u0438\u0447\u043d\u044b\u0445 \u043f\u043e\u0441\u043b\u0435\u0434\u043e\u0432\u0430\u0442\u0435\u043b\u044c\u043d\u043e\u0441\u0442\u0435\u0439 \u0448\u0430\u0433\u043e\u0432.<\/p>\n<\/li>\n<li>\n<p>\u0423\u0432\u0435\u043b\u0438\u0447\u0435\u043d\u0438\u0435 \u0441\u0435\u0442\u0438 \u0438\u043b\u0438 \u043e\u043f\u0435\u0440\u0430\u0446\u0438\u0439 &#8212; \u043f\u0443\u0442\u044c \u043a \u043b\u0443\u0447\u0448\u0435\u043c\u0443 \u0440\u0435\u0437\u0443\u043b\u044c\u0442\u0430\u0442\u0443. \u041d\u0430 \u0441\u0430\u043c\u043e\u043c \u0434\u0435\u043b\u0435 \u0435\u0441\u043b\u0438 \u043c\u044b \u043f\u0440\u0438 \u043f\u043b\u043e\u0445\u043e \u0441\u043a\u043e\u043d\u0441\u0442\u0440\u0443\u0438\u0440\u0443\u0435\u043c \u0441\u043e\u0441\u0442\u043e\u044f\u043d\u0438\u0435 \u0440\u044b\u043d\u043a\u0430 \u0434\u043b\u044f \u0430\u0433\u0435\u043d\u0442\u0430, \u0442\u043e \u043d\u0430\u0448 \u0430\u043b\u0433\u043e\u0440\u0438\u0442\u043c \u043f\u0435\u0440\u0435\u043e\u0431\u0443\u0447\u0438\u0442\u0441\u044f \u0435\u0449\u0451 \u0431\u044b\u0441\u0442\u0440\u0435\u0435 \u0437\u0430 \u0441\u0447\u0451\u0442 \u0433\u043b\u0443\u0431\u043e\u043a\u043e\u0439 \u0441\u0435\u0442\u0438 \u0438\u043b\u0438 \u0431\u043e\u043b\u044c\u0448\u043e\u0433\u043e \u0431\u044e\u0434\u0436\u0435\u0442\u0430 \u0432\u044b\u0447\u0438\u0441\u043b\u0435\u043d\u0438\u0439.<\/p>\n<\/li>\n<li>\n<p>\u0424\u0443\u043d\u043a\u0446\u0438\u044f \u043d\u0430\u0433\u0440\u0430\u0434\u044b (\u0434\u0430\u043b\u0435\u0435 <strong>reward<\/strong>) &#8212; \u044d\u0442\u043e \u043f\u0440\u043e\u0441\u0442\u043e \u043c\u0435\u0442\u0440\u0438\u043a\u0430. \u041d\u0430 \u0441\u0430\u043c\u043e\u043c \u0434\u0435\u043b\u0435 reward &#8212; \u044d\u0442\u043e\u00a0<strong>\u043f\u043e\u043b\u043d\u0430\u044f \u0438 \u0444\u043e\u0440\u043c\u0430\u043b\u044c\u043d\u0430\u044f \u0441\u043f\u0435\u0446\u0438\u0444\u0438\u043a\u0430\u0446\u0438\u044f<\/strong> \u0442\u043e\u0433\u043e<strong>, <\/strong>\u0447\u0435\u0433\u043e \u043c\u044b \u0445\u043e\u0442\u0438\u043c, \u0441\u043e \u0432\u0441\u0435\u043c\u0438 \u0438\u0437\u0432\u0435\u0441\u0442\u043d\u044b\u043c\u0438 RL-\u043f\u0430\u0442\u043e\u043b\u043e\u0433\u0438\u044f\u043c\u0438 (\u0430\u0433\u0435\u043d\u0442\u0443 \u043f\u0440\u043e\u0449\u0435 \u0441\u0438\u0434\u0435\u0442\u044c \u0432 \u0434\u0435\u043d\u044c\u0433\u0430\u0445, \u0442\u0435\u0440\u043f\u0435\u0442\u044c \u043a\u0430\u0442\u0430\u0441\u0442\u0440\u043e\u0444\u0438\u0447\u0435\u0441\u043a\u0438\u0435 \u043f\u0440\u043e\u0441\u0430\u0434\u043a\u0438 \u0440\u0430\u0434\u0438 \u043f\u043e\u0442\u0435\u043d\u0446\u0438\u0430\u043b\u044c\u043d\u043e\u0439 \u0432\u044b\u0433\u043e\u0434\u044b \u0438\u043b\u0438 \u0434\u0435\u0439\u0441\u0442\u0432\u043e\u0432\u0430\u0442\u044c \u0432\u043e\u0432\u0441\u0435 \u043d\u0435\u0440\u0430\u0437\u0443\u043c\u043d\u043e, \u043f\u043e\u0442\u043e\u043c\u0443 \u0447\u0442\u043e \u0432\u044b \u043e\u0448\u0438\u0431\u043b\u0438\u0441\u044c \u0441 \u043f\u043e\u0441\u0442\u0430\u043d\u043e\u0432\u043a\u043e\u0439).<\/p>\n<\/li>\n<\/ol>\n<p>\u041d\u0430 \u0442\u0435\u043a\u0443\u0449\u0435\u043c \u044d\u0442\u0430\u043f\u0435 \u0434\u043e\u0431\u0430\u0432\u043b\u044f\u0435\u043c:<\/p>\n<ul>\n<li>\n<p>python \u043a\u0430\u043a \u043e\u0441\u043d\u043e\u0432\u043d\u043e\u0439 \u044f\u0437\u044b\u043a \u0440\u0430\u0437\u0440\u0430\u0431\u043e\u0442\u043a\u0438;<\/p>\n<\/li>\n<li>\n<p>gymnasium \u043a\u0430\u043a \u0431\u0430\u0437\u043e\u0432\u0430\u044f \u0431\u0438\u0431\u043b\u0438\u043e\u0442\u0435\u043a\u0430 \u043c\u043e\u0434\u0435\u043b\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u044f \u0442\u043e\u0440\u0433\u043e\u0432\u043e\u0439 \u0441\u0440\u0435\u0434\u044b;<\/p>\n<\/li>\n<li>\n<p>stable-baselines3 \u0432 \u043a\u0430\u0447\u0435\u0441\u0442\u0432\u0435 \u0431\u0438\u0431\u043b\u0438\u043e\u0442\u0435\u043a\u0438 \u0441 \u0433\u043e\u0442\u043e\u0432\u044b\u043c\u0438 \u0440\u0435\u0430\u043b\u0438\u0437\u0430\u0446\u0438\u044f\u043c\u0438 \u0440\u0430\u0437\u043b\u0438\u0447\u043d\u044b\u0445 RL-\u0430\u043b\u0433\u043e\u0440\u0438\u0442\u043c\u043e\u0432;<\/p>\n<\/li>\n<li>\n<p>ta-lib \u0434\u043b\u044f \u0438\u043c\u043f\u043e\u0440\u0442\u0430 \u0444\u0443\u043d\u043a\u0446\u0438\u0439 \u0440\u0430\u0441\u0441\u0447\u0451\u0442\u0430 \u0442\u0440\u0430\u0434\u0438\u0446\u0438\u043e\u043d\u043d\u044b\u0445 \u0438\u043d\u0434\u0438\u043a\u0430\u0442\u043e\u0440\u043e\u0432 (\u043d\u0430\u043f\u0440\u0438\u043c\u0435\u0440, <a href=\"https:\/\/github.com\/TA-Lib\/ta-lib-python\/blob\/master\/docs\/func_groups\/momentum_indicators.md\" rel=\"noopener noreferrer nofollow\">bb_position<\/a>);<\/p>\n<\/li>\n<li>\n<p>tensorboard \u0434\u043b\u044f \u0433\u043b\u0443\u0431\u043e\u043a\u043e\u0433\u043e \u0430\u043d\u0430\u043b\u0438\u0437\u0430 \u043c\u0435\u0442\u0440\u0438\u043a \u0438 \u0442\u0440\u0430\u0435\u043a\u0442\u043e\u0440\u0438\u0439 \u043e\u0431\u0443\u0447\u0435\u043d\u0438\u044f;<\/p>\n<\/li>\n<li>\n<p>\u0441\u044b\u0440\u044b\u0435 \u0434\u0430\u043d\u043d\u044b\u0435 \u043c\u043e\u0436\u043d\u043e \u0432\u0437\u044f\u0442\u044c \u043d\u0430 <a href=\"https:\/\/github.com\/ranaroussi\/yfinance\" rel=\"noopener noreferrer nofollow\">yahoo finance<\/a> (\u0434\u043d\u0435\u0432\u043d\u044b\u0435 \u043a\u043e\u0442\u0438\u0440\u043e\u0432\u043a\u0438 \u0431\u0435\u0437 \u043e\u0433\u0440\u0430\u043d\u0438\u0447\u0435\u043d\u0438\u0439).<\/p>\n<\/li>\n<\/ul>\n<h3>\u041f\u043e\u0440\u0442\u0444\u0435\u043b\u044c \u0438 \u0434\u043d\u0435\u0432\u043d\u044b\u0435 \u0434\u0430\u043d\u043d\u044b\u0435<\/h3>\n<p>\u041e\u0447\u0435\u0440\u0435\u0434\u043d\u043e\u0435 \u0434\u043e\u043f\u0443\u0449\u0435\u043d\u0438\u0435:<\/p>\n<blockquote>\n<p>\u0422\u043e\u0440\u0433\u043e\u0432\u0430\u0442\u044c \u0431\u0443\u0434\u0435\u043c \u043d\u0435 \u043e\u0442\u0434\u0435\u043b\u044c\u043d\u044b\u043c \u0430\u043a\u0442\u0438\u0432\u043e\u043c, \u0430 \u043f\u043e\u0440\u0442\u0444\u0435\u043b\u0435\u043c \u0446\u0435\u043d\u043d\u044b\u0445 \u0431\u0443\u043c\u0430\u0433<\/p>\n<\/blockquote>\n<p>\u041f\u043e\u043c\u043e\u0436\u0435\u043c \u043d\u0430\u0448\u0435\u043c\u0443 \u0430\u0433\u0435\u043d\u0442\u0443 \u0438 \u0437\u0430\u0440\u0430\u043d\u0435\u0435 \u0434\u0430\u0434\u0438\u043c \u0432\u043e\u0437\u043c\u043e\u0436\u043d\u043e\u0441\u0442\u044c \u0434\u0438\u0432\u0435\u0440\u0441\u0438\u0444\u0438\u0446\u0438\u0440\u043e\u0432\u0430\u0442\u044c \u0440\u0438\u0441\u043a\u0438. \u0423 \u043d\u0435\u0433\u043e \u0434\u043e\u043b\u0436\u043d\u0430 \u0431\u044b\u0442\u044c \u0432\u043e\u0437\u043c\u043e\u0436\u043d\u043e\u0441\u0442\u044c \u043f\u0440\u0438\u043e\u0431\u0440\u0435\u0442\u0430\u0442\u044c \u0437\u0430\u0449\u0438\u0442\u043d\u044b\u0435 \u0430\u043a\u0442\u0438\u0432\u044b \u0432 \u043f\u0435\u0440\u0438\u043e\u0434 \u043a\u0440\u0438\u0437\u0438\u0441\u0430 \u0438 \u0434\u0435\u043b\u0430\u0442\u044c \u0441\u0442\u0430\u0432\u043a\u0443 \u043d\u0430 \u0440\u043e\u0441\u0442 \u0432 \u0441\u043f\u043e\u043a\u043e\u0439\u043d\u044b\u0435 \u0432\u0440\u0435\u043c\u0435\u043d\u0430.<\/p>\n<p>\u041f\u0443\u0441\u0442\u044c \u043d\u0430\u0448\u0430 \u0442\u043e\u0440\u0433\u043e\u0432\u0430\u044f \u0441\u0442\u0440\u0430\u0442\u0435\u0433\u0438\u044f &#8212; \u044d\u0442\u043e \u0444\u0443\u043d\u043a\u0446\u0438\u044f, \u043a\u043e\u0442\u043e\u0440\u0430\u044f \u043f\u0440\u0438\u043d\u0438\u043c\u0430\u0435\u0442 \u0438\u0441\u0442\u043e\u0440\u0438\u044e \u0446\u0435\u043d \u0438 \u043e\u0442\u0434\u0430\u0451\u0442 \u0432\u0435\u0441\u0430 \u0430\u043a\u0442\u0438\u0432\u043e\u0432 \u0434\u043b\u044f \u0440\u0435\u0431\u0430\u043b\u0430\u043d\u0441\u0438\u0440\u043e\u0432\u043a\u0438 \u043f\u043e\u0440\u0442\u0444\u0435\u043b\u044f. \u041a\u043b\u0430\u0441\u0441\u0438\u0447\u0435\u0441\u043a\u0438\u0439 ML-\u043f\u043e\u0434\u0445\u043e\u0434: \u043f\u0440\u0435\u0434\u0441\u043a\u0430\u0437\u044b\u0432\u0430\u0442\u044c \u0431\u0443\u0434\u0443\u0449\u0438\u0435 \u0434\u043e\u0445\u043e\u0434\u043d\u043e\u0441\u0442\u0438, \u043e\u043f\u0442\u0438\u043c\u0438\u0437\u0438\u0440\u043e\u0432\u0430\u0442\u044c \u043f\u043e\u0440\u0442\u0444\u0435\u043b\u044c \u043f\u043e \u043f\u0440\u043e\u0433\u043d\u043e\u0437\u0443 (<a href=\"https:\/\/en.wikipedia.org\/wiki\/Modern_portfolio_theory\" rel=\"noopener noreferrer nofollow\">mean-variance, Black-Litterman<\/a>).<\/p>\n<details class=\"spoiler\">\n<summary>\u041a\u043b\u0430\u0441\u0441\u0438\u043a\u0430 \u0440\u0430\u0431\u043e\u0442\u0430\u0435\u0442, \u043d\u043e \u0435\u0441\u0442\u044c \u043d\u0435\u0441\u043a\u043e\u043b\u044c\u043a\u043e \u043d\u0435\u0443\u0434\u043e\u0431\u043d\u044b\u0445 \u0441\u0432\u043e\u0439\u0441\u0442\u0432, \u043f\u043e\u044d\u0442\u043e\u043c\u0443 RL<\/summary>\n<div class=\"spoiler__content\">\n<ol>\n<li>\n<p>\u0417\u0430\u0434\u0430\u0447\u0430 \u043d\u0435 \u0434\u0438\u0444\u0444\u0435\u0440\u0435\u043d\u0446\u0438\u0440\u0443\u0435\u043c\u0430 \u043f\u043e \u0446\u0435\u043b\u0435\u0432\u043e\u0439 \u043c\u0435\u0442\u0440\u0438\u043a\u0435. Sharpe ratio, Calmar, MaxDrawdown &#8212; \u044d\u0442\u043e \u0441\u0432\u043e\u0439\u0441\u0442\u0432\u0430 \u0442\u0440\u0430\u0435\u043a\u0442\u043e\u0440\u0438\u0438, \u0430 \u043d\u0435 \u043e\u0434\u043d\u043e\u0433\u043e \u0448\u0430\u0433\u0430. \u041c\u0438\u043d\u0438\u043c\u0438\u0437\u0430\u0446\u0438\u044f MSE \u043d\u0430 \u043f\u0440\u0435\u0434\u0441\u043a\u0430\u0437\u0430\u043d\u0438\u0435 \u0434\u043e\u0445\u043e\u0434\u043d\u043e\u0441\u0442\u0438 &#8212; \u043f\u0440\u043e\u043a\u0441\u0438, \u043a\u043e\u0442\u043e\u0440\u044b\u0439 \u043f\u043b\u043e\u0445\u043e \u043a\u043e\u0440\u0440\u0435\u043b\u0438\u0440\u0443\u0435\u0442 \u0441 Sharpe \u0444\u0438\u043d\u0430\u043b\u044c\u043d\u043e\u0439 \u0441\u0442\u0440\u0430\u0442\u0435\u0433\u0438\u0438.<\/p>\n<\/li>\n<li>\n<p>\u0414\u0435\u0439\u0441\u0442\u0432\u0438\u044f \u0441\u0435\u0433\u043e\u0434\u043d\u044f \u043c\u0435\u043d\u044f\u044e\u0442 \u0441\u043e\u0441\u0442\u043e\u044f\u043d\u0438\u0435 \u0437\u0430\u0432\u0442\u0440\u0430. \u041a\u043e\u043c\u0438\u0441\u0441\u0438\u044f \u0437\u0430 \u0440\u0435\u0431\u0430\u043b\u0430\u043d\u0441\u0438\u0440\u043e\u0432\u043a\u0443, \u043f\u0440\u043e\u0441\u043a\u0430\u043b\u044c\u0437\u044b\u0432\u0430\u043d\u0438\u044f, \u0432\u044b\u0441\u043e\u043a\u0438\u0439 \u0431\u0443\u043c\u0430\u0436\u043d\u044b\u0439 \u0434\u043e\u0445\u043e\u0434 \u043f\u043e\u0441\u043b\u0435 \u0445\u043e\u0440\u043e\u0448\u0435\u0439 \u043d\u0435\u0434\u0435\u043b\u0438 \u0438 \u043f\u0440\u043e\u0441\u0430\u0434\u043a\u0430 \u043f\u043e\u0441\u043b\u0435 \u043f\u043b\u043e\u0445\u043e\u0439. \u041a\u043b\u0430\u0441\u0441\u0438\u0447\u0435\u0441\u043a\u0438\u0439 &#171;predict-then-optimize&#187; \u044d\u0442\u0443 \u0434\u0438\u043d\u0430\u043c\u0438\u043a\u0443 \u0438\u0433\u043d\u043e\u0440\u0438\u0440\u0443\u0435\u0442.<\/p>\n<\/li>\n<li>\n<p>Reward shaping &#8212; \u043d\u0430\u0442\u0438\u0432\u043d\u044b\u0439 \u0440\u044b\u0447\u0430\u0433. \u0412 RL \u0432\u044b \u043c\u043e\u0436\u0435\u0442\u0435 \u043d\u0430\u043f\u0440\u044f\u043c\u0443\u044e \u043d\u0430\u043f\u0438\u0441\u0430\u0442\u044c: &#171;\u043d\u0430\u0433\u0440\u0430\u0436\u0434\u0430\u0439 \u0437\u0430 \u0432\u044b\u0441\u043e\u043a\u0438\u0439 Sharpe \u0437\u0430 \u043f\u043e\u0441\u043b\u0435\u0434\u043d\u0438\u0435 N \u0448\u0430\u0433\u043e\u0432, \u0448\u0442\u0440\u0430\u0444\u0443\u0439 \u0437\u0430 \u043f\u0440\u043e\u0441\u0430\u0434\u043a\u0443 \u0438 \u0440\u0435\u0431\u0430\u043b\u0430\u043d\u0441\u0438\u0440\u043e\u0432\u043a\u0443&#187;. \u042d\u0442\u043e \u0444\u043e\u0440\u043c\u0430\u043b\u0438\u0437\u0443\u0435\u0442\u0441\u044f \u0432 <code><em>reward(s_t, a_t)<\/em><\/code>, \u0438 \u0430\u0433\u0435\u043d\u0442 \u0441\u0430\u043c \u0432\u044b\u0443\u0447\u0438\u0442 \u043f\u043e\u043b\u0438\u0442\u0438\u043a\u0443, \u043e\u043f\u0442\u0438\u043c\u0438\u0437\u0438\u0440\u0443\u044e\u0449\u0443\u044e \u0442\u0430\u043a\u0443\u044e \u043a\u043e\u043c\u043f\u043e\u0437\u0438\u0446\u0438\u044e.<\/p>\n<\/li>\n<li>\n<p>\u0418\u0441\u0441\u043b\u0435\u0434\u043e\u0432\u0430\u043d\u0438\u0435 \u0432\u043a\u043b\u044e\u0447\u0451\u043d\u043e \u043f\u043e \u0443\u043c\u043e\u043b\u0447\u0430\u043d\u0438\u044e. \u041f\u043e\u043b\u0438\u0442\u0438\u043a\u0430 \u0441\u0442\u043e\u0445\u0430\u0441\u0442\u0438\u0447\u0435\u0441\u043a\u0430\u044f (\u0432 \u0441\u043b\u0443\u0447\u0430\u0435 SAC) &#8212; \u0430\u0433\u0435\u043d\u0442 \u043f\u0440\u043e\u0431\u0443\u0435\u0442 \u0432\u0430\u0440\u0438\u0430\u0446\u0438\u0438 \u043e\u0442 \u0441\u0432\u043e\u0435\u0439 \u043e\u043f\u0442\u0438\u043c\u0430\u043b\u044c\u043d\u043e\u0439 \u0441\u0442\u0440\u0430\u0442\u0435\u0433\u0438\u0438, \u0447\u0442\u043e \u0432 \u0444\u0438\u043d\u0430\u043d\u0441\u0430\u0445 \u043f\u043e\u043b\u0435\u0437\u043d\u043e: \u0434\u0435\u0442\u0435\u0440\u043c\u0438\u043d\u0438\u0440\u043e\u0432\u0430\u043d\u043d\u044b\u0435 \u043f\u0440\u0430\u0432\u0438\u043b\u0430 \u0441\u043a\u043b\u043e\u043d\u043d\u044b \u043f\u043e\u043f\u0430\u0434\u0430\u0442\u044c \u0432 &#171;\u0432\u044b\u0443\u0447\u0435\u043d\u043d\u044b\u0435&#187; \u043f\u0430\u0442\u0442\u0435\u0440\u043d\u044b, \u043a\u043e\u0442\u043e\u0440\u044b\u0435 \u043f\u0435\u0440\u0435\u0441\u0442\u0430\u044e\u0442 \u0440\u0430\u0431\u043e\u0442\u0430\u0442\u044c.<\/p>\n<\/li>\n<\/ol>\n<\/div>\n<\/details>\n<blockquote>\n<p>\u0422\u043e\u0440\u0433\u043e\u0432\u0430\u0442\u044c \u0431\u0443\u0434\u0435\u043c \u043d\u0430 \u0434\u043d\u0435\u0432\u043d\u044b\u0445 \u0434\u0430\u043d\u043d\u044b\u0445<\/p>\n<\/blockquote>\n<p>\u041d\u0430 \u0440\u044b\u043d\u043a\u0435 \u043a\u0430\u0436\u0434\u043e\u0435 \u043c\u0433\u043d\u043e\u0432\u0435\u043d\u0438\u0435 \u0447\u0442\u043e-\u0442\u043e \u043f\u0440\u043e\u0438\u0441\u0445\u043e\u0434\u0438\u0442 \u0438 \u044d\u0442\u043e \u043e\u0442\u0440\u0430\u0436\u0430\u0435\u0442\u0441\u044f \u0432 \u0446\u0435\u043d\u0435 \u0430\u043a\u0442\u0438\u0432\u043e\u0432. \u0427\u0435\u043c \u0432\u044b\u0448\u0435 \u0434\u0438\u0441\u043a\u0440\u0435\u0442\u043d\u043e\u0441\u0442\u044c \u0441\u043e\u0431\u044b\u0442\u0438\u0439, \u0442\u0435\u043c \u0431\u043e\u043b\u044c\u0448\u0435 \u0442\u0430\u043c \u0448\u0443\u043c\u0430. \u0414\u0430\u0431\u044b \u0441\u043a\u043e\u043c\u043f\u0435\u043d\u0441\u0438\u0440\u043e\u0432\u0430\u0442\u044c \u043f\u0440\u043e\u0441\u0442\u0440\u0430\u043d\u0441\u0442\u0432\u043e \u0432\u043e\u0437\u043c\u043e\u0436\u043d\u044b\u0445 \u0440\u0435\u0448\u0435\u043d\u0438\u0439, \u0432\u0440\u0435\u043c\u044f \u0438 \u0434\u043e\u0441\u0442\u0443\u043f\u043d\u044b\u0435 \u0440\u0435\u0441\u0443\u0440\u0441\u044b &#8212; \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u0435\u043c <a href=\"https:\/\/ru.wikipedia.org\/wiki\/%D0%A2%D0%B0%D0%B9%D0%BC%D1%84%D1%80%D0%B5%D0%B9%D0%BC\" rel=\"noopener noreferrer nofollow\">\u0434\u043d\u0435\u0432\u043d\u044b\u0435 \u0434\u0430\u043d\u043d\u044b\u0435<\/a>.<\/p>\n<p>\u0414\u043b\u044f \u0441\u043e\u0437\u0434\u0430\u043d\u0438\u044f \u044d\u0444\u0444\u0435\u043a\u0442\u0438\u0432\u043d\u043e\u0439 \u0442\u043e\u0440\u0433\u043e\u0432\u043e\u0439 \u0441\u0442\u0440\u0430\u0442\u0435\u0433\u0438\u0438 (\u0432\u044b\u0443\u0447\u0438\u0432\u0430\u043d\u0438\u044f \u043e\u043f\u0442\u0438\u043c\u0430\u043b\u044c\u043d\u043e\u0439 \u043f\u043e\u043b\u0438\u0442\u0438\u043a\u0438) \u0441\u043b\u0435\u0434\u0443\u0435\u0442 \u0432\u0437\u044f\u0442\u044c \u0430\u043a\u0442\u0438\u0432\u044b \u0438\u0437 \u0440\u0430\u0437\u043b\u0438\u0447\u043d\u044b\u0445 \u0441\u0435\u043a\u0442\u043e\u0440\u043e\u0432 \u0438 \u0441 \u043c\u0438\u043d\u0438\u043c\u0430\u043b\u044c\u043d\u043e\u0439 \u043a\u043e\u0440\u0440\u0435\u043b\u044f\u0446\u0438\u0435\u0439 \u043c\u0435\u0436\u0434\u0443 \u0441\u043e\u0431\u043e\u0439.<\/p>\n<div>\n<div class=\"table\">\n<table>\n<tbody>\n<tr>\n<td data-colwidth=\"97\" width=\"97\">\n<p align=\"center\">\u0422\u0438\u043a\u0435\u0440<\/p>\n<\/td>\n<td data-colwidth=\"227\" width=\"227\">\n<p align=\"center\">\u041a\u043b\u0430\u0441\u0441<\/p>\n<\/td>\n<td>\n<p align=\"center\">\u0417\u0430\u0447\u0435\u043c<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td data-colwidth=\"97\" width=\"97\">\n<p align=\"center\">BTC<\/p>\n<\/td>\n<td data-colwidth=\"227\" width=\"227\">\n<p align=\"center\">\u041a\u0440\u0438\u043f\u0442\u043e\u0432\u0430\u043b\u044e\u0442\u0430<\/p>\n<\/td>\n<td>\n<p align=\"left\">\u0412\u044b\u0441\u043e\u043a\u043e\u0432\u043e\u043b\u0430\u0442\u0438\u043b\u044c\u043d\u044b\u0439 risk-on \u0430\u043a\u0442\u0438\u0432<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td data-colwidth=\"97\" width=\"97\">\n<p align=\"center\">NDX<\/p>\n<\/td>\n<td data-colwidth=\"227\" width=\"227\">\n<p align=\"center\">\u0418\u043d\u0434\u0435\u043a\u0441<\/p>\n<\/td>\n<td>\n<p align=\"left\">\u0422\u0435\u0445\u043d\u043e\u043b\u043e\u0433\u0438\u0447\u0435\u0441\u043a\u0438\u0439 \u0440\u043e\u0441\u0442<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td data-colwidth=\"97\" width=\"97\">\n<p align=\"center\">XAU<\/p>\n<\/td>\n<td data-colwidth=\"227\" width=\"227\">\n<p align=\"center\">\u041c\u0435\u0442\u0430\u043b\u043b<\/p>\n<\/td>\n<td>\n<p align=\"left\">\u041a\u043b\u0430\u0441\u0441\u0438\u0447\u0435\u0441\u043a\u0438\u0439 safe-haven<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td data-colwidth=\"97\" width=\"97\">\n<p align=\"center\">XAG<\/p>\n<\/td>\n<td data-colwidth=\"227\" width=\"227\">\n<p align=\"center\">\u041c\u0435\u0442\u0430\u043b\u043b<\/p>\n<\/td>\n<td>\n<p align=\"left\">\u041c\u0435\u0442\u0430\u043b\u043b \u0441 \u0441\u0432\u043e\u0439\u0441\u0442\u0432\u0430\u043c\u0438 \u043f\u0440\u043e\u043c\u044b\u0448\u043b\u0435\u043d\u043d\u043e\u0433\u043e \u0441\u0435\u043a\u0442\u043e\u0440\u0430<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td data-colwidth=\"97\" width=\"97\">\n<p align=\"center\">LCOc1<\/p>\n<\/td>\n<td data-colwidth=\"227\" width=\"227\">\n<p align=\"center\">\u041d\u0435\u0444\u0442\u044c<\/p>\n<\/td>\n<td>\n<p align=\"left\"> \u0421\u044b\u0440\u044c\u0435\u0432\u043e\u0439 \u0446\u0438\u043a\u043b<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td data-colwidth=\"97\" width=\"97\">\n<p align=\"center\">TLT<\/p>\n<\/td>\n<td data-colwidth=\"227\" width=\"227\">\n<p align=\"center\">\u0414\u043e\u043b\u0433\u043e\u0441\u0440\u043e\u0447\u043d\u044b\u0435 \u043e\u0431\u043b\u0438\u0433\u0430\u0446\u0438\u0438<\/p>\n<\/td>\n<td>\n<p align=\"left\">\u041e\u0442\u0440\u0438\u0446\u0430\u0442\u0435\u043b\u044c\u043d\u0430\u044f \u043a\u043e\u0440\u0440\u0435\u043b\u044f\u0446\u0438\u044f \u0441 \u0430\u043a\u0446\u0438\u044f\u043c\u0438 \u0432 \u043a\u0440\u0438\u0437\u0438\u0441<\/p>\n<\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<\/div>\n<\/div>\n<p>\u0418\u0437\u043d\u0430\u0447\u0430\u043b\u044c\u043d\u043e \u0442\u0430\u043c \u0431\u044b\u043b \u043f\u0440\u0438\u0440\u043e\u0434\u043d\u044b\u0439 \u0433\u0430\u0437 (NG) \u0432\u043c\u0435\u0441\u0442\u043e \u043e\u0431\u043b\u0438\u0433\u0430\u0446\u0438\u0439 (TLT), \u043d\u043e \u0430\u0433\u0435\u043d\u0442 \u0442\u0430\u043a \u0438 \u043d\u0435 \u043d\u0430\u0443\u0447\u0438\u043b\u0441\u044f \u0435\u0433\u043e \u0442\u043e\u0440\u0433\u043e\u0432\u0430\u0442\u044c \u0438\u0437-\u0437\u0430 \u0432\u044b\u0441\u043e\u043a\u043e\u0439 \u0432\u043e\u043b\u0430\u0442\u0438\u043b\u044c\u043d\u043e\u0441\u0442\u0438. \u041a \u0442\u043e\u043c\u0443 \u0436\u0435 \u0434\u043b\u044f \u043f\u043e\u0440\u0442\u0444\u0435\u043b\u044f \u043d\u0443\u0436\u0435\u043d \u0431\u044b\u043b \u044f\u0432\u043d\u044b\u0439 safe-haven. \u0422\u043e\u0440\u0433\u043e\u0432\u043b\u044f \u043c\u0435\u0434\u044c\u044e (HG \u043a\u0430\u043a \u043f\u0440\u043e\u043c\u044b\u0448\u043b\u0435\u043d\u043d\u044b\u0439 \u043c\u0435\u0442\u0430\u043b\u043b) \u0442\u0430\u043a\u0436\u0435 \u043f\u043e\u043a\u0430\u0437\u0430\u043b\u0430 \u0441\u0435\u0431\u044f \u0445\u0443\u0436\u0435 \u0432 \u0441\u0440\u0430\u0432\u043d\u0435\u043d\u0438\u0438 \u0441 \u0441\u0435\u0440\u0435\u0431\u0440\u043e\u043c (XAG).<\/p>\n<figure class=\"full-width \"><img decoding=\"async\" src=\"https:\/\/habrastorage.org\/r\/w1560\/getpro\/habr\/upload_files\/004\/773\/6ee\/0047736ee6f377f63b7de3e0ca170205.png\" alt=\"\u041f\u0440\u0438\u043c\u0435\u0440 \u0433\u0440\u0430\u043d\u0438\u0446 \u0440\u0435\u0431\u0430\u043b\u0430\u043d\u0441\u0438\u0440\u043e\u0432\u043a\u0438 \u043f\u043e\u0440\u0442\u0444\u0435\u043b\u044f \u043d\u0430 valid \u043f\u0435\u0440\u0438\u043e\u0434\u0435\" title=\"\u041f\u0440\u0438\u043c\u0435\u0440 \u0433\u0440\u0430\u043d\u0438\u0446 \u0440\u0435\u0431\u0430\u043b\u0430\u043d\u0441\u0438\u0440\u043e\u0432\u043a\u0438 \u043f\u043e\u0440\u0442\u0444\u0435\u043b\u044f \u043d\u0430 valid \u043f\u0435\u0440\u0438\u043e\u0434\u0435\" width=\"2524\" height=\"888\" sizes=\"auto, (max-width: 780px) 100vw, 50vw\" srcset=\"https:\/\/habrastorage.org\/r\/w780\/getpro\/habr\/upload_files\/004\/773\/6ee\/0047736ee6f377f63b7de3e0ca170205.png 780w,&#10;       https:\/\/habrastorage.org\/r\/w1560\/getpro\/habr\/upload_files\/004\/773\/6ee\/0047736ee6f377f63b7de3e0ca170205.png 781w\" loading=\"lazy\" decode=\"async\"\/><\/p>\n<div><figcaption>\u041f\u0440\u0438\u043c\u0435\u0440 \u0433\u0440\u0430\u043d\u0438\u0446 \u0440\u0435\u0431\u0430\u043b\u0430\u043d\u0441\u0438\u0440\u043e\u0432\u043a\u0438 \u043f\u043e\u0440\u0442\u0444\u0435\u043b\u044f \u043d\u0430 valid \u043f\u0435\u0440\u0438\u043e\u0434\u0435<\/figcaption><\/div>\n<\/figure>\n<h4>\u041a\u043e\u0440\u0440\u0435\u043b\u044f\u0446\u0438\u044f log-returns, \u043f\u043e\u043b\u043d\u044b\u0439 \u043f\u0435\u0440\u0438\u043e\u0434 (2017\u20132026)<\/h4>\n<div>\n<div class=\"table\">\n<table>\n<tbody>\n<tr>\n<th><\/th>\n<th>\n<p align=\"center\">BTC<\/p>\n<\/th>\n<th>\n<p align=\"center\">NDX<\/p>\n<\/th>\n<th>\n<p align=\"center\">XAU<\/p>\n<\/th>\n<th>\n<p align=\"center\">XAG<\/p>\n<\/th>\n<th>\n<p align=\"center\">TLT<\/p>\n<\/th>\n<th>\n<p align=\"center\">LCOc1<\/p>\n<\/th>\n<\/tr>\n<tr>\n<td>\n<p align=\"center\"><strong>BTC<\/strong><\/p>\n<\/td>\n<td>\n<p align=\"center\">1.000<\/p>\n<\/td>\n<td>\n<p align=\"center\">0.276<\/p>\n<\/td>\n<td>\n<p align=\"center\">0.100<\/p>\n<\/td>\n<td>\n<p align=\"center\">0.147<\/p>\n<\/td>\n<td>\n<p align=\"center\">\u22120.018<\/p>\n<\/td>\n<td>\n<p align=\"center\">0.073<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td>\n<p align=\"center\"><strong>NDX<\/strong><\/p>\n<\/td>\n<td>\n<p align=\"center\">0.276<\/p>\n<\/td>\n<td>\n<p align=\"center\">1.000<\/p>\n<\/td>\n<td>\n<p align=\"center\">0.085<\/p>\n<\/td>\n<td>\n<p align=\"center\">0.220<\/p>\n<\/td>\n<td>\n<p align=\"center\">\u22120.091<\/p>\n<\/td>\n<td>\n<p align=\"center\">0.212<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td>\n<p align=\"center\"><strong>XAU<\/strong><\/p>\n<\/td>\n<td>\n<p align=\"center\">0.100<\/p>\n<\/td>\n<td>\n<p align=\"center\">0.085<\/p>\n<\/td>\n<td>\n<p align=\"center\">1.000<\/p>\n<\/td>\n<td>\n<p align=\"center\"><strong>0.763<\/strong><\/p>\n<\/td>\n<td>\n<p align=\"center\">0.242<\/p>\n<\/td>\n<td>\n<p align=\"center\">0.100<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td>\n<p align=\"center\"><strong>XAG<\/strong><\/p>\n<\/td>\n<td>\n<p align=\"center\">0.147<\/p>\n<\/td>\n<td>\n<p align=\"center\">0.220<\/p>\n<\/td>\n<td>\n<p align=\"center\"><strong>0.763<\/strong><\/p>\n<\/td>\n<td>\n<p align=\"center\">1.000<\/p>\n<\/td>\n<td>\n<p align=\"center\">0.111<\/p>\n<\/td>\n<td>\n<p align=\"center\">0.156<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td>\n<p align=\"center\"><strong>TLT<\/strong><\/p>\n<\/td>\n<td>\n<p align=\"center\">\u22120.018<\/p>\n<\/td>\n<td>\n<p align=\"center\">\u22120.091<\/p>\n<\/td>\n<td>\n<p align=\"center\">0.242<\/p>\n<\/td>\n<td>\n<p align=\"center\">0.111<\/p>\n<\/td>\n<td>\n<p align=\"center\">1.000<\/p>\n<\/td>\n<td>\n<p align=\"center\"><strong>\u22120.182<\/strong><\/p>\n<\/td>\n<\/tr>\n<tr>\n<td>\n<p align=\"center\"><strong>LCOc1<\/strong><\/p>\n<\/td>\n<td>\n<p align=\"center\">0.073<\/p>\n<\/td>\n<td>\n<p align=\"center\">0.212<\/p>\n<\/td>\n<td>\n<p align=\"center\">0.100<\/p>\n<\/td>\n<td>\n<p align=\"center\">0.156<\/p>\n<\/td>\n<td>\n<p align=\"center\">\u22120.182<\/p>\n<\/td>\n<td>\n<p align=\"center\">1.000<\/p>\n<\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<\/div>\n<\/div>\n<details class=\"spoiler\">\n<summary>\u0421\u0432\u043e\u0439\u0441\u0442\u0432\u0430 \u043a\u043e\u0440\u0437\u0438\u043d\u044b<\/summary>\n<div class=\"spoiler__content\">\n<ul>\n<li>\n<p>\u0441\u0440\u0435\u0434\u043d\u044f\u044f \u043f\u043e\u043f\u0430\u0440\u043d\u0430\u044f \u043a\u043e\u0440\u0440\u0435\u043b\u044f\u0446\u0438\u044f:\u00a0<strong>+0.146<\/strong>\u00a0(\u0441\u0438\u043b\u044c\u043d\u0430\u044f \u0434\u0438\u0432\u0435\u0440\u0441\u0438\u0444\u0438\u043a\u0430\u0446\u0438\u044f &#8212; \u0442\u0438\u043f\u0438\u0447\u043d\u044b\u0439 multi-asset \u0438\u043d\u0441\u0442\u0438\u0442\u0443\u0446\u0438\u043e\u043d\u0430\u043b\u044c\u043d\u044b\u0439 \u043f\u043e\u0440\u0442\u0444\u0435\u043b\u044c \u0438\u043c\u0435\u0435\u0442 ~0.3\u20130.5);<\/p>\n<\/li>\n<li>\n<p>\u043c\u0435\u0434\u0438\u0430\u043d\u0430: +0.111;<\/p>\n<\/li>\n<li>\n<p>\u043c\u0430\u043a\u0441\u0438\u043c\u0443\u043c: +0.76 (XAU \u2194 XAG &#8212; \u0432\u043d\u0443\u0442\u0440\u0438\u043a\u043b\u0430\u0441\u0442\u0435\u0440\u043d\u043e);<\/p>\n<\/li>\n<li>\n<p>\u043c\u0438\u043d\u0438\u043c\u0443\u043c:\u00a0<strong>\u22120.18<\/strong>\u00a0(TLT \u2194 LCOc1 &#8212; \u0431\u043e\u043d\u0434\u044b vs \u043d\u0435\u0444\u0442\u044c).<\/p>\n<\/li>\n<\/ul>\n<\/div>\n<\/details>\n<hr\/>\n<h2>\u0413\u043b\u0430\u0432\u0430 2. SAC \u0438 \u043d\u0430\u0431\u043b\u044e\u0434\u0430\u0435\u043c\u043e\u0435 \u0441\u043e\u0441\u0442\u043e\u044f\u043d\u0438\u0435 \u0440\u044b\u043d\u043a\u0430<\/h2>\n<p>\u0412 RL-\u0430\u0440\u0441\u0435\u043d\u0430\u043b\u0435 \u0435\u0441\u0442\u044c on-policy \u043c\u0435\u0442\u043e\u0434\u044b (<strong>PPO<\/strong>, <strong>A2C<\/strong>, <strong>TRPO<\/strong>) \u0438 off-policy (<strong>DQN<\/strong> \u0434\u043b\u044f \u0434\u0438\u0441\u043a\u0440\u0435\u0442\u043d\u044b\u0445 \u0434\u0435\u0439\u0441\u0442\u0432\u0438\u0439, <strong>DDPG<\/strong>\/<strong>TD3<\/strong>\/<strong>SAC<\/strong> \u0434\u043b\u044f \u043d\u0435\u043f\u0440\u0435\u0440\u044b\u0432\u043d\u044b\u0445). \u0414\u043b\u044f \u0442\u043e\u0440\u0433\u043e\u0432\u043b\u0438 \u0446\u0435\u043b\u0435\u0432\u044b\u043c\u0438 \u0432\u0435\u0441\u0430\u043c\u0438 \u043f\u043e\u0440\u0442\u0444\u0435\u043b\u044f \u043d\u0430\u043c \u043d\u0443\u0436\u043d\u044b <strong>\u043d\u0435\u043f\u0440\u0435\u0440\u044b\u0432\u043d\u044b\u0435<\/strong> \u0434\u0435\u0439\u0441\u0442\u0432\u0438\u044f, \u043f\u043e\u044d\u0442\u043e\u043c\u0443 on-policy-\u043c\u0435\u0442\u043e\u0434\u044b \u043d\u0435 \u043f\u0440\u0438\u043c\u0435\u043d\u0438\u043c\u044b \u043d\u0430\u043f\u0440\u044f\u043c\u0443\u044e, \u0430 \u0438\u0437 off-policy \u0432\u044b\u0431\u043e\u0440 \u0441\u0443\u0436\u0430\u0435\u0442\u0441\u044f \u0434\u043e <strong>DDPG<\/strong>\/<strong>TD3<\/strong>\/<strong>SAC<\/strong>.<\/p>\n<p><a href=\"https:\/\/arxiv.org\/abs\/1812.05905\" rel=\"noopener noreferrer nofollow\">SAC<\/a> (Soft Actor-Critic) &#8212; \u044d\u0442\u043e off-policy, actor-critic \u043c\u0435\u0442\u043e\u0434 \u0441 \u0442\u0440\u0435\u043c\u044f \u0432\u0430\u0436\u043d\u044b\u043c\u0438 \u043e\u0441\u043e\u0431\u0435\u043d\u043d\u043e\u0441\u0442\u044f\u043c\u0438:<\/p>\n<ul>\n<li>\n<p><strong>Maximum entropy objective<\/strong>: \u043f\u043e\u043b\u0438\u0442\u0438\u043a\u0430 \u043c\u0430\u043a\u0441\u0438\u043c\u0438\u0437\u0438\u0440\u0443\u0435\u0442 \u043d\u0435 \u0442\u043e\u043b\u044c\u043a\u043e \u043e\u0436\u0438\u0434\u0430\u0435\u043c\u0443\u044e \u043d\u0430\u0433\u0440\u0430\u0434\u0443, \u043d\u043e \u0438 \u0441\u0432\u043e\u044e \u044d\u043d\u0442\u0440\u043e\u043f\u0438\u044e. \u042d\u0442\u043e \u043f\u043e\u0434\u0434\u0435\u0440\u0436\u0438\u0432\u0430\u0435\u0442 \u043c\u043e\u0442\u0438\u0432\u0430\u0446\u0438\u044e \u0430\u0433\u0435\u043d\u0442\u0430 \u0438\u0441\u0441\u043b\u0435\u0434\u043e\u0432\u0430\u0442\u044c \u043d\u0430 \u043f\u0440\u043e\u0442\u044f\u0436\u0435\u043d\u0438\u0438 \u0432\u0441\u0435\u0433\u043e \u043e\u0431\u0443\u0447\u0435\u043d\u0438\u044f &#8212; \u043a\u0440\u0438\u0442\u0438\u0447\u043d\u043e, \u043f\u043e\u0442\u043e\u043c\u0443 \u0447\u0442\u043e \u0432 \u043d\u0430\u0448\u0435\u0439 \u0441\u0440\u0435\u0434\u0435 \u044d\u043f\u0438\u0437\u043e\u0434\u044b \u043e\u0431\u0443\u0447\u0435\u043d\u0438\u044f \u043a\u043e\u0440\u043e\u0442\u043a\u0438\u0435, \u0438 \u0430\u0433\u0435\u043d\u0442 \u0441\u043a\u043b\u043e\u043d\u0435\u043d \u0441\u0445\u043b\u043e\u043f\u044b\u0432\u0430\u0442\u044c\u0441\u044f \u0432 \u043b\u043e\u043a\u0430\u043b\u044c\u043d\u044b\u0439 \u043c\u0430\u043a\u0441\u0438\u043c\u0443\u043c \u0441\u043b\u0438\u0448\u043a\u043e\u043c \u0431\u044b\u0441\u0442\u0440\u043e. \u041e\u0431\u0440\u0430\u0449\u0430\u044e \u0432\u043d\u0438\u043c\u0430\u043d\u0438\u0435, \u0447\u0442\u043e \u0434\u043b\u044f \u0434\u043d\u0435\u0432\u043d\u044b\u0445 \u0434\u0430\u043d\u043d\u044b\u0445 \u043d\u0435 \u0442\u0430\u043a \u0443\u0436 \u0438 \u043c\u043d\u043e\u0433\u043e \u0438\u0441\u0442\u043e\u0440\u0438\u0438 \u0432 \u043c\u0430\u0441\u0448\u0442\u0430\u0431\u0435 \u043e\u0431\u0443\u0447\u0435\u043d\u0438\u044f RL-\u0430\u0433\u0435\u043d\u0442\u043e\u0432. \u041e\u0441\u043e\u0431\u0435\u043d\u043d\u043e \u0435\u0441\u043b\u0438 \u0443\u0447\u0435\u0441\u0442\u044c \u043f\u0440\u0435\u0434\u0432\u0430\u0440\u0438\u0442\u0435\u043b\u044c\u043d\u0443\u044e \u043e\u0431\u0440\u0430\u0431\u043e\u0442\u043a\u0443, \u0442\u043e \u0443 \u043c\u0435\u043d\u044f \u0432 \u043e\u0431\u0443\u0447\u0430\u044e\u0449\u0435\u0439 \u0432\u044b\u0431\u043e\u0440\u043a\u0435 \u043e\u043a\u0430\u0437\u0430\u043b\u043e\u0441\u044c \u043e\u043a\u043e\u043b\u043e 2300 \u0434\u043d\u0435\u0439 \u043d\u0430 \u043a\u0430\u0436\u0434\u044b\u0439 \u0442\u0438\u043a\u0435\u0440.<\/p>\n<\/li>\n<li>\n<p><strong>Replay buffer<\/strong> (off-policy): \u043f\u043e\u0437\u0432\u043e\u043b\u044f\u0435\u0442 \u043f\u0435\u0440\u0435\u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u044c \u0438\u0441\u0442\u043e\u0440\u0438\u0447\u0435\u0441\u043a\u0438\u0435 \u043f\u0435\u0440\u0435\u0445\u043e\u0434\u044b \u0438\u0437 \u0441\u043e\u0441\u0442\u043e\u044f\u043d\u0438\u044f \u0432 \u0441\u043e\u0441\u0442\u043e\u044f\u043d\u0438\u0435 \u0434\u043b\u044f \u043e\u0431\u0443\u0447\u0435\u043d\u0438\u044f. \u0412 \u043d\u0430\u0448\u0435\u043c \u0441\u043b\u0443\u0447\u0430\u0435 \u044d\u0442\u043e \u043a\u0440\u0438\u0442\u0438\u0447\u043d\u043e \u0438\u0437-\u0437\u0430 \u0440\u0435\u0434\u043a\u043e\u0441\u0442\u0438 \u043d\u0435\u043a\u043e\u0442\u043e\u0440\u044b\u0445 \u0440\u0435\u0436\u0438\u043c\u043e\u0432 &#8212; \u0431\u0435\u0437 \u0431\u0443\u0444\u0435\u0440\u0430 \u0430\u0433\u0435\u043d\u0442 \u0431\u044b \u0438\u0445 \u0432\u043e\u0432\u0441\u0435 \u043c\u043e\u0433 \u043d\u0435 \u0432\u0441\u0442\u0440\u0435\u0442\u0438\u0442\u044c. \u0420\u0435\u0436\u0438\u043c\u0430\u043c \u0434\u0430\u043b\u0435\u0435 \u0443\u0434\u0435\u043b\u0438\u043c \u043e\u0441\u043e\u0431\u043e\u0435 \u0432\u043d\u0438\u043c\u0430\u043d\u0438\u0435.<\/p>\n<\/li>\n<li>\n<p><strong>\u041d\u0435\u043f\u0440\u0435\u0440\u044b\u0432\u043d\u043e\u0435 \u0434\u0435\u0439\u0441\u0442\u0432\u0438\u0435 \u0447\u0435\u0440\u0435\u0437 stochastic policy<\/strong> &#8212; actor-\u0441\u0435\u0442\u044c \u0432\u044b\u0434\u0430\u0451\u0442 \u043f\u0430\u0440\u0430\u043c\u0435\u0442\u0440\u044b \u043d\u043e\u0440\u043c\u0430\u043b\u044c\u043d\u043e\u0433\u043e \u0440\u0430\u0441\u043f\u0440\u0435\u0434\u0435\u043b\u0435\u043d\u0438\u044f, \u0438\u0437 \u043a\u043e\u0442\u043e\u0440\u043e\u0433\u043e \u0432\u044b\u0431\u0438\u0440\u0430\u0435\u0442\u0441\u044f \u0434\u0435\u0439\u0441\u0442\u0432\u0438\u0435. \u042d\u0442\u043e \u0441\u043e\u0437\u0434\u0430\u0451\u0442 \u0433\u0440\u0430\u0434\u0438\u0435\u043d\u0442 \u0434\u043b\u044f \u043e\u0431\u0443\u0447\u0435\u043d\u0438\u044f.<\/p>\n<\/li>\n<\/ul>\n<p>\u041d\u0430 \u043f\u0440\u0430\u043a\u0442\u0438\u043a\u0435 \u044f \u0441\u0440\u0430\u0432\u043d\u0438\u0432\u0430\u043b <strong>SAC<\/strong> \u0441 <strong>PPO<\/strong>, <strong>TQC<\/strong>, <strong>TD3<\/strong>, <strong>DroQ<\/strong> \u0438 <strong>PopArt-SAC<\/strong>. \u0420\u0435\u0437\u0443\u043b\u044c\u0442\u0430\u0442\u044b: PPO (\u0447\u0435\u0440\u0435\u0437 Gaussian policy) \u043e\u043a\u0430\u0437\u0430\u043b\u0430\u0441\u044f \u043d\u0430\u0438\u043c\u0435\u043d\u0435\u0435 \u044d\u0444\u0444\u0435\u043a\u0442\u0438\u0432\u0435\u043d \u0434\u043b\u044f \u043c\u0430\u043b\u043e\u0433\u043e \u043a\u043e\u043b\u0438\u0447\u0435\u0441\u0442\u0432\u0430 \u043f\u0440\u0438\u043c\u0435\u0440\u043e\u0432 \u0438 \u043d\u0438\u043a\u0430\u043a \u043d\u0435 \u0441\u0445\u043e\u0434\u0438\u043b\u0441\u044f, TQC \u0441\u0438\u043b\u044c\u043d\u043e \u043f\u0435\u0440\u0435\u043e\u0431\u0443\u0447\u0430\u043b\u0441\u044f, DroQ \u0431\u044b\u043b \u0441\u043b\u0438\u0448\u043a\u043e\u043c \u043a\u043e\u043d\u0441\u0435\u0440\u0432\u0430\u0442\u0438\u0432\u043d\u044b\u043c, PopArt \u0434\u0430\u0432\u0430\u043b \u043f\u0440\u0438\u043c\u0435\u0440\u043d\u043e \u0442\u043e \u0436\u0435, \u0447\u0442\u043e \u0438 \u043a\u043b\u0430\u0441\u0441\u0438\u0447\u0435\u0441\u043a\u0438\u0439 SAC. \u041d\u0430\u0432\u0435\u0440\u043d\u044f\u043a\u0430 \u043c\u043e\u0436\u043d\u043e \u043e\u0431\u0443\u0447\u0438\u0442\u044c \u0440\u0430\u0431\u043e\u0447\u0438\u0439 \u0430\u043b\u0433\u043e\u0440\u0438\u0442\u043c (\u043f\u043e\u043f\u0430\u0441\u0442\u044c \u0432 \u043b\u043e\u043a\u0430\u043b\u044c\u043d\u044b\u0439 \u043c\u0430\u043a\u0441\u0438\u043c\u0443\u043c) \u0441 \u043b\u044e\u0431\u044b\u043c \u0438\u0437 \u043f\u0435\u0440\u0435\u0447\u0438\u0441\u043b\u0435\u043d\u043d\u044b\u0445 \u043c\u0435\u0442\u043e\u0434\u043e\u0432, \u0438 \u0432\u0441\u0442\u0430\u043d\u0435\u0442 \u0432\u043e\u043f\u0440\u043e\u0441 \u0443\u0441\u0442\u043e\u0439\u0447\u0438\u0432\u043e\u0441\u0442\u0438 \u043f\u043e\u043b\u0438\u0442\u0438\u043a\u0438. \u0412 \u0434\u0430\u043b\u0451\u043a\u043e\u043c \u043f\u0440\u043e\u0448\u043b\u043e\u043c \u043a\u0430\u043a-\u0442\u043e \u043c\u043d\u0435 \u0443\u0434\u0430\u043b\u043e\u0441\u044c \u043e\u0431\u0443\u0447\u0438\u0442\u044c RL-\u0430\u043b\u0433\u043e\u0440\u0438\u0442\u043c, \u043a\u043e\u0442\u043e\u0440\u044b\u0439 \u0434\u0430\u0432\u0430\u043b \u0437\u0430\u043c\u0435\u0447\u0430\u0442\u0435\u043b\u044c\u043d\u044b\u0435 \u0440\u0435\u0437\u0443\u043b\u044c\u0442\u0430\u0442\u044b \u0438 \u044d\u0442\u043e \u0431\u044b\u043b \u043d\u0435 SAC, \u043d\u043e \u043c\u043e\u0434\u0435\u043b\u044c \u043e\u043a\u0430\u0437\u0430\u043b\u0430\u0441\u044c \u043d\u0435\u0432\u043e\u0441\u043f\u0440\u043e\u0438\u0437\u0432\u043e\u0434\u0438\u043c\u0430.<\/p>\n<details class=\"spoiler\">\n<summary>\u041f\u043e\u0434\u0440\u043e\u0431\u043d\u043e\u0441\u0442\u0438 \u0440\u0435\u0430\u043b\u0438\u0437\u0430\u0446\u0438\u0438<\/summary>\n<div class=\"spoiler__content\">\n<h4>gymnasium-\u0441\u043e\u0432\u043c\u0435\u0441\u0442\u0438\u043c\u0430\u044f \u0441\u0440\u0435\u0434\u0430, \u043a\u043e\u0442\u043e\u0440\u0430\u044f \u044d\u043c\u0443\u043b\u0438\u0440\u0443\u0435\u0442 \u0431\u0440\u043e\u043a\u0435\u0440\u0430:<\/h4>\n<ol>\n<li>\n<p><strong>State<\/strong> &#8212; \u0432\u0435\u043a\u0442\u043e\u0440 \u043f\u0440\u0438\u0437\u043d\u0430\u043a\u043e\u0432 (\u0442\u0435\u0445\u043d\u0438\u0447\u0435\u0441\u043a\u0438\u0435 \u0438\u043d\u0434\u0438\u043a\u0430\u0442\u043e\u0440\u044b, cross-sectional rank, carry-\u0444\u0438\u0447\u0438) \u043f\u043b\u044e\u0441 \u0441\u043e\u0441\u0442\u043e\u044f\u043d\u0438\u0435 \u043f\u043e\u0440\u0442\u0444\u0435\u043b\u044f (\u0442\u0435\u043a\u0443\u0449\u0438\u0435 \u0432\u0435\u0441\u0430, cash ratio, equity slope, drawdown \u043e\u0442 \u043f\u0438\u043a\u0430). \u0424\u0438\u043d\u0430\u043b\u044c\u043d\u0430\u044f \u0440\u0430\u0437\u043c\u0435\u0440\u043d\u043e\u0441\u0442\u044c: 60 \u0444\u0438\u0447\u0435\u0439.<\/p>\n<\/li>\n<li>\n<p><strong>Action<\/strong> &#8212; \u043d\u0435\u043f\u0440\u0435\u0440\u044b\u0432\u043d\u044b\u0439 \u0432\u0435\u043a\u0442\u043e\u0440 \u0434\u043b\u0438\u043d\u044b 6 (\u0447\u0438\u0441\u043b\u043e \u0442\u0438\u043a\u0435\u0440\u043e\u0432), \u043d\u043e\u0440\u043c\u0430\u043b\u0438\u0437\u043e\u0432\u0430\u043d\u043d\u044b\u0435 \u0437\u043d\u0430\u0447\u0435\u043d\u0438\u044f <code>[-1, 1]<\/code>, \u043a\u043e\u0442\u043e\u0440\u044b\u0435 \u043f\u0435\u0440\u0435\u0432\u043e\u0434\u044f\u0442\u0441\u044f \u0432 \u0446\u0435\u043b\u0435\u0432\u044b\u0435 \u0432\u0435\u0441\u0430 \u0430\u043a\u0442\u0438\u0432\u043e\u0432 \u0432 \u043f\u043e\u0440\u0442\u0444\u0435\u043b\u0435.<\/p>\n<\/li>\n<li>\n<p><strong>Reward<\/strong> &#8212; \u043a\u043e\u043c\u043f\u043e\u0437\u0438\u0446\u0438\u044f \u0438\u0437 \u0440\u0430\u0437\u043b\u0438\u0447\u043d\u044b\u0445 \u043f\u043e\u0434\u0445\u043e\u0434\u043e\u0432. \u041e\u0441\u043d\u043e\u0432\u0430 &#8212; \u043b\u043e\u0433\u0430\u0440\u0438\u0444\u043c\u0438\u0447\u0435\u0441\u043a\u0438 \u043f\u0440\u0435\u043e\u0431\u0440\u0430\u0437\u043e\u0432\u0430\u043d\u043d\u0430\u044f \u0434\u043e\u0445\u043e\u0434\u043d\u043e\u0441\u0442\u044c \u043f\u043e\u0440\u0442\u0444\u0435\u043b\u044f. \u0414\u043e\u0431\u0430\u0432\u043a\u0438: RCAA (cross-sectional alignment \u0441 \u0440\u0435\u0436\u0438\u043c\u043e\u043c), drawdown penalty, DSR (\u043e\u043d\u043b\u0430\u0439\u043d-\u0433\u0440\u0430\u0434\u0438\u0435\u043d\u0442 Sharpe).<\/p>\n<\/li>\n<li>\n<p><strong>Episode<\/strong> &#8212; \u0441\u043b\u0443\u0447\u0430\u0439\u043d\u0430\u044f \u0434\u043b\u0438\u043d\u0430 \u043e\u0442 100 \u0434\u043e 200 \u0442\u043e\u0440\u0433\u043e\u0432\u044b\u0445 \u0434\u043d\u0435\u0439. \u0410\u0433\u0435\u043d\u0442 \u0441\u0442\u0430\u0440\u0442\u0443\u0435\u0442 \u0441 \u043d\u0430\u0447\u0430\u043b\u044c\u043d\u044b\u043c \u043a\u0430\u043f\u0438\u0442\u0430\u043b\u043e\u043c, \u0435\u0436\u0435\u0434\u043d\u0435\u0432\u043d\u043e \u043f\u0440\u0435\u0434\u043f\u0440\u0438\u043d\u0438\u043c\u0430\u0435\u0442 \u0434\u0435\u0439\u0441\u0442\u0432\u0438\u0435, \u043f\u043e\u043b\u0443\u0447\u0430\u0435\u0442 \u043d\u0430\u0433\u0440\u0430\u0434\u0443, \u0430 \u0432 \u043a\u043e\u043d\u0446\u0435 \u044d\u043f\u0438\u0437\u043e\u0434\u0430 \u043f\u043e\u0437\u0438\u0446\u0438\u0438 \u0437\u0430\u043a\u0440\u044b\u0432\u0430\u044e\u0442\u0441\u044f \u0434\u043b\u044f \u043f\u043e\u0434\u0441\u0447\u0451\u0442\u0430 \u043c\u0435\u0442\u0440\u0438\u043a. \u042d\u0442\u043e \u043d\u0435\u043f\u043e\u0445\u043e\u0436\u0435 \u043d\u0430 \u0440\u0435\u0430\u043b\u044c\u043d\u044b\u0439 \u0440\u044b\u043d\u043e\u043a (\u0432 \u0440\u0435\u0430\u043b\u044c\u043d\u043e\u0441\u0442\u0438 \u0443 \u043d\u0430\u0441 \u0431\u0435\u0441\u043a\u043e\u043d\u0435\u0447\u043d\u044b\u0439 \u044d\u043f\u0438\u0437\u043e\u0434), \u043d\u043e \u043d\u0443\u0436\u043d\u043e \u0434\u043b\u044f \u043e\u0431\u0443\u0447\u0435\u043d\u0438\u044f, \u0430 \u0438\u043d\u0430\u0447\u0435 replay buffer \u043f\u0435\u0440\u0435\u043f\u043e\u043b\u043d\u0438\u0442\u0441\u044f \u043e\u0434\u043d\u043e\u0439 \u0434\u043b\u0438\u043d\u043d\u043e\u0439 \u043f\u043e\u0441\u043b\u0435\u0434\u043e\u0432\u0430\u0442\u0435\u043b\u044c\u043d\u043e\u0441\u0442\u044c\u044e \u0434\u0435\u0439\u0441\u0442\u0432\u0438\u0439.<\/p>\n<\/li>\n<\/ol>\n<h4>\u0426\u0438\u043a\u043b \u0442\u0440\u0435\u043d\u0438\u0440\u043e\u0432\u043a\u0438:<\/h4>\n<ol>\n<li>\n<p>\u0418\u043d\u0438\u0446\u0438\u0430\u043b\u0438\u0437\u0438\u0440\u0443\u0435\u0442\u0441\u044f \u0441\u043b\u0443\u0447\u0430\u0439\u043d\u0430\u044f \u043f\u043e\u043b\u0438\u0442\u0438\u043a\u0430 <code><em>\u03c0_0<\/em><\/code>.<\/p>\n<\/li>\n<li>\n<p>\u0410\u0433\u0435\u043d\u0442 \u0438\u0441\u043f\u043e\u043b\u043d\u044f\u0435\u0442 \u0432 \u0441\u0440\u0435\u0434\u0435 <strong>N<\/strong> \u0448\u0430\u0433\u043e\u0432 (collection), \u0441\u043a\u043b\u0430\u0434\u044b\u0432\u0430\u044f <code>(s, a, r, s')<\/code> \u043a\u043e\u0440\u0442\u0435\u0436 \u0432 replay buffer.<\/p>\n<\/li>\n<li>\n<p>\u0418\u0437 \u0431\u0443\u0444\u0435\u0440\u0430 \u0432\u044b\u0431\u0438\u0440\u0430\u0435\u0442\u0441\u044f \u043c\u0438\u043d\u0438\u0431\u0430\u0442\u0447, \u043d\u0430 \u043d\u0451\u043c \u0434\u0435\u043b\u0430\u0435\u0442\u0441\u044f \u043e\u0434\u0438\u043d \u0448\u0430\u0433 \u0433\u0440\u0430\u0434\u0438\u0435\u043d\u0442\u043d\u043e\u0433\u043e \u0441\u043f\u0443\u0441\u043a\u0430 \u0434\u043b\u044f <strong>actor<\/strong> (\u043e\u0431\u043d\u043e\u0432\u0438\u0442\u044c <em>\u03c0<\/em>) \u0438 <strong>critic<\/strong> (\u043e\u0431\u043d\u043e\u0432\u0438\u0442\u044c <em>Q<\/em>-\u0444\u0443\u043d\u043a\u0446\u0438\u044e).<\/p>\n<\/li>\n<li>\n<p>\u041f\u043e\u0432\u0442\u043e\u0440\u044f\u0442\u044c \u0441 \u0448\u0430\u0433\u0430 2, \u043f\u043e\u043a\u0430 \u043d\u0435 \u0434\u043e\u0441\u0442\u0438\u0433\u043d\u0435\u043c \u0437\u0430\u0434\u0430\u043d\u043d\u043e\u0433\u043e \u0447\u0438\u0441\u043b\u0430 <strong>N<\/strong> \u0438\u043b\u0438 \u043d\u0435 \u0441\u0440\u0430\u0431\u043e\u0442\u0430\u0435\u0442 <strong>early stopping<\/strong> \u043f\u043e \u0432\u0430\u043b\u0438\u0434\u0430\u0446\u0438\u043e\u043d\u043d\u043e\u0439 \u043c\u0435\u0442\u0440\u0438\u043a\u0435.<\/p>\n<\/li>\n<\/ol>\n<p><strong>SAC<\/strong> \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u0435\u0442 \u043f\u0440\u043e\u0441\u0442\u043e\u0439 <strong>MLP<\/strong> \u0434\u043b\u044f actor (<code>pi<\/code>) \u0438 critic (<code>qf<\/code>):<\/p>\n<div>\n<div class=\"table\">\n<table>\n<tbody>\n<tr>\n<th>\n<p align=\"left\">\u0421\u0435\u0442\u044c<\/p>\n<\/th>\n<th>\n<p align=\"left\">Hidden layers<\/p>\n<\/th>\n<th>\n<p align=\"left\">\u0410\u043a\u0442\u0438\u0432\u0430\u0446\u0438\u044f<\/p>\n<\/th>\n<\/tr>\n<tr>\n<td>\n<p align=\"left\">Actor<\/p>\n<\/td>\n<td>\n<p align=\"left\"><code>[256, 256]<\/code><\/p>\n<\/td>\n<td>\n<p align=\"left\">ReLU<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td>\n<p align=\"left\">Critic (Q-function)<\/p>\n<\/td>\n<td>\n<p align=\"left\"><code>[256, 256]<\/code><\/p>\n<\/td>\n<td>\n<p align=\"left\">ReLU<\/p>\n<\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<\/div>\n<\/div>\n<h4>set_seed() \u0434\u043b\u044f \u043f\u0441\u0435\u0432\u0434\u043e\u043a\u043e\u043d\u0442\u0440\u043e\u043b\u044f \u0438\u043d\u0438\u0446\u0438\u0430\u043b\u0438\u0437\u0430\u0446\u0438\u0438 \u0432\u0435\u0441\u043e\u0432<\/h4>\n<pre><code class=\"python\">numpy.random.seed(seed)torch.manual_seed(seed)torch.cuda.manual_seed_all(seed)random.seed(seed)env.reset(seed=seed)gym.utils.seeding.np_random(seed)<\/code><div class=\"code-explainer\"><a href=\"https:\/\/sourcecraft.dev\/\" class=\"tm-button code-explainer__link\" style=\"visibility: hidden;\"><img style=\"width:87px;height:14px;object-fit:cover;object-position:left;\"\/><\/a><\/div><\/pre>\n<\/div>\n<\/details>\n<p>\u0427\u0442\u043e \u0435\u0449\u0451 \u043d\u0443\u0436\u043d\u043e \u0434\u043e\u0431\u0430\u0432\u0438\u0442\u044c \u0432 \u0442\u043e\u0440\u0433\u043e\u0432\u0443\u044e \u0441\u0438\u0441\u0442\u0435\u043c\u0443 (\u0432\u0441\u0435 \u043f\u0430\u0440\u0430\u043c\u0435\u0442\u0440\u044b \u043d\u0438\u0436\u0435 \u043d\u043e\u0440\u043c\u0430\u043b\u0438\u0437\u043e\u0432\u0430\u043d\u044b, \u043b\u0438\u0431\u043e \u0436\u0451\u0441\u0442\u043a\u043e \u043e\u0431\u0440\u0435\u0437\u0430\u044e\u0442\u0441\u044f \u043b\u0435\u0432\u0430\u044f \u0438 \u043f\u0440\u0430\u0432\u0430\u044f \u0433\u0440\u0430\u043d\u0438\u0446\u044b):<\/p>\n<div>\n<div class=\"table\">\n<table>\n<tbody>\n<tr>\n<th data-colwidth=\"87\" width=\"87\">\n<p align=\"center\">\u0413\u0440\u0443\u043f\u043f\u0430<\/p>\n<\/th>\n<th data-colwidth=\"50\" width=\"50\">\n<p align=\"center\">dim<\/p>\n<\/th>\n<th data-colwidth=\"264\" width=\"264\">\n<p align=\"center\">\u0414\u0435\u0442\u0430\u043b\u0438<\/p>\n<\/th>\n<\/tr>\n<tr>\n<td data-colwidth=\"87\" width=\"87\">\n<p align=\"left\">\u0420\u044b\u043d\u043e\u0447\u043d\u044b\u0435 \u0444\u0438\u0447\u0438 <\/p>\n<p align=\"left\">\u00d7 6 \u0442\u0438\u043a\u0435\u0440\u043e\u0432<\/p>\n<\/td>\n<td data-colwidth=\"50\" width=\"50\">\n<p align=\"center\"><strong>48<\/strong><\/p>\n<\/td>\n<td data-colwidth=\"264\" width=\"264\">\n<p align=\"left\">close_price, macd_signal, day_sin, price_vs_ema50, atr_14, price_change_1d, rsi_14, bb_position<\/p>\n<p align=\"left\"><sub>* \u043f\u043e\u0434\u0440\u043e\u0431\u043d\u044b\u0435 \u0444\u043e\u0440\u043c\u0443\u043b\u044b \u043f\u0440\u0438\u0432\u043e\u0434\u0438\u0442\u044c \u0437\u0434\u0435\u0441\u044c \u043d\u0435 \u0431\u0443\u0434\u0443, \u0442.\u043a. \u0440\u0435\u0430\u043b\u0438\u0437\u0430\u0446\u0438\u044f \u0441\u0442\u0430\u043d\u0434\u0430\u0440\u0442\u043d\u0430\u044f (\u043c\u043e\u0436\u043d\u043e \u0432\u0437\u044f\u0442\u044c \u0432<\/sub><a href=\"https:\/\/github.com\/TA-Lib\/ta-lib-python\/tree\/master\" rel=\"noopener noreferrer nofollow\"><sub> ta-lib<\/sub><\/a><sub>)<\/sub><\/p>\n<p align=\"left\"><sub>** \u043d\u0435 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u0435\u0442\u0441\u044f \u043e\u0431\u044a\u0451\u043c \u0442\u043e\u0440\u0433\u043e\u0432 \u0438 \u0444\u0438\u0447\u0438, \u043a\u043e\u0442\u043e\u0440\u044b\u0435 \u043d\u0430 \u043d\u0451\u043c \u043e\u0441\u043d\u043e\u0432\u0430\u043d\u044b<\/sub><\/p>\n<\/td>\n<\/tr>\n<tr>\n<td data-colwidth=\"87\" width=\"87\">\n<p align=\"left\">\u0412\u0435\u0441\u00a0\u043f\u043e\u0437\u0438\u0446\u0438\u0438 <\/p>\n<p align=\"left\">\u00d7 6 \u0442\u0438\u043a\u0435\u0440\u043e\u0432<\/p>\n<\/td>\n<td data-colwidth=\"50\" width=\"50\">\n<p align=\"center\"><strong>6<\/strong><\/p>\n<\/td>\n<td data-colwidth=\"264\" width=\"264\">\n<p align=\"left\">\u0422\u0435\u043a\u0443\u0449\u0438\u0439 \u0432\u0435\u0441 \u043f\u043e\u0437\u0438\u0446\u0438\u0438 \u0432 \u043c\u043e\u043c\u0435\u043d\u0442 \u0432\u0440\u0435\u043c\u0435\u043d\u0438 <code><em>t<\/em><\/code>\u00a0\u0434\u043b\u044f \u043a\u0430\u0436\u0434\u043e\u0433\u043e \u0430\u043a\u0442\u0438\u0432\u0430<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td data-colwidth=\"87\" width=\"87\">\n<p align=\"left\">Cash-ratio<\/p>\n<\/td>\n<td data-colwidth=\"50\" width=\"50\">\n<p align=\"center\"><strong>1<\/strong><\/p>\n<\/td>\n<td data-colwidth=\"264\" width=\"264\">\n<p align=\"left\">\u0414\u043e\u043b\u044f \u0434\u0435\u043d\u0435\u0436\u043d\u044b\u0445 \u0441\u0440\u0435\u0434\u0441\u0442\u0432 \u0432 <strong>NAV<\/strong> (\u0447\u0438\u0441\u0442\u0430\u044f \u0441\u0442\u043e\u0438\u043c\u043e\u0441\u0442\u044c \u0430\u043a\u0442\u0438\u0432\u043e\u0432)<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td data-colwidth=\"87\" width=\"87\">\n<p align=\"left\">Time since last rebalance<\/p>\n<\/td>\n<td data-colwidth=\"50\" width=\"50\">\n<p align=\"center\">1<\/p>\n<\/td>\n<td data-colwidth=\"264\" width=\"264\">\n<p align=\"left\">\u041d\u0430\u0441\u043a\u043e\u043b\u044c\u043a\u043e \u0434\u0430\u0432\u043d\u043e \u0430\u0433\u0435\u043d\u0442 \u0432\u00a0\u043f\u043e\u0441\u043b\u0435\u0434\u043d\u0438\u0439 \u0440\u0430\u0437 \u0440\u0435\u0431\u0430\u043b\u0430\u043d\u0441\u0438\u0440\u043e\u0432\u0430\u043b \u043f\u043e\u0440\u0442\u0444\u0435\u043b\u044c<\/p>\n<p align=\"center\"><img decoding=\"async\" class=\"formula inline\" source=\"tslr_{i+1} = max(0, min(1, log(1 + tslr_i) \/ log(1 + 252)))\" alt=\"tslr_{i+1} = max(0, min(1, log(1 + tslr_i) \/ log(1 + 252)))\" src=\"https:\/\/habrastorage.org\/getpro\/habr\/formulas\/1\/10\/105\/1059a6737b766e15ff05e6e7b98e63a2.svg\" width=\"408\" height=\"16\" data-width=\"51.623\" data-height=\"2.262\" data-vertical-align=\"-0.566\" sizes=\"auto, (max-width: 780px) 100vw, 50vw\" srcset=\"https:\/\/habrastorage.org\/getpro\/habr\/formulas\/1\/10\/105\/1059a6737b766e15ff05e6e7b98e63a2.svg 780w,&#10;       https:\/\/habrastorage.org\/getpro\/habr\/formulas\/1\/10\/105\/1059a6737b766e15ff05e6e7b98e63a2.svg 781w\" loading=\"lazy\" decode=\"async\"\/><\/p>\n<\/td>\n<\/tr>\n<tr>\n<td data-colwidth=\"87\" width=\"87\">\n<p align=\"left\">Last action turnover<\/p>\n<\/td>\n<td data-colwidth=\"50\" width=\"50\">\n<p align=\"center\">1<\/p>\n<\/td>\n<td data-colwidth=\"264\" width=\"264\">\n<p align=\"left\">\u0417\u043d\u0430\u0447\u0435\u043d\u0438\u0435 \u043f\u043e\u0441\u043b\u0435\u0434\u043d\u0435\u0439 &#171;\u0437\u043d\u0430\u0447\u0438\u043c\u043e\u0439&#187; \u0440\u0435\u0431\u0430\u043b\u0430\u043d\u0441\u0438\u0440\u043e\u0432\u043a\u0438 (\u0442\u0430\u043a\u043e\u0439, \u0447\u0442\u043e \u043f\u0440\u0435\u0432\u044b\u0441\u0438\u043b\u0430 \u043f\u043e\u0440\u043e\u0433 0.02). \u041e\u0431\u043d\u043e\u0432\u043b\u044f\u0435\u0442\u0441\u044f \u0442\u043e\u043b\u044c\u043a\u043e \u043d\u0430 \u0448\u0430\u0433\u0430\u0445 \u0440\u0435\u0431\u0430\u043b\u0430\u043d\u0441\u0438\u0440\u043e\u0432\u043a\u0438 \u0438 \u0432 \u043f\u0440\u043e\u043c\u0435\u0436\u0443\u0442\u043a\u0430\u0445 \u043e\u0441\u0442\u0430\u0451\u0442\u0441\u044f \u043f\u0440\u0435\u0436\u043d\u0435\u0439<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td data-colwidth=\"87\" width=\"87\">\n<p align=\"left\">Pending rebalance mass<\/p>\n<\/td>\n<td data-colwidth=\"50\" width=\"50\">\n<p align=\"center\">1<\/p>\n<\/td>\n<td data-colwidth=\"264\" width=\"264\">\n<p align=\"left\">\u0421\u0440\u0435\u0434\u0430 \u0432\u0435\u0434\u0451\u0442 \u0441\u043f\u0438\u0441\u043e\u043a <code>pending_rebalances<\/code>&#8212; \u0430\u043a\u0442\u0438\u0432\u043d\u044b\u0435 \u0440\u0435\u0431\u0430\u043b\u0430\u043d\u0441\u0438\u0440\u043e\u0432\u043a\u0438 \u0437\u0430 \u043f\u043e\u0441\u043b\u0435\u0434\u043d\u0438\u0435 5 \u0434\u043d\u0435\u0439. \u041a\u0430\u0436\u0434\u0430\u044f \u0437\u0430\u043f\u0438\u0441\u044c \u0438\u043c\u0435\u0435\u0442 \u043f\u043e\u043b\u0435 <code>age<\/code> (\u043a\u043e\u043b\u0438\u0447\u0435\u0441\u0442\u0432\u043e \u0448\u0430\u0433\u043e\u0432 \u0441 \u043c\u043e\u043c\u0435\u043d\u0442\u0430 \u0441\u043e\u0432\u0435\u0440\u0448\u0435\u043d\u0438\u044f \u0440\u0435\u0431\u0430\u043b\u0430\u043d\u0441\u0438\u0440\u043e\u0432\u043a\u0438) \u0438 <code>delta_w<\/code> (\u0432\u0435\u043a\u0442\u043e\u0440 \u0438\u0437\u043c\u0435\u043d\u0435\u043d\u0438\u044f \u0432\u0435\u0441\u043e\u0432)<\/p>\n<p align=\"center\"><img decoding=\"async\" class=\"formula inline\" source=\"prm = \u03a3_{i \u2208 pending} (0.9^{age_i})  \" alt=\"prm = \u03a3_{i \u2208 pending} (0.9^{age_i})  \" src=\"https:\/\/habrastorage.org\/getpro\/habr\/formulas\/a\/a7\/a77\/a77e516520dff0b091717dcedaecb04e.svg\" width=\"192\" height=\"16\" data-width=\"24.068\" data-height=\"2.364\" data-vertical-align=\"-0.667\" sizes=\"auto, (max-width: 780px) 100vw, 50vw\" srcset=\"https:\/\/habrastorage.org\/getpro\/habr\/formulas\/a\/a7\/a77\/a77e516520dff0b091717dcedaecb04e.svg 780w,&#10;       https:\/\/habrastorage.org\/getpro\/habr\/formulas\/a\/a7\/a77\/a77e516520dff0b091717dcedaecb04e.svg 781w\" loading=\"lazy\" decode=\"async\"\/><\/p>\n<\/td>\n<\/tr>\n<tr>\n<td data-colwidth=\"87\" width=\"87\">\n<p align=\"left\">Equity-slope<\/p>\n<\/td>\n<td data-colwidth=\"50\" width=\"50\">\n<p align=\"center\"><strong>1<\/strong><\/p>\n<\/td>\n<td data-colwidth=\"264\" width=\"264\">\n<p align=\"left\">\u0414\u043b\u044f \u043f\u043e\u0441\u043b\u0435\u0434\u043d\u0438\u0445 20 \u0437\u043d\u0430\u0447\u0435\u043d\u0438\u0439 <strong>NAV<\/strong>: <\/p>\n<p align=\"left\"> <code>log_nav = log(NAV[-20:])<\/code><\/p>\n<p align=\"left\"><code>slope = Cov(t, log_nav) \/ Var(t)<\/code><\/p>\n<p align=\"left\"><code>equity_slope = slope \/ std(log_nav)<\/code><\/p>\n<p align=\"left\"><code>equity_slope = clip(equity_slope, -5, +5)<\/code><\/p>\n<p align=\"left\">\n<p>\u0421\u0435\u043c\u0430\u043d\u0442\u0438\u043a\u0430:<\/p>\n<p>equity_slope &gt; 1: \u0430\u0433\u0435\u043d\u0442 \u0432 \u0443\u0441\u0442\u043e\u0439\u0447\u0438\u0432\u043e\u043c \u0432\u043e\u0441\u0445\u043e\u0434\u044f\u0449\u0435\u043c \u0442\u0440\u0435\u043d\u0434\u0435 &#8212; NAV \u0440\u0430\u0441\u0442\u0451\u0442 \u0431\u044b\u0441\u0442\u0440\u0435\u0435, \u0447\u0435\u043c \u0441\u043e\u0431\u0441\u0442\u0432\u0435\u043d\u043d\u0430\u044f \u0432\u043e\u043b\u0430\u0442\u0438\u043b\u044c\u043d\u043e\u0441\u0442\u044c <\/p>\n<p>equity_slope \u2248 0: NAV \u0431\u043e\u043b\u0442\u0430\u0435\u0442\u0441\u044f, \u043d\u0435\u0442 \u0447\u0451\u0442\u043a\u043e\u0433\u043e \u043d\u0430\u043f\u0440\u0430\u0432\u043b\u0435\u043d\u0438\u044f<\/p>\n<p>equity_slope &lt; \u22121: \u0434\u043e\u0445\u043e\u0434\u043d\u043e\u0441\u0442\u044c \u043f\u0430\u0434\u0430\u0435\u0442, \u043f\u0440\u043e\u0438\u0433\u0440\u044b\u0432\u0430\u0435\u043c<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td data-colwidth=\"87\" width=\"87\">\n<p align=\"left\">Drawdown<\/p>\n<\/td>\n<td data-colwidth=\"50\" width=\"50\">\n<p align=\"center\"><strong>1<\/strong><\/p>\n<\/td>\n<td data-colwidth=\"264\" width=\"264\">\n<p align=\"left\">\u0422\u0435\u043a\u0443\u0449\u0430\u044f \u043f\u0440\u043e\u0441\u0430\u0434\u043a\u0430 \u043e\u0442 \u043c\u0430\u043a\u0441\u0438\u043c\u0430\u043b\u044c\u043d\u043e \u0434\u043e\u0441\u0442\u0438\u0433\u043d\u0443\u0442\u043e\u0439 \u0434\u043e\u0445\u043e\u0434\u043d\u043e\u0441\u0442\u0438 \u0437\u0430 \u044d\u043f\u0438\u0437\u043e\u0434<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td data-colwidth=\"87\" width=\"87\">\n<p align=\"left\"><strong>\u0418\u0442\u043e\u0433\u043e<\/strong><\/p>\n<\/td>\n<td data-colwidth=\"50\" width=\"50\">\n<p align=\"center\"><strong>60<\/strong><\/p>\n<\/td>\n<td data-colwidth=\"264\" width=\"264\">\n<p align=\"left\">\n<\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<\/div>\n<\/div>\n<hr\/>\n<h2>\u0413\u043b\u0430\u0432\u0430 3. \u0414\u043e\u0432\u0435\u0440\u0438\u0435 \u043a \u043c\u0435\u0442\u0440\u0438\u043a\u0430\u043c \u0438 \u0431\u0435\u043d\u0447\u043c\u0430\u0440\u043a\u0438<\/h2>\n<p>\u0425\u043e\u0440\u043e\u0448\u0435\u0439 \u043f\u0440\u0430\u043a\u0442\u0438\u043a\u043e\u0439 \u044f\u0432\u043b\u044f\u0435\u0442\u0441\u044f \u043f\u043e\u0434\u0445\u043e\u0434 \u043a \u0447\u0442\u0435\u043d\u0438\u044e \u0438\u043d\u0444\u043e\u0440\u043c\u0430\u0446\u0438\u0438 \u0432 \u0418\u043d\u0442\u0435\u0440\u043d\u0435\u0442\u0435 \u0441 \u0437\u0430\u043f\u0438\u0441\u043a\u043e\u0439 \u043d\u0430 \u043f\u043e\u043b\u044f\u0445 &#171;\u043a\u0430\u043a \u0438\u043c\u0435\u043d\u043d\u043e \u0442\u044b \u043c\u0435\u043d\u044f \u043e\u0431\u043c\u0430\u043d\u044b\u0432\u0430\u0435\u0448\u044c?&#187;. \u0415\u0441\u043b\u0438 \u043f\u0440\u0438\u043b\u043e\u0436\u0438\u0442\u044c \u0434\u043e\u0441\u0442\u0430\u0442\u043e\u0447\u043d\u043e \u0443\u0441\u0438\u043b\u0438\u0439, \u0442\u043e \u043a\u043e\u043d\u0444\u0438\u0433\u0443\u0440\u0430\u0446\u0438\u044e \u0442\u043e\u0440\u0433\u043e\u0432\u043e\u0439 \u0441\u0438\u0441\u0442\u0435\u043c\u044b (\u0433\u0438\u043f\u0435\u0440\u043f\u0430\u0440\u0430\u043c\u0435\u0442\u0440\u044b \u0430\u043b\u0433\u043e\u0440\u0438\u0442\u043c\u0430 \u0434\u043b\u044f \u0440\u0430\u0441\u043f\u0440\u0435\u0434\u0435\u043b\u0435\u043d\u0438\u044f \u0442\u0435\u0441\u0442\u043e\u0432\u043e\u0439 \u0432\u044b\u0431\u043e\u0440\u043a\u0438) \u043c\u043e\u0436\u043d\u043e \u043f\u043e\u0434\u043e\u0431\u0440\u0430\u0442\u044c \u043f\u043e\u0434 <em>\u0431\u0443\u0434\u0443\u0449\u0435\u0435<\/em> \u043f\u043e\u0432\u0435\u0434\u0435\u043d\u0438\u0435 \u0440\u044b\u043d\u043a\u0430. <\/p>\n<blockquote>\n<p>\u041c\u043e\u0434\u0435\u043b\u044c, \u043a\u043e\u0442\u043e\u0440\u0430\u044f \u0440\u0430\u0431\u043e\u0442\u0430\u0435\u0442 \u0442\u043e\u043b\u044c\u043a\u043e \u0432 \u0438\u0434\u0435\u0430\u043b\u044c\u043d\u044b\u0445 \u0443\u0441\u043b\u043e\u0432\u0438\u044f\u0445 &#8212; \u044d\u0442\u043e \u043f\u0435\u0440\u0435\u043e\u0431\u0443\u0447\u0435\u043d\u0438\u0435<\/p>\n<\/blockquote>\n<p>\u0414\u043b\u044f \u0442\u043e\u0433\u043e, \u0447\u0442\u043e\u0431\u044b \u043f\u043e\u043b\u0443\u0447\u0438\u0442\u044c \u0434\u043e\u0441\u0442\u043e\u0432\u0435\u0440\u043d\u044b\u0439 \u0440\u0435\u0437\u0443\u043b\u044c\u0442\u0430\u0442\u044b, \u0431\u044b\u043b\u0438 \u043f\u0440\u0435\u0434\u043f\u0440\u0438\u043d\u044f\u0442\u044b \u0441\u043b\u0435\u0434\u0443\u044e\u0449\u0438\u0435 \u0448\u0430\u0433\u0438:<\/p>\n<ul>\n<li>\n<p>\u043d\u0438\u043a\u0430\u043a\u0438\u0445 <a href=\"https:\/\/pandas.pydata.org\/docs\/reference\/api\/pandas.DataFrame.bfill.html\" rel=\"noopener noreferrer nofollow\">bfill<\/a>, \u0434\u0430\u0436\u0435 \u0441\u0430\u043c\u044b\u0445 \u043d\u0435\u0437\u043d\u0430\u0447\u0438\u0442\u0435\u043b\u044c\u043d\u044b\u0445 (\u0437\u0430\u043f\u0440\u0435\u0449\u0435\u043d\u043e \u043d\u0430 \u0443\u0440\u043e\u0432\u043d\u0435 <code>CLAUDE.md<\/code>);<\/p>\n<\/li>\n<li>\n<p>gap \u043c\u0435\u0436\u0434\u0443 \u0432\u044b\u0431\u043e\u0440\u043a\u0430\u043c\u0438 \u043c\u0438\u043d\u0438\u043c\u0443\u043c 30 \u0442\u043e\u0440\u0433\u043e\u0432\u044b\u0445 \u0434\u043d\u0435\u0439;<\/p>\n<\/li>\n<li>\n<p>\u0444\u0438\u0447\u0438 \u043d\u043e\u0440\u043c\u0430\u043b\u0438\u0437\u0443\u044e\u0442\u0441\u044f \u0441 rolling Z-score <strong>\u043f\u043e \u043e\u0431\u0443\u0447\u0430\u044e\u0449\u0435\u0439<\/strong> \u0432\u044b\u0431\u043e\u0440\u043a\u0435;<\/p>\n<\/li>\n<li>\n<p>\u0434\u0435\u0442\u0435\u043a\u0442\u043e\u0440 \u0440\u0435\u0436\u0438\u043c\u043e\u0432 \u0440\u044b\u043d\u043a\u0430 \u043e\u0431\u0443\u0447\u0430\u0435\u0442\u0441\u044f \u0442\u043e\u043b\u044c\u043a\u043e \u043d\u0430 <strong>train<\/strong> \u0432\u044b\u0431\u043e\u0440\u043a\u0435, \u0441\u043e\u0445\u0440\u0430\u043d\u044f\u0435\u0442\u0441\u044f \u043a\u0430\u043a \u0430\u0440\u0442\u0435\u0444\u0430\u043a\u0442 \u0438 \u0432\u043f\u043e\u0441\u043b\u0435\u0434\u0441\u0442\u0432\u0438\u0438 \u043f\u0440\u0438\u043c\u0435\u043d\u044f\u0435\u0442\u0441\u044f \u0432 \u0440\u0435\u0436\u0438\u043c\u0435 read-only \u043f\u0440\u0438 \u0440\u0430\u0431\u043e\u0442\u0435 \u0441 \u0432\u0430\u043b\u0438\u0434\u0430\u0446\u0438\u043e\u043d\u043d\u043e\u0439 \u0438 \u0442\u0435\u0441\u0442\u043e\u0432\u043e\u0439 \u0432\u044b\u0431\u043e\u0440\u043a\u0430\u043c\u0438;<\/p>\n<\/li>\n<li>\n<p>walk-forward \u0432\u0430\u043b\u0438\u0434\u0430\u0446\u0438\u044f \u043d\u0430 5 \u043e\u043a\u043d\u0430\u0445;<\/p>\n<\/li>\n<li>\n<p>\u043d\u0435 \u043c\u0435\u043d\u0435\u0435 3 seed \u0434\u043b\u044f \u043a\u0430\u0436\u0434\u043e\u0433\u043e \u043e\u043a\u043d\u0430;<\/p>\n<\/li>\n<li>\n<p>in-sample \u0432\u0430\u043b\u0438\u0434\u0430\u0446\u0438\u044f \u043d\u0430 \u043e\u0431\u0443\u0447\u0430\u044e\u0449\u0435\u0439 \u0432\u044b\u0431\u043e\u0440\u043a\u0435;<\/p>\n<\/li>\n<li>\n<p>\u0443 \u043a\u0430\u0436\u0434\u043e\u0439 \u043c\u0435\u0442\u0440\u0438\u043a\u0438 \u0434\u043e\u043b\u0436\u043d\u0430 \u0431\u044b\u0442\u044c \u0432\u0442\u043e\u0440\u0438\u0447\u043d\u0430\u044f \u0435\u0451 \u043f\u043e\u0434\u0442\u0432\u0435\u0440\u0436\u0434\u0430\u044e\u0449\u0430\u044f;<\/p>\n<\/li>\n<li>\n<p>\u0442\u0435\u0441\u0442\u043e\u0432\u0443\u044e \u0432\u044b\u0431\u043e\u0440\u043a\u0443 \u0430\u043b\u0433\u043e\u0440\u0438\u0442\u043c \u0438 \u0435\u0433\u043e \u043f\u0440\u043e\u0438\u0437\u0432\u043e\u0434\u043d\u044b\u0435 (\u043d\u0430\u043f\u0440\u0438\u043c\u0435\u0440, \u0434\u0435\u0442\u0435\u043a\u0442\u043e\u0440 \u0440\u0435\u0436\u0438\u043c\u043e\u0432) \u043d\u0430 \u044d\u0442\u0430\u043f\u0435 \u043e\u0431\u0443\u0447\u0435\u043d\u0438\u044f \u043d\u0435 \u0432\u0438\u0434\u0438\u0442 \u043d\u0438\u043a\u043e\u0433\u0434\u0430.<\/p>\n<\/li>\n<\/ul>\n<p>\u0414\u0430\u043b\u0435\u0435 \u043f\u0440\u0438\u0432\u0435\u0434\u0443 \u0442\u0430\u0431\u043b\u0438\u0446\u0443 \u0441 \u043e\u043a\u043d\u0430\u043c\u0438. \u0422\u0440\u0435\u043d\u0438\u0440\u043e\u0432\u043e\u0447\u043a\u0430\u044f \u0432\u044b\u0431\u043e\u0440\u043a\u0430 \u0438 \u043e\u043a\u043d\u043e \u0432\u0430\u043b\u0438\u0434\u0430\u0446\u0438\u0438 \u0440\u0430\u0441\u043f\u043e\u043b\u0430\u0433\u0430\u044e\u0442\u0441\u044f \u0441 gap \u0432 30 \u0434\u043d\u0435\u0439 \u0434\u043e \u0442\u0435\u0441\u0442\u043e\u0432\u043e\u0433\u043e \u043f\u0435\u0440\u0438\u043e\u0434\u0430.<\/p>\n<div>\n<div class=\"table\">\n<table>\n<tbody>\n<tr>\n<th data-colwidth=\"74\" width=\"74\">\n<p align=\"left\">\u041e\u043a\u043d\u043e<\/p>\n<\/th>\n<th data-colwidth=\"185\" width=\"185\">\n<p align=\"left\">\u0422\u0435\u0441\u0442\u043e\u0432\u044b\u0439 \u043f\u0435\u0440\u0438\u043e\u0434 <\/p>\n<\/th>\n<th>\n<p align=\"left\">\u041a\u043e\u043d\u0442\u0435\u043a\u0441\u0442<\/p>\n<\/th>\n<\/tr>\n<tr>\n<td data-colwidth=\"74\" width=\"74\">\n<p align=\"left\">WF1<\/p>\n<\/td>\n<td data-colwidth=\"185\" width=\"185\">\n<p align=\"left\">2020-07 \u2192 2021-06<\/p>\n<\/td>\n<td>\n<p align=\"left\">\u0412\u043e\u0441\u0441\u0442\u0430\u043d\u043e\u0432\u043b\u0435\u043d\u0438\u0435 \u043f\u043e\u0441\u043b\u0435 COVID, \u0432\u043e\u0441\u0445\u043e\u0434\u044f\u0449\u0438\u0439 \u0442\u0440\u0435\u043d\u0434<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td data-colwidth=\"74\" width=\"74\">\n<p align=\"left\">WF2<\/p>\n<\/td>\n<td data-colwidth=\"185\" width=\"185\">\n<p align=\"left\">2021-07 \u2192 2022-06<\/p>\n<\/td>\n<td>\n<p align=\"left\">2022, \u043c\u0435\u0434\u0432\u0435\u0436\u0438\u0439 \u0440\u044b\u043d\u043e\u043a &#8212; \u043a\u043b\u044e\u0447\u0435\u0432\u043e\u0439\u0441\u0442\u0440\u0435\u0441\u0441-\u0442\u0435\u0441\u0442<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td data-colwidth=\"74\" width=\"74\">\n<p align=\"left\">WF3<\/p>\n<\/td>\n<td data-colwidth=\"185\" width=\"185\">\n<p align=\"left\">2022-07 \u2192 2023-06<\/p>\n<\/td>\n<td>\n<p align=\"left\">\u0421\u043c\u0435\u0448\u0430\u043d\u044b\u0439 \u0440\u0435\u0436\u0438\u043c, \u0441\u043d\u0438\u0436\u0435\u043d\u043d\u044b\u0435 \u0441\u0442\u0430\u0432\u043a\u0438 \u0438 \u0432\u043e\u0441\u0441\u0442\u0430\u043d\u043e\u0432\u043b\u0435\u043d\u0438\u0435<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td data-colwidth=\"74\" width=\"74\">\n<p align=\"left\">WF4<\/p>\n<\/td>\n<td data-colwidth=\"185\" width=\"185\">\n<p align=\"left\">2023-07 \u2192 2024-06<\/p>\n<\/td>\n<td>\n<p align=\"left\">\u0411\u044b\u0447\u0438\u0439 \u0440\u044b\u043d\u043e\u043a \u0432 \u0442\u0435\u0445\u043d\u0438\u043b\u043e\u0433\u0438\u0447\u0435\u0441\u043a\u043e\u043c \u0441\u0435\u043a\u0442\u043e\u0440\u0435 \u0438 \u043a\u0440\u0438\u043f\u0442\u043e\u0432\u0430\u043b\u044e\u0442\u0430\u0445<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td data-colwidth=\"74\" width=\"74\">\n<p align=\"left\">WF5<\/p>\n<\/td>\n<td data-colwidth=\"185\" width=\"185\">\n<p align=\"left\">2024-09 \u2192 2026-04<\/p>\n<\/td>\n<td>\n<p align=\"left\">\u041d\u0430\u0441\u0442\u043e\u044f\u0449\u0435\u0435 \u0432\u0440\u0435\u043c\u044f<\/p>\n<\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<\/div>\n<\/div>\n<h3>Baseline<\/h3>\n<p>\u0412 \u043e\u0431\u044f\u0437\u0430\u0442\u0435\u043b\u044c\u043d\u043e\u043c \u043f\u043e\u0440\u044f\u0434\u043a\u0435 \u043d\u0443\u0436\u043d\u043e \u0441 \u0447\u0435\u043c-\u0442\u043e \u0441\u0440\u0430\u0432\u043d\u0438\u0432\u0430\u0442\u044c\u0441\u044f. \u0415\u0441\u043b\u0438 \u043f\u043e\u0441\u043c\u043e\u0442\u0440\u0435\u0442\u044c \u0432\u043d\u0438\u043c\u0430\u0442\u0435\u043b\u044c\u043d\u043e \u043d\u0430 \u0438\u0437\u0431\u0440\u0430\u043d\u043d\u044b\u0435 \u0430\u043a\u0442\u0438\u0432\u044b \u0432 \u043f\u043e\u0440\u0442\u0444\u0435\u043b\u0435, \u0442\u043e \u0432\u0441\u0435 \u043e\u043d\u0438 \u0438\u0434\u0443\u0442 \u0432\u0432\u0435\u0440\u0445 \u0438 \u0432\u043f\u0440\u0430\u0432\u043e. \u0417\u0430\u043b\u043e\u0433 \u0443\u0441\u043f\u0435\u0445\u0430 \u043b\u044e\u0431\u043e\u0439 \u0442\u043e\u0440\u0433\u043e\u0432\u043e\u0439 \u0441\u0442\u0440\u0430\u0442\u0435\u0433\u0438\u0438! \u041f\u043e\u044d\u0442\u043e\u043c\u0443 \u043d\u0430\u043c \u043d\u0443\u0436\u0435\u043d \u0441\u0438\u043b\u044c\u043d\u044b\u0439 \u0431\u0435\u043d\u0447\u043c\u0430\u0440\u043a. \u0420\u0435\u0433\u0443\u043b\u044f\u0440\u043d\u043e \u043f\u0440\u043e\u0433\u043e\u043d\u044f\u0435\u043c \u043f\u043e\u043b\u043d\u044b\u0439 \u0441\u043f\u0438\u0441\u043e\u043a \u0434\u043b\u044f \u043b\u0443\u0447\u0448\u0435\u0439 \u043c\u043e\u0434\u0435\u043b\u0438:<\/p>\n<ul>\n<li>\n<p>buy-and-hold;<\/p>\n<\/li>\n<li>\n<p>equal-weight \u0441 \u0435\u0436\u0435\u043c\u0435\u0441\u044f\u0447\u043d\u043e\u0439 \u0440\u0435\u0431\u0430\u043b\u0430\u043d\u0441\u0438\u0440\u043e\u0432\u043a\u043e\u0439;<\/p>\n<\/li>\n<li>\n<p>inverse-volatility D\/W\/M;<\/p>\n<\/li>\n<li>\n<p>momentum \u00d7 inverse-volatility (D\/W);<\/p>\n<\/li>\n<li>\n<p>long-short \u0432\u0430\u0440\u0438\u0430\u043d\u0442\u044b momentum \u00d7 inv_vol.<\/p>\n<\/li>\n<\/ul>\n<blockquote>\n<p><strong>\u041f\u0440\u0430\u0432\u0438\u043b\u043e<\/strong>: \u0435\u0441\u043b\u0438 \u0430\u0433\u0435\u043d\u0442 \u043d\u0435 \u043e\u0431\u0433\u043e\u043d\u044f\u0435\u0442 \u043b\u0443\u0447\u0448\u0438\u0439 \u0438\u0437 \u044d\u0442\u0438\u0445 \u0431\u0435\u043d\u0447\u043c\u0430\u0440\u043a\u043e\u0432\u00a0<em>\u043d\u0430 \u0442\u043e\u043c \u0436\u0435 \u043f\u0435\u0440\u0438\u043e\u0434\u0435, \u0441 \u0442\u0435\u043c\u0438 \u0436\u0435 \u043a\u043e\u043c\u0438\u0441\u0441\u0438\u044f\u043c\u0438, \u0441 \u0442\u0435\u043c \u0436\u0435 risk-free rate<\/em>\u00a0&#8212; \u043c\u043e\u0434\u0435\u043b\u044c \u043d\u0435 \u0441\u0442\u0430\u043d\u043e\u0432\u0438\u0442\u0441\u044f \u043d\u043e\u0432\u044b\u043c baseline.<\/p>\n<\/blockquote>\n<p>\u0412\u0435\u0441\u044c\u043c\u0430 \u0443\u0432\u0435\u0440\u0435\u043d\u043d\u044b\u0435 \u0440\u0435\u0437\u0443\u043b\u044c\u0442\u0430\u0442\u044b \u0431\u0435\u043d\u0447\u043c\u0430\u0440\u043a\u043e\u0432 \u043d\u0430 WF5 (2024-09 \u2192 2026-04), 0.04% \u043a\u043e\u043c\u0438\u0441\u0441\u0438\u044f, risk-free rate 8% (<img decoding=\"async\" class=\"formula inline\" source=\"Sharpe\/Sortino\" alt=\"Sharpe\/Sortino\" src=\"https:\/\/habrastorage.org\/getpro\/habr\/formulas\/c\/c0\/c05\/c05ca24541d89cbb85cc6833d8817048.svg\" width=\"120\" height=\"16\" data-width=\"15.932\" data-height=\"2.262\" data-vertical-align=\"-0.566\" sizes=\"auto, (max-width: 780px) 100vw, 50vw\" srcset=\"https:\/\/habrastorage.org\/getpro\/habr\/formulas\/c\/c0\/c05\/c05ca24541d89cbb85cc6833d8817048.svg 780w,&#10;       https:\/\/habrastorage.org\/getpro\/habr\/formulas\/c\/c0\/c05\/c05ca24541d89cbb85cc6833d8817048.svg 781w\" loading=\"lazy\" decode=\"async\"\/>), \u043f\u0440\u043e\u0441\u043a\u0430\u043b\u044c\u0437\u044b\u0432\u0430\u043d\u0438\u0435 <code>\u00b150%<\/code>\u00a0\u0432\u043e\u043a\u0440\u0443\u0433 \u0431\u0430\u0437\u044b:<\/p>\n<div>\n<div class=\"table\">\n<table>\n<tbody>\n<tr>\n<th>\n<p align=\"left\">Strategy<\/p>\n<\/th>\n<th>\n<p align=\"left\">Sharpe<\/p>\n<\/th>\n<th>\n<p align=\"left\">MDD<\/p>\n<\/th>\n<\/tr>\n<tr>\n<td>\n<p align=\"left\">equal_weight weekly<\/p>\n<\/td>\n<td>\n<p align=\"left\">1.248<\/p>\n<\/td>\n<td>\n<p align=\"left\">\u221213.4%<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td>\n<p align=\"left\">equal_weight daily<\/p>\n<\/td>\n<td>\n<p align=\"left\">1.215<\/p>\n<\/td>\n<td>\n<p align=\"left\">\u221213.8%<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td>\n<p align=\"left\">inverse_vol weekly<\/p>\n<\/td>\n<td>\n<p align=\"left\">1.158<\/p>\n<\/td>\n<td>\n<p align=\"left\">\u22129.3%<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td>\n<p align=\"left\">inverse_vol monthly<\/p>\n<\/td>\n<td>\n<p align=\"left\">1.086<\/p>\n<\/td>\n<td>\n<p align=\"left\">\u22128.5%<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td>\n<p align=\"left\">equal_weight buy &amp; hold<\/p>\n<\/td>\n<td>\n<p align=\"left\">1.025<\/p>\n<\/td>\n<td>\n<p align=\"left\">\u221219.4%<\/p>\n<\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<\/div>\n<\/div>\n<details class=\"spoiler\">\n<summary>\u0415\u0449\u0451 \u043e\u0434\u0438\u043d \u0432\u0430\u0436\u043d\u044b\u0439 \u0442\u0435\u0441\u0442<\/summary>\n<div class=\"spoiler__content\">\n<p>\u0427\u0442\u043e \u0435\u0441\u043b\u0438 \u043c\u043e\u0434\u0435\u043b\u044c \u0441\u043b\u0443\u0447\u0430\u0439\u043d\u043e \u043f\u0440\u0438\u0445\u043e\u0434\u0438\u0442 \u043a \u043f\u0440\u043e\u043f\u043e\u0440\u0446\u0438\u043e\u043d\u0430\u043b\u044c\u043d\u043e\u0439 \u0430\u043b\u043b\u043e\u043a\u0430\u0446\u0438\u0438, \u0431\u043b\u0438\u0437\u043a\u043e\u0439 \u043a \u0440\u0430\u0432\u043d\u043e\u0432\u0435\u0441\u043d\u043e\u043c\u0443 \u043f\u043e\u0440\u0442\u0444\u0435\u043b\u044e, \u0438 \u0435\u0451 &#171;\u0430\u043b\u044c\u0444\u0430&#187; &#8212; \u043f\u0440\u043e\u0441\u0442\u043e \u044d\u0444\u0444\u0435\u043a\u0442 \u0432\u043e\u0437\u0432\u0440\u0430\u0442\u0430 \u043a \u0441\u0440\u0435\u0434\u043d\u0435\u043c\u0443 \u0438\u043b\u0438 \u043f\u043e\u0441\u0442\u043e\u044f\u043d\u043d\u044b\u0439 \u0432\u044b\u0431\u043e\u0440 &#171;\u043f\u0440\u0430\u0432\u0438\u043b\u044c\u043d\u044b\u0445&#187; \u0430\u043a\u0442\u0438\u0432\u043e\u0432, \u0430 \u043d\u0435 \u0441\u0432\u043e\u0435\u0432\u0440\u0435\u043c\u0435\u043d\u043d\u0430\u044f \u043f\u043e\u043a\u0443\u043f\u043a\u0430?<\/p>\n<p><strong>\u041c\u0435\u0442\u043e\u0434<\/strong>: \u0431\u0435\u0440\u0451\u043c \u0440\u0435\u0430\u043b\u044c\u043d\u044b\u0435 \u0434\u0435\u0439\u0441\u0442\u0432\u0438\u044f \u043c\u043e\u0434\u0435\u043b\u0438 (\u0432\u0435\u0441\u0430 per-ticker per-day) \u0438\u00a0<strong>\u043f\u0435\u0440\u0435\u043c\u0435\u0448\u0438\u0432\u0430\u0435\u043c \u0434\u0430\u0442\u044b<\/strong>\u00a0100 \u0440\u0430\u0437, \u0441\u043e\u0445\u0440\u0430\u043d\u044f\u044f \u0440\u0430\u0441\u043f\u0440\u0435\u0434\u0435\u043b\u0435\u043d\u0438\u0435 \u0432\u0435\u0441\u043e\u0432 \u043d\u0430 \u043a\u0430\u0436\u0434\u044b\u0439 \u0434\u0435\u043d\u044c. \u0421\u0447\u0438\u0442\u0430\u0435\u043c Sharpe shuffled-\u0442\u0440\u0430\u0435\u043a\u0442\u043e\u0440\u0438\u0439.<\/p>\n<p>\u041f\u0440\u0438\u043c\u0435\u0440 \u0440\u0435\u0437\u0443\u043b\u044c\u0442\u0430\u0442\u0430:<\/p>\n<ul>\n<li>\n<p>shuffled sharpe:\u00a00.144 \u00b1 0.23;<\/p>\n<\/li>\n<li>\n<p>\u0440\u0435\u0430\u043b\u044c\u043d\u044b\u0439 sharpe:\u00a01.097;<\/p>\n<\/li>\n<li>\n<p>4.2\u03c3 \u0437\u043d\u0430\u0447\u0438\u043c\u043e\u0441\u0442\u044c\u00a0&#8212; timing \u0441\u043e\u0437\u0434\u0430\u0451\u0442 \u0440\u0435\u0430\u043b\u044c\u043d\u0443\u044e \u0430\u043b\u044c\u0444\u0443.<\/p>\n<\/li>\n<\/ul>\n<p>\u0414\u043e\u043f\u043e\u043b\u043d\u0438\u0442\u0435\u043b\u044c\u043d\u043e:\u00a0<strong>\u0441\u0440\u0435\u0434\u043d\u0438\u0435<\/strong>\u00a0\u0432\u0435\u0441\u0430 \u043c\u043e\u0434\u0435\u043b\u0438 (timing-stripped, monthly rebalance) \u0434\u0430\u044e\u0442 Sharpe 1.11 &#8212;\u00a0<em>\u0445\u0443\u0436\u0435<\/em>\u00a0\u0447\u0435\u043c equal-weight monthly (1.29). \u042d\u0442\u043e \u0437\u043d\u0430\u0447\u0438\u0442: \u043c\u043e\u0434\u0435\u043b\u044c\u043d\u0430\u044f \u0430\u043b\u044c\u0444\u0430 &#8212; \u044d\u0442\u043e\u00a0<strong>\u043f\u043e\u043b\u043d\u043e\u0441\u0442\u044c\u044e daily timing<\/strong>-\u0440\u0435\u0448\u0435\u043d\u0438\u044f, \u0430 \u043d\u0435 \u00ab\u0443\u043c\u043d\u044b\u0439 \u0441\u0440\u0435\u0434\u043d\u0438\u0439 \u0432\u0435\u0441\u00bb.<\/p>\n<p>\u042d\u0442\u043e \u043e\u0434\u0438\u043d \u0438\u0437 \u0441\u0430\u043c\u044b\u0445 \u0432\u0430\u0436\u043d\u044b\u0445 \u0442\u0435\u0441\u0442\u043e\u0432, \u043a\u043e\u0442\u043e\u0440\u044b\u0439 \u043f\u0440\u043e\u0438\u0437\u0432\u043e\u0434\u0438\u043b\u0441\u044f \u0434\u043b\u044f \u043e\u0446\u0435\u043d\u043a\u0438 \u0434\u043e\u0441\u0442\u043e\u0432\u0435\u0440\u043d\u043e\u0441\u0442\u0438 \u043c\u043e\u0434\u0435\u043b\u0438. \u0415\u0441\u043b\u0438 shuffle-test \u043d\u0435 \u043f\u043e\u043a\u0430\u0437\u044b\u0432\u0430\u0435\u0442 \u0437\u043d\u0430\u0447\u0438\u043c\u043e\u0441\u0442\u0438 &#8212; \u043c\u043e\u0434\u0435\u043b\u044c \u043d\u0435 \u0440\u0430\u0431\u043e\u0442\u0430\u0435\u0442, \u043d\u0435\u0437\u0430\u0432\u0438\u0441\u0438\u043c\u043e \u043e\u0442 \u0442\u043e\u0433\u043e, \u043a\u0430\u043a \u0432\u044b\u0433\u043b\u044f\u0434\u044f\u0442 \u0435\u0451 NAV-\u0433\u0440\u0430\u0444\u0438\u043a\u0438.<\/p>\n<\/div>\n<\/details>\n<h4>\u041a\u043b\u044e\u0447\u0435\u0432\u044b\u0435 \u043c\u0435\u0442\u0440\u0438\u043a\u0438<\/h4>\n<p>\u041d\u0430 \u043f\u0440\u0438\u043c\u0435\u0440\u0435 \u0443\u0441\u0442\u043e\u0439\u0447\u0438\u0432\u043e\u0439 \u043c\u043e\u0434\u0435\u043b\u0438 \u0442\u043e\u0440\u0433\u043e\u0432\u043e\u0439 \u0441\u0438\u0441\u0442\u0435\u043c\u044b (\u043c\u0435\u0442\u0440\u0438\u043a\u0438 \u043d\u0430 WF5 + mean WF Sharpe):<\/p>\n<div>\n<div class=\"table\">\n<table>\n<tbody>\n<tr>\n<td data-colwidth=\"98\" width=\"98\">\n<p align=\"center\">\u041c\u0435\u0442\u0440\u0438\u043a\u0430<\/p>\n<\/td>\n<td data-colwidth=\"103\" width=\"103\">\n<p align=\"center\">\u0417\u043d\u0430\u0447\u0435\u043d\u0438\u0435<\/p>\n<\/td>\n<td>\n<p align=\"left\">\u041f\u043e\u044f\u0441\u043d\u0435\u043d\u0438\u044f<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td data-colwidth=\"98\" width=\"98\">\n<p align=\"center\">Sharpe WF5<\/p>\n<\/td>\n<td data-colwidth=\"103\" width=\"103\">\n<p align=\"center\">1.452<\/p>\n<\/td>\n<td rowspan=\"2\">\n<p align=\"left\">\u0414\u043e\u0445\u043e\u0434\u043d\u043e\u0441\u0442\u044c \u043d\u0430 \u0435\u0434\u0438\u043d\u0438\u0446\u0443 \u043e\u0431\u0449\u0435\u0433\u043e \u0440\u0438\u0441\u043a\u0430. \u041e\u0442\u0432\u0435\u0447\u0430\u0435\u0442 \u043d\u0430 \u0432\u043e\u043f\u0440\u043e\u0441\u00a0&#171;<em>\u043a\u0430\u043a\u0443\u044e \u0434\u043e\u0445\u043e\u0434\u043d\u043e\u0441\u0442\u044c \u043f\u043e\u043b\u0443\u0447\u0430\u0435\u043c \u043d\u0430 \u0435\u0434\u0438\u043d\u0438\u0446\u0443 \u0432\u043e\u043b\u0430\u0442\u0438\u043b\u044c\u043d\u043e\u0441\u0442\u0438<\/em>&#171;. <\/p>\n<p align=\"left\">\u041d\u0435\u043f\u043e\u043d\u044f\u0442\u043d\u043e \u043d\u0430 \u0441\u043a\u043e\u043b\u044c\u043a\u043e WF5 \u0440\u0435\u043f\u0440\u0435\u0437\u0435\u043d\u0442\u0430\u0442\u0438\u0432\u043d\u044b\u0439 \u0443\u0447\u0430\u0441\u0442\u043e\u043a \u0434\u043b\u044f \u0438\u0442\u043e\u0433\u043e\u0432\u043e\u0439 \u043e\u0446\u0435\u043d\u043a\u0438 \u0442\u043e\u0440\u0433\u043e\u0432\u043e\u0439 \u0441\u0438\u0441\u0442\u0435\u043c\u044b, \u043f\u043e\u044d\u0442\u043e\u043c\u0443 \u043e\u0440\u0438\u0435\u043d\u0442\u0438\u0440\u0443\u0435\u043c\u0441\u044f \u043d\u0430 Sharpe 0.9-1.5 \u043d\u0430 \u0433\u043e\u0440\u0438\u0437\u043e\u043d\u0442\u0435 \u0432 1 \u0433\u043e\u0434<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td data-colwidth=\"98\" width=\"98\">\n<p align=\"center\">Sharpe<br \/>WF1-WF5<\/p>\n<\/td>\n<td data-colwidth=\"103\" width=\"103\">\n<p align=\"center\">0.916<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td data-colwidth=\"98\" width=\"98\">\n<p align=\"center\">CAGR WF5<\/p>\n<\/td>\n<td data-colwidth=\"103\" width=\"103\">\n<p align=\"center\">35.77<\/p>\n<\/td>\n<td>\n<p align=\"left\">\u042d\u043a\u0432\u0438\u0432\u0430\u043b\u0435\u043d\u0442\u043d\u0430\u044f \u0433\u043e\u0434\u043e\u0432\u0430\u044f \u0441\u0442\u0430\u0432\u043a\u0430 \u0441\u043b\u043e\u0436\u043d\u043e\u0433\u043e \u043f\u0440\u043e\u0446\u0435\u043d\u0442\u0430<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td data-colwidth=\"98\" width=\"98\">\n<p align=\"center\">MDD WF5<\/p>\n<\/td>\n<td data-colwidth=\"103\" width=\"103\">\n<p align=\"center\">13.58<\/p>\n<\/td>\n<td>\n<p align=\"left\">\u041c\u0430\u043a\u0441\u0438\u043c\u0430\u043b\u044c\u043d\u0430\u044f \u043f\u0440\u043e\u0441\u0430\u0434\u043a\u0430 \u043e\u0442 \u043b\u043e\u043a\u0430\u043b\u044c\u043d\u043e\u0433\u043e \u043f\u0438\u043a\u0430 \u0434\u043e \u043f\u043e\u0441\u043b\u0435\u0434\u0443\u044e\u0449\u0435\u0433\u043e \u043c\u0438\u043d\u0438\u043c\u0443\u043c\u0430 (\u0432 \u043f\u0440\u043e\u0446\u0435\u043d\u0442\u0430\u0445 \u043e\u0442 \u043f\u0438\u043a\u0430)<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td data-colwidth=\"98\" width=\"98\">\n<p align=\"center\">Calmar WF5<\/p>\n<\/td>\n<td data-colwidth=\"103\" width=\"103\">\n<p align=\"center\">2.635<\/p>\n<\/td>\n<td>\n<p align=\"left\">\u0421\u043a\u043e\u043b\u044c\u043a\u043e \u043f\u0440\u043e\u0446\u0435\u043d\u0442\u043e\u0432 \u0433\u043e\u0434\u043e\u0432\u043e\u0439 \u0434\u043e\u0445\u043e\u0434\u043d\u043e\u0441\u0442\u0438 \u043f\u043e\u043b\u0443\u0447\u0430\u0435\u043c \u043d\u0430 \u043a\u0430\u0436\u0434\u044b\u0439 \u043f\u0440\u043e\u0446\u0435\u043d\u0442 <em>\u043c\u0430\u043a\u0441\u0438\u043c\u0430\u043b\u044c\u043d\u043e\u0439 \u0438\u0441\u0442\u043e\u0440\u0438\u0447\u0435\u0441\u043a\u043e\u0439 \u0431\u043e\u043b\u0438<\/em><\/p>\n<\/td>\n<\/tr>\n<tr>\n<td data-colwidth=\"98\" width=\"98\">\n<p align=\"center\">Sortino WF5<\/p>\n<\/td>\n<td data-colwidth=\"103\" width=\"103\">\n<p align=\"center\">1.721<\/p>\n<\/td>\n<td>\n<p align=\"left\">\u0422\u043e \u0436\u0435, \u0447\u0442\u043e \u0438 Sharpe, \u043d\u043e \u0438\u0433\u043d\u043e\u0440\u0438\u0440\u0443\u0435\u0442 upside volatility (\u043d\u0430\u043a\u0430\u0437\u044b\u0432\u0430\u0435\u0442 \u0442\u043e\u043b\u044c\u043a\u043e \u0443\u0431\u044b\u0442\u043a\u0438)<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td data-colwidth=\"98\" width=\"98\">\n<p align=\"center\">Win Rate WF5<\/p>\n<\/td>\n<td data-colwidth=\"103\" width=\"103\">\n<p align=\"center\">66%<\/p>\n<\/td>\n<td>\n<p align=\"left\">\u0427\u0430\u0441\u0442\u043e\u0442\u0430 \u043f\u0440\u0438\u0431\u044b\u043b\u044c\u043d\u044b\u0445 \u0441\u0434\u0435\u043b\u043e\u043a<\/p>\n<p align=\"left\"><strong><sub>Trades:<\/sub><\/strong><sub>\u00a01056 BUY\/SELL \u00a0|\u00a0\u00a0<\/sub><strong><sub>HOLD:<\/sub><\/strong><sub>\u00a01356 \u00a0|\u00a0\u00a0<\/sub><strong><sub>Win Rate (SELL):<\/sub><\/strong><sub>\u00a0359\/548 (66%) \u00a0|\u00a0\u00a0<\/sub><em><sub>401 days<\/sub><\/em><\/p>\n<\/td>\n<\/tr>\n<tr>\n<td data-colwidth=\"98\" width=\"98\">\n<p align=\"center\">CV 3seed <br \/>WF5<\/p>\n<\/td>\n<td data-colwidth=\"103\" width=\"103\">\n<p align=\"center\">0.2<\/p>\n<\/td>\n<td>\n<p align=\"left\">\u0420\u0430\u0437\u0431\u0440\u043e\u0441 Sharpe \u043c\u0435\u0436\u0434\u0443 \u043d\u0435\u0441\u043a\u043e\u043b\u044c\u043a\u0438\u043c\u0438 \u0442\u0440\u0435\u043d\u0438\u0440\u043e\u0432\u043a\u0430\u043c\u0438 \u0434\u043b\u044f \u043e\u0434\u043d\u043e\u0439 \u0430\u0440\u0445\u0438\u0442\u0435\u043a\u0442\u0443\u0440\u044b \u0441 \u0440\u0430\u0437\u043d\u044b\u043c\u0438 random seeds<\/p>\n<\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<\/div>\n<\/div>\n<figure class=\"full-width \"><img decoding=\"async\" src=\"https:\/\/habrastorage.org\/r\/w1560\/getpro\/habr\/upload_files\/d3b\/dc4\/455\/d3bdc44558e9371d4a63c8033e075c35.png\" alt=\"\u041f\u0440\u0438\u043c\u0435\u0440 \u0440\u0430\u0431\u043e\u0442\u044b \u043c\u043e\u0434\u0435\u043b\u0438 \u0434\u043b\u044f WF5 \u043f\u0435\u0440\u0438\u043e\u0434\u0430\" title=\"\u041f\u0440\u0438\u043c\u0435\u0440 \u0440\u0430\u0431\u043e\u0442\u044b \u043c\u043e\u0434\u0435\u043b\u0438 \u0434\u043b\u044f WF5 \u043f\u0435\u0440\u0438\u043e\u0434\u0430\" width=\"2528\" height=\"1268\" sizes=\"auto, (max-width: 780px) 100vw, 50vw\" srcset=\"https:\/\/habrastorage.org\/r\/w780\/getpro\/habr\/upload_files\/d3b\/dc4\/455\/d3bdc44558e9371d4a63c8033e075c35.png 780w,&#10;       https:\/\/habrastorage.org\/r\/w1560\/getpro\/habr\/upload_files\/d3b\/dc4\/455\/d3bdc44558e9371d4a63c8033e075c35.png 781w\" loading=\"lazy\" decode=\"async\"\/><\/p>\n<div><figcaption>\u041f\u0440\u0438\u043c\u0435\u0440 \u0440\u0430\u0431\u043e\u0442\u044b \u043c\u043e\u0434\u0435\u043b\u0438 \u0434\u043b\u044f WF5 \u043f\u0435\u0440\u0438\u043e\u0434\u0430<\/figcaption><\/div>\n<\/figure>\n<hr\/>\n<h2>\u0413\u043b\u0430\u0432\u0430 4. \u0423\u043f\u0440\u0430\u0432\u043b\u0435\u043d\u0438\u0435 \u0440\u0430\u0437\u043c\u0435\u0440\u043e\u043c \u043f\u043e\u0437\u0438\u0446\u0438\u0438<\/h2>\n<p>\u041d\u0435\u0441\u043a\u043e\u043b\u044c\u043a\u043e \u0442\u0435\u0437\u0438\u0441\u043e\u0432, \u0438\u0441\u0445\u043e\u0434\u044f \u0438\u0437 \u043a\u043e\u0442\u043e\u0440\u044b\u0445 \u0441\u043b\u0435\u0434\u0443\u0435\u0442 \u043c\u0435\u043d\u044f\u0442\u044c \u0432\u0435\u0441\u0430 \u0432 \u043f\u043e\u0440\u0442\u0444\u0435\u043b\u0435:<\/p>\n<ul>\n<li>\n<p>\u0440\u0430\u0437\u043c\u0435\u0440\u043e\u043c \u043f\u043e\u0437\u0438\u0446\u0438\u0438 \u043d\u0443\u0436\u043d\u043e \u0443\u043f\u0440\u0430\u0432\u043b\u044f\u0442\u044c \u0442\u0430\u043a\u0438\u043c \u043e\u0431\u0440\u0430\u0437\u043e\u043c, \u0447\u0442\u043e\u0431\u044b \u043d\u0438\u043a\u0430\u043a\u043e\u0439 \u043a\u0440\u0438\u0437\u0438\u0441 \u043d\u0435 \u043e\u0431\u043d\u0443\u043b\u0438\u043b \u0432\u0430\u0448 \u043f\u043e\u0440\u0442\u0444\u0435\u043b\u044c;<\/p>\n<\/li>\n<li>\n<p>\u043a\u043e\u043d\u0441\u0435\u0440\u0432\u0430\u0442\u0438\u0432\u043d\u044b\u0439 \u0440\u0430\u0437\u043c\u0435\u0440 \u043f\u043e\u0437\u0438\u0446\u0438\u0438 \u043d\u0430\u043f\u0440\u044f\u043c\u0443\u044e \u043b\u0438\u0448\u0430\u0435\u0442 \u0434\u043e\u0445\u043e\u0434\u043d\u043e\u0441\u0442\u0438;<\/p>\n<\/li>\n<li>\n<p>\u0437\u0430\u0432\u044b\u0448\u0430\u044f \u0440\u0438\u0441\u043a \u043c\u044b \u043f\u0440\u0435\u0432\u0440\u0430\u0449\u0430\u0435\u043c \u0442\u043e\u0440\u0433\u043e\u0432\u043b\u044e \u0432 \u043b\u0443\u0434\u043e\u043c\u0430\u043d\u0438\u044e. <\/p>\n<\/li>\n<\/ul>\n<p>\u041d\u0435\u043e\u0434\u043d\u043e\u0437\u043d\u0430\u0447\u043d\u043e. \u0412 \u0438\u0442\u043e\u0433\u0435 \u0432 \u0441\u0438\u0441\u0442\u0435\u043c\u0435 \u043f\u043e \u0443\u043c\u043e\u043b\u0447\u0430\u043d\u0438\u044e \u043e\u0442\u043a\u043b\u044e\u0447\u0435\u043d\u044b \u0432\u043e\u0437\u043c\u043e\u0436\u043d\u043e\u0441\u0442\u0438 \u0442\u043e\u0440\u0433\u043e\u0432\u043b\u0438 \u0441 \u043f\u043b\u0435\u0447\u043e\u043c, \u0430 \u0442\u0430\u043a\u0436\u0435 \u043a\u043e\u0440\u043e\u0442\u043a\u0438\u0435 \u043f\u043e\u0437\u0438\u0446\u0438\u0438. <\/p>\n<pre><code class=\"markdown\">[SAC actor outputs]    \u2193  raw action w_raw \u2208 R^6Action mapping:    w_target = 0.25 \u00b7 tanh(w_raw \/ 0.25)    \u2192 target weight \u2208 [-0.25, +0.25]  (\u0434\u043e\u043b\u044f NAV \u043d\u0430 \u0442\u0438\u043a\u0435\u0440)    \u2193Long-only clip:    w_target = clip(w_target, 0, 0.25)    \u2193Turnover soft-cap (\u0435\u0441\u043b\u0438 |\u0394w| &gt; 0.3 \u0441\u0443\u043c\u043c\u0430\u0440\u043d\u043e):    w_target = smooth_cap(w_target)    \u2193[\u041a\u043e\u043d\u0432\u0435\u0440\u0442\u0430\u0446\u0438\u044f \u0434\u043e\u043b\u0438 \u2192 \u0434\u043e\u043b\u043b\u0430\u0440\u044b]:    position_dollars = w_target \u00d7 current_nav    \u2193Position sizing guard:    nav_for_cap = max(current_nav, 0.8 \u00d7 peak_nav)    hard_cap = max_position_value_pct \u00d7 nav_for_cap  (= 2.0 \u00d7 nav_for_cap)    position_dollars = min(position_dollars, hard_cap)    \u2193Execution (market orders)<\/code><div class=\"code-explainer\"><a href=\"https:\/\/sourcecraft.dev\/\" class=\"tm-button code-explainer__link\" style=\"visibility: hidden;\"><img style=\"width:14px;height:14px;object-fit:cover;object-position:left;\"\/><\/a><\/div><\/pre>\n<p>\u041b\u044e\u0431\u044b\u0435 \u0438\u0441\u043a\u0443\u0441\u0441\u0442\u0432\u0435\u043d\u043d\u044b\u0435 \u043e\u0433\u0440\u0430\u043d\u0438\u0447\u0435\u043d\u0438\u044f \u0441\u043e \u0441\u0442\u043e\u0440\u043e\u043d\u044b \u0441\u0440\u0435\u0434\u044b (\u043d\u0430\u043f\u0440\u0438\u043c\u0435\u0440, <strong>stop loss <\/strong>\u0438\u043b\u0438 <strong>post clipping <\/strong>\u0432\u0435\u0441\u043e\u0432, \u043a\u043e\u0442\u043e\u0440\u044b\u0435 \u0432\u044b\u0434\u0430\u043b \u0430\u0433\u0435\u043d\u0442) \u0441\u043e\u0432\u0435\u0442\u0443\u044e \u0432\u0432\u043e\u0434\u0438\u0442\u044c \u043d\u0430 \u044d\u0442\u0430\u043f\u0435 \u0438\u043d\u0444\u0435\u0440\u0435\u043d\u0441\u0430. \u0422\u0430\u043a \u0432\u0430\u043c \u0443\u0434\u0430\u0441\u0442\u0441\u044f \u0438\u0437\u0431\u0435\u0436\u0430\u0442\u044c \u0440\u0430\u0441\u0445\u043e\u0436\u0434\u0435\u043d\u0438\u044f \u043f\u043e\u043b\u0438\u0442\u0438\u043a\u0438 RL-\u0430\u0433\u0435\u043d\u0442\u0430, \u043a\u043e\u0433\u0434\u0430 \u043f\u0440\u0435\u0434\u043f\u0440\u0438\u043d\u044f\u0442\u043e \u043e\u0434\u043d\u043e \u0434\u0435\u0439\u0441\u0442\u0432\u0438\u0435, \u0430 \u0441\u0440\u0435\u0434\u0430 \u043f\u043e\u043b\u0443\u0447\u0430\u0435\u0442 \u0434\u0440\u0443\u0433\u043e\u0435 \u0438 \u0440\u0435\u0430\u0433\u0438\u0440\u0443\u0435\u0442 \u043d\u0430 \u0434\u0435\u0439\u0441\u0442\u0432\u0438\u0435 <em>\u0438\u043d\u0430\u0447\u0435<\/em>. \u041f\u0440\u0430\u0432\u0438\u043b\u0430 \u0434\u043b\u044f action space:<\/p>\n<ul>\n<li>\n<p><strong>turnover soft-cap<\/strong>: \u0435\u0441\u043b\u0438 L1-delta \u043c\u0435\u0436\u0434\u0443 \u0442\u0435\u043a\u0443\u0449\u0438\u043c\u0438 \u0438 \u043d\u043e\u0432\u044b\u043c\u0438 \u0432\u0435\u0441\u0430\u043c\u0438 &gt; 0.3, \u043f\u0440\u0438\u043c\u0435\u043d\u044f\u0435\u0442\u0441\u044f softmax-smoothing;<\/p>\n<\/li>\n<li>\n<p><code>rebalance_epsilon=0.01<\/code>: \u0435\u0441\u043b\u0438 \u0446\u0435\u043b\u0435\u0432\u043e\u0439 \u0432\u0435\u0441 \u043f\u043e\u0440\u0442\u0444\u0435\u043b\u044f \u043e\u0442\u043b\u0438\u0447\u0430\u0435\u0442\u0441\u044f \u043e\u0442 \u0442\u0435\u043a\u0443\u0449\u0435\u0433\u043e \u043c\u0435\u043d\u044c\u0448\u0435 \u0447\u0435\u043c \u043d\u0430 1%, \u0442\u043e \u0440\u0435\u0431\u0430\u043b\u0430\u043d\u0441\u0438\u0440\u043e\u0432\u043a\u0430 \u043d\u0435 \u043f\u0440\u043e\u0438\u0441\u0445\u043e\u0434\u0438\u0442;<\/p>\n<\/li>\n<li>\n<p><code>weight_smoothing_alpha=0.2<\/code>: EMA-\u0441\u0433\u043b\u0430\u0436\u0438\u0432\u0430\u043d\u0438\u0435 \u0446\u0435\u043b\u0435\u0432\u044b\u0445 \u0432\u0435\u0441\u043e\u0432 \u043c\u0435\u0436\u0434\u0443 \u0448\u0430\u0433\u0430\u043c\u0438.<\/p>\n<\/li>\n<\/ul>\n<figure class=\"full-width \"><img decoding=\"async\" src=\"https:\/\/habrastorage.org\/r\/w1560\/getpro\/habr\/upload_files\/70c\/b0b\/177\/70cb0b177bb3b719a2c110734339f12a.png\" alt=\"\u041f\u0440\u0438\u043c\u0435\u0440 \u043e\u0446\u0435\u043d\u043a\u0438 \u0447\u0430\u0441\u0442\u043e\u0442\u044b \u0440\u0435\u0431\u0430\u043b\u0430\u043d\u0441\u0438\u0440\u043e\u0432\u043a\u0438 \u043f\u043e\u0440\u0442\u0444\u0435\u043b\u044f\" title=\"\u041f\u0440\u0438\u043c\u0435\u0440 \u043e\u0446\u0435\u043d\u043a\u0438 \u0447\u0430\u0441\u0442\u043e\u0442\u044b \u0440\u0435\u0431\u0430\u043b\u0430\u043d\u0441\u0438\u0440\u043e\u0432\u043a\u0438 \u043f\u043e\u0440\u0442\u0444\u0435\u043b\u044f\" width=\"2524\" height=\"808\" sizes=\"auto, (max-width: 780px) 100vw, 50vw\" srcset=\"https:\/\/habrastorage.org\/r\/w780\/getpro\/habr\/upload_files\/70c\/b0b\/177\/70cb0b177bb3b719a2c110734339f12a.png 780w,&#10;       https:\/\/habrastorage.org\/r\/w1560\/getpro\/habr\/upload_files\/70c\/b0b\/177\/70cb0b177bb3b719a2c110734339f12a.png 781w\" loading=\"lazy\" decode=\"async\"\/><\/p>\n<div><figcaption>\u041f\u0440\u0438\u043c\u0435\u0440 \u043e\u0446\u0435\u043d\u043a\u0438 \u0447\u0430\u0441\u0442\u043e\u0442\u044b \u0440\u0435\u0431\u0430\u043b\u0430\u043d\u0441\u0438\u0440\u043e\u0432\u043a\u0438 \u043f\u043e\u0440\u0442\u0444\u0435\u043b\u044f<\/figcaption><\/div>\n<\/figure>\n<hr\/>\n<h2>\u0413\u043b\u0430\u0432\u0430 5. \u00a0Feature engineering vs reward-shaping<\/h2>\n<p>\u0423\u043d\u0438\u0432\u0435\u0440\u0441\u0430\u043b\u044c\u043d\u044b\u0439 \u0441\u043e\u0441\u0442\u0430\u0432 \u0444\u0438\u0447 \u043c\u043d\u0435 \u043f\u043e\u0434\u043e\u0431\u0440\u0430\u0442\u044c \u043d\u0435 \u0443\u0434\u0430\u043b\u043e\u0441\u044c. \u0412\u0435\u0440\u043e\u044f\u0442\u043d\u043e \u044f \u0437\u0430\u0441\u0442\u0440\u044f\u043b \u0432 \u043d\u0435\u043a\u043e\u043c \u043b\u043e\u043a\u0430\u043b\u044c\u043d\u043e\u043c \u043e\u043f\u0442\u0438\u043c\u0443\u043c\u0435. \u041d\u0438\u0436\u0435 \u0434\u0432\u0430 \u043d\u0430\u0431\u043e\u0440\u0430 \u0438 \u043f\u0440\u0438\u043c\u0435\u0440 \u0441\u0443\u0449\u0435\u0441\u0442\u0432\u0435\u043d\u043d\u043e\u0439 \u0440\u0430\u0437\u043d\u0438\u0446\u044b \u0432 \u0440\u0435\u0437\u0443\u043b\u044c\u0442\u0430\u0442\u0430\u0445.<\/p>\n<pre><code class=\"python\">custom_test_b = [    'price_vs_ema50', 'bb_width', 'atr_14_norm', 'up_days_10',    'vol_5d']optimal_9_1d = [    'close', 'price_vs_ema50', 'atr_14', 'rsi_14',    'macd_signal', 'bb_position', 'day_sin', 'price_change_1h',]<\/code><div class=\"code-explainer\"><a href=\"https:\/\/sourcecraft.dev\/\" class=\"tm-button code-explainer__link\" style=\"visibility: hidden;\"><img style=\"width:14px;height:14px;object-fit:cover;object-position:left;\"\/><\/a><\/div><\/pre>\n<div>\n<div class=\"table\">\n<table>\n<tbody>\n<tr>\n<th data-colwidth=\"199\" width=\"199\">\n<p align=\"left\">\u041c\u0435\u0442\u0440\u0438\u043a\u0430<\/p>\n<\/th>\n<th>\n<p align=\"left\">custom_test_b<\/p>\n<\/th>\n<th>\n<p align=\"left\">optimal_9_1d<\/p>\n<\/th>\n<th>\n<p align=\"left\">\u0394<\/p>\n<\/th>\n<\/tr>\n<tr>\n<td data-colwidth=\"199\" width=\"199\">\n<p align=\"left\">CAGR (valid period)<\/p>\n<\/td>\n<td>\n<p align=\"left\">15.88%<\/p>\n<\/td>\n<td>\n<p align=\"left\"><strong>39.45%<\/strong><\/p>\n<\/td>\n<td>\n<p align=\"left\"><strong>+23.57pp<\/strong><\/p>\n<\/td>\n<\/tr>\n<tr>\n<td data-colwidth=\"199\" width=\"199\">\n<p align=\"left\">CAGR (full data period)<\/p>\n<\/td>\n<td>\n<p align=\"left\">23.42%<\/p>\n<\/td>\n<td>\n<p align=\"left\"><strong>60.37%<\/strong><\/p>\n<\/td>\n<td>\n<p align=\"left\">+36.95pp<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td data-colwidth=\"199\" width=\"199\">\n<p align=\"left\">Sharpe (valid period)<\/p>\n<\/td>\n<td>\n<p align=\"left\">0.32<\/p>\n<\/td>\n<td>\n<p align=\"left\"><strong>1.22<\/strong><\/p>\n<\/td>\n<td>\n<p align=\"left\">+0.90<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td data-colwidth=\"199\" width=\"199\">\n<p align=\"left\">MDD (valid period)<\/p>\n<\/td>\n<td>\n<p align=\"left\">21.3%<\/p>\n<\/td>\n<td>\n<p align=\"left\">15.93%<\/p>\n<\/td>\n<td>\n<p align=\"left\">\u22125.37pp<\/p>\n<\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<\/div>\n<\/div>\n<figure class=\"full-width \"><img decoding=\"async\" src=\"https:\/\/habrastorage.org\/r\/w1560\/getpro\/habr\/upload_files\/d1b\/d89\/9b4\/d1bd899b4828bfe9e22052b2e6e19f70.png\" alt=\"\u041a\u043e\u0440\u0440\u0435\u043b\u044f\u0446\u0438\u044f \u0444\u0438\u0447 optimal_9_1d \u043d\u0430 \u043e\u0431\u0443\u0447\u0430\u044e\u0449\u0435\u0439 \u0432\u044b\u0431\u043e\u0440\u043a\u0435\" title=\"\u041a\u043e\u0440\u0440\u0435\u043b\u044f\u0446\u0438\u044f \u0444\u0438\u0447 optimal_9_1d \u043d\u0430 \u043e\u0431\u0443\u0447\u0430\u044e\u0449\u0435\u0439 \u0432\u044b\u0431\u043e\u0440\u043a\u0435\" width=\"2526\" height=\"942\" sizes=\"auto, (max-width: 780px) 100vw, 50vw\" srcset=\"https:\/\/habrastorage.org\/r\/w780\/getpro\/habr\/upload_files\/d1b\/d89\/9b4\/d1bd899b4828bfe9e22052b2e6e19f70.png 780w,&#10;       https:\/\/habrastorage.org\/r\/w1560\/getpro\/habr\/upload_files\/d1b\/d89\/9b4\/d1bd899b4828bfe9e22052b2e6e19f70.png 781w\" loading=\"lazy\" decode=\"async\"\/><\/p>\n<div><figcaption>\u041a\u043e\u0440\u0440\u0435\u043b\u044f\u0446\u0438\u044f \u0444\u0438\u0447 optimal_9_1d \u043d\u0430 \u043e\u0431\u0443\u0447\u0430\u044e\u0449\u0435\u0439 \u0432\u044b\u0431\u043e\u0440\u043a\u0435<\/figcaption><\/div>\n<\/figure>\n<p>\u0415\u0441\u0442\u044c \u0440\u0430\u0437\u043b\u0438\u0447\u043d\u044b\u0435 \u0442\u0435\u0445\u043d\u0438\u043a\u0438 \u043e\u0446\u0435\u043d\u043a\u0438, \u043d\u043e \u0432 \u0438\u0442\u043e\u0433\u0435 \u044f \u043e\u0441\u0442\u0430\u043d\u043e\u0432\u0438\u043b\u0441\u044f \u043d\u0430 optimal_9_1d. \u0418\u043d\u0442\u0443\u0438\u0442\u0438\u0432\u043d\u044b\u0439 \u043f\u043e\u0434\u0431\u043e\u0440, <a href=\"https:\/\/arxiv.org\/pdf\/1910.00174\" rel=\"noopener noreferrer nofollow\">ablation feature importance<\/a> \u0438 \u043f\u0440\u043e\u0447\u0438\u0435 \u0442\u0435\u0445\u043d\u0438\u043a\u0438 \u043d\u0435 \u043f\u0440\u0438\u043d\u0435\u0441\u043b\u0438 \u0440\u0435\u0437\u0443\u043b\u044c\u0442\u0430\u0442\u043e\u0432 \u043d\u0430 \u0442\u043e\u043c \u0431\u044e\u0434\u0436\u0435\u0442\u0435 \u0432\u0440\u0435\u043c\u0435\u043d\u0438, \u0447\u0442\u043e \u044f \u044d\u0442\u043e\u043c\u0443 \u044d\u0442\u0430\u043f\u0443 \u043e\u0442\u0432\u0451\u043b. \u0412 \u0442\u043e\u0436\u0435 \u0432\u0440\u0435\u043c\u044f \u043d\u0438 \u043e\u0434\u0438\u043d reward-tuning, \u043d\u0438 \u043e\u0434\u0438\u043d \u0430\u043b\u0433\u043e\u0440\u0438\u0442\u043c\u0438\u0447\u0435\u0441\u043a\u0438\u0439 (TQC\/DroQ\/PopArt-SAC) \u044d\u043a\u0441\u043f\u0435\u0440\u0438\u043c\u0435\u043d\u0442, \u043d\u0438 extended training (500k vs 100k \u0448\u0430\u0433\u043e\u0432) \u043d\u0435 \u0434\u0430\u043b\u0438 \u0438 \u0434\u0435\u0441\u044f\u0442\u043e\u0439 \u0434\u043e\u043b\u0438 \u0442\u0430\u043a\u043e\u0433\u043e \u0440\u043e\u0441\u0442\u0430. \u041f\u0440\u043e\u0441\u0442\u0440\u0430\u043d\u0441\u0442\u0432\u0430 \u0434\u043b\u044f \u0434\u0430\u043b\u044c\u043d\u0435\u0439\u0448\u0438\u0445 \u043e\u043f\u0442\u0438\u043c\u0438\u0437\u0430\u0446\u0438\u0439 \u0434\u043e\u0441\u0442\u0430\u0442\u043e\u0447\u043d\u043e.<\/p>\n<blockquote>\n<p>\u0413\u0438\u043f\u0435\u0440\u043f\u0430\u0440\u0430\u043c\u0435\u0442\u0440\u044b &#8212; \u044d\u0442\u043e \u0432\u0430\u0436\u043d\u043e, \u043d\u043e \u0432 \u043e\u0441\u043d\u043e\u0432\u043d\u043e\u043c \u0434\u043b\u044f \u0442\u043e\u0433\u043e, \u0447\u0442\u043e\u0431\u044b \u043d\u0435 \u0438\u0441\u043f\u043e\u0440\u0442\u0438\u0442\u044c \u043c\u043e\u0434\u0435\u043b\u044c<\/p>\n<\/blockquote>\n<p>\u041d\u0438\u0436\u0435 \u0438\u0442\u043e\u0433\u043e\u0432\u0430\u044f \u0444\u043e\u0440\u043c\u0443\u043b\u0430 \u043d\u0430\u0433\u0440\u0430\u0434\u044b \u044d\u043a\u0441\u043f\u0435\u0440\u0442\u0430. \u0412 \u043f\u043e\u0441\u043b\u0435\u0434\u0443\u044e\u0449\u0438\u0445 \u0433\u043b\u0430\u0432\u0430\u0445 \u0431\u0443\u0434\u0435\u0442 \u043c\u043d\u043e\u0433\u043e \u043f\u043e\u0434\u0440\u043e\u0431\u043d\u043e\u0441\u0442\u0435\u0439 \u043e \u0435\u0451 \u043a\u043e\u043c\u043f\u043e\u043d\u0435\u043d\u0442\u0430\u0445.<\/p>\n<pre><code class=\"python\">r_t = portfolio_reward(ret_t, loss_mul)    + rcaa_reward(alpha_over_basket, regime, scale=5.0, signs={1:+1, 2:-1, 3:+1})    + dsr_reward(sharpe_gradient, scale=1.0, halflife=20)    + drawdown_penalty(current_dd, cap=0.15, scale=2.0)    - turnover_cost(delta_weights, soft_cap=0.3, scale=0.05)    - transaction_fees(trades, fee_bps=4.0 + slippage_bps)<\/code><div class=\"code-explainer\"><a href=\"https:\/\/sourcecraft.dev\/\" class=\"tm-button code-explainer__link\" style=\"visibility: hidden;\"><img style=\"width:14px;height:14px;object-fit:cover;object-position:left;\"\/><\/a><\/div><\/pre>\n<p>\u041a\u043e\u043c\u043f\u043e\u043d\u0435\u043d\u0442\u044b:<\/p>\n<div>\n<div class=\"table\">\n<table>\n<tbody>\n<tr>\n<td data-colwidth=\"198\" width=\"198\">\n<p align=\"left\"><code>portfolio_reward<\/code><\/p>\n<\/td>\n<td data-colwidth=\"263\" width=\"263\">\n<p align=\"left\"><code>sign(ret_t) \u00d7 log(1 + |ret_t| \u00d7 100)<\/code><\/p>\n<\/td>\n<td>\n<p align=\"left\"><code>ret_t<\/code>\u00a0&#8212; \u0434\u043e\u0445\u043e\u0434\u043d\u043e\u0441\u0442\u044c \u043f\u043e\u0440\u0442\u0444\u0435\u043b\u044f \u0437\u0430 \u0448\u0430\u0433 (\u043a\u043e\u043b\u0438\u0447\u0435\u0441\u0442\u0432\u043e, \u043d\u0435 %)<\/p>\n<p align=\"left\"><code>loss_mul=1.3<\/code>\u00a0\u0430\u0441\u0438\u043c\u043c\u0435\u0442\u0440\u0438\u0447\u043d\u043e \u0443\u0441\u0438\u043b\u0438\u0432\u0430\u0435\u0442 \u0443\u0431\u044b\u0442\u043a\u0438<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td data-colwidth=\"198\" width=\"198\">\n<p align=\"left\"><code>rcaa_reward<\/code><\/p>\n<\/td>\n<td data-colwidth=\"263\" width=\"263\">\n<p align=\"left\"><code>sign[regime] \u00d7 scale \u00d7 (portfolio_return \u2212 equal_weight_return)<\/code><\/p>\n<\/td>\n<td>\n<p align=\"left\"><code>regime<\/code> &#8212; id-\u0440\u0435\u0436\u0438\u043c\u0430<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td data-colwidth=\"198\" width=\"198\">\n<p align=\"left\"><code>dsr_reward<\/code><\/p>\n<\/td>\n<td data-colwidth=\"263\" width=\"263\">\n<p align=\"left\"><code>scale \u00d7 (sharpe_t \u2212 sharpe_{t-1})<\/code><\/p>\n<\/td>\n<td>\n<p align=\"left\">EWMA Sharpe \u0441\u00a0<code>halflife=20<\/code><\/p>\n<\/td>\n<\/tr>\n<tr>\n<td data-colwidth=\"198\" width=\"198\">\n<p align=\"left\"><code>drawdown_penalty<\/code><\/p>\n<\/td>\n<td data-colwidth=\"263\" width=\"263\">\n<p align=\"left\"><code>-scale \u00d7 max(0, current_dd \u2212 cap)\u00b2<\/code><\/p>\n<\/td>\n<td>\n<p align=\"left\">\u041a\u0432\u0430\u0434\u0440\u0430\u0442\u0438\u0447\u043d\u044b\u0439 \u0448\u0442\u0440\u0430\u0444 \u0437\u0430 \u043f\u0440\u043e\u0441\u0430\u0434\u043a\u0443<\/p>\n<\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<\/div>\n<\/div>\n<figure class=\"full-width \"><img decoding=\"async\" src=\"https:\/\/habrastorage.org\/r\/w1560\/getpro\/habr\/upload_files\/e58\/0fd\/b7c\/e580fdb7cbc499a618096f6b1be95509.png\" alt=\"\u0414\u0438\u043d\u0430\u043c\u0438\u043a\u0430 \u0432\u0430\u0436\u043d\u043e\u0441\u0442\u0438 \u043a\u043e\u043c\u043f\u043e\u043d\u0435\u043d\u0442\u043e\u0432 \u0444\u0443\u043d\u043a\u0446\u0438\u0438 \u043d\u0430\u0433\u0440\u0430\u0434\u044b \u0432 \u043f\u0440\u043e\u0446\u0435\u0441\u0441\u0435 \u043e\u0431\u0443\u0447\u0435\u043d\u0438\u044f\" title=\"\u0414\u0438\u043d\u0430\u043c\u0438\u043a\u0430 \u0432\u0430\u0436\u043d\u043e\u0441\u0442\u0438 \u043a\u043e\u043c\u043f\u043e\u043d\u0435\u043d\u0442\u043e\u0432 \u0444\u0443\u043d\u043a\u0446\u0438\u0438 \u043d\u0430\u0433\u0440\u0430\u0434\u044b \u0432 \u043f\u0440\u043e\u0446\u0435\u0441\u0441\u0435 \u043e\u0431\u0443\u0447\u0435\u043d\u0438\u044f\" width=\"2520\" height=\"1264\" sizes=\"auto, (max-width: 780px) 100vw, 50vw\" srcset=\"https:\/\/habrastorage.org\/r\/w780\/getpro\/habr\/upload_files\/e58\/0fd\/b7c\/e580fdb7cbc499a618096f6b1be95509.png 780w,&#10;       https:\/\/habrastorage.org\/r\/w1560\/getpro\/habr\/upload_files\/e58\/0fd\/b7c\/e580fdb7cbc499a618096f6b1be95509.png 781w\" loading=\"lazy\" decode=\"async\"\/><\/p>\n<div><figcaption>\u0414\u0438\u043d\u0430\u043c\u0438\u043a\u0430 \u0432\u0430\u0436\u043d\u043e\u0441\u0442\u0438 \u043a\u043e\u043c\u043f\u043e\u043d\u0435\u043d\u0442\u043e\u0432 \u0444\u0443\u043d\u043a\u0446\u0438\u0438 \u043d\u0430\u0433\u0440\u0430\u0434\u044b \u0432 \u043f\u0440\u043e\u0446\u0435\u0441\u0441\u0435 \u043e\u0431\u0443\u0447\u0435\u043d\u0438\u044f<\/figcaption><\/div>\n<\/figure>\n<h2>\u0413\u043b\u0430\u0432\u0430 6. \u00a0Mixture-of-Experts \u043f\u043e \u0440\u044b\u043d\u043e\u0447\u043d\u044b\u043c \u0440\u0435\u0436\u0438\u043c\u0430\u043c<\/h2>\n<p>\u0412 \u043f\u0430\u0440\u0435 \u0441 \u0435\u0434\u0438\u043d\u0441\u0442\u0432\u0435\u043d\u043d\u044b\u043c \u0430\u0433\u0435\u043d\u0442\u043e\u043c \u0443\u0441\u043f\u0435\u0445\u0430 \u0434\u043e\u0441\u0442\u0438\u0447\u044c \u043d\u0435 \u0443\u0434\u0430\u043b\u043e\u0441\u044c. \u042f \u043e\u0431\u044a\u044f\u0441\u043d\u0438\u043b \u0434\u043b\u044f \u0441\u0435\u0431\u044f \u044d\u0442\u043e \u0437\u0430\u043f\u0440\u0435\u0434\u0435\u043b\u044c\u043d\u044b\u043c \u0448\u0443\u043c\u043e\u043c \u0432 \u0434\u0430\u043d\u043d\u044b\u0445, \u043a\u043e\u0442\u043e\u0440\u044b\u0439 \u044f \u0441\u0430\u043c \u0438 \u043f\u043e\u0440\u043e\u0434\u0438\u043b \u0447\u0435\u0440\u0435\u0437 \u043e\u0431\u0438\u043b\u0438\u0435 \u0444\u0438\u0447 \u0438 \u0442\u044f\u0436\u0451\u043b\u043e\u0433\u043e \u043e\u043f\u0438\u0441\u0430\u043d\u0438\u044f \u0441\u043e\u0441\u0442\u043e\u044f\u043d\u0438\u044f \u0441\u0440\u0435\u0434\u044b. \u0412 \u0442\u043e\u0436\u0435 \u0432\u0440\u0435\u043c\u044f \u0431\u0435\u0437 \u044d\u0442\u043e\u0433\u043e RL-\u0430\u0433\u0435\u043d\u0442 \u043b\u0438\u0431\u043e \u043f\u0435\u0440\u0435\u043e\u0431\u0443\u0447\u0430\u043b\u0441\u044f, \u043b\u0438\u0431\u043e \u043d\u0435\u0434\u043e\u043e\u0431\u0443\u0447\u0430\u043b\u0441\u044f. \u0412 \u043b\u0443\u0447\u0448\u0435\u043c \u0441\u043b\u0443\u0447\u0430\u0435 \u043f\u043e\u043b\u0443\u0447\u0430\u043b\u0430\u0441\u044c equal weight \u0441\u0442\u0440\u0430\u0442\u0435\u0433\u0438\u044f, \u043d\u043e \u0444\u0438\u043d\u0430\u043d\u0441\u043e\u0432\u044b\u0435 \u0440\u044b\u043d\u043a\u0438 \u0432\u0435\u0434\u0443\u0442 \u0441\u0435\u0431\u044f \u0440\u0430\u0434\u0438\u043a\u0430\u043b\u044c\u043d\u043e \u043f\u043e-\u0440\u0430\u0437\u043d\u043e\u043c\u0443 \u0432 \u0440\u0430\u0437\u043d\u044b\u0445 \u0440\u0435\u0436\u0438\u043c\u0430\u0445: <\/p>\n<ul>\n<li>\n<p>\u0437\u0430\u0449\u0438\u0442\u043d\u043e\u0435 \u043f\u043e\u0432\u0435\u0434\u0435\u043d\u0438\u0435 \u043d\u0430 \u043f\u0430\u0434\u0430\u044e\u0449\u0435\u043c \u0440\u044b\u043d\u043a\u0435;<\/p>\n<\/li>\n<li>\n<p>\u0430\u0433\u0440\u0435\u0441\u0441\u0438\u0432\u043d\u043e\u0435 \u043d\u0430\u043a\u043e\u043f\u043b\u0435\u043d\u0438\u0435 \u0432\u043e \u0432\u0440\u0435\u043c\u044f \u0440\u043e\u0441\u0442\u0430;<\/p>\n<\/li>\n<li>\n<p>\u0443\u0434\u0435\u0440\u0436\u0430\u043d\u0438\u0435 \u043f\u043e\u0437\u0438\u0446\u0438\u0439 \u0432 \u0431\u043e\u043a\u043e\u0432\u0438\u043a\u0435;<\/p>\n<\/li>\n<li>\n<p>\u043e\u0441\u0442\u043e\u0440\u043e\u0436\u043d\u044b\u0439 \u043d\u0430\u0431\u043e\u0440 \u0432\u043e \u0432\u0440\u0435\u043c\u044f \u0445\u0430\u043e\u0441\u0430.<\/p>\n<\/li>\n<\/ul>\n<p>\u041e\u0442\u0441\u044e\u0434\u0430 \u0432\u043e\u0437\u043d\u0438\u043a\u043b\u0430 \u0438\u0434\u0435\u044f <strong>Mixture-of-Experts <\/strong>\u0441<strong> \u0440\u0435\u0436\u0438\u043c-\u0434\u0435\u0442\u0435\u043a\u0442\u043e\u0440\u043e\u043c<\/strong>.<\/p>\n<h3>\u041a\u043b\u0430\u0441\u0441\u0438\u0444\u0438\u043a\u0430\u0446\u0438\u044f \u0440\u0435\u0436\u0438\u043c\u043e\u0432<\/h3>\n<p>\u0417\u0430\u0431\u0435\u0433\u0430\u044f \u0432\u043f\u0435\u0440\u0451\u0434 \u044f \u043f\u043e\u043f\u0440\u043e\u0431\u043e\u0432\u0430\u043b <a href=\"https:\/\/en.wikipedia.org\/wiki\/Hidden_Markov_model\" rel=\"noopener noreferrer nofollow\">HMM<\/a>, <a href=\"https:\/\/en.wikipedia.org\/wiki\/Multilayer_perceptron\" rel=\"noopener noreferrer nofollow\">MLP<\/a> \u0438 \u0434\u0430\u0436\u0435 \u043e\u0442\u0434\u0435\u043b\u044c\u043d\u043e\u0433\u043e RL-\u0430\u0433\u0435\u043d\u0442\u0430, \u043d\u043e \u0432\u0441\u0435 \u043e\u043d\u0438 \u043e\u043a\u0430\u0437\u0430\u043b\u0438\u0441\u044c \u0445\u0443\u0436\u0435 \u0441\u0442\u0440\u043e\u0433\u043e\u0433\u043e \u043a\u043b\u0430\u0441\u0441\u0438\u0444\u0438\u043a\u0430\u0442\u043e\u0440\u0430 \u043d\u0430 \u043e\u0441\u043d\u043e\u0432\u0435 \u043f\u0440\u0430\u0432\u0438\u043b. \u0427\u0435\u0442\u044b\u0440\u0435 \u043c\u0430\u043a\u0440\u043e\u0440\u0435\u0436\u0438\u043c\u0430:<\/p>\n<div>\n<div class=\"table\">\n<table>\n<tbody>\n<tr>\n<th data-colwidth=\"112\" width=\"112\">\n<p align=\"left\">\u0420\u0435\u0436\u0438\u043c<\/p>\n<\/th>\n<th data-colwidth=\"50\" width=\"50\">\n<p align=\"left\">ID<\/p>\n<\/th>\n<th>\n<p align=\"left\">\u0418\u0434\u0435\u044f<\/p>\n<\/th>\n<\/tr>\n<tr>\n<td data-colwidth=\"112\" width=\"112\">\n<p align=\"left\">sideways<\/p>\n<\/td>\n<td data-colwidth=\"50\" width=\"50\">\n<p align=\"left\">0<\/p>\n<\/td>\n<td>\n<p align=\"left\">\u041e\u0442\u0441\u0443\u0442\u0441\u0442\u0432\u0438\u0435 \u0442\u0440\u0435\u043d\u0434\u0430 \u0438 \u043d\u0438\u0437\u043a\u0430\u044f \u0432\u043e\u043b\u0430\u0442\u0438\u043b\u044c\u043d\u043e\u0441\u0442\u044c<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td data-colwidth=\"112\" width=\"112\">\n<p align=\"left\">uptrend<\/p>\n<\/td>\n<td data-colwidth=\"50\" width=\"50\">\n<p align=\"left\">1<\/p>\n<\/td>\n<td>\n<p align=\"left\">\u041d\u0430\u043f\u0440\u0430\u0432\u043b\u0435\u043d\u043d\u043e\u0435 \u0434\u0432\u0438\u0436\u0435\u043d\u0438\u0435 \u0432\u0432\u0435\u0440\u0445<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td data-colwidth=\"112\" width=\"112\">\n<p align=\"left\">downtrend<\/p>\n<\/td>\n<td data-colwidth=\"50\" width=\"50\">\n<p align=\"left\">2<\/p>\n<\/td>\n<td>\n<p align=\"left\">\u0423\u0441\u0442\u043e\u0439\u0447\u0438\u0432\u044b\u0439 \u043d\u0438\u0441\u0445\u043e\u0434\u044f\u0449\u0438\u0439 \u0442\u0440\u0435\u043d\u0434<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td data-colwidth=\"112\" width=\"112\">\n<p align=\"left\">chaotic<\/p>\n<\/td>\n<td data-colwidth=\"50\" width=\"50\">\n<p align=\"left\">3<\/p>\n<\/td>\n<td>\n<p align=\"left\">\u0412\u044b\u0441\u043e\u043a\u0430\u044f \u0432\u043e\u043b\u0430\u0442\u0438\u043b\u044c\u043d\u043e\u0441\u0442\u044c \u0431\u0435\u0437 \u0442\u0440\u0435\u043d\u0434\u0430<\/p>\n<\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<\/div>\n<\/div>\n<h3>\u041f\u043e\u0447\u0435\u043c\u0443 \u0438\u043c\u0435\u043d\u043d\u043e 4 \u0440\u0435\u0436\u0438\u043c\u0430, \u0430 \u043d\u0435 2, 6 \u0438\u043b\u0438 8. \u042d\u0442\u043e \u043d\u0435 \u044d\u0441\u0442\u0435\u0442\u0438\u0447\u0435\u0441\u043a\u0438\u0439 \u0432\u044b\u0431\u043e\u0440, \u0430 \u0440\u0435\u0437\u0443\u043b\u044c\u0442\u0430\u0442\u044b \u044d\u043a\u0441\u043f\u0435\u0440\u0438\u043c\u0435\u043d\u0442\u043e\u0432:<\/h3>\n<ol>\n<li>\n<p><strong>2 \u0440\u0435\u0436\u0438\u043c\u0430 (bull\/bear)<\/strong>\u00a0&#8212; \u043f\u0440\u043e\u0438\u0433\u0440\u044b\u0432\u0430\u0435\u0442, \u043f\u043e\u0442\u043e\u043c\u0443 \u0447\u0442\u043e boring-sideways \u0438 chaotic-bear \u0442\u0440\u0435\u0431\u0443\u044e\u0442\u00a0<em>\u0440\u0430\u0437\u043d\u043e\u0433\u043e<\/em>\u00a0\u043f\u043e\u0432\u0435\u0434\u0435\u043d\u0438\u044f; \u043e\u0431\u044a\u0435\u0434\u0438\u043d\u0435\u043d\u0438\u0435 \u044d\u0442\u0438\u0445 \u043f\u0435\u0440\u0438\u043e\u0434\u043e\u0432 \u0432 \u043e\u0434\u043d\u043e\u0433\u043e \u042d\u043a\u0441\u043f\u0435\u0440\u0442\u0430 \u0434\u0430\u0451\u0442 \u0441\u0440\u0435\u0434\u043d\u0435\u0435 \u0438 \u043d\u0435\u043c\u043e\u0442\u0438\u0432\u0438\u0440\u043e\u0432\u0430\u043d\u043d\u043e\u0435 \u043f\u043e\u0432\u0435\u0434\u0435\u043d\u0438\u0435.<\/p>\n<\/li>\n<li>\n<p><strong>5\u20136 \u0440\u0435\u0436\u0438\u043c\u043e\u0432<\/strong>\u00a0(<code>high-vol uptrend<\/code>, <code>high-vol downtrend<\/code>, <code>high-vol chaotic<\/code>) &#8212; \u043f\u0440\u043e\u0432\u0430\u043b\u0438\u043b\u0438\u0441\u044c \u0432 \u0441\u043b\u0435\u0434\u0441\u0442\u0432\u0438\u0438 \u043d\u0435\u0434\u043e\u0441\u0442\u0430\u0442\u043a\u0430 \u0434\u0430\u043d\u043d\u044b\u0445. \u041f\u043e\u0441\u043b\u0435 \u0440\u0430\u0437\u043c\u0435\u0442\u043a\u0438 \u0438\u0441\u0442\u043e\u0440\u0438\u0447\u0435\u0441\u043a\u043e\u0433\u043e \u043e\u043a\u043d\u0430 2017\u20132024 \u0434\u043b\u044f \u0447\u0438\u0441\u0442\u043e\u0433\u043e \u00a0<code>high_vol_uptrend<\/code>\u00a0\u043e\u0441\u0442\u0430\u043b\u043e\u0441\u044c 6 \u0434\u043d\u0435\u0439. \u041c\u043e\u0436\u043d\u043e \u043a\u043e\u043d\u0435\u0447\u043d\u043e \u0434\u0432\u0438\u0433\u0430\u0442\u044c \u043f\u043e\u043b\u0437\u0443\u043d\u043a\u0438, \u043d\u043e \u0440\u0430\u0434\u0438\u043a\u0430\u043b\u044c\u043d\u043e \u044d\u0442\u043e \u0441\u0443\u0442\u0438 \u043d\u0435 \u043c\u0435\u043d\u044f\u043b\u043e \u0438 \u0440\u0435\u0437\u0443\u043b\u044c\u0442\u0430\u0442\u044b \u0431\u044b\u043b\u0438 \u043d\u0435\u0432\u044b\u0434\u0430\u044e\u0449\u0438\u0435\u0441\u044f. \u041d\u0430 5 \u0440\u0435\u0436\u0438\u043c\u0430\u0445 (<code>+downtrend_volatile<\/code>) \u043d\u043e\u0432\u044b\u0439 \u043f\u0435\u0440\u0438\u043e\u0434 \u0432 99 \u0434\u043d\u0435\u0439 \u044d\u0444\u0444\u0435\u043a\u0442\u0430 \u043d\u0435 \u0432\u043e\u0437\u044b\u043c\u0435\u043b.<\/p>\n<\/li>\n<\/ol>\n<h3>\u041f\u0440\u0438\u0437\u043d\u0430\u043a\u0438 F1\u2013F6<\/h3>\n<p>\u0418\u0442\u043e\u0433\u043e\u0432\u044b\u0439 \u043a\u043b\u0430\u0441\u0441\u0438\u0444\u0438\u043a\u0430\u0442\u043e\u0440 \u0440\u0430\u0431\u043e\u0442\u0430\u0435\u0442 \u043d\u0430 6 \u043f\u0440\u0438\u0437\u043d\u0430\u043a\u0430\u0445. \u041f\u043e \u0442\u043e\u043c\u0443 \u043a\u0430\u043a \u043e\u043d\u043e \u0440\u0430\u0431\u043e\u0442\u0430\u0435\u0442 \u043c\u043e\u0436\u043d\u043e \u0435\u0449\u0451 \u043e\u0434\u043d\u0443 \u0441\u0442\u0430\u0442\u044c\u044e \u043d\u0430\u043f\u0438\u0441\u0430\u0442\u044c, \u043f\u043e\u044d\u0442\u043e\u043c\u0443 \u0431\u0443\u0434\u0443 \u043a\u0440\u0430\u0442\u043e\u043a:<\/p>\n<div>\n<div class=\"table\">\n<table>\n<tbody>\n<tr>\n<th data-colwidth=\"60\" width=\"60\">\n<p align=\"left\">\u2116<\/p>\n<\/th>\n<th data-colwidth=\"156\" width=\"156\">\n<p align=\"left\">\u041f\u0440\u0438\u0437\u043d\u0430\u043a<\/p>\n<\/th>\n<th>\n<p align=\"left\">\u041e\u043f\u0438\u0441\u0430\u043d\u0438\u0435<\/p>\n<\/th>\n<\/tr>\n<tr>\n<td data-colwidth=\"60\" width=\"60\">\n<p align=\"left\">F1<\/p>\n<\/td>\n<td data-colwidth=\"156\" width=\"156\">\n<p align=\"left\">ROC-10<\/p>\n<\/td>\n<td>\n<p align=\"left\">10-\u0434\u043d\u0435\u0432\u043d\u0430\u044f rate of change <em>\u0440\u0438\u0441\u043a\u043e\u0432\u044b\u0445<\/em> \u0442\u0438\u043a\u0435\u0440\u043e\u0432 (NDX, BTC)<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td data-colwidth=\"60\" width=\"60\">\n<p align=\"left\">F2<\/p>\n<\/td>\n<td data-colwidth=\"156\" width=\"156\">\n<p align=\"left\">log_vol_ratio<\/p>\n<\/td>\n<td>\n<p align=\"left\">log(vol_20d \/ vol_60d) &#8212; short-term vs long-term vol<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td data-colwidth=\"60\" width=\"60\">\n<p align=\"left\">F3<\/p>\n<\/td>\n<td data-colwidth=\"156\" width=\"156\">\n<p align=\"left\">VoV (vol-of-vol)<\/p>\n<\/td>\n<td>\n<p align=\"left\">\u0434\u0432\u0443\u0445-EMA \u043c\u0435\u0442\u0440\u0438\u043a\u0430 \u0432\u0430\u0440\u0438\u0430\u0446\u0438\u0438 \u0432\u043e\u043b\u0430\u0442\u0438\u043b\u044c\u043d\u043e\u0441\u0442\u0438<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td data-colwidth=\"60\" width=\"60\">\n<p align=\"left\">F4<\/p>\n<\/td>\n<td data-colwidth=\"156\" width=\"156\">\n<p align=\"left\">VIX z-score<\/p>\n<\/td>\n<td>\n<p align=\"left\">VIX, \u0441\u0442\u0430\u043d\u0434\u0430\u0440\u0442\u0438\u0437\u0438\u0440\u043e\u0432\u0430\u043d\u043d\u044b\u0439 \u043f\u043e 252-\u0434\u043d\u0435\u0432\u043d\u043e\u043c\u0443 rolling-\u043e\u043a\u043d\u0443<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td data-colwidth=\"60\" width=\"60\">\n<p align=\"left\">F5<\/p>\n<\/td>\n<td data-colwidth=\"156\" width=\"156\">\n<p align=\"left\">avg pairwise corr<\/p>\n<\/td>\n<td>\n<p align=\"left\">\u0421\u0440\u0435\u0434\u043d\u044f\u044f \u043f\u0430\u0440\u043d\u0430\u044f \u043a\u043e\u0440\u0440\u0435\u043b\u044f\u0446\u0438\u044f \u043f\u043e risky pair&#8217;\u0430\u043c (60-\u0434\u043d\u0435\u0432\u043d\u043e\u0435 \u043e\u043a\u043d\u043e)<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td data-colwidth=\"60\" width=\"60\">\n<p align=\"left\">F6<\/p>\n<\/td>\n<td data-colwidth=\"156\" width=\"156\">\n<p align=\"left\">signal ROC<\/p>\n<\/td>\n<td>\n<p align=\"left\">10-day ROC <em>\u0441\u0438\u0433\u043d\u0430\u043b\u044c\u043d\u044b\u0445<\/em> \u0442\u0438\u043a\u0435\u0440\u043e\u0432<\/p>\n<\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<\/div>\n<\/div>\n<details class=\"spoiler\">\n<summary>\u041f\u043e\u0434\u0440\u043e\u0431\u043d\u043e\u0441\u0442\u0438 \u0440\u0435\u0430\u043b\u0438\u0437\u0430\u0446\u0438\u0438<\/summary>\n<div class=\"spoiler__content\">\n<h3>F1: ROC-10<\/h3>\n<pre><code>log_ret[t, i]  = log(close[t, i] \/ close[t-1, i]) # per-ticker log-returnsroc10[t, i]    = \u03a3 log_ret[t-9:t+1, i]            # 10-day rolling sumF1[t]          = mean_i(roc10[t, i])              # cross-ticker average<\/code><div class=\"code-explainer\"><a href=\"https:\/\/sourcecraft.dev\/\" class=\"tm-button code-explainer__link\" style=\"visibility: hidden;\"><img style=\"width:14px;height:14px;object-fit:cover;object-position:left;\"\/><\/a><\/div><\/pre>\n<p><code>market_tickers <\/code>&#8212; \u043f\u043e\u0434\u043c\u043d\u043e\u0436\u0435\u0441\u0442\u0432\u043e \u0434\u043b\u044f \u0443\u0441\u0440\u0435\u0434\u043d\u0435\u043d\u0438\u044f. \u0421\u0435\u0439\u0447\u0430\u0441 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u0435\u0442\u0441\u044f\u00a0<code>['NDX', 'BTC']<\/code>. \u041e\u0441\u0442\u0430\u043b\u044c\u043d\u044b\u0435 \u0442\u0438\u043a\u0435\u0440\u044b \u0438\u0441\u043a\u043b\u044e\u0447\u0435\u043d\u044b, \u0447\u0442\u043e\u0431\u044b F1 \u043d\u0435 \u043f\u043e\u0434\u0430\u0432\u043b\u044f\u043b\u0441\u044f \u043a\u043e\u043d\u0442\u0440\u0446\u0438\u043a\u043b\u0438\u0447\u0435\u0441\u043a\u0438\u043c \u0434\u0432\u0438\u0436\u0435\u043d\u0438\u0435\u043c \u0437\u0430\u0449\u0438\u0442\u043d\u044b\u0445 \u0430\u043a\u0442\u0438\u0432\u043e\u0432 \u0432 \u043a\u0440\u0438\u0437\u0438\u0441\u044b. F1 \u0438\u0433\u0440\u0430\u0435\u0442 \u0440\u043e\u043b\u044c \u0442\u0435\u0440\u043c\u043e\u043c\u0435\u0442\u0440\u0430 \u0430\u043f\u043f\u0435\u0442\u0438\u0442\u0430 \u043a \u0440\u0438\u0441\u043a\u0443, \u0430 \u043d\u0435 \u0441\u0440\u0435\u0434\u043d\u0435\u0435 \u043f\u043e \u0432\u0441\u0435\u043c\u0443 \u043f\u043e\u0440\u0442\u0444\u0435\u043b\u044e.<\/p>\n<p>\u0420\u043e\u043b\u044c \u0432 \u043a\u043b\u0430\u0441\u0441\u0438\u0444\u0438\u043a\u0430\u0446\u0438\u0438: F1 \u0432\u043c\u0435\u0441\u0442\u0435 \u0441 F6 \u0440\u0430\u0437\u0434\u0435\u043b\u044f\u0435\u0442 \u0442\u0440\u0435\u043d\u0434\u043e\u0432\u044b\u0435 \u0440\u0435\u0436\u0438\u043c\u044b (uptrend\/downtrend) \u043e\u0442 sideways\/chaotic. \u0418\u043d\u0442\u0435\u0440\u043f\u0440\u0435\u0442\u0430\u0446\u0438\u044f:<\/p>\n<ul>\n<li>\n<p><code>F1 &gt; +0.05<\/code>\u00a0(~5% \u0437\u0430 10 \u0434\u043d\u0435\u0439): \u0443\u0441\u0442\u043e\u0439\u0447\u0438\u0432\u044b\u0439 uptrend \u0432 risk-\u0430\u043a\u0442\u0438\u0432\u0430\u0445<\/p>\n<\/li>\n<li>\n<p><code>F1 \u2248 0<\/code>: \u0431\u043e\u043a\u043e\u0432\u0438\u043a \u0438\u043b\u0438 \u0441\u043c\u0435\u0448\u0430\u043d\u043d\u043e\u0435 \u0434\u0432\u0438\u0436\u0435\u043d\u0438\u0435<\/p>\n<\/li>\n<li>\n<p><code>F1 &lt; \u22120.05<\/code>: \u043c\u0435\u0434\u0432\u0435\u0436\u0438\u0439 \u0442\u0440\u0435\u043d\u0434<\/p>\n<\/li>\n<\/ul>\n<hr\/>\n<h3>F2: log_vol_ratio (20d\/60d volatility ratio)<\/h3>\n<pre><code>log_ret[t, i]  = log(close[t, i] \/ close[t-1, i])vol_20[t, i]   = std(log_ret[t-19:t+1, i]) \u00d7 \u221a252     # annualizedvol_60[t, i]   = std(log_ret[t-59:t+1, i]) \u00d7 \u221a252mean_vol_20[t] = mean_i(vol_20[t, i])                 # cross-ticker meanmean_vol_60[t] = mean_i(vol_60[t, i])F2[t]          = log(mean_vol_20[t] \/ mean_vol_60[t])<\/code><div class=\"code-explainer\"><a href=\"https:\/\/sourcecraft.dev\/\" class=\"tm-button code-explainer__link\" style=\"visibility: hidden;\"><img style=\"width:14px;height:14px;object-fit:cover;object-position:left;\"\/><\/a><\/div><\/pre>\n<p>\u0418\u0437\u043c\u0435\u0440\u044f\u0435\u0442 \u0443\u0441\u043a\u043e\u0440\u0435\u043d\u0438\u0435\/\u0437\u0430\u043c\u0435\u0434\u043b\u0435\u043d\u0438\u0435 \u0432\u043e\u043b\u0430\u0442\u0438\u043b\u044c\u043d\u043e\u0441\u0442\u0438:<\/p>\n<ul>\n<li>\n<p><code>F2 &gt; 0<\/code>: 20-\u0434\u043d\u0435\u0432\u043d\u0430\u044f \u0432\u043e\u043b\u0438\u0442\u0430\u043b\u044c\u043d\u043e\u0441\u0442\u044c \u0432\u044b\u0448\u0435 60-\u0434\u043d\u0435\u0432\u043d\u043e\u0439 \u2192 \u0440\u044b\u043d\u043e\u043a <em>\u043d\u0430\u0433\u0440\u0435\u0432\u0430\u0435\u0442\u0441\u044f<\/em><\/p>\n<\/li>\n<li>\n<p><code>F2 \u2248 0<\/code>: \u0441\u0442\u0430\u0431\u0438\u043b\u044c\u043d\u0430\u044f \u0432\u043e\u043b\u0430\u0442\u0438\u043b\u044c\u043d\u043e\u0441\u0442\u044c<\/p>\n<\/li>\n<li>\n<p><code>F2 &lt; 0<\/code>: \u0432\u043e\u043b\u0430\u0442\u0438\u043b\u044c\u043d\u043e\u0441\u0442\u044c \u043f\u0430\u0434\u0430\u0435\u0442 \u2192 \u0440\u044b\u043d\u043e\u043a <em>\u043e\u0441\u0442\u044b\u0432\u0430\u0435\u0442<\/em><\/p>\n<\/li>\n<\/ul>\n<p>\u041e\u0442\u0440\u0430\u0436\u0430\u0435\u0442 \u0440\u0430\u0437\u043d\u0438\u0446\u0443 \u043c\u0435\u0436\u0434\u0443\u00a0<strong>\u043d\u0430\u0440\u0430\u0441\u0442\u0430\u044e\u0449\u0435\u0439 \u0432\u043e\u043b\u0430\u0442\u0438\u043b\u044c\u043d\u043e\u0441\u0442\u044c\u044e<\/strong>\u00a0\u0438\u00a0<strong>\u0441\u0442\u0430\u0431\u0438\u043b\u044c\u043d\u043e\u0439<\/strong>. \u0412\u043c\u0435\u0441\u0442\u0435 \u0441 F3 \u0444\u043e\u0440\u043c\u0438\u0440\u0443\u0435\u0442 \u0433\u0440\u0443\u043f\u043f\u0443 \u043e\u0440\u0438\u0435\u043d\u0442\u0438\u0440\u043e\u0432\u0430\u043d\u043d\u044b\u0445 \u043d\u0430 \u0432\u043e\u043b\u0430\u0442\u0438\u043b\u044c\u043d\u043e\u0441\u0442\u044c \u043f\u0440\u0438\u0437\u043d\u0430\u043a\u043e\u0432, \u043a\u043e\u0442\u043e\u0440\u044b\u0435 \u043f\u043e\u043a\u0430\u0437\u044b\u0432\u0430\u044e\u0442 \u0441\u0442\u0435\u043f\u0435\u043d\u044c \u0445\u0430\u043e\u0441\u0430 \u043d\u0430 \u0440\u044b\u043d\u043a\u0435, \u0430 \u043d\u0435 \u0442\u043e\u043b\u044c\u043a\u043e \u043d\u0430\u043f\u0440\u0430\u0432\u043b\u0435\u043d\u0438\u0435.<\/p>\n<hr\/>\n<h3>F3: VoV (Vol-of-Vol)<\/h3>\n<h4>Batch \u0432\u0435\u0440\u0441\u0438\u044f (\u0434\u043b\u044f training)<\/h4>\n<pre><code>per_vol[t, i]  = std(log_ret[t-20:t+1, i]) \u00d7 \u221a252        # 21-day annualized vol per tickermean_vol[t]    = mean_i(per_vol[t, i])                   # cross-ticker mean volF3_batch[t]    = std(mean_vol[t-19:t+1])                 # 20-day rolling std of vol itself<\/code><div class=\"code-explainer\"><a href=\"https:\/\/sourcecraft.dev\/\" class=\"tm-button code-explainer__link\" style=\"visibility: hidden;\"><img style=\"width:14px;height:14px;object-fit:cover;object-position:left;\"\/><\/a><\/div><\/pre>\n<h4>Online \u0432\u0435\u0440\u0441\u0438\u044f (\u0434\u043b\u044f inference) &#8212;\u00a0VoVEstimator<\/h4>\n<pre><code>r\u00b2_t = mean_i(r_t,i\u00b2)   # cross-ticker mean squared returnfast_var_t = \u03bb_fast \u00b7 fast_var_{t-1} + (1-\u03bb_fast) \u00b7 r\u00b2_t     # fast EMA variance, halflife=10slow_var_t = \u03bb_slow \u00b7 slow_var_{t-1} + (1-\u03bb_slow) \u00b7 r\u00b2_t     # slow EMA variance, halflife=40vov_raw_t  = |fast_var_t \u2212 slow_var_t|F3_t       = \u03bb_smooth \u00b7 F3_{t-1} + (1-\u03bb_smooth) \u00b7 vov_raw_t  # smoothing, halflife=20<\/code><div class=\"code-explainer\"><a href=\"https:\/\/sourcecraft.dev\/\" class=\"tm-button code-explainer__link\" style=\"visibility: hidden;\"><img style=\"width:14px;height:14px;object-fit:cover;object-position:left;\"\/><\/a><\/div><\/pre>\n<p>\u0418\u0437\u043c\u0435\u0440\u044f\u0435\u0442 \u043d\u0430\u0441\u043a\u043e\u043b\u044c\u043a\u043e \u0441\u0430\u043c\u0430 \u0432\u043e\u043b\u0430\u0442\u0438\u043b\u044c\u043d\u043e\u0441\u0442\u044c \u0432\u0430\u0440\u044c\u0438\u0440\u0443\u0435\u0442\u0441\u044f. \u0422.\u0435. \u043d\u0435 <strong>\u043a\u0430\u043a \u0441\u0438\u043b\u044c\u043d\u043e \u0434\u0432\u0438\u0433\u0430\u044e\u0442\u0441\u044f \u0446\u0435\u043d\u044b<\/strong>, \u0430 <strong>\u043d\u0430\u0441\u043a\u043e\u043b\u044c\u043a\u043e \u043d\u0435\u043f\u0440\u0435\u0434\u0441\u043a\u0430\u0437\u0443\u0435\u043c\u044b \u0434\u0432\u0438\u0436\u0435\u043d\u0438\u044f \u043c\u0435\u0436\u0434\u0443 \u0434\u043d\u044f\u043c\u0438<\/strong>. \u0418\u043d\u0442\u0435\u0440\u043f\u0440\u0435\u0442\u0430\u0446\u0438\u044f:<\/p>\n<ul>\n<li>\n<p><strong>\u043d\u0438\u0437\u043a\u0438\u0439 F3<\/strong>: \u0443\u0441\u0442\u043e\u0439\u0447\u0438\u0432\u044b\u0439 \u0440\u0435\u0436\u0438\u043c (\u0441\u0442\u0430\u0431\u0438\u043b\u044c\u043d\u044b\u0439 \u0442\u0440\u0435\u043d\u0434 \u0438\u043b\u0438 \u0443\u0441\u0442\u043e\u0439\u0447\u0438\u0432\u044b\u0439 \u0431\u043e\u043a\u043e\u0432\u0438\u043a) &#8212; \u0432\u043e\u043b\u0430\u0442\u0438\u043b\u044c\u043d\u043e\u0441\u0442\u044c \u0441\u0435\u0433\u043e\u0434\u043d\u044f \u2248 \u0432\u043e\u043b\u0430\u0442\u0438\u043b\u044c\u043d\u043e\u0441\u0442\u0438 \u0432\u0447\u0435\u0440\u0430;<\/p>\n<\/li>\n<li>\n<p><strong>\u0432\u044b\u0441\u043e\u043a\u0438\u0439 F3<\/strong>: \u0445\u0430\u043e\u0442\u0438\u0447\u043d\u044b\u0439 \u0440\u0435\u0436\u0438\u043c &#8212; \u0441\u0435\u0433\u043e\u0434\u043d\u044f \u0442\u0438\u0448\u0438\u043d\u0430, \u0437\u0430\u0432\u0442\u0440\u0430 \u043a\u0440\u0443\u043f\u043d\u044b\u0435 \u0441\u0432\u0435\u0447\u0438, \u043f\u043e\u0441\u043b\u0435\u0437\u0430\u0432\u0442\u0440\u0430 \u0441\u043d\u043e\u0432\u0430 \u0442\u0438\u0448\u0438\u043d\u0430.<\/p>\n<\/li>\n<\/ul>\n<h4>\u0418\u043d\u0442\u0435\u0440\u043f\u0440\u0435\u0442\u0430\u0446\u0438\u044f halflife = 10 vs 40 \u0434\u043d\u0435\u0439:<\/h4>\n<ul>\n<li>\n<p><code>fast_halflife=10<\/code>: \u0440\u0435\u0430\u0433\u0438\u0440\u0443\u0435\u0442 \u043d\u0430 \u0434\u0432\u0438\u0436\u0435\u043d\u0438\u044f \u043d\u0435\u0434\u0435\u043b\u044c\u043d\u043e\u0439 \u0447\u0430\u0441\u0442\u043e\u0442\u044b;<\/p>\n<\/li>\n<li>\n<p><code>slow_halflife=40<\/code>: \u043c\u0435\u043d\u044f\u0435\u0442\u0441\u044f \u0437\u0430 6\u20138 \u043d\u0435\u0434\u0435\u043b\u044c;<\/p>\n<\/li>\n<li>\n<p><code>smooth_halflife=20<\/code>: \u0444\u0438\u043d\u0430\u043b\u044c\u043d\u043e\u0435 \u0441\u0433\u043b\u0430\u0436\u0438\u0432\u0430\u043d\u0438\u0435 \u0434\u043b\u044f \u0441\u0442\u0430\u0431\u0438\u043b\u0438\u0437\u0430\u0446\u0438\u0438 \u0441\u0438\u0433\u043d\u0430\u043b\u0430.<\/p>\n<\/li>\n<\/ul>\n<hr\/>\n<h3>F4: VIX z-score<\/h3>\n<pre><code>\u03bc[t]  = mean(VIX[t-251:t+1])\u03c3[t]  = std(VIX[t-251:t+1])        # clip: lower bound 1e-4F4[t] = (VIX[t] \u2212 \u03bc[t]) \/ \u03c3[t]<\/code><div class=\"code-explainer\"><a href=\"https:\/\/sourcecraft.dev\/\" class=\"tm-button code-explainer__link\" style=\"visibility: hidden;\"><img style=\"width:14px;height:14px;object-fit:cover;object-position:left;\"\/><\/a><\/div><\/pre>\n<h4>\u0418\u0437\u043c\u0435\u0440\u044f\u0435\u0442 market stress (panic indicator):<\/h4>\n<ul>\n<li>\n<p><code>VIX z-score &gt; +1.5<\/code>: implied volatility \u0441\u0438\u043b\u044c\u043d\u043e \u0432\u044b\u0448\u0435 \u043d\u043e\u0440\u043c\u044b \u2192 crisis;<\/p>\n<\/li>\n<li>\n<p><code>VIX z-score \u2248 0<\/code>: \u043d\u043e\u0440\u043c\u0430\u043b\u044c\u043d\u0430\u044f \u0441\u0440\u0435\u0434\u0430;<\/p>\n<\/li>\n<li>\n<p><code>VIX z-score &lt; \u22121<\/code>: \u043f\u0440\u0435\u0434\u0432\u0435\u0441\u0442\u043d\u0438\u043a \u043a\u0440\u0443\u043f\u043d\u043e\u0433\u043e \u0434\u0432\u0438\u0436\u0435\u043d\u0438\u044f.<\/p>\n<\/li>\n<\/ul>\n<hr\/>\n<h3>F5: avg pairwise correlation<\/h3>\n<pre><code>log_ret[t, i] = log(close[t, i] \/ close[t-1, i])# \u0418\u0441\u043a\u043b\u044e\u0447\u0430\u0435\u043c signal_tickers (TLT) \u0438\u0437 \u043d\u0430\u0431\u043e\u0440\u0430risk_cols     = [c for c in log_ret.columns if c not in exclude_cols]pairs         = all (i, j) pairs from risk_colsfor each pair (i, j):    corr_ij[t] = rolling_corr(log_ret[i], log_ret[j], window=60)F5[t]         = mean over all pairs of corr_ij[t]<\/code><div class=\"code-explainer\"><a href=\"https:\/\/sourcecraft.dev\/\" class=\"tm-button code-explainer__link\" style=\"visibility: hidden;\"><img style=\"width:14px;height:14px;object-fit:cover;object-position:left;\"\/><\/a><\/div><\/pre>\n<p>\u0414\u043b\u044f \u0438\u043d\u0444\u0435\u0440\u0435\u043d\u0441\u0430\u00a0\u0438\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u0435\u0442 \u043d\u0435 rolling, \u0430\u00a0EMA correlation matrix:<\/p>\n<pre><code>risk_indices  = [indices of tickers NOT in signal_tickers]sub_corr      = corr_matrix[risk_indices, risk_indices]triu_values   = sub_corr[upper triangle, k=1]  # off-diagonalF5            = mean(triu_values)<\/code><div class=\"code-explainer\"><a href=\"https:\/\/sourcecraft.dev\/\" class=\"tm-button code-explainer__link\" style=\"visibility: hidden;\"><img style=\"width:14px;height:14px;object-fit:cover;object-position:left;\"\/><\/a><\/div><\/pre>\n<h3>\u0418\u0437\u043c\u0435\u0440\u044f\u0435\u0442 \u043a\u043e\u0440\u0440\u0435\u043b\u044f\u0446\u0438\u044e \u0440\u0438\u0441\u043a\u043e\u0432\u044b\u0445 \u0430\u043a\u0442\u0438\u0432\u043e\u0432. \u0412 crisis-\u043c\u043e\u043c\u0435\u043d\u0442\u044b &#171;\u0432\u0441\u0451 \u043f\u0430\u0434\u0430\u0435\u0442 \u0432\u043c\u0435\u0441\u0442\u0435&#187; \u0438 \u043a\u043e\u0440\u0440\u0435\u043b\u044f\u0446\u0438\u0438 \u0432\u0437\u0440\u044b\u0432\u0430\u044e\u0442\u0441\u044f. \u0412 \u043e\u0431\u044b\u0447\u043d\u044b\u0435 \u0432\u0440\u0435\u043c\u0435\u043d\u0430 BTC \u0438 NDX \u0434\u0432\u0438\u0436\u0443\u0442\u0441\u044f \u0441\u043b\u0430\u0431\u043e \u0441\u0432\u044f\u0437\u0430\u043d\u043d\u043e, \u0437\u043e\u043b\u043e\u0442\u043e \u0441 \u043d\u0435\u0444\u0442\u044c\u044e \u0441\u043b\u0430\u0431\u043e \u0441\u0432\u044f\u0437\u0430\u043d\u043e \u0438 \u0442.\u0434. \u0418\u043d\u0442\u0435\u0440\u043f\u0440\u0435\u0442\u0430\u0446\u0438\u044f:<\/h3>\n<ul>\n<li>\n<p><code>F5 \u2248 0.1\u20130.3<\/code>: \u043d\u043e\u0440\u043c\u0430\u043b\u044c\u043d\u0430\u044f \u0434\u0438\u0432\u0435\u0440\u0441\u0438\u0444\u0438\u043a\u0430\u0446\u0438\u044f;<\/p>\n<\/li>\n<li>\n<p><code>F5 \u2248 0.5+<\/code>: <strong>corollation crisis<\/strong> \u0438\u043b\u0438 \u0432\u0441\u0435 risk-\u0430\u043a\u0442\u0438\u0432\u044b \u0434\u0432\u0438\u0436\u0443\u0442\u0441\u044f \u0441\u0438\u043d\u0445\u0440\u043e\u043d\u043d\u043e (\u043a\u043b\u0430\u0441\u0441\u0438\u0447\u0435\u0441\u043a\u0438\u0439 risk-off signal);<\/p>\n<\/li>\n<li>\n<p><code>F5 &lt; 0.1<\/code>: \u043d\u0435\u043e\u0431\u044b\u0447\u043d\u043e \u043d\u0438\u0437\u043a\u0430\u044f \u0432\u0437\u0430\u0438\u043c\u043e\u0441\u0432\u044f\u0437\u044c, \u0447\u0430\u0441\u0442\u044b\u0439 \u043f\u0440\u0435\u0434\u0432\u0435\u0441\u0442\u043d\u0438\u043a \u0441\u043b\u043e\u043c\u0430 \u0442\u0440\u0435\u043d\u0434\u0430.<\/p>\n<\/li>\n<\/ul>\n<p>F5 \u0441\u0447\u0438\u0442\u0430\u0435\u0442\u0441\u044f\u00a0<strong>\u0442\u043e\u043b\u044c\u043a\u043e \u043f\u043e risk-\u0430\u043a\u0442\u0438\u0432\u0430\u043c<\/strong>. \u041a\u043e\u043d\u0442\u0440\u0446\u0438\u043a\u043b\u0438\u0447\u0435\u0441\u043a\u0438\u0435 \u0432\u044b\u043d\u043e\u0441\u044f\u0442\u0441\u044f \u0432 F6. <code>window=60<\/code>\u0434\u0430\u0451\u0442 SE(Pearson) \u2248 0.13 &#8212; \u0434\u043e\u0441\u0442\u0430\u0442\u043e\u0447\u043d\u043e \u0441\u0442\u0430\u0431\u0438\u043b\u044c\u043d\u044b\u0439 \u0441\u0438\u0433\u043d\u0430\u043b. F5 \u043e\u043f\u0438\u0441\u044b\u0432\u0430\u0435\u0442 \u043f\u043e\u0432\u0435\u0434\u0435\u043d\u0438\u0435 \u0442\u043e\u043b\u043f\u044b, \u043a\u043e\u0433\u0434\u0430 VIX \u0435\u0449\u0451 \u043d\u0435 \u0443\u0441\u043f\u0435\u043b \u043e\u0442\u0440\u0435\u0430\u0433\u0438\u0440\u043e\u0432\u0430\u0442\u044c \u0438 \u043c\u043e\u0436\u0435\u0442 \u043e\u043f\u0435\u0440\u0435\u0436\u0430\u0442\u044c F4 \u043d\u0430 \u043d\u0435\u0441\u043a\u043e\u043b\u044c\u043a\u043e \u0434\u043d\u0435\u0439 \u0432 \u043d\u0435\u043a\u043e\u0442\u043e\u0440\u044b\u0445 \u043a\u0440\u0438\u0437\u0438\u0441\u043d\u044b\u0445 \u044d\u043f\u0438\u0437\u043e\u0434\u0430\u0445.<\/p>\n<hr\/>\n<h3>F6: signal_ROC<\/h3>\n<pre><code>log_ret[t, i] = log(close[t, i] \/ close[t-1, i])  # \u0442\u043e\u043b\u044c\u043a\u043e \u0434\u043b\u044f signal_tickersroc[t, i]     = \u03a3 log_ret[t-9:t+1, i]  # 10-day sum per signal tickerF6[t]         = mean over signal_tickers of roc[t]<\/code><div class=\"code-explainer\"><a href=\"https:\/\/sourcecraft.dev\/\" class=\"tm-button code-explainer__link\" style=\"visibility: hidden;\"><img style=\"width:14px;height:14px;object-fit:cover;object-position:left;\"\/><\/a><\/div><\/pre>\n<p>\u0418\u0437\u043c\u0435\u0440\u044f\u0435\u0442 \u043d\u0430\u043f\u0440\u0430\u0432\u043b\u0435\u043d\u0438\u0435 \u043a\u043e\u043d\u0442\u0440\u0446\u0438\u043a\u043b\u0438\u0447\u0435\u0441\u043a\u0438\u0445 \u0430\u043a\u0442\u0438\u0432\u043e\u0432. \u0412 \u043d\u0430\u0448\u0435\u043c \u0441\u043b\u0443\u0447\u0430\u0435 <code>signal_tickers = ['TLT']<\/code>. \u0418\u043d\u0442\u0435\u0440\u043f\u0440\u0435\u0442\u0430\u0446\u0438\u044f \u0434\u043b\u044f TLT:<\/p>\n<ul>\n<li>\n<p><code>F6 &gt; 0.02<\/code>\u00a0(TLT \u0440\u0430\u0441\u0442\u0451\u0442 \u043d\u0430 \u22652% \u0437\u0430 10 \u0434\u043d\u0435\u0439): \u0438\u043d\u0432\u0435\u0441\u0442\u043e\u0440\u044b \u0431\u0435\u0433\u0443\u0442 \u0432 \u0431\u043e\u043d\u0434\u044b, risk-off;<\/p>\n<\/li>\n<li>\n<p><code>F6 \u2248 0<\/code>: \u043d\u0435\u0439\u0442\u0440\u0430\u043b\u044c\u043d\u043e, \u0431\u043e\u043d\u0434\u044b \u0441\u0442\u0430\u0431\u0438\u043b\u044c\u043d\u044b;<\/p>\n<\/li>\n<li>\n<p><code>F6 &lt; \u22120.02<\/code>\u00a0(TLT \u043f\u0430\u0434\u0430\u0435\u0442):\u00a0\u0438\u043d\u0432\u0435\u0441\u0442\u043e\u0440\u044b \u043f\u0440\u043e\u0434\u0430\u044e\u0442 \u0431\u043e\u043d\u0434\u044b \u0438 \u0432\u043e\u0437\u0432\u0440\u0430\u0449\u0430\u044e\u0442\u0441\u044f \u0432 \u0440\u0438\u0441\u043a.<\/p>\n<\/li>\n<\/ul>\n<h4>\u041f\u043e\u0447\u0435\u043c\u0443 \u0438\u043c\u0435\u043d\u043d\u043e 10 \u0434\u043d\u0435\u0439<\/h4>\n<p>\u041a\u043e\u043d\u0441\u0438\u0441\u0442\u0435\u043d\u0442\u043d\u043e\u0441\u0442\u044c \u0441 F1, \u0447\u0442\u043e \u0434\u0435\u043b\u0430\u0435\u0442 F1 \u0438 F6 \u0441\u0440\u0430\u0432\u043d\u0438\u043c\u044b\u043c\u0438 \u0438 \u0440\u0430\u0437\u043d\u0438\u0446\u0430\u00a0<code>F1 \u2212 F6<\/code>\u00a0\u0438\u043d\u0442\u0435\u0440\u043f\u0440\u0435\u0442\u0438\u0440\u0443\u0435\u0442\u0441\u044f \u043a\u0430\u043a \u0441\u043f\u0440\u0435\u0434 \u043c\u0435\u0436\u0434\u0443 \u043d\u0430\u043f\u0440\u0430\u0432\u043b\u0435\u043d\u0438\u0435\u043c \u0440\u0438\u0441\u043a\u043e\u0432\u044b\u0445 \u0430\u043a\u0442\u0438\u0432\u043e\u0432 \u0438  \u0441\u043f\u0430\u0441\u0438\u0442\u0435\u043b\u044c\u043d\u044b\u0445.<\/p>\n<\/div>\n<\/details>\n<p>\u041d\u043e\u0432\u044b\u0439 \u0440\u0435\u0436\u0438\u043c \u0444\u0438\u043a\u0441\u0438\u0440\u0443\u0435\u0442\u0441\u044f \u0442\u043e\u043b\u044c\u043a\u043e \u043f\u043e\u0441\u043b\u0435 \u043f\u043e\u0434\u0442\u0432\u0435\u0440\u0436\u0434\u0435\u043d\u0438\u044f (\u043f\u0440\u0435\u043e\u0434\u043e\u043b\u0435\u043d\u0438\u0435 \u043f\u043e\u0440\u043e\u0433\u0430):<\/p>\n<ul>\n<li>\n<p>chaotic: 1 \u0434\u0435\u043d\u044c (\u0435\u0441\u043b\u0438 \u043d\u0430\u0447\u0430\u043b\u0441\u044f \u0445\u0430\u043e\u0441 &#8212; \u043e\u0442\u043a\u043b\u0438\u043a\u0430\u0442\u044c\u0441\u044f \u043c\u0433\u043d\u043e\u0432\u0435\u043d\u043d\u043e);<\/p>\n<\/li>\n<li>\n<p>downtrend: 2 \u0434\u043d\u044f;<\/p>\n<\/li>\n<li>\n<p>sideways: 2 \u0434\u043d\u044f;<\/p>\n<\/li>\n<li>\n<p>uptrend: 5 \u0434\u043d\u0435\u0439 (\u043b\u043e\u0436\u043d\u044b\u0435 uptrend-\u0441\u0438\u0433\u043d\u0430\u043b\u044b \u0434\u043e\u0440\u043e\u0433\u0438 &#8212; \u043a\u043e\u043d\u0441\u0435\u0440\u0432\u0430\u0442\u0438\u0432\u043d\u043e).<\/p>\n<\/li>\n<\/ul>\n<figure class=\"full-width \"><img decoding=\"async\" src=\"https:\/\/habrastorage.org\/r\/w1560\/getpro\/habr\/upload_files\/2a9\/c03\/024\/2a9c030249cfe9c6d3aec7a044487cf0.png\" alt=\"\u041f\u0440\u0438\u043c\u0435\u0440 \u0440\u0430\u0437\u043c\u0435\u0442\u043a\u0438 \u0440\u0435\u0436\u0438\u043c\u043e\u0432 \u0438 \u0440\u0430\u0441\u043f\u0440\u0435\u0434\u0435\u043b\u0435\u043d\u0438\u044f \u0434\u043e\u0445\u043e\u0434\u043d\u043e\u0441\u0442\u0438 \" title=\"\u041f\u0440\u0438\u043c\u0435\u0440 \u0440\u0430\u0437\u043c\u0435\u0442\u043a\u0438 \u0440\u0435\u0436\u0438\u043c\u043e\u0432 \u0438 \u0440\u0430\u0441\u043f\u0440\u0435\u0434\u0435\u043b\u0435\u043d\u0438\u044f \u0434\u043e\u0445\u043e\u0434\u043d\u043e\u0441\u0442\u0438 \" width=\"2524\" height=\"1246\" sizes=\"auto, (max-width: 780px) 100vw, 50vw\" srcset=\"https:\/\/habrastorage.org\/r\/w780\/getpro\/habr\/upload_files\/2a9\/c03\/024\/2a9c030249cfe9c6d3aec7a044487cf0.png 780w,&#10;       https:\/\/habrastorage.org\/r\/w1560\/getpro\/habr\/upload_files\/2a9\/c03\/024\/2a9c030249cfe9c6d3aec7a044487cf0.png 781w\" loading=\"lazy\" decode=\"async\"\/><\/p>\n<div><figcaption>\u041f\u0440\u0438\u043c\u0435\u0440 \u0440\u0430\u0437\u043c\u0435\u0442\u043a\u0438 \u0440\u0435\u0436\u0438\u043c\u043e\u0432 \u0438 \u0440\u0430\u0441\u043f\u0440\u0435\u0434\u0435\u043b\u0435\u043d\u0438\u044f \u0434\u043e\u0445\u043e\u0434\u043d\u043e\u0441\u0442\u0438 <\/figcaption><\/div>\n<\/figure>\n<p>\u0414\u043b\u044f \u043a\u0430\u0436\u0434\u043e\u0433\u043e \u0440\u0435\u0436\u0438\u043c\u0430 \u043e\u0431\u0443\u0447\u0430\u0435\u0442\u0441\u044f\u00a0<strong>\u043e\u0442\u0434\u0435\u043b\u044c\u043d\u044b\u0439 SAC-\u0430\u0433\u0435\u043d\u0442<\/strong>, \u0432\u0438\u0434\u044f\u0449\u0438\u0439 \u0442\u043e\u043b\u044c\u043a\u043e \u0448\u0430\u0433\u0438 \u0441\u0432\u043e\u0435\u0433\u043e \u0440\u0435\u0436\u0438\u043c\u0430 \u0432\u043e \u0432\u0440\u0435\u043c\u044f \u043e\u0431\u0443\u0447\u0435\u043d\u0438\u044f. \u042d\u043a\u0441\u043f\u0435\u0440\u0442\u044b \u043d\u0435\u0437\u0430\u0432\u0438\u0441\u0438\u043c\u044b \u0438 \u043d\u0435\u0442 \u043d\u0438\u043a\u0430\u043a\u0438\u0445 \u043e\u0431\u0449\u0438\u0445 soft-\u0441\u0435\u0442\u0435\u0439. \u041f\u043e\u0440\u043e\u0433\u0438 (\u043a\u0430\u043b\u0438\u0431\u0440\u043e\u0432\u0430\u043d\u044b \u0434\u043b\u044f \u043f\u0435\u0440\u0438\u043e\u0434\u0430 2017-2023):<\/p>\n<div>\n<div class=\"table\">\n<table>\n<tbody>\n<tr>\n<th data-colwidth=\"229\" width=\"229\">\n<p align=\"left\">\u0424\u0438\u0447\u0430<\/p>\n<\/th>\n<th data-colwidth=\"168\" width=\"168\">\n<p align=\"left\">\u041a\u0432\u0430\u043d\u0442\u0438\u043b\u044c \u043f\u043e\u0440\u043e\u0433\u0430<\/p>\n<\/th>\n<th>\n<p align=\"left\">\u0418\u043d\u0442\u0435\u0440\u043f\u0440\u0435\u0442\u0430\u0446\u0438\u044f<\/p>\n<\/th>\n<\/tr>\n<tr>\n<td data-colwidth=\"229\" width=\"229\">\n<p align=\"left\">F1 (ROC-10) &lt; \u22120.03<\/p>\n<\/td>\n<td data-colwidth=\"168\" width=\"168\">\n<p align=\"left\">p20<\/p>\n<\/td>\n<td>\n<p align=\"left\">negative momentum \u2192 downtrend candidate<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td data-colwidth=\"229\" width=\"229\">\n<p align=\"left\">F1 (ROC-10) &gt; +0.03<\/p>\n<\/td>\n<td data-colwidth=\"168\" width=\"168\">\n<p align=\"left\">p80<\/p>\n<\/td>\n<td>\n<p align=\"left\">positive momentum \u2192 uptrend candidate<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td data-colwidth=\"229\" width=\"229\">\n<p align=\"left\">F2 (log vol ratio) &gt; +0.2<\/p>\n<\/td>\n<td data-colwidth=\"168\" width=\"168\">\n<p align=\"left\">p85<\/p>\n<\/td>\n<td>\n<p align=\"left\">volatility spike \u2192 chaotic candidate<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td data-colwidth=\"229\" width=\"229\">\n<p align=\"left\">F4 (VIX z-score) &gt; +1.5<\/p>\n<\/td>\n<td data-colwidth=\"168\" width=\"168\">\n<p align=\"left\">p90<\/p>\n<\/td>\n<td>\n<p align=\"left\">stress \u2192 chaotic strong signal<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td data-colwidth=\"229\" width=\"229\">\n<p align=\"left\">F5 (avg pairwise corr) &gt; 0.7<\/p>\n<\/td>\n<td data-colwidth=\"168\" width=\"168\">\n<p align=\"left\">p90<\/p>\n<\/td>\n<td>\n<p align=\"left\">\u0432\u0441\u0451 \u043a\u043e\u0440\u0440\u0435\u043b\u0438\u0440\u0443\u0435\u0442 \u2192 chaotic<\/p>\n<\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<\/div>\n<\/div>\n<h3>RCAA \u0438\u043b\u0438 \u0440\u0435\u0436\u0438\u043c\u043e-\u0437\u0430\u0432\u0438\u0441\u0438\u043c\u0430\u044f \u043d\u0430\u0433\u0440\u0430\u0434\u0430<\/h3>\n<p>\u0418\u0434\u0435\u044f RCAA (Regime-Conditional Alpha Adjustment) &#8212; \u0432 \u0440\u0430\u0437\u043d\u044b\u0445 \u0440\u0435\u0436\u0438\u043c\u0430\u0445 \u0430\u0433\u0435\u043d\u0442 \u0434\u043e\u043b\u0436\u0435\u043d \u0432\u043e\u0437\u043d\u0430\u0433\u0440\u0430\u0436\u0434\u0430\u0442\u044c\u0441\u044f \u0437\u0430\u00a0<em>\u0440\u0430\u0437\u043d\u043e\u0435 \u043f\u043e\u0432\u0435\u0434\u0435\u043d\u0438\u0435<\/em>. \u041d\u0438\u0436\u0435 \u043f\u0440\u0438\u043c\u0435\u0440 \u043a\u043e\u043d\u0444\u0438\u0433\u0443\u0440\u0430\u0446\u0438\u0438:<\/p>\n<pre><code class=\"python\">rcaa_lossm = {    'regime_alignment_scale': 5.0,    'regime_alignment_signs': {        1: +1.0,   # uptrend: \u0431\u043e\u043d\u0443\u0441 \u0437\u0430 \u043f\u0435\u0440\u0444\u043e\u0440\u043c\u0430\u043d\u0441 \u0432\u044b\u0448\u0435 \u043a\u043e\u0440\u0437\u0438\u043d\u044b        2: -1.0,   # downtrend: \u0448\u0442\u0440\u0430\u0444 \u0437\u0430 \u043f\u0435\u0440\u0444\u043e\u0440\u043c\u0430\u043d\u0441 \u0432\u044b\u0448\u0435 \u043a\u043e\u0440\u0437\u0438\u043d\u044b (\u0441\u0438\u0433\u043d\u0430\u043b \u0437\u0430\u0449\u0438\u0449\u0430\u0442\u044c\u0441\u044f)        3: +1.0,    },    'loss_multiplier': 1.3,  # \u0430\u0441\u0438\u043c\u043c\u0435\u0442\u0440\u0438\u0447\u043d\u044b\u0439 \u0440\u0438\u0441\u043a: \u0443\u0431\u044b\u0442\u043a\u0438 \u0432\u0435\u0441\u044f\u0442 \u0431\u043e\u043b\u044c\u0448\u0435 \u043f\u0440\u0438\u0431\u044b\u043b\u0435\u0439    ...}<\/code><div class=\"code-explainer\"><a href=\"https:\/\/sourcecraft.dev\/\" class=\"tm-button code-explainer__link\" style=\"visibility: hidden;\"><img style=\"width:14px;height:14px;object-fit:cover;object-position:left;\"\/><\/a><\/div><\/pre>\n<p>\u0417\u043d\u0430\u043a\u00a0<code>-1<\/code>\u00a0\u0434\u043b\u044f downtrend \u0437\u0432\u0443\u0447\u0438\u0442 \u043a\u043e\u043d\u0442\u0440\u0438\u043d\u0442\u0443\u0438\u0442\u0438\u0432\u043d\u043e: \u0437\u0430\u0447\u0435\u043c \u0448\u0442\u0440\u0430\u0444\u043e\u0432\u0430\u0442\u044c \u0437\u0430 \u0442\u043e, \u0447\u0442\u043e \u0430\u0433\u0435\u043d\u0442 \u043e\u0431\u0433\u043e\u043d\u044f\u0435\u0442 \u0431\u0435\u043d\u0447\u043c\u0430\u0440\u043a \u043d\u0430 \u043f\u0430\u0434\u0430\u044e\u0449\u0435\u043c \u0440\u044b\u043d\u043a\u0435? \u041f\u043e\u0442\u043e\u043c\u0443 \u0447\u0442\u043e \u043c\u044b \u0445\u043e\u0442\u0438\u043c, \u0447\u0442\u043e\u0431\u044b\u00a0<em>cross-sectional<\/em>\u00a0\u0441\u0438\u0433\u043d\u0430\u043b \u043f\u0435\u0440\u0435\u043a\u043b\u044e\u0447\u0430\u043b \u0432 \u043a\u043e\u043d\u0441\u0435\u0440\u0432\u0430\u0442\u0438\u0432\u043d\u044b\u0435 \u0442\u0438\u043a\u0435\u0440\u044b. \u0422.\u0435. <em>\u0441\u043b\u0443\u0447\u0430\u0439\u043d\u044b\u0439<\/em> \u044d\u043a\u0441\u043f\u0435\u0440\u0442 \u043d\u0435 \u0434\u043e\u043b\u0436\u0435\u043d \u0431\u044b\u0442\u044c <strong>\u0443\u043c\u043d\u0435\u0435<\/strong> <em>\u043d\u0430\u0437\u043d\u0430\u0447\u0435\u043d\u043d\u043e\u0433\u043e<\/em> \u0438 \u043e\u0431\u044f\u0437\u0430\u043d \u0434\u0435\u0440\u0436\u0430\u0442\u044c \u0441\u043f\u0435\u0446\u0438\u0430\u043b\u0438\u0437\u0438\u0440\u043e\u0432\u0430\u043d\u043d\u044b\u0435 \u0434\u043b\u044f \u043d\u0435\u0433\u043e \u0430\u043a\u0442\u0438\u0432\u044b. \u0415\u0441\u043b\u0438 \u0430\u0433\u0435\u043d\u0442 \u043e\u0431\u0433\u043e\u043d\u044f\u0435\u0442 equal-weight \u043a\u043e\u0440\u0437\u0438\u043d\u0443 \u0432 downtrend, \u0442\u043e \u044d\u0442\u043e \u043e\u0431\u044b\u0447\u043d\u043e \u0437\u043d\u0430\u0447\u0438\u0442, \u0447\u0442\u043e \u043e\u043d \u0441\u0438\u0434\u0438\u0442 \u0432 \u0442\u0435\u0445 \u0436\u0435 \u0440\u0430\u0441\u0442\u0443\u0449\u0438\u0445 \u0430\u043a\u0442\u0438\u0432\u0430\u0445, \u043d\u043e \u0441 \u0431\u043e\u043b\u044c\u0448\u0438\u043c \u043f\u043b\u0435\u0447\u043e\u043c, \u0430 \u043d\u0430\u043c \u043d\u0443\u0436\u043d\u0430 \u0440\u043e\u0442\u0430\u0446\u0438\u044f!<\/p>\n<h3>Shadow-mode routing<\/h3>\n<p>\u041f\u0440\u0438\u0448\u043b\u043e \u0432\u0440\u0435\u043c\u044f \u043e\u0441\u043e\u0431\u043e\u0439 \u0443\u043b\u0438\u0447\u043d\u043e\u0439 \u043c\u0430\u0433\u0438\u0438. \u0414\u0435\u0442\u0435\u043a\u0442\u043e\u0440 \u0432\u044b\u0434\u0430\u0451\u0442 \u0442\u0435\u043a\u0443\u0449\u0438\u0439 \u0440\u0435\u0436\u0438\u043c, \u043d\u043e\u00a0<strong>\u043c\u044b \u043d\u0435 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u0435\u043c \u0435\u0433\u043e \u043d\u0430\u043f\u0440\u044f\u043c\u0443\u044e \u0434\u043b\u044f \u0432\u044b\u0431\u043e\u0440\u0430 \u044d\u043a\u0441\u043f\u0435\u0440\u0442\u0430 \u043d\u0430 \u0438\u043d\u0444\u0435\u0440\u0435\u043d\u0441\u0435<\/strong>. \u0412\u043c\u0435\u0441\u0442\u043e \u044d\u0442\u043e\u0433\u043e \u043a\u0430\u0436\u0434\u044b\u0439 \u044d\u043a\u0441\u043f\u0435\u0440\u0442 \u043f\u043e\u0441\u0442\u043e\u044f\u043d\u043d\u043e \u0442\u043e\u0440\u0433\u0443\u0435\u0442 \u043d\u0430 \u0441\u043a\u043e\u043b\u044c\u0437\u044f\u0449\u0435\u043c \u043e\u043a\u043d\u0435, \u043c\u044b \u0441\u0447\u0438\u0442\u0430\u0435\u043c \u0435\u0433\u043e rolling 60-day Sharpe, \u0438 \u0435\u0441\u043b\u0438 <em>\u044d\u043a\u0441\u043f\u0435\u0440\u0442-\u043f\u0440\u0435\u0442\u0435\u043d\u0434\u0435\u043d\u0442<\/em> \u0437\u043d\u0430\u0447\u0438\u043c\u043e \u043e\u0431\u0433\u043e\u043d\u044f\u0435\u0442 <em>\u0434\u0435\u0436\u0443\u0440\u043d\u043e\u0433\u043e<\/em> \u043f\u043e \u0441\u0432\u043e\u0435\u043c\u0443 \u0442\u0440\u0435\u043d\u0434\u0443, \u0442\u043e \u0440\u043e\u0443\u0442\u0438\u043d\u0433 \u043f\u0435\u0440\u0435\u043a\u043b\u044e\u0447\u0430\u0435\u0442\u0441\u044f\u00a0<strong>\u0434\u0430\u0436\u0435 \u0435\u0441\u043b\u0438 \u0434\u0435\u0442\u0435\u043a\u0442\u043e\u0440 \u0433\u043e\u0432\u043e\u0440\u0438\u0442 \u0434\u0435\u0440\u0436\u0430\u0442\u044c\u0441\u044f \u0437\u0430 \u043d\u0430\u0437\u043d\u0430\u0447\u0435\u043d\u043d\u043e\u0433\u043e<\/strong>.<\/p>\n<p>\u041f\u0430\u0440\u0430\u043c\u0435\u0442\u0440\u044b shadow routing:<\/p>\n<pre><code class=\"python\">_shadow_sharpe_window         = 60  # days_shadow_override_threshold    = 1.0_shadow_min_challenger_sharpe = 0.5<\/code><div class=\"code-explainer\"><a href=\"https:\/\/sourcecraft.dev\/\" class=\"tm-button code-explainer__link\" style=\"visibility: hidden;\"><img style=\"width:14px;height:14px;object-fit:cover;object-position:left;\"\/><\/a><\/div><\/pre>\n<p>\u041f\u043e\u0447\u0435\u043c\u0443 \u044d\u0442\u043e \u0440\u0430\u0431\u043e\u0442\u0430\u0435\u0442: \u0434\u0435\u0442\u0435\u043a\u0442\u043e\u0440 \u043a\u043b\u0430\u0441\u0441\u0438\u0444\u0438\u0446\u0438\u0440\u0443\u0435\u0442\u00a0<em>\u0440\u044b\u043d\u043e\u043a<\/em>, \u0430 \u043d\u0430\u043c \u043d\u0443\u0436\u043d\u043e \u0432\u044b\u0431\u0440\u0430\u0442\u044c\u00a0<em>\u044d\u043a\u0441\u043f\u0435\u0440\u0442\u0430<\/em>, \u0447\u044c\u044f \u043f\u043e\u043b\u0438\u0442\u0438\u043a\u0430 \u043b\u0443\u0447\u0448\u0435 \u0440\u0430\u0431\u043e\u0442\u0430\u0435\u0442 \u043d\u0430 \u0434\u0430\u043d\u043d\u043e\u043c \u0440\u044b\u043d\u043a\u0435 \u043f\u0440\u044f\u043c\u043e \u0441\u0435\u0439\u0447\u0430\u0441. \u042d\u0442\u0438 \u0434\u0432\u0435 \u0437\u0430\u0434\u0430\u0447\u0438 \u043d\u0435 \u0441\u043e\u0432\u043f\u0430\u0434\u0430\u044e\u0442. \u042d\u043a\u0441\u043f\u0435\u0440\u0442, \u043e\u0431\u0443\u0447\u0435\u043d\u043d\u044b\u0439 \u043d\u0430 <strong>uptrend<\/strong>, \u043c\u043e\u0436\u0435\u0442 \u0432\u043d\u0435\u0437\u0430\u043f\u043d\u043e \u043e\u043a\u0430\u0437\u0430\u0442\u044c\u0441\u044f \u043b\u0443\u0447\u0448\u0438\u043c \u0438 \u0432 \u043d\u0430\u0447\u0430\u043b\u0435 <strong>sideways<\/strong>, \u0435\u0441\u043b\u0438 \u0435\u0433\u043e \u043f\u043e\u043b\u0438\u0442\u0438\u043a\u0430 \u0441\u043e\u0432\u043f\u0430\u043b\u0430 \u0441 \u043c\u0438\u043a\u0440\u043e-\u0441\u0442\u0440\u0443\u043a\u0442\u0443\u0440\u043e\u0439 \u043c\u043e\u043c\u0435\u043d\u0442\u0430.<\/p>\n<blockquote>\n<p>\u041f\u0440\u0438\u0431\u0430\u0432\u043a\u0430 \u0432 Sharpe \u043f\u043e \u0438\u0442\u043e\u0433\u0443 \u0440\u0435\u0430\u043b\u0438\u0437\u0430\u0446\u0438\u0438 \u043e\u043a\u0430\u0437\u0430\u043b\u0430\u0441\u044c \u0441\u043a\u0440\u043e\u043c\u043d\u0430\u044f (\u043f\u0440\u0438\u043c\u0435\u0440\u043d\u043e +0.06 \u043e\u0442\u043d\u043e\u0441\u0438\u0442\u0435\u043b\u044c\u043d\u043e \u043e\u0434\u0438\u043d\u043e\u0447\u043d\u043e\u0433\u043e SAC), \u0437\u0430\u0442\u043e \u0443\u043c\u0435\u043d\u044c\u0448\u0438\u043b\u0430\u0441\u044c \u0434\u0438\u0441\u043f\u0435\u0440\u0441\u0438\u044f \u0438 \u043c\u043e\u0434\u0435\u043b\u044c \u0441\u0442\u0430\u043b\u0430 \u043f\u0440\u0435\u0434\u0441\u043a\u0430\u0437\u0443\u0435\u043c\u043e \u0441\u0435\u0431\u044f \u0432\u0435\u0441\u0442\u0438 \u0432 \u043a\u0440\u0438\u0437\u0438\u0441\u043d\u044b\u0435 \u043f\u0435\u0440\u0438\u043e\u0434\u044b<\/p>\n<\/blockquote>\n<hr\/>\n<h2>\u0413\u043b\u0430\u0432\u0430 7. \u041e\u043d\u043b\u0430\u0439\u043d-\u043e\u0446\u0435\u043d\u043a\u0430 \u0433\u0440\u0430\u0434\u0438\u0435\u043d\u0442\u0430 Sharpe<\/h2>\n<p>\u0418\u0434\u0435\u044f \u043f\u0440\u043e\u0441\u0442\u0430\u044f: \u0448\u0442\u0440\u0430\u0444\u043e\u0432\u0430\u0442\u044c\/\u043f\u043e\u043e\u0449\u0440\u044f\u0442\u044c \u0430\u0433\u0435\u043d\u0442\u0430 \u0437\u0430\u00a0<strong>\u0438\u0437\u043c\u0435\u043d\u0435\u043d\u0438\u0435 Sharpe<\/strong>\u00a0\u043d\u0430 \u043a\u0430\u0436\u0434\u043e\u043c \u0448\u0430\u0433\u0435, \u0430 \u043d\u0435 \u0437\u0430 \u043c\u0433\u043d\u043e\u0432\u0435\u043d\u043d\u0443\u044e \u0434\u043e\u0445\u043e\u0434\u043d\u043e\u0441\u0442\u044c. \u041f\u043e \u0437\u0430\u043c\u044b\u0441\u043b\u0443 \u0442\u0430\u043a\u043e\u0439 \u043f\u043e\u0434\u0445\u043e\u0434 \u0434\u043e\u043b\u0436\u0435\u043d \u0431\u044b\u043b \u0434\u0430\u0442\u044c \u0431\u043e\u043b\u0435\u0435 \u0441\u0442\u0430\u0431\u0438\u043b\u044c\u043d\u0443\u044e \u043f\u043e\u043b\u0438\u0442\u0438\u043a\u0443. \u0413\u043b\u0430\u0432\u043d\u044b\u0439 \u043a\u0430\u043d\u0434\u0438\u0434\u0430\u0442 &#8212;\u00a0<strong>Differential Sharpe Ratio<\/strong>\u00a0(DSR), \u043e\u043d\u043b\u0430\u0439\u043d-\u043e\u0446\u0435\u043d\u043a\u0430 \u0433\u0440\u0430\u0434\u0438\u0435\u043d\u0442\u0430 Sharpe, \u0434\u043e\u0431\u0430\u0432\u043b\u044f\u0435\u043c\u0430\u044f \u043a reward:<\/p>\n<pre><code class=\"python\"># \u0423\u043f\u0440\u043e\u0449\u0451\u043d\u043d\u043e, halflife=20, scale=1.0ewma_ret  = \u03b1 * r_t + (1-\u03b1) * ewma_ret_prevewma_ret2 = \u03b1 * r_t\u00b2 + (1-\u03b1) * ewma_ret2_prevsharpe_t  = ewma_ret \/ sqrt(ewma_ret2 - ewma_ret\u00b2)dsr       = dsr_scale * (sharpe_t - sharpe_t_prev)reward   += dsr<\/code><div class=\"code-explainer\"><a href=\"https:\/\/sourcecraft.dev\/\" class=\"tm-button code-explainer__link\" style=\"visibility: hidden;\"><img style=\"width:14px;height:14px;object-fit:cover;object-position:left;\"\/><\/a><\/div><\/pre>\n<p>DSR \u0434\u043e\u0431\u0430\u0432\u0438\u043b \u043c\u0435\u043d\u0435\u0435 1% \u043e\u0442 \u0438\u0437\u043d\u0430\u0447\u0430\u043b\u044c\u043d\u043e\u0439 \u043d\u0430\u0433\u0440\u0430\u0434\u044b \u0438 \u043f\u0440\u0438 \u044d\u0442\u043e\u043c \u043f\u043e\u043c\u0435\u043d\u044f\u043b \u0432\u0441\u0451. \u0421\u0443\u0442\u044c \u0432\u00a0\u043c\u0435\u0445\u0430\u043d\u0438\u0437\u043c\u0435 \u0440\u0430\u0441\u043f\u0440\u043e\u0441\u0442\u0440\u0430\u043d\u0435\u043d\u0438\u044f \u0441\u0438\u0433\u043d\u0430\u043b\u0430:<\/p>\n<ul>\n<li>\n<p><strong>RCAA <\/strong>\u0438<strong> drawdown_penalty <\/strong>\u0434\u043e\u0431\u0430\u0432\u043b\u044f\u044e\u0442\u0441\u044f \u043a reward \u0438 \u0438\u0445 \u0432\u043a\u043b\u0430\u0434 \u0432 \u0433\u0440\u0430\u0434\u0438\u0435\u043d\u0442 \u043f\u0440\u043e\u043f\u043e\u0440\u0446\u0438\u043e\u043d\u0430\u043b\u0435\u043d \u0438\u0445 \u0432\u0435\u043b\u0438\u0447\u0438\u043d\u0435. \u0427\u0442\u043e\u0431\u044b \u043e\u043d\u0438 \u043f\u043e\u0432\u043b\u0438\u044f\u043b\u0438 \u043d\u0430 <strong>policy<\/strong>, \u0438\u0445 \u043d\u0443\u0436\u043d\u043e &#171;\u0434\u043e\u043a\u0440\u0443\u0442\u0438\u0442\u044c&#187; \u0434\u043e \u0437\u043d\u0430\u0447\u0438\u043c\u043e\u0433\u043e \u0440\u0430\u0437\u043c\u0435\u0440\u0430;<\/p>\n<\/li>\n<li>\n<p><strong>DSR <\/strong>&#8212; \u044d\u0442\u043e \u0437\u0430\u0434\u0430\u044e\u0449\u0438\u0439 \u0444\u043e\u0440\u043c\u0443 \u0433\u0440\u0430\u0434\u0438\u0435\u043d\u0442\u0430 \u044d\u043b\u0435\u043c\u0435\u043d\u0442 \u043d\u0430\u0433\u0440\u0430\u0434\u044b. \u041f\u043e\u043b\u044c\u0437\u0443 \u0434\u0430\u0451\u0442 \u043d\u0435 \u0432\u0435\u043b\u0438\u0447\u0438\u043d\u0430, \u0430\u00a0<em>\u0441\u043e\u0433\u043b\u0430\u0441\u043e\u0432\u0430\u043d\u043d\u043e\u0441\u0442\u044c<\/em>\u00a0\u0438 DSR \u0437\u0430\u0441\u0442\u0430\u0432\u043b\u044f\u0435\u0442 \u0433\u0440\u0430\u0434\u0438\u0435\u043d\u0442 \u0443\u043a\u0430\u0437\u044b\u0432\u0430\u0442\u044c \u0432 \u0441\u0442\u043e\u0440\u043e\u043d\u0443 \u043f\u043e\u043b\u0438\u0442\u0438\u043a\u0438 \u0441 \u0431\u043e\u043b\u0435\u0435 \u0441\u0442\u0430\u0431\u0438\u043b\u044c\u043d\u044b\u043c Sharpe, \u0434\u0430\u0436\u0435 \u0435\u0441\u043b\u0438 \u0434\u043e\u0431\u0430\u0432\u043e\u0447\u043d\u044b\u0439 \u0432\u043a\u043b\u0430\u0434 \u043c\u0430\u043b.<\/p>\n<\/li>\n<\/ul>\n<p>\u041a\u043e\u044d\u0444\u0444\u0438\u0446\u0438\u0435\u043d\u0442 \u043f\u0440\u0438 <code>DSR = 1.0<\/code> \u0438 \u044d\u0442\u043e \u043e\u043f\u0442\u0438\u043c\u0430\u043b\u044c\u043d\u043e\u0435 \u0437\u043d\u0430\u0447\u0435\u043d\u0438\u0435, \u043f\u043e\u0434\u043d\u0438\u043c\u0430\u0442\u044c \u0435\u0433\u043e \u043d\u0435 \u0441\u043b\u0435\u0434\u0443\u0435\u0442. <strong>\u041d\u0435 \u0432\u0441\u0451, \u0447\u0442\u043e \u0432\u043b\u0438\u044f\u0435\u0442 \u043d\u0430 policy \u0447\u0435\u0440\u0435\u0437 reward, \u043c\u043e\u0436\u043d\u043e \u0442\u044e\u043d\u0438\u0442\u044c \u0447\u0435\u0440\u0435\u0437 \u043c\u0430\u0441\u0448\u0442\u0430\u0431<\/strong>.<\/p>\n<hr\/>\n<h2>\u0413\u043b\u0430\u0432\u0430 8. \u041f\u0440\u0438\u043c\u0435\u0440 \u0442\u044e\u043d\u0438\u043d\u0433\u0430 \u043d\u0430\u0433\u0440\u0430\u0434\u044b \u043e\u0442\u0434\u0435\u043b\u044c\u043d\u043e\u0433\u043e \u044d\u043a\u0441\u043f\u0435\u0440\u0442\u0430<\/h2>\n<p>\u0415\u0441\u043b\u0438 DSR \u0434\u043b\u044f \u043e\u0434\u043d\u043e\u0433\u043e seed \u043f\u043e\u043a\u0430\u0437\u044b\u0432\u0430\u0435\u0442 \u0437\u0430\u0449\u0438\u0442\u043d\u0443\u044e \u0440\u043e\u0442\u0430\u0446\u0438\u044e \u0435\u0441\u0442\u0435\u0441\u0442\u0432\u0435\u043d\u043d\u044b\u043c \u043e\u0431\u0440\u0430\u0437\u043e\u043c, \u0430 \u0434\u0440\u0443\u0433\u0438\u0435 seed \u044d\u043a\u0441\u043f\u0435\u0440\u0438\u043c\u0435\u043d\u0442\u044b \u0442\u0430\u043a\u043e\u0435 \u0436\u0435 \u043f\u043e\u0432\u0435\u0434\u0435\u043d\u0438\u0435 \u043d\u0435 \u0434\u0435\u043c\u043e\u043d\u0441\u0442\u0440\u0438\u0440\u0443\u044e\u0442, \u0442\u043e \u0434\u0430\u0432\u0430\u0439\u0442\u0435\u00a0<strong>\u0437\u0430\u0441\u0442\u0430\u0432\u0438\u043c<\/strong>\u00a0\u0432\u0441\u0435\u0445 \u0434\u0435\u043b\u0430\u0442\u044c \u043e\u0434\u043d\u043e \u0438 \u0442\u043e \u0436\u0435: \u0434\u043e\u0431\u0430\u0432\u0438\u043c \u044f\u0432\u043d\u044b\u0439 \u0448\u0442\u0440\u0430\u0444 \u0437\u0430 \u0432\u044b\u0441\u043e\u043a\u0438\u0439 <strong>gross<\/strong> \u0434\u043b\u044f downtrend-\u044d\u043a\u0441\u043f\u0435\u0440\u0442\u0430:<\/p>\n<pre><code class=\"python\">if regime == gpen_regime:  # regime == 2 == downtrend    gross = sum(abs(positions[t]) * price) \/ NAV    gross_penalty = -gpen_scale * max(0, gross - gpen_cap) ** 2    reward += gross_penalty<\/code><div class=\"code-explainer\"><a href=\"https:\/\/sourcecraft.dev\/\" class=\"tm-button code-explainer__link\" style=\"visibility: hidden;\"><img style=\"width:14px;height:14px;object-fit:cover;object-position:left;\"\/><\/a><\/div><\/pre>\n<p>\u041d\u0430\u0441\u0442\u0440\u043e\u0439\u043a\u0438:\u00a0<code>scale=0.1, cap=0.7<\/code>\u00a0&#8212; soft-\u0433\u0440\u0430\u0434\u0438\u0435\u043d\u0442, \u22641% \u0432\u043a\u043b\u0430\u0434\u0430 \u0432 reward, \u0430\u043a\u0442\u0438\u0432\u0438\u0440\u0443\u0435\u0442\u0441\u044f \u0442\u043e\u043b\u044c\u043a\u043e \u0434\u043b\u044f downtrend-\u044d\u043a\u0441\u043f\u0435\u0440\u0442\u0430 (\u0443 \u043a\u043e\u0442\u043e\u0440\u043e\u0433\u043e\u00a0<code>regime_filter=2<\/code>\u00a0\u0432\u043e \u0432\u0440\u0435\u043c\u044f \u043e\u0431\u0443\u0447\u0435\u043d\u0438\u044f). \u0413\u0438\u043f\u043e\u0442\u0435\u0437\u0430 \u0442\u0430\u043a\u043e\u0432\u0430, \u0447\u0442\u043e \u0445\u0438\u0440\u0443\u0440\u0433\u0438\u0447\u0435\u0441\u043a\u043e\u0435 \u0432\u043c\u0435\u0448\u0430\u0442\u0435\u043b\u044c\u0441\u0442\u0432\u043e \u0441\u0434\u0435\u043b\u0430\u0435\u0442 \u0437\u0430\u0449\u0438\u0442\u043d\u043e\u0435 \u043f\u043e\u0432\u0435\u0434\u0435\u043d\u0438\u0435 \u043a\u043e\u043d\u0441\u0438\u0441\u0442\u0435\u043d\u0442\u043d\u044b\u043c (\u043d\u0435 \u043b\u043e\u043c\u0430\u044f \u0434\u0440\u0443\u0433\u0438\u0445 \u044d\u043a\u0441\u043f\u0435\u0440\u0442\u043e\u0432). \u0420\u0435\u0437\u0443\u043b\u044c\u0442\u0430\u0442 \u0434\u043b\u044f 3 seeds:<\/p>\n<div>\n<div class=\"table\">\n<table>\n<tbody>\n<tr>\n<th>\n<p align=\"left\">Config<\/p>\n<\/th>\n<th>\n<p align=\"left\">Sharpe mean<\/p>\n<\/th>\n<th>\n<p align=\"left\">Std<\/p>\n<\/th>\n<th>\n<p align=\"left\">dn_gross mean<\/p>\n<\/th>\n<\/tr>\n<tr>\n<td>\n<p align=\"left\">\u041e\u0440\u0438\u0433\u0438\u043d\u0430\u043b\u044c\u043d\u044b\u0439 DSR<\/p>\n<\/td>\n<td>\n<p align=\"left\"><strong>1.258<\/strong><\/p>\n<\/td>\n<td>\n<p align=\"left\">0.012<\/p>\n<\/td>\n<td>\n<p align=\"left\">95.7%<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td>\n<p align=\"left\">DSR + dngross<\/p>\n<\/td>\n<td>\n<p align=\"left\"><strong>0.918<\/strong><\/p>\n<\/td>\n<td>\n<p align=\"left\">0.157<\/p>\n<\/td>\n<td>\n<p align=\"left\"><strong>99.1%<\/strong><\/p>\n<\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<\/div>\n<\/div>\n<p>\u041f\u0440\u043e\u0432\u0430\u043b:<\/p>\n<ul>\n<li>\n<p>Sharpe \u0443\u043f\u0430\u043b \u043d\u0430 \u22120.34 \u043d\u0430 \u0432\u0441\u0435\u0445 \u0442\u0440\u0451\u0445 \u0441\u0438\u0434\u0430\u0445;<\/p>\n<\/li>\n<li>\n<p>\u0437\u0430\u0449\u0438\u0442\u043d\u043e\u0435 \u043f\u043e\u0432\u0435\u0434\u0435\u043d\u0438\u0435, \u043a\u043e\u0442\u043e\u0440\u043e\u0435 \u043c\u044b \u043f\u044b\u0442\u0430\u043b\u0438\u0441\u044c \u0432\u043e\u0441\u043f\u0440\u043e\u0438\u0437\u0432\u0435\u0441\u0442\u0438,\u00a0<strong>\u0438\u0441\u0447\u0435\u0437\u043b\u043e<\/strong> &#8212; \u0435\u0441\u0442\u0435\u0441\u0442\u0432\u0435\u043d\u043d\u044b\u0435 88% \u0432 \u0430\u043a\u0442\u0438\u0432\u0430\u0445 \u0438 12% \u0432 cash \u043f\u0440\u0435\u0432\u0440\u0430\u0442\u0438\u043b\u0438\u0441\u044c \u0432 \u0438\u0441\u0445\u043e\u0434\u043d\u044b\u0435 98.6%.<\/p>\n<\/li>\n<\/ul>\n<p>\u0412\u043c\u0435\u0448\u0430\u043b\u0430\u0441\u044c \u043e\u0441\u043e\u0431\u0430\u044f \u0443\u043b\u0438\u0447\u043d\u0430\u044f \u043c\u0430\u0433\u0438\u044f (<strong>shadow-routing<\/strong>):<\/p>\n<ul>\n<li>\n<p>DSR seed123 \u0440\u0430\u0441\u043f\u0440\u0435\u0434\u0435\u043b\u0435\u043d\u0438\u0435 \u0440\u0435\u0436\u0438\u043c\u043e\u0432: sideways 59.5% \/ uptrend 35.0% \/ downtrend 2.1% \/ chaotic 3.3%;<\/p>\n<\/li>\n<li>\n<p><strong>DSR+dngross seed123 <\/strong>\u0440\u0430\u0441\u043f\u0440\u0435\u0434\u0435\u043b\u0435\u043d\u0438\u0435 \u0440\u0435\u0436\u0438\u043c\u043e\u0432: sideways 62.5% \/ uptrend 9.0% \/ downtrend 8.5% \/ chaotic 20.0%.<\/p>\n<\/li>\n<\/ul>\n<p>Shadow-routing\u00a0<strong>\u0440\u0430\u0434\u0438\u043a\u0430\u043b\u044c\u043d\u043e <\/strong>\u0432\u0441\u0451 \u043f\u0435\u0440\u0435\u0441\u0442\u0440\u043e\u0438\u043b \u043d\u0435\u0441\u043c\u043e\u0442\u0440\u044f \u043d\u0430 \u0442\u043e, \u0447\u0442\u043e \u0448\u0442\u0440\u0430\u0444 \u043a\u0430\u0441\u0430\u043b\u0441\u044f \u0422\u041e\u041b\u042c\u041a\u041e downtrend-\u044d\u043a\u0441\u043f\u0435\u0440\u0442\u0430 \u0432\u043e \u0432\u0440\u0435\u043c\u044f \u043e\u0431\u0443\u0447\u0435\u043d\u0438\u044f. \u0414\u0430\u0436\u0435 \u0441\u043b\u0430\u0431\u0430\u044f (scale=0.1) \u043c\u043e\u0434\u0438\u0444\u0438\u043a\u0430\u0446\u0438\u044f reward-\u0444\u0443\u043d\u043a\u0446\u0438\u0438 \u0438\u0437\u043c\u0435\u043d\u0438\u043b\u0430 \u0442\u0440\u0430\u0435\u043a\u0442\u043e\u0440\u0438\u044e \u0441\u0445\u043e\u0434\u0438\u043c\u043e\u0441\u0442\u0438 SAC-\u0433\u0440\u0430\u0434\u0438\u0435\u043d\u0442\u0430 \u0434\u043b\u044f downtrend-\u044d\u043a\u0441\u043f\u0435\u0440\u0442\u0430 \u0434\u043e\u0441\u0442\u0430\u0442\u043e\u0447\u043d\u043e, \u0447\u0442\u043e\u0431\u044b\u00a0<em>rolling Sharpe<\/em>\u00a0\u043d\u0430 \u0438\u043d\u0444\u0435\u0440\u0435\u043d\u0441\u0435 \u0441\u0442\u0430\u043b \u0434\u0440\u0443\u0433\u0438\u043c. <strong>Shadow-mode<\/strong> \u043d\u0430 \u043e\u0441\u043d\u043e\u0432\u0435 \u044d\u0442\u043e\u0439 \u043d\u043e\u0432\u043e\u0439 \u0441\u0442\u0430\u0442\u0438\u0441\u0442\u0438\u043a\u0438 \u043d\u0430\u0447\u0430\u043b \u0432\u044b\u0431\u0438\u0440\u0430\u0442\u044c \u0434\u0440\u0443\u0433\u0438\u0445 \u044d\u043a\u0441\u043f\u0435\u0440\u0442\u043e\u0432 \u043d\u0430 \u0434\u0440\u0443\u0433\u0438\u0435 \u0434\u043d\u0438.<\/p>\n<blockquote>\n<p>per-regime reward \u0434\u043e\u043b\u0436\u0435\u043d \u0431\u044b\u043b \u0441\u0442\u0430\u0442\u044c \u0431\u0435\u0437\u043e\u043f\u0430\u0441\u043d\u044b\u043c \u043b\u043e\u043a\u0430\u043b\u044c\u043d\u044b\u043c \u0438\u0437\u043c\u0435\u043d\u0435\u043d\u0438\u0435\u043c. \u041d\u0430 \u0434\u0435\u043b\u0435 \u044d\u0442\u043e \u0438\u0437\u043c\u0435\u043d\u0438\u043b\u043e \u0432\u0441\u0451, \u043f\u043e\u0442\u043e\u043c\u0443 \u0447\u0442\u043e \u043b\u044e\u0431\u0430\u044f \u043f\u043e\u043b\u0438\u0442\u0438\u043a\u0430 \u043e\u0434\u043d\u043e\u0433\u043e \u044d\u043a\u0441\u043f\u0435\u0440\u0442\u0430 \u0432\u0437\u0430\u0438\u043c\u043e\u0434\u0435\u0439\u0441\u0442\u0432\u0443\u0435\u0442 \u0441 \u043e\u0441\u0442\u0430\u043b\u044c\u043d\u044b\u043c\u0438 \u0447\u0435\u0440\u0435\u0437 shadow-routing. \u0421\u0430\u043c Shadow-routing &#8212; \u044d\u0442\u043e \u043d\u0435 \u043c\u0435\u0445\u0430\u043d\u0438\u0437\u043c \u0438\u043d\u0444\u0435\u0440\u0435\u043d\u0441\u0430, \u0430 \u043e\u0442\u0434\u0435\u043b\u044c\u043d\u043e\u0435 inference-time \u043f\u0440\u043e\u0441\u0442\u0440\u0430\u043d\u0441\u0442\u0432\u043e \u043e\u043f\u0442\u0438\u043c\u0438\u0437\u0430\u0446\u0438\u0438, \u043d\u0430 \u043a\u043e\u0442\u043e\u0440\u043e\u0435 \u043c\u043e\u0436\u043d\u043e \u0432\u043e\u0437\u0434\u0435\u0439\u0441\u0442\u0432\u043e\u0432\u0430\u0442\u044c\u00a0\u0431\u0435\u0437 \u043f\u0435\u0440\u0435\u043e\u0431\u0443\u0447\u0435\u043d\u0438\u044f<\/p>\n<\/blockquote>\n<p>\u0424\u043e\u0440\u043c\u0430\u043b\u044c\u043d\u043e \u044d\u043a\u0441\u043f\u0435\u0440\u0438\u043c\u0435\u043d\u0442 \u0431\u044b\u043b \u043f\u0440\u043e\u0432\u0430\u043b\u0435\u043d. \u041d\u043e \u043a\u0430\u043a \u044f \u043f\u0438\u0441\u0430\u043b \u0432\u044b\u0448\u0435 \u0441\u0442\u043e\u0438\u043b\u043e \u0435\u0434\u0432\u0430 \u0440\u0430\u0437\u043e\u0431\u0440\u0430\u0442\u044c\u0441\u044f, \u0447\u0442\u043e \u0443 <strong>Claude<\/strong> \u043f\u043e\u0448\u043b\u043e \u043d\u0435 \u0442\u0430\u043a \u0438 \u0430\u043d\u0430\u043b\u0438\u0437 \u043f\u043e\u043a\u0430\u0437\u0430\u043b \u043b\u044e\u0431\u043e\u043f\u044b\u0442\u043d\u0443\u044e \u0434\u0435\u0442\u0430\u043b\u044c:\u00a0<strong>\u0441\u0430\u043c downtrend-\u044d\u043a\u0441\u043f\u0435\u0440\u0442 \u0438\u0437 dngross-\u043c\u043e\u0434\u0435\u043b\u0438 \u0438\u043c\u0435\u043b \u0445\u043e\u0440\u043e\u0448\u0443\u044e \u043f\u043e\u043b\u0438\u0442\u0438\u043a\u0443<\/strong>!\u00a0\u041e\u043d \u0437\u043d\u0430\u043b, \u043a\u0430\u043a \u0432\u0435\u0441\u0442\u0438 \u0441\u0435\u0431\u044f \u0432 \u043d\u0438\u0441\u0445\u043e\u0434\u044f\u0449\u0435\u043c \u0440\u044b\u043d\u043a\u0435 \u0438 \u043f\u0440\u043e\u0431\u043b\u0435\u043c\u0430 \u0431\u044b\u043b\u0430 \u0432 \u0440\u043e\u0443\u0442\u0438\u043d\u0433\u0435, \u0442.\u043a. shadow-mode \u0432\u043d\u0443\u0442\u0440\u0438 dngross-\u044d\u043a\u043e\u0441\u0438\u0441\u0442\u0435\u043c\u044b \u0430\u043a\u0442\u0438\u0432\u0438\u0440\u043e\u0432\u0430\u043b \u0435\u0433\u043e \u043d\u0430 \u043d\u0435\u043f\u0440\u0430\u0432\u0438\u043b\u044c\u043d\u044b\u0445 \u0434\u043d\u044f\u0445. \u0427\u0442\u043e \u0431\u0443\u0434\u0435\u0442, \u0435\u0441\u043b\u0438\u00a0<strong>\u0432\u0437\u044f\u0442\u044c \u044d\u0442\u043e\u0433\u043e downtrend-\u044d\u043a\u0441\u043f\u0435\u0440\u0442\u0430 \u0438 \u0432\u0441\u0442\u0430\u0432\u0438\u0442\u044c \u0432 DSR-\u044d\u043a\u043e\u0441\u0438\u0441\u0442\u0435\u043c\u0443<\/strong>\u00a0(\u0441 \u0435\u0451 \u0441\u0442\u0430\u0431\u0438\u043b\u044c\u043d\u044b\u043c \u0440\u043e\u0443\u0442\u0438\u043d\u0433\u043e\u043c \u0441 \u0442\u0440\u0435\u043c\u044f \u0434\u0440\u0443\u0433\u0438\u043c\u0438 \u044d\u043a\u0441\u043f\u0435\u0440\u0442\u0430\u043c\u0438)? \u042d\u0442\u043e \u0431\u044b\u043b \u0431\u044b zero-cost \u044d\u043a\u0441\u043f\u0435\u0440\u0438\u043c\u0435\u043d\u0442 &#8212; \u0447\u0438\u0441\u0442\u043e\u0435 \u043a\u043e\u043f\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u0435 \u0444\u0430\u0439\u043b\u043e\u0432 \u0438 \u0431\u0435\u0437 \u043e\u0431\u0443\u0447\u0435\u043d\u0438\u044f. \u0420\u0435\u0437\u0443\u043b\u044c\u0442\u0430\u0442\u044b:<\/p>\n<div>\n<div class=\"table\">\n<table>\n<tbody>\n<tr>\n<th>\n<p align=\"left\">\u041c\u0435\u0442\u0440\u0438\u043a\u0430<\/p>\n<\/th>\n<th>\n<p align=\"left\">DSR seed42<\/p>\n<\/th>\n<th>\n<p align=\"left\">hybrid_seed42<\/p>\n<\/th>\n<\/tr>\n<tr>\n<td>\n<p align=\"left\">Sharpe<\/p>\n<\/td>\n<td>\n<p align=\"left\">1.240<\/p>\n<\/td>\n<td>\n<p align=\"left\"><strong>1.452<\/strong><\/p>\n<\/td>\n<\/tr>\n<tr>\n<td>\n<p align=\"left\">CAGR<\/p>\n<\/td>\n<td>\n<p align=\"left\">33.5%<\/p>\n<\/td>\n<td>\n<p align=\"left\"><strong>35.77%<\/strong><\/p>\n<\/td>\n<\/tr>\n<tr>\n<td>\n<p align=\"left\">MDD<\/p>\n<\/td>\n<td>\n<p align=\"left\">16.8%<\/p>\n<\/td>\n<td>\n<p align=\"left\"><strong>13.58%<\/strong><\/p>\n<\/td>\n<\/tr>\n<tr>\n<td>\n<p align=\"left\">Calmar<\/p>\n<\/td>\n<td>\n<p align=\"left\">2.00<\/p>\n<\/td>\n<td>\n<p align=\"left\"><strong>2.635<\/strong><\/p>\n<\/td>\n<\/tr>\n<tr>\n<td>\n<p align=\"left\">Per-regime downtrend Sharpe<\/p>\n<\/td>\n<td>\n<p align=\"left\">+1.71<\/p>\n<\/td>\n<td>\n<p align=\"left\"><strong>+3.66<\/strong><\/p>\n<\/td>\n<\/tr>\n<tr>\n<td>\n<p align=\"left\">CV (3 seeds)<\/p>\n<\/td>\n<td>\n<p align=\"left\">&#8212;<\/p>\n<\/td>\n<td>\n<p align=\"left\">0.2<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td>\n<p align=\"left\">Shuffle-test<\/p>\n<\/td>\n<td>\n<p align=\"left\">&#8212;<\/p>\n<\/td>\n<td>\n<p align=\"left\">4.2\u03c3<\/p>\n<\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<\/div>\n<\/div>\n<figure class=\"full-width \"><img decoding=\"async\" src=\"https:\/\/habrastorage.org\/r\/w1560\/getpro\/habr\/upload_files\/3df\/b94\/cac\/3dfb94cac6eadf4ba35fcad890d79a3b.png\" alt=\"\u041f\u0440\u0438\u043c\u0435\u0440\u044b \u043d\u0435\u0441\u043a\u043e\u043b\u044c\u043a\u0438\u0445 \u044d\u043a\u0441\u043f\u0435\u0440\u0438\u043c\u0435\u043d\u0442\u043e\u0432 \u0438 \u043f\u043e\u043b\u0443\u0447\u0435\u043d\u043d\u044b\u0445 \u043c\u0435\u0442\u0440\u0438\u043a\" title=\"\u041f\u0440\u0438\u043c\u0435\u0440\u044b \u043d\u0435\u0441\u043a\u043e\u043b\u044c\u043a\u0438\u0445 \u044d\u043a\u0441\u043f\u0435\u0440\u0438\u043c\u0435\u043d\u0442\u043e\u0432 \u0438 \u043f\u043e\u043b\u0443\u0447\u0435\u043d\u043d\u044b\u0445 \u043c\u0435\u0442\u0440\u0438\u043a\" width=\"2520\" height=\"560\" sizes=\"auto, (max-width: 780px) 100vw, 50vw\" srcset=\"https:\/\/habrastorage.org\/r\/w780\/getpro\/habr\/upload_files\/3df\/b94\/cac\/3dfb94cac6eadf4ba35fcad890d79a3b.png 780w,&#10;       https:\/\/habrastorage.org\/r\/w1560\/getpro\/habr\/upload_files\/3df\/b94\/cac\/3dfb94cac6eadf4ba35fcad890d79a3b.png 781w\" loading=\"lazy\" decode=\"async\"\/><\/p>\n<div><figcaption>\u041f\u0440\u0438\u043c\u0435\u0440\u044b \u043d\u0435\u0441\u043a\u043e\u043b\u044c\u043a\u0438\u0445 \u044d\u043a\u0441\u043f\u0435\u0440\u0438\u043c\u0435\u043d\u0442\u043e\u0432 \u0438 \u043f\u043e\u043b\u0443\u0447\u0435\u043d\u043d\u044b\u0445 \u043c\u0435\u0442\u0440\u0438\u043a<\/figcaption><\/div>\n<\/figure>\n<p>\u0414\u0430\u043b\u044c\u0448\u0435 \u043c\u043e\u0436\u043d\u043e \u0435\u0449\u0451 \u043c\u043d\u043e\u0433\u043e \u0447\u0435\u0433\u043e \u043a\u043e\u043c\u0431\u0438\u043d\u0438\u0440\u043e\u0432\u0430\u0442\u044c \u0434\u043b\u044f \u043f\u043e\u043b\u0443\u0447\u0435\u043d\u0438\u044f <strong>Best-of-each <\/strong>\u043a\u0430\u043a \u0432 \u0442\u0430\u0431\u043b\u0438\u0446\u0435 \u043d\u0438\u0436\u0435, \u043d\u043e seed variance \u0431\u0443\u0434\u0435\u0442 \u043e\u0447\u0435\u043d\u044c \u0431\u043e\u043b\u044c\u0448\u043e\u0439 \u0438 \u043c\u043e\u0434\u0435\u043b\u044c \u043f\u0435\u0440\u0435\u0441\u0442\u0430\u0451\u0442 \u0431\u044b\u0442\u044c \u0441\u0442\u0430\u0431\u0438\u043b\u044c\u043d\u043e\u0439.<\/p>\n<div>\n<div class=\"table\">\n<table>\n<tbody>\n<tr>\n<th>\n<p align=\"left\">\u041c\u0435\u0442\u0440\u0438\u043a\u0430<\/p>\n<\/th>\n<th>\n<p align=\"left\">tlt_bestofeach_v1 (WF5)<\/p>\n<\/th>\n<\/tr>\n<tr>\n<td>\n<p align=\"left\">Sharpe<\/p>\n<\/td>\n<td>\n<p align=\"left\">1.511<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td>\n<p align=\"left\">CAGR<\/p>\n<\/td>\n<td>\n<p align=\"left\">39.01<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td>\n<p align=\"left\">Calmar<\/p>\n<\/td>\n<td>\n<p align=\"left\">2.953<\/p>\n<\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<\/div>\n<\/div>\n<hr\/>\n<h2>\u0413\u043b\u0430\u0432\u0430 9. \u0420\u0435\u0444\u0435\u0440\u0435\u043d\u0441\u044b \u0438 \u0440\u0435\u0437\u0443\u043b\u044c\u0442\u0430\u0442\u044b<\/h2>\n<p>\u041a\u043e\u043c\u0431\u0438\u043d\u0430\u0446\u0438\u0438, \u043a\u043e\u0442\u043e\u0440\u044b\u0435 \u0432 \u043d\u0430\u0439\u0434\u0435\u043d\u043d\u043e\u0439 \u043b\u0438\u0442\u0435\u0440\u0430\u0442\u0443\u0440\u0435 \u043d\u0435 \u0432\u0441\u0442\u0440\u0435\u0447\u0430\u043b\u0438\u0441\u044c:<\/p>\n<ol>\n<li>\n<p><strong>Rule-based regime detector + per-regime SAC \u044d\u043a\u0441\u043f\u0435\u0440\u0442\u044b<\/strong> \u0432\u043c\u0435\u0441\u0442\u043e soft-mixture \u0438\u043b\u0438 end-to-end attention. \u041a\u043e\u043d\u0446\u0435\u043f\u0442\u0443\u0430\u043b\u044c\u043d\u043e \u043f\u0440\u043e\u0449\u0435, \u043f\u043e\u0437\u0432\u043e\u043b\u044f\u0435\u0442 \u043d\u0435\u0437\u0430\u0432\u0438\u0441\u0438\u043c\u043e \u043e\u0431\u0443\u0447\u0430\u0442\u044c \u044d\u043a\u0441\u043f\u0435\u0440\u0442\u043e\u0432, \u0430 \u0437\u0430\u0442\u0435\u043c \u0438\u0445 \u043a\u043e\u043c\u0431\u0438\u043d\u0438\u0440\u043e\u0432\u0430\u0442\u044c. \u0422\u0440\u0435\u0431\u0443\u0435\u0442 \u0440\u0443\u0447\u043d\u043e\u0439 \u043a\u0430\u043b\u0438\u0431\u0440\u043e\u0432\u043a\u0438 \u043f\u043e\u0440\u043e\u0433\u043e\u0432 \u0434\u0435\u0442\u0435\u043a\u0442\u043e\u0440\u0430 \u0440\u0435\u0436\u0438\u043c\u043e\u0432.<\/p>\n<\/li>\n<li>\n<p><strong>Shadow-mode routing \u043d\u0430 rolling Sharpe<\/strong>\u00a0&#8212; \u043d\u0435 \u043a\u043b\u0430\u0441\u0441\u0438\u0447\u0435\u0441\u043a\u0438\u0439 gating (\u043a\u043e\u0442\u043e\u0440\u044b\u0439 \u043f\u0430\u0440\u0430\u043c\u0435\u0442\u0440\u0438\u0437\u0443\u0435\u0442\u0441\u044f \u0438 \u043e\u0431\u0443\u0447\u0430\u0435\u0442\u0441\u044f). \u041d\u0435\u0437\u0430\u0432\u0438\u0441\u0438\u043c\u0430\u044f inference-time \u043e\u0441\u044c, \u043f\u0430\u0440\u0430\u043c\u0435\u0442\u0440\u0438\u0437\u0443\u0435\u0442\u0441\u044f 3 \u0433\u0438\u043f\u0435\u0440\u043f\u0430\u0440\u0430\u043c\u0435\u0442\u0440\u0430\u043c\u0438 (\u043e\u043a\u043d\u043e, threshold, min challenger). \u0412 \u043b\u0438\u0442\u0435\u0440\u0430\u0442\u0443\u0440\u0435 \u0442\u0430\u043a\u043e\u0439 \u043f\u043e\u0434\u0445\u043e\u0434 \u043e\u0431\u044b\u0447\u043d\u043e \u043d\u0430\u0437\u044b\u0432\u0430\u0435\u0442\u0441\u044f &#171;online algorithm selection&#187;, \u043d\u043e \u0434\u043b\u044f RL-\u0442\u0440\u0435\u0439\u0434\u0438\u043d\u0433\u0430 \u043f\u0440\u044f\u043c\u043e\u0433\u043e \u043f\u0440\u0438\u043c\u0435\u043d\u0435\u043d\u0438\u044f \u043d\u0435 \u0432\u0441\u0442\u0440\u0435\u0447\u0430\u043b.<\/p>\n<\/li>\n<li>\n<p><strong>Hybrid expert-swap (cross-run assembly)<\/strong>\u00a0&#8212; \u043f\u0435\u0440\u0435\u0441\u043e\u0431\u0440\u0430\u0442\u044c \u0430\u043d\u0441\u0430\u043c\u0431\u043b\u044c \u0438\u0437 \u044d\u043a\u0441\u043f\u0435\u0440\u0442\u043e\u0432, \u043e\u0431\u0443\u0447\u0435\u043d\u043d\u044b\u0445 \u0432 \u0440\u0430\u0437\u043d\u044b\u0445 \u0437\u0430\u043f\u0443\u0441\u043a\u0430\u0445. \u041a\u0430\u043a \u043e\u043f\u0442\u0438\u043c\u0438\u0437\u0430\u0446\u0438\u043e\u043d\u043d\u0430\u044f \u0442\u0435\u0445\u043d\u0438\u043a\u0430 \u0438\u0437\u0432\u0435\u0441\u0442\u043d\u0430 (Policy Distillation, PopulationBased Training), \u043d\u043e \u0441\u043f\u0435\u0446\u0438\u0444\u0438\u0447\u0435\u0441\u043a\u0430\u044f \u043f\u0440\u0430\u043a\u0442\u0438\u043a\u0430 &#171;\u0432\u0437\u044f\u0442\u044c \u044d\u043a\u0441\u043f\u0435\u0440\u0442\u0430 \u0438\u0437 \u043e\u0434\u043d\u043e\u0433\u043e seed + 3-\u0445 \u0434\u0440\u0443\u0433\u0438\u0445 \u044d\u043a\u0441\u043f\u0435\u0440\u0442\u043e\u0432 \u0438\u0437 \u0434\u0440\u0443\u0433\u043e\u0433\u043e&#187; &#8212; \u043d\u0435 \u0432\u0441\u0442\u0440\u0435\u0447\u0430\u043b.<\/p>\n<\/li>\n<li>\n<p><strong>Differential Sharpe Ratio<\/strong>\u00a0&#8212; \u043a\u043e\u043d\u043a\u0440\u0435\u0442\u043d\u043e \u043f\u0440\u0438\u043c\u0435\u043d\u0435\u043d\u0438\u0435 DSR \u0432 \u043a\u043e\u043c\u043f\u043e\u0437\u0438\u0446\u0438\u0438 \u0441 MoE \u0432\u0441\u0442\u0440\u0435\u0447\u0430\u0435\u0442\u0441\u044f \u0440\u0435\u0434\u043a\u043e, \u043f\u043e\u0442\u043e\u043c\u0443 \u0447\u0442\u043e \u0431\u043e\u043b\u044c\u0448\u0438\u043d\u0441\u0442\u0432\u043e \u0441\u043e\u0432\u0440\u0435\u043c\u0435\u043d\u043d\u044b\u0445 RL-\u0442\u0440\u0435\u0439\u0434\u0438\u043d\u0433 \u0441\u0442\u0430\u0442\u0435\u0439 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u044e\u0442 cumulative return \u0438\u043b\u0438 log-utility. DSR \u0432 \u043d\u0430\u0448\u0435\u043c \u044d\u043a\u0441\u043f\u0435\u0440\u0438\u043c\u0435\u043d\u0442\u0435 \u043e\u043a\u0430\u0437\u0430\u043b\u0441\u044f \u0441\u0438\u043b\u044c\u043d\u0435\u0435 \u0432\u0441\u0435\u0445 \u043d\u043e\u0432\u043e\u043c\u043e\u0434\u043d\u044b\u0445 \u0430\u043b\u044c\u0442\u0435\u0440\u043d\u0430\u0442\u0438\u0432.<\/p>\n<\/li>\n<\/ol>\n<h4>\u0418\u043d\u0434\u0443\u0441\u0442\u0440\u0438\u0430\u043b\u044c\u043d\u044b\u0435 \u0441\u0442\u0430\u043d\u0434\u0430\u0440\u0442\u044b<\/h4>\n<p>\u041f\u043e \u043f\u0443\u0431\u043b\u0438\u0447\u043d\u043e \u0438\u0437\u0432\u0435\u0441\u0442\u043d\u044b\u043c <strong>Sharpe<\/strong> \u0441\u0438\u0441\u0442\u0435\u043c\u0430\u0442\u0438\u0447\u0435\u0441\u043a\u0438\u0445 \u0441\u0442\u0440\u0430\u0442\u0435\u0433\u0438\u0439 (\u0441 \u0443\u0447\u0451\u0442\u043e\u043c, \u0447\u0442\u043e \u0441\u0435\u0440\u044c\u0451\u0437\u043d\u044b\u0435 \u0444\u043e\u043d\u0434\u044b \u043d\u0435 \u0440\u0430\u0441\u043a\u0440\u044b\u0432\u0430\u044e\u0442 \u0434\u0435\u0442\u0430\u043b\u0438):<\/p>\n<div>\n<div class=\"table\">\n<table>\n<tbody>\n<tr>\n<th data-colwidth=\"376\" width=\"376\">\n<p align=\"left\">\u0422\u0438\u043f \u0441\u0442\u0440\u0430\u0442\u0435\u0433\u0438\u0438<\/p>\n<\/th>\n<th>\n<p align=\"left\">\u0422\u0438\u043f\u0438\u0447\u043d\u044b\u0439 net Sharpe<\/p>\n<\/th>\n<\/tr>\n<tr>\n<td data-colwidth=\"376\" width=\"376\">\n<p align=\"left\">Multi-strategy hedge funds<\/p>\n<\/td>\n<td>\n<p align=\"left\">1.0 \u2013 1.5<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td data-colwidth=\"376\" width=\"376\">\n<p align=\"left\">Systematic CTA \/ trend-following<\/p>\n<\/td>\n<td>\n<p align=\"left\">0.5 \u2013 0.8<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td data-colwidth=\"376\" width=\"376\">\n<p align=\"left\">Risk-parity (Bridgewater-style)<\/p>\n<\/td>\n<td>\n<p align=\"left\">0.7 \u2013 1.0<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td data-colwidth=\"376\" width=\"376\">\n<p align=\"left\">Factor investing (equity)<\/p>\n<\/td>\n<td>\n<p align=\"left\">0.6 \u2013 1.0<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td data-colwidth=\"376\" width=\"376\">\n<p align=\"left\">Market-making \/ HFT<\/p>\n<\/td>\n<td>\n<p align=\"left\">3.0 \u2013 6.0<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td data-colwidth=\"376\" width=\"376\">\n<p align=\"left\">Renaissance Technologies Medallion<\/p>\n<\/td>\n<td>\n<p align=\"left\">~3.0 (\u043f\u043e \u0441\u043b\u0443\u0445\u0430\u043c)<\/p>\n<\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<\/div>\n<\/div>\n<p>\u0412 \u043e\u0431\u0449\u0435\u043c \u044d\u0442\u043e \u043d\u0435 \u043f\u0440\u043e\u0440\u044b\u0432, \u043d\u043e \u0432\u043f\u043e\u043b\u043d\u0435\u00a0\u0434\u043e\u0431\u0440\u043e\u0441\u043e\u0432\u0435\u0441\u0442\u043d\u044b\u0439\u00a0\u0440\u0435\u0437\u0443\u043b\u044c\u0442\u0430\u0442 \u043d\u0430 \u043f\u043e\u043d\u044f\u0442\u043d\u043e\u0439 \u0438 \u0432\u043e\u0441\u043f\u0440\u043e\u0438\u0437\u0432\u043e\u0434\u0438\u043c\u043e\u0439 \u0430\u0440\u0445\u0438\u0442\u0435\u043a\u0442\u0443\u0440\u0435 \u0441 \u043e\u0433\u043e\u0432\u043e\u0440\u043a\u0430\u043c\u0438:<\/p>\n<ol>\n<li>\n<p><strong>\u041f\u043e\u0440\u0442\u0444\u0435\u043b\u044c \u043c\u0430\u043b (6 \u0442\u0438\u043a\u0435\u0440\u043e\u0432)<\/strong>. \u0410\u043a\u0430\u0434\u0435\u043c\u0438\u0447\u0435\u0441\u043a\u0438\u0435 \u0441\u0442\u0430\u0442\u044c\u0438 \u043e\u0431\u044b\u0447\u043d\u043e \u0440\u0430\u0431\u043e\u0442\u0430\u044e\u0442 \u0441 30\u2013100 \u0430\u043a\u0442\u0438\u0432\u0430\u043c\u0438 (\u0431\u043e\u043b\u044c\u0448\u0435 \u0434\u0438\u0432\u0435\u0440\u0441\u0438\u0444\u0438\u043a\u0430\u0446\u0438\u044f, \u043d\u0438\u0436\u0435 \u043a\u043e\u043c\u0438\u0441\u0441\u0438\u043e\u043d\u043d\u044b\u0435 \u0438\u0437\u0434\u0435\u0440\u0436\u043a\u0438, \u0441\u043b\u043e\u0436\u043d\u0435\u0435 \u043e\u0431\u0443\u0447\u0435\u043d\u0438\u0435). \u0418\u0437\u043b\u043e\u0436\u0435\u043d\u043d\u044b\u0439 \u043f\u043e\u0434\u0445\u043e\u0434 \u043f\u0440\u0438 50 \u0442\u0438\u043a\u0435\u0440\u0430\u0445 \u043f\u043e\u0433\u0438\u0431\u043d\u0435\u0442 \u0432 \u0448\u0443\u043c\u0435.<\/p>\n<\/li>\n<li>\n<p><strong>\u0414\u043d\u0435\u0432\u043d\u0430\u044f \u0447\u0430\u0441\u0442\u043e\u0442\u0430<\/strong>. \u0427\u0430\u0441\u043e\u0432\u044b\u0435 \u0438\u043b\u0438 \u0432\u043d\u0443\u0442\u0440\u0435\u0434\u043d\u0435\u0432\u043d\u044b\u0435 \u0441\u0442\u0440\u0430\u0442\u0435\u0433\u0438\u0438 \u0442\u0440\u0435\u0431\u0443\u044e\u0442 \u043a\u0440\u0430\u0442\u043d\u043e \u0431\u043e\u043b\u044c\u0448\u0438\u0445 \u0432\u044b\u0447\u0438\u0441\u043b\u0438\u0442\u0435\u043b\u044c\u043d\u044b\u0445 \u0440\u0435\u0441\u0443\u0440\u0441\u043e\u0432 \u0438 \u0434\u0430\u043d\u043d\u044b\u0445.<\/p>\n<\/li>\n<li>\n<p><strong>\u0423\u043f\u0440\u043e\u0449\u0451\u043d\u043d\u0430\u044f \u043c\u043e\u0434\u0435\u043b\u044c \u043a\u043e\u043c\u0438\u0441\u0441\u0438\u0439<\/strong>. Fee 4 bps + stochastic slippage \u043d\u0435 \u0437\u0430\u043c\u0435\u043d\u044f\u0435\u0442 \u043f\u043e\u043b\u043d\u043e\u0446\u0435\u043d\u043d\u043e\u0433\u043e \u0432\u043b\u0438\u044f\u043d\u0438\u044f \u043d\u0430 \u0440\u044b\u043d\u043e\u043a \u043f\u0440\u0438 \u0441\u0434\u0435\u043b\u043a\u0430\u0445 \u0441 \u0431\u043e\u043b\u044c\u0448\u0438\u043c\u0438 \u043e\u0431\u044a\u0451\u043c\u0430\u043c\u0438.<\/p>\n<\/li>\n<li>\n<p>\u041d\u0430\u0441\u0442\u043e\u044f\u0449\u0438\u0439 Sharpe \u043d\u0435\u0438\u0437\u0432\u0435\u0441\u0442\u0435\u043d, live-\u0434\u043e\u0445\u043e\u0434\u043d\u043e\u0441\u0442\u044c 5% \u0437\u0430 2 \u043d\u0435\u0434\u0435\u043b\u0438 \u043d\u0430 \u043c\u043e\u043c\u0435\u043d\u0442 \u043d\u0430\u043f\u0438\u0441\u0430\u043d\u0438\u044f \u0441\u0442\u0430\u0442\u044c\u0438.<\/p>\n<\/li>\n<\/ol>\n<p>Sharpe 1.5 \u0440\u0435\u0430\u043b\u0438\u0441\u0442\u0438\u0447\u043d\u043e \u0438 \u0443\u043a\u043b\u0430\u0434\u044b\u0432\u0430\u0435\u0442\u0441\u044f \u0432 \u043e\u0436\u0438\u0434\u0430\u0435\u043c\u044b\u0439 \u0434\u0438\u0430\u043f\u0430\u0437\u043e\u043d \u043e\u0442 \u043f\u0440\u0438\u043c\u0435\u043d\u0451\u043d\u043d\u044b\u0445 \u0442\u0435\u0445\u043d\u0438\u043a.<\/p>\n<figure class=\"full-width \"><img decoding=\"async\" src=\"https:\/\/habrastorage.org\/r\/w1560\/getpro\/habr\/upload_files\/679\/83b\/775\/67983b775cbbaeafe813205a606cb6e2.png\" alt=\"\u041f\u0440\u0438\u043c\u0435\u0440 \u0441\u0440\u0430\u0432\u043d\u0435\u043d\u0438\u044f \u043c\u043e\u0434\u0435\u043b\u0435\u0439 \u043f\u043e \u043a\u043b\u044e\u0447\u0435\u0432\u044b\u043c \u043c\u0435\u0442\u0440\u0438\u043a\u0430\u043c \u043d\u0430 \u043f\u0435\u0440\u0438\u043e\u0434\u0430\u0445\" title=\"\u041f\u0440\u0438\u043c\u0435\u0440 \u0441\u0440\u0430\u0432\u043d\u0435\u043d\u0438\u044f \u043c\u043e\u0434\u0435\u043b\u0435\u0439 \u043f\u043e \u043a\u043b\u044e\u0447\u0435\u0432\u044b\u043c \u043c\u0435\u0442\u0440\u0438\u043a\u0430\u043c \u043d\u0430 \u043f\u0435\u0440\u0438\u043e\u0434\u0430\u0445\" width=\"2522\" height=\"1084\" sizes=\"auto, (max-width: 780px) 100vw, 50vw\" srcset=\"https:\/\/habrastorage.org\/r\/w780\/getpro\/habr\/upload_files\/679\/83b\/775\/67983b775cbbaeafe813205a606cb6e2.png 780w,&#10;       https:\/\/habrastorage.org\/r\/w1560\/getpro\/habr\/upload_files\/679\/83b\/775\/67983b775cbbaeafe813205a606cb6e2.png 781w\" loading=\"lazy\" decode=\"async\"\/><\/p>\n<div><figcaption>\u041f\u0440\u0438\u043c\u0435\u0440 \u0441\u0440\u0430\u0432\u043d\u0435\u043d\u0438\u044f \u043c\u043e\u0434\u0435\u043b\u0435\u0439 \u043f\u043e \u043a\u043b\u044e\u0447\u0435\u0432\u044b\u043c \u043c\u0435\u0442\u0440\u0438\u043a\u0430\u043c \u043d\u0430 \u043f\u0435\u0440\u0438\u043e\u0434\u0430\u0445<\/figcaption><\/div>\n<\/figure>\n<hr\/>\n<h2>\u0418\u0442\u043e\u0433\u0438 \u0438 \u0432\u044b\u0432\u043e\u0434\u044b<\/h2>\n<p>\u041d\u0438\u0436\u0435 \u0441\u043f\u0440\u0430\u0432\u043e\u0447\u043d\u043e \u043f\u0440\u0438\u0432\u043e\u0436\u0443 \u0442\u0430\u0431\u043b\u0438\u0446\u0443 \u0441 \u043f\u0435\u0440\u0435\u0447\u043d\u0435\u043c \u0442\u043e\u0433\u043e, \u0447\u0442\u043e \u043d\u0435 \u0441\u0440\u0430\u0431\u043e\u0442\u0430\u043b\u043e. \u0421\u043b\u0435\u0434\u0443\u0435\u0442, \u043e\u0434\u043d\u0430\u043a\u043e, \u043e\u0442\u043c\u0435\u0442\u0438\u0442\u044c, \u0447\u0442\u043e \u043f\u0440\u0438 \u0434\u043e\u043b\u0436\u043d\u044b\u0445 \u0443\u0441\u0438\u043b\u0438\u044f\u0445, \u043d\u0430\u0432\u0435\u0440\u043d\u044f\u043a\u0430, \u0441\u0440\u0430\u0431\u043e\u0442\u0430\u0435\u0442.<\/p>\n<div>\n<div class=\"table\">\n<table>\n<tbody>\n<tr>\n<th data-colwidth=\"271\" width=\"271\">\n<p align=\"left\">\u042d\u043a\u0441\u043f\u0435\u0440\u0438\u043c\u0435\u043d\u0442<\/p>\n<\/th>\n<th>\n<p align=\"left\">\u0420\u0435\u0437\u0443\u043b\u044c\u0442\u0430\u0442<\/p>\n<\/th>\n<\/tr>\n<tr>\n<td data-colwidth=\"271\" width=\"271\">\n<p align=\"left\">SAC tuning<\/p>\n<\/td>\n<td>\n<p align=\"left\">\u0411\u043e\u043b\u0435\u0435 \u0433\u043b\u0443\u0431\u043e\u043a\u0438\u0435 \u0441\u0435\u0442\u0438 \u0447\u0430\u0449\u0435 \u043f\u0435\u0440\u0435\u043e\u0431\u0443\u0447\u0430\u044e\u0442\u0441\u044f, \u0447\u0435\u043c \u0434\u0430\u044e\u0442 \u043f\u043e\u043b\u044c\u0437\u0443<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td data-colwidth=\"271\" width=\"271\">\n<p align=\"left\">LightGBM per-asset signal<\/p>\n<\/td>\n<td>\n<p align=\"left\">\u041e\u0442\u043d\u043e\u0448\u0435\u043d\u0438\u0435 \u0441\u0438\u0433\u043d\u0430\u043b\u0430 \u043a \u0448\u0443\u043c\u0443, \u043a\u043e\u0442\u043e\u0440\u043e\u0435 \u0443\u0434\u0430\u043b\u043e\u0441\u044c \u0432\u044b\u0434\u0435\u043b\u0438\u0442\u044c, \u043e\u043a\u0430\u0437\u0430\u043b\u043e\u0441\u044c \u043d\u0435\u0434\u043e\u0441\u0442\u0430\u0442\u043e\u0447\u043d\u043e \u0434\u043b\u044f \u043f\u043e\u043b\u0443\u0447\u0435\u043d\u0438\u044f \u043f\u043e\u043b\u044c\u0437\u044b \u043e\u0442 \u043a\u043b\u0430\u0441\u0441\u0438\u0447\u0435\u0441\u043a\u043e\u0433\u043e ML<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td data-colwidth=\"271\" width=\"271\">\n<p align=\"left\">TQC \/ DroQ \/ PopArt<\/p>\n<\/td>\n<td>\n<p align=\"left\">\u0410\u043b\u0433\u043e\u0440\u0438\u0442\u043c\u0438\u0447\u0435\u0441\u043a\u0438\u0439 \u0442\u044e\u043d\u0438\u043d\u0433 \u043d\u0435 \u0434\u0430\u043b \u043f\u0440\u0438\u0440\u043e\u0441\u0442\u0430<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td data-colwidth=\"271\" width=\"271\">\n<p align=\"left\">500k extended training<\/p>\n<\/td>\n<td>\n<p align=\"left\">\u041f\u0435\u0440\u0435\u043e\u0431\u0443\u0447\u0435\u043d\u0438\u0435<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td data-colwidth=\"271\" width=\"271\">\n<p align=\"left\">cs_rank feature<\/p>\n<\/td>\n<td>\n<p align=\"left\">\u0414\u043e\u043f\u043e\u043b\u043d\u0438\u0442\u0435\u043b\u044c\u043d\u044b\u0435 \u043f\u0435\u0440\u0435\u043a\u0440\u0451\u0441\u0442\u043d\u044b\u0435 \u0444\u0438\u0447\u0438 (\u043d\u0430\u043f\u0440\u0438\u043c\u0435\u0440, rsi_14) \u043d\u0435 \u0441\u0440\u0430\u0431\u043e\u0442\u0430\u043b\u0438<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td data-colwidth=\"271\" width=\"271\">\n<p align=\"left\">Risk-state obs<\/p>\n<\/td>\n<td>\n<p align=\"left\">\u0414\u043e\u0431\u0430\u0432\u043b\u0435\u043d\u043d\u044b\u0435 \u0432 \u043d\u0430\u0431\u043b\u044e\u0434\u0430\u0435\u043c\u043e\u0435 \u0441\u043e\u0441\u0442\u043e\u044f\u043d\u0438\u0435 \u0441\u0440\u0435\u0434\u044b \u0444\u0438\u0447\u0438 (\u043d\u0430\u043f\u0440\u0438\u043c\u0435\u0440, \u0441\u0432\u044f\u0437\u0430\u043d\u043d\u044b\u0435 \u0441 \u0440\u0438\u0441\u043a\u043e\u043c) \u0430\u0433\u0435\u043d\u0442 \u0438\u0433\u043d\u043e\u0440\u0438\u0440\u0443\u0435\u0442, \u0435\u0441\u043b\u0438 \u043e\u043d\u0438 \u043d\u0430\u043f\u0440\u044f\u043c\u0443\u044e \u043d\u0435 \u0443\u0447\u0430\u0441\u0442\u0432\u0443\u044e\u0442 \u0432 \u0440\u0430\u0441\u0447\u0451\u0442\u0435 \u043d\u0430\u0433\u0440\u0430\u0434\u044b<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td data-colwidth=\"271\" width=\"271\">\n<p align=\"left\">RCAA \u00d720<\/p>\n<p align=\"left\">Per-regime gross penalty<\/p>\n<\/td>\n<td>\n<p align=\"left\">\u0423\u0441\u0438\u043b\u0435\u043d\u0438\u0435 \u043e\u0442\u0434\u0435\u043b\u044c\u043d\u044b\u0445 \u043a\u043e\u043c\u043f\u043e\u043d\u0435\u043d\u0442\u043e\u0432 \u043d\u0430\u0433\u0440\u0430\u0434\u044b \u0438\u043b\u0438 \u0448\u0442\u0440\u0430\u0444\u043e\u0432 \u043b\u043e\u043c\u0430\u0435\u0442 \u0440\u0435\u0431\u0430\u043b\u0430\u043d\u0441\u0438\u0440\u043e\u0432\u043a\u0443 \u043d\u0430 \u043e\u0441\u043d\u043e\u0432\u0435 <strong>shadow portfolio<\/strong><\/p>\n<\/td>\n<\/tr>\n<tr>\n<td data-colwidth=\"271\" width=\"271\">\n<p align=\"left\">Action-averaging ensemble<\/p>\n<\/td>\n<td>\n<p align=\"left\">\u041f\u043e\u0445\u043e\u0436\u0438\u0435 \u043c\u043e\u0434\u0435\u043b\u0438 \u0443\u0441\u0440\u0435\u0434\u043d\u044f\u044e\u0442\u0441\u044f <strong>\u0432 \u043b\u0443\u0447\u0448\u0435\u043c \u0441\u043b\u0443\u0447\u0430\u0435<\/strong> \u0432 \u0440\u0430\u0432\u043d\u043e\u0432\u0435\u0441\u043d\u044b\u0439 \u043f\u043e\u0440\u0442\u0444\u0435\u043b\u044c \u0434\u043b\u044f \u043b\u044e\u0431\u043e\u0433\u043e \u0440\u0435\u0436\u0438\u043c\u0430 \u0440\u044b\u043d\u043a\u0430<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td data-colwidth=\"271\" width=\"271\">\n<p align=\"left\">Stop-loss overlay<\/p>\n<\/td>\n<td>\n<p align=\"left\">\u0410\u0433\u0435\u043d\u0442 \u0441\u0430\u043c \u0443\u0447\u0438\u0442\u0441\u044f \u043e\u0433\u0440\u0430\u043d\u0438\u0447\u0438\u0432\u0430\u0442\u044c \u0440\u0438\u0441\u043a, \u0430 stop-loss \u0438\u0433\u0440\u0430\u0435\u0442 \u0440\u043e\u043b\u044c \u0443\u0441\u0438\u043b\u0438\u0442\u0435\u043b\u044f \u0448\u0442\u0440\u0430\u0444\u0430 \u0438 \u043d\u0435 \u0438\u0434\u0451\u0442 \u043d\u0430 \u043f\u043e\u043b\u044c\u0437\u0443<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td data-colwidth=\"271\" width=\"271\">\n<p align=\"left\">Universe expansion (\u00d72)<\/p>\n<\/td>\n<td>\n<p align=\"left\">6 \u0441\u043a\u0440\u0443\u043f\u0443\u043b\u0451\u0437\u043d\u043e \u043e\u0442\u043e\u0431\u0440\u0430\u043d\u043d\u044b\u0445 &gt; 10 \u0441\u043b\u0443\u0447\u0430\u0439\u043d\u044b\u0445<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td data-colwidth=\"271\" width=\"271\">\n<p align=\"left\">GMM-HMM \u0440\u0435\u0436\u0438\u043c-\u0434\u0435\u0442\u0435\u043a\u0442\u043e\u0440<\/p>\n<\/td>\n<td>\n<p align=\"left\">\u041b\u044e\u0431\u0430\u044f \u043d\u0435\u0441\u0442\u0430\u0431\u0438\u043b\u044c\u043d\u043e\u0441\u0442\u044c \u043a\u043b\u0430\u0441\u0441\u0438\u0444\u0438\u043a\u0430\u0446\u0438\u0438 \u0440\u0435\u0436\u0438\u043c\u043e\u0432 \u0440\u0443\u0448\u0438\u0442 \u043e\u0436\u0438\u0434\u0430\u0435\u043c\u0443\u044e \u0434\u043e\u0445\u043e\u0434\u043d\u043e\u0441\u0442\u044c<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td data-colwidth=\"271\" width=\"271\">\n<p align=\"left\">LLM-\u0430\u0443\u0433\u043c\u0435\u043d\u0442\u0430\u0446\u0438\u044f<\/p>\n<\/td>\n<td>\n<p align=\"left\">\u0414\u043e\u043b\u0433\u043e \u0438 \u043d\u0435 \u0434\u043e\u0431\u0430\u0432\u043b\u044f\u0435\u0442 alpha<\/p>\n<\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<\/div>\n<\/div>\n<h4>\u0423\u0440\u043e\u043a\u0438:<\/h4>\n<ol>\n<li>\n<p>RL &#8212; \u043d\u0430\u0438\u043c\u0435\u043d\u0435\u0435 \u0444\u0430\u0442\u0430\u043b\u044c\u043d\u044b\u0439 \u0442\u0438\u043f \u043e\u0448\u0438\u0431\u043a\u0438 \u043f\u0440\u0438 \u043f\u0440\u043e\u0435\u043a\u0442\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u0438 \u0442\u043e\u0440\u0433\u043e\u0432\u043e\u0439 \u0441\u0438\u0441\u0442\u0435\u043c\u044b.<\/p>\n<\/li>\n<li>\n<p>\u041c\u0435\u0442\u043e\u0434\u043e\u043b\u043e\u0433\u0438\u044f \u0438 \u0441\u0442\u0440\u0443\u043a\u0442\u0443\u0440\u0430 \u043c\u044b\u0448\u043b\u0435\u043d\u0438\u044f \u043e\u0431 \u044d\u043a\u0441\u043f\u0435\u0440\u0438\u043c\u0435\u043d\u0442\u0430\u0445 <strong>&gt;<\/strong> \u0410\u0440\u0445\u0438\u0442\u0435\u043a\u0442\u0443\u0440\u0430. MoE, DSR, hybrid expert-swap, regime detector &#8212; \u0447\u0430\u0441\u0442\u043d\u044b\u0435 \u0442\u0435\u0445\u043d\u0438\u0447\u0435\u0441\u043a\u0438\u0435 \u043d\u0430\u0445\u043e\u0434\u043a\u0438, \u043a\u043e\u0442\u043e\u0440\u044b\u0435 \u0432 \u0434\u0440\u0443\u0433\u043e\u043c \u043a\u043e\u043d\u0442\u0435\u043a\u0441\u0442\u0435 \u043c\u043e\u0433\u0443\u0442 \u043d\u0435 \u0441\u0440\u0430\u0431\u043e\u0442\u0430\u0442\u044c. \u0414\u0438\u0441\u0446\u0438\u043f\u043b\u0438\u043d\u0430 multi-seed validation, distribution comparison, shuffle-test, walk-forward \u043f\u043e \u0440\u0430\u0437\u043d\u044b\u043c \u0440\u0435\u0436\u0438\u043c\u0430\u043c, \u0434\u043e\u043a\u0443\u043c\u0435\u043d\u0442\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u0435 \u043f\u0440\u043e\u0432\u0430\u043b\u043e\u0432 \u043d\u0430\u0440\u0430\u0432\u043d\u0435 \u0441 \u0443\u0441\u043f\u0435\u0445\u0430\u043c\u0438 \u0438 \u0442\u0449\u0430\u0442\u0435\u043b\u044c\u043d\u044b\u0435 \u0440\u0430\u0437\u0431\u043e\u0440\u044b\u00a0&#8212; \u043f\u0435\u0440\u0435\u043d\u043e\u0441\u0438\u0442\u0441\u044f \u043d\u0430 \u043b\u044e\u0431\u043e\u0439 ML-\u043f\u0440\u043e\u0435\u043a\u0442.<\/p>\n<\/li>\n<li>\n<p>Feature engineering <strong>&gt;<\/strong> \u0432\u0441\u0451 \u043e\u0441\u0442\u0430\u043b\u044c\u043d\u043e\u0435. \u0422\u043e, \u0447\u0442\u043e \u0432\u0441\u0435\u0433\u0434\u0430 \u0440\u0430\u0431\u043e\u0442\u0430\u0435\u0442: \u0430\u043a\u043a\u0443\u0440\u0430\u0442\u043d\u0430\u044f \u0440\u0430\u0431\u043e\u0442\u0430 \u0441 \u0434\u0430\u043d\u043d\u044b\u043c\u0438, \u043e\u0447\u0438\u0441\u0442\u043a\u0430 \u0438 \u0440\u0443\u043a\u043e\u0442\u0432\u043e\u0440\u043d\u044b\u0435 \u0444\u0438\u0447\u0438. \u0415\u0441\u043b\u0438 \u0432 RL-\u0442\u0440\u0435\u0439\u0434\u0438\u043d\u0433\u0435 \u043d\u0435\u0442 \u043e\u0447\u0435\u0432\u0438\u0434\u043d\u043e\u0433\u043e \u043f\u0440\u043e\u0440\u044b\u0432\u0430 \u0442\u043e \u0448\u0430\u043d\u0441\u044b, \u0447\u0442\u043e \u043e\u043d \u0441\u0438\u0434\u0438\u0442 \u0432 <em>\u043f\u0440\u0430\u0432\u0438\u043b\u044c\u043d\u043e\u0439<\/em> \u0444\u0443\u043d\u043a\u0446\u0438\u0438 \u043d\u0430\u0433\u0440\u0430\u0434\u044b &#8212; \u043d\u0438\u0437\u043a\u0438\u0435.<\/p>\n<\/li>\n<li>\n<p>Single-seed \u0441\u0440\u0430\u0432\u043d\u0435\u043d\u0438\u044f &#8212; \u0433\u0435\u043d\u0435\u0440\u0430\u0442\u043e\u0440 \u0441\u043b\u0443\u0447\u0430\u0439\u043d\u044b\u0445 \u0432\u044b\u0432\u043e\u0434\u043e\u0432. \u041b\u044e\u0431\u043e\u0435 \u0443\u0441\u043b\u043e\u0436\u043d\u0435\u043d\u0438\u0435 \u0430\u0440\u0445\u0438\u0442\u0435\u043a\u0442\u0443\u0440\u044b \u043f\u0440\u0438 \u043d\u0435\u0441\u0442\u0430\u0431\u0438\u043b\u044c\u043d\u043e\u0439 \u0431\u0430\u0437\u0435 \u043d\u0435 \u043f\u043e\u0434\u0442\u0432\u0435\u0440\u0436\u0434\u0430\u0435\u0442 \u0438 \u043d\u0435 \u043e\u043f\u0440\u043e\u0432\u0435\u0440\u0433\u0430\u0435\u0442 \u043d\u0438\u043a\u0430\u043a\u0438\u0435 \u0440\u0435\u0437\u0443\u043b\u044c\u0442\u0430\u0442\u044b \u0432\u0430\u0448\u0438\u0445 \u044d\u043a\u0441\u043f\u0435\u0440\u0438\u043c\u0435\u043d\u0442\u043e\u0432. \u0420\u0430\u0437\u043d\u0438\u0446\u0430 \u0432 0.1\u20130.3 Sharpe \u043c\u0435\u0436\u0434\u0443 \u043b\u044e\u0431\u044b\u043c\u0438 \u0434\u0432\u0443\u043c\u044f \u0442\u043e\u0447\u043a\u0430\u043c\u0438 &#8212; \u0441\u0442\u0430\u0442\u0438\u0441\u0442\u0438\u0447\u0435\u0441\u043a\u0438 \u043d\u0435\u0440\u0430\u0437\u043b\u0438\u0447\u0438\u043c\u044b\u0439 \u0448\u0443\u043c.<\/p>\n<\/li>\n<li>\n<p>Data leakage &#8212; \u0441\u0430\u043c\u0430\u044f \u0434\u043e\u0440\u043e\u0433\u0430\u044f \u043e\u0448\u0438\u0431\u043a\u0430. \u041e\u0434\u043d\u0430 \u0441\u0442\u0440\u043e\u0447\u043a\u0430\u00a0<code>bfill<\/code>\u00a0\u0434\u0430\u0451\u0442 \u0432\u044b\u0441\u043e\u043a\u0438\u0439 \u0432\u0430\u043b\u0438\u0434\u0430\u0446\u0438\u043e\u043d\u043d\u044b\u0439 Sharpe \u0438 \u043a\u0430\u0442\u0430\u0441\u0442\u0440\u043e\u0444\u0438\u0447\u0435\u0441\u043a\u0438 \u043d\u0438\u0437\u043a\u0438\u0439 \u0440\u0435\u0437\u0443\u043b\u044c\u0442\u0430\u0442 \u043d\u0430 \u0442\u0435\u0441\u0442\u0430\u0445, \u0434\u0430\u0436\u0435 \u0435\u0441\u043b\u0438 \u0443\u0442\u0435\u0447\u043a\u0430 \u043f\u0440\u043e\u0438\u0437\u043e\u0448\u043b\u0430 \u0434\u043b\u044f \u0432\u0441\u043f\u043e\u043c\u043e\u0433\u0430\u0442\u0435\u043b\u044c\u043d\u043e\u0433\u043e \u043f\u0430\u0440\u0430\u043c\u0435\u0442\u0440\u0430 (\u043f\u0440\u0438 \u0440\u0430\u0441\u0447\u0451\u0442\u0435 \u043d\u0430\u0433\u0440\u0430\u0434\u044b) \u0432 \u0430\u0440\u0445\u0438\u0442\u0435\u043a\u0442\u0443\u0440\u0435.<\/p>\n<\/li>\n<li>\n<p>Hybrid expert-swap &#8212; \u043c\u043e\u0449\u043d\u044b\u0439 \u043f\u0440\u0438\u0451\u043c, \u0434\u043e\u0441\u0442\u0443\u043f\u043d\u044b\u0439 \u0437\u0430 \u0441\u0447\u0451\u0442 MoE. \u0410\u0440\u0445\u0438\u0442\u0435\u043a\u0442\u0443\u0440\u0430\u00a0<strong>\u043c\u043e\u0434\u0443\u043b\u044c\u043d\u0430<\/strong>, \u0433\u0434\u0435 \u042d\u043a\u0441\u043f\u0435\u0440\u0442 &#8212; \u044d\u0442\u043e \u043e\u0442\u0434\u0435\u043b\u044c\u043d\u044b\u0439 .zip \u0441 \u0432\u0435\u0441\u0430\u043c\u0438, \u0435\u0433\u043e \u043c\u043e\u0436\u043d\u043e \u043a\u043e\u043f\u0438\u0440\u043e\u0432\u0430\u0442\u044c, \u043a\u043e\u043c\u0431\u0438\u043d\u0438\u0440\u043e\u0432\u0430\u0442\u044c \u0438 \u0442\u0435\u0441\u0442\u0438\u0440\u043e\u0432\u0430\u0442\u044c \u0432 \u0440\u0430\u0437\u043d\u044b\u0445 \u0441\u0446\u0435\u043d\u0430\u0440\u0438\u044f\u0445.<\/p>\n<\/li>\n<li>\n<p>95% \u044d\u043a\u0441\u043f\u0435\u0440\u0438\u043c\u0435\u043d\u0442\u043e\u0432 \u043f\u0440\u043e\u0432\u0451\u043b <strong>Claude<\/strong>, \u043d\u043e \u043f\u043e\u043b\u043e\u0436\u0438\u0442\u0435\u043b\u044c\u043d\u044b\u0439 \u0440\u0435\u0437\u0443\u043b\u044c\u0442\u0430\u0442 \u0434\u043e\u0441\u0442\u0438\u0433\u0430\u043b\u0441\u044f \u0442\u043e\u043b\u044c\u043a\u043e \u0442\u043e\u0433\u0434\u0430, \u043a\u043e\u0433\u0434\u0430 \u043f\u0440\u0438\u043d\u0438\u043c\u0430\u043b \u0443\u0447\u0430\u0441\u0442\u0438\u0435 \u0447\u0435\u043b\u043e\u0432\u0435\u043a.<\/p>\n<\/li>\n<\/ol>\n<h4>\u0427\u0442\u043e \u043c\u043e\u0434\u0435\u043b\u044c \u041d\u0415 \u0443\u043c\u0435\u0435\u0442:<\/h4>\n<ol>\n<li>\n<p>\u041a\u043e\u0440\u043e\u0442\u043a\u0438\u0435 \u043f\u043e\u0437\u0438\u0446\u0438\u0438. \u0422.\u0435. \u0432 \u043b\u0443\u0447\u0448\u0435\u043c \u0441\u043b\u0443\u0447\u0430\u0435 \u0430\u0433\u0435\u043d\u0442 \u0441\u043c\u043e\u0436\u0435\u0442 \u0447\u0430\u0441\u0442\u0438\u0447\u043d\u043e \u0441\u0438\u0434\u0435\u0442\u044c \u0432 \u0434\u0435\u043d\u044c\u0433\u0430\u0445, TLT \u0438 XAU.<\/p>\n<\/li>\n<li>\n<p>\u0420\u0435\u0431\u0430\u043b\u0430\u043d\u0441\u0438\u0440\u043e\u0432\u043a\u0430 \u0447\u0430\u0449\u0435, \u0447\u0435\u043c \u0440\u0430\u0437 \u0432 \u0434\u0435\u043d\u044c. \u0410\u0433\u0435\u043d\u0442 \u0441\u043c\u043e\u0442\u0440\u0438\u0442 \u043d\u0430 \u0446\u0435\u043d\u044b \u0437\u0430\u043a\u0440\u044b\u0442\u0438\u044f \u043f\u0440\u0435\u0434\u044b\u0434\u0443\u0449\u0435\u0433\u043e \u0434\u043d\u044f \u0438 \u0441\u043e\u0432\u0435\u0440\u0448\u0430\u0435\u0442 \u043c\u0430\u043a\u0441\u0438\u043c\u0443\u043c 6 \u0441\u0434\u0435\u043b\u043e\u043a.<\/p>\n<\/li>\n<li>\n<p>\u0418\u0437\u043c\u0435\u043d\u0438\u0442\u044c \u0441\u043e\u0441\u0442\u0430\u0432 \u0438\u043b\u0438 \u043a\u043e\u043b\u0438\u0447\u0435\u0441\u0442\u0432\u043e \u0442\u0438\u043a\u0435\u0440\u043e\u0432 \u0432 \u043f\u043e\u0440\u0442\u0444\u0435\u043b\u0435. \u0414\u043e\u0431\u0430\u0432\u0438\u0442\u044c\/\u0443\u0431\u0440\u0430\u0442\u044c \u0442\u0438\u043a\u0435\u0440 = \u043f\u0435\u0440\u0435\u043e\u0431\u0443\u0447\u0438\u0442\u044c \u0432\u0441\u0451 \u0441 \u043d\u0443\u043b\u044f \u0438 \u0441 \u043d\u0435\u0438\u0437\u0432\u0435\u0441\u0442\u043d\u044b\u043c \u0440\u0435\u0437\u0443\u043b\u044c\u0442\u0430\u0442\u043e\u043c.<\/p>\n<\/li>\n<li>\n<p>\u0422\u043e\u0440\u0433\u043e\u0432\u043b\u044f \u0441 \u043f\u043b\u0435\u0447\u043e\u043c. \u0424\u0430\u043a\u0442\u0438\u0447\u0435\u0441\u043a\u0438 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u0435\u0442\u0441\u044f \u0432\u0435\u0441\u044c NAV.<\/p>\n<\/li>\n<li>\n<p>\u041e\u0431\u043e\u0440\u043e\u0442 \u0437\u0430 1 \u0442\u043e\u0440\u0433\u043e\u0432\u044b\u0439 \u0434\u0435\u043d\u044c \u0431\u043e\u043b\u0435\u0435 <code>0.3<\/code>\u00a0. \u0417\u0430\u0449\u0438\u0442\u0430 \u043e\u0442 \u043e\u0441\u0446\u0438\u043b\u043b\u044f\u0446\u0438\u0439 \u0438 \u043e\u0433\u0440\u0430\u043d\u0438\u0447\u0435\u043d\u0438\u0435 \u0440\u0435\u0430\u043a\u0446\u0438\u0438 \u043d\u0430 \u0440\u0435\u0437\u043a\u0438\u0435 \u0441\u043e\u0431\u044b\u0442\u0438\u044f.<\/p>\n<\/li>\n<li>\n<p>\u0421\u0443\u0449\u0435\u0441\u0442\u0432\u0435\u043d\u043d\u043e \u043e\u0442\u043b\u0438\u0447\u0430\u044e\u0449\u0438\u0439\u0441\u044f \u043e\u0442 1 000 000 \u043f\u043e\u0440\u0442\u0444\u0435\u043b\u044c. \u0412\u043b\u0438\u044f\u043d\u0438\u0435 \u043a\u0440\u0443\u043f\u043d\u044b\u0445 \u043e\u0440\u0434\u0435\u0440\u043e\u0432 \u043d\u0430 \u0440\u044b\u043d\u043e\u043a \u043d\u0435 \u0443\u0447\u0438\u0442\u044b\u0432\u0430\u0435\u0442\u0441\u044f, \u043f\u043e\u044d\u0442\u043e\u043c\u0443 \u0432 \u043f\u043e\u0440\u0442\u0444\u0435\u043b\u0435 \u0442\u043e\u043b\u044c\u043a\u043e \u043b\u0438\u043a\u0432\u0438\u0434\u043d\u044b\u0435 \u0430\u043a\u0442\u0438\u0432\u044b.<\/p>\n<\/li>\n<li>\n<p>\u0410\u043a\u0442\u0438\u0432\u044b, \u0434\u043b\u044f \u043a\u043e\u0442\u043e\u0440\u044b\u0445 VIX \u043d\u0435 \u044f\u0432\u043b\u044f\u0435\u0442\u0441\u044f \u0440\u0435\u043f\u0440\u0435\u0437\u0435\u043d\u0442\u0430\u0442\u0438\u0432\u043d\u043e\u0439 \u043c\u0435\u0440\u043e\u0439 \u0441\u0438\u0441\u0442\u0435\u043c\u043d\u043e\u0433\u043e \u0440\u0438\u0441\u043a\u0430.<\/p>\n<\/li>\n<\/ol>\n<p>\u041e\u0431\u044f\u0437\u0430\u0442\u0435\u043b\u044c\u043d\u044b\u0439 \u043a\u043e\u0440\u043e\u0442\u043a\u0438\u0439 \u0431\u043b\u043e\u043a:<\/p>\n<ol>\n<li>\n<p>\u0418\u0441\u0442\u043e\u0440\u0438\u0447\u0435\u0441\u043a\u0430\u044f \u0434\u043e\u0445\u043e\u0434\u043d\u043e\u0441\u0442\u044c \u2260 \u0434\u043e\u0445\u043e\u0434\u043d\u043e\u0441\u0442\u044c \u0432 \u0431\u0443\u0434\u0443\u0449\u0435\u043c.<\/p>\n<\/li>\n<li>\n<p>\u0420\u0435\u0437\u0443\u043b\u044c\u0442\u0430\u0442\u044b backtest \u2260 \u0440\u0435\u0430\u043b\u044c\u043d\u0430\u044f \u044d\u043a\u0441\u043f\u043b\u0443\u0430\u0442\u0430\u0446\u0438\u044f.<\/p>\n<\/li>\n<li>\n<p>\u0420\u0430\u0431\u043e\u0442\u0430 \u0432\u044b\u043f\u043e\u043b\u043d\u0435\u043d\u0430 \u0432 \u0430\u043a\u0430\u0434\u0435\u043c\u0438\u0447\u0435\u0441\u043a\u0438\u0445 \u0446\u0435\u043b\u044f\u0445.<\/p>\n<\/li>\n<li>\n<p>\u0427\u0442\u043e\u0431\u044b RL-\u0441\u0442\u0440\u0430\u0442\u0435\u0433\u0438\u044f \u0441\u0440\u0430\u0431\u043e\u0442\u0430\u043b\u0430 \u043d\u0430\u043f\u0435\u0440\u0451\u0434 \u043d\u0435\u0434\u043e\u0441\u0442\u0430\u0442\u043e\u0447\u043d\u043e \u0435\u0451 \u043e\u0431\u0443\u0447\u0438\u0442\u044c. \u041d\u0443\u0436\u043d\u043e \u043f\u043e\u0441\u0442\u0440\u043e\u0438\u0442\u044c \u0438\u043d\u0444\u0440\u0430\u0441\u0442\u0440\u0443\u043a\u0442\u0443\u0440\u0443, \u043a\u043e\u0442\u043e\u0440\u0430\u044f \u0432\u0430\u0441 \u043e\u0441\u0442\u0430\u043d\u043e\u0432\u0438\u0442 \u043f\u0440\u0435\u0436\u0434\u0435, \u0447\u0435\u043c \u0432\u044b \u043f\u043e\u0442\u0435\u0440\u044f\u0435\u0442\u0435 \u0434\u0435\u043d\u044c\u0433\u0438. \u0411\u043e\u043b\u044c\u0448\u0430\u044f \u0447\u0430\u0441\u0442\u044c \u043f\u0440\u043e\u0435\u043a\u0442\u0430 \u044d\u0442\u043e \u043d\u0435 \u043c\u043e\u0434\u0435\u043b\u044c, \u0430 \u0438\u043d\u0444\u0440\u0430\u0441\u0442\u0440\u0443\u043a\u0442\u0443\u0440\u0430 \u0432\u043e\u043a\u0440\u0443\u0433 \u043c\u043e\u0434\u0435\u043b\u0438, \u043d\u0430\u043f\u0440\u0430\u0432\u043b\u0435\u043d\u043d\u0430\u044f \u043d\u0430 \u043f\u043e\u0434\u0442\u0432\u0435\u0440\u0436\u0434\u0435\u043d\u0438\u0435, \u0447\u0442\u043e \u0432\u0441\u0451 \u0440\u0430\u0431\u043e\u0442\u0430\u0435\u0442 \u0432 \u0441\u043e\u043e\u0442\u0432\u0435\u0442\u0441\u0442\u0432\u0438\u0438 \u0441 \u043e\u0436\u0438\u0434\u0430\u043d\u0438\u044f\u043c\u0438.<\/p>\n<\/li>\n<\/ol>\n<details class=\"spoiler\">\n<summary>Coding-\u0430\u0433\u0435\u043d\u0442 \u0441\u043c\u043e\u0436\u0435\u0442 \u0432\u043e\u0441\u0441\u0442\u0430\u043d\u043e\u0432\u0438\u0442\u044c \u043f\u043e \u0434\u0430\u043d\u043d\u043e\u0439 \u0441\u0442\u0430\u0442\u044c\u0435 \u0440\u0430\u0431\u043e\u0442\u0430\u044e\u0449\u0443\u044e \u0441\u0438\u0441\u0442\u0435\u043c\u0443<\/summary>\n<div class=\"spoiler__content\">\n<pre><code class=\"markdown\">SAC (per expert):  learning_rate = 2.4e-4  tau = 1e-4  gamma = 0.995  batch_size = 256  buffer_size = 1_000_000  target_entropy = auto (-1.0 for chaotic)  use_sde = False  net_arch: pi=[256,256], qf=[256,256]  Action mapping:  max_per_ticker = 0.25  pipeline order: tanh \u2192 long-only clip \u2192                   turnover smoothing (\u03b1=0.2) \u2192                   rebalance epsilon (0.01) \u2192                   nav-cap (max(nav, 0.8\u00d7peak_nav))Reward (p103_rcaa_ch_dsr1):  portfolio_reward.loss_mul = 1.3  rcaa.scale = 5.0  rcaa.signs = {1: +1.0, 2: -1.0, 3: +1.0}  dsr.scale = 1.0  dsr.halflife = 20  drawdown_penalty.cap = 0.15  drawdown_penalty.scale = 2.0  Carry (in obs):  carry_decay = 0.9  carry_horizon = 5 days  trade_bonus_turnover_threshold = 0.02Training schedule:  timesteps_per_expert = 100_000  early_stopping: patience=3, eval_freq=2000, n_eval_episodes=5  episode max_steps = 100<\/code><div class=\"code-explainer\"><a href=\"https:\/\/sourcecraft.dev\/\" class=\"tm-button code-explainer__link\" style=\"visibility: hidden;\"><img style=\"width:14px;height:14px;object-fit:cover;object-position:left;\"\/><\/a><\/div><\/pre>\n<p><sub>* \u0443\u043f\u0443\u0449\u0435\u043d\u043e \u0432 \u043f\u043e\u0432\u0435\u0441\u0442\u0432\u043e\u0432\u0430\u043d\u0438\u0438, \u043d\u043e \u0432\u0430\u0436\u043d\u043e \u0434\u043b\u044f \u0440\u0435\u0430\u043b\u0438\u0437\u0430\u0446\u0438\u0438<\/sub><\/p>\n<\/div>\n<\/details>\n<\/div>\n<p>\u0441\u0441\u044b\u043b\u043a\u0430 \u043d\u0430 \u043e\u0440\u0438\u0433\u0438\u043d\u0430\u043b \u0441\u0442\u0430\u0442\u044c\u0438 <a href=\"https:\/\/habr.com\/ru\/articles\/1030056\/\">https:\/\/habr.com\/ru\/articles\/1030056\/<\/a><\/p>\n","protected":false},"excerpt":{"rendered":"<p>\u0420\u0435\u0447\u044c \u043f\u043e\u0439\u0434\u0451\u0442 \u043e \u0440\u0430\u0437\u0440\u0430\u0431\u043e\u0442\u043a\u0435 \u0441\u0438\u0441\u0442\u0435\u043c\u044b \u0430\u043b\u0433\u043e\u0440\u0438\u0442\u043c\u0438\u0447\u0435\u0441\u043a\u043e\u0439 \u0442\u043e\u0440\u0433\u043e\u0432\u043b\u0438 \u0441 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u043d\u0438\u0435\u043c \u043e\u0431\u0443\u0447\u0435\u043d\u0438\u044f \u0441 \u043f\u043e\u0434\u043a\u0440\u0435\u043f\u043b\u0435\u043d\u0438\u0435\u043c (reinforcement learning, \u0434\u0430\u043b\u0435\u0435 RL). \u041f\u0440\u043e\u0439\u0434\u0451\u043c \u043f\u0443\u0442\u044c \u043e\u0442 \u0438\u0434\u0435\u0438 \u0434\u043e \u0440\u0430\u0431\u043e\u0442\u0430\u044e\u0449\u0435\u0439 \u0441\u0438\u0441\u0442\u0435\u043c\u044b \u0441 \u0440\u0430\u0437\u0443\u043c\u043d\u043e\u0439 \u0434\u0435\u0442\u0430\u043b\u0438\u0437\u0430\u0446\u0438\u0435\u0439. \u0420\u0430\u0441\u0441\u043a\u0430\u0436\u0443 \u043f\u0440\u043e \u0441\u0432\u043e\u0438 \u043e\u0448\u0438\u0431\u043a\u0438: \u0440\u0430\u0434\u043e\u0432\u0430\u043b\u0441\u044f single-seed \u0443\u0441\u043f\u0435\u0445\u0430\u043c, \u0432\u0435\u0440\u0438\u043b Claude Code \u043d\u0430 \u0441\u043b\u043e\u0432\u043e, \u0441\u0447\u0438\u0442\u0430\u043b \u043b\u0443\u0447\u0448\u0443\u044e \u043c\u043e\u0434\u0435\u043b\u044c \u0433\u043e\u0434\u043d\u043e\u0439 \u0434\u043b\u044f production, \u0432 \u0442\u043e \u0432\u0440\u0435\u043c\u044f \u043a\u0430\u043a \u043d\u0430 \u0441\u0430\u043c\u043e\u043c \u0434\u0435\u043b\u0435 \u044d\u0442\u043e \u0431\u044b\u043b \u0432\u0435\u0440\u0445\u043d\u0438\u0439 \u043a\u0432\u0430\u0440\u0442\u0438\u043b\u044c \u0441\u0438\u0434-\u0448\u0443\u043c\u0430. \u0412\u043d\u0443\u0442\u0440\u0438 Mixture-of-Experts \u043f\u043e \u0440\u044b\u043d\u043e\u0447\u043d\u044b\u043c \u0440\u0435\u0436\u0438\u043c\u0430\u043c, shadow-routing \u043d\u0430 rolling Sharpe, hybrid expert-swap, \u043c\u0435\u0442\u043e\u0434\u043e\u043b\u043e\u0433\u0438\u044f \u0432\u0430\u043b\u0438\u0434\u0430\u0446\u0438\u0438, \u0430 \u0442\u0430\u043a\u0436\u0435 \u043d\u0435\u0431\u043e\u043b\u044c\u0448\u043e\u0439 \u0441\u043f\u0438\u0441\u043e\u043a \u0432\u0441\u0435\u0433\u043e \u0442\u043e\u0433\u043e, \u0447\u0442\u043e \u043d\u0435 \u0441\u0440\u0430\u0431\u043e\u0442\u0430\u043b\u043e. \u041f\u043e\u0434\u043e\u0439\u0434\u0451\u0442 \u0432 \u043a\u0430\u0447\u0435\u0441\u0442\u0432\u0435 \u0438\u043d\u0441\u0442\u0440\u0443\u043a\u0446\u0438\u044f \u0434\u043b\u044f ai-\u0430\u0433\u0435\u043d\u0442\u0430, \u0447\u0442\u043e\u0431\u044b \u043f\u043e\u0432\u0442\u043e\u0440\u0438\u0442\u044c \u043e\u043f\u044b\u0442 \u0438 \u043f\u043e\u043d\u044f\u0442\u044c \u043f\u043e\u0447\u0435\u043c\u0443 \u043e\u043d\u043e \u0440\u0430\u0431\u043e\u0442\u0430\u0435\u0442.\u042d\u0442\u043e \u0438\u0441\u0441\u043b\u0435\u0434\u043e\u0432\u0430\u0442\u0435\u043b\u044c\u0441\u043a\u0438\u0439 \u043f\u0440\u043e\u0435\u043a\u0442, \u0446\u0435\u043b\u044c\u044e \u043a\u043e\u0442\u043e\u0440\u043e\u0433\u043e \u0431\u044b\u043b\u0430 \u043f\u0440\u043e\u0432\u0435\u0440\u043a\u0430 \u0433\u0438\u043f\u043e\u0442\u0435\u0437\u044b, \u0447\u0442\u043e \u043d\u0430 \u043e\u0441\u043d\u043e\u0432\u0435 RL \u043c\u043e\u0436\u043d\u043e \u043f\u043e\u0441\u0442\u0440\u043e\u0438\u0442\u044c \u0447\u0442\u043e-\u0442\u043e \u0440\u0430\u0431\u043e\u0442\u0430\u044e\u0449\u0435\u0435 \u0441 \u0432\u043e\u0437\u043c\u043e\u0436\u043d\u043e\u0441\u0442\u044c\u044e \u0434\u0430\u043b\u044c\u043d\u0435\u0439\u0448\u0435\u0433\u043e \u0441\u043e\u0432\u0435\u0440\u0448\u0435\u043d\u0441\u0442\u0432\u043e\u0432\u0430\u043d\u0438\u044f, \u0442.\u043a. \u0432 \u043e\u0442\u043a\u0440\u044b\u0442\u043e\u043c \u0434\u043e\u0441\u0442\u0443\u043f\u0435 \u043d\u0438\u0447\u0435\u0433\u043e \u0440\u0430\u0431\u043e\u0442\u0430\u044e\u0449\u0435\u0433\u043e \u043d\u0430\u0439\u0442\u0438 \u043d\u0435 \u0443\u0434\u0430\u043b\u043e\u0441\u044c. \u041d\u0435 \u044f\u0432\u043b\u044f\u044e\u0441\u044c \u043f\u0440\u043e\u0444\u0435\u0441\u0441\u0438\u043e\u043d\u0430\u043b\u043e\u043c \u043a\u0432\u0430\u043d\u0442-\u0442\u0440\u0435\u0439\u0434\u0435\u0440\u043e\u043c, \u043f\u043e\u044d\u0442\u043e\u043c\u0443 \u0434\u043b\u044f \u044d\u043a\u0441\u043f\u0435\u0440\u0442\u043e\u0432 \u0440\u0430\u0441\u0441\u0443\u0436\u0434\u0435\u043d\u0438\u044f \u043c\u043e\u0433\u0443\u0442 \u043a\u0430\u0437\u0430\u0442\u044c\u0441\u044f \u0434\u0438\u043b\u0435\u0442\u0430\u043d\u0442\u0441\u043a\u0438\u043c\u0438. \u0411\u0443\u0434\u0443 \u0440\u0430\u0434 \u0440\u0430\u0437\u0443\u043c\u043d\u043e\u0439 \u043a\u0440\u0438\u0442\u0438\u043a\u0435 \u0438 \u0440\u0435\u043a\u043e\u043c\u0435\u043d\u0434\u0430\u0446\u0438\u044f\u043c. \u041a\u0430\u043a\u0438\u0435-\u0442\u043e \u0434\u0435\u0442\u0430\u043b\u0438 \u043e\u043a\u0430\u0437\u0430\u043b\u0438\u0441\u044c \u0437\u0430 \u043f\u0440\u0435\u0434\u0435\u043b\u0430\u043c\u0438 \u0441\u043e\u0434\u0435\u0440\u0436\u0430\u043d\u0438\u044f \u0434\u043b\u044f \u044d\u043a\u043e\u043d\u043e\u043c\u0438\u0438, \u0442.\u043a. \u043f\u043e\u043b\u0443\u0447\u0438\u043b\u0438 \u0441\u0442\u0430\u0442\u0443\u0441 &#171;\u043e\u0447\u0435\u0432\u0438\u0434\u043d\u043e&#187;. \u042d\u0442\u043e \u043d\u0435 \u0441\u0442\u0430\u0442\u044c\u044f \u043f\u0440\u043e \u0442\u043e \u043a\u0430\u043a \u043e\u0431\u044b\u0433\u0440\u0430\u0442\u044c \u0440\u044b\u043d\u043e\u043a \u0438 \u0437\u0430\u0440\u0430\u0431\u043e\u0442\u0430\u0442\u044c, \u0430 \u043f\u043e\u043f\u044b\u0442\u043a\u0430 \u0440\u0435\u0430\u043b\u0438\u0437\u043e\u0432\u0430\u0442\u044c \u0438 \u043e\u0431\u044a\u044f\u0441\u043d\u0438\u0442\u044c \u043f\u043e\u0447\u0435\u043c\u0443 \u0441\u0440\u0430\u0431\u043e\u0442\u0430\u043b\u043e.\u041f\u0430\u0440\u0430 \u0441\u043b\u043e\u0432 \u0431\u043b\u0430\u0433\u043e\u0434\u0430\u0440\u043d\u043e\u0441\u0442\u0438\u0412 \u0440\u0430\u0437\u0440\u0430\u0431\u043e\u0442\u043a\u0435 \u0441\u0438\u0441\u0442\u0435\u043c\u044b \u0438 \u043f\u043e\u0434\u0433\u043e\u0442\u043e\u0432\u043a\u0435 \u043c\u0430\u0442\u0435\u0440\u0438\u0430\u043b\u043e\u0432 \u043c\u043d\u0435 \u043f\u043e\u043c\u043e\u0433\u0430\u043b Claude Code, \u043f\u043e\u044d\u0442\u043e\u043c\u0443 \u043d\u0435\u043c\u043d\u043e\u0433\u043e \u0443\u0434\u0435\u043b\u044e \u0432\u043d\u0438\u043c\u0430\u043d\u0438\u0435 \u044d\u0442\u043e\u0439 \u0441\u043e\u0432\u043c\u0435\u0441\u0442\u043d\u043e\u0439 \u0440\u0430\u0431\u043e\u0442\u0435. \u0421\u043f\u0438\u0441\u043e\u043a \u0437\u0430\u0441\u043b\u0443\u0433 \u0441 \u0447\u0435\u043c Claude \u0441\u043f\u0440\u0430\u0432\u043b\u044f\u043b\u0441\u044f \u043d\u0430 \u043f\u0443\u0442\u0438 \u043a \u0440\u0435\u0437\u0443\u043b\u044c\u0442\u0430\u0442\u0443:\u042d\u043a\u0441\u043f\u0435\u0440\u0438\u043c\u0435\u043d\u0442\u044b. \u0415\u0441\u043b\u0438 \u0443 \u0432\u0430\u0441 \u043f\u043e\u043b\u043d\u043e \u0438\u0434\u0435\u0439, \u043d\u043e \u043d\u0435\u0442 \u0432\u0440\u0435\u043c\u0435\u043d\u0438 \u043d\u0430 \u0438\u0445 \u0440\u0435\u0430\u043b\u0438\u0437\u0430\u0446\u0438\u044e \u0438\u043b\u0438 \u0432\u044b \u0442\u0435\u0440\u044f\u0435\u0442\u0435 \u043c\u043e\u0442\u0438\u0432\u0430\u0446\u0438\u044e \u043d\u0430 \u043f\u043e\u043b\u043e\u0432\u0438\u043d\u0435 \u043f\u0443\u0442\u0438, \u0442\u043e \u043f\u0440\u043e\u0438\u0437\u0432\u043e\u0434\u0438\u0442\u0435\u043b\u044c\u043d\u044b\u0435 coding-\u0430\u0433\u0435\u043d\u0442\u044b \u043f\u0440\u0438\u0445\u043e\u0434\u044f\u0442 \u043a \u0432\u0430\u043c \u043d\u0430 \u043f\u043e\u043c\u043e\u0449\u044c. \u041f\u043e\u0441\u043b\u0435 \u0441\u043e\u0433\u043b\u0430\u0441\u043e\u0432\u0430\u043d\u0438\u044f \u0437\u0430\u0434\u0430\u0447\u0438 \u0441 \u0430\u0433\u0435\u043d\u0442\u043e\u043c \u0442\u043e\u0442 \u0437\u0430\u043f\u0443\u0441\u043a\u0430\u043b \u0434\u0435\u0441\u044f\u0442\u043a\u0438 \u043f\u0430\u0440\u0430\u043b\u043b\u0435\u043b\u044c\u043d\u044b\u0445 \u044d\u043a\u0441\u043f\u0435\u0440\u0438\u043c\u0435\u043d\u0442\u043e\u0432, \u0430\u0433\u0440\u0435\u0433\u0438\u0440\u043e\u0432\u0430\u043b \u0438\u043d\u0444\u043e\u0440\u043c\u0430\u0446\u0438\u044e, \u0430\u043a\u043a\u0443\u0440\u0430\u0442\u043d\u043e \u043e\u0444\u043e\u0440\u043c\u043b\u044f\u043b \u0440\u0435\u0437\u0443\u043b\u044c\u0442\u0430\u0442\u044b \u0432 \u0432\u0438\u0434\u0435 \u043e\u0442\u0447\u0451\u0442\u043e\u0432, \u0441\u043e\u043f\u0440\u043e\u0432\u043e\u0436\u0434\u0430\u043b \u0440\u0435\u0437\u0443\u043b\u044c\u0442\u0430\u0442\u044b \u0441\u0432\u043e\u0438\u043c\u0438 \u0432\u044b\u0432\u043e\u0434\u0430\u043c\u0438 \u0438 \u043f\u0440\u0435\u0434\u043b\u043e\u0436\u0435\u043d\u0438\u044f\u043c\u0438. \u0417\u0434\u0435\u0441\u044c \u0431\u0430\u0437\u043e\u0432\u044b\u0445 \u0432\u043e\u0437\u043c\u043e\u0436\u043d\u043e\u0441\u0442\u0435\u0439 \u0441laude code cli, skills, tools, mcp \u043a\u0430\u043a \u043f\u0440\u0430\u0432\u0438\u043b\u043e \u0445\u0432\u0430\u0442\u0430\u043b\u043e.Research. \u0420\u0430\u0437\u0431\u0438\u0440\u0430\u0442\u044c\u0441\u044f \u043a \u043d\u044e\u0430\u043d\u0441\u0430\u0445 \u0432\u0430\u0436\u043d\u043e, \u043d\u043e \u043f\u0435\u0440\u0432\u044b\u0435 \u043d\u0435\u0441\u043a\u043e\u043b\u044c\u043a\u043e \u0438\u0442\u0435\u0440\u0430\u0446\u0438\u0439 \u043f\u043e\u0438\u0441\u043a\u0430 \u0438 \u043f\u0440\u043e\u0432\u0435\u0440\u043a\u0438 \u0438\u0434\u0435\u0439\/\u043f\u043e\u0434\u0445\u043e\u0434\u043e\u0432 \u043c\u043e\u0436\u0435\u0442 \u0432\u044b\u043f\u043e\u043b\u043d\u0438\u0442\u044c ai-\u0430\u0433\u0435\u043d\u0442. \u041f\u0440\u0438\u0448\u043b\u043e\u0441\u044c \u0443\u0441\u043e\u0432\u0435\u0440\u0448\u0435\u043d\u0441\u0442\u0432\u043e\u0432\u0430\u0442\u044c \u043f\u043e\u043c\u043e\u0449\u043d\u0438\u043a\u0430 \u0438 \u0434\u043e\u0431\u0430\u0432\u0438\u0442\u044c skill (planning-with-files) \u0438 mcp (mcp-sequential-thinking, sequential-thinking-tools, searxng). \u0412 \u0440\u0435\u0437\u0443\u043b\u044c\u0442\u0430\u0442\u0435 \u043e\u0431\u0437\u043e\u0440 \u0441\u0442\u0430\u0442\u0435\u0439 \u0441 arxiv \u0434\u0435\u043b\u0430\u043b\u0441\u044f \u043f\u0440\u044f\u043c\u043e \u0432 \u043a\u043e\u043d\u0441\u043e\u043b\u0438 \u0438\u043b\u0438 \u0447\u0435\u0440\u0435\u0437 \u0430\u043a\u043a\u0440\u0443\u0440\u0430\u0442\u043d\u044b\u0439 markdown-\u0444\u0430\u0439\u043b \u0441\u043e \u0432\u0441\u0435\u043c\u0438 \u043d\u0435\u043e\u0431\u0445\u043e\u0434\u0438\u043c\u044b\u043c\u0438 \u0441\u0441\u044b\u043b\u043a\u0430\u043c\u0438.Code. \u0422\u0443\u0442 \u0432\u0440\u043e\u0434\u0435 \u0431\u044b \u0432\u0441\u0451 \u043e\u0447\u0435\u0432\u0438\u0434\u043d\u043e. \u041e\u0434\u043d\u0430\u043a\u043e \u044f \u0431\u044b \u0445\u043e\u0442\u0435\u043b \u043e\u0431\u0440\u0430\u0442\u0438\u0442\u044c \u0432\u043d\u0438\u043c\u0430\u043d\u0438\u0435 \u043d\u0430 \u0442\u043e\u0442 \u0444\u0430\u043a\u0442, \u0447\u0442\u043e AI-\u0430\u0433\u0435\u043d\u0442 \u043c\u043e\u0436\u0435\u0442 \u043d\u0430\u043f\u0438\u0441\u0430\u0442\u044c \u0438\u043b\u0438 \u0441\u043a\u043e\u043d\u0444\u0438\u0433\u0443\u0440\u0438\u0440\u043e\u0432\u0430\u0442\u044c \u0438\u043d\u0441\u0442\u0440\u0443\u043c\u0435\u043d\u0442\u044b, \u043a\u043e\u0442\u043e\u0440\u044b\u0435 \u0443\u043f\u0440\u043e\u0449\u0430\u044e\u0442 \u0440\u0435\u0448\u0435\u043d\u0438\u0435 \u0437\u0430\u0434\u0430\u0447\u0438. \u0422\u0430\u043a \u043d\u0430 \u0441\u043c\u0435\u043d\u0443 tensorboard \u0441\u043d\u0430\u0447\u0430\u043b\u0430 \u043f\u0440\u0438\u0448\u043b\u0438 \u0438\u043d\u0442\u0435\u0440\u0430\u043a\u0442\u0438\u0432\u043d\u044b\u0435 \u0433\u0440\u0430\u0444\u0438\u043a\u0438, \u0430 \u0437\u0430\u0442\u0435\u043c \u0438 \u043f\u0440\u043e\u0434\u0432\u0438\u043d\u0443\u0442\u044b\u0435 \u0434\u0430\u0448\u0431\u043e\u0440\u0434\u044b, \u0433\u0434\u0435 \u044f \u043c\u043e\u0433 \u0440\u0430\u0441\u043f\u0443\u0442\u0430\u0442\u044c AI-\u0430\u0433\u0435\u043d\u0442\u0430, \u043a\u043e\u0433\u0434\u0430 \u0442\u043e\u0442 \u043f\u043e\u0442\u0435\u0440\u043f\u0435\u043b \u043e\u0447\u0435\u0440\u0435\u0434\u043d\u0443\u044e \u043d\u0435\u0443\u0434\u0430\u0447\u0443 \u043d\u0430 \u043f\u0443\u0442\u0438 \u0440\u0435\u0448\u0435\u043d\u0438\u044f \u043f\u043e\u0441\u0442\u0430\u0432\u043b\u0435\u043d\u043d\u043e\u0439 \u0441\u043b\u0438\u0448\u043a\u043e\u043c \u0430\u0431\u0441\u0442\u0440\u0430\u043a\u0442\u043d\u043e \u0437\u0430\u0434\u0430\u0447\u0438.\u0415\u0449\u0451 \u043e\u0434\u043d\u0430 \u0442\u043e\u0440\u0433\u043e\u0432\u0430\u044f \u0441\u0438\u0441\u0442\u0435\u043c\u0430RL \u0434\u043b\u044f \u0442\u0440\u0435\u0439\u0434\u0438\u043d\u0433\u0430 \u043e\u0431\u044b\u0447\u043d\u043e \u0437\u0432\u0443\u0447\u0438\u0442 \u043a\u0430\u043a \u043e\u0431\u0435\u0449\u0430\u043d\u0438\u0435 \u0444\u0438\u043d\u0430\u043d\u0441\u043e\u0432\u043e\u0439 \u0441\u0438\u043d\u0433\u0443\u043b\u044f\u0440\u043d\u043e\u0441\u0442\u0438, \u043a\u043e\u0433\u0434\u0430 \u0430\u043b\u0433\u043e\u0440\u0438\u0442\u043c \u0441\u0430\u043c \u0442\u043e\u0440\u0433\u0443\u0435\u0442, \u0441\u0430\u043c \u0441\u0435\u0431\u044f \u0441\u043e\u0432\u0435\u0440\u0448\u0435\u043d\u0441\u0442\u0432\u0443\u0435\u0442, \u0430 \u0432\u044b \u0438\u0437\u044b\u043c\u0430\u0435\u0442\u0435 \u043f\u0440\u0438\u0431\u044b\u043b\u044c. \u041d\u0430 \u043f\u0440\u0430\u043a\u0442\u0438\u043a\u0435 \u044d\u0442\u043e \u043a\u0440\u0430\u0441\u0438\u0432\u044b\u0435 \u043a\u0430\u0440\u0442\u0438\u043d\u043a\u0438 \u0432\u043d\u0443\u0442\u0440\u0438 \u043e\u0431\u0443\u0447\u0430\u044e\u0449\u0435\u0439 \u0432\u044b\u0431\u043e\u0440\u043a\u0438 \u0438 \u043f\u0440\u043e\u0432\u0430\u043b \u0432 \u043f\u0435\u0440\u0438\u043e\u0434 \u043a\u0440\u0438\u0437\u0438\u0441\u0430 \u0438\u043b\u0438 \u0441\u0443\u0449\u0435\u0441\u0442\u0432\u0435\u043d\u043d\u043e\u0433\u043e \u0438\u0437\u043c\u0435\u043d\u0435\u043d\u0438\u044f \u043a\u043e\u043d\u0441\u0435\u043d\u0441\u0443\u0441\u0430\/\u0441\u0435\u043d\u0442\u0438\u043c\u0435\u043d\u0442\u0430. \u0412\u043e \u0432\u0441\u044f\u043a\u043e\u043c \u0441\u043b\u0443\u0447\u0430\u0435 \u043c\u043e\u0439 \u043e\u043f\u044b\u0442 \u0442\u0430\u043a\u043e\u0432:\u043a\u043e\u0434 \u0438\u0437 \u0440\u0435\u043f\u043e\u0437\u0438\u0442\u043e\u0440\u0438\u0435\u0432 \u043d\u0435\u0440\u0430\u0431\u043e\u0447\u0438\u0439;\u0440\u0435\u0437\u0443\u043b\u044c\u0442\u0430\u0442 \u0438\u0437 \u0441\u0442\u0430\u0442\u0435\u0439 \u043d\u0435 \u0432\u043e\u0441\u043f\u0440\u043e\u0438\u0437\u0432\u043e\u0434\u044f\u0442\u0441\u044f;\u0432\u044b\u0431\u0438\u0440\u0430\u0435\u043c \u0434\u0440\u0443\u0433\u043e\u0439 seed \u0438 \u043f\u043e\u043b\u0443\u0447\u0430\u0435\u043c \u0434\u043e\u0445\u043e\u0434\u043d\u043e\u0441\u0442\u044c \u0441 \u043f\u0440\u043e\u0442\u0438\u0432\u043e\u043f\u043e\u043b\u043e\u0436\u043d\u044b\u043c \u0437\u043d\u0430\u043a\u043e\u043c;SOTA \u0441 \u043a\u043e\u043d\u0444\u0435\u0440\u0435\u043d\u0446\u0438\u0438 \u0445\u0443\u0436\u0435 \u0433\u0440\u0430\u0434\u0438\u0435\u043d\u0442\u043d\u043e\u0433\u043e \u0431\u0443\u0441\u0442\u0438\u043d\u0433\u0430;\u043d\u043e\u0443\u0442\u0431\u0443\u043a\u0438 \u0441 \u0437\u043e\u043b\u043e\u0442\u044b\u043c\u0438 \u043c\u0435\u0434\u0430\u043b\u044f\u043c\u0438 \u0441 kaggle \u0442\u0440\u0435\u0431\u0443\u044e\u0442 \u043c\u0430\u0441\u0441\u0443 \u0434\u0430\u043d\u043d\u044b\u0445, \u043a\u043e\u0442\u043e\u0440\u044b\u0435 \u0434\u0430\u0436\u0435 \u0441 \u043f\u043e\u0434\u043f\u0438\u0441\u043a\u043e\u0439 \u043d\u0435 \u0434\u043e\u0441\u0442\u0430\u0442\u044c.\u041c\u043e\u0436\u0435\u0442 \u043c\u043d\u0435 \u043d\u0435 \u043f\u043e\u0432\u0435\u0437\u043b\u043e. \u041a\u0430\u0436\u0434\u0430\u044f \u043d\u043e\u0432\u0430\u044f \u043f\u043e\u043f\u044b\u0442\u043a\u0430 \u043e\u0442\u043a\u043b\u0430\u0434\u044b\u0432\u0430\u043b\u0430\u0441\u044c \u043d\u0430 \u0431\u0443\u0434\u0443\u0449\u0435\u0435. \u0411\u0443\u0434\u0443\u0449\u0435\u0435 \u043d\u0430\u0441\u0442\u0443\u043f\u0438\u043b\u043e \u0441 \u043f\u043e\u0434\u043f\u0438\u0441\u043a\u043e\u0439 5xMAX. \u0414\u0430\u043b\u0435\u0435 \u043d\u0430 \u043f\u0440\u0438\u043c\u0435\u0440\u0435 \u0433\u0438\u043f\u043e\u0442\u0435\u0437, \u0434\u043e\u043f\u0443\u0449\u0435\u043d\u0438\u0439 \u0438 \u044d\u043a\u0441\u043f\u0435\u0440\u0438\u043c\u0435\u043d\u0442\u043e\u0432 \u043f\u043e\u043b\u0443\u0447\u0438\u043b\u0430\u0441\u044c \u0430\u0440\u0445\u0438\u0442\u0435\u043a\u0442\u0443\u0440\u0430 \u0435\u0449\u0451 \u043e\u0434\u043d\u043e\u0439 \u0442\u043e\u0440\u0433\u043e\u0432\u043e\u0439 \u0441\u0438\u0441\u0442\u0435\u043c\u044b.\u0411\u043e\u043b\u044c\u0448\u0435 \u0434\u0435\u0442\u0430\u043b\u0435\u0439 \u0432 \u043d\u0430\u0441\u0442\u043e\u044f\u0449\u0435\u043c \u0438 \u043c\u0435\u043d\u044c\u0448\u0435 \u0438\u0437 \u0438\u0441\u0442\u043e\u0440\u0438\u0438\u0411\u043e\u043b\u044c\u0448\u0438\u043d\u0441\u0442\u0432\u043e \u044d\u043a\u0441\u043f\u0435\u0440\u0438\u043c\u0435\u043d\u0442\u043e\u0432 \u0434\u043e\u043a\u0443\u043c\u0435\u043d\u0442\u0438\u0440\u043e\u0432\u0430\u043d\u044b, \u043d\u043e \u0432\u0441\u0451 \u0436\u0435 \u043d\u0435 \u0432\u0441\u0435. \u0418\u0434\u0435\u043d\u0442\u0438\u0444\u0438\u043a\u0430\u0442\u043e\u0440 \u043f\u043e\u0441\u043b\u0435\u0434\u043d\u0435\u0433\u043e 137. \u0414\u0435\u0442\u0430\u043b\u0438 \u0432\u0441\u0435\u0433\u043e \u0442\u043e\u0433\u043e, \u0447\u0442\u043e \u0431\u044b\u043b\u043e \u0434\u043e 80 \u044d\u043a\u0441\u043f\u0435\u0440\u0438\u043c\u0435\u043d\u0442\u0430 \u0431\u0435\u0437\u0432\u043e\u0437\u0432\u0440\u0430\u0442\u043d\u043e \u0443\u0442\u0435\u0440\u044f\u043d\u044b \u0438 \u043e\u0441\u0442\u0430\u043b\u0438\u0441\u044c \u0442\u043e\u043b\u044c\u043a\u043e \u043a\u043e\u0440\u043e\u0442\u043a\u0438\u0435 \u0437\u0430\u043f\u0438\u0441\u0438 \u0432 findings.md, \u0442.\u043a. \u043e\u0434\u043d\u0430\u0436\u0434\u044b \u044f \u043f\u043e\u043f\u0440\u043e\u0441\u0438\u043b Claude \u043f\u043e\u0447\u0438\u0441\u0442\u0438\u0442\u044c \u043c\u0443\u0441\u043e\u0440. \u041f\u043e\u0434\u043a\u0430\u0442\u0430\u043b\u043e\u0433 docs\/experiments\/\u043e\u043a\u0430\u0437\u0430\u043b\u0441\u044f \u0432 .gitignore. Claude \u043f\u043e\u0441\u0447\u0438\u0442\u0430\u043b \u043c\u0443\u0441\u043e\u0440\u043e\u043c \u0432\u0441\u0451 \u0442\u043e, \u0447\u0442\u043e \u043d\u0435 \u043e\u0442\u043d\u043e\u0441\u0438\u0442\u0441\u044f \u043a \u0442\u0435\u043a\u0443\u0449\u0435\u0439 \u0437\u0430\u0434\u0430\u0447\u0435 \u0438 \u043d\u0435 \u043e\u043f\u0438\u0441\u0430\u043d\u043e \u0432 CLAUDE.md.\u0413\u043b\u0430\u0432\u0430 1. \u0411\u0430\u0437\u043e\u0432\u044b\u0435 \u0434\u043e\u043f\u0443\u0449\u0435\u043d\u0438\u044f \u0442\u043e\u0440\u0433\u043e\u0432\u043e\u0439 \u0441\u0438\u0441\u0442\u0435\u043c\u044b\u041c\u043e\u0433\u0443\u0447\u0438\u0439 AI \u043c\u043e\u0433 \u0431\u044b \u0432\u0441\u0451 \u0441\u0434\u0435\u043b\u0430\u0442\u044c \u0441\u0430\u043c?! \u0412\u043e\u0437\u044c\u043c\u0438 DDPG, \u0441\u044b\u0440\u044b\u0435 OHLCV, \u043d\u0435\u0441\u043a\u043e\u043b\u044c\u043a\u043e \u043c\u0438\u043b\u043b\u0438\u043e\u043d\u043e\u0432 timesteps \u0438 \u043f\u043e\u043b\u0443\u0447\u0438\u043c \u0440\u0430\u0431\u043e\u0442\u0430\u044e\u0449\u0443\u044e \u0441\u0438\u0441\u0442\u0435\u043c\u0443! \u041d\u0435 \u0441\u0440\u0430\u0431\u043e\u0442\u0430\u043b\u043e, \u043f\u043e\u044d\u0442\u043e\u043c\u0443 \u0434\u0430\u043b\u0435\u0435 \u044f \u0443\u043f\u0440\u043e\u0449\u0430\u043b \u0437\u0430\u0434\u0430\u0447\u0443 \u0434\u043b\u044f RL-\u0430\u0433\u0435\u043d\u0442\u0430, \u0447\u0442\u043e\u0431\u044b \u0442\u043e\u0442 \u0438\u0437 \u0448\u0443\u043c\u0430 \u0440\u044b\u043d\u043e\u0447\u043d\u044b\u0445 \u0434\u0430\u043d\u043d\u044b\u0445 \u0441\u043c\u043e\u0433 \u0432\u044b\u0434\u0435\u043b\u0438\u0442\u044c \u0441\u0438\u0433\u043d\u0430\u043b \u0438 \u043d\u0430 \u043d\u0451\u043c \u043d\u0430\u0443\u0447\u0438\u044c\u0441\u044f \u0442\u043e\u0440\u0433\u043e\u0432\u0430\u0442\u044c.\u041f\u0435\u0440\u0432\u043e\u0435 \u0434\u043e\u043f\u0443\u0449\u0435\u043d\u0438\u0435, \u0438\u0441\u0445\u043e\u0434\u044f \u0438\u0437 \u043a\u043e\u0442\u043e\u0440\u043e\u0433\u043e \u0431\u0443\u0434\u0435\u043c \u0434\u0435\u0439\u0441\u0442\u0432\u043e\u0432\u0430\u0442\u044c \u0434\u0430\u043b\u044c\u0448\u0435:\u041f\u043e \u0441\u0432\u043e\u0435\u0439 \u043f\u0440\u0438\u0440\u043e\u0434\u0435 \u043e\u0431\u0443\u0447\u0435\u043d\u0438\u0435 \u0441 \u043f\u043e\u0434\u043a\u0440\u0435\u043f\u043b\u0435\u043d\u0438\u0435\u043c \u043f\u043e\u0434\u0445\u043e\u0434\u0438\u0442 \u0434\u043b\u044f \u0437\u0430\u0434\u0430\u0447\u0438 \u0430\u0432\u0442\u043e\u043c\u0430\u0442\u0438\u0437\u0430\u0446\u0438\u0438 \u0442\u043e\u0440\u0433\u043e\u0432\u043b\u0438 \u0444\u0438\u043d\u0430\u043d\u0441\u043e\u0432\u044b\u043c\u0438 \u0430\u043a\u0442\u0438\u0432\u0430\u043c\u0438. \u0412\u043e\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u0435\u043c\u0441\u044f RL \u043d\u0435 \u0432 \u043a\u0430\u0447\u0435\u0441\u0442\u0432\u0435 &#171;\u043e\u043f\u0442\u0438\u043c\u0430\u043b\u044c\u043d\u043e\u0433\u043e \u0440\u0435\u0448\u0435\u043d\u0438\u044f&#187;, \u0430 \u043a\u0430\u043a \u043d\u0430\u0438\u043c\u0435\u043d\u0435\u0435 \u0444\u0430\u0442\u0430\u043b\u044c\u043d\u044b\u0439 \u0442\u0438\u043f \u043e\u0448\u0438\u0431\u043a\u0438. \u0418\u0437 \u043f\u0440\u043e\u0441\u0442\u0440\u0430\u043d\u0441\u0442\u0432\u0430 \u0434\u043e\u043f\u0443\u0449\u0435\u043d\u0438\u0439, \u043a\u043e\u0442\u043e\u0440\u044b\u0435 \u0432\u0441\u0435 \u043e\u0434\u0438\u043d\u0430\u043a\u043e\u0432\u043e \u043b\u043e\u0436\u043d\u044b \u043f\u0440\u0438 \u0442\u043e\u0440\u0433\u043e\u0432\u043b\u0435 \u043d\u0430 \u0440\u0435\u0430\u043b\u044c\u043d\u043e\u043c \u0440\u044b\u043d\u043a\u0435, MDP-\u0434\u043e\u043f\u0443\u0449\u0435\u043d\u0438\u0435 &#8212; \u043d\u0430\u0438\u0431\u043e\u043b\u0435\u0435 \u0443\u0441\u0442\u043e\u0439\u0447\u0438\u0432\u043e \u043a \u0447\u0430\u0441\u0442\u0438\u0447\u043d\u044b\u043c \u043d\u0430\u0440\u0443\u0448\u0435\u043d\u0438\u044f\u043c.\u041f\u043e\u0434\u0440\u043e\u0431\u043d\u043e\u0435 \u043e\u0431\u044a\u044f\u0441\u043d\u0435\u043d\u0438\u0435Reinforcement Learning \u0444\u043e\u0440\u043c\u0443\u043b\u0438\u0440\u0443\u0435\u0442 \u0437\u0430\u0434\u0430\u0447\u0443 \u0442\u0430\u043a: \u0435\u0441\u0442\u044c \u0430\u0433\u0435\u043d\u0442, \u043a\u043e\u0442\u043e\u0440\u044b\u0439 \u0432\u0437\u0430\u0438\u043c\u043e\u0434\u0435\u0439\u0441\u0442\u0432\u0443\u0435\u0442 \u0441\u043e \u0441\u0440\u0435\u0434\u043e\u0439 \u043f\u043e \u0448\u0430\u0433\u0430\u043c. \u041d\u0430 \u043a\u0430\u0436\u0434\u043e\u043c \u0448\u0430\u0433\u0435 \u0430\u0433\u0435\u043d\u0442 \u0432\u0438\u0434\u0438\u0442 \u0441\u043e\u0441\u0442\u043e\u044f\u043d\u0438\u0435 s_t, \u0432\u044b\u0431\u0438\u0440\u0430\u0435\u0442 \u0434\u0435\u0439\u0441\u0442\u0432\u0438\u0435 a_t \u0441\u043e\u0433\u043b\u0430\u0441\u043d\u043e \u0441\u0432\u043e\u0435\u0439 \u043f\u043e\u043b\u0438\u0442\u0438\u043a\u0435 \u03c0(a|s), \u0441\u0440\u0435\u0434\u0430 \u0432\u043e\u0437\u0432\u0440\u0430\u0449\u0430\u0435\u0442 \u043d\u0430\u0433\u0440\u0430\u0434\u0443 r_t \u0438 \u043d\u043e\u0432\u043e\u0435 \u0441\u043e\u0441\u0442\u043e\u044f\u043d\u0438\u0435 s_{t+1}. \u0426\u0435\u043b\u044c \u043e\u0431\u0443\u0447\u0435\u043d\u0438\u044f &#8212; \u043c\u0430\u043a\u0441\u0438\u043c\u0438\u0437\u0438\u0440\u043e\u0432\u0430\u0442\u044c \u0441\u0443\u043c\u043c\u0430\u0440\u043d\u0443\u044e \u043e\u0436\u0438\u0434\u0430\u0435\u043c\u0443\u044e \u043d\u0430\u0433\u0440\u0430\u0434\u0443 \u043f\u043e \u0432\u0441\u0435\u043c \u0442\u0440\u0430\u0435\u043a\u0442\u043e\u0440\u0438\u044f\u043c:\u03b3 \u2208 [0, 1]- \u0444\u0430\u043a\u0442\u043e\u0440 \u0434\u0438\u0441\u043a\u043e\u043d\u0442\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u044f. \u041a\u043b\u044e\u0447\u0435\u0432\u043e\u0435 \u043e\u0442\u043b\u0438\u0447\u0438\u0435 \u043e\u0442 supervised-learning: \u043d\u0435\u0442 \u0440\u0430\u0437\u043c\u0435\u0447\u0435\u043d\u043d\u044b\u0445 \u043f\u0440\u0438\u043c\u0435\u0440\u043e\u0432 \u043f\u0440\u0430\u0432\u0438\u043b\u044c\u043d\u044b\u0445 \u0434\u0435\u0439\u0441\u0442\u0432\u0438\u0439. \u0415\u0441\u0442\u044c \u0442\u043e\u043b\u044c\u043a\u043e \u0441\u043a\u0430\u043b\u044f\u0440\u043d\u044b\u0439 \u0441\u0438\u0433\u043d\u0430\u043b \u043d\u0430\u0433\u0440\u0430\u0434\u044b, \u0438 \u0430\u0433\u0435\u043d\u0442 \u0441\u0430\u043c \u0434\u043e\u043b\u0436\u0435\u043d \u0432\u044b\u044f\u0441\u043d\u0438\u0442\u044c, \u043a\u0430\u043a\u0438\u0435 \u0434\u0435\u0439\u0441\u0442\u0432\u0438\u044f \u0435\u0433\u043e \u043c\u0430\u043a\u0441\u0438\u043c\u0438\u0437\u0438\u0440\u0443\u044e\u0442.\u0422\u043e\u0440\u0433\u043e\u0432\u043b\u044f &#8212; \u044d\u0442\u043e Markov Decision Process (\u0438\u043b\u0438 Partially Observable MDP), \u0430 \u043d\u0435 supervised prediction problem. \u0420\u0430\u0437\u0432\u0435\u0440\u043d\u0451\u043c:\u0421\u0443\u0449\u0435\u0441\u0442\u0432\u0443\u0435\u0442 s_t, \u043a\u043e\u0442\u043e\u0440\u044b\u0439 \u0441\u043e\u0434\u0435\u0440\u0436\u0438\u0442 \u0434\u043e\u0441\u0442\u0430\u0442\u043e\u0447\u043d\u043e \u0438\u043d\u0444\u043e\u0440\u043c\u0430\u0446\u0438\u0438, \u0447\u0442\u043e\u0431\u044b \u043e\u043f\u0442\u0438\u043c\u0430\u043b\u044c\u043d\u043e\u0435 \u0434\u0435\u0439\u0441\u0442\u0432\u0438\u0435\u00a0a*_t\u00a0\u0431\u044b\u043b\u043e \u0444\u0443\u043d\u043a\u0446\u0438\u0435\u0439\u00a0\u0442\u043e\u043b\u044c\u043a\u043e\u00a0\u043e\u0442\u00a0s_t\u00a0(\u0430 \u043d\u0435 \u043e\u0442 \u0432\u0441\u0435\u0439 \u0438\u0441\u0442\u043e\u0440\u0438\u0438 \u0446\u0435\u043b\u0438\u043a\u043e\u043c). \u0422\u043e \u0435\u0441\u0442\u044c\u00a0\u043c\u0430\u0440\u043a\u043e\u0432\u0441\u043a\u043e\u0435 \u0441\u0432\u043e\u0439\u0441\u0442\u0432\u043e\u00a0\u043f\u0440\u0438\u0431\u043b\u0438\u0437\u0438\u0442\u0435\u043b\u044c\u043d\u043e \u0432\u044b\u043f\u043e\u043b\u043d\u0435\u043d\u043e \u043d\u0430 \u0432\u044b\u0431\u0440\u0430\u043d\u043d\u043e\u043c \u043d\u0430\u0431\u043b\u044e\u0434\u0435\u043d\u0438\u0438.\u0426\u0435\u043b\u0435\u0432\u0430\u044f \u0444\u0443\u043d\u043a\u0446\u0438\u044f \u043f\u0440\u0438 \u044d\u0442\u043e\u043c \u0437\u0430\u0432\u0438\u0441\u0438\u0442 \u043e\u0442 \u0432\u0441\u0435\u0439 \u0446\u0435\u043f\u043e\u0447\u043a\u0438 \u0448\u0430\u0433\u043e\u0432: \u043e\u043f\u0442\u0438\u043c\u0438\u0437\u0438\u0440\u0443\u0435\u043c\u00a0, \u0430 \u043d\u0435 \u0435\u0434\u0438\u043d\u0441\u0442\u0432\u0435\u043d\u043d\u0443\u044e \u043d\u0430\u0433\u0440\u0430\u0434\u0443 \u043d\u0430 \u043c\u043e\u043c\u0435\u043d\u0442r_t. \u0414\u0435\u0439\u0441\u0442\u0432\u0438\u0435 \u0441\u0435\u0433\u043e\u0434\u043d\u044f \u043c\u0435\u043d\u044f\u0435\u0442\u00a0s_{t+1}, \u043a\u043e\u0442\u043e\u0440\u043e\u0435 \u043c\u0435\u043d\u044f\u0435\u0442 \u0434\u043e\u0441\u0442\u0443\u043f\u043d\u044b\u0435 \u0434\u0435\u0439\u0441\u0442\u0432\u0438\u044f \u0438 \u043d\u0430\u0433\u0440\u0430\u0434\u044b \u0437\u0430\u0432\u0442\u0440\u0430.\u041f\u043e\u043b\u0438\u0442\u0438\u043a\u0430\u00a0\u03c0(a|s)\u00a0\u043f\u0440\u0435\u0434\u0441\u0442\u0430\u0432\u0438\u043c\u0430\u00a0\u043f\u0430\u0440\u0430\u043c\u0435\u0442\u0440\u0438\u0437\u043e\u0432\u0430\u043d\u043d\u043e\u0439 \u043c\u043e\u0434\u0435\u043b\u044c\u044e \u0443\u043c\u0435\u0440\u0435\u043d\u043d\u043e\u0439 \u0451\u043c\u043a\u043e\u0441\u0442\u0438 (\u0432 \u043d\u0430\u0448\u0435\u043c \u0441\u043b\u0443\u0447\u0430\u0435 MLP 256\u00d7256), \u0438 \u0441\u0443\u0449\u0435\u0441\u0442\u0432\u0443\u044e\u0442 \u0434\u0430\u043d\u043d\u044b\u0435 \u0434\u043b\u044f \u043e\u0431\u0443\u0447\u0435\u043d\u0438\u044f \u044d\u0442\u043e\u0439 \u043c\u043e\u0434\u0435\u043b\u0438 \u0442\u0430\u043a, \u0447\u0442\u043e\u0431\u044b \u043e\u043d\u0430 \u043e\u0431\u043e\u0431\u0449\u0430\u043b\u0430\u0441\u044c \u043d\u0430 \u0431\u0443\u0434\u0443\u0449\u0438\u0439 \u043f\u0435\u0440\u0438\u043e\u0434.\u0427\u0442\u043e \u0438\u0437 \u044d\u0442\u043e\u0433\u043e \u0441\u043b\u0435\u0434\u0443\u0435\u0442 \u2014 \u0438 \u0447\u0442\u043e \u041d\u0415 \u0441\u043b\u0435\u0434\u0443\u0435\u0442\u041c\u043e\u0436\u043d\u043e:\u041f\u0440\u0438\u043c\u0435\u043d\u044f\u0442\u044c \u043c\u043d\u043e\u0436\u0435\u0441\u0442\u0432\u043e RL-\u0430\u043b\u0433\u043e\u0440\u0438\u0442\u043c\u043e\u0432.\u041d\u0430\u043f\u0440\u044f\u043c\u0443\u044e \u043e\u043f\u0442\u0438\u043c\u0438\u0437\u0438\u0440\u043e\u0432\u0430\u0442\u044c \u0437\u0430\u0432\u0438\u0441\u0438\u043c\u044b\u0435 \u043e\u0442 \u043f\u043e\u0441\u043b\u0435\u0434\u043e\u0432\u0430\u0442\u0435\u043b\u044c\u043d\u043e\u0441\u0442\u0438 \u0434\u0435\u0439\u0441\u0442\u0432\u0438\u0439 \u043c\u0435\u0442\u0440\u0438\u043a\u0438 (sharpe, drawdown penalty, turnover cost).\u0412\u044b\u0443\u0447\u0438\u0442\u044c \u0440\u0435\u0430\u043a\u0442\u0438\u0432\u043d\u043e\u0435 \u043f\u043e\u0432\u0435\u0434\u0435\u043d\u0438\u0435 &#8212; \u0431\u044b\u0442\u044c \u043e\u0441\u0442\u043e\u0440\u043e\u0436\u043d\u0435\u0435 \u043f\u043e\u0441\u043b\u0435 \u043f\u0440\u043e\u0441\u0430\u0434\u043a\u0438, \u0430\u0433\u0440\u0435\u0441\u0441\u0438\u0432\u043d\u0435\u0435 \u043f\u043e\u0441\u043b\u0435 \u0432\u043e\u0441\u0441\u0442\u0430\u043d\u043e\u0432\u043b\u0435\u043d\u0438\u044f, \u0438 \u0432\u0441\u0451 \u044d\u0442\u043e \u0431\u0435\u0437 \u044f\u0432\u043d\u043e\u0433\u043e \u043f\u0440\u043e\u0433\u0440\u0430\u043c\u043c\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u044f \u0447\u0451\u0442\u043a\u0438\u0445 \u043f\u0440\u0430\u0432\u0438\u043b.\u041d\u0415 \u0441\u043b\u0435\u0434\u0443\u0435\u0442:\u0412 \u0440\u044b\u043d\u043a\u0435 \u0435\u0441\u0442\u044c \u0438\u0441\u0442\u0438\u043d\u043d\u0430\u044f \u0444\u0443\u043d\u043a\u0446\u0438\u044f \u0446\u0435\u043d\u044b \u043e\u0442 \u0444\u0438\u0447\u0435\u0439, \u0430 \u043c\u043e\u0433\u0443\u0447\u0438\u0439 RL \u043d\u0430\u043c \u0435\u0451 \u043d\u0430\u0439\u0434\u0451\u0442. \u042d\u0442\u043e \u043c\u044b\u0448\u043b\u0435\u043d\u0438\u0435 \u0438\u0437 \u043a\u043b\u0430\u0441\u0441\u0438\u0447\u0435\u0441\u043a\u043e\u0433\u043e \u043e\u0431\u0443\u0447\u0435\u043d\u0438\u044f \u0441 \u0443\u0447\u0438\u0442\u0435\u043b\u0435\u043c. \u0412 RL \u043d\u0435\u0442 \u0430\u043d\u0430\u043b\u043e\u0433\u0430 \u0438\u0441\u0442\u0438\u043d\u043d\u044b\u0445 \u0437\u043d\u0430\u0447\u0435\u043d\u0438\u0439 \u0446\u0435\u043b\u0435\u0432\u043e\u0439 \u0444\u0443\u043d\u043a\u0446\u0438\u0438 &#8212; \u0442\u043e\u043b\u044c\u043a\u043e \u043d\u0430\u0433\u0440\u0430\u0434\u0430, \u0437\u0430\u0432\u0438\u0441\u044f\u0449\u0430\u044f \u043e\u0442 \u0440\u0430\u0437\u043b\u0438\u0447\u043d\u044b\u0445 \u043f\u043e\u0441\u043b\u0435\u0434\u043e\u0432\u0430\u0442\u0435\u043b\u044c\u043d\u043e\u0441\u0442\u0435\u0439 \u0448\u0430\u0433\u043e\u0432.\u0423\u0432\u0435\u043b\u0438\u0447\u0435\u043d\u0438\u0435 \u0441\u0435\u0442\u0438 \u0438\u043b\u0438 \u043e\u043f\u0435\u0440\u0430\u0446\u0438\u0439 &#8212; \u043f\u0443\u0442\u044c \u043a \u043b\u0443\u0447\u0448\u0435\u043c\u0443 \u0440\u0435\u0437\u0443\u043b\u044c\u0442\u0430\u0442\u0443. \u041d\u0430 \u0441\u0430\u043c\u043e\u043c \u0434\u0435\u043b\u0435 \u0435\u0441\u043b\u0438 \u043c\u044b \u043f\u0440\u0438 \u043f\u043b\u043e\u0445\u043e \u0441\u043a\u043e\u043d\u0441\u0442\u0440\u0443\u0438\u0440\u0443\u0435\u043c \u0441\u043e\u0441\u0442\u043e\u044f\u043d\u0438\u0435 \u0440\u044b\u043d\u043a\u0430 \u0434\u043b\u044f \u0430\u0433\u0435\u043d\u0442\u0430, \u0442\u043e \u043d\u0430\u0448 \u0430\u043b\u0433\u043e\u0440\u0438\u0442\u043c \u043f\u0435\u0440\u0435\u043e\u0431\u0443\u0447\u0438\u0442\u0441\u044f \u0435\u0449\u0451 \u0431\u044b\u0441\u0442\u0440\u0435\u0435 \u0437\u0430 \u0441\u0447\u0451\u0442 \u0433\u043b\u0443\u0431\u043e\u043a\u043e\u0439 \u0441\u0435\u0442\u0438 \u0438\u043b\u0438 \u0431\u043e\u043b\u044c\u0448\u043e\u0433\u043e \u0431\u044e\u0434\u0436\u0435\u0442\u0430 \u0432\u044b\u0447\u0438\u0441\u043b\u0435\u043d\u0438\u0439.\u0424\u0443\u043d\u043a\u0446\u0438\u044f \u043d\u0430\u0433\u0440\u0430\u0434\u044b (\u0434\u0430\u043b\u0435\u0435 reward) &#8212; \u044d\u0442\u043e \u043f\u0440\u043e\u0441\u0442\u043e \u043c\u0435\u0442\u0440\u0438\u043a\u0430. \u041d\u0430 \u0441\u0430\u043c\u043e\u043c \u0434\u0435\u043b\u0435 reward &#8212; \u044d\u0442\u043e\u00a0\u043f\u043e\u043b\u043d\u0430\u044f \u0438 \u0444\u043e\u0440\u043c\u0430\u043b\u044c\u043d\u0430\u044f \u0441\u043f\u0435\u0446\u0438\u0444\u0438\u043a\u0430\u0446\u0438\u044f \u0442\u043e\u0433\u043e, \u0447\u0435\u0433\u043e \u043c\u044b \u0445\u043e\u0442\u0438\u043c, \u0441\u043e \u0432\u0441\u0435\u043c\u0438 \u0438\u0437\u0432\u0435\u0441\u0442\u043d\u044b\u043c\u0438 RL-\u043f\u0430\u0442\u043e\u043b\u043e\u0433\u0438\u044f\u043c\u0438 (\u0430\u0433\u0435\u043d\u0442\u0443 \u043f\u0440\u043e\u0449\u0435 \u0441\u0438\u0434\u0435\u0442\u044c \u0432 \u0434\u0435\u043d\u044c\u0433\u0430\u0445, \u0442\u0435\u0440\u043f\u0435\u0442\u044c \u043a\u0430\u0442\u0430\u0441\u0442\u0440\u043e\u0444\u0438\u0447\u0435\u0441\u043a\u0438\u0435 \u043f\u0440\u043e\u0441\u0430\u0434\u043a\u0438 \u0440\u0430\u0434\u0438 \u043f\u043e\u0442\u0435\u043d\u0446\u0438\u0430\u043b\u044c\u043d\u043e\u0439 \u0432\u044b\u0433\u043e\u0434\u044b \u0438\u043b\u0438 \u0434\u0435\u0439\u0441\u0442\u0432\u043e\u0432\u0430\u0442\u044c \u0432\u043e\u0432\u0441\u0435 \u043d\u0435\u0440\u0430\u0437\u0443\u043c\u043d\u043e, \u043f\u043e\u0442\u043e\u043c\u0443 \u0447\u0442\u043e \u0432\u044b \u043e\u0448\u0438\u0431\u043b\u0438\u0441\u044c \u0441 \u043f\u043e\u0441\u0442\u0430\u043d\u043e\u0432\u043a\u043e\u0439).\u041d\u0430 \u0442\u0435\u043a\u0443\u0449\u0435\u043c \u044d\u0442\u0430\u043f\u0435 \u0434\u043e\u0431\u0430\u0432\u043b\u044f\u0435\u043c:python \u043a\u0430\u043a \u043e\u0441\u043d\u043e\u0432\u043d\u043e\u0439 \u044f\u0437\u044b\u043a \u0440\u0430\u0437\u0440\u0430\u0431\u043e\u0442\u043a\u0438;gymnasium \u043a\u0430\u043a \u0431\u0430\u0437\u043e\u0432\u0430\u044f \u0431\u0438\u0431\u043b\u0438\u043e\u0442\u0435\u043a\u0430 \u043c\u043e\u0434\u0435\u043b\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u044f \u0442\u043e\u0440\u0433\u043e\u0432\u043e\u0439 \u0441\u0440\u0435\u0434\u044b;stable-baselines3 \u0432 \u043a\u0430\u0447\u0435\u0441\u0442\u0432\u0435 \u0431\u0438\u0431\u043b\u0438\u043e\u0442\u0435\u043a\u0438 \u0441 \u0433\u043e\u0442\u043e\u0432\u044b\u043c\u0438 \u0440\u0435\u0430\u043b\u0438\u0437\u0430\u0446\u0438\u044f\u043c\u0438 \u0440\u0430\u0437\u043b\u0438\u0447\u043d\u044b\u0445 RL-\u0430\u043b\u0433\u043e\u0440\u0438\u0442\u043c\u043e\u0432;ta-lib \u0434\u043b\u044f \u0438\u043c\u043f\u043e\u0440\u0442\u0430 \u0444\u0443\u043d\u043a\u0446\u0438\u0439 \u0440\u0430\u0441\u0441\u0447\u0451\u0442\u0430 \u0442\u0440\u0430\u0434\u0438\u0446\u0438\u043e\u043d\u043d\u044b\u0445 \u0438\u043d\u0434\u0438\u043a\u0430\u0442\u043e\u0440\u043e\u0432 (\u043d\u0430\u043f\u0440\u0438\u043c\u0435\u0440, bb_position);tensorboard \u0434\u043b\u044f \u0433\u043b\u0443\u0431\u043e\u043a\u043e\u0433\u043e \u0430\u043d\u0430\u043b\u0438\u0437\u0430 \u043c\u0435\u0442\u0440\u0438\u043a \u0438 \u0442\u0440\u0430\u0435\u043a\u0442\u043e\u0440\u0438\u0439 \u043e\u0431\u0443\u0447\u0435\u043d\u0438\u044f;\u0441\u044b\u0440\u044b\u0435 \u0434\u0430\u043d\u043d\u044b\u0435 \u043c\u043e\u0436\u043d\u043e \u0432\u0437\u044f\u0442\u044c \u043d\u0430 yahoo finance (\u0434\u043d\u0435\u0432\u043d\u044b\u0435 \u043a\u043e\u0442\u0438\u0440\u043e\u0432\u043a\u0438 \u0431\u0435\u0437 \u043e\u0433\u0440\u0430\u043d\u0438\u0447\u0435\u043d\u0438\u0439).\u041f\u043e\u0440\u0442\u0444\u0435\u043b\u044c \u0438 \u0434\u043d\u0435\u0432\u043d\u044b\u0435 \u0434\u0430\u043d\u043d\u044b\u0435\u041e\u0447\u0435\u0440\u0435\u0434\u043d\u043e\u0435 \u0434\u043e\u043f\u0443\u0449\u0435\u043d\u0438\u0435:\u0422\u043e\u0440\u0433\u043e\u0432\u0430\u0442\u044c \u0431\u0443\u0434\u0435\u043c \u043d\u0435 \u043e\u0442\u0434\u0435\u043b\u044c\u043d\u044b\u043c \u0430\u043a\u0442\u0438\u0432\u043e\u043c, \u0430 \u043f\u043e\u0440\u0442\u0444\u0435\u043b\u0435\u043c \u0446\u0435\u043d\u043d\u044b\u0445 \u0431\u0443\u043c\u0430\u0433\u041f\u043e\u043c\u043e\u0436\u0435\u043c \u043d\u0430\u0448\u0435\u043c\u0443 \u0430\u0433\u0435\u043d\u0442\u0443 \u0438 \u0437\u0430\u0440\u0430\u043d\u0435\u0435 \u0434\u0430\u0434\u0438\u043c \u0432\u043e\u0437\u043c\u043e\u0436\u043d\u043e\u0441\u0442\u044c \u0434\u0438\u0432\u0435\u0440\u0441\u0438\u0444\u0438\u0446\u0438\u0440\u043e\u0432\u0430\u0442\u044c \u0440\u0438\u0441\u043a\u0438. \u0423 \u043d\u0435\u0433\u043e \u0434\u043e\u043b\u0436\u043d\u0430 \u0431\u044b\u0442\u044c \u0432\u043e\u0437\u043c\u043e\u0436\u043d\u043e\u0441\u0442\u044c \u043f\u0440\u0438\u043e\u0431\u0440\u0435\u0442\u0430\u0442\u044c \u0437\u0430\u0449\u0438\u0442\u043d\u044b\u0435 \u0430\u043a\u0442\u0438\u0432\u044b \u0432 \u043f\u0435\u0440\u0438\u043e\u0434 \u043a\u0440\u0438\u0437\u0438\u0441\u0430 \u0438 \u0434\u0435\u043b\u0430\u0442\u044c \u0441\u0442\u0430\u0432\u043a\u0443 \u043d\u0430 \u0440\u043e\u0441\u0442 \u0432 \u0441\u043f\u043e\u043a\u043e\u0439\u043d\u044b\u0435 \u0432\u0440\u0435\u043c\u0435\u043d\u0430.\u041f\u0443\u0441\u0442\u044c \u043d\u0430\u0448\u0430 \u0442\u043e\u0440\u0433\u043e\u0432\u0430\u044f \u0441\u0442\u0440\u0430\u0442\u0435\u0433\u0438\u044f &#8212; \u044d\u0442\u043e \u0444\u0443\u043d\u043a\u0446\u0438\u044f, \u043a\u043e\u0442\u043e\u0440\u0430\u044f \u043f\u0440\u0438\u043d\u0438\u043c\u0430\u0435\u0442 \u0438\u0441\u0442\u043e\u0440\u0438\u044e \u0446\u0435\u043d \u0438 \u043e\u0442\u0434\u0430\u0451\u0442 \u0432\u0435\u0441\u0430 \u0430\u043a\u0442\u0438\u0432\u043e\u0432 \u0434\u043b\u044f \u0440\u0435\u0431\u0430\u043b\u0430\u043d\u0441\u0438\u0440\u043e\u0432\u043a\u0438 \u043f\u043e\u0440\u0442\u0444\u0435\u043b\u044f. \u041a\u043b\u0430\u0441\u0441\u0438\u0447\u0435\u0441\u043a\u0438\u0439 ML-\u043f\u043e\u0434\u0445\u043e\u0434: \u043f\u0440\u0435\u0434\u0441\u043a\u0430\u0437\u044b\u0432\u0430\u0442\u044c \u0431\u0443\u0434\u0443\u0449\u0438\u0435 \u0434\u043e\u0445\u043e\u0434\u043d\u043e\u0441\u0442\u0438, \u043e\u043f\u0442\u0438\u043c\u0438\u0437\u0438\u0440\u043e\u0432\u0430\u0442\u044c \u043f\u043e\u0440\u0442\u0444\u0435\u043b\u044c \u043f\u043e \u043f\u0440\u043e\u0433\u043d\u043e\u0437\u0443 (mean-variance, Black-Litterman).\u041a\u043b\u0430\u0441\u0441\u0438\u043a\u0430 \u0440\u0430\u0431\u043e\u0442\u0430\u0435\u0442, \u043d\u043e \u0435\u0441\u0442\u044c \u043d\u0435\u0441\u043a\u043e\u043b\u044c\u043a\u043e \u043d\u0435\u0443\u0434\u043e\u0431\u043d\u044b\u0445 \u0441\u0432\u043e\u0439\u0441\u0442\u0432, \u043f\u043e\u044d\u0442\u043e\u043c\u0443 RL\u0417\u0430\u0434\u0430\u0447\u0430 \u043d\u0435 \u0434\u0438\u0444\u0444\u0435\u0440\u0435\u043d\u0446\u0438\u0440\u0443\u0435\u043c\u0430 \u043f\u043e \u0446\u0435\u043b\u0435\u0432\u043e\u0439 \u043c\u0435\u0442\u0440\u0438\u043a\u0435. Sharpe ratio, Calmar, MaxDrawdown &#8212; \u044d\u0442\u043e \u0441\u0432\u043e\u0439\u0441\u0442\u0432\u0430 \u0442\u0440\u0430\u0435\u043a\u0442\u043e\u0440\u0438\u0438, \u0430 \u043d\u0435 \u043e\u0434\u043d\u043e\u0433\u043e \u0448\u0430\u0433\u0430. \u041c\u0438\u043d\u0438\u043c\u0438\u0437\u0430\u0446\u0438\u044f MSE \u043d\u0430 \u043f\u0440\u0435\u0434\u0441\u043a\u0430\u0437\u0430\u043d\u0438\u0435 \u0434\u043e\u0445\u043e\u0434\u043d\u043e\u0441\u0442\u0438 &#8212; \u043f\u0440\u043e\u043a\u0441\u0438, \u043a\u043e\u0442\u043e\u0440\u044b\u0439 \u043f\u043b\u043e\u0445\u043e \u043a\u043e\u0440\u0440\u0435\u043b\u0438\u0440\u0443\u0435\u0442 \u0441 Sharpe \u0444\u0438\u043d\u0430\u043b\u044c\u043d\u043e\u0439 \u0441\u0442\u0440\u0430\u0442\u0435\u0433\u0438\u0438.\u0414\u0435\u0439\u0441\u0442\u0432\u0438\u044f \u0441\u0435\u0433\u043e\u0434\u043d\u044f \u043c\u0435\u043d\u044f\u044e\u0442 \u0441\u043e\u0441\u0442\u043e\u044f\u043d\u0438\u0435 \u0437\u0430\u0432\u0442\u0440\u0430. \u041a\u043e\u043c\u0438\u0441\u0441\u0438\u044f \u0437\u0430 \u0440\u0435\u0431\u0430\u043b\u0430\u043d\u0441\u0438\u0440\u043e\u0432\u043a\u0443, \u043f\u0440\u043e\u0441\u043a\u0430\u043b\u044c\u0437\u044b\u0432\u0430\u043d\u0438\u044f, \u0432\u044b\u0441\u043e\u043a\u0438\u0439 \u0431\u0443\u043c\u0430\u0436\u043d\u044b\u0439 \u0434\u043e\u0445\u043e\u0434 \u043f\u043e\u0441\u043b\u0435 \u0445\u043e\u0440\u043e\u0448\u0435\u0439 \u043d\u0435\u0434\u0435\u043b\u0438 \u0438 \u043f\u0440\u043e\u0441\u0430\u0434\u043a\u0430 \u043f\u043e\u0441\u043b\u0435 \u043f\u043b\u043e\u0445\u043e\u0439. \u041a\u043b\u0430\u0441\u0441\u0438\u0447\u0435\u0441\u043a\u0438\u0439 &#171;predict-then-optimize&#187; \u044d\u0442\u0443 \u0434\u0438\u043d\u0430\u043c\u0438\u043a\u0443 \u0438\u0433\u043d\u043e\u0440\u0438\u0440\u0443\u0435\u0442.Reward shaping &#8212; \u043d\u0430\u0442\u0438\u0432\u043d\u044b\u0439 \u0440\u044b\u0447\u0430\u0433. \u0412 RL \u0432\u044b \u043c\u043e\u0436\u0435\u0442\u0435 \u043d\u0430\u043f\u0440\u044f\u043c\u0443\u044e \u043d\u0430\u043f\u0438\u0441\u0430\u0442\u044c: &#171;\u043d\u0430\u0433\u0440\u0430\u0436\u0434\u0430\u0439 \u0437\u0430 \u0432\u044b\u0441\u043e\u043a\u0438\u0439 Sharpe \u0437\u0430 \u043f\u043e\u0441\u043b\u0435\u0434\u043d\u0438\u0435 N \u0448\u0430\u0433\u043e\u0432, \u0448\u0442\u0440\u0430\u0444\u0443\u0439 \u0437\u0430 \u043f\u0440\u043e\u0441\u0430\u0434\u043a\u0443 \u0438 \u0440\u0435\u0431\u0430\u043b\u0430\u043d\u0441\u0438\u0440\u043e\u0432\u043a\u0443&#187;. \u042d\u0442\u043e \u0444\u043e\u0440\u043c\u0430\u043b\u0438\u0437\u0443\u0435\u0442\u0441\u044f \u0432 reward(s_t, a_t), \u0438 \u0430\u0433\u0435\u043d\u0442 \u0441\u0430\u043c \u0432\u044b\u0443\u0447\u0438\u0442 \u043f\u043e\u043b\u0438\u0442\u0438\u043a\u0443, \u043e\u043f\u0442\u0438\u043c\u0438\u0437\u0438\u0440\u0443\u044e\u0449\u0443\u044e \u0442\u0430\u043a\u0443\u044e \u043a\u043e\u043c\u043f\u043e\u0437\u0438\u0446\u0438\u044e.\u0418\u0441\u0441\u043b\u0435\u0434\u043e\u0432\u0430\u043d\u0438\u0435 \u0432\u043a\u043b\u044e\u0447\u0451\u043d\u043e \u043f\u043e \u0443\u043c\u043e\u043b\u0447\u0430\u043d\u0438\u044e. \u041f\u043e\u043b\u0438\u0442\u0438\u043a\u0430 \u0441\u0442\u043e\u0445\u0430\u0441\u0442\u0438\u0447\u0435\u0441\u043a\u0430\u044f (\u0432 \u0441\u043b\u0443\u0447\u0430\u0435 SAC) &#8212; \u0430\u0433\u0435\u043d\u0442 \u043f\u0440\u043e\u0431\u0443\u0435\u0442 \u0432\u0430\u0440\u0438\u0430\u0446\u0438\u0438 \u043e\u0442 \u0441\u0432\u043e\u0435\u0439 \u043e\u043f\u0442\u0438\u043c\u0430\u043b\u044c\u043d\u043e\u0439 \u0441\u0442\u0440\u0430\u0442\u0435\u0433\u0438\u0438, \u0447\u0442\u043e \u0432 \u0444\u0438\u043d\u0430\u043d\u0441\u0430\u0445 \u043f\u043e\u043b\u0435\u0437\u043d\u043e: \u0434\u0435\u0442\u0435\u0440\u043c\u0438\u043d\u0438\u0440\u043e\u0432\u0430\u043d\u043d\u044b\u0435 \u043f\u0440\u0430\u0432\u0438\u043b\u0430 \u0441\u043a\u043b\u043e\u043d\u043d\u044b \u043f\u043e\u043f\u0430\u0434\u0430\u0442\u044c \u0432 &#171;\u0432\u044b\u0443\u0447\u0435\u043d\u043d\u044b\u0435&#187; \u043f\u0430\u0442\u0442\u0435\u0440\u043d\u044b, \u043a\u043e\u0442\u043e\u0440\u044b\u0435 \u043f\u0435\u0440\u0435\u0441\u0442\u0430\u044e\u0442 \u0440\u0430\u0431\u043e\u0442\u0430\u0442\u044c.\u0422\u043e\u0440\u0433\u043e\u0432\u0430\u0442\u044c \u0431\u0443\u0434\u0435\u043c \u043d\u0430 \u0434\u043d\u0435\u0432\u043d\u044b\u0445 \u0434\u0430\u043d\u043d\u044b\u0445\u041d\u0430 \u0440\u044b\u043d\u043a\u0435 \u043a\u0430\u0436\u0434\u043e\u0435 \u043c\u0433\u043d\u043e\u0432\u0435\u043d\u0438\u0435 \u0447\u0442\u043e-\u0442\u043e \u043f\u0440\u043e\u0438\u0441\u0445\u043e\u0434\u0438\u0442 \u0438 \u044d\u0442\u043e \u043e\u0442\u0440\u0430\u0436\u0430\u0435\u0442\u0441\u044f \u0432 \u0446\u0435\u043d\u0435 \u0430\u043a\u0442\u0438\u0432\u043e\u0432. \u0427\u0435\u043c \u0432\u044b\u0448\u0435 \u0434\u0438\u0441\u043a\u0440\u0435\u0442\u043d\u043e\u0441\u0442\u044c \u0441\u043e\u0431\u044b\u0442\u0438\u0439, \u0442\u0435\u043c \u0431\u043e\u043b\u044c\u0448\u0435 \u0442\u0430\u043c \u0448\u0443\u043c\u0430. \u0414\u0430\u0431\u044b \u0441\u043a\u043e\u043c\u043f\u0435\u043d\u0441\u0438\u0440\u043e\u0432\u0430\u0442\u044c \u043f\u0440\u043e\u0441\u0442\u0440\u0430\u043d\u0441\u0442\u0432\u043e \u0432\u043e\u0437\u043c\u043e\u0436\u043d\u044b\u0445 \u0440\u0435\u0448\u0435\u043d\u0438\u0439, \u0432\u0440\u0435\u043c\u044f \u0438 \u0434\u043e\u0441\u0442\u0443\u043f\u043d\u044b\u0435 \u0440\u0435\u0441\u0443\u0440\u0441\u044b &#8212; \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u0435\u043c \u0434\u043d\u0435\u0432\u043d\u044b\u0435 \u0434\u0430\u043d\u043d\u044b\u0435.\u0414\u043b\u044f \u0441\u043e\u0437\u0434\u0430\u043d\u0438\u044f \u044d\u0444\u0444\u0435\u043a\u0442\u0438\u0432\u043d\u043e\u0439 \u0442\u043e\u0440\u0433\u043e\u0432\u043e\u0439 \u0441\u0442\u0440\u0430\u0442\u0435\u0433\u0438\u0438 (\u0432\u044b\u0443\u0447\u0438\u0432\u0430\u043d\u0438\u044f \u043e\u043f\u0442\u0438\u043c\u0430\u043b\u044c\u043d\u043e\u0439 \u043f\u043e\u043b\u0438\u0442\u0438\u043a\u0438) \u0441\u043b\u0435\u0434\u0443\u0435\u0442 \u0432\u0437\u044f\u0442\u044c \u0430\u043a\u0442\u0438\u0432\u044b \u0438\u0437 \u0440\u0430\u0437\u043b\u0438\u0447\u043d\u044b\u0445 \u0441\u0435\u043a\u0442\u043e\u0440\u043e\u0432 \u0438 \u0441 \u043c\u0438\u043d\u0438\u043c\u0430\u043b\u044c\u043d\u043e\u0439 \u043a\u043e\u0440\u0440\u0435\u043b\u044f\u0446\u0438\u0435\u0439 \u043c\u0435\u0436\u0434\u0443 \u0441\u043e\u0431\u043e\u0439.\u0422\u0438\u043a\u0435\u0440\u041a\u043b\u0430\u0441\u0441\u0417\u0430\u0447\u0435\u043cBTC\u041a\u0440\u0438\u043f\u0442\u043e\u0432\u0430\u043b\u044e\u0442\u0430\u0412\u044b\u0441\u043e\u043a\u043e\u0432\u043e\u043b\u0430\u0442\u0438\u043b\u044c\u043d\u044b\u0439 risk-on \u0430\u043a\u0442\u0438\u0432NDX\u0418\u043d\u0434\u0435\u043a\u0441\u0422\u0435\u0445\u043d\u043e\u043b\u043e\u0433\u0438\u0447\u0435\u0441\u043a\u0438\u0439 \u0440\u043e\u0441\u0442XAU\u041c\u0435\u0442\u0430\u043b\u043b\u041a\u043b\u0430\u0441\u0441\u0438\u0447\u0435\u0441\u043a\u0438\u0439 safe-havenXAG\u041c\u0435\u0442\u0430\u043b\u043b\u041c\u0435\u0442\u0430\u043b\u043b \u0441 \u0441\u0432\u043e\u0439\u0441\u0442\u0432\u0430\u043c\u0438 \u043f\u0440\u043e\u043c\u044b\u0448\u043b\u0435\u043d\u043d\u043e\u0433\u043e \u0441\u0435\u043a\u0442\u043e\u0440\u0430LCOc1\u041d\u0435\u0444\u0442\u044c \u0421\u044b\u0440\u044c\u0435\u0432\u043e\u0439 \u0446\u0438\u043a\u043bTLT\u0414\u043e\u043b\u0433\u043e\u0441\u0440\u043e\u0447\u043d\u044b\u0435 \u043e\u0431\u043b\u0438\u0433\u0430\u0446\u0438\u0438\u041e\u0442\u0440\u0438\u0446\u0430\u0442\u0435\u043b\u044c\u043d\u0430\u044f \u043a\u043e\u0440\u0440\u0435\u043b\u044f\u0446\u0438\u044f \u0441 \u0430\u043a\u0446\u0438\u044f\u043c\u0438 \u0432 \u043a\u0440\u0438\u0437\u0438\u0441\u0418\u0437\u043d\u0430\u0447\u0430\u043b\u044c\u043d\u043e \u0442\u0430\u043c \u0431\u044b\u043b \u043f\u0440\u0438\u0440\u043e\u0434\u043d\u044b\u0439 \u0433\u0430\u0437 (NG) \u0432\u043c\u0435\u0441\u0442\u043e \u043e\u0431\u043b\u0438\u0433\u0430\u0446\u0438\u0439 (TLT), \u043d\u043e \u0430\u0433\u0435\u043d\u0442 \u0442\u0430\u043a \u0438 \u043d\u0435 \u043d\u0430\u0443\u0447\u0438\u043b\u0441\u044f \u0435\u0433\u043e \u0442\u043e\u0440\u0433\u043e\u0432\u0430\u0442\u044c \u0438\u0437-\u0437\u0430 \u0432\u044b\u0441\u043e\u043a\u043e\u0439&#8230;<\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"closed","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[],"tags":[],"class_list":["post-478087","post","type-post","status-publish","format-standard","hentry"],"_links":{"self":[{"href":"https:\/\/savepearlharbor.com\/index.php?rest_route=\/wp\/v2\/posts\/478087","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/savepearlharbor.com\/index.php?rest_route=\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/savepearlharbor.com\/index.php?rest_route=\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/savepearlharbor.com\/index.php?rest_route=\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/savepearlharbor.com\/index.php?rest_route=%2Fwp%2Fv2%2Fcomments&post=478087"}],"version-history":[{"count":0,"href":"https:\/\/savepearlharbor.com\/index.php?rest_route=\/wp\/v2\/posts\/478087\/revisions"}],"wp:attachment":[{"href":"https:\/\/savepearlharbor.com\/index.php?rest_route=%2Fwp%2Fv2%2Fmedia&parent=478087"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/savepearlharbor.com\/index.php?rest_route=%2Fwp%2Fv2%2Fcategories&post=478087"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/savepearlharbor.com\/index.php?rest_route=%2Fwp%2Fv2%2Ftags&post=478087"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}