merge latest engine main before portfolio risk integration
This commit is contained in:
@@ -14,7 +14,7 @@ use crate::data::EligibleUniverseSnapshot;
|
|||||||
use crate::data::{
|
use crate::data::{
|
||||||
BACKWARD_ADJUSTMENT_FACTOR_FIELD, CandidateEligibility, DailyFactorSnapshot,
|
BACKWARD_ADJUSTMENT_FACTOR_FIELD, CandidateEligibility, DailyFactorSnapshot,
|
||||||
DailyMarketSnapshot, DailySnapshotView, DataSet, PriceField, decision_free_float_cap_bn,
|
DailyMarketSnapshot, DailySnapshotView, DataSet, PriceField, decision_free_float_cap_bn,
|
||||||
NumericFactorMap, decision_market_cap_bn,
|
decision_market_cap_bn,
|
||||||
};
|
};
|
||||||
use crate::engine::BacktestError;
|
use crate::engine::BacktestError;
|
||||||
use crate::events::{OrderSide, ProcessEvent, ProcessEventKind};
|
use crate::events::{OrderSide, ProcessEvent, ProcessEventKind};
|
||||||
@@ -974,7 +974,7 @@ struct StockExpressionState {
|
|||||||
stock_volume_ma60: f64,
|
stock_volume_ma60: f64,
|
||||||
stock_volume_ma100: f64,
|
stock_volume_ma100: f64,
|
||||||
current_series_end: Option<usize>,
|
current_series_end: Option<usize>,
|
||||||
extra_factors: NumericFactorMap,
|
extra_factors: BTreeMap<String, f64>,
|
||||||
extra_text_factors: BTreeMap<String, String>,
|
extra_text_factors: BTreeMap<String, String>,
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -4806,7 +4806,7 @@ impl PlatformExprStrategy {
|
|||||||
self.stock_extra_factor_map_required
|
self.stock_extra_factor_map_required
|
||||||
|| self.stock_extra_factor_identifiers.contains(field.as_ref())
|
|| self.stock_extra_factor_identifiers.contains(field.as_ref())
|
||||||
})
|
})
|
||||||
.map(|(field, value)| (field.clone(), *value))
|
.map(|(field, value)| (field.to_string(), *value))
|
||||||
.collect()
|
.collect()
|
||||||
} else {
|
} else {
|
||||||
BTreeMap::new()
|
BTreeMap::new()
|
||||||
@@ -4824,7 +4824,7 @@ impl PlatformExprStrategy {
|
|||||||
.and_then(|row| row.extra_factors.get(field.as_str()))
|
.and_then(|row| row.extra_factors.get(field.as_str()))
|
||||||
.copied()
|
.copied()
|
||||||
.unwrap_or(f64::NAN);
|
.unwrap_or(f64::NAN);
|
||||||
extra_factors.insert(field.clone().into(), value);
|
extra_factors.insert(field.clone(), value);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@@ -4835,10 +4835,7 @@ impl PlatformExprStrategy {
|
|||||||
.contains(BACKWARD_ADJUSTMENT_FACTOR_FIELD))
|
.contains(BACKWARD_ADJUSTMENT_FACTOR_FIELD))
|
||||||
&& let Some(value) = factor.adjustment_factor_backward1
|
&& let Some(value) = factor.adjustment_factor_backward1
|
||||||
{
|
{
|
||||||
extra_factors.insert(
|
extra_factors.insert(BACKWARD_ADJUSTMENT_FACTOR_FIELD.to_string(), value);
|
||||||
std::borrow::Cow::Borrowed(BACKWARD_ADJUSTMENT_FACTOR_FIELD),
|
|
||||||
value,
|
|
||||||
);
|
|
||||||
}
|
}
|
||||||
|
|
||||||
let state = StockExpressionState {
|
let state = StockExpressionState {
|
||||||
|
|||||||
Reference in New Issue
Block a user