Skip to content

Commit 21ed809

Browse files
authored
DOC: updates and bug fixes (#1125)
1 parent 8c76b47 commit 21ed809

File tree

20 files changed

+1128
-430
lines changed

20 files changed

+1128
-430
lines changed

python/rateslib/data/__instrument_spec.csv

Lines changed: 77 additions & 77 deletions
Large diffs are not rendered by default.

python/rateslib/data/fixings.py

Lines changed: 16 additions & 16 deletions
Original file line numberDiff line numberDiff line change
@@ -311,14 +311,14 @@ def is_cross(self) -> bool:
311311
"""Whether the fixing is a cross rate derived from other USD dominated fixings."""
312312
return self._is_cross
313313

314-
def _value_from_possible_inversion(self) -> DualTypes_:
314+
def _value_from_possible_inversion(self, identifier: str) -> DualTypes_:
315315
direct, inverted = self.pair, f"{self.pair[3:6]}{self.pair[0:3]}"
316316
try:
317-
state, timeseries, bounds = fixings.__getitem__(self._identifier + "_" + direct)
317+
state, timeseries, bounds = fixings.__getitem__(identifier + "_" + direct)
318318
exponent = 1.0
319319
except ValueError as e:
320320
try:
321-
state, timeseries, bounds = fixings.__getitem__(self._identifier + "_" + inverted)
321+
state, timeseries, bounds = fixings.__getitem__(identifier + "_" + inverted)
322322
exponent = -1.0
323323
except ValueError:
324324
raise e
@@ -333,33 +333,33 @@ def _value_from_possible_inversion(self) -> DualTypes_:
333333
self._value = v**exponent
334334
return self._value
335335

336-
def _value_from_cross(self) -> DualTypes_:
336+
def _value_from_cross(self, identifier: str) -> DualTypes_:
337337
lhs1, lhs2 = "usd" + self.pair[:3], self.pair[:3] + "usd"
338338
try:
339-
state_l, timeseries_l, bounds_l = fixings.__getitem__(self._identifier + "_" + lhs1)
339+
state_l, timeseries_l, bounds_l = fixings.__getitem__(identifier + "_" + lhs1)
340340
exponent_l = -1.0
341341
except ValueError:
342342
try:
343-
state_l, timeseries_l, bounds_l = fixings.__getitem__(self._identifier + "_" + lhs2)
343+
state_l, timeseries_l, bounds_l = fixings.__getitem__(identifier + "_" + lhs2)
344344
exponent_l = 1.0
345345
except ValueError:
346346
raise ValueError(
347347
"The LHS cross currency has no available fixing series, either "
348-
f"{self._identifier + +'_' + lhs1} or {self._identifier + '_' + lhs2}"
348+
f"{identifier + '_' + lhs1} or {identifier + '_' + lhs2}"
349349
)
350350

351351
rhs1, rhs2 = "usd" + self.pair[3:], self.pair[3:] + "usd"
352352
try:
353-
state_r, timeseries_r, bounds_r = fixings.__getitem__(self._identifier + "_" + rhs1)
353+
state_r, timeseries_r, bounds_r = fixings.__getitem__(identifier + "_" + rhs1)
354354
exponent_r = 1.0
355355
except ValueError:
356356
try:
357-
state_r, timeseries_r, bounds_r = fixings.__getitem__(self._identifier + "_" + rhs2)
357+
state_r, timeseries_r, bounds_r = fixings.__getitem__(identifier + "_" + rhs2)
358358
exponent_r = -1.0
359359
except ValueError:
360360
raise ValueError(
361361
"The RHS cross currency has no available fixing series, either "
362-
f"{self._identifier + '_' + lhs1} or {self._identifier + '_' + lhs2}"
362+
f"{identifier + '_' + lhs1} or {identifier + '_' + lhs2}"
363363
)
364364

365365
if hash(state_l + state_r) == self._state:
@@ -382,9 +382,9 @@ def value(self) -> DualTypes_:
382382
return NoInput(0)
383383
else:
384384
if self.is_cross:
385-
return self._value_from_cross()
385+
return self._value_from_cross(identifier=self._identifier)
386386
else:
387-
return self._value_from_possible_inversion()
387+
return self._value_from_possible_inversion(identifier=self._identifier)
388388

389389
def _lookup_and_calculate(
390390
self, timeseries: Series, bounds: tuple[datetime, datetime] | None
@@ -2537,12 +2537,12 @@ def _leg_fixings_to_list(rate_fixings: LegFixings, n_periods: int) -> list[Perio
25372537

25382538

25392539
__all__ = [
2540-
"_BaseFixing",
2541-
"IndexFixing",
2540+
"FloatRateSeries",
2541+
"FloatRateIndex",
25422542
"RFRFixing",
25432543
"IBORFixing",
25442544
"IBORStubFixing",
2545+
"IndexFixing",
25452546
"FXFixing",
2546-
"FloatRateSeries",
2547-
"FloatRateIndex",
2547+
"_BaseFixing",
25482548
]

python/rateslib/data/loader.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -451,4 +451,4 @@ def _find_neighbouring_tenors(
451451
return ret
452452

453453

454-
__all__ = ["_BaseFixingsLoader", "DefaultFixingsLoader", "Fixings"]
454+
__all__ = ["Fixings", "DefaultFixingsLoader", "_BaseFixingsLoader"]

0 commit comments

Comments
 (0)