Lean  $LEAN_TAG$
Messages.Algorithm.Framework.Alphas.Analysis.cs
1 /*
2  * QUANTCONNECT.COM - Democratizing Finance, Empowering Individuals.
3  * Lean Algorithmic Trading Engine v2.0. Copyright 2014 QuantConnect Corporation.
4  *
5  * Licensed under the Apache License, Version 2.0 (the "License");
6  * you may not use this file except in compliance with the License.
7  * You may obtain a copy of the License at http://www.apache.org/licenses/LICENSE-2.0
8  *
9  * Unless required by applicable law or agreed to in writing, software
10  * distributed under the License is distributed on an "AS IS" BASIS,
11  * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
12  * See the License for the specific language governing permissions and
13  * limitations under the License.
14 */
15 
16 using System;
17 using System.Runtime.CompilerServices;
18 
19 using static QuantConnect.StringExtensions;
20 
21 namespace QuantConnect
22 {
23  /// <summary>
24  /// Provides user-facing message construction methods and static messages for the <see cref="Algorithm.Framework.Alphas.Analysis"/> namespace
25  /// </summary>
26  public static partial class Messages
27  {
28  /// <summary>
29  /// Provides user-facing messages for the <see cref="Algorithm.Framework.Alphas.Analysis.InsightManager"/> class and its consumers or related classes
30  /// </summary>
31  public static class InsightManager
32  {
33  /// <summary>
34  /// String message saying extraAnalysisPeriodRatio must be greater than or equal to zero
35  /// </summary>
36  public static string InvalidExtraAnalysisPeriodRatio = "extraAnalysisPeriodRatio must be greater than or equal to zero.";
37 
38  /// <summary>
39  /// Returns a string message warning the user of an insight with zero initial price
40  /// </summary>
41  [MethodImpl(MethodImplOptions.AggressiveInlining)]
42  public static string ZeroInitialPriceValue(DateTime frontierTimeUtc, Algorithm.Framework.Alphas.Insight insight)
43  {
44  return Invariant($"InsightManager.Step(): Warning {frontierTimeUtc} UTC: insight {insight} initial price value is 0");
45  }
46  }
47 
48  /// <summary>
49  /// Provides user-facing messages for the <see cref="ReadOnlySecurityValuesCollection"/> class and its consumers or related classes
50  /// </summary>
52  {
53  /// <summary>
54  /// Returns a string message saying no SecurityValues were found for the given symbol
55  /// </summary>
56  [MethodImpl(MethodImplOptions.AggressiveInlining)]
58  {
59  return Invariant($"SecurityValues for symbol {symbol} was not found");
60  }
61  }
62  }
63 }