账户总资产
{{ money(ov.total_asset) }}
可用资金 (估算)
{{ money(ov.cash_source==='ws' ? ov.cash_avail : ov.cash_est) }}
持仓市值
{{ money(ov.portfolio_mv) }}
仓位
{{ pct(ov.portfolio_pct) }} / {{ pct(ov.portfolio_cap) }}
浮动盈亏
{{ money(ov.float_pnl) }} {{ ov.float_pnl_pct==null?'':pct(ov.float_pnl_pct) }}
持仓数
{{ ov.names_count }} / {{ ov.max_names }}
等我拍板
{{ proposals.length }} 条
自主档位
{{ tx('autonomy', ov.autonomy) }}
等我拍板 · {{ proposals.length }} 条
暂无需要你确认的提议。
{{ nm(p.ts_code) }} {{ p.ts_code }}
{{ tx('action', p.action) }}
{{ p.expire_at }} 前有效
研判:{{ p.judge_reason }}
{{ propWhy(p) }}
约 {{ p.qty }} 股 · 参考价 {{ (p.hard_numbers||{}).price==null ? '—' : (p.hard_numbers||{}).price }}
· 约需 {{ money(((p.hard_numbers||{}).price||0)*(p.qty||0)) }}
采纳
驳回
采纳=记一笔待执行指令,由择时在窗口内择机下单;驳回=今日不再提这只。
我的持仓 · {{ heldPositions.length }} 只
查看批次
{{ tx('lot', l.row.lot_type) }}
该股近期账本:
无
{{ (l.decided_at||'').slice(5,16) }}
{{ tx('arbiter', l.arbiter) }}{{ tx('verdict', l.verdict) }} {{ tx('action', l.action) }} — {{ l.reason }}
{{ nm(s.row.ts_code) }}
{{ s.row.ts_code }}
{{ s.row.price }} 估
{{ s.row.avg_cost||'—' }}
{{ pct(s.row.price/s.row.avg_cost-1) }}
—
{{ money(s.row.market_value) }}
{{ pct(s.row.pct_of_scale) }}
{{ tx('cushion', s.row.cushion_state) }}
{{ pct(s.row.cushion_pct) }} · 连负{{ s.row.neg_cushion_days }}日
{{ tx('posStatus', s.row.status) }}
{{ tx('frozen', s.row.frozen_reason) }}
{{ nextStep(s.row) }}
减仓
清仓
rowMore(c,s.row)">
更多 ▾
设止损价
设目标价
{{ (s.row.frozen_reason && s.row.frozen_reason!=='NONE') ? '解冻' : '冻结(禁增持)' }}
加入黑名单
今日在办
{{ nm(s.row.ts_code) }} {{ s.row.ts_code }}
{{ tx('action', s.row.action) }} · {{ tx('side', s.row.side) }}
{{ s.row.qty }} / {{ s.row.exec_qty||0 }}
{{ tx('insStatus', s.row.status) }}
撤单
今天发生了什么
今天还没有记录。
{{ (l.decided_at||'').slice(11,16) }}
{{ nm(l.ts_code) }}:{{ tx('arbiter', l.arbiter) }}{{ tx('verdict', l.verdict) }} {{ tx('action', l.action) }} —— {{ l.reason }}
组合操作
{{ ov.buy_halt?'恢复买入':'暂停买入' }}
{{ ov.exec_halt?'结束休假':'休假模式' }}
降仓…
升仓…
清仓某行业…
一键清仓(紧急)
暂停买入不影响卖出与止损;一键清仓会把全部持仓按最快节奏卖出、不做择时优化。
设置
{{ s.row.desc || s.row.key }}
保存修改 ({{ dirtyCount }})
放弃
改「自主档位」或「总仓上限」会即时生效;调低总仓上限可能触发降仓提议。
系统在盯的候选(今日选股计划) · 计划日 {{ planStatus.date || '—' }}
上游计划暂不可用。
{{ s.row.name || nm(s.row.ts_code) }} {{ s.row.ts_code }}
{{ s.row.upside==null ? '—' : ((s.row.upside>0?'+':'')+(s.row.upside*100).toFixed(0)+'%') }}
这是系统当前在盯、可能冒出提议的池子;仅供参考,不自动下单。
强刷 + 灌行业映射
只重读
计划不带价格与金额 —— 买多少/什么价一律 PMS 自己算; 行情取不到价的票会被剔除。
计划日 {{ planStatus.date }} (日龄 {{ planStatus.age_tdays }} 交易日) ·
热度日 {{ planStatus.heat_date || '-' }} · 快照 {{ (planStatus.market_snapshot_days||[]).join(',') }} ·
上游主题上限 {{ planStatus.theme_cap }} · theme 灌映射 {{ JSON.stringify(planStatus.theme_sync||{}) }}
请求 {{ JSON.stringify(planStatus.query||{}) }} · 漏斗: 打分池
主榜 {{ (planStatus.funnel||{}).scored_main }} / 观察 {{ (planStatus.funnel||{}).scored_observe }}
→(券商预期 + 目标价≥现价 + 主题限额 + top)→ 实收
主榜 {{ (planStatus.funnel||{}).returned_main }} / 观察 {{ (planStatus.funnel||{}).returned_observe }}
按当前参数筛选: 排序池 {{ planCand.considered }} → 合格 {{ planCand.eligible }} →
取 {{ (planCand.items||[]).length }} 只 ·
白名单档位取全 {{ planCand.tier_complete===null ? '不适用' : (planCand.tier_complete ? '是':'否') }} ·
丢弃 {{ JSON.stringify(planCand.dropped||{}) }}
·
{{ planCand.st_unknown.length }} 只无名称, ST 判不了已放行
{{ (planCand.items||[]).map(x=>x.ts_code).join(' ') }}
榜单变化
重算变化
{{ chgSt.hint }}
{{ chg.kind === 'first' ? '首次落快照' : (chg.prev_date + ' → ' + chg.curr_date) }} ·
名册 {{ chg.roster_size.prev }} → {{ chg.roster_size.curr }} ·
新进 {{ chg.counts.entered }} · 掉榜 {{ chg.counts.exited }} ·
升档 {{ chg.counts.tier_up }} · 降档 {{ chg.counts.tier_down }} ·
覆盖翻转 {{ chg.counts.bucket_moved }} · 名次跳变 {{ chg.counts.rank_jump }}
·
榜尾进出 {{ chg.tail_churn.entered + chg.tail_churn.exited }} 只未计入 (那一版吃满 top,
尾部是截断噪音不是观点变化)
· 其中
{{ chg.tail_churn.held_exempt }} 只因是持仓票照报 (持仓票不受榜尾闸约束 ——
漏报一条就是一个仓位)
· 同一计划日出现多版:
{{ chgRevised.map(x => x[0] + '×' + x[1]).join(', ') }}
{{ s.row.why }}
上游把一只持仓票摘出榜或降了档, 是"还该不该继续拿着"的直接信号 ——
单独拎出来免得被几十条新进榜淹掉。它只是提示, 不自动产生任何指令:
要减要清仍走命令台或提议确认。
持仓
{{ s.row.tier_from }} → {{ s.row.tier_to }}
{{ s.row.rank_from }} → {{ s.row.rank_to }}
({{ s.row.rank_delta > 0 ? '+' : '' }}{{ s.row.rank_delta }})
主榜
同一「计划日」出现多行 = 上游那天重算过多版(UPSTREAM_PLAN_API.md §7.3:
`/plan` 是实时算的, 应答里没有 generated_at, 下游本来没办法判断手上这份是哪一版)。
指纹不含 score —— 分数抖动但次序没变不算新版本, 否则表白涨而信息量为零。
主榜明细
{{ s.row.upside==null ? '-' :
((s.row.upside>0?'+':'') + (s.row.upside*100).toFixed(0) + '%') }}
「预期空间」= 券商目标价相对现价的空间 (上游 upside 字段, 2.12 → +212%)。噪音大,
所以永不参与排序 —— 排序始终按 score; 只在 PMS_PLAN_MIN_UPSIDE 上做下限过滤。
筛选参数在「参数设置」里: PMS_PLAN_TOP_N / PMS_PLAN_TIERS / PMS_PLAN_INCLUDE_OBSERVE /
PMS_PLAN_MIN_SCORE / PMS_PLAN_MIN_SOURCES / PMS_PLAN_MIN_UPSIDE / PMS_PLAN_STALE_TDAYS。
发给上游的三个: PMS_PLAN_TOP / PMS_PLAN_OBS_TOP / PMS_PLAN_THEME_CAP (0=不传, 用上游默认
20/10/5)。PMS_PLAN_THEME_CAP_LOCAL 是 PMS 侧的同主题限额, 在 TOP_N 截断之前生效 ——
让上游别裁 (THEME_CAP 设大) + PMS 自己裁, 前 N 名才不会被单一主题垄断。
PMS_PLAN_EXCLUDE_ST 默认开: 上游名单明确不剔除 ST/*ST, 这道闸在 PMS 侧。
「主题」是传导主题(事件驱动、天天变、覆盖约三成), 不是行业 —— 行业硬拦截
请把 PMS_SECTOR_SOURCE 设成 gp_stock_category, 别用 PMS_PLAN_THEME_SYNC。
{{ planResult }}