diff --git a/ibflex/enums.py b/ibflex/enums.py
index 64a3120..7b4a8ad 100644
--- a/ibflex/enums.py
+++ b/ibflex/enums.py
@@ -77,6 +77,7 @@ class Code(str, enum.Enum):
INVESTOR = "INV" # Investment Transfer from Investor
MARGINLOW = "L" # Ordered by IB (Margin Violation)
WASHSALE = "LD" # Adjusted by Loss Disallowed from Wash Sale
+ LIQUIDATION_FORCED = "LF" # Forced Liquidation
LIFO = "LI" # Last In, First Out (LIFO) tax lot-matching method
LTCG = "LT" # Long-term P/L
LOAN = "Lo" # Direct Loan
diff --git a/tests/test_types.py b/tests/test_types.py
index 34279ea..f1161ab 100644
--- a/tests/test_types.py
+++ b/tests/test_types.py
@@ -757,6 +757,35 @@ def testParse(self):
self.assertEqual(instance.assetCategory, enums.AssetClass.CASH)
+class TradeLiquidationForcedTestCase(unittest.TestCase):
+ """Test parsing of Trade with LF (Forced Liquidation) notes code."""
+ data = ET.fromstring(
+ ('')
+ )
+
+ def testParse(self):
+ instance = parser.parse_data_element(self.data)
+ self.assertIsInstance(instance, Types.Trade)
+ self.assertEqual(instance.currency, "USD")
+ self.assertEqual(instance.symbol, "AAPL")
+ self.assertEqual(instance.description, "APPLE INC")
+ self.assertEqual(instance.dateTime, datetime.datetime(2025, 1, 15, 14, 30, 45))
+ self.assertEqual(instance.tradeDate, datetime.date(2025, 1, 15))
+ self.assertEqual(instance.quantity, decimal.Decimal("10.0"))
+ self.assertEqual(instance.tradePrice, decimal.Decimal("150.0"))
+ self.assertEqual(instance.proceeds, decimal.Decimal("1500.0"))
+ self.assertEqual(instance.notes, (enums.Code.LIQUIDATION_FORCED, ))
+ self.assertEqual(instance.buySell, enums.BuySell.SELL)
+ self.assertEqual(instance.levelOfDetail, "EXECUTION")
+ self.assertEqual(instance.assetCategory, enums.AssetClass.STOCK)
+
+
class OptionEAETestCase(unittest.TestCase):
data = ET.fromstring(
('