Files
gogo2/COBY/utils/validation.py
Dobromir Popov 622d059aae 18: tests, fixes
2025-08-05 14:11:49 +03:00

31 lines
771 B
Python

"""
Validation utilities for COBY system.
"""
import re
from typing import Any
def validate_symbol(symbol: str) -> bool:
"""Validate trading symbol format"""
if not symbol or not isinstance(symbol, str):
return False
# Basic symbol validation (letters and numbers, 3-12 chars)
pattern = r'^[A-Z0-9]{3,12}$'
return bool(re.match(pattern, symbol.upper()))
def validate_price(price: float) -> bool:
"""Validate price value"""
return isinstance(price, (int, float)) and price > 0
def validate_volume(volume: float) -> bool:
"""Validate volume value"""
return isinstance(volume, (int, float)) and volume >= 0
def validate_timestamp(timestamp: Any) -> bool:
"""Validate timestamp"""
return timestamp is not None