统一风控策略执行别名
This commit is contained in:
@@ -272,11 +272,21 @@ pub struct StrategyRiskPolicySpec {
|
|||||||
alias = "blacklist"
|
alias = "blacklist"
|
||||||
)]
|
)]
|
||||||
pub blacklisted_symbols: Vec<String>,
|
pub blacklisted_symbols: Vec<String>,
|
||||||
#[serde(default, alias = "volume_limit_enabled")]
|
#[serde(
|
||||||
|
default,
|
||||||
|
alias = "volume_limit_enabled",
|
||||||
|
alias = "volume_limit",
|
||||||
|
alias = "volumeLimit"
|
||||||
|
)]
|
||||||
pub volume_limit_enabled: Option<bool>,
|
pub volume_limit_enabled: Option<bool>,
|
||||||
#[serde(default, alias = "volume_percent")]
|
#[serde(default, alias = "volume_percent")]
|
||||||
pub volume_percent: Option<f64>,
|
pub volume_percent: Option<f64>,
|
||||||
#[serde(default, alias = "liquidity_limit_enabled")]
|
#[serde(
|
||||||
|
default,
|
||||||
|
alias = "liquidity_limit_enabled",
|
||||||
|
alias = "liquidity_limit",
|
||||||
|
alias = "liquidityLimit"
|
||||||
|
)]
|
||||||
pub liquidity_limit_enabled: Option<bool>,
|
pub liquidity_limit_enabled: Option<bool>,
|
||||||
#[serde(default, alias = "commission_rate")]
|
#[serde(default, alias = "commission_rate")]
|
||||||
pub commission_rate: Option<f64>,
|
pub commission_rate: Option<f64>,
|
||||||
@@ -3190,6 +3200,8 @@ mod tests {
|
|||||||
"reject_st_buy": 0,
|
"reject_st_buy": 0,
|
||||||
"volumePercent": 0.25,
|
"volumePercent": 0.25,
|
||||||
"volume_percent": 25,
|
"volume_percent": 25,
|
||||||
|
"volume_limit": false,
|
||||||
|
"liquidityLimit": true,
|
||||||
"minimumCommission": 5,
|
"minimumCommission": 5,
|
||||||
"minimum_commission": "5"
|
"minimum_commission": "5"
|
||||||
}
|
}
|
||||||
@@ -3200,6 +3212,8 @@ mod tests {
|
|||||||
|
|
||||||
assert!(!cfg.risk_config.static_rules.reject_st_buy);
|
assert!(!cfg.risk_config.static_rules.reject_st_buy);
|
||||||
assert!((cfg.risk_config.trading_constraints.volume_percent - 0.25).abs() < 1e-12);
|
assert!((cfg.risk_config.trading_constraints.volume_percent - 0.25).abs() < 1e-12);
|
||||||
|
assert!(!cfg.volume_limit);
|
||||||
|
assert!(cfg.liquidity_limit);
|
||||||
assert_eq!(cfg.risk_config.trading_constraints.minimum_commission, 5.0);
|
assert_eq!(cfg.risk_config.trading_constraints.minimum_commission, 5.0);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user