Update project

This commit is contained in:
wanghep
2026-04-08 20:04:40 +08:00
parent 2eab960303
commit 862235ea89
130 changed files with 60206 additions and 231 deletions

View File

@ -191,3 +191,366 @@ export interface AShareSectorFlowResponse {
precision: Precision
sector_types: Record<string, AShareSectorGroup>
}
export interface EtfRealtimeRecord {
trade_date: string
code: string
name: string
fund_name: string | null
detail_url: string | null
source_url: string | null
latest_price: number | null
change_amount: number | null
change_percent: number | null
previous_close: number | null
open_price: number | null
high_price: number | null
low_price: number | null
volume: number | null
turnover_amount: number | null
turnover_rate: number | null
change_percent_1m: number | null
change_percent_3m: number | null
change_percent_4m: number | null
updated_at: string | null
snapshot_time: string | null
source_name: string
precision: Precision
is_trading: boolean
}
export interface EtfRealtimeResponse {
trade_date: string
updated_at: string | null
source_name: string
source_url: string | null
precision: Precision
group: string
records: EtfRealtimeRecord[]
}
export interface MainCapitalFlowRecordSummary {
id: string
trade_date: string
subject: string | null
snapshot_time: string | null
institution_amount_yi: number | null
main_force_amount_yi: number | null
large_household_amount_yi: number | null
retail_amount_yi: number | null
trend: string | null
summary: string
image_name: string
image_url: string
created_at: string
updated_at: string
}
export interface MainCapitalFlowRecordDetail extends MainCapitalFlowRecordSummary {
raw_extraction: Record<string, unknown>
}
export interface MainCapitalFlowListResponse {
items: MainCapitalFlowRecordSummary[]
total: number
}
export interface MainCapitalFlowRecognizeResponse {
temp_image_name: string
image_name: string
image_url: string
trade_date: string | null
subject: string | null
snapshot_time: string | null
institution_amount_yi: number | null
main_force_amount_yi: number | null
large_household_amount_yi: number | null
retail_amount_yi: number | null
trend: string | null
summary: string | null
raw_extraction: Record<string, unknown>
}
export interface MainCapitalFlowCreateRequest {
temp_image_name: string
image_name: string
trade_date: string
subject: string | null
snapshot_time: string | null
institution_amount_yi: number | null
main_force_amount_yi: number | null
large_household_amount_yi: number | null
retail_amount_yi: number | null
trend: string | null
summary: string
raw_extraction: Record<string, unknown>
}
export interface MainCapitalFlowCreateResponse {
item: MainCapitalFlowRecordDetail
}
export type CycleName = 'week' | 'day' | '15m' | '30m' | '60m' | '90m' | '120m'
export interface SymbolInfo {
query: string
code: string
name: string
market: string
security_type: 'stock' | 'index' | 'etf' | 'unknown'
secid: string
}
export interface SnapshotInfo {
latest_price: number | null
change_percent: number | null
updated_at: string | null
source_name: string
}
export interface MaValues {
ma5: number | null
ma13: number | null
ma21: number | null
ma34: number | null
ma55: number | null
ma89: number | null
}
export interface MacdValues {
dif: number | null
dea: number | null
histogram: number | null
}
export interface RsiValues {
rsi5: number | null
rsi13: number | null
rsi21: number | null
}
export interface IndicatorSnapshot {
macd: MacdValues
rsi: RsiValues
signal_summary: string
}
export interface CycleSummary {
cycle: CycleName
close: number | null
trend_label: string
ma_status: string
volume_status: string
ma_values: MaValues
indicator_snapshot: IndicatorSnapshot
}
export interface AbcPoint {
label: 'A' | 'B' | 'C'
timestamp: string
price: number
k_index: number
}
export interface AbcStructure {
cycle: CycleName
direction: 'bullish' | 'bearish' | 'neutral'
status: string
a_point: AbcPoint | null
b_point: AbcPoint | null
c_point: AbcPoint | null
reasoning: string[]
}
export interface FibonacciLevel {
ratio: number
label: string
value: number
distance_to_price: number | null
}
export interface FibonacciSpace {
cycle: CycleName
anchor_start_label: string
anchor_start_time: string
anchor_start_price: number
anchor_end_label: string
anchor_end_time: string
anchor_end_price: number
levels: FibonacciLevel[]
current_position_summary: string
}
export interface FibonacciTime {
cycle: '15m' | '30m' | '60m' | '90m' | '120m'
start_point_time: string
start_point_label: string
current_count: number
current_hit: number[]
next_key_counts: number[]
next_window_summary: string
}
export interface TimeSequenceTrack {
track_type: 'major' | 'minor'
cycle: '15m' | '30m' | '60m' | '90m' | '120m'
start_point_time: string
start_point_label: string
current_count: number
current_hit: number[]
next_key_counts: number[]
next_window_summary: string
}
export interface TimeSequenceBundle {
major: TimeSequenceTrack | null
minor: TimeSequenceTrack | null
}
export interface ResonanceItem {
level: 'normal' | 'medium' | 'strong' | 'very_strong'
type: 'time' | 'space' | 'spacetime' | 'trend' | 'abc'
cycles: string[]
summary: string
bias: 'bullish' | 'bearish' | 'neutral'
}
export interface ConclusionSummary {
stage: string
bias: 'bullish' | 'bearish' | 'neutral'
confidence: number
headline: string
summary: string
tags: string[]
}
export interface AlertItem {
level: 'normal' | 'medium' | 'strong' | 'very_strong'
trigger_type: string
title: string
summary: string
action: string
}
export interface EvidenceItem {
title: string
detail: string
cycles: string[]
score: number
}
export interface StrategyScenario {
key: 'A' | 'B' | 'C'
title: string
trigger_condition: string
system_view: string
user_action: string
next_watch: string
}
export interface MonitoringTask {
title: string
cadence: string
focus: string
trigger_condition: string
}
export interface ToolPreset {
name: string
cycle: CycleName
tool_type:
| 'fibonacci_ruler'
| 'extension_ruler'
| 'wave_ruler'
| 'trend_line'
| 'horizontal_line'
| 'range_measure'
mode: 'auto' | 'manual_ready'
anchors: string[]
summary: string
}
export interface AnalysisReportResponse {
symbol: SymbolInfo
snapshot: SnapshotInfo
cycles: CycleSummary[]
abc_structures: AbcStructure[]
fibonacci_space: FibonacciSpace[]
fibonacci_time: FibonacciTime[]
resonance: ResonanceItem[]
conclusion_summary: ConclusionSummary
alerts: AlertItem[]
evidence_chain: EvidenceItem[]
strategy_scenarios: StrategyScenario[]
monitoring_tasks: MonitoringTask[]
tool_presets: ToolPreset[]
tomorrow_strategy: string[]
follow_strategy: string[]
signal_conclusion: string[]
calculation_steps: string[]
}
export interface ChartCandle {
timestamp: string
open: number
close: number
high: number
low: number
volume: number
ma5: number | null
ma13: number | null
ma21: number | null
ma34: number | null
ma55: number | null
ma89: number | null
dif: number | null
dea: number | null
macd_histogram: number | null
rsi5: number | null
rsi13: number | null
rsi21: number | null
}
export interface ChartTimeMarker {
track_type: 'major' | 'minor'
target_count: number
current_count: number
candle_index: number | null
reached: boolean
label: string
}
export interface ChartPriceMarker {
label: string
value: number
kind: 'support' | 'resistance' | 'current' | 'trigger' | 'target'
emphasis: 'normal' | 'medium' | 'strong' | 'very_strong'
}
export interface ChartToolLayer {
name: string
tool_type:
| 'fibonacci_ruler'
| 'extension_ruler'
| 'wave_ruler'
| 'trend_line'
| 'horizontal_line'
| 'range_measure'
mode: 'auto' | 'manual_ready'
summary: string
}
export interface AnalysisChartResponse {
symbol: SymbolInfo
cycle: CycleName
candles: ChartCandle[]
abc_structure: AbcStructure
fibonacci_space: FibonacciSpace
fibonacci_time: FibonacciTime | null
time_sequences: TimeSequenceBundle | null
time_markers: ChartTimeMarker[]
price_markers: ChartPriceMarker[]
tool_layers: ChartToolLayer[]
signal_tags: string[]
}