Core KPI
roi_avg_notional_position_pct = total_pnl_final / time_avg_abs_net_position_usdt * 100
roi_peak_notional_position_pct = total_pnl_final / peak_abs_net_position_usdt * 100
dynamic_notional_beta = cumsum(total_notional_position_usdt(t) * mean(close c2c return across all coins at t))
avg_hold_notional_beta = cumsum(avg_total_notional_position_usdt * mean(close c2c return across all coins at t))
high/low dynamic_notional_beta = cumsum(segment_notional_position_usdt(t) * mean(close c2c return in each segment at t))
high/low avg_hold_notional_beta = cumsum(avg_segment_notional_position_usdt * mean(close c2c return in each segment at t))
alpha_vs_dynamic = pnl - dynamic_notional_beta, alpha_vs_avg_hold = pnl - avg_hold_notional_beta
dynamic_alpha_mdd_pnl / avg_hold_alpha_mdd_pnl = min(alpha - cummax(alpha)) on each alpha series
dynamic_alpha_sharpe_annualized / avg_hold_alpha_sharpe_annualized = mean(Δalpha) / std(Δalpha) * sqrt(252 * 390)
mdd_pnl = min(total_pnl - cummax(total_pnl))
sharpe_annualized = mean(Δpnl) / std(Δpnl) * sqrt(252 * 390)
total_fee = sum(execution fee)
| metric |
value |
| total_pnl_final |
31.184M |
| total_pnl_peak |
32.904M |
| dynamic_notional_beta_pnl_final |
9.921M |
| alpha_vs_dynamic_notional_beta_pnl_final |
21.263M |
| avg_hold_notional_beta_pnl_final |
8.476M |
| alpha_vs_avg_hold_notional_beta_pnl_final |
22.708M |
| high_mc_dynamic_notional_beta_pnl_final |
0.000M |
| low_mc_dynamic_notional_beta_pnl_final |
9.921M |
| high_mc_avg_hold_notional_beta_pnl_final |
0.000M |
| low_mc_avg_hold_notional_beta_pnl_final |
8.476M |
| high_mc_alpha_vs_dynamic_notional_beta_pnl_final |
0.000M |
| low_mc_alpha_vs_dynamic_notional_beta_pnl_final |
21.263M |
| high_mc_alpha_vs_avg_hold_notional_beta_pnl_final |
0.000M |
| low_mc_alpha_vs_avg_hold_notional_beta_pnl_final |
22.708M |
| dynamic_alpha_mdd_pnl |
-1.746M |
| dynamic_alpha_sharpe_annualized |
7.69698 |
| avg_hold_alpha_mdd_pnl |
-2.380M |
| avg_hold_alpha_sharpe_annualized |
8.09528 |
| num_trades |
6,216 |
| total_traded_amount_sum |
1.09322e+07 |
| total_trade_notional |
14232.407M |
| daily_trade_notional |
347.132M |
| trading_day_count |
41 |
| total_fee |
14.232M |
| time_avg_total_notional_position_usdt |
76.090M |
| time_avg_high_mc_notional_position_usdt |
0.000M |
| time_avg_low_mc_notional_position_usdt |
76.090M |
| time_avg_net_position_usdt |
76.090M |
| time_avg_abs_net_position_usdt |
76.090M |
| peak_abs_net_position_usdt |
1.01498e+08 |
| roi_avg_notional_position_pct |
40.98% |
| roi_peak_notional_position_pct |
30.72% |
| mdd_pnl |
-7.378M |
| sharpe_annualized |
9.04896 |
| high_mc_pnl_final |
0.000M |
| high_mc_trade_notional |
0.000M |
| high_mc_num_trades |
0 |
| high_mc_sharpe_annualized |
|
| high_mc_trade_return_per_trade_bp |
|
| low_mc_pnl_final |
31.184M |
| low_mc_trade_notional |
14232.407M |
| low_mc_num_trades |
6,216 |
| low_mc_sharpe_annualized |
9.04896 |
| low_mc_trade_return_per_trade_bp |
21.91bp |
| model_zscore_pnl_final |
4666.324M |
| hedge_zscore_pnl_final |
772.657M |
| force_zscore_pnl_final |
0.000M |
| funding_fee_pnl_final |
0.000M |
| funding_event_count |
0 |
| model_win_rate_20m |
57.49% |
| hedge_win_rate_20m |
43.00% |
| force_win_rate_20m |
|
| model_win_rate_btc_adj_20m |
57.49% |
| hedge_win_rate_btc_adj_20m |
43.00% |
| force_win_rate_btc_adj_20m |
|
MC Segment KPI
segment in [total, high, low] computed by the same metric function over coin subsets
trade_return_per_trade_bp = pnl_final / trade_notional * 10000
| segment |
pnl_final |
trade_notional |
num_trades |
sharpe_annualized |
trade_return_per_trade_bp |
| total |
3.11837e+07 |
1.42324e+10 |
6216 |
9.04896 |
21.9104 |
| high |
0 |
0 |
0 |
|
|
| low |
3.11837e+07 |
1.42324e+10 |
6216 |
9.04896 |
21.9104 |
Quality By Horizon (Model)
quality = side_sign * (mid_price(next_n_bars) - execution_price) / execution_price - (fee / notional)
quality_btc_adj = quality - side_sign * ((btc_mid(t+n) - btc_mid(t)) / btc_mid(t))
quality_per_notional = quality_pnl / sum(notional_usdt)
quality_per_notional_bp = quality_per_notional * 10000
| n_min |
pair_count |
quality_pnl_final |
quality_per_notional |
quality_per_notional_bp |
win_rate |
reg_a |
reg_b |
reg_r2 |
quality_btc_adj_pnl_final |
quality_btc_adj_per_notional |
quality_btc_adj_per_notional_bp |
win_rate_btc_adj |
| 5 |
4215 |
9.88124e+06 |
0.00103605 |
10.3605 |
0.553262 |
-0.000891726 |
0.00141427 |
0.000313052 |
9.88124e+06 |
0.00103605 |
10.3605 |
0.553262 |
| 10 |
4215 |
1.15097e+07 |
0.00120679 |
12.0679 |
0.571767 |
-0.000656601 |
0.00143376 |
0.000128401 |
1.15097e+07 |
0.00120679 |
12.0679 |
0.571767 |
| 20 |
4213 |
1.10302e+07 |
0.00115711 |
11.5711 |
0.574887 |
-0.00163637 |
0.00194583 |
0.000483198 |
1.10302e+07 |
0.00115711 |
11.5711 |
0.574887 |
| 30 |
4212 |
1.55918e+07 |
0.00163607 |
16.3607 |
0.58452 |
-0.00138162 |
0.00226365 |
0.00025023 |
1.55918e+07 |
0.00163607 |
16.3607 |
0.58452 |
| 60 |
4211 |
2.35488e+07 |
0.00247166 |
24.7166 |
0.579435 |
0.000265306 |
0.00223552 |
5.33782e-06 |
2.35488e+07 |
0.00247166 |
24.7166 |
0.579435 |
| 120 |
4184 |
2.98775e+07 |
0.00315808 |
31.5808 |
0.589149 |
-0.000814738 |
0.00356347 |
2.67694e-05 |
2.98775e+07 |
0.00315808 |
31.5808 |
0.589149 |
| 240 |
4151 |
3.40664e+07 |
0.00363265 |
36.3265 |
0.573115 |
2.70713e-05 |
0.0037283 |
1.82569e-08 |
3.40664e+07 |
0.00363265 |
36.3265 |
0.573115 |