diff --git a/pages/config/config.vue b/pages/config/config.vue
index 44507d6..be18f36 100644
--- a/pages/config/config.vue
+++ b/pages/config/config.vue
@@ -95,33 +95,26 @@
diff --git a/pages/detail/detail.vue b/pages/detail/detail.vue
index a24f9dc..74a3558 100644
--- a/pages/detail/detail.vue
+++ b/pages/detail/detail.vue
@@ -17,17 +17,17 @@
¥
- 156,240.00
+ {{ (portfolioData.portfolioValue || 0).toLocaleString('zh-CN', { minimumFractionDigits: 2, maximumFractionDigits: 2 }) }}
历史变化
- +42.82%
+ {{ (portfolioData.historicalChange || 0) >= 0 ? '+' : '' }}{{ (portfolioData.historicalChange || 0).toFixed(2) }}%
日内波动
- +¥1,240.50
+ {{ (portfolioData.dailyVolatility || 0) >= 0 ? '+' : '' }}¥{{ (portfolioData.dailyVolatility || 0).toLocaleString('zh-CN', { minimumFractionDigits: 2, maximumFractionDigits: 2 }) }}
@@ -42,16 +42,15 @@
-
+
- H
+ {{ portfolioData.logicModel?.charAt(0) || 'S' }}
- HFEA 风险平价逻辑
+ {{ portfolioData.logicModel || '未设置策略' }}
- 目标权重
- 季度调仓
+ {{ portfolioData.logicModelDescription }}
@@ -59,7 +58,7 @@
- 监控中
+ {{ portfolioData.logicModelStatus || '监控中' }}
@@ -67,25 +66,25 @@
-
+
-
- {{ item.name.charAt(0) }}
+
+ {{ item.stockName?.charAt(0) || item.stockCode?.charAt(0) || 'S' }}
- {{ item.name }}
- {{ item.code }} · {{ item.shares }}份
+ {{ item.stockName || item.stockCode }}
+ {{ item.stockCode }} · {{ item.amount }}份
- ¥{{ item.marketValue }}
- 比例 {{ item.weight }}%
+ ¥{{ (item.totalValue || 0).toLocaleString('zh-CN', { minimumFractionDigits: 2, maximumFractionDigits: 2 }) }}
+ 比例 {{ (item.ratio || 0).toFixed(1) }}%
@@ -94,14 +93,14 @@
变动额
-
- {{ item.pnl > 0 ? '+' : '' }}{{ item.pnl }}
+
+ {{ (item.changeAmount || 0) >= 0 ? '+' : '' }}¥{{ (item.changeAmount || 0).toLocaleString('zh-CN', { minimumFractionDigits: 2, maximumFractionDigits: 2 }) }}
偏离比例
-
- {{ item.pnlPercent > 0 ? '+' : '' }}{{ item.pnlPercent }}%
+
+ {{ (item.deviationRatio || 0) >= 0 ? '+' : '' }}{{ (item.deviationRatio || 0).toFixed(2) }}%
@@ -117,18 +116,18 @@
- {{ log.date }}
- {{ log.time }}
+ {{ log.Date }}
+ {{ log.Time }}
-
+
- {{ log.title }}
- {{ log.type === 'buy' ? '录入增加' : '结出减少' }} {{ log.amount }}
+ {{ log.Title }}
+ {{ log.Type === 'buy' ? '录入增加' : '结出减少' }} {{ log.Amount }}
@@ -145,29 +144,233 @@
+
+
+
+
+
+
+
+ 股票代码
+
+
+
+
+ 数量
+
+
+
+
+ 价格
+
+
+
+
+ 货币
+
+ {{ transactionForm.currency }}
+
+
+
+
+
+ 备注
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/pages/index/index.vue b/pages/index/index.vue
index 4e148a2..8266200 100644
--- a/pages/index/index.vue
+++ b/pages/index/index.vue
@@ -110,7 +110,15 @@ const fetchAssetData = async () => {
console.log('开始获取资产数据...');
const response = await api.assets.getAssetData();
if (response.code === 200) {
- assetData.value = response.data;
+ // 映射资产数据字段
+ const data = response.data;
+ assetData.value = {
+ totalValue: data.TotalValue,
+ currency: data.Currency,
+ todayProfit: data.TodayProfit,
+ todayProfitCurrency: data.TodayProfitCurrency,
+ totalReturnRate: data.TotalReturnRate
+ };
console.log('资产数据获取成功');
}
} catch (error) {
@@ -124,8 +132,22 @@ const fetchHoldingsData = async () => {
console.log('开始获取持仓数据...');
const response = await api.assets.getHoldings();
if (response.code === 200) {
- // 处理响应数据结构,获取 items 数组
- holdings.value = response.data.items || [];
+ // 处理响应数据结构,获取 items 数组并映射字段
+ const items = response.data.items || [];
+ holdings.value = items.map(item => ({
+ id: item.Id,
+ name: item.Name,
+ tags: item.Tags,
+ status: item.Status,
+ statusType: item.StatusType,
+ iconChar: item.IconChar,
+ iconBgClass: item.IconBgClass,
+ iconTextClass: item.IconTextClass,
+ value: item.Value,
+ currency: item.Currency,
+ returnRate: item.ReturnRate,
+ returnType: item.ReturnType
+ }));
console.log('持仓数据获取成功,items数量:', holdings.value.length);
console.log('持仓数据:', holdings.value);
}
diff --git a/pages/strategies/edit/edit.vue b/pages/strategies/edit/edit.vue
index 2fb29b8..f122447 100644
--- a/pages/strategies/edit/edit.vue
+++ b/pages/strategies/edit/edit.vue
@@ -1,6 +1,13 @@
+
+
+
+
+ {{ isEditMode ? '编辑策略' : '创建策略' }}
+
+
选择逻辑模型
@@ -38,44 +45,44 @@
- 模型别名
-
+ 策略名称
+
-
-
- 再平衡周期
-
-
- {{ formData.period || '请选择' }}
-
-
-
-
-
- 偏离阈值 (%)
-
-
- sw
-
- 当资产权重偏离目标超过此数值时触发调仓。
-
-
+
+ 策略描述
+
+
-
+
+ 风险等级
+
+
+ {{ formData.riskLevel || 'medium' }}
+
+
+
+
+
+
+ 标签
+
+
+
+
- 快线周期 (Short)
-
+ 短期周期
+
- 慢线周期 (Long)
-
+ 长期周期
+
均线类型
-
+
{{ formData.maType || 'SMA' }}
@@ -83,22 +90,71 @@
- 规则:快线上穿慢线买入,下穿卖出。
+ 规则:短期均线上穿长期均线买入,下穿卖出。
-
+
+
+ 回看周期
+
+
+
+ 再平衡阈值
+
+
+
+
+ 资产配置
+
+
+
+
+
+ 代码
+
+
+
+ 目标权重
+
+
+
+
+
+
+ 添加资产
+
+
+
+
+
+ 当资产权重偏离目标超过此阈值时触发再平衡。
+
+
+
+
ATR 周期
-
+
- ATR 倍数 (Multiplier)
-
+ ATR 倍数
+
- 趋势过滤均线 (可选)
-
+ 使用收盘价
+
+
+ {{ formData.useClose ? '是' : '否' }}
+
+
+
+
+
+ 动态止损策略,随着价格上涨止损点上移。
@@ -106,33 +162,25 @@