76 lines
2.2 KiB
HTML
76 lines
2.2 KiB
HTML
{% extends "base.html" %}
|
|
{% block title %}博弈分析{% endblock %}
|
|
{% block heading %}博弈分析{% endblock %}
|
|
{% block breadcrumb %}机构持仓{% endblock %}
|
|
|
|
{% block content %}
|
|
{% if contracts %}
|
|
<div style="display:flex;align-items:center;gap:12px;margin-bottom:20px;">
|
|
<span style="font-size:0.85rem;color:var(--sub);">合约</span>
|
|
<select onchange="window.location='?contract='+this.value" style="padding:6px 12px;border:1px solid var(--border);border-radius:6px;background:var(--surface);color:var(--fg);font-size:0.88rem;">
|
|
{% for c in contracts %}
|
|
<option value="{{ c }}"{% if c == selected %} selected{% endif %}>{{ c }}</option>
|
|
{% endfor %}
|
|
</select>
|
|
</div>
|
|
{% endif %}
|
|
|
|
{% if latest_date %}
|
|
<div class="stat-grid">
|
|
<div class="stat-card">
|
|
<div class="label">数据日期</div>
|
|
<div class="value">{{ latest_date }}</div>
|
|
</div>
|
|
<div class="stat-card">
|
|
<div class="label">{{ selected }} 现价</div>
|
|
<div class="value">{{ current_price }}</div>
|
|
</div>
|
|
<div class="stat-card">
|
|
<div class="label">六家净空</div>
|
|
<div class="value">{{ total_net_short }}</div>
|
|
</div>
|
|
<div class="stat-card">
|
|
<div class="label">浮动盈亏</div>
|
|
<div class="value">{{ total_pnl }}</div>
|
|
</div>
|
|
</div>
|
|
|
|
<div class="section-title">机构持仓明细</div>
|
|
<div class="table-wrap">
|
|
<table>
|
|
<tr>
|
|
<th>机构</th><th>多单</th><th>空单</th><th>净持仓</th><th>净盈亏</th>
|
|
</tr>
|
|
{% for r in rows %}
|
|
<tr>
|
|
<td><strong>{{ r.institution }}</strong></td>
|
|
<td>{{ r.long_pos }}</td>
|
|
<td>{{ r.short_pos }}</td>
|
|
<td>{{ r.net_pos }}</td>
|
|
<td>
|
|
{% if r.pnl_raw > 0 %}
|
|
<span class="badge badge-up">{{ r.pnl }}</span>
|
|
{% elif r.pnl_raw < 0 %}
|
|
<span class="badge badge-down">{{ r.pnl }}</span>
|
|
{% else %}
|
|
<span class="na">—</span>
|
|
{% endif %}
|
|
</td>
|
|
</tr>
|
|
{% endfor %}
|
|
<tr style="font-weight:700; background:var(--th-bg);">
|
|
<td>合计</td>
|
|
<td>—</td>
|
|
<td>—</td>
|
|
<td>{{ total_net_short }}</td>
|
|
<td>{{ total_pnl }}</td>
|
|
</tr>
|
|
</table>
|
|
</div>
|
|
{% else %}
|
|
<div style="text-align:center;padding:60px 0;color:var(--sub);">
|
|
<p style="font-size:1.1rem;">暂无「{{ selected }}」的持仓数据</p>
|
|
</div>
|
|
{% endif %}
|
|
{% endblock %}
|