Lean
$LEAN_TAG$
AlphaStreamsPortfolioConstructionModel.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.Collections.Generic;
17
using
QuantConnect
.
Data
.
UniverseSelection
;
18
using
QuantConnect
.
Algorithm
.
Framework
.
Alphas
;
19
20
namespace
QuantConnect.Algorithm.Framework.Portfolio
21
{
22
/// <summary>
23
/// Base alpha streams portfolio construction model
24
/// </summary>
25
public
class
AlphaStreamsPortfolioConstructionModel
:
IPortfolioConstructionModel
26
{
27
/// <summary>
28
/// Get's the weight for an alpha
29
/// </summary>
30
/// <param name="alphaId">The algorithm instance that experienced the change in securities</param>
31
/// <returns>The alphas weight</returns>
32
public
virtual
decimal
GetAlphaWeight
(
string
alphaId)
33
{
34
throw
new
System.NotImplementedException();
35
}
36
37
/// <summary>
38
/// Event fired each time the we add/remove securities from the data feed
39
/// </summary>
40
/// <param name="algorithm">The algorithm instance that experienced the change in securities</param>
41
/// <param name="changes">The security additions and removals from the algorithm</param>
42
public
virtual
void
OnSecuritiesChanged
(
QCAlgorithm
algorithm,
SecurityChanges
changes)
43
{
44
throw
new
System.NotImplementedException();
45
}
46
47
/// <summary>
48
/// Create portfolio targets from the specified insights
49
/// </summary>
50
/// <param name="algorithm">The algorithm instance</param>
51
/// <param name="insights">The insights to create portfolio targets from</param>
52
/// <returns>An enumerable of portfolio targets to be sent to the execution model</returns>
53
public
virtual
IEnumerable<IPortfolioTarget>
CreateTargets
(
QCAlgorithm
algorithm,
Insight
[] insights)
54
{
55
throw
new
System.NotImplementedException();
56
}
57
}
58
}
Algorithm.Framework
Portfolio
AlphaStreamsPortfolioConstructionModel.cs
Generated by
1.8.17