diff --git a/Common/SymbolRepresentation.cs b/Common/SymbolRepresentation.cs index 882ada92ffdf..076d2f1a04dc 100644 --- a/Common/SymbolRepresentation.cs +++ b/Common/SymbolRepresentation.cs @@ -34,7 +34,7 @@ namespace QuantConnect public static class SymbolRepresentation { // Define the regex as a private readonly static field and compile it - private static readonly Regex _optionTickerRegex = new Regex(@"^([A-Z0-9]+)\s*(\d{6})([CP])(\d{8})$", RegexOptions.IgnoreCase | RegexOptions.Compiled); + private static readonly Regex _optionTickerRegex = new Regex(@"^([A-Z0-9\.]+)\s*(\d{6})([CP])(\d{8})$", RegexOptions.IgnoreCase | RegexOptions.Compiled); /// /// Class contains future ticker properties returned by ParseFutureTicker() diff --git a/Tests/Common/SymbolRepresentationTests.cs b/Tests/Common/SymbolRepresentationTests.cs index beca49ad006c..30037d34a2f4 100644 --- a/Tests/Common/SymbolRepresentationTests.cs +++ b/Tests/Common/SymbolRepresentationTests.cs @@ -44,6 +44,7 @@ public void OptionSymbolAliasMatchesOSI() [TestCase("V 231211P00220000", SecurityType.Option, OptionStyle.American, "V", "V", "V", 220.00, "2023-12-11")] [TestCase("JPM 240501C00130750", SecurityType.Option, OptionStyle.American, "JPM", "JPM", "JPM", 130.75, "2024-05-01")] [TestCase("IBM 250212P00145000", SecurityType.Option, OptionStyle.American, "IBM", "IBM", "IBM", 145.00, "2025-02-12")] + [TestCase("BRK.B 260206C00495000", SecurityType.Option, OptionStyle.American, "BRK.B", "BRK.B", "BRK.B", 495.00, "2026-02-06")] [TestCase("DIS 230630C00075000", SecurityType.Option, OptionStyle.American, "DIS", "DIS", "DIS", 75.00, "2023-06-30")] [TestCase("ORCL 231030C00065000", SecurityType.Option, OptionStyle.American, "ORCL", "ORCL", "ORCL", 65.00, "2023-10-30")] [TestCase("CSCO 230501P00045000", SecurityType.Option, OptionStyle.American, "CSCO", "CSCO", "CSCO", 45.00, "2023-05-01")]