INNER CODE UNIT · Python
_strategy_parameter_names
jptsantossilva/BEC · bec/main.py:387
def _strategy_parameter_names(definition: dict) -> list[str]:
parameters = definition.get("parameters", {}) if isinstance(definition, dict) else {}
return list(parameters.keys()) if isinstance(parameters, dict) else []
def _optimizable_parameter_names(definition: dict) -> list[str]:
parameters = definition.get("parameters", {}) if isinstance(definition, dict) else {}
if not isinstance(parameters, dict):
return []
return [name for name, spec in parameters.items() if isinstance(spec, dict) and bool(spec.get("optimizable", False))]
def _primary_parameter_pair_names(definition: dict) -> tuple[str, str]:
names = _strategy_parameter_names(definition)
fast_name = next((name for name in names if str(name).lower() == "fast" or "fast" in str(name).lower()), "")
slow_name = next((name for name in names if str(name).lower() == "slow" or "slow" in str(name).lower()), "")
if fast_name and slow_name:
return fast_name, slow_name