Lean  $LEAN_TAG$
SecurityMarginModel.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 
17 {
18  /// <summary>
19  /// Represents a simple, constant margin model by specifying the percentages of required margin.
20  /// </summary>
22  {
23  /// <summary>
24  /// Initializes a new instance of the <see cref="SecurityMarginModel"/> with no leverage (1x)
25  /// </summary>
27  {
28  }
29 
30  /// <summary>
31  /// Initializes a new instance of the <see cref="SecurityMarginModel"/>
32  /// </summary>
33  /// <param name="initialMarginRequirement">The percentage of an order's absolute cost
34  /// that must be held in free cash in order to place the order</param>
35  /// <param name="maintenanceMarginRequirement">The percentage of the holding's absolute
36  /// cost that must be held in free cash in order to avoid a margin call</param>
37  /// <param name="requiredFreeBuyingPowerPercent">The percentage used to determine the required
38  /// unused buying power for the account.</param>
40  decimal initialMarginRequirement,
41  decimal maintenanceMarginRequirement,
42  decimal requiredFreeBuyingPowerPercent
43  )
44  : base(initialMarginRequirement, maintenanceMarginRequirement, requiredFreeBuyingPowerPercent)
45  {
46  }
47 
48  /// <summary>
49  /// Initializes a new instance of the <see cref="SecurityMarginModel"/>
50  /// </summary>
51  /// <param name="leverage">The leverage</param>
52  /// <param name="requiredFreeBuyingPowerPercent">The percentage used to determine the required
53  /// unused buying power for the account.</param>
54  public SecurityMarginModel(decimal leverage, decimal requiredFreeBuyingPowerPercent = 0)
55  : base(leverage, requiredFreeBuyingPowerPercent)
56  {
57  }
58  }
59 }