Skip to content
Draft
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
The table of contents is too big for display.
Diff view
Diff view
  •  
  •  
  •  
230 changes: 229 additions & 1 deletion Common/Data/Fundamental/FundamentalProperty.cs

Large diffs are not rendered by default.

13 changes: 8 additions & 5 deletions Common/Data/Fundamental/Generated/AccountsPayableBalanceSheet.cs
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
/*
/*
* QUANTCONNECT.COM - Democratizing Finance, Empowering Individuals.
* Lean Algorithmic Trading Engine v2.0. Copyright 2023 QuantConnect Corporation.
*
Expand Down Expand Up @@ -37,13 +37,15 @@ public class AccountsPayableBalanceSheet : MultiPeriodField
/// Gets/sets the OneMonth period value for the field
/// </summary>
[JsonProperty("1M")]
public double OneMonth => FundamentalService.Get<double>(TimeProvider.GetUtcNow(), SecurityIdentifier, FundamentalProperty.FinancialStatements_BalanceSheet_AccountsPayable_OneMonth);
[Obsolete("AccountsPayable.OneMonth was retired by Morningstar in 2026; use AccountsPayable.ThreeMonths (also available: SixMonths, TwelveMonths).")]
public double OneMonth => throw new NotSupportedException("AccountsPayable.OneMonth was retired by Morningstar in 2026; use AccountsPayable.ThreeMonths (also available: SixMonths, TwelveMonths).");

/// <summary>
/// Gets/sets the TwoMonths period value for the field
/// </summary>
[JsonProperty("2M")]
public double TwoMonths => FundamentalService.Get<double>(TimeProvider.GetUtcNow(), SecurityIdentifier, FundamentalProperty.FinancialStatements_BalanceSheet_AccountsPayable_TwoMonths);
[Obsolete("AccountsPayable.TwoMonths was retired by Morningstar in 2026; use AccountsPayable.ThreeMonths (also available: SixMonths, TwelveMonths).")]
public double TwoMonths => throw new NotSupportedException("AccountsPayable.TwoMonths was retired by Morningstar in 2026; use AccountsPayable.ThreeMonths (also available: SixMonths, TwelveMonths).");

/// <summary>
/// Gets/sets the ThreeMonths period value for the field
Expand All @@ -61,7 +63,8 @@ public class AccountsPayableBalanceSheet : MultiPeriodField
/// Gets/sets the NineMonths period value for the field
/// </summary>
[JsonProperty("9M")]
public double NineMonths => FundamentalService.Get<double>(TimeProvider.GetUtcNow(), SecurityIdentifier, FundamentalProperty.FinancialStatements_BalanceSheet_AccountsPayable_NineMonths);
[Obsolete("AccountsPayable.NineMonths was retired by Morningstar in 2026; use AccountsPayable.ThreeMonths (also available: SixMonths, TwelveMonths).")]
public double NineMonths => throw new NotSupportedException("AccountsPayable.NineMonths was retired by Morningstar in 2026; use AccountsPayable.ThreeMonths (also available: SixMonths, TwelveMonths).");

/// <summary>
/// Gets/sets the TwelveMonths period value for the field
Expand Down Expand Up @@ -97,7 +100,7 @@ public override double Value
public override IReadOnlyDictionary<string, double> GetPeriodValues()
{
var result = new Dictionary<string, double>();
foreach (var kvp in new[] { new Tuple<string, double>("1M",OneMonth), new Tuple<string, double>("2M",TwoMonths), new Tuple<string, double>("3M",ThreeMonths), new Tuple<string, double>("6M",SixMonths), new Tuple<string, double>("9M",NineMonths), new Tuple<string, double>("12M",TwelveMonths) })
foreach (var kvp in new[] { new Tuple<string, double>("3M",ThreeMonths), new Tuple<string, double>("6M",SixMonths), new Tuple<string, double>("12M",TwelveMonths) })
{
if(!BaseFundamentalDataProvider.IsNone(typeof(double), kvp.Item2))
{
Expand Down
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
/*
/*
* QUANTCONNECT.COM - Democratizing Finance, Empowering Individuals.
* Lean Algorithmic Trading Engine v2.0. Copyright 2023 QuantConnect Corporation.
*
Expand Down Expand Up @@ -37,13 +37,15 @@ public class AccountsReceivableBalanceSheet : MultiPeriodField
/// Gets/sets the OneMonth period value for the field
/// </summary>
[JsonProperty("1M")]
public double OneMonth => FundamentalService.Get<double>(TimeProvider.GetUtcNow(), SecurityIdentifier, FundamentalProperty.FinancialStatements_BalanceSheet_AccountsReceivable_OneMonth);
[Obsolete("AccountsReceivable.OneMonth was retired by Morningstar in 2026; use AccountsReceivable.ThreeMonths (also available: SixMonths, TwelveMonths).")]
public double OneMonth => throw new NotSupportedException("AccountsReceivable.OneMonth was retired by Morningstar in 2026; use AccountsReceivable.ThreeMonths (also available: SixMonths, TwelveMonths).");

/// <summary>
/// Gets/sets the TwoMonths period value for the field
/// </summary>
[JsonProperty("2M")]
public double TwoMonths => FundamentalService.Get<double>(TimeProvider.GetUtcNow(), SecurityIdentifier, FundamentalProperty.FinancialStatements_BalanceSheet_AccountsReceivable_TwoMonths);
[Obsolete("AccountsReceivable.TwoMonths was retired by Morningstar in 2026; use AccountsReceivable.ThreeMonths (also available: SixMonths, TwelveMonths).")]
public double TwoMonths => throw new NotSupportedException("AccountsReceivable.TwoMonths was retired by Morningstar in 2026; use AccountsReceivable.ThreeMonths (also available: SixMonths, TwelveMonths).");

/// <summary>
/// Gets/sets the ThreeMonths period value for the field
Expand All @@ -61,7 +63,8 @@ public class AccountsReceivableBalanceSheet : MultiPeriodField
/// Gets/sets the NineMonths period value for the field
/// </summary>
[JsonProperty("9M")]
public double NineMonths => FundamentalService.Get<double>(TimeProvider.GetUtcNow(), SecurityIdentifier, FundamentalProperty.FinancialStatements_BalanceSheet_AccountsReceivable_NineMonths);
[Obsolete("AccountsReceivable.NineMonths was retired by Morningstar in 2026; use AccountsReceivable.ThreeMonths (also available: SixMonths, TwelveMonths).")]
public double NineMonths => throw new NotSupportedException("AccountsReceivable.NineMonths was retired by Morningstar in 2026; use AccountsReceivable.ThreeMonths (also available: SixMonths, TwelveMonths).");

/// <summary>
/// Gets/sets the TwelveMonths period value for the field
Expand Down Expand Up @@ -97,7 +100,7 @@ public override double Value
public override IReadOnlyDictionary<string, double> GetPeriodValues()
{
var result = new Dictionary<string, double>();
foreach (var kvp in new[] { new Tuple<string, double>("1M",OneMonth), new Tuple<string, double>("2M",TwoMonths), new Tuple<string, double>("3M",ThreeMonths), new Tuple<string, double>("6M",SixMonths), new Tuple<string, double>("9M",NineMonths), new Tuple<string, double>("12M",TwelveMonths) })
foreach (var kvp in new[] { new Tuple<string, double>("3M",ThreeMonths), new Tuple<string, double>("6M",SixMonths), new Tuple<string, double>("12M",TwelveMonths) })
{
if(!BaseFundamentalDataProvider.IsNone(typeof(double), kvp.Item2))
{
Expand Down
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
/*
/*
* QUANTCONNECT.COM - Democratizing Finance, Empowering Individuals.
* Lean Algorithmic Trading Engine v2.0. Copyright 2023 QuantConnect Corporation.
*
Expand Down Expand Up @@ -37,52 +37,46 @@ public class AccruedInterestReceivableBalanceSheet : MultiPeriodField
/// Gets/sets the TwoMonths period value for the field
/// </summary>
[JsonProperty("2M")]
public double TwoMonths => FundamentalService.Get<double>(TimeProvider.GetUtcNow(), SecurityIdentifier, FundamentalProperty.FinancialStatements_BalanceSheet_AccruedInterestReceivable_TwoMonths);
[Obsolete("AccruedInterestReceivable was retired by Morningstar in 2026 for all periods; no replacement is available.")]
public double TwoMonths => throw new NotSupportedException("AccruedInterestReceivable was retired by Morningstar in 2026 for all periods; no replacement is available.");

/// <summary>
/// Gets/sets the ThreeMonths period value for the field
/// </summary>
[JsonProperty("3M")]
public double ThreeMonths => FundamentalService.Get<double>(TimeProvider.GetUtcNow(), SecurityIdentifier, FundamentalProperty.FinancialStatements_BalanceSheet_AccruedInterestReceivable_ThreeMonths);
[Obsolete("AccruedInterestReceivable was retired by Morningstar in 2026 for all periods; no replacement is available.")]
public double ThreeMonths => throw new NotSupportedException("AccruedInterestReceivable was retired by Morningstar in 2026 for all periods; no replacement is available.");

/// <summary>
/// Gets/sets the SixMonths period value for the field
/// </summary>
[JsonProperty("6M")]
public double SixMonths => FundamentalService.Get<double>(TimeProvider.GetUtcNow(), SecurityIdentifier, FundamentalProperty.FinancialStatements_BalanceSheet_AccruedInterestReceivable_SixMonths);
[Obsolete("AccruedInterestReceivable was retired by Morningstar in 2026 for all periods; no replacement is available.")]
public double SixMonths => throw new NotSupportedException("AccruedInterestReceivable was retired by Morningstar in 2026 for all periods; no replacement is available.");

/// <summary>
/// Gets/sets the NineMonths period value for the field
/// </summary>
[JsonProperty("9M")]
public double NineMonths => FundamentalService.Get<double>(TimeProvider.GetUtcNow(), SecurityIdentifier, FundamentalProperty.FinancialStatements_BalanceSheet_AccruedInterestReceivable_NineMonths);
[Obsolete("AccruedInterestReceivable was retired by Morningstar in 2026 for all periods; no replacement is available.")]
public double NineMonths => throw new NotSupportedException("AccruedInterestReceivable was retired by Morningstar in 2026 for all periods; no replacement is available.");

/// <summary>
/// Gets/sets the TwelveMonths period value for the field
/// </summary>
[JsonProperty("12M")]
public double TwelveMonths => FundamentalService.Get<double>(TimeProvider.GetUtcNow(), SecurityIdentifier, FundamentalProperty.FinancialStatements_BalanceSheet_AccruedInterestReceivable_TwelveMonths);
[Obsolete("AccruedInterestReceivable was retired by Morningstar in 2026 for all periods; no replacement is available.")]
public double TwelveMonths => throw new NotSupportedException("AccruedInterestReceivable was retired by Morningstar in 2026 for all periods; no replacement is available.");

/// <summary>
/// Returns true if the field contains a value for the default period
/// </summary>
public override bool HasValue => !BaseFundamentalDataProvider.IsNone(typeof(double), FundamentalService.Get<double>(TimeProvider.GetUtcNow(), SecurityIdentifier, FundamentalProperty.FinancialStatements_BalanceSheet_AccruedInterestReceivable_TwelveMonths));
public override bool HasValue => false;

/// <summary>
/// Returns the default value for the field
/// </summary>
public override double Value
{
get
{
var defaultValue = FundamentalService.Get<double>(TimeProvider.GetUtcNow(), SecurityIdentifier, FundamentalProperty.FinancialStatements_BalanceSheet_AccruedInterestReceivable_TwelveMonths);
if (!BaseFundamentalDataProvider.IsNone(typeof(double), defaultValue))
{
return defaultValue;
}
return base.Value;
}
}
public override double Value => throw new NotSupportedException("AccruedInterestReceivable was retired by Morningstar in 2026 for all periods; no replacement is available.");

/// <summary>
/// Gets a dictionary of period names and values for the field
Expand All @@ -91,7 +85,7 @@ public override double Value
public override IReadOnlyDictionary<string, double> GetPeriodValues()
{
var result = new Dictionary<string, double>();
foreach (var kvp in new[] { new Tuple<string, double>("2M",TwoMonths), new Tuple<string, double>("3M",ThreeMonths), new Tuple<string, double>("6M",SixMonths), new Tuple<string, double>("9M",NineMonths), new Tuple<string, double>("12M",TwelveMonths) })
foreach (var kvp in System.Array.Empty<Tuple<string, double>>())
{
if(!BaseFundamentalDataProvider.IsNone(typeof(double), kvp.Item2))
{
Expand Down
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
/*
/*
* QUANTCONNECT.COM - Democratizing Finance, Empowering Individuals.
* Lean Algorithmic Trading Engine v2.0. Copyright 2023 QuantConnect Corporation.
*
Expand Down Expand Up @@ -37,40 +37,32 @@ public class AccruedInvestmentIncomeBalanceSheet : MultiPeriodField
/// Gets/sets the ThreeMonths period value for the field
/// </summary>
[JsonProperty("3M")]
public double ThreeMonths => FundamentalService.Get<double>(TimeProvider.GetUtcNow(), SecurityIdentifier, FundamentalProperty.FinancialStatements_BalanceSheet_AccruedInvestmentIncome_ThreeMonths);
[Obsolete("AccruedInvestmentIncome was retired by Morningstar in 2026 for all periods; no replacement is available.")]
public double ThreeMonths => throw new NotSupportedException("AccruedInvestmentIncome was retired by Morningstar in 2026 for all periods; no replacement is available.");

/// <summary>
/// Gets/sets the NineMonths period value for the field
/// </summary>
[JsonProperty("6M")]
public double SixMonths => FundamentalService.Get<double>(TimeProvider.GetUtcNow(), SecurityIdentifier, FundamentalProperty.FinancialStatements_BalanceSheet_AccruedInvestmentIncome_SixMonths);
[Obsolete("AccruedInvestmentIncome was retired by Morningstar in 2026 for all periods; no replacement is available.")]
public double SixMonths => throw new NotSupportedException("AccruedInvestmentIncome was retired by Morningstar in 2026 for all periods; no replacement is available.");

/// <summary>
/// Gets/sets the TwelveMonths period value for the field
/// </summary>
[JsonProperty("12M")]
public double TwelveMonths => FundamentalService.Get<double>(TimeProvider.GetUtcNow(), SecurityIdentifier, FundamentalProperty.FinancialStatements_BalanceSheet_AccruedInvestmentIncome_TwelveMonths);
[Obsolete("AccruedInvestmentIncome was retired by Morningstar in 2026 for all periods; no replacement is available.")]
public double TwelveMonths => throw new NotSupportedException("AccruedInvestmentIncome was retired by Morningstar in 2026 for all periods; no replacement is available.");

/// <summary>
/// Returns true if the field contains a value for the default period
/// </summary>
public override bool HasValue => !BaseFundamentalDataProvider.IsNone(typeof(double), FundamentalService.Get<double>(TimeProvider.GetUtcNow(), SecurityIdentifier, FundamentalProperty.FinancialStatements_BalanceSheet_AccruedInvestmentIncome_TwelveMonths));
public override bool HasValue => false;

/// <summary>
/// Returns the default value for the field
/// </summary>
public override double Value
{
get
{
var defaultValue = FundamentalService.Get<double>(TimeProvider.GetUtcNow(), SecurityIdentifier, FundamentalProperty.FinancialStatements_BalanceSheet_AccruedInvestmentIncome_TwelveMonths);
if (!BaseFundamentalDataProvider.IsNone(typeof(double), defaultValue))
{
return defaultValue;
}
return base.Value;
}
}
public override double Value => throw new NotSupportedException("AccruedInvestmentIncome was retired by Morningstar in 2026 for all periods; no replacement is available.");

/// <summary>
/// Gets a dictionary of period names and values for the field
Expand All @@ -79,7 +71,7 @@ public override double Value
public override IReadOnlyDictionary<string, double> GetPeriodValues()
{
var result = new Dictionary<string, double>();
foreach (var kvp in new[] { new Tuple<string, double>("3M",ThreeMonths), new Tuple<string, double>("6M",SixMonths), new Tuple<string, double>("12M",TwelveMonths) })
foreach (var kvp in System.Array.Empty<Tuple<string, double>>())
{
if(!BaseFundamentalDataProvider.IsNone(typeof(double), kvp.Item2))
{
Expand Down
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
/*
/*
* QUANTCONNECT.COM - Democratizing Finance, Empowering Individuals.
* Lean Algorithmic Trading Engine v2.0. Copyright 2023 QuantConnect Corporation.
*
Expand Down Expand Up @@ -37,7 +37,8 @@ public class AccruedLiabilitiesTotalBalanceSheet : MultiPeriodField
/// Gets/sets the TwoMonths period value for the field
/// </summary>
[JsonProperty("2M")]
public double TwoMonths => FundamentalService.Get<double>(TimeProvider.GetUtcNow(), SecurityIdentifier, FundamentalProperty.FinancialStatements_BalanceSheet_AccruedLiabilitiesTotal_TwoMonths);
[Obsolete("AccruedLiabilitiesTotal.TwoMonths was retired by Morningstar in 2026; use AccruedLiabilitiesTotal.ThreeMonths (also available: TwelveMonths).")]
public double TwoMonths => throw new NotSupportedException("AccruedLiabilitiesTotal.TwoMonths was retired by Morningstar in 2026; use AccruedLiabilitiesTotal.ThreeMonths (also available: TwelveMonths).");

/// <summary>
/// Gets/sets the ThreeMonths period value for the field
Expand Down Expand Up @@ -79,7 +80,7 @@ public override double Value
public override IReadOnlyDictionary<string, double> GetPeriodValues()
{
var result = new Dictionary<string, double>();
foreach (var kvp in new[] { new Tuple<string, double>("2M",TwoMonths), new Tuple<string, double>("3M",ThreeMonths), new Tuple<string, double>("12M",TwelveMonths) })
foreach (var kvp in new[] { new Tuple<string, double>("3M",ThreeMonths), new Tuple<string, double>("12M",TwelveMonths) })
{
if(!BaseFundamentalDataProvider.IsNone(typeof(double), kvp.Item2))
{
Expand Down
Loading
Loading