alpha-visualizer 0.7.3__tar.gz → 0.8.0__tar.gz
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- {alpha_visualizer-0.7.3 → alpha_visualizer-0.8.0}/.hypothesis/constants/0bf3463e8f4751b8 +1 -1
- {alpha_visualizer-0.7.3 → alpha_visualizer-0.8.0}/.hypothesis/constants/0f38aca28193156b +1 -1
- {alpha_visualizer-0.7.3 → alpha_visualizer-0.8.0}/.hypothesis/constants/10d56fd11d90e91d +1 -1
- {alpha_visualizer-0.7.3 → alpha_visualizer-0.8.0}/.hypothesis/constants/2826595e28fa870a +1 -1
- {alpha_visualizer-0.7.3 → alpha_visualizer-0.8.0}/.hypothesis/constants/291dc4c40995bea6 +1 -1
- {alpha_visualizer-0.7.3 → alpha_visualizer-0.8.0}/.hypothesis/constants/296b8092179c9f55 +1 -1
- alpha_visualizer-0.7.3/.hypothesis/constants/efa1548145a8bfba → alpha_visualizer-0.8.0/.hypothesis/constants/2d0719450b40be86 +2 -2
- {alpha_visualizer-0.7.3 → alpha_visualizer-0.8.0}/.hypothesis/constants/312a7aaf12a1fd47 +1 -1
- {alpha_visualizer-0.7.3 → alpha_visualizer-0.8.0}/.hypothesis/constants/331e194303817b32 +1 -1
- {alpha_visualizer-0.7.3 → alpha_visualizer-0.8.0}/.hypothesis/constants/368f2bae545df6be +1 -1
- {alpha_visualizer-0.7.3 → alpha_visualizer-0.8.0}/.hypothesis/constants/3f7b61d4b4a660e1 +1 -1
- {alpha_visualizer-0.7.3 → alpha_visualizer-0.8.0}/.hypothesis/constants/43f703bafb1e4b04 +1 -1
- {alpha_visualizer-0.7.3 → alpha_visualizer-0.8.0}/.hypothesis/constants/4577b97f57a8a832 +1 -1
- {alpha_visualizer-0.7.3 → alpha_visualizer-0.8.0}/.hypothesis/constants/4726660442f99a00 +1 -1
- {alpha_visualizer-0.7.3 → alpha_visualizer-0.8.0}/.hypothesis/constants/4a1c4d1532cab28e +1 -1
- {alpha_visualizer-0.7.3 → alpha_visualizer-0.8.0}/.hypothesis/constants/508b282112ab038e +1 -1
- {alpha_visualizer-0.7.3 → alpha_visualizer-0.8.0}/.hypothesis/constants/757b1f8305546439 +1 -1
- {alpha_visualizer-0.7.3 → alpha_visualizer-0.8.0}/.hypothesis/constants/7d3b67d825fc154a +1 -1
- {alpha_visualizer-0.7.3 → alpha_visualizer-0.8.0}/.hypothesis/constants/7f90c9d611001617 +1 -1
- {alpha_visualizer-0.7.3 → alpha_visualizer-0.8.0}/.hypothesis/constants/82e279d41edd645d +1 -1
- {alpha_visualizer-0.7.3 → alpha_visualizer-0.8.0}/.hypothesis/constants/89aaa48f251cd53d +1 -1
- {alpha_visualizer-0.7.3 → alpha_visualizer-0.8.0}/.hypothesis/constants/89d70ebe84c5b2b7 +1 -1
- {alpha_visualizer-0.7.3 → alpha_visualizer-0.8.0}/.hypothesis/constants/8add761403393fca +1 -1
- {alpha_visualizer-0.7.3 → alpha_visualizer-0.8.0}/.hypothesis/constants/90fccc12da2fa6c9 +1 -1
- {alpha_visualizer-0.7.3 → alpha_visualizer-0.8.0}/.hypothesis/constants/96ca93165140d446 +1 -1
- {alpha_visualizer-0.7.3 → alpha_visualizer-0.8.0}/.hypothesis/constants/97982d8e7c8d4a95 +1 -1
- {alpha_visualizer-0.7.3 → alpha_visualizer-0.8.0}/.hypothesis/constants/a636a4647020033d +1 -1
- {alpha_visualizer-0.7.3 → alpha_visualizer-0.8.0}/.hypothesis/constants/ab4df659c6b192db +1 -1
- alpha_visualizer-0.7.3/.hypothesis/constants/828ed73d45fcee28 → alpha_visualizer-0.8.0/.hypothesis/constants/b5541576e1e9aea7 +1 -1
- {alpha_visualizer-0.7.3 → alpha_visualizer-0.8.0}/.hypothesis/constants/b76328deebb21ae6 +1 -1
- {alpha_visualizer-0.7.3 → alpha_visualizer-0.8.0}/.hypothesis/constants/b9ff5bcd3a53e3a7 +1 -1
- {alpha_visualizer-0.7.3 → alpha_visualizer-0.8.0}/.hypothesis/constants/bd75c3c18e8ba4f4 +1 -1
- {alpha_visualizer-0.7.3 → alpha_visualizer-0.8.0}/.hypothesis/constants/c5349cb90ddc7968 +1 -1
- {alpha_visualizer-0.7.3 → alpha_visualizer-0.8.0}/.hypothesis/constants/c5f6cf064ffb412d +1 -1
- {alpha_visualizer-0.7.3 → alpha_visualizer-0.8.0}/.hypothesis/constants/cd09731f3dfbf59f +1 -1
- {alpha_visualizer-0.7.3 → alpha_visualizer-0.8.0}/.hypothesis/constants/d4cc884f331eee77 +1 -1
- {alpha_visualizer-0.7.3 → alpha_visualizer-0.8.0}/.hypothesis/constants/da39a3ee5e6b4b0d +1 -1
- {alpha_visualizer-0.7.3 → alpha_visualizer-0.8.0}/.hypothesis/constants/e44a457d795e56c2 +1 -1
- {alpha_visualizer-0.7.3 → alpha_visualizer-0.8.0}/.hypothesis/constants/ea2d606acbfff989 +1 -1
- {alpha_visualizer-0.7.3 → alpha_visualizer-0.8.0}/.hypothesis/constants/ee487c54cd5ca7dc +1 -1
- {alpha_visualizer-0.7.3 → alpha_visualizer-0.8.0}/.hypothesis/constants/eed5e66c16ae84b8 +1 -1
- {alpha_visualizer-0.7.3 → alpha_visualizer-0.8.0}/.hypothesis/constants/f2f91c7f9b44111d +1 -1
- {alpha_visualizer-0.7.3 → alpha_visualizer-0.8.0}/.hypothesis/constants/f7c4a04c97c0daf8 +1 -1
- {alpha_visualizer-0.7.3 → alpha_visualizer-0.8.0}/.hypothesis/constants/f7f9c6b3c86f63a8 +1 -1
- {alpha_visualizer-0.7.3 → alpha_visualizer-0.8.0}/.hypothesis/constants/fa443af6269a6e02 +1 -1
- {alpha_visualizer-0.7.3 → alpha_visualizer-0.8.0}/.hypothesis/constants/fe325b4404aa1121 +1 -1
- {alpha_visualizer-0.7.3 → alpha_visualizer-0.8.0}/.hypothesis/constants/ff4517cbfe51fea1 +1 -1
- {alpha_visualizer-0.7.3 → alpha_visualizer-0.8.0}/PKG-INFO +2 -2
- {alpha_visualizer-0.7.3 → alpha_visualizer-0.8.0}/README.en.md +1 -1
- {alpha_visualizer-0.7.3 → alpha_visualizer-0.8.0}/README.md +1 -1
- alpha_visualizer-0.8.0/docs/screenshots/en/optimize.png +0 -0
- alpha_visualizer-0.8.0/docs/screenshots/ja/optimize.png +0 -0
- {alpha_visualizer-0.7.3 → alpha_visualizer-0.8.0}/frontend/e2e/specs/compare.spec.ts +1 -1
- {alpha_visualizer-0.7.3 → alpha_visualizer-0.8.0}/frontend/package.json +3 -3
- {alpha_visualizer-0.7.3 → alpha_visualizer-0.8.0}/frontend/pnpm-lock.yaml +442 -348
- alpha_visualizer-0.8.0/frontend/pnpm-workspace.yaml +10 -0
- {alpha_visualizer-0.7.3 → alpha_visualizer-0.8.0}/frontend/src/charts/tv/CompareEquityTV.tsx +7 -7
- {alpha_visualizer-0.7.3 → alpha_visualizer-0.8.0}/frontend/src/charts/tv/EquityDrawdownPaneTV.tsx +16 -5
- {alpha_visualizer-0.7.3 → alpha_visualizer-0.8.0}/frontend/src/charts/tv/RollingMetricsChartTV.tsx +14 -6
- {alpha_visualizer-0.7.3 → alpha_visualizer-0.8.0}/frontend/src/charts/tv/StrategySignalChartTV.tsx +20 -6
- {alpha_visualizer-0.7.3 → alpha_visualizer-0.8.0}/frontend/src/charts/tv/WFOEquityTV.tsx +6 -6
- {alpha_visualizer-0.7.3 → alpha_visualizer-0.8.0}/frontend/src/charts/tv/__tests__/CompareEquityTV.test.tsx +1 -1
- {alpha_visualizer-0.7.3 → alpha_visualizer-0.8.0}/frontend/src/charts/tv/__tests__/EquityDrawdownPaneTV.test.tsx +1 -1
- {alpha_visualizer-0.7.3 → alpha_visualizer-0.8.0}/frontend/src/charts/tv/__tests__/RollingMetricsChartTV.test.tsx +1 -1
- {alpha_visualizer-0.7.3 → alpha_visualizer-0.8.0}/frontend/src/charts/tv/__tests__/StrategySignalChartTV.test.tsx +14 -4
- {alpha_visualizer-0.7.3 → alpha_visualizer-0.8.0}/frontend/src/charts/tv/__tests__/WFOEquityTV.test.tsx +1 -1
- {alpha_visualizer-0.7.3 → alpha_visualizer-0.8.0}/frontend/src/charts/visx/AnnualReturnsBarV.tsx +1 -1
- {alpha_visualizer-0.7.3 → alpha_visualizer-0.8.0}/frontend/src/charts/visx/CompareEquityV.tsx +1 -1
- {alpha_visualizer-0.7.3 → alpha_visualizer-0.8.0}/frontend/src/charts/visx/CorrelationHeatmapV.tsx +15 -1
- {alpha_visualizer-0.7.3 → alpha_visualizer-0.8.0}/frontend/src/charts/visx/EquityChartV.tsx +1 -1
- {alpha_visualizer-0.7.3 → alpha_visualizer-0.8.0}/frontend/src/charts/visx/MAEMFEScatterV.tsx +30 -3
- alpha_visualizer-0.8.0/frontend/src/charts/visx/OptimizeHeatmapV.tsx +271 -0
- {alpha_visualizer-0.7.3 → alpha_visualizer-0.8.0}/frontend/src/charts/visx/OptimizeScatterV.tsx +1 -1
- alpha_visualizer-0.8.0/frontend/src/components/AppNav.tsx +55 -0
- {alpha_visualizer-0.7.3 → alpha_visualizer-0.8.0}/frontend/src/components/MetricsSummaryBarV2.tsx +3 -1
- {alpha_visualizer-0.7.3 → alpha_visualizer-0.8.0}/frontend/src/components/RootLayout.tsx +12 -1
- {alpha_visualizer-0.7.3 → alpha_visualizer-0.8.0}/frontend/src/components/SettingsToggles.tsx +1 -1
- alpha_visualizer-0.8.0/frontend/src/components/__tests__/AppNav.test.tsx +30 -0
- alpha_visualizer-0.8.0/frontend/src/components/__tests__/MetricsSummaryBarV2.test.tsx +32 -0
- alpha_visualizer-0.8.0/frontend/src/components/__tests__/RootLayout.test.tsx +31 -0
- alpha_visualizer-0.8.0/frontend/src/components/__tests__/SettingsToggles.test.tsx +23 -0
- {alpha_visualizer-0.7.3 → alpha_visualizer-0.8.0}/frontend/src/components/browser/FilterBar.tsx +4 -0
- {alpha_visualizer-0.7.3 → alpha_visualizer-0.8.0}/frontend/src/components/browser/RunHistoryTab.tsx +6 -4
- {alpha_visualizer-0.7.3 → alpha_visualizer-0.8.0}/frontend/src/components/browser/StrategySlidePanel.tsx +32 -13
- {alpha_visualizer-0.7.3 → alpha_visualizer-0.8.0}/frontend/src/components/browser/StrategyTable.tsx +35 -20
- alpha_visualizer-0.8.0/frontend/src/components/browser/__tests__/FilterBar.test.tsx +34 -0
- alpha_visualizer-0.8.0/frontend/src/components/browser/__tests__/RunHistoryTab.test.tsx +52 -0
- {alpha_visualizer-0.7.3 → alpha_visualizer-0.8.0}/frontend/src/components/charts/MAEMFEScatter.tsx +1 -1
- {alpha_visualizer-0.7.3 → alpha_visualizer-0.8.0}/frontend/src/components/charts/MonteCarloChart.tsx +1 -1
- alpha_visualizer-0.8.0/frontend/src/components/charts/OptimizeHeatmap.tsx +91 -0
- {alpha_visualizer-0.7.3 → alpha_visualizer-0.8.0}/frontend/src/components/charts/RollingMetricsChart.tsx +1 -1
- {alpha_visualizer-0.7.3 → alpha_visualizer-0.8.0}/frontend/src/components/charts/VaRChart.tsx +2 -2
- {alpha_visualizer-0.7.3 → alpha_visualizer-0.8.0}/frontend/src/components/charts/WeekdayPerformanceChart.tsx +1 -1
- {alpha_visualizer-0.7.3 → alpha_visualizer-0.8.0}/frontend/src/components/live/LiveTab.tsx +1 -1
- {alpha_visualizer-0.7.3 → alpha_visualizer-0.8.0}/frontend/src/components/live/__tests__/LiveTab.test.tsx +23 -0
- {alpha_visualizer-0.7.3 → alpha_visualizer-0.8.0}/frontend/src/components/metrics/SignalQualityBadge.tsx +9 -1
- alpha_visualizer-0.8.0/frontend/src/components/metrics/__tests__/SignalQualityBadge.test.tsx +19 -0
- {alpha_visualizer-0.7.3 → alpha_visualizer-0.8.0}/frontend/src/components/trades/TradeTable.tsx +23 -15
- alpha_visualizer-0.8.0/frontend/src/components/trades/__tests__/TradeTable.test.tsx +52 -0
- alpha_visualizer-0.8.0/frontend/src/design/__tests__/noHardcodedColors.test.ts +53 -0
- alpha_visualizer-0.8.0/frontend/src/design/__tests__/tokens.contrast.test.ts +85 -0
- {alpha_visualizer-0.7.3 → alpha_visualizer-0.8.0}/frontend/src/design/a11y.css +48 -0
- alpha_visualizer-0.8.0/frontend/src/design/primitives/ChartDataTable.tsx +94 -0
- alpha_visualizer-0.8.0/frontend/src/design/primitives/ConfirmDialog.tsx +117 -0
- alpha_visualizer-0.8.0/frontend/src/design/primitives/ErrorBanner.tsx +49 -0
- alpha_visualizer-0.8.0/frontend/src/design/primitives/Loading.tsx +86 -0
- {alpha_visualizer-0.7.3 → alpha_visualizer-0.8.0}/frontend/src/design/primitives/Pill.tsx +2 -0
- alpha_visualizer-0.8.0/frontend/src/design/primitives/SortHeaderCell.tsx +66 -0
- {alpha_visualizer-0.7.3 → alpha_visualizer-0.8.0}/frontend/src/design/primitives/TabBar.tsx +44 -1
- alpha_visualizer-0.8.0/frontend/src/design/primitives/__tests__/ChartDataTable.test.tsx +39 -0
- alpha_visualizer-0.8.0/frontend/src/design/primitives/__tests__/ConfirmDialog.test.tsx +59 -0
- alpha_visualizer-0.8.0/frontend/src/design/primitives/__tests__/ErrorBanner.test.tsx +27 -0
- alpha_visualizer-0.8.0/frontend/src/design/primitives/__tests__/Loading.test.tsx +37 -0
- alpha_visualizer-0.8.0/frontend/src/design/primitives/__tests__/Pill.test.tsx +24 -0
- alpha_visualizer-0.8.0/frontend/src/design/primitives/__tests__/SortHeaderCell.test.tsx +57 -0
- alpha_visualizer-0.8.0/frontend/src/design/primitives/__tests__/TabBar.test.tsx +77 -0
- {alpha_visualizer-0.7.3 → alpha_visualizer-0.8.0}/frontend/src/design/primitives/index.ts +3 -0
- alpha_visualizer-0.8.0/frontend/src/design/primitives/srOnly.ts +14 -0
- {alpha_visualizer-0.7.3 → alpha_visualizer-0.8.0}/frontend/src/design/tokens.css +8 -8
- alpha_visualizer-0.8.0/frontend/src/hooks/__tests__/useDocumentTitle.test.tsx +21 -0
- {alpha_visualizer-0.7.3 → alpha_visualizer-0.8.0}/frontend/src/hooks/__tests__/useFetchByKey.test.ts +19 -0
- alpha_visualizer-0.8.0/frontend/src/hooks/__tests__/useLiveAvailability.test.tsx +47 -0
- {alpha_visualizer-0.7.3 → alpha_visualizer-0.8.0}/frontend/src/hooks/__tests__/useTheme.test.tsx +110 -0
- alpha_visualizer-0.8.0/frontend/src/hooks/__tests__/useViewerSettings.lang.test.tsx +30 -0
- {alpha_visualizer-0.7.3 → alpha_visualizer-0.8.0}/frontend/src/hooks/useBacktestData.ts +14 -5
- alpha_visualizer-0.8.0/frontend/src/hooks/useDocumentTitle.ts +14 -0
- {alpha_visualizer-0.7.3 → alpha_visualizer-0.8.0}/frontend/src/hooks/useFetchByKey.ts +9 -2
- alpha_visualizer-0.8.0/frontend/src/hooks/useLiveAvailability.ts +39 -0
- {alpha_visualizer-0.7.3 → alpha_visualizer-0.8.0}/frontend/src/hooks/useTheme.ts +46 -7
- alpha_visualizer-0.8.0/frontend/src/lib/__tests__/errorMessage.test.ts +43 -0
- {alpha_visualizer-0.7.3 → alpha_visualizer-0.8.0}/frontend/src/lib/__tests__/format.test.ts +30 -2
- alpha_visualizer-0.8.0/frontend/src/lib/__tests__/optimizeHeatmap.test.ts +269 -0
- alpha_visualizer-0.8.0/frontend/src/lib/errorMessage.ts +30 -0
- {alpha_visualizer-0.7.3 → alpha_visualizer-0.8.0}/frontend/src/lib/format.ts +7 -2
- alpha_visualizer-0.8.0/frontend/src/lib/optimizeHeatmap.ts +211 -0
- {alpha_visualizer-0.7.3 → alpha_visualizer-0.8.0}/frontend/src/pages/BrowsePage.tsx +2 -0
- {alpha_visualizer-0.7.3 → alpha_visualizer-0.8.0}/frontend/src/pages/ComparePage.tsx +14 -17
- {alpha_visualizer-0.7.3 → alpha_visualizer-0.8.0}/frontend/src/pages/DetailPage.tsx +53 -32
- {alpha_visualizer-0.7.3 → alpha_visualizer-0.8.0}/frontend/src/pages/IdeasPage.tsx +2 -0
- {alpha_visualizer-0.7.3 → alpha_visualizer-0.8.0}/frontend/src/pages/LivePage.tsx +2 -0
- alpha_visualizer-0.8.0/frontend/src/pages/__tests__/ComparePage.test.tsx +51 -0
- {alpha_visualizer-0.7.3 → alpha_visualizer-0.8.0}/frontend/src/router.tsx +3 -16
- {alpha_visualizer-0.7.3 → alpha_visualizer-0.8.0}/frontend/src/screens/BacktestScreen.tsx +20 -22
- {alpha_visualizer-0.7.3 → alpha_visualizer-0.8.0}/frontend/src/screens/BrowseScreen.tsx +2 -12
- {alpha_visualizer-0.7.3 → alpha_visualizer-0.8.0}/frontend/src/screens/CompareScreen.tsx +2 -2
- {alpha_visualizer-0.7.3 → alpha_visualizer-0.8.0}/frontend/src/screens/IdeasScreen.tsx +2 -2
- {alpha_visualizer-0.7.3 → alpha_visualizer-0.8.0}/frontend/src/screens/LiveScreen.tsx +2 -2
- {alpha_visualizer-0.7.3 → alpha_visualizer-0.8.0}/frontend/src/screens/OptimizeScreen.tsx +185 -43
- alpha_visualizer-0.8.0/frontend/src/screens/__tests__/OptimizeScreen.test.tsx +102 -0
- {alpha_visualizer-0.7.3 → alpha_visualizer-0.8.0}/pyproject.toml +2 -2
- {alpha_visualizer-0.7.3 → alpha_visualizer-0.8.0}/src/alpha_visualizer/__init__.py +1 -1
- alpha_visualizer-0.8.0/src/alpha_visualizer/static/assets/BrowsePage-fIbnzpOH.js +2 -0
- alpha_visualizer-0.8.0/src/alpha_visualizer/static/assets/BrowsePage-fIbnzpOH.js.map +1 -0
- alpha_visualizer-0.8.0/src/alpha_visualizer/static/assets/ComparePage-CmL4Z8dn.js +2 -0
- alpha_visualizer-0.8.0/src/alpha_visualizer/static/assets/ComparePage-CmL4Z8dn.js.map +1 -0
- alpha_visualizer-0.8.0/src/alpha_visualizer/static/assets/DetailPage-CnSstZoD.js +2 -0
- alpha_visualizer-0.8.0/src/alpha_visualizer/static/assets/DetailPage-CnSstZoD.js.map +1 -0
- alpha_visualizer-0.8.0/src/alpha_visualizer/static/assets/IdeasPage-Ca2A5kwT.js +2 -0
- alpha_visualizer-0.8.0/src/alpha_visualizer/static/assets/IdeasPage-Ca2A5kwT.js.map +1 -0
- alpha_visualizer-0.8.0/src/alpha_visualizer/static/assets/LivePage-DWd51r3P.js +2 -0
- alpha_visualizer-0.8.0/src/alpha_visualizer/static/assets/LivePage-DWd51r3P.js.map +1 -0
- alpha_visualizer-0.8.0/src/alpha_visualizer/static/assets/LiveTab-CZ1wuoni.js +2 -0
- alpha_visualizer-0.7.3/src/alpha_visualizer/static/assets/LiveTab-B3SvCjHQ.js.map → alpha_visualizer-0.8.0/src/alpha_visualizer/static/assets/LiveTab-CZ1wuoni.js.map +1 -1
- alpha_visualizer-0.8.0/src/alpha_visualizer/static/assets/SortHeaderCell-4Oyr3ve3.js +2 -0
- alpha_visualizer-0.8.0/src/alpha_visualizer/static/assets/SortHeaderCell-4Oyr3ve3.js.map +1 -0
- alpha_visualizer-0.8.0/src/alpha_visualizer/static/assets/Sparkline-yjVH4yqJ.js +2 -0
- alpha_visualizer-0.7.3/src/alpha_visualizer/static/assets/Sparkline-BcO_EWxr.js.map → alpha_visualizer-0.8.0/src/alpha_visualizer/static/assets/Sparkline-yjVH4yqJ.js.map +1 -1
- alpha_visualizer-0.8.0/src/alpha_visualizer/static/assets/errorMessage-BkJpUuvD.js +3 -0
- alpha_visualizer-0.8.0/src/alpha_visualizer/static/assets/errorMessage-BkJpUuvD.js.map +1 -0
- alpha_visualizer-0.8.0/src/alpha_visualizer/static/assets/format-B2yDeBO6.js +2 -0
- alpha_visualizer-0.8.0/src/alpha_visualizer/static/assets/format-B2yDeBO6.js.map +1 -0
- alpha_visualizer-0.7.3/src/alpha_visualizer/static/assets/index-Cbl7J_5s.css → alpha_visualizer-0.8.0/src/alpha_visualizer/static/assets/index-CqRRiSkv.css +1 -1
- alpha_visualizer-0.8.0/src/alpha_visualizer/static/assets/index-DJk614WM.js +6 -0
- alpha_visualizer-0.8.0/src/alpha_visualizer/static/assets/index-DJk614WM.js.map +1 -0
- alpha_visualizer-0.7.3/src/alpha_visualizer/static/assets/react-cUP_GJAW.js → alpha_visualizer-0.8.0/src/alpha_visualizer/static/assets/react-RaXy2XQR.js +4 -4
- alpha_visualizer-0.7.3/src/alpha_visualizer/static/assets/react-cUP_GJAW.js.map → alpha_visualizer-0.8.0/src/alpha_visualizer/static/assets/react-RaXy2XQR.js.map +1 -1
- alpha_visualizer-0.7.3/src/alpha_visualizer/static/assets/tv-rsB_oRi5.js → alpha_visualizer-0.8.0/src/alpha_visualizer/static/assets/tv-CrUgTguZ.js +2 -2
- alpha_visualizer-0.8.0/src/alpha_visualizer/static/assets/tv-CrUgTguZ.js.map +1 -0
- alpha_visualizer-0.8.0/src/alpha_visualizer/static/assets/useBacktestData-DljzEegU.js +2 -0
- alpha_visualizer-0.7.3/src/alpha_visualizer/static/assets/useBacktestData-B0uqJGPi.js.map → alpha_visualizer-0.8.0/src/alpha_visualizer/static/assets/useBacktestData-DljzEegU.js.map +1 -1
- alpha_visualizer-0.8.0/src/alpha_visualizer/static/assets/useDocumentTitle-DLuZdAtm.js +2 -0
- alpha_visualizer-0.8.0/src/alpha_visualizer/static/assets/useDocumentTitle-DLuZdAtm.js.map +1 -0
- alpha_visualizer-0.7.3/src/alpha_visualizer/static/assets/visx-D9BH_cru.js → alpha_visualizer-0.8.0/src/alpha_visualizer/static/assets/visx-DQfan3iw.js +2 -2
- alpha_visualizer-0.7.3/src/alpha_visualizer/static/assets/visx-D9BH_cru.js.map → alpha_visualizer-0.8.0/src/alpha_visualizer/static/assets/visx-DQfan3iw.js.map +1 -1
- {alpha_visualizer-0.7.3 → alpha_visualizer-0.8.0}/src/alpha_visualizer/static/index.html +5 -5
- {alpha_visualizer-0.7.3 → alpha_visualizer-0.8.0}/uv.lock +41 -41
- alpha_visualizer-0.7.3/docs/screenshots/en/optimize.png +0 -0
- alpha_visualizer-0.7.3/docs/screenshots/ja/optimize.png +0 -0
- alpha_visualizer-0.7.3/frontend/pnpm-workspace.yaml +0 -5
- alpha_visualizer-0.7.3/frontend/src/components/nav.ts +0 -25
- alpha_visualizer-0.7.3/src/alpha_visualizer/static/assets/BrowsePage-D_oh_f9q.js +0 -2
- alpha_visualizer-0.7.3/src/alpha_visualizer/static/assets/BrowsePage-D_oh_f9q.js.map +0 -1
- alpha_visualizer-0.7.3/src/alpha_visualizer/static/assets/ComparePage-DtDelizG.js +0 -2
- alpha_visualizer-0.7.3/src/alpha_visualizer/static/assets/ComparePage-DtDelizG.js.map +0 -1
- alpha_visualizer-0.7.3/src/alpha_visualizer/static/assets/DetailPage-DelKLR38.js +0 -2
- alpha_visualizer-0.7.3/src/alpha_visualizer/static/assets/DetailPage-DelKLR38.js.map +0 -1
- alpha_visualizer-0.7.3/src/alpha_visualizer/static/assets/IdeasPage-CCohB3id.js +0 -2
- alpha_visualizer-0.7.3/src/alpha_visualizer/static/assets/IdeasPage-CCohB3id.js.map +0 -1
- alpha_visualizer-0.7.3/src/alpha_visualizer/static/assets/LivePage-q72oTm92.js +0 -2
- alpha_visualizer-0.7.3/src/alpha_visualizer/static/assets/LivePage-q72oTm92.js.map +0 -1
- alpha_visualizer-0.7.3/src/alpha_visualizer/static/assets/LiveTab-B3SvCjHQ.js +0 -2
- alpha_visualizer-0.7.3/src/alpha_visualizer/static/assets/SettingsToggles-D_8he1u5.js +0 -2
- alpha_visualizer-0.7.3/src/alpha_visualizer/static/assets/SettingsToggles-D_8he1u5.js.map +0 -1
- alpha_visualizer-0.7.3/src/alpha_visualizer/static/assets/Sparkline-BcO_EWxr.js +0 -2
- alpha_visualizer-0.7.3/src/alpha_visualizer/static/assets/featureFlags-B5arCULb.js +0 -3
- alpha_visualizer-0.7.3/src/alpha_visualizer/static/assets/featureFlags-B5arCULb.js.map +0 -1
- alpha_visualizer-0.7.3/src/alpha_visualizer/static/assets/format-D00KW3px.js +0 -2
- alpha_visualizer-0.7.3/src/alpha_visualizer/static/assets/format-D00KW3px.js.map +0 -1
- alpha_visualizer-0.7.3/src/alpha_visualizer/static/assets/index-BdNp8jFI.js +0 -6
- alpha_visualizer-0.7.3/src/alpha_visualizer/static/assets/index-BdNp8jFI.js.map +0 -1
- alpha_visualizer-0.7.3/src/alpha_visualizer/static/assets/tv-rsB_oRi5.js.map +0 -1
- alpha_visualizer-0.7.3/src/alpha_visualizer/static/assets/useBacktestData-B0uqJGPi.js +0 -2
- {alpha_visualizer-0.7.3 → alpha_visualizer-0.8.0}/.agents/skills/source-command-audit-licenses/SKILL.md +0 -0
- {alpha_visualizer-0.7.3 → alpha_visualizer-0.8.0}/.agents/skills/source-command-pre-release/SKILL.md +0 -0
- {alpha_visualizer-0.7.3 → alpha_visualizer-0.8.0}/.claude/commands/audit-licenses.md +0 -0
- {alpha_visualizer-0.7.3 → alpha_visualizer-0.8.0}/.claude/commands/pre-release.md +0 -0
- {alpha_visualizer-0.7.3 → alpha_visualizer-0.8.0}/.codex/hooks.json +0 -0
- {alpha_visualizer-0.7.3 → alpha_visualizer-0.8.0}/.github/ISSUE_TEMPLATE/bug_report.yml +0 -0
- {alpha_visualizer-0.7.3 → alpha_visualizer-0.8.0}/.github/ISSUE_TEMPLATE/bug_report_ja.yml +0 -0
- {alpha_visualizer-0.7.3 → alpha_visualizer-0.8.0}/.github/ISSUE_TEMPLATE/config.yml +0 -0
- {alpha_visualizer-0.7.3 → alpha_visualizer-0.8.0}/.github/ISSUE_TEMPLATE/feature_request.yml +0 -0
- {alpha_visualizer-0.7.3 → alpha_visualizer-0.8.0}/.github/ISSUE_TEMPLATE/feature_request_ja.yml +0 -0
- {alpha_visualizer-0.7.3 → alpha_visualizer-0.8.0}/.github/PULL_REQUEST_TEMPLATE.md +0 -0
- {alpha_visualizer-0.7.3 → alpha_visualizer-0.8.0}/.github/codeql/README.md +0 -0
- {alpha_visualizer-0.7.3 → alpha_visualizer-0.8.0}/.github/codeql/codeql-config.yml +0 -0
- {alpha_visualizer-0.7.3 → alpha_visualizer-0.8.0}/.github/dependabot.yml +0 -0
- {alpha_visualizer-0.7.3 → alpha_visualizer-0.8.0}/.github/workflows/ci.yml +0 -0
- {alpha_visualizer-0.7.3 → alpha_visualizer-0.8.0}/.github/workflows/codeql.yml +0 -0
- {alpha_visualizer-0.7.3 → alpha_visualizer-0.8.0}/.github/workflows/lighthouse.yml +0 -0
- {alpha_visualizer-0.7.3 → alpha_visualizer-0.8.0}/.github/workflows/release.yml +0 -0
- {alpha_visualizer-0.7.3 → alpha_visualizer-0.8.0}/.gitignore +0 -0
- {alpha_visualizer-0.7.3 → alpha_visualizer-0.8.0}/.hypothesis/.gitignore +0 -0
- {alpha_visualizer-0.7.3 → alpha_visualizer-0.8.0}/AGENTS.md +0 -0
- {alpha_visualizer-0.7.3 → alpha_visualizer-0.8.0}/CHANGELOG.md +0 -0
- {alpha_visualizer-0.7.3 → alpha_visualizer-0.8.0}/CLAUDE.md +0 -0
- {alpha_visualizer-0.7.3 → alpha_visualizer-0.8.0}/CODE_OF_CONDUCT.en.md +0 -0
- {alpha_visualizer-0.7.3 → alpha_visualizer-0.8.0}/CODE_OF_CONDUCT.md +0 -0
- {alpha_visualizer-0.7.3 → alpha_visualizer-0.8.0}/CONTRIBUTING.en.md +0 -0
- {alpha_visualizer-0.7.3 → alpha_visualizer-0.8.0}/CONTRIBUTING.md +0 -0
- {alpha_visualizer-0.7.3 → alpha_visualizer-0.8.0}/LICENSE +0 -0
- {alpha_visualizer-0.7.3 → alpha_visualizer-0.8.0}/NOTICE +0 -0
- {alpha_visualizer-0.7.3 → alpha_visualizer-0.8.0}/SECURITY.en.md +0 -0
- {alpha_visualizer-0.7.3 → alpha_visualizer-0.8.0}/SECURITY.md +0 -0
- {alpha_visualizer-0.7.3 → alpha_visualizer-0.8.0}/THIRDPARTY_LICENSES.txt +0 -0
- {alpha_visualizer-0.7.3 → alpha_visualizer-0.8.0}/cliff.toml +0 -0
- {alpha_visualizer-0.7.3 → alpha_visualizer-0.8.0}/docs/adr/0001-pages-vs-screens.md +0 -0
- {alpha_visualizer-0.7.3 → alpha_visualizer-0.8.0}/docs/adr/0002-charts-visx-vs-components.md +0 -0
- {alpha_visualizer-0.7.3 → alpha_visualizer-0.8.0}/docs/adr/0003-openapi-typescript-codegen.md +0 -0
- {alpha_visualizer-0.7.3 → alpha_visualizer-0.8.0}/docs/adr/0004-condition-node-discriminated-union.md +0 -0
- {alpha_visualizer-0.7.3 → alpha_visualizer-0.8.0}/docs/lighthouse-ci.md +0 -0
- {alpha_visualizer-0.7.3 → alpha_visualizer-0.8.0}/docs/screenshots/en/browse.png +0 -0
- {alpha_visualizer-0.7.3 → alpha_visualizer-0.8.0}/docs/screenshots/en/compare-heatmap.png +0 -0
- {alpha_visualizer-0.7.3 → alpha_visualizer-0.8.0}/docs/screenshots/en/compare.png +0 -0
- {alpha_visualizer-0.7.3 → alpha_visualizer-0.8.0}/docs/screenshots/en/detail.png +0 -0
- {alpha_visualizer-0.7.3 → alpha_visualizer-0.8.0}/docs/screenshots/en/ideas.png +0 -0
- {alpha_visualizer-0.7.3 → alpha_visualizer-0.8.0}/docs/screenshots/en/strategy-signal-tv.png +0 -0
- {alpha_visualizer-0.7.3 → alpha_visualizer-0.8.0}/docs/screenshots/en/strategy.png +0 -0
- {alpha_visualizer-0.7.3 → alpha_visualizer-0.8.0}/docs/screenshots/ja/browse.png +0 -0
- {alpha_visualizer-0.7.3 → alpha_visualizer-0.8.0}/docs/screenshots/ja/compare-heatmap.png +0 -0
- {alpha_visualizer-0.7.3 → alpha_visualizer-0.8.0}/docs/screenshots/ja/compare.png +0 -0
- {alpha_visualizer-0.7.3 → alpha_visualizer-0.8.0}/docs/screenshots/ja/detail.png +0 -0
- {alpha_visualizer-0.7.3 → alpha_visualizer-0.8.0}/docs/screenshots/ja/ideas.png +0 -0
- {alpha_visualizer-0.7.3 → alpha_visualizer-0.8.0}/docs/screenshots/ja/strategy-signal-tv.png +0 -0
- {alpha_visualizer-0.7.3 → alpha_visualizer-0.8.0}/docs/screenshots/ja/strategy.png +0 -0
- {alpha_visualizer-0.7.3 → alpha_visualizer-0.8.0}/frontend/.gitignore +0 -0
- {alpha_visualizer-0.7.3 → alpha_visualizer-0.8.0}/frontend/.npmrc +0 -0
- {alpha_visualizer-0.7.3 → alpha_visualizer-0.8.0}/frontend/.size-limit.json +0 -0
- {alpha_visualizer-0.7.3 → alpha_visualizer-0.8.0}/frontend/.storybook/main.ts +0 -0
- {alpha_visualizer-0.7.3 → alpha_visualizer-0.8.0}/frontend/.storybook/preview.ts +0 -0
- {alpha_visualizer-0.7.3 → alpha_visualizer-0.8.0}/frontend/CLAUDE.md +0 -0
- {alpha_visualizer-0.7.3 → alpha_visualizer-0.8.0}/frontend/README.md +0 -0
- {alpha_visualizer-0.7.3 → alpha_visualizer-0.8.0}/frontend/THIRDPARTY_FONTS.md +0 -0
- {alpha_visualizer-0.7.3 → alpha_visualizer-0.8.0}/frontend/e2e/fixtures/README.md +0 -0
- {alpha_visualizer-0.7.3 → alpha_visualizer-0.8.0}/frontend/e2e/fixtures/forge/data/historical/SPY_1d.parquet +0 -0
- {alpha_visualizer-0.7.3 → alpha_visualizer-0.8.0}/frontend/e2e/fixtures/forge/data/ideas/ideas.json +0 -0
- {alpha_visualizer-0.7.3 → alpha_visualizer-0.8.0}/frontend/e2e/fixtures/forge/data/results/backtest_results.db +0 -0
- {alpha_visualizer-0.7.3 → alpha_visualizer-0.8.0}/frontend/e2e/fixtures/forge/data/strategies/momo_breakout.json +0 -0
- {alpha_visualizer-0.7.3 → alpha_visualizer-0.8.0}/frontend/e2e/fixtures/forge/data/strategies/rsi_reversal.json +0 -0
- {alpha_visualizer-0.7.3 → alpha_visualizer-0.8.0}/frontend/e2e/fixtures/forge/data/strategies/sma_cross.json +0 -0
- {alpha_visualizer-0.7.3 → alpha_visualizer-0.8.0}/frontend/e2e/fixtures/forge/forge.yaml +0 -0
- {alpha_visualizer-0.7.3 → alpha_visualizer-0.8.0}/frontend/e2e/helpers/locators.ts +0 -0
- {alpha_visualizer-0.7.3 → alpha_visualizer-0.8.0}/frontend/e2e/samples/sample-fixture.spec.ts +0 -0
- {alpha_visualizer-0.7.3 → alpha_visualizer-0.8.0}/frontend/e2e/screenshots/capture.spec.ts +0 -0
- {alpha_visualizer-0.7.3 → alpha_visualizer-0.8.0}/frontend/e2e/screenshots/equity-tv.spec.ts +0 -0
- {alpha_visualizer-0.7.3 → alpha_visualizer-0.8.0}/frontend/e2e/screenshots/strategy-signal-tv.spec.ts +0 -0
- {alpha_visualizer-0.7.3 → alpha_visualizer-0.8.0}/frontend/e2e/specs/browse.spec.ts +0 -0
- {alpha_visualizer-0.7.3 → alpha_visualizer-0.8.0}/frontend/e2e/specs/detail.spec.ts +0 -0
- {alpha_visualizer-0.7.3 → alpha_visualizer-0.8.0}/frontend/e2e/specs/i18n.spec.ts +0 -0
- {alpha_visualizer-0.7.3 → alpha_visualizer-0.8.0}/frontend/eslint.config.js +0 -0
- {alpha_visualizer-0.7.3 → alpha_visualizer-0.8.0}/frontend/index.html +0 -0
- {alpha_visualizer-0.7.3 → alpha_visualizer-0.8.0}/frontend/openapi.json +0 -0
- {alpha_visualizer-0.7.3 → alpha_visualizer-0.8.0}/frontend/playwright.config.ts +0 -0
- {alpha_visualizer-0.7.3 → alpha_visualizer-0.8.0}/frontend/playwright.samples.config.ts +0 -0
- {alpha_visualizer-0.7.3 → alpha_visualizer-0.8.0}/frontend/playwright.screenshots.config.ts +0 -0
- {alpha_visualizer-0.7.3 → alpha_visualizer-0.8.0}/frontend/public/favicon.svg +0 -0
- {alpha_visualizer-0.7.3 → alpha_visualizer-0.8.0}/frontend/public/icons.svg +0 -0
- {alpha_visualizer-0.7.3 → alpha_visualizer-0.8.0}/frontend/src/api/__tests__/client.test.ts +0 -0
- {alpha_visualizer-0.7.3 → alpha_visualizer-0.8.0}/frontend/src/api/client.ts +0 -0
- {alpha_visualizer-0.7.3 → alpha_visualizer-0.8.0}/frontend/src/api/types.gen.ts +0 -0
- {alpha_visualizer-0.7.3 → alpha_visualizer-0.8.0}/frontend/src/api/types.ts +0 -0
- {alpha_visualizer-0.7.3 → alpha_visualizer-0.8.0}/frontend/src/charts/tv/CompareEquityTV.stories.tsx +0 -0
- {alpha_visualizer-0.7.3 → alpha_visualizer-0.8.0}/frontend/src/charts/tv/EquityDrawdownPaneTV.stories.tsx +0 -0
- {alpha_visualizer-0.7.3 → alpha_visualizer-0.8.0}/frontend/src/charts/tv/RollingMetricsChartTV.stories.tsx +0 -0
- {alpha_visualizer-0.7.3 → alpha_visualizer-0.8.0}/frontend/src/charts/tv/StrategySignalChartTV.stories.tsx +0 -0
- {alpha_visualizer-0.7.3 → alpha_visualizer-0.8.0}/frontend/src/charts/tv/WFOEquityTV.stories.tsx +0 -0
- {alpha_visualizer-0.7.3 → alpha_visualizer-0.8.0}/frontend/src/charts/tv/__tests__/data.test.ts +0 -0
- {alpha_visualizer-0.7.3 → alpha_visualizer-0.8.0}/frontend/src/charts/tv/__tests__/theme.test.ts +0 -0
- {alpha_visualizer-0.7.3 → alpha_visualizer-0.8.0}/frontend/src/charts/tv/__tests__/trades.test.ts +0 -0
- {alpha_visualizer-0.7.3 → alpha_visualizer-0.8.0}/frontend/src/charts/tv/data.ts +0 -0
- {alpha_visualizer-0.7.3 → alpha_visualizer-0.8.0}/frontend/src/charts/tv/theme.ts +0 -0
- {alpha_visualizer-0.7.3 → alpha_visualizer-0.8.0}/frontend/src/charts/tv/trades.ts +0 -0
- {alpha_visualizer-0.7.3 → alpha_visualizer-0.8.0}/frontend/src/charts/visx/DrawdownChartV.tsx +0 -0
- {alpha_visualizer-0.7.3 → alpha_visualizer-0.8.0}/frontend/src/charts/visx/MonthlyHeatmapV.tsx +0 -0
- {alpha_visualizer-0.7.3 → alpha_visualizer-0.8.0}/frontend/src/charts/visx/Sparkline.stories.tsx +0 -0
- {alpha_visualizer-0.7.3 → alpha_visualizer-0.8.0}/frontend/src/charts/visx/Sparkline.tsx +0 -0
- {alpha_visualizer-0.7.3 → alpha_visualizer-0.8.0}/frontend/src/charts/visx/__tests__/EquityChartV.regime.test.ts +0 -0
- {alpha_visualizer-0.7.3 → alpha_visualizer-0.8.0}/frontend/src/charts/visx/regimeBands.ts +0 -0
- {alpha_visualizer-0.7.3 → alpha_visualizer-0.8.0}/frontend/src/components/CommandPalette.tsx +0 -0
- {alpha_visualizer-0.7.3 → alpha_visualizer-0.8.0}/frontend/src/components/DetailToolbar.tsx +0 -0
- {alpha_visualizer-0.7.3 → alpha_visualizer-0.8.0}/frontend/src/components/MetricsSummaryBarV2.stories.tsx +0 -0
- {alpha_visualizer-0.7.3 → alpha_visualizer-0.8.0}/frontend/src/components/StrategyHero.tsx +0 -0
- {alpha_visualizer-0.7.3 → alpha_visualizer-0.8.0}/frontend/src/components/__tests__/CommandPalette.test.tsx +0 -0
- {alpha_visualizer-0.7.3 → alpha_visualizer-0.8.0}/frontend/src/components/__tests__/CorrelationHeatmap.test.tsx +0 -0
- {alpha_visualizer-0.7.3 → alpha_visualizer-0.8.0}/frontend/src/components/__tests__/responsive-styles.test.tsx +0 -0
- {alpha_visualizer-0.7.3 → alpha_visualizer-0.8.0}/frontend/src/components/browser/CompareFloatingBar.tsx +0 -0
- {alpha_visualizer-0.7.3 → alpha_visualizer-0.8.0}/frontend/src/components/browser/GroupByToggle.tsx +0 -0
- {alpha_visualizer-0.7.3 → alpha_visualizer-0.8.0}/frontend/src/components/browser/Heroline.tsx +0 -0
- {alpha_visualizer-0.7.3 → alpha_visualizer-0.8.0}/frontend/src/components/browser/SavedViews.tsx +0 -0
- {alpha_visualizer-0.7.3 → alpha_visualizer-0.8.0}/frontend/src/components/browser/SymbolAtlas.tsx +0 -0
- {alpha_visualizer-0.7.3 → alpha_visualizer-0.8.0}/frontend/src/components/browser/SymbolCard.tsx +0 -0
- {alpha_visualizer-0.7.3 → alpha_visualizer-0.8.0}/frontend/src/components/charts/AnnualReturnsBar.tsx +0 -0
- {alpha_visualizer-0.7.3 → alpha_visualizer-0.8.0}/frontend/src/components/charts/CorrelationHeatmap.tsx +0 -0
- {alpha_visualizer-0.7.3 → alpha_visualizer-0.8.0}/frontend/src/components/charts/DrawdownDetailChart.tsx +0 -0
- {alpha_visualizer-0.7.3 → alpha_visualizer-0.8.0}/frontend/src/components/charts/OptimizeScatter.tsx +0 -0
- {alpha_visualizer-0.7.3 → alpha_visualizer-0.8.0}/frontend/src/components/charts/ReturnDistributionChart.tsx +0 -0
- {alpha_visualizer-0.7.3 → alpha_visualizer-0.8.0}/frontend/src/components/charts/WFOTimeline.tsx +0 -0
- {alpha_visualizer-0.7.3 → alpha_visualizer-0.8.0}/frontend/src/components/live/LivePositionView.tsx +0 -0
- {alpha_visualizer-0.7.3 → alpha_visualizer-0.8.0}/frontend/src/components/live/SummaryCard.tsx +0 -0
- {alpha_visualizer-0.7.3 → alpha_visualizer-0.8.0}/frontend/src/components/live/__tests__/format.test.ts +0 -0
- {alpha_visualizer-0.7.3 → alpha_visualizer-0.8.0}/frontend/src/components/live/format.ts +0 -0
- {alpha_visualizer-0.7.3 → alpha_visualizer-0.8.0}/frontend/src/components/metrics/CompareTable.tsx +0 -0
- {alpha_visualizer-0.7.3 → alpha_visualizer-0.8.0}/frontend/src/components/metrics/ISOOSMetrics.tsx +0 -0
- {alpha_visualizer-0.7.3 → alpha_visualizer-0.8.0}/frontend/src/components/metrics/MetricsGrid.tsx +0 -0
- {alpha_visualizer-0.7.3 → alpha_visualizer-0.8.0}/frontend/src/components/metrics/RegimeBreakdownCards.tsx +0 -0
- {alpha_visualizer-0.7.3 → alpha_visualizer-0.8.0}/frontend/src/components/metrics/__tests__/evaluateGood.test.ts +0 -0
- {alpha_visualizer-0.7.3 → alpha_visualizer-0.8.0}/frontend/src/components/metrics/evaluate.ts +0 -0
- {alpha_visualizer-0.7.3 → alpha_visualizer-0.8.0}/frontend/src/constants/__tests__/featureFlags.test.ts +0 -0
- {alpha_visualizer-0.7.3 → alpha_visualizer-0.8.0}/frontend/src/constants/featureFlags.ts +0 -0
- {alpha_visualizer-0.7.3 → alpha_visualizer-0.8.0}/frontend/src/constants/metricDefinitions.ts +0 -0
- {alpha_visualizer-0.7.3 → alpha_visualizer-0.8.0}/frontend/src/contexts/DashboardContext.tsx +0 -0
- {alpha_visualizer-0.7.3 → alpha_visualizer-0.8.0}/frontend/src/contexts/dashboardConstants.ts +0 -0
- {alpha_visualizer-0.7.3 → alpha_visualizer-0.8.0}/frontend/src/design/primitives/Button.tsx +0 -0
- {alpha_visualizer-0.7.3 → alpha_visualizer-0.8.0}/frontend/src/design/primitives/Card.tsx +0 -0
- {alpha_visualizer-0.7.3 → alpha_visualizer-0.8.0}/frontend/src/design/primitives/Chip.tsx +0 -0
- {alpha_visualizer-0.7.3 → alpha_visualizer-0.8.0}/frontend/src/design/primitives/Divider.tsx +0 -0
- {alpha_visualizer-0.7.3 → alpha_visualizer-0.8.0}/frontend/src/design/primitives/KeyValue.tsx +0 -0
- {alpha_visualizer-0.7.3 → alpha_visualizer-0.8.0}/frontend/src/design/primitives/OverflowMenu.tsx +0 -0
- {alpha_visualizer-0.7.3 → alpha_visualizer-0.8.0}/frontend/src/design/primitives/Pill.stories.tsx +0 -0
- {alpha_visualizer-0.7.3 → alpha_visualizer-0.8.0}/frontend/src/design/primitives/SectionHeader.tsx +0 -0
- {alpha_visualizer-0.7.3 → alpha_visualizer-0.8.0}/frontend/src/design/primitives/Stat.stories.tsx +0 -0
- {alpha_visualizer-0.7.3 → alpha_visualizer-0.8.0}/frontend/src/design/primitives/Stat.tsx +0 -0
- {alpha_visualizer-0.7.3 → alpha_visualizer-0.8.0}/frontend/src/design/primitives/Toolbar.tsx +0 -0
- {alpha_visualizer-0.7.3 → alpha_visualizer-0.8.0}/frontend/src/design/primitives/__tests__/OverflowMenu.test.tsx +0 -0
- {alpha_visualizer-0.7.3 → alpha_visualizer-0.8.0}/frontend/src/design/useChartTheme.ts +0 -0
- {alpha_visualizer-0.7.3 → alpha_visualizer-0.8.0}/frontend/src/hooks/__tests__/useEquityViewport.test.ts +0 -0
- {alpha_visualizer-0.7.3 → alpha_visualizer-0.8.0}/frontend/src/hooks/__tests__/useScrollRestoration.test.tsx +0 -0
- {alpha_visualizer-0.7.3 → alpha_visualizer-0.8.0}/frontend/src/hooks/__tests__/useStrategyHistorical.test.tsx +0 -0
- {alpha_visualizer-0.7.3 → alpha_visualizer-0.8.0}/frontend/src/hooks/__tests__/useStrategyList.test.tsx +0 -0
- {alpha_visualizer-0.7.3 → alpha_visualizer-0.8.0}/frontend/src/hooks/useDebounce.ts +0 -0
- {alpha_visualizer-0.7.3 → alpha_visualizer-0.8.0}/frontend/src/hooks/useEquityViewport.ts +0 -0
- {alpha_visualizer-0.7.3 → alpha_visualizer-0.8.0}/frontend/src/hooks/useIdeasList.ts +0 -0
- {alpha_visualizer-0.7.3 → alpha_visualizer-0.8.0}/frontend/src/hooks/useLiveList.ts +0 -0
- {alpha_visualizer-0.7.3 → alpha_visualizer-0.8.0}/frontend/src/hooks/useRecentStrategies.ts +0 -0
- {alpha_visualizer-0.7.3 → alpha_visualizer-0.8.0}/frontend/src/hooks/useScrollRestoration.ts +0 -0
- {alpha_visualizer-0.7.3 → alpha_visualizer-0.8.0}/frontend/src/hooks/useSparklineCache.ts +0 -0
- {alpha_visualizer-0.7.3 → alpha_visualizer-0.8.0}/frontend/src/hooks/useStrategyHistorical.ts +0 -0
- {alpha_visualizer-0.7.3 → alpha_visualizer-0.8.0}/frontend/src/hooks/useStrategyList.ts +0 -0
- {alpha_visualizer-0.7.3 → alpha_visualizer-0.8.0}/frontend/src/hooks/useSymbolStats.ts +0 -0
- {alpha_visualizer-0.7.3 → alpha_visualizer-0.8.0}/frontend/src/i18n/__tests__/strings.test.ts +0 -0
- {alpha_visualizer-0.7.3 → alpha_visualizer-0.8.0}/frontend/src/i18n/strings.ts +0 -0
- {alpha_visualizer-0.7.3 → alpha_visualizer-0.8.0}/frontend/src/lib/__tests__/correlation.test.ts +0 -0
- {alpha_visualizer-0.7.3 → alpha_visualizer-0.8.0}/frontend/src/lib/__tests__/distribution.test.ts +0 -0
- {alpha_visualizer-0.7.3 → alpha_visualizer-0.8.0}/frontend/src/lib/__tests__/drawdown.test.ts +0 -0
- {alpha_visualizer-0.7.3 → alpha_visualizer-0.8.0}/frontend/src/lib/__tests__/monteCarlo.properties.test.ts +0 -0
- {alpha_visualizer-0.7.3 → alpha_visualizer-0.8.0}/frontend/src/lib/__tests__/monteCarlo.test.ts +0 -0
- {alpha_visualizer-0.7.3 → alpha_visualizer-0.8.0}/frontend/src/lib/__tests__/rolling.test.ts +0 -0
- {alpha_visualizer-0.7.3 → alpha_visualizer-0.8.0}/frontend/src/lib/__tests__/searchParams.test.ts +0 -0
- {alpha_visualizer-0.7.3 → alpha_visualizer-0.8.0}/frontend/src/lib/__tests__/searchStrategies.test.ts +0 -0
- {alpha_visualizer-0.7.3 → alpha_visualizer-0.8.0}/frontend/src/lib/__tests__/walkForward.test.ts +0 -0
- {alpha_visualizer-0.7.3 → alpha_visualizer-0.8.0}/frontend/src/lib/__tests__/weekday.test.ts +0 -0
- {alpha_visualizer-0.7.3 → alpha_visualizer-0.8.0}/frontend/src/lib/assetClass.ts +0 -0
- {alpha_visualizer-0.7.3 → alpha_visualizer-0.8.0}/frontend/src/lib/correlation.ts +0 -0
- {alpha_visualizer-0.7.3 → alpha_visualizer-0.8.0}/frontend/src/lib/csv.ts +0 -0
- {alpha_visualizer-0.7.3 → alpha_visualizer-0.8.0}/frontend/src/lib/distribution.ts +0 -0
- {alpha_visualizer-0.7.3 → alpha_visualizer-0.8.0}/frontend/src/lib/drawdown.ts +0 -0
- {alpha_visualizer-0.7.3 → alpha_visualizer-0.8.0}/frontend/src/lib/exportPng.ts +0 -0
- {alpha_visualizer-0.7.3 → alpha_visualizer-0.8.0}/frontend/src/lib/monteCarlo.ts +0 -0
- {alpha_visualizer-0.7.3 → alpha_visualizer-0.8.0}/frontend/src/lib/rolling.ts +0 -0
- {alpha_visualizer-0.7.3 → alpha_visualizer-0.8.0}/frontend/src/lib/searchParams.ts +0 -0
- {alpha_visualizer-0.7.3 → alpha_visualizer-0.8.0}/frontend/src/lib/searchStrategies.ts +0 -0
- {alpha_visualizer-0.7.3 → alpha_visualizer-0.8.0}/frontend/src/lib/walkForward.ts +0 -0
- {alpha_visualizer-0.7.3 → alpha_visualizer-0.8.0}/frontend/src/lib/weekday.ts +0 -0
- {alpha_visualizer-0.7.3 → alpha_visualizer-0.8.0}/frontend/src/main.tsx +0 -0
- {alpha_visualizer-0.7.3 → alpha_visualizer-0.8.0}/frontend/src/mock/btData.ts +0 -0
- {alpha_visualizer-0.7.3 → alpha_visualizer-0.8.0}/frontend/src/screens/BacktestScreen.stories.tsx +0 -0
- {alpha_visualizer-0.7.3 → alpha_visualizer-0.8.0}/frontend/src/screens/CompareScreen.stories.tsx +0 -0
- {alpha_visualizer-0.7.3 → alpha_visualizer-0.8.0}/frontend/src/screens/ISOOSScreen.tsx +0 -0
- {alpha_visualizer-0.7.3 → alpha_visualizer-0.8.0}/frontend/src/screens/IdeasScreen.stories.tsx +0 -0
- {alpha_visualizer-0.7.3 → alpha_visualizer-0.8.0}/frontend/src/screens/LiveScreen.stories.tsx +0 -0
- {alpha_visualizer-0.7.3 → alpha_visualizer-0.8.0}/frontend/src/screens/OptimizeScreen.stories.tsx +0 -0
- {alpha_visualizer-0.7.3 → alpha_visualizer-0.8.0}/frontend/src/screens/StrategyScreen.tsx +0 -0
- {alpha_visualizer-0.7.3 → alpha_visualizer-0.8.0}/frontend/src/screens/WFOScreen.stories.tsx +0 -0
- {alpha_visualizer-0.7.3 → alpha_visualizer-0.8.0}/frontend/src/screens/WFOScreen.tsx +0 -0
- {alpha_visualizer-0.7.3 → alpha_visualizer-0.8.0}/frontend/src/screens/__tests__/LiveScreen.test.tsx +0 -0
- {alpha_visualizer-0.7.3 → alpha_visualizer-0.8.0}/frontend/src/screens/strategy/SignalChartCard.tsx +0 -0
- {alpha_visualizer-0.7.3 → alpha_visualizer-0.8.0}/frontend/src/test-setup.ts +0 -0
- {alpha_visualizer-0.7.3 → alpha_visualizer-0.8.0}/frontend/tsconfig.app.json +0 -0
- {alpha_visualizer-0.7.3 → alpha_visualizer-0.8.0}/frontend/tsconfig.e2e.json +0 -0
- {alpha_visualizer-0.7.3 → alpha_visualizer-0.8.0}/frontend/tsconfig.json +0 -0
- {alpha_visualizer-0.7.3 → alpha_visualizer-0.8.0}/frontend/tsconfig.node.json +0 -0
- {alpha_visualizer-0.7.3 → alpha_visualizer-0.8.0}/frontend/vite.config.ts +0 -0
- {alpha_visualizer-0.7.3 → alpha_visualizer-0.8.0}/lighthouserc.json +0 -0
- {alpha_visualizer-0.7.3 → alpha_visualizer-0.8.0}/release.sh +0 -0
- {alpha_visualizer-0.7.3 → alpha_visualizer-0.8.0}/samples/README.en.md +0 -0
- {alpha_visualizer-0.7.3 → alpha_visualizer-0.8.0}/samples/README.md +0 -0
- {alpha_visualizer-0.7.3 → alpha_visualizer-0.8.0}/samples/__init__.py +0 -0
- {alpha_visualizer-0.7.3 → alpha_visualizer-0.8.0}/samples/_generators/__init__.py +0 -0
- {alpha_visualizer-0.7.3 → alpha_visualizer-0.8.0}/samples/_generators/compatibility_matrix.py +0 -0
- {alpha_visualizer-0.7.3 → alpha_visualizer-0.8.0}/samples/_generators/ideas_defs.py +0 -0
- {alpha_visualizer-0.7.3 → alpha_visualizer-0.8.0}/samples/_generators/pseudo_backtest.py +0 -0
- {alpha_visualizer-0.7.3 → alpha_visualizer-0.8.0}/samples/_generators/pseudo_grid.py +0 -0
- {alpha_visualizer-0.7.3 → alpha_visualizer-0.8.0}/samples/_generators/pseudo_wfo.py +0 -0
- {alpha_visualizer-0.7.3 → alpha_visualizer-0.8.0}/samples/_generators/strategy_defs.py +0 -0
- {alpha_visualizer-0.7.3 → alpha_visualizer-0.8.0}/samples/_generators/synthetic_ohlcv.py +0 -0
- {alpha_visualizer-0.7.3 → alpha_visualizer-0.8.0}/samples/_generators/writers.py +0 -0
- {alpha_visualizer-0.7.3 → alpha_visualizer-0.8.0}/samples/build_samples.py +0 -0
- {alpha_visualizer-0.7.3 → alpha_visualizer-0.8.0}/samples/sample-forge/data/ideas/ideas.json +0 -0
- {alpha_visualizer-0.7.3 → alpha_visualizer-0.8.0}/samples/sample-forge/data/results/backtest_results.db +0 -0
- {alpha_visualizer-0.7.3 → alpha_visualizer-0.8.0}/samples/sample-forge/data/strategies/bbands_breakout_v1.json +0 -0
- {alpha_visualizer-0.7.3 → alpha_visualizer-0.8.0}/samples/sample-forge/data/strategies/donchian_turtle_v1.json +0 -0
- {alpha_visualizer-0.7.3 → alpha_visualizer-0.8.0}/samples/sample-forge/data/strategies/ema_adx_macd_v1.json +0 -0
- {alpha_visualizer-0.7.3 → alpha_visualizer-0.8.0}/samples/sample-forge/data/strategies/macd_crossover_v1.json +0 -0
- {alpha_visualizer-0.7.3 → alpha_visualizer-0.8.0}/samples/sample-forge/data/strategies/range_reversion_v1.json +0 -0
- {alpha_visualizer-0.7.3 → alpha_visualizer-0.8.0}/samples/sample-forge/data/strategies/rsi_reversion_v1.json +0 -0
- {alpha_visualizer-0.7.3 → alpha_visualizer-0.8.0}/samples/sample-forge/data/strategies/sma_crossover_v1.json +0 -0
- {alpha_visualizer-0.7.3 → alpha_visualizer-0.8.0}/samples/sample-forge/data/strategies/supertrend_adx_v1.json +0 -0
- {alpha_visualizer-0.7.3 → alpha_visualizer-0.8.0}/samples/sample-forge/forge.yaml +0 -0
- {alpha_visualizer-0.7.3 → alpha_visualizer-0.8.0}/scripts/compare_sqlite_dump.py +0 -0
- {alpha_visualizer-0.7.3 → alpha_visualizer-0.8.0}/scripts/generate_openapi.py +0 -0
- {alpha_visualizer-0.7.3 → alpha_visualizer-0.8.0}/scripts/verify_build_artifacts.py +0 -0
- {alpha_visualizer-0.7.3 → alpha_visualizer-0.8.0}/src/alpha_visualizer/app.py +0 -0
- {alpha_visualizer-0.7.3 → alpha_visualizer-0.8.0}/src/alpha_visualizer/cli.py +0 -0
- {alpha_visualizer-0.7.3 → alpha_visualizer-0.8.0}/src/alpha_visualizer/db.py +0 -0
- {alpha_visualizer-0.7.3 → alpha_visualizer-0.8.0}/src/alpha_visualizer/dependencies.py +0 -0
- {alpha_visualizer-0.7.3 → alpha_visualizer-0.8.0}/src/alpha_visualizer/errors.py +0 -0
- {alpha_visualizer-0.7.3 → alpha_visualizer-0.8.0}/src/alpha_visualizer/forge_config.py +0 -0
- {alpha_visualizer-0.7.3 → alpha_visualizer-0.8.0}/src/alpha_visualizer/log_sanitize.py +0 -0
- {alpha_visualizer-0.7.3 → alpha_visualizer-0.8.0}/src/alpha_visualizer/repositories/__init__.py +0 -0
- {alpha_visualizer-0.7.3 → alpha_visualizer-0.8.0}/src/alpha_visualizer/repositories/backtest_results.py +0 -0
- {alpha_visualizer-0.7.3 → alpha_visualizer-0.8.0}/src/alpha_visualizer/repositories/ideas.py +0 -0
- {alpha_visualizer-0.7.3 → alpha_visualizer-0.8.0}/src/alpha_visualizer/repositories/live.py +0 -0
- {alpha_visualizer-0.7.3 → alpha_visualizer-0.8.0}/src/alpha_visualizer/repositories/optimization.py +0 -0
- {alpha_visualizer-0.7.3 → alpha_visualizer-0.8.0}/src/alpha_visualizer/repositories/strategies.py +0 -0
- {alpha_visualizer-0.7.3 → alpha_visualizer-0.8.0}/src/alpha_visualizer/routers/__init__.py +0 -0
- {alpha_visualizer-0.7.3 → alpha_visualizer-0.8.0}/src/alpha_visualizer/routers/historical.py +0 -0
- {alpha_visualizer-0.7.3 → alpha_visualizer-0.8.0}/src/alpha_visualizer/routers/ideas.py +0 -0
- {alpha_visualizer-0.7.3 → alpha_visualizer-0.8.0}/src/alpha_visualizer/routers/live.py +0 -0
- {alpha_visualizer-0.7.3 → alpha_visualizer-0.8.0}/src/alpha_visualizer/routers/optimize.py +0 -0
- {alpha_visualizer-0.7.3 → alpha_visualizer-0.8.0}/src/alpha_visualizer/routers/results.py +0 -0
- {alpha_visualizer-0.7.3 → alpha_visualizer-0.8.0}/src/alpha_visualizer/routers/run.py +0 -0
- {alpha_visualizer-0.7.3 → alpha_visualizer-0.8.0}/src/alpha_visualizer/routers/strategies.py +0 -0
- {alpha_visualizer-0.7.3 → alpha_visualizer-0.8.0}/src/alpha_visualizer/routers/wfo.py +0 -0
- {alpha_visualizer-0.7.3 → alpha_visualizer-0.8.0}/src/alpha_visualizer/schemas/__init__.py +0 -0
- {alpha_visualizer-0.7.3 → alpha_visualizer-0.8.0}/src/alpha_visualizer/schemas/historical.py +0 -0
- {alpha_visualizer-0.7.3 → alpha_visualizer-0.8.0}/src/alpha_visualizer/schemas/ideas.py +0 -0
- {alpha_visualizer-0.7.3 → alpha_visualizer-0.8.0}/src/alpha_visualizer/schemas/live.py +0 -0
- {alpha_visualizer-0.7.3 → alpha_visualizer-0.8.0}/src/alpha_visualizer/schemas/optimize.py +0 -0
- {alpha_visualizer-0.7.3 → alpha_visualizer-0.8.0}/src/alpha_visualizer/schemas/results.py +0 -0
- {alpha_visualizer-0.7.3 → alpha_visualizer-0.8.0}/src/alpha_visualizer/schemas/strategies.py +0 -0
- {alpha_visualizer-0.7.3 → alpha_visualizer-0.8.0}/src/alpha_visualizer/schemas/wfo.py +0 -0
- {alpha_visualizer-0.7.3 → alpha_visualizer-0.8.0}/src/alpha_visualizer/services/__init__.py +0 -0
- {alpha_visualizer-0.7.3 → alpha_visualizer-0.8.0}/src/alpha_visualizer/services/backtest.py +0 -0
- {alpha_visualizer-0.7.3 → alpha_visualizer-0.8.0}/src/alpha_visualizer/services/historical.py +0 -0
- {alpha_visualizer-0.7.3 → alpha_visualizer-0.8.0}/src/alpha_visualizer/services/live.py +0 -0
- {alpha_visualizer-0.7.3 → alpha_visualizer-0.8.0}/src/alpha_visualizer/services/walk_forward.py +0 -0
- {alpha_visualizer-0.7.3 → alpha_visualizer-0.8.0}/src/alpha_visualizer/static/assets/fonts-DJsrEZjK.css +0 -0
- {alpha_visualizer-0.7.3 → alpha_visualizer-0.8.0}/src/alpha_visualizer/static/assets/inter-tight-latin-400-normal-BLrFJfvD.woff +0 -0
- {alpha_visualizer-0.7.3 → alpha_visualizer-0.8.0}/src/alpha_visualizer/static/assets/inter-tight-latin-400-normal-iW8qmuJY.woff2 +0 -0
- {alpha_visualizer-0.7.3 → alpha_visualizer-0.8.0}/src/alpha_visualizer/static/assets/inter-tight-latin-500-normal-BFXNXuvF.woff2 +0 -0
- {alpha_visualizer-0.7.3 → alpha_visualizer-0.8.0}/src/alpha_visualizer/static/assets/inter-tight-latin-500-normal-pobXraBK.woff +0 -0
- {alpha_visualizer-0.7.3 → alpha_visualizer-0.8.0}/src/alpha_visualizer/static/assets/inter-tight-latin-600-normal-BgSTtRxb.woff2 +0 -0
- {alpha_visualizer-0.7.3 → alpha_visualizer-0.8.0}/src/alpha_visualizer/static/assets/inter-tight-latin-600-normal-D7bG6gX1.woff +0 -0
- {alpha_visualizer-0.7.3 → alpha_visualizer-0.8.0}/src/alpha_visualizer/static/assets/jetbrains-mono-latin-500-normal-BWZEU5yA.woff2 +0 -0
- {alpha_visualizer-0.7.3 → alpha_visualizer-0.8.0}/src/alpha_visualizer/static/assets/jetbrains-mono-latin-500-normal-CJOVTJB7.woff +0 -0
- /alpha_visualizer-0.7.3/src/alpha_visualizer/static/assets/rolldown-runtime-DDdRRPPX.js → /alpha_visualizer-0.8.0/src/alpha_visualizer/static/assets/rolldown-runtime-C0phanGV.js +0 -0
- {alpha_visualizer-0.7.3 → alpha_visualizer-0.8.0}/src/alpha_visualizer/static/assets/source-serif-4-latin-600-normal-DMD1h6_f.woff +0 -0
- {alpha_visualizer-0.7.3 → alpha_visualizer-0.8.0}/src/alpha_visualizer/static/assets/source-serif-4-latin-600-normal-DouSKlru.woff2 +0 -0
- {alpha_visualizer-0.7.3 → alpha_visualizer-0.8.0}/src/alpha_visualizer/static/favicon.svg +0 -0
- {alpha_visualizer-0.7.3 → alpha_visualizer-0.8.0}/src/alpha_visualizer/static/icons.svg +0 -0
- {alpha_visualizer-0.7.3 → alpha_visualizer-0.8.0}/tests/__init__.py +0 -0
- {alpha_visualizer-0.7.3 → alpha_visualizer-0.8.0}/tests/conftest.py +0 -0
- {alpha_visualizer-0.7.3 → alpha_visualizer-0.8.0}/tests/factories.py +0 -0
- {alpha_visualizer-0.7.3 → alpha_visualizer-0.8.0}/tests/fixtures/build_e2e_fixture.py +0 -0
- {alpha_visualizer-0.7.3 → alpha_visualizer-0.8.0}/tests/repositories/__init__.py +0 -0
- {alpha_visualizer-0.7.3 → alpha_visualizer-0.8.0}/tests/repositories/test_backtest_results_repo.py +0 -0
- {alpha_visualizer-0.7.3 → alpha_visualizer-0.8.0}/tests/repositories/test_ideas_reader.py +0 -0
- {alpha_visualizer-0.7.3 → alpha_visualizer-0.8.0}/tests/repositories/test_live_repo.py +0 -0
- {alpha_visualizer-0.7.3 → alpha_visualizer-0.8.0}/tests/repositories/test_optimization_repo.py +0 -0
- {alpha_visualizer-0.7.3 → alpha_visualizer-0.8.0}/tests/repositories/test_strategies_repo.py +0 -0
- {alpha_visualizer-0.7.3 → alpha_visualizer-0.8.0}/tests/routers/__init__.py +0 -0
- {alpha_visualizer-0.7.3 → alpha_visualizer-0.8.0}/tests/routers/test_forge_yaml_integration.py +0 -0
- {alpha_visualizer-0.7.3 → alpha_visualizer-0.8.0}/tests/routers/test_historical.py +0 -0
- {alpha_visualizer-0.7.3 → alpha_visualizer-0.8.0}/tests/routers/test_ideas.py +0 -0
- {alpha_visualizer-0.7.3 → alpha_visualizer-0.8.0}/tests/routers/test_live.py +0 -0
- {alpha_visualizer-0.7.3 → alpha_visualizer-0.8.0}/tests/routers/test_optimize.py +0 -0
- {alpha_visualizer-0.7.3 → alpha_visualizer-0.8.0}/tests/routers/test_results.py +0 -0
- {alpha_visualizer-0.7.3 → alpha_visualizer-0.8.0}/tests/routers/test_run.py +0 -0
- {alpha_visualizer-0.7.3 → alpha_visualizer-0.8.0}/tests/routers/test_strategies.py +0 -0
- {alpha_visualizer-0.7.3 → alpha_visualizer-0.8.0}/tests/routers/test_wfo.py +0 -0
- {alpha_visualizer-0.7.3 → alpha_visualizer-0.8.0}/tests/samples/__init__.py +0 -0
- {alpha_visualizer-0.7.3 → alpha_visualizer-0.8.0}/tests/samples/test_pseudo_backtest.py +0 -0
- {alpha_visualizer-0.7.3 → alpha_visualizer-0.8.0}/tests/samples/test_pseudo_grid.py +0 -0
- {alpha_visualizer-0.7.3 → alpha_visualizer-0.8.0}/tests/samples/test_pseudo_wfo.py +0 -0
- {alpha_visualizer-0.7.3 → alpha_visualizer-0.8.0}/tests/samples/test_sample_forge.py +0 -0
- {alpha_visualizer-0.7.3 → alpha_visualizer-0.8.0}/tests/samples/test_strategy_defs.py +0 -0
- {alpha_visualizer-0.7.3 → alpha_visualizer-0.8.0}/tests/samples/test_synthetic_ohlcv.py +0 -0
- {alpha_visualizer-0.7.3 → alpha_visualizer-0.8.0}/tests/samples/test_writers.py +0 -0
- {alpha_visualizer-0.7.3 → alpha_visualizer-0.8.0}/tests/schemas/__init__.py +0 -0
- {alpha_visualizer-0.7.3 → alpha_visualizer-0.8.0}/tests/schemas/test_schemas.py +0 -0
- {alpha_visualizer-0.7.3 → alpha_visualizer-0.8.0}/tests/services/__init__.py +0 -0
- {alpha_visualizer-0.7.3 → alpha_visualizer-0.8.0}/tests/services/test_backtest.py +0 -0
- {alpha_visualizer-0.7.3 → alpha_visualizer-0.8.0}/tests/services/test_backtest_properties.py +0 -0
- {alpha_visualizer-0.7.3 → alpha_visualizer-0.8.0}/tests/services/test_historical.py +0 -0
- {alpha_visualizer-0.7.3 → alpha_visualizer-0.8.0}/tests/services/test_live.py +0 -0
- {alpha_visualizer-0.7.3 → alpha_visualizer-0.8.0}/tests/services/test_wfo.py +0 -0
- {alpha_visualizer-0.7.3 → alpha_visualizer-0.8.0}/tests/test_app.py +0 -0
- {alpha_visualizer-0.7.3 → alpha_visualizer-0.8.0}/tests/test_cli.py +0 -0
- {alpha_visualizer-0.7.3 → alpha_visualizer-0.8.0}/tests/test_compare_sqlite_dump.py +0 -0
- {alpha_visualizer-0.7.3 → alpha_visualizer-0.8.0}/tests/test_db.py +0 -0
- {alpha_visualizer-0.7.3 → alpha_visualizer-0.8.0}/tests/test_dependencies.py +0 -0
- {alpha_visualizer-0.7.3 → alpha_visualizer-0.8.0}/tests/test_errors.py +0 -0
- {alpha_visualizer-0.7.3 → alpha_visualizer-0.8.0}/tests/test_forge_config.py +0 -0
- {alpha_visualizer-0.7.3 → alpha_visualizer-0.8.0}/tests/test_log_sanitize.py +0 -0
|
@@ -1,4 +1,4 @@
|
|
|
1
1
|
# file: /home/runner/work/alpha-visualizer/alpha-visualizer/samples/_generators/strategy_defs.py
|
|
2
|
-
# hypothesis_version: 6.155.
|
|
2
|
+
# hypothesis_version: 6.155.2
|
|
3
3
|
|
|
4
4
|
[2.0, 3.0, 4.0, 5.0, 6.0, 7.0, 8.0, 15.0, 18.0, 20.0, 22.0, 25.0, '1.0.0', '1d', 'ADX', 'BBANDS', 'COMMODITY_SYNTH', 'CRYPTO_SYNTH', 'DONCHIAN', 'EMA', 'EQUITY_SYNTH', 'FX_SYNTH', 'INDEX_SYNTH', 'MACD', 'MACD Signal Cross', 'RSI', 'RSI Mean Reversion', 'SMA', 'SMA Crossover', 'SUPERTREND', 'adx', 'adx_length', 'adx_threshold', 'asset_type', 'bb_length', 'bb_std', 'bbands', 'bbands_breakout_v1', 'breakout', 'close > bbands.upper', 'commodity', 'composite', 'crossover', 'description', 'donchian_entry', 'donchian_exit', 'donchian_turtle_v1', 'ema', 'ema_adx_macd_v1', 'ema_period', 'entry_conditions', 'entry_length', 'equity', 'exit_conditions', 'exit_length', 'fast', 'fast_period', 'filter', 'fx', 'indicators', 'length', 'long', 'macd', 'macd_crossover_v1', 'macd_fast', 'macd_signal', 'macd_slow', 'mean-reversion', 'momentum', 'multiplier', 'name', 'oscillator', 'overbought', 'oversold', 'parameters', 'params', 'period', 'range', 'range_reversion_v1', 'risk_management', 'rsi', 'rsi < oversold', 'rsi > overbought', 'rsi_length', 'rsi_reversion_v1', 'signal', 'slow', 'slow_period', 'sma_crossover_v1', 'sma_fast', 'sma_fast < sma_slow', 'sma_fast > sma_slow', 'sma_slow', 'st_length', 'st_multiplier', 'std', 'stop_loss_pct', 'strategy_id', 'supertrend', 'supertrend_adx_v1', 'tags', 'take_profit_pct', 'target_symbols', 'textbook', 'timeframe', 'trend', 'type', 'variables', 'version', 'volatility']
|
|
@@ -1,4 +1,4 @@
|
|
|
1
1
|
# file: /home/runner/work/alpha-visualizer/alpha-visualizer/src/alpha_visualizer/cli.py
|
|
2
|
-
# hypothesis_version: 6.155.
|
|
2
|
+
# hypothesis_version: 6.155.2
|
|
3
3
|
|
|
4
4
|
[8000, '--forge-config', '--forge-dir', '--host', '--no-open', '--port', '.', '127.0.0.1', 'alpha-visualizer', 'forge_config', 'no_open', 'sample-forge', 'samples', 'serve', 'use_bundled_samples', 'バインドするホスト名', 'ブラウザを自動で開かない', 'ポート番号']
|
|
@@ -1,4 +1,4 @@
|
|
|
1
1
|
# file: /home/runner/work/alpha-visualizer/alpha-visualizer/src/alpha_visualizer/repositories/strategies.py
|
|
2
|
-
# hypothesis_version: 6.155.
|
|
2
|
+
# hypothesis_version: 6.155.2
|
|
3
3
|
|
|
4
4
|
['*.json', 'asset_type', 'name', 'strategy_id', 'tags', 'target_symbols', 'timeframe', 'utf-8', 'version']
|
|
@@ -1,4 +1,4 @@
|
|
|
1
1
|
# file: /home/runner/work/alpha-visualizer/alpha-visualizer/src/alpha_visualizer/routers/wfo.py
|
|
2
|
-
# hypothesis_version: 6.155.
|
|
2
|
+
# hypothesis_version: 6.155.2
|
|
3
3
|
|
|
4
4
|
['/wfo/{strategy_id}', 'WFO 取得に失敗: %s (%s)', 'composite_dates', 'composite_equity', 'strategy_id', 'strategy_name', 'symbol', 'windows', 'バックテスト DB が見つかりません']
|
|
@@ -1,4 +1,4 @@
|
|
|
1
1
|
# file: /home/runner/work/alpha-visualizer/alpha-visualizer/src/alpha_visualizer/routers/optimize.py
|
|
2
|
-
# hypothesis_version: 6.155.
|
|
2
|
+
# hypothesis_version: 6.155.2
|
|
3
3
|
|
|
4
4
|
[0.0, 'avg_holding_days', 'best_metric', 'cagr_pct', 'calmar_ratio', 'cvar_95_pct', 'is_sharpe', 'is_start', 'max_drawdown_pct', 'metric', 'metric_name', 'metrics', 'omega_ratio', 'oos_sharpe', 'oos_start', 'params', 'pass', 'profit_factor', 'run_at', 'sharpe_ratio', 'sortino_ratio', 'strategy_id', 'total_return_pct', 'total_trades', 'trials', 'var_95_pct', 'win_rate_pct', 'window_id', 'バックテスト DB が見つかりません', '最適化結果の取得に失敗: %s (%s)']
|
|
@@ -1,4 +1,4 @@
|
|
|
1
1
|
# file: /home/runner/work/alpha-visualizer/alpha-visualizer/src/alpha_visualizer/forge_config.py
|
|
2
|
-
# hypothesis_version: 6.155.
|
|
2
|
+
# hypothesis_version: 6.155.2
|
|
3
3
|
|
|
4
4
|
['FORGE_CONFIG', 'backtest_results.db', 'data', 'db_filename', 'forge.yaml', 'historical', 'ideas', 'ideas.json', 'ideas_path', 'live', 'output_path', 'path', 'report', 'results', 'storage_path', 'strategies', 'strategies.db', 'use_db', 'utf-8']
|
|
@@ -1,4 +1,4 @@
|
|
|
1
1
|
# file: /home/runner/work/alpha-visualizer/alpha-visualizer/samples/_generators/pseudo_wfo.py
|
|
2
|
-
# hypothesis_version: 6.155.
|
|
2
|
+
# hypothesis_version: 6.155.2
|
|
3
3
|
|
|
4
4
|
[-8.0, -0.4, 0.0, 0.05, 0.1, 0.3, 0.35, 0.45, 0.5, 0.6, 0.85, 1.0, 1.2, 1.5, 2.0, 3.0, 4.5, 5.0, 8.0, 10.0, 15.0, 20.0, 30.0, 200, 500, 600, '2025-01-08 14:00:00', 'CRYPTO_SYNTH', 'EQUITY_SYNTH', 'adx_threshold', 'fast_period', 'is_end', 'is_return_pct', 'is_sharpe', 'is_start', 'label', 'oos_end', 'oos_return_pct', 'oos_sharpe', 'oos_start', 'params', 'pass', 'ranges', 'slow_period', 'sma_crossover_v1', 'st_length', 'st_multiplier', 'supertrend_adx_v1', 'true_optimum', 'window_id']
|
|
@@ -1,4 +1,4 @@
|
|
|
1
1
|
# file: /home/runner/work/alpha-visualizer/alpha-visualizer/src/alpha_visualizer/db.py
|
|
2
|
-
# hypothesis_version: 6.155.
|
|
2
|
+
# hypothesis_version: 6.155.2
|
|
3
3
|
|
|
4
4
|
['[]', 'all_trials_json', 'asset_class', 'asset_type', 'avg_holding_days', 'avg_loss', 'avg_slippage_bps', 'avg_win', 'backtest_results', 'best_metric_name', 'best_metric_value', 'best_params_json', 'broker', 'buy_hold_curve_json', 'cagr_pct', 'calmar_ratio', 'commission', 'created_at', 'definition_json', 'duration_seconds', 'entry_at', 'entry_price', 'equity_curve_json', 'equity_json', 'exit_at', 'exit_price', 'exit_reason', 'gross_pnl', 'holding_seconds', 'id', 'live_summaries', 'live_trades', 'max_drawdown_pct', 'metrics_json', 'n_trials', 'name', 'net_pnl', 'notes', 'oos_start', 'optimization_runs', 'portfolio_id', 'profit_factor', 'qty', 'receipts_count', 'return_pct', 'run_at', 'run_id', 'sharpe_ratio', 'side', 'slippage_bps', 'snapshot_id', 'sortino_ratio', 'source_file', 'strategies', 'strategy_id', 'strategy_version', 'sub_strategies_json', 'symbol', 'symbols', 'tags', 'timeframe', 'total_commission', 'total_return_pct', 'total_trades', 'trade_id', 'trades_json', 'updated_at', 'version', 'win_rate_pct']
|
|
@@ -1,4 +1,4 @@
|
|
|
1
1
|
# file: /home/runner/work/alpha-visualizer/alpha-visualizer/src/alpha_visualizer/repositories/live.py
|
|
2
|
-
# hypothesis_version: 6.155.
|
|
2
|
+
# hypothesis_version: 6.155.2
|
|
3
3
|
|
|
4
4
|
['backtest_metrics', 'equity', 'equity_json', 'metrics', 'metrics_json', 'no such table', 'portfolio_id', 'receipts_count', 'sub_strategies', 'sub_strategies_json', 'symbols', 'tags', 'updated_at']
|
|
@@ -1,4 +1,4 @@
|
|
|
1
1
|
# file: /home/runner/work/alpha-visualizer/alpha-visualizer/src/alpha_visualizer/services/walk_forward.py
|
|
2
|
-
# hypothesis_version: 6.155.
|
|
2
|
+
# hypothesis_version: 6.155.2
|
|
3
3
|
|
|
4
4
|
[0.0, 1.0, 100.0, 'best_params', 'date', 'extract_windows', 'id', 'is_end', 'is_return', 'is_return_pct', 'is_sharpe', 'is_start', 'label', 'normalize_to_anchor', 'oos_end', 'oos_is_ratio', 'oos_return', 'oos_return_pct', 'oos_sharpe', 'oos_start', 'params', 'parse_equity_curve', 'pass', 'slice_oos_segment', 'value', 'window_id']
|
|
@@ -1,4 +1,4 @@
|
|
|
1
1
|
# file: /home/runner/work/alpha-visualizer/alpha-visualizer/samples/_generators/writers.py
|
|
2
|
-
# hypothesis_version: 6.155.
|
|
2
|
+
# hypothesis_version: 6.155.2
|
|
3
3
|
|
|
4
4
|
[8000000, '*.json', 'all_trials_json', 'avg_holding_days', 'backtest_results.db', 'backtest_runs', 'best_metric_name', 'best_metric_value', 'best_params_json', 'buy_hold_curve_json', 'cagr_pct', 'calmar_ratio', 'data', 'db_size_bytes', 'duration_seconds', 'equity_curve_json', 'ideas', 'ideas.json', 'max_drawdown_pct', 'metrics_json', 'n_trials', 'oos_start', 'optimization_runs', 'profit_factor', 'results', 'run_at', 'run_id', 'sample-forge', 'sharpe_ratio', 'sortino_ratio', 'strategies', 'strategy_id', 'symbol', 'total_return_pct', 'total_trades', 'trades_json', 'utf-8', 'win_rate_pct']
|
|
@@ -1,4 +1,4 @@
|
|
|
1
1
|
# file: /home/runner/work/alpha-visualizer/alpha-visualizer/samples/_generators/pseudo_grid.py
|
|
2
|
-
# hypothesis_version: 6.155.
|
|
2
|
+
# hypothesis_version: 6.155.2
|
|
3
3
|
|
|
4
4
|
[0.0, 0.0015, 0.0035, 0.008, 0.15, 0.55, 1.35, 1.4, 1.5, 1.8, 2.0, 2.2, 2.5, 3.0, 20.0, 90.0, 800, '2025-01-09 11:30:00', 'COMMODITY_SYNTH', 'INDEX_SYNTH', 'bb_length', 'bb_std', 'bbands_breakout_v1', 'metric_value', 'oversold', 'params', 'rsi_length', 'rsi_reversion_v1', 'sharpe_ratio', 'trial']
|
|
@@ -1,4 +1,4 @@
|
|
|
1
1
|
# file: /home/runner/work/alpha-visualizer/alpha-visualizer/src/alpha_visualizer/routers/strategies.py
|
|
2
|
-
# hypothesis_version: 6.155.
|
|
2
|
+
# hypothesis_version: 6.155.2
|
|
3
3
|
|
|
4
4
|
[0.0, 100.0, ',', '/strategies', '/strategies/compare', 'best_sharpe', 'cagr_pct', 'daily_returns', 'date', 'dates', 'entry_conditions', 'equity', 'exit_conditions', 'id', 'ids が空です', 'indicators', 'is_baseline', 'last_run_at', 'latest_profit_factor', 'latest_return_pct', 'latest_sharpe', 'latest_total_trades', 'latest_win_rate_pct', 'max_drawdown_pct', 'n_trials', 'name', 'optimization_history', 'parameters', 'profit_factor', 'regime_config', 'results', 'return_pct', 'risk_management', 'run_at', 'run_id', 'sharpe', 'sharpe_ratio', 'sortino_ratio', 'strategy_id', 'symbol', 'tags', 'target_symbols', 'timeframe', 'total_return_pct', 'total_trades', 'trial', 'value', 'values', 'variables', 'win_rate_pct', 'カンマ区切りの strategy_id']
|
|
@@ -1,4 +1,4 @@
|
|
|
1
1
|
# file: /home/runner/work/alpha-visualizer/alpha-visualizer/src/alpha_visualizer/app.py
|
|
2
|
-
# hypothesis_version: 6.155.
|
|
2
|
+
# hypothesis_version: 6.155.2
|
|
3
3
|
|
|
4
4
|
[500, '*', '/api', '/health', '/{full_path:path}', '0.1.0', 'alpha-visualizer', 'detail', 'forge_dir', 'index.html', 'ok', 'static', 'status']
|
|
@@ -1,4 +1,4 @@
|
|
|
1
1
|
# file: /home/runner/work/alpha-visualizer/alpha-visualizer/src/alpha_visualizer/services/backtest.py
|
|
2
|
-
# hypothesis_version: 6.155.
|
|
2
|
+
# hypothesis_version: 6.155.2
|
|
3
3
|
|
|
4
4
|
[0.0, 1.0, 100.0, '+00:00', '-', '1d', 'Z', 'aggregates', 'annual_returns', 'avg_holding_days', 'build_detail', 'buy_hold_curve', 'buy_hold_equity', 'cagr_pct', 'calmar_ratio', 'compute_drawdown', 'daily_returns', 'date', 'dates', 'direction', 'drawdown', 'end', 'entry_date', 'entry_price', 'equity', 'equity_curve', 'exit_date', 'exit_price', 'filter_by_since', 'holding_days', 'id', 'index', 'is_cutoff', 'is_metrics', 'label_names', 'long', 'mae_pct', 'max_drawdown_pct', 'metrics', 'mfe_pct', 'monthly_returns', 'n_states', 'oos_metrics', 'oos_start', 'parse_dt', 'per_trade_mae_pct', 'per_trade_mfe_pct', 'period', 'periods', 'pnl', 'profit_factor', 'regime_breakdown', 'regime_series', 'return_pct', 'row_to_dict', 'run_at', 'run_id', 'shape_annual_returns', 'shape_equity', 'shape_regime_series', 'shape_trades', 'sharpe_ratio', 'short', 'signal', 'sl_price', 'sortino_ratio', 'split_metrics', 'start', 'states', 'strategy_id', 'strategy_name', 'summarize_row', 'symbol', 'timeframe', 'total_return_pct', 'total_trades', 'tp_price', 'trade_analysis', 'trades', 'value', 'values', 'win_rate_pct']
|
|
@@ -1,4 +1,4 @@
|
|
|
1
1
|
# file: /home/runner/work/alpha-visualizer/alpha-visualizer/samples/_generators/synthetic_ohlcv.py
|
|
2
|
-
# hypothesis_version: 6.155.
|
|
2
|
+
# hypothesis_version: 6.155.2
|
|
3
3
|
|
|
4
4
|
[-0.1, -0.08, -0.05, -0.04, -0.012, -0.008, -0.004, -0.003, -0.002, -0.0003, 0.0, 5e-05, 0.0001, 0.0002, 0.0005, 0.0006, 0.0007, 0.0008, 0.0012, 0.0015, 0.003, 0.004, 0.005, 0.008, 0.009, 0.01, 0.012, 0.014, 0.016, 0.018, 0.02, 0.022, 0.025, 0.03, 0.035, 0.04, 0.045, 0.05, 0.06, 0.08, 0.15, 0.4, 0.6, 1.0, 1.1, 5.0, 80.0, 100.0, 4500.0, 20000.0, 30000.0, 50000.0, 200000.0, 1500000.0, 80000000.0, 190, 200, 250, 400, 460, 500, 560, 600, 1250, 2020, 'COMMODITY_SYNTH', 'CRYPTO_SYNTH', 'Close', 'Date', 'EQUITY_SYNTH', 'FX_SYNTH', 'High', 'INDEX_SYNTH', 'Low', 'Open', 'Volume', 'blow-off-top', 'bubble-1', 'bubble-2', 'calm-bull-mid', 'calm-bull-post', 'calm-bull-pre', 'calm-long', 'consolidation', 'crash-1', 'crash-2008-like', 'crash-2020-like', 'flash-crash', 'late-correction', 'mean-reverting', 'recovery', 'sideways', 'slow-bleed', 'spike', 'v-recovery']
|
|
@@ -1,4 +1,4 @@
|
|
|
1
1
|
# file: /home/runner/work/alpha-visualizer/alpha-visualizer/src/alpha_visualizer/routers/live.py
|
|
2
|
-
# hypothesis_version: 6.155.
|
|
2
|
+
# hypothesis_version: 6.155.2
|
|
3
3
|
|
|
4
4
|
[200, '/live', '/live/{strategy_id}', 'aligned', 'backtest', 'diff', 'has_summary', 'has_trades', 'kind', 'live', 'period', 'position', 'router', 'run_id', 'strategy', 'strategy_id', 'summary', 'trades', 'warnings']
|
|
@@ -1,4 +1,4 @@
|
|
|
1
1
|
# file: /home/runner/work/alpha-visualizer/alpha-visualizer/samples/_generators/pseudo_backtest.py
|
|
2
|
-
# hypothesis_version: 6.155.
|
|
2
|
+
# hypothesis_version: 6.155.2
|
|
3
3
|
|
|
4
4
|
[0.0, 1e-06, 0.0009, 0.005, 0.011, 0.2, 0.22, 0.3, 0.35, 0.42, 0.5, 0.7, 0.9, 1.0, 1.1, 1.2, 2.0, 3.0, 4.0, 4.5, 100.0, 252.0, 10000.0, 100000.0, 200, 252, '%Y', '%Y-%m', '2025-01-06 09:00:00', 'Close', 'annual_returns', 'avg_holding_days', 'cagr_pct', 'calmar_ratio', 'date', 'direction', 'entry_date', 'entry_price', 'exit_date', 'exit_price', 'holding_days', 'id', 'long', 'mae_pct', 'max_drawdown_pct', 'mfe_pct', 'monthly_returns', 'pnl', 'profit_factor', 'return_pct', 'sharpe_ratio', 'sortino_ratio', 'total_return_pct', 'total_trades', 'value', 'win_rate_pct']
|
|
@@ -1,4 +1,4 @@
|
|
|
1
1
|
# file: /home/runner/work/alpha-visualizer/alpha-visualizer/src/alpha_visualizer/services/live.py
|
|
2
|
-
# hypothesis_version: 6.155.
|
|
2
|
+
# hypothesis_version: 6.155.2
|
|
3
3
|
|
|
4
4
|
[0.0, 100.0, 'DIFF_METRICS', 'aligned_aggregates', 'backtest', 'backtest_metrics', 'compute_diff', 'date_in_period', 'diff', 'diff_value', 'direction', 'end', 'entry_at', 'entry_date', 'entry_price', 'equity', 'exit_at', 'exit_date', 'exit_price', 'exit_reason', 'id', 'kind', 'live', 'long', 'max_drawdown_pct', 'metrics', 'net_pnl', 'normalize_trade', 'optional_float', 'period', 'pnl', 'portfolio_id', 'position', 'position_detail', 'profit_factor', 'qty', 'receipts_count', 'return_pct', 'safe_float', 'short', 'side', 'start', 'strategy_id', 'sub_strategies', 'summary', 'symbol', 'total_trades', 'trade_id', 'trade_period', 'trades', 'updated_at', 'warnings', 'win_rate_pct']
|
|
@@ -1,4 +1,4 @@
|
|
|
1
1
|
# file: /home/runner/work/alpha-visualizer/alpha-visualizer/samples/_generators/ideas_defs.py
|
|
2
|
-
# hypothesis_version: 6.155.
|
|
2
|
+
# hypothesis_version: 6.155.2
|
|
3
3
|
|
|
4
4
|
['2024-11-15T13:00:00', '2024-12-20T10:00:00', '2025-01-02T20:30:00', '2025-01-05T09:15:00', '2025-01-07T11:00:00', '2025-01-08T15:00:00', '2025-01-08T16:30:00', '2025-01-09T11:45:00', 'adx', 'atr', 'backlog', 'bbands', 'bbands_breakout_v1', 'breakout', 'connors', 'created_at', 'crypto', 'donchian', 'donchian_turtle_v1', 'ema_adx_macd_v1', 'filter', 'idea_id', 'idea_sample_001', 'idea_sample_002', 'idea_sample_003', 'idea_sample_004', 'idea_sample_005', 'in_progress', 'linked_strategies', 'mean-reversion', 'notes', 'position-sizing', 'robustness', 'rsi', 'rsi_reversion_v1', 'sma', 'sma_crossover_v1', 'status', 'supertrend', 'supertrend_adx_v1', 'tags', 'tested', 'title', 'trend', 'turtle', 'updated_at', 'volatility', 'wfo']
|
|
@@ -1,4 +1,4 @@
|
|
|
1
1
|
# file: /home/runner/work/alpha-visualizer/alpha-visualizer/src/alpha_visualizer/services/historical.py
|
|
2
|
-
# hypothesis_version: 6.155.
|
|
2
|
+
# hypothesis_version: 6.155.2
|
|
3
3
|
|
|
4
4
|
['\x00', '%Y-%m-%d', '%Y-%m-%dT%H:%M:%S', '..', '/', 'Close', 'High', 'Low', 'Open', 'Volume', '\\', 'close', 'coerce', 'high', 'low', 'open', 'symbol が空です', 'time', 'volume']
|
|
@@ -1,4 +1,4 @@
|
|
|
1
1
|
# file: /home/runner/work/alpha-visualizer/alpha-visualizer/samples/_generators/compatibility_matrix.py
|
|
2
|
-
# hypothesis_version: 6.155.
|
|
2
|
+
# hypothesis_version: 6.155.2
|
|
3
3
|
|
|
4
4
|
[0.3, 0.32, 0.35, 0.4, 0.45, 0.48, 0.5, 0.52, 0.55, 0.58, 0.6, 0.62, 0.65, 0.7, 0.75, 0.78, 0.8, 0.82, 0.85, 0.9, 100, 'COMMODITY_SYNTH', 'CRYPTO_SYNTH', 'EQUITY_SYNTH', 'FX_SYNTH', 'INDEX_SYNTH', 'bbands_breakout_v1', 'breakout', 'donchian_turtle_v1', 'ema_adx_macd_v1', 'macd_crossover_v1', 'range_reversion_v1', 'reversion', 'rsi_reversion_v1', 'sma_crossover_v1', 'supertrend_adx_v1', 'trend']
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.4
|
|
2
2
|
Name: alpha-visualizer
|
|
3
|
-
Version: 0.
|
|
3
|
+
Version: 0.8.0
|
|
4
4
|
Summary: Web visualization tool for AlphaForge backtest results
|
|
5
5
|
Project-URL: Homepage, https://github.com/alforge-labs/alpha-visualizer
|
|
6
6
|
Project-URL: Repository, https://github.com/alforge-labs/alpha-visualizer
|
|
@@ -40,7 +40,7 @@ Description-Content-Type: text/markdown
|
|
|
40
40
|
|
|
41
41
|
[English](README.en.md) | **日本語**
|
|
42
42
|
|
|
43
|
-
> **AlphaForge
|
|
43
|
+
> **[AlphaForge](https://alforgelabs.com) のバックテスト結果を Web ブラウザで可視化するスタンドアロンツール** — JSON で戦略を記述し、Optuna TPE で最適化、ウォークフォワード検証して TradingView Pine v6 にエクスポート。AI エージェントがパイプライン全体を駆動できる、ローカルファースト Quant CLI です。→ **[AlphaForge を無料で試す](https://alforgelabs.com)**
|
|
44
44
|
|
|
45
45
|
`alpha-visualizer` は、[AlphaForge](https://alforgelabs.com/) のバックテストエンジンが出力する `backtest_results.db`(SQLite)と戦略 JSON を直接読み取り、ブラウザベースのダッシュボードとして可視化します。`alpha-vis serve` 一発で FastAPI + React SPA が起動し、戦略の閲覧・比較・最適化結果の確認・ライブ実績との突き合わせまでを行えます。
|
|
46
46
|
|
|
@@ -7,7 +7,7 @@
|
|
|
7
7
|
|
|
8
8
|
**English** | [日本語](README.md)
|
|
9
9
|
|
|
10
|
-
> **A standalone web visualization tool for AlphaForge backtest results**
|
|
10
|
+
> **A standalone web visualization tool for [AlphaForge](https://alforgelabs.com) backtest results** — the agent-native quant CLI: write strategies in JSON, optimize with Optuna TPE, validate with walk-forward, and export to TradingView Pine v6. Your AI agent can drive the whole pipeline. → **[Try AlphaForge free](https://alforgelabs.com)**
|
|
11
11
|
|
|
12
12
|
`alpha-visualizer` reads `backtest_results.db` (SQLite) and strategy JSON files produced by the [AlphaForge](https://alforgelabs.com/) backtest engine and serves a browser-based dashboard. A single `alpha-vis serve` command launches a FastAPI + React SPA that lets you browse strategies, compare metrics, inspect optimization results, and reconcile live trading against backtests.
|
|
13
13
|
|
|
@@ -7,7 +7,7 @@
|
|
|
7
7
|
|
|
8
8
|
[English](README.en.md) | **日本語**
|
|
9
9
|
|
|
10
|
-
> **AlphaForge
|
|
10
|
+
> **[AlphaForge](https://alforgelabs.com) のバックテスト結果を Web ブラウザで可視化するスタンドアロンツール** — JSON で戦略を記述し、Optuna TPE で最適化、ウォークフォワード検証して TradingView Pine v6 にエクスポート。AI エージェントがパイプライン全体を駆動できる、ローカルファースト Quant CLI です。→ **[AlphaForge を無料で試す](https://alforgelabs.com)**
|
|
11
11
|
|
|
12
12
|
`alpha-visualizer` は、[AlphaForge](https://alforgelabs.com/) のバックテストエンジンが出力する `backtest_results.db`(SQLite)と戦略 JSON を直接読み取り、ブラウザベースのダッシュボードとして可視化します。`alpha-vis serve` 一発で FastAPI + React SPA が起動し、戦略の閲覧・比較・最適化結果の確認・ライブ実績との突き合わせまでを行えます。
|
|
13
13
|
|
|
Binary file
|
|
Binary file
|
|
@@ -14,7 +14,7 @@ test.describe('Compare スモーク', () => {
|
|
|
14
14
|
// issue #231 以降は TV レンダラが既定(canvas 描画)
|
|
15
15
|
const chart = page.getByTestId('compare-equity-tv')
|
|
16
16
|
await expect(chart).toBeVisible()
|
|
17
|
-
await expect(chart.
|
|
17
|
+
await expect(chart).toHaveAttribute('aria-label', /Compare equity chart, 2 strategies/)
|
|
18
18
|
await expect(chart.locator('canvas').first()).toBeVisible()
|
|
19
19
|
|
|
20
20
|
const table = page.getByTestId('compare-table')
|
|
@@ -46,7 +46,7 @@
|
|
|
46
46
|
"lightweight-charts": "^5.2.0",
|
|
47
47
|
"react": "^19.2.6",
|
|
48
48
|
"react-dom": "^19.2.6",
|
|
49
|
-
"react-router-dom": "^7.
|
|
49
|
+
"react-router-dom": "^7.17.0"
|
|
50
50
|
},
|
|
51
51
|
"devDependencies": {
|
|
52
52
|
"@eslint/js": "^10.0.1",
|
|
@@ -73,7 +73,7 @@
|
|
|
73
73
|
"storybook": "^10.3.6",
|
|
74
74
|
"typescript": "~6.0.2",
|
|
75
75
|
"typescript-eslint": "^8.59.2",
|
|
76
|
-
"vite": "^8.0.
|
|
77
|
-
"vitest": "^4.1.
|
|
76
|
+
"vite": "^8.0.16",
|
|
77
|
+
"vitest": "^4.1.9"
|
|
78
78
|
}
|
|
79
79
|
}
|