Add platform expression strategy runtime
This commit is contained in:
@@ -843,6 +843,19 @@ impl DataSet {
|
||||
symbol: symbol.to_string(),
|
||||
})
|
||||
}
|
||||
|
||||
pub fn require_factor(
|
||||
&self,
|
||||
date: NaiveDate,
|
||||
symbol: &str,
|
||||
) -> Result<&DailyFactorSnapshot, DataSetError> {
|
||||
self.factor(date, symbol)
|
||||
.ok_or_else(|| DataSetError::MissingSnapshot {
|
||||
kind: "factor",
|
||||
date,
|
||||
symbol: symbol.to_string(),
|
||||
})
|
||||
}
|
||||
}
|
||||
|
||||
fn read_instruments(path: &Path) -> Result<Vec<Instrument>, DataSetError> {
|
||||
|
||||
@@ -7,6 +7,7 @@ pub mod events;
|
||||
pub mod instrument;
|
||||
pub mod metrics;
|
||||
pub mod portfolio;
|
||||
pub mod platform_expr_strategy;
|
||||
pub mod rules;
|
||||
pub mod strategy;
|
||||
pub mod universe;
|
||||
@@ -27,6 +28,7 @@ pub use events::{AccountEvent, FillEvent, OrderEvent, OrderSide, OrderStatus, Po
|
||||
pub use instrument::Instrument;
|
||||
pub use metrics::{BacktestMetrics, compute_backtest_metrics};
|
||||
pub use portfolio::{CashReceivable, HoldingSummary, PortfolioState, Position};
|
||||
pub use platform_expr_strategy::{PlatformExprStrategy, PlatformExprStrategyConfig};
|
||||
pub use rules::{ChinaEquityRuleHooks, EquityRuleHooks, RuleCheck};
|
||||
pub use strategy::{
|
||||
CnSmallCapRotationConfig, CnSmallCapRotationStrategy, JqMicroCapConfig, JqMicroCapStrategy,
|
||||
|
||||
1210
crates/fidc-core/src/platform_expr_strategy.rs
Normal file
1210
crates/fidc-core/src/platform_expr_strategy.rs
Normal file
File diff suppressed because it is too large
Load Diff
Reference in New Issue
Block a user