实现FIDC配置化风控与交易成本
This commit is contained in:
@@ -18,6 +18,7 @@ use crate::futures::{
|
||||
};
|
||||
use crate::metrics::{BacktestMetrics, compute_backtest_metrics};
|
||||
use crate::portfolio::{CashReceivable, HoldingSummary, PortfolioState};
|
||||
use crate::risk_control::FidcRiskDecisionAudit;
|
||||
use crate::rules::EquityRuleHooks;
|
||||
use crate::scheduler::{ScheduleRule, ScheduleStage, Scheduler, default_stage_time};
|
||||
use crate::strategy::{
|
||||
@@ -88,6 +89,7 @@ pub struct BacktestResult {
|
||||
pub strategy_name: String,
|
||||
pub equity_curve: Vec<DailyEquityPoint>,
|
||||
pub benchmark_series: Vec<BenchmarkSnapshot>,
|
||||
pub risk_decisions: Vec<FidcRiskDecisionAudit>,
|
||||
pub order_events: Vec<OrderEvent>,
|
||||
pub fills: Vec<FillEvent>,
|
||||
pub position_events: Vec<PositionEvent>,
|
||||
@@ -1679,6 +1681,7 @@ where
|
||||
.unwrap_or(true)
|
||||
})
|
||||
.collect(),
|
||||
risk_decisions: Vec::new(),
|
||||
order_events: Vec::new(),
|
||||
fills: Vec::new(),
|
||||
position_events: Vec::new(),
|
||||
@@ -2745,6 +2748,7 @@ where
|
||||
let day_fills = report.fill_events.clone();
|
||||
let broker_diagnostics = report.diagnostics.clone();
|
||||
self.extend_result(&mut result, report);
|
||||
result.risk_decisions.extend(decision.risk_decisions);
|
||||
|
||||
let benchmark =
|
||||
self.data
|
||||
|
||||
Reference in New Issue
Block a user