ZhuLinsen/daily_stock_analysis · error · ValueError
{field_name} must be an integer
Error message
{field_name} must be an integer What it means
Error "{field_name} must be an integer" thrown in ZhuLinsen/daily_stock_analysis.
Source
Thrown at src/services/decision_signal_service.py:1272
if not math.isfinite(number) or number <= 0:
raise ValueError(f"{field_name} must be a finite positive number")
return number
@staticmethod
def _validate_entry_range(fields: Dict[str, Any]) -> None:
entry_low = fields.get("entry_low")
entry_high = fields.get("entry_high")
if entry_low is not None and entry_high is not None and entry_low > entry_high:
raise ValueError("entry_low must be less than or equal to entry_high")
@staticmethod
def _optional_int(value: Any, field_name: str) -> Optional[int]:
if value in (None, ""):
return None
try:
return int(value)
except (TypeError, ValueError) as exc:
raise ValueError(f"{field_name} must be an integer") from exc
@staticmethod
def _parse_datetime(value: Any) -> Optional[datetime]:
if value in (None, ""):
return None
if isinstance(value, datetime):
return to_utc_naive_datetime(value)
if isinstance(value, str):
text = value.strip()
if not text:
return None
try:
parsed = datetime.fromisoformat(text.replace("Z", "+00:00"))
except ValueError as exc:
raise ValueError(f"invalid datetime value: {value}") from exc
return to_utc_naive_datetime(parsed)
raise ValueError(f"invalid datetime value: {value}")
View on GitHub (pinned to 5159bd72e8)
Solutions
- Provide the field as an integer value, not a string or float.
- Check the request payload or signal data source for the named field and convert it to an integer before submitting.
- If the value comes from user input, validate and coerce it with int() after checking isdigit() or a numeric parse.
When it happens
Trigger: Thrown at src/services/decision_signal_service.py:1272 when the library encounters an invalid state.
Common situations: Raised when a decision-signal integer field (e.g. horizon/period) is not an integer; occurs when the client sends a string or float for a field validated in decision_signal_service.
AI-assisted analysis of ZhuLinsen/daily_stock_analysis@5159bd72e8 (2026-08-15).
Data as JSON: /api/errors/3735f9654c753bd0.
Report an issue: GitHub.