Resetting utils subtree.
This commit is contained in:
@@ -177,7 +177,7 @@ class TradingSymbol(BaseModel):
|
||||
strike = instrument["strike"],
|
||||
expiryTs = date_time.to_timezone(
|
||||
datetime_object = datetime.datetime.combine(
|
||||
instrument["expiry"],
|
||||
TradingSymbol.parse_date_time(instrument["expiry"]),
|
||||
datetime.time(hour = 0, minute = 0, second = 0)
|
||||
),
|
||||
timezone = date_time.TIMEZONE_UTC
|
||||
@@ -190,23 +190,33 @@ class TradingSymbol(BaseModel):
|
||||
# ┗┛┗┻┗┗┗┻┗┻┗┗┗┛┛┗
|
||||
|
||||
@field_validator("expiryTs", mode = "before")
|
||||
def parse_date_time(cls, value):
|
||||
def parse_expiry(cls, value): return cls.parse_date_time(value)
|
||||
|
||||
@staticmethod
|
||||
def parse_date_time(value):
|
||||
|
||||
# If a null value was given,
|
||||
# we can't do anything:
|
||||
if not value: value = None
|
||||
|
||||
# If the input is a string:
|
||||
if isinstance(value, str):
|
||||
value = value.strip()
|
||||
value = date_time.parse_date_time(
|
||||
input_value = value,
|
||||
timezone = date_time.TIMEZONE_UTC
|
||||
timezone = date_time.TIMEZONE_UTC,
|
||||
date_formats = ["%Y-%m-%d"]
|
||||
)
|
||||
|
||||
# If the input is already a date-time object,
|
||||
# we just normalize the timestamp:
|
||||
if isinstance(value, datetime.datetime):
|
||||
value = date_time.to_timezone(
|
||||
value,
|
||||
timezone = date_time.TIMEZONE_UTC
|
||||
)
|
||||
|
||||
# Done here:
|
||||
return value
|
||||
|
||||
|
||||
|
||||
Reference in New Issue
Block a user