# huang1125677925/stock_analyse architecture

> Architecture diagram of the GitHub repository huang1125677925/stock_analyse, generated by GitDiagram from its file tree, README and a sample of source files (last updated 2026-09-29). It is an AI-made overview: check details against the source.

- Interactive diagram: https://gitdiagram.com/huang1125677925/stock_analyse
- Repository: https://github.com/huang1125677925/stock_analyse

## Overview

This Vue frontend is a stock and market analysis application: users navigate analysis pages, adjust filters or date ranges, and view market, industry, stock-strategy, and ETF results fetched from backend APIs. The sampled RPS pages and ETF explorer show how views call domain services and render derived results. The app also includes authentication and page-aware AI analysis. The README describes a generic Vue starter and does not document these current product capabilities; several subsystems are represented from the file tree, so their internal wiring is not inferred.

Main entry points: [`vue-frontend/src/views/strategy/IndexRpsView.vue`](https://github.com/huang1125677925/stock_analyse/blob/main/vue-frontend/src/views/strategy/IndexRpsView.vue) (Index RPS), [`vue-frontend/src/views/markt_data/EtfTreeView.vue`](https://github.com/huang1125677925/stock_analyse/blob/main/vue-frontend/src/views/markt_data/EtfTreeView.vue) (ETF Explorer), [`vue-frontend/src/views/indival_stock_data/StockSwingPracticeView.vue`](https://github.com/huang1125677925/stock_analyse/blob/main/vue-frontend/src/views/indival_stock_data/StockSwingPracticeView.vue) (Stock Swing Practice), [`vue-frontend/src/components/AiAnalysisDialog.vue`](https://github.com/huang1125677925/stock_analyse/blob/main/vue-frontend/src/components/AiAnalysisDialog.vue) (AI Analysis)

## Diagram (Mermaid)

```mermaid
flowchart TD

subgraph group_app["Application Shell"]
  node_app["Vue App<br/>[App.vue]"]
  node_router["Route Configuration<br/>[index.ts]"]
  node_layout["Default Layout<br/>[DefaultLayout.vue]"]
  node_settings["Settings<br/>[SettingsView.vue]"]
end

subgraph group_market["Market Analysis"]
  node_marketview["Market Views"]
  node_breadthview["Index Breadth"]
  node_industryview["Industry Analysis"]
  node_etfview["ETF Explorer<br/>[EtfTreeView.vue]"]
  node_etfapi["ETF Data API<br/>[etfApi.ts]"]
  node_indexapi["Index Data API<br/>[indexBasicApi.ts]"]
  node_stocklistapi["Stock List API"]
end

subgraph group_strategy["Stock Strategy"]
  node_stockview["Stock Swing Practice"]
  node_rpsview["Index RPS<br/>[IndexRpsView.vue]"]
  node_stockapi["Stock RPS API<br/>[strategyApi.ts]"]
  node_historyapi["Stock History API<br/>[stockHistoryApi.ts]"]
  node_dcapi["Index Daily API<br/>[dcDailyApi.ts]"]
  node_turnoverapi["Turnover API"]
end

subgraph group_integrations["Data And AI"]
  node_backend{{"Backend APIs"}}
  node_ai["AI Analysis"]
  node_aidata["AI Page Data Store<br/>[aiPageDataStore.ts]"]
  node_deepseek["DeepSeek Service<br/>[deepseekApi.ts]"]
  node_ai_service["AI Analysis Service<br/>[aiAnalysis.ts]"]
end

node_visitor(("User"))

node_visitor -->|"opens"| node_app
node_app -->|"renders routes"| node_router
node_router -->|"dispatches pages"| node_layout
node_visitor -->|"selects analysis"| node_marketview
node_visitor -->|"selects analysis"| node_breadthview
node_visitor -->|"selects analysis"| node_industryview
node_visitor -->|"explores funds"| node_etfview
node_visitor -->|"filters stocks"| node_stockview
node_visitor -->|"filters indices"| node_rpsview
node_stockview -->|"requests RPS"| node_stockapi
node_stockview -->|"requests history"| node_historyapi
node_rpsview -->|"requests RPS"| node_stockapi
node_rpsview -->|"requests index data"| node_dcapi
node_rpsview -->|"requests history"| node_historyapi
node_rpsview -->|"requests turnover"| node_turnoverapi
node_etfview -->|"requests ETF data"| node_etfapi
node_etfview -->|"requests index data"| node_indexapi
node_etfview -->|"resolves stock names"| node_stocklistapi
node_stockapi -->|"fetches data"| node_backend
node_historyapi -->|"fetches data"| node_backend
node_dcapi -->|"fetches data"| node_backend
node_turnoverapi -->|"fetches data"| node_backend
node_etfapi -->|"fetches data"| node_backend
node_indexapi -->|"fetches data"| node_backend
node_stocklistapi -->|"fetches data"| node_backend
node_layout -->|"opens dialog"| node_ai
node_ai -->|"reads page data"| node_aidata
node_ai -->|"requests analysis"| node_ai_service
node_ai_service -.->|"calls provider"| node_deepseek
node_deepseek -.->|"requests inference"| node_backend
node_visitor -->|"configures account"| node_settings

click node_app "https://github.com/huang1125677925/stock_analyse/blob/main/vue-frontend/src/App.vue"
click node_router "https://github.com/huang1125677925/stock_analyse/blob/main/vue-frontend/src/router/index.ts"
click node_layout "https://github.com/huang1125677925/stock_analyse/blob/main/vue-frontend/src/layouts/DefaultLayout.vue"
click node_settings "https://github.com/huang1125677925/stock_analyse/blob/main/vue-frontend/src/views/SettingsView.vue"
click node_marketview "https://github.com/huang1125677925/stock_analyse/blob/main/vue-frontend/src/views/markt_data/MarketOverviewView.vue"
click node_breadthview "https://github.com/huang1125677925/stock_analyse/blob/main/vue-frontend/src/views/markt_data/MarketIndexBreadthView.vue"
click node_industryview "https://github.com/huang1125677925/stock_analyse/blob/main/vue-frontend/src/views/industry-stock-data/IndustryFundFlowView.vue"
click node_etfview "https://github.com/huang1125677925/stock_analyse/blob/main/vue-frontend/src/views/markt_data/EtfTreeView.vue"
click node_stockview "https://github.com/huang1125677925/stock_analyse/blob/main/vue-frontend/src/views/indival_stock_data/StockSwingPracticeView.vue"
click node_rpsview "https://github.com/huang1125677925/stock_analyse/blob/main/vue-frontend/src/views/strategy/IndexRpsView.vue"
click node_stockapi "https://github.com/huang1125677925/stock_analyse/blob/main/vue-frontend/src/services/strategyApi.ts"
click node_historyapi "https://github.com/huang1125677925/stock_analyse/blob/main/vue-frontend/src/services/stockHistoryApi.ts"
click node_dcapi "https://github.com/huang1125677925/stock_analyse/blob/main/vue-frontend/src/services/dcDailyApi.ts"
click node_turnoverapi "https://github.com/huang1125677925/stock_analyse/blob/main/vue-frontend/src/services/industry-turnover-percentile.ts"
click node_etfapi "https://github.com/huang1125677925/stock_analyse/blob/main/vue-frontend/src/services/etfApi.ts"
click node_indexapi "https://github.com/huang1125677925/stock_analyse/blob/main/vue-frontend/src/services/indexBasicApi.ts"
click node_stocklistapi "https://github.com/huang1125677925/stock_analyse/blob/main/vue-frontend/src/services/individualStockApi.ts"
click node_ai "https://github.com/huang1125677925/stock_analyse/blob/main/vue-frontend/src/components/AiAnalysisDialog.vue"
click node_aidata "https://github.com/huang1125677925/stock_analyse/blob/main/vue-frontend/src/services/aiPageDataStore.ts"
click node_deepseek "https://github.com/huang1125677925/stock_analyse/blob/main/vue-frontend/src/services/deepseekApi.ts"
click node_ai_service "https://github.com/huang1125677925/stock_analyse/blob/main/vue-frontend/src/services/aiAnalysis.ts"

classDef toneNeutral fill:#f8fafc,stroke:#334155,stroke-width:1.5px,color:#0f172a
classDef toneBlue fill:#dbeafe,stroke:#2563eb,stroke-width:1.5px,color:#172554
classDef toneAmber fill:#fef3c7,stroke:#d97706,stroke-width:1.5px,color:#78350f
classDef toneMint fill:#dcfce7,stroke:#16a34a,stroke-width:1.5px,color:#14532d
classDef toneRose fill:#ffe4e6,stroke:#e11d48,stroke-width:1.5px,color:#881337
classDef toneIndigo fill:#e0e7ff,stroke:#4f46e5,stroke-width:1.5px,color:#312e81
classDef toneTeal fill:#ccfbf1,stroke:#0f766e,stroke-width:1.5px,color:#134e4a
class node_app,node_router,node_layout,node_settings,node_visitor toneBlue
class node_marketview,node_breadthview,node_industryview,node_etfview,node_etfapi,node_indexapi,node_stocklistapi toneAmber
class node_stockview,node_rpsview,node_stockapi,node_historyapi,node_dcapi,node_turnoverapi toneMint
class node_backend,node_ai,node_aidata,node_deepseek,node_ai_service toneRose
```

## Components

### Application Shell

- [Vue App](https://github.com/huang1125677925/stock_analyse/blob/main/vue-frontend/src/App.vue): `vue-frontend/src/App.vue`
- [Route Configuration](https://github.com/huang1125677925/stock_analyse/blob/main/vue-frontend/src/router/index.ts): `vue-frontend/src/router/index.ts`
- [Default Layout](https://github.com/huang1125677925/stock_analyse/blob/main/vue-frontend/src/layouts/DefaultLayout.vue): `vue-frontend/src/layouts/DefaultLayout.vue`
- [Settings](https://github.com/huang1125677925/stock_analyse/blob/main/vue-frontend/src/views/SettingsView.vue): `vue-frontend/src/views/SettingsView.vue`

### Market Analysis

- [Market Views](https://github.com/huang1125677925/stock_analyse/blob/main/vue-frontend/src/views/markt_data/MarketOverviewView.vue): `vue-frontend/src/views/markt_data/MarketOverviewView.vue`
- [Index Breadth](https://github.com/huang1125677925/stock_analyse/blob/main/vue-frontend/src/views/markt_data/MarketIndexBreadthView.vue): `vue-frontend/src/views/markt_data/MarketIndexBreadthView.vue`
- [Industry Analysis](https://github.com/huang1125677925/stock_analyse/blob/main/vue-frontend/src/views/industry-stock-data/IndustryFundFlowView.vue): `vue-frontend/src/views/industry-stock-data/IndustryFundFlowView.vue`
- [ETF Explorer](https://github.com/huang1125677925/stock_analyse/blob/main/vue-frontend/src/views/markt_data/EtfTreeView.vue): `vue-frontend/src/views/markt_data/EtfTreeView.vue`
- [ETF Data API](https://github.com/huang1125677925/stock_analyse/blob/main/vue-frontend/src/services/etfApi.ts): `vue-frontend/src/services/etfApi.ts`
- [Index Data API](https://github.com/huang1125677925/stock_analyse/blob/main/vue-frontend/src/services/indexBasicApi.ts): `vue-frontend/src/services/indexBasicApi.ts`
- [Stock List API](https://github.com/huang1125677925/stock_analyse/blob/main/vue-frontend/src/services/individualStockApi.ts): `vue-frontend/src/services/individualStockApi.ts`

### Stock Strategy

- [Stock Swing Practice](https://github.com/huang1125677925/stock_analyse/blob/main/vue-frontend/src/views/indival_stock_data/StockSwingPracticeView.vue): `vue-frontend/src/views/indival_stock_data/StockSwingPracticeView.vue`
- [Index RPS](https://github.com/huang1125677925/stock_analyse/blob/main/vue-frontend/src/views/strategy/IndexRpsView.vue): `vue-frontend/src/views/strategy/IndexRpsView.vue`
- [Stock RPS API](https://github.com/huang1125677925/stock_analyse/blob/main/vue-frontend/src/services/strategyApi.ts): `vue-frontend/src/services/strategyApi.ts`
- [Stock History API](https://github.com/huang1125677925/stock_analyse/blob/main/vue-frontend/src/services/stockHistoryApi.ts): `vue-frontend/src/services/stockHistoryApi.ts`
- [Index Daily API](https://github.com/huang1125677925/stock_analyse/blob/main/vue-frontend/src/services/dcDailyApi.ts): `vue-frontend/src/services/dcDailyApi.ts`
- [Turnover API](https://github.com/huang1125677925/stock_analyse/blob/main/vue-frontend/src/services/industry-turnover-percentile.ts): `vue-frontend/src/services/industry-turnover-percentile.ts`

### Data And AI

- **Backend APIs**
- [AI Analysis](https://github.com/huang1125677925/stock_analyse/blob/main/vue-frontend/src/components/AiAnalysisDialog.vue): `vue-frontend/src/components/AiAnalysisDialog.vue`
- [AI Page Data Store](https://github.com/huang1125677925/stock_analyse/blob/main/vue-frontend/src/services/aiPageDataStore.ts): `vue-frontend/src/services/aiPageDataStore.ts`
- [DeepSeek Service](https://github.com/huang1125677925/stock_analyse/blob/main/vue-frontend/src/services/deepseekApi.ts): `vue-frontend/src/services/deepseekApi.ts`
- [AI Analysis Service](https://github.com/huang1125677925/stock_analyse/blob/main/vue-frontend/src/services/aiAnalysis.ts): `vue-frontend/src/services/aiAnalysis.ts`

### Other components

- **User**

## Connections

- User → Vue App: opens
- Vue App → Route Configuration: renders routes
- Route Configuration → Default Layout: dispatches pages
- User → Market Views: selects analysis
- User → Index Breadth: selects analysis
- User → Industry Analysis: selects analysis
- User → ETF Explorer: explores funds
- User → Stock Swing Practice: filters stocks
- User → Index RPS: filters indices
- Stock Swing Practice → Stock RPS API: requests RPS
- Stock Swing Practice → Stock History API: requests history
- Index RPS → Stock RPS API: requests RPS
- Index RPS → Index Daily API: requests index data
- Index RPS → Stock History API: requests history
- Index RPS → Turnover API: requests turnover
- ETF Explorer → ETF Data API: requests ETF data
- ETF Explorer → Index Data API: requests index data
- ETF Explorer → Stock List API: resolves stock names
- Stock RPS API → Backend APIs: fetches data
- Stock History API → Backend APIs: fetches data
- Index Daily API → Backend APIs: fetches data
- Turnover API → Backend APIs: fetches data
- ETF Data API → Backend APIs: fetches data
- Index Data API → Backend APIs: fetches data
- Stock List API → Backend APIs: fetches data
- Default Layout → AI Analysis: opens dialog
- AI Analysis → AI Page Data Store: reads page data
- AI Analysis → AI Analysis Service: requests analysis
- AI Analysis Service → DeepSeek Service: calls provider
- DeepSeek Service → Backend APIs: requests inference
- User → Settings: configures account
