9c99794bfb
Add a multi-dimensional array of double representing the covariance. Some models, e.g., Black-Litterman may want to optimize a covariance that is different from the historical one. Adds UnconstrainedMeanVariancePortfolioOptimizer: a simple optimizer that has a solution, therefore no numerical optimization method is required.
248 lines
14 KiB
XML
248 lines
14 KiB
XML
<?xml version="1.0" encoding="utf-8"?>
|
|
<Project ToolsVersion="15.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
|
|
<Import Project="$(MSBuildExtensionsPath)\$(MSBuildToolsVersion)\Microsoft.Common.props" Condition="Exists('$(MSBuildExtensionsPath)\$(MSBuildToolsVersion)\Microsoft.Common.props')" />
|
|
<PropertyGroup>
|
|
<Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>
|
|
<Platform Condition=" '$(Platform)' == '' ">AnyCPU</Platform>
|
|
<ProjectGuid>{75981418-7246-4B91-B136-482728E02901}</ProjectGuid>
|
|
<OutputType>Library</OutputType>
|
|
<AppDesignerFolder>Properties</AppDesignerFolder>
|
|
<RootNamespace>QuantConnect.Algorithm.Framework</RootNamespace>
|
|
<AssemblyName>QuantConnect.Algorithm.Framework</AssemblyName>
|
|
<TargetFrameworkVersion>v4.5.2</TargetFrameworkVersion>
|
|
<FileAlignment>512</FileAlignment>
|
|
<NuGetPackageImportStamp>
|
|
</NuGetPackageImportStamp>
|
|
<TargetFrameworkProfile />
|
|
</PropertyGroup>
|
|
<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' ">
|
|
<DebugSymbols>true</DebugSymbols>
|
|
<DebugType>full</DebugType>
|
|
<Optimize>false</Optimize>
|
|
<OutputPath>bin\Debug\</OutputPath>
|
|
<DefineConstants>DEBUG;TRACE</DefineConstants>
|
|
<ErrorReport>prompt</ErrorReport>
|
|
<WarningLevel>4</WarningLevel>
|
|
<LangVersion>6</LangVersion>
|
|
<DocumentationFile>bin\Debug\QuantConnect.Algorithm.Framework.xml</DocumentationFile>
|
|
</PropertyGroup>
|
|
<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' ">
|
|
<DebugType>pdbonly</DebugType>
|
|
<Optimize>true</Optimize>
|
|
<OutputPath>bin\Release\</OutputPath>
|
|
<DefineConstants>TRACE</DefineConstants>
|
|
<ErrorReport>prompt</ErrorReport>
|
|
<WarningLevel>4</WarningLevel>
|
|
<DocumentationFile>bin\Release\QuantConnect.Algorithm.Framework.xml</DocumentationFile>
|
|
</PropertyGroup>
|
|
<ItemGroup>
|
|
<Reference Include="Accord, Version=3.6.0.0, Culture=neutral, PublicKeyToken=fa1a88e29555ccf7, processorArchitecture=MSIL">
|
|
<HintPath>..\packages\Accord.3.6.0\lib\net45\Accord.dll</HintPath>
|
|
</Reference>
|
|
<Reference Include="Accord.Math, Version=3.6.0.0, Culture=neutral, PublicKeyToken=fa1a88e29555ccf7, processorArchitecture=MSIL">
|
|
<HintPath>..\packages\Accord.Math.3.6.0\lib\net45\Accord.Math.dll</HintPath>
|
|
</Reference>
|
|
<Reference Include="Accord.Math.Core, Version=3.6.0.0, Culture=neutral, PublicKeyToken=fa1a88e29555ccf7, processorArchitecture=MSIL">
|
|
<HintPath>..\packages\Accord.Math.3.6.0\lib\net45\Accord.Math.Core.dll</HintPath>
|
|
</Reference>
|
|
<Reference Include="Accord.Statistics, Version=3.6.0.0, Culture=neutral, PublicKeyToken=fa1a88e29555ccf7, processorArchitecture=MSIL">
|
|
<HintPath>..\packages\Accord.Statistics.3.6.0\lib\net45\Accord.Statistics.dll</HintPath>
|
|
</Reference>
|
|
<Reference Include="MathNet.Numerics, Version=3.19.0.0, Culture=neutral, processorArchitecture=MSIL">
|
|
<HintPath>..\packages\MathNet.Numerics.3.19.0\lib\net40\MathNet.Numerics.dll</HintPath>
|
|
</Reference>
|
|
<Reference Include="NodaTime, Version=1.3.0.0, Culture=neutral, PublicKeyToken=4226afe0d9b296d1, processorArchitecture=MSIL">
|
|
<HintPath>..\packages\NodaTime.1.3.4\lib\net35-Client\NodaTime.dll</HintPath>
|
|
</Reference>
|
|
<Reference Include="Python.Runtime, Version=2.4.0.0, Culture=neutral, processorArchitecture=MSIL">
|
|
<HintPath>..\packages\QuantConnect.pythonnet.1.0.5.8\lib\Python.Runtime.dll</HintPath>
|
|
</Reference>
|
|
<Reference Include="System" />
|
|
<Reference Include="System.Core" />
|
|
<Reference Include="System.Numerics" />
|
|
<Reference Include="System.Xml.Linq" />
|
|
<Reference Include="System.Data.DataSetExtensions" />
|
|
<Reference Include="Microsoft.CSharp" />
|
|
<Reference Include="System.Data" />
|
|
<Reference Include="System.Net.Http" />
|
|
<Reference Include="System.Xml" />
|
|
</ItemGroup>
|
|
<ItemGroup>
|
|
<Compile Include="..\Common\Properties\SharedAssemblyInfo.cs">
|
|
<Link>Properties\SharedAssemblyInfo.cs</Link>
|
|
</Compile>
|
|
<Compile Include="Alphas\AlphaModel.cs" />
|
|
<Compile Include="Alphas\AlphaModelExtensions.cs" />
|
|
<Compile Include="Alphas\AlphaModelPythonWrapper.cs" />
|
|
<Compile Include="Alphas\PearsonCorrelationPairsTradingAlphaModel.cs" />
|
|
<Compile Include="Alphas\CompositeAlphaModel.cs" />
|
|
<Compile Include="Alphas\EmaCrossAlphaModel.cs" />
|
|
<Compile Include="Alphas\INamedModel.cs" />
|
|
<Compile Include="Alphas\NullAlphaModel.cs" />
|
|
<Compile Include="Alphas\BasePairsTradingAlphaModel.cs" />
|
|
<Compile Include="Alphas\RsiAlphaModel.cs" />
|
|
<Compile Include="Execution\ExecutionModel.cs" />
|
|
<Compile Include="Execution\IExecutionModel.cs" />
|
|
<Compile Include="Execution\ImmediateExecutionModel.cs" />
|
|
<Compile Include="Execution\NullExecutionModel.cs" />
|
|
<Compile Include="Execution\ExecutionModelPythonWrapper.cs" />
|
|
<Compile Include="Execution\StandardDeviationExecutionModel.cs" />
|
|
<Compile Include="Execution\VolumeWeightedAveragePriceExecutionModel.cs" />
|
|
<Compile Include="INotifiedSecurityChanges.cs" />
|
|
<Compile Include="NotifiedSecurityChanges.cs" />
|
|
<Compile Include="Portfolio\BlackLittermanOptimizationPortfolioConstructionModel.cs" />
|
|
<Compile Include="Portfolio\IPortfolioConstructionModel.cs" />
|
|
<Compile Include="Portfolio\IPortfolioOptimizer.cs" />
|
|
<Compile Include="Portfolio\UnconstrainedMeanVariancePortfolioOptimizer.cs" />
|
|
<Compile Include="Portfolio\MaximumSharpeRatioPortfolioOptimizer.cs" />
|
|
<Compile Include="Portfolio\MeanVarianceOptimizationPortfolioConstructionModel.cs" />
|
|
<Compile Include="Portfolio\MinimumVariancePortfolioOptimizer.cs" />
|
|
<Compile Include="Portfolio\NullPortfolioConstructionModel.cs" />
|
|
<Compile Include="Portfolio\PortfolioConstructionModel.cs" />
|
|
<Compile Include="Portfolio\PortfolioConstructionModelPythonWrapper.cs" />
|
|
<Compile Include="Portfolio\EqualWeightingPortfolioConstructionModel.cs" />
|
|
<Compile Include="Portfolio\ReturnsSymbolData.cs" />
|
|
<Compile Include="Properties\AssemblyInfo.cs" />
|
|
<Compile Include="QCAlgorithmFramework.Python.cs" />
|
|
<Compile Include="QCAlgorithmFramework.cs" />
|
|
<Compile Include="QCAlgorithmFrameworkBridge.cs" />
|
|
<Compile Include="Risk\IRiskManagementModel.cs" />
|
|
<Compile Include="Risk\MaximumDrawdownPercentPerSecurity.cs" />
|
|
<Compile Include="Risk\MaximumSectorExposureRiskManagementModel.cs" />
|
|
<Compile Include="Risk\NullRiskManagementModel.cs" />
|
|
<Compile Include="Risk\RiskManagementModel.cs" />
|
|
<Compile Include="Risk\RiskManagementModelPythonWrapper.cs" />
|
|
<Compile Include="Selection\CoarseFundamentalUniverseSelectionModel.cs" />
|
|
<Compile Include="Selection\FineFundamentalUniverseSelectionModel.cs" />
|
|
<Compile Include="Selection\FundamentalUniverseSelectionModel.cs" />
|
|
<Compile Include="Selection\IUniverseSelectionModel.cs" />
|
|
<Compile Include="Selection\EmaCrossUniverseSelectionModel.cs" />
|
|
<Compile Include="Selection\ManualUniverseSelectionModel.cs" />
|
|
<Compile Include="Selection\ManualUniverse.cs" />
|
|
<Compile Include="Alphas\ConstantAlphaModel.cs" />
|
|
<Compile Include="Alphas\MacdAlphaModel.cs" />
|
|
<Compile Include="Alphas\IAlphaModel.cs" />
|
|
<Compile Include="Selection\FutureUniverseSelectionModel.cs" />
|
|
<Compile Include="Selection\OptionUniverseSelectionModel.cs" />
|
|
<Compile Include="Selection\ScheduledUniverseSelectionModel.cs" />
|
|
<Compile Include="Selection\UniverseSelectionModel.cs" />
|
|
<Compile Include="Selection\UniverseSelectionModelPythonWrapper.cs" />
|
|
<Compile Include="Selection\QC500UniverseSelectionModel.cs" />
|
|
<Compile Include="Alphas\HistoricalReturnsAlphaModel.cs" />
|
|
</ItemGroup>
|
|
<ItemGroup>
|
|
<ProjectReference Include="..\Algorithm\QuantConnect.Algorithm.csproj">
|
|
<Project>{3240ACA4-BDD4-4D24-AC36-BBB651C39212}</Project>
|
|
<Name>QuantConnect.Algorithm</Name>
|
|
</ProjectReference>
|
|
<ProjectReference Include="..\Common\QuantConnect.csproj">
|
|
<Project>{2545C0B4-FABB-49C9-8DD1-9AD7EE23F86B}</Project>
|
|
<Name>QuantConnect</Name>
|
|
</ProjectReference>
|
|
<ProjectReference Include="..\Indicators\QuantConnect.Indicators.csproj">
|
|
<Project>{73fb2522-c3ed-4e47-8e3d-afad48a6b888}</Project>
|
|
<Name>QuantConnect.Indicators</Name>
|
|
</ProjectReference>
|
|
</ItemGroup>
|
|
<ItemGroup>
|
|
<None Include="packages.config" />
|
|
<Content Include="Portfolio\BlackLittermanOptimizationPortfolioConstructionModel.py">
|
|
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
|
|
</Content>
|
|
<Content Include="Portfolio\UnconstrainedMeanVariancePortfolioOptimizer.py">
|
|
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
|
|
</Content>
|
|
<Content Include="Portfolio\MaximumSharpeRatioPortfolioOptimizer.py">
|
|
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
|
|
</Content>
|
|
<Content Include="Portfolio\MeanVarianceOptimizationPortfolioConstructionModel.py">
|
|
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
|
|
</Content>
|
|
<Content Include="Portfolio\MinimumVariancePortfolioOptimizer.py">
|
|
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
|
|
</Content>
|
|
</ItemGroup>
|
|
<ItemGroup>
|
|
<Content Include="Alphas\PearsonCorrelationPairsTradingAlphaModel.py">
|
|
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
|
|
</Content>
|
|
<Content Include="Alphas\HistoricalReturnsAlphaModel.py">
|
|
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
|
|
</Content>
|
|
<Content Include="Alphas\NullAlphaModel.py">
|
|
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
|
|
</Content>
|
|
<Content Include="Alphas\BasePairsTradingAlphaModel.py">
|
|
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
|
|
</Content>
|
|
<Content Include="Execution\NullExecutionModel.py">
|
|
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
|
|
</Content>
|
|
<Content Include="Execution\VolumeWeightedAveragePriceExecutionModel.py">
|
|
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
|
|
</Content>
|
|
<Content Include="Execution\StandardDeviationExecutionModel.py">
|
|
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
|
|
</Content>
|
|
<Content Include="Execution\ImmediateExecutionModel.py">
|
|
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
|
|
</Content>
|
|
<Content Include="Portfolio\NullPortfolioConstructionModel.py">
|
|
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
|
|
</Content>
|
|
<Content Include="Portfolio\EqualWeightingPortfolioConstructionModel.py">
|
|
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
|
|
</Content>
|
|
<Content Include="Risk\MaximumDrawdownPercentPerSecurity.py">
|
|
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
|
|
</Content>
|
|
<Content Include="Risk\MaximumSectorExposureRiskManagementModel.py">
|
|
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
|
|
</Content>
|
|
<Content Include="Risk\NullRiskManagementModel.py">
|
|
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
|
|
</Content>
|
|
<Content Include="Selection\EmaCrossUniverseSelectionModel.py">
|
|
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
|
|
</Content>
|
|
<Content Include="Selection\FutureUniverseSelectionModel.py">
|
|
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
|
|
</Content>
|
|
<Content Include="Selection\OptionUniverseSelectionModel.py">
|
|
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
|
|
</Content>
|
|
<Content Include="Selection\UniverseSelectionModel.py">
|
|
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
|
|
</Content>
|
|
<Content Include="Selection\QC500UniverseSelectionModel.py">
|
|
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
|
|
</Content>
|
|
<Content Include="Selection\FundamentalUniverseSelectionModel.py">
|
|
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
|
|
</Content>
|
|
</ItemGroup>
|
|
<ItemGroup>
|
|
<Content Include="Alphas\ConstantAlphaModel.py">
|
|
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
|
|
</Content>
|
|
<Content Include="Alphas\RsiAlphaModel.py">
|
|
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
|
|
</Content>
|
|
<Content Include="Alphas\EmaCrossAlphaModel.py">
|
|
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
|
|
</Content>
|
|
<Content Include="Alphas\MacdAlphaModel.py">
|
|
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
|
|
</Content>
|
|
</ItemGroup>
|
|
<Import Project="$(MSBuildToolsPath)\Microsoft.CSharp.targets" />
|
|
<Import Project="..\packages\QuantConnect.pythonnet.1.0.5.8\build\QuantConnect.pythonnet.targets" Condition="Exists('..\packages\QuantConnect.pythonnet.1.0.5.8\build\QuantConnect.pythonnet.targets')" />
|
|
<Target Name="EnsureNuGetPackageBuildImports" BeforeTargets="PrepareForBuild">
|
|
<PropertyGroup>
|
|
<ErrorText>This project references NuGet package(s) that are missing on this computer. Use NuGet Package Restore to download them. For more information, see http://go.microsoft.com/fwlink/?LinkID=322105. The missing file is {0}.</ErrorText>
|
|
</PropertyGroup>
|
|
<Error Condition="!Exists('..\packages\QuantConnect.pythonnet.1.0.5.8\build\QuantConnect.pythonnet.targets')" Text="$([System.String]::Format('$(ErrorText)', '..\packages\QuantConnect.pythonnet.1.0.5.8\build\QuantConnect.pythonnet.targets'))" />
|
|
<Error Condition="!Exists('..\packages\Accord.3.6.0\build\Accord.targets')" Text="$([System.String]::Format('$(ErrorText)', '..\packages\Accord.3.6.0\build\Accord.targets'))" />
|
|
</Target>
|
|
<Import Project="..\packages\Accord.3.6.0\build\Accord.targets" Condition="Exists('..\packages\Accord.3.6.0\build\Accord.targets')" />
|
|
</Project> |