INNER CODE UNIT · Python
_build_live_strategy_snapshot
jptsantossilva/BEC · bec/main.py:446
def _build_live_strategy_snapshot(strategy_id: str, definition: dict, parameters: dict, entry_state: dict | None = None) -> str:
if not isinstance(definition, dict) or definition.get("engine") != "bec_strategy_ast_v2":
return database.build_strategy_params_json(strategy_id)
snapshot = {
"engine": definition.get("engine", "bec_strategy_ast_v2"),
"definition": definition,
"parameters": strategy_engine.resolve_parameters(definition, parameters),
"risk": database.get_strategy_risk(strategy_id),
}
if entry_state:
snapshot["entry_state"] = dict(entry_state)
return json.dumps(snapshot, separators=(",", ":"))
def _apply_pair_to_parameters(definition: dict, parameters: dict, first_value=0, second_value=0, *, overwrite: bool = True) -> dict:
first_name, second_name = _primary_parameter_pair_names(definition)
result = dict(parameters)
first = _safe_int_or_zero(first_value)