File tree Expand file tree Collapse file tree
investing_algorithm_framework/domain Expand file tree Collapse file tree Original file line number Diff line number Diff line change @@ -275,8 +275,9 @@ def ensure_iso(value):
275275 return value
276276
277277 return {
278- "real_metrics" : self .real_metrics .to_dict ()
279- if self .real_metrics else None ,
278+ "real_metrics" : (
279+ self .real_metrics .to_dict () if self .real_metrics else None
280+ ),
280281 "permutated_metrics" : [
281282 pm .to_dict () for pm in self .permutated_metrics
282283 ],
Original file line number Diff line number Diff line change @@ -42,7 +42,9 @@ def resolve_backtest_path(
4242 format) and falls back to the legacy directory at
4343 ``<storage>/<algorithm_id>``.
4444 """
45- bundle = os .path .join (str (storage_directory ), f"{ algorithm_id } { BUNDLE_EXT } " )
45+ bundle = os .path .join (
46+ str (storage_directory ), f"{ algorithm_id } { BUNDLE_EXT } "
47+ )
4648 if os .path .isfile (bundle ):
4749 return bundle
4850 legacy = os .path .join (str (storage_directory ), algorithm_id )
Original file line number Diff line number Diff line change 11"""Fast ISO-8601 datetime parsing helper.
22
33``dateutil.parser.parse`` is the bottleneck in :class:`Backtest` loading
4- (see issue #487 profiling notes). The strings emitted by :py:meth:`Backtest.to_dict`
5- are always produced by :py:meth:`datetime.isoformat`, so the standard-library
4+ (see issue #487 profiling notes). The strings emitted by
5+ :py:meth:`Backtest.to_dict` are always produced by
6+ :py:meth:`datetime.isoformat`, so the standard-library
67:py:meth:`datetime.fromisoformat` parser handles them ~50x faster.
78
89This helper:
Original file line number Diff line number Diff line change 11from datetime import timezone
22
3- from dateutil import parser
4-
53from investing_algorithm_framework .domain .models .base_model import BaseModel
64from investing_algorithm_framework .domain .datetime_parsing import (
75 parse_datetime as _parse_dt ,
Original file line number Diff line number Diff line change 1- from dateutil .parser import parse
1+ from datetime import timezone
2+
23from investing_algorithm_framework .domain .datetime_parsing import (
34 parse_datetime as _parse_dt ,
45)
5- from datetime import timezone
66
77from investing_algorithm_framework .domain .models .base_model import BaseModel
88from investing_algorithm_framework .domain .models .order import OrderSide , Order
Original file line number Diff line number Diff line change 1- from dateutil .parser import parse
1+ from datetime import timezone , datetime
2+
23from investing_algorithm_framework .domain .datetime_parsing import (
34 parse_datetime as _parse_dt ,
45)
5- from datetime import timezone
6- from datetime import datetime
76
87from investing_algorithm_framework .domain .models .base_model import BaseModel
98
Original file line number Diff line number Diff line change 11from datetime import timezone , datetime
2- from dateutil . parser import parse
2+
33from investing_algorithm_framework .domain .datetime_parsing import (
44 parse_datetime as _parse_dt ,
55)
You can’t perform that action at this time.
0 commit comments