investfly.models.strategy.SecurityFilterExpression

Composable conditions for filtering securities in a strategy.

class SecurityFilterExpression:

Composable boolean expression evaluated for a security.

def breakByDataType( self) -> tuple[SecurityFilterExpression | None, SecurityFilterExpression | None, SecurityFilterExpression | None]:

Break the expression by data type. Returns: (quoteExpression, financialExpression, indicatorExpression) FilterGroups containing only financial fields and constants go to financialExpression. FilterGroups containing only quote fields and constants go to quoteExpression. All other FilterGroups (containing indicators) go to indicatorExpression.

def replaceVarInWithField(self) -> None:

Replace variable names with field names in the expression for financial and quote queries. This allows direct computation without variable resolution.

class FilterGroupBuilder:

Fluent builder for combining multiple security filter conditions.

class FilterConditionBuilder:

Fluent builder for completing one security filter comparison.