0a9dc2c71c
* Fix pandas converter to handle list of data with different symbols * Properly convert list of data into dataframe Take into consideration data for multiple symbols in the same list * Cleanup * Index dataframes by symbol object instead of SID string * Add symbol equality operator to compare against object * Exclude "ID" from option chain dataframe * Minor fix * Add greeks columns directly in option chain dataframe. Also add pass-through properties for greek values in OptionUniverse * Some cleanup * Minor fix * Add new QCAlgorithm.OptionChains() method - Use OptionChains as output - Add DataFrame to OptionChain and OptionChains - Rename Greeks classes - Add ISymbolProvider for classes that have a symbol (IBaseData, OptionContract) * Unify QCAlgorithmOptionChain API Also refactor OptionContract to handle: (1) Actual market data and option price model data, and (2) OptionUniverse data * Pass symbol properties to OptionUniverse option chain from algorithm * Format OptionContract for dataframe * Minor fix * Add multiple option chains api regression algorithms and other minor changes * Address peer review Add NullGreeks class: keep ModeledGreeks as internal as possible * Minor fix and add PandasConverter unit tests * Peer review: Non-thread-safe Lazy for Python * Handle Greeks unwrapping by PandasData * PandasData cleanup * Add data and other minor changes * Unit test fix * Update Pythonnet to 2.0.39 * Cleanup * PandasData handling children class members Address peer review * Fix: indexing symbol conversion in pandas mapper * Fix pandas mapper to convert string keys to symbol only when necessary * Cleanup * Cleanup * Add PandasColumn python class to handle proper indexing This allows propery hash and equality between Symbols, C# strings and Python strings * Minor fixes * Symbol cache improvements * Minor fix for cache miss * Revert PandasMapper reserved names and improvements * Minor fix * Revert reserved names * Minor fix for Symbol equality operators --------- Co-authored-by: Martin Molinero <martin.molinero1@gmail.com>
68 lines
3.2 KiB
XML
68 lines
3.2 KiB
XML
<Project Sdk="Microsoft.NET.Sdk">
|
|
<PropertyGroup>
|
|
<Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>
|
|
<Platform Condition=" '$(Platform)' == '' ">AnyCPU</Platform>
|
|
<TargetFramework>net6.0</TargetFramework>
|
|
<AssemblyName>QuantConnect.Common</AssemblyName>
|
|
<SolutionDir Condition="$(SolutionDir) == '' Or $(SolutionDir) == '*Undefined*'">..\</SolutionDir>
|
|
<RestorePackages>true</RestorePackages>
|
|
<AnalysisMode>AllEnabledByDefault</AnalysisMode>
|
|
<GenerateAssemblyInfo>false</GenerateAssemblyInfo>
|
|
<OutputPath>bin\$(Configuration)\</OutputPath>
|
|
<DocumentationFile>bin\$(Configuration)\QuantConnect.Common.xml</DocumentationFile>
|
|
<AppendTargetFrameworkToOutputPath>false</AppendTargetFrameworkToOutputPath>
|
|
<Description>QuantConnect LEAN Engine: Common Project - A collection of common definitions and utils</Description>
|
|
<NoWarn>CA1062</NoWarn>
|
|
</PropertyGroup>
|
|
<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' ">
|
|
<OutputPath>bin\Debug\</OutputPath>
|
|
<DebugType>full</DebugType>
|
|
<Optimize>$(SelectedOptimization)</Optimize>
|
|
<DefineConstants>TRACE</DefineConstants>
|
|
</PropertyGroup>
|
|
<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' AND '$(SelectedOptimization)' == ''">
|
|
<DefineConstants>DEBUG;TRACE</DefineConstants>
|
|
</PropertyGroup>
|
|
<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' ">
|
|
<DebugType>pdbonly</DebugType>
|
|
<Optimize>true</Optimize>
|
|
<DefineConstants>TRACE</DefineConstants>
|
|
</PropertyGroup>
|
|
<PropertyGroup>
|
|
<PackageLicenseFile>LICENSE</PackageLicenseFile>
|
|
</PropertyGroup>
|
|
<Target Name="PrintRID" BeforeTargets="Build">
|
|
<Message Text="SelectedOptimization $(SelectedOptimization)" Importance="high" />
|
|
</Target>
|
|
<ItemGroup>
|
|
<PackageReference Include="QuantConnect.pythonnet" Version="2.0.39" />
|
|
<PackageReference Include="CloneExtensions" Version="1.3.0" />
|
|
<PackageReference Include="fasterflect" Version="3.0.0" />
|
|
<PackageReference Include="MathNet.Numerics" Version="5.0.0" />
|
|
<PackageReference Include="Microsoft.IO.RecyclableMemoryStream" Version="2.3.2" />
|
|
<PackageReference Include="Newtonsoft.Json" Version="13.0.2" />
|
|
<PackageReference Include="NodaTime" Version="3.0.5" />
|
|
<PackageReference Include="protobuf-net" Version="3.1.33" />
|
|
<PackageReference Include="QLNet" Version="1.13.0" />
|
|
</ItemGroup>
|
|
<ItemGroup>
|
|
<ProjectReference Include="..\Compression\QuantConnect.Compression.csproj" />
|
|
<ProjectReference Include="..\Configuration\QuantConnect.Configuration.csproj" />
|
|
<ProjectReference Include="..\Logging\QuantConnect.Logging.csproj" />
|
|
</ItemGroup>
|
|
<ItemGroup>
|
|
<None Include="..\LICENSE">
|
|
<Pack>True</Pack>
|
|
<PackagePath></PackagePath>
|
|
</None>
|
|
<Content Include="AlgorithmImports.py">
|
|
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
|
|
<PackageCopyToOutput>true</PackageCopyToOutput>
|
|
</Content>
|
|
<Content Include="PandasMapper.py">
|
|
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
|
|
<PackageCopyToOutput>true</PackageCopyToOutput>
|
|
</Content>
|
|
</ItemGroup>
|
|
</Project>
|