QuantConnect.pythonnet 2.0.40

Prefix Reserved
dotnet add package QuantConnect.pythonnet --version 2.0.40                
NuGet\Install-Package QuantConnect.pythonnet -Version 2.0.40                
This command is intended to be used within the Package Manager Console in Visual Studio, as it uses the NuGet module's version of Install-Package.
<PackageReference Include="QuantConnect.pythonnet" Version="2.0.40" />                
For projects that support PackageReference, copy this XML node into the project file to reference the package.
paket add QuantConnect.pythonnet --version 2.0.40                
#r "nuget: QuantConnect.pythonnet, 2.0.40"                
#r directive can be used in F# Interactive and Polyglot Notebooks. Copy this into the interactive tool or source code of the script to reference the package.
// Install QuantConnect.pythonnet as a Cake Addin
#addin nuget:?package=QuantConnect.pythonnet&version=2.0.40

// Install QuantConnect.pythonnet as a Cake Tool
#tool nuget:?package=QuantConnect.pythonnet&version=2.0.40                

pythonnet is a package that gives .NET programmers ability to integrate Python engine and use Python libraries.

Embedding Python in .NET

  • You must set Runtime.PythonDLL property or PYTHONNET_PYDLL environment variable, otherwise you will receive BadPythonDllException (internal, derived from MissingMethodException) upon calling Initialize. Typical values are python38.dll (Windows), libpython3.8.dylib (Mac), libpython3.8.so (most other *nix). Full path may be required.
  • All calls to Python should be inside a using (Py.GIL()) {/* Your code here */} block.
  • Import python modules using dynamic mod = Py.Import("mod"), then you can call functions as normal, eg mod.func(args). You can also access Python objects via PyObject and dervied types instead of using dynamic.
  • Use mod.func(args, Py.kw("keywordargname", keywordargvalue)) or mod.func(args, keywordargname: keywordargvalue) to apply keyword arguments.
  • Mathematical operations involving python and literal/managed types must have the python object first, eg. np.pi * 2 works, 2 * np.pi doesn't.

Example

using var _ = Py.GIL();

dynamic np = Py.Import("numpy");
Console.WriteLine(np.cos(np.pi * 2));

dynamic sin = np.sin;
Console.WriteLine(sin(5));

double c = (double)(np.cos(5) + sin(5));
Console.WriteLine(c);

dynamic a = np.array(new List<float> { 1, 2, 3 });
Console.WriteLine(a.dtype);

dynamic b = np.array(new List<float> { 6, 5, 4 }, dtype: np.int32);
Console.WriteLine(b.dtype);

Console.WriteLine(a * b);
Console.ReadKey();

Output:

1.0
-0.958924274663
-0.6752620892
float64
int32
[  6.  10.  12.]

Resources

Information on installation, FAQ, troubleshooting, debugging, and projects using pythonnet can be found in the Wiki:

https://github.com/pythonnet/pythonnet/wiki

Mailing list https://mail.python.org/mailman/listinfo/pythondotnet Chat https://gitter.im/pythonnet/pythonnet

.NET Foundation

This project is supported by the .NET Foundation.

Product Compatible and additional computed target framework versions.
.NET net6.0 is compatible.  net6.0-android was computed.  net6.0-ios was computed.  net6.0-maccatalyst was computed.  net6.0-macos was computed.  net6.0-tvos was computed.  net6.0-windows was computed.  net7.0 was computed.  net7.0-android was computed.  net7.0-ios was computed.  net7.0-maccatalyst was computed.  net7.0-macos was computed.  net7.0-tvos was computed.  net7.0-windows was computed.  net8.0 was computed.  net8.0-android was computed.  net8.0-browser was computed.  net8.0-ios was computed.  net8.0-maccatalyst was computed.  net8.0-macos was computed.  net8.0-tvos was computed.  net8.0-windows was computed. 
Compatible target framework(s)
Included target framework(s) (in package)
Learn more about Target Frameworks and .NET Standard.

NuGet packages (26)

Showing the top 5 NuGet packages that depend on QuantConnect.pythonnet:

Package Downloads
QuantConnect.Common

QuantConnect LEAN Engine: Common Project - A collection of common definitions and utils

QuantConnect.Indicators

QuantConnect LEAN Engine: Indicators Project - A collection of financial indicators

QuantConnect.Algorithm

QuantConnect LEAN Engine: Algorithm Project - Core QCAlgorithm implementation

QuantConnect.Algorithm.Framework

QuantConnect LEAN Engine: Algorithm.Framework Project - The core QCAlgorithm framework implementation

QuantConnect.Lean.Engine

QuantConnect LEAN Engine: Engine Project - Core engine and datafeed implementation

GitHub repositories (1)

Showing the top 1 popular GitHub repositories that depend on QuantConnect.pythonnet:

Repository Stars
QuantConnect/Lean
Lean Algorithmic Trading Engine by QuantConnect (Python, C#)
Version Downloads Last updated
2.0.40 537 11/1/2024
2.0.39 6,358 9/27/2024
2.0.38 29,210 5/24/2024
2.0.37 3,054 5/14/2024
2.0.36 4,479 4/23/2024
2.0.35 2,961 4/19/2024
2.0.34 12,443 4/17/2024
2.0.33 168 4/16/2024
2.0.32 1,497 4/15/2024
2.0.31 460 4/12/2024
2.0.30 194 4/11/2024
2.0.29 4,800 3/18/2024
2.0.28 7,048 3/5/2024
2.0.27 165 3/4/2024
2.0.26 32,420 12/8/2023
2.0.25 5,709 11/21/2023
2.0.24 7,981 10/27/2023
2.0.23 2,291 10/19/2023
2.0.22 744 10/12/2023
2.0.21 48,736 7/11/2023
2.0.20 5,431 6/26/2023
2.0.19 201 6/26/2023
2.0.18 83,911 3/3/2023
2.0.17 121,597 8/24/2022
2.0.16 20,928 6/27/2022
2.0.15 25,243 5/17/2022
2.0.14 5,230 5/6/2022
2.0.13 4,651 5/2/2022
2.0.12 5,813 4/28/2022
2.0.11 77,424 12/27/2021
2.0.10 30,789 10/22/2021
2.0.9 433 10/21/2021
2.0.8 5,207 10/13/2021
2.0.7 697 10/8/2021
2.0.6 16,089 8/26/2021
2.0.5 20,198 7/14/2021
2.0.4 33,542 6/11/2021
2.0.3 2,154 6/8/2021
2.0.2 8,274 5/28/2021
2.0.1 21,149 3/13/2021
2.0.0 956 3/9/2021
1.0.5.30 221,824 3/31/2020
1.0.5.29 44,292 11/13/2019
1.0.5.28 619 11/12/2019
1.0.5.27 579 11/12/2019
1.0.5.26 8,895 10/15/2019
1.0.5.25 5,494 9/23/2019
1.0.5.24 5,938 9/10/2019
1.0.5.23 712 9/5/2019
1.0.5.22 625 9/5/2019
1.0.5.21 822 6/24/2019
1.0.5.20 41,233 4/23/2019
1.0.5.19 5,017 4/2/2019
1.0.5.18 838 3/27/2019
1.0.5.17 12,150 2/21/2019
1.0.5.16 706 2/20/2019
1.0.5.15 9,169 1/22/2019
1.0.5.14 846 1/18/2019
1.0.5.13 824 1/15/2019
1.0.5.12 10,524 8/27/2018
1.0.5.11 850 8/27/2018
1.0.5.10 883 8/24/2018
1.0.5.9 1,069 7/23/2018
1.0.5.8 38,733 7/16/2018
1.0.5.7 287,641 4/2/2018
1.0.5.6 1,077 4/2/2018
1.0.5.5 2,673 2/2/2018
1.0.5.4 2,376 12/29/2017
1.0.5.3 1,068 12/29/2017
1.0.5.2 1,450 11/29/2017
1.0.5.1 3,023 10/9/2017
1.0.5 1,191 9/29/2017
1.0.4.8 1,342 9/12/2017
1.0.4.7 958 9/8/2017
1.0.4.6 970 9/4/2017
1.0.4.5 980 8/21/2017
1.0.4.4 2,580 6/23/2017
1.0.4.3 1,044 6/23/2017
1.0.4.2 999 6/22/2017
1.0.4.1 983 6/22/2017
1.0.4 1,071 6/15/2017
1.0.3.5 1,451 6/1/2017
1.0.3.4 981 6/1/2017
1.0.3.3 982 6/1/2017
1.0.3.2 972 5/31/2017
1.0.3.1 1,013 5/31/2017
1.0.3 988 5/31/2017
1.0.2.1 1,117 5/25/2017
1.0.2 1,042 5/23/2017
1.0.1.1 1,872 4/11/2017
1.0.0 1,081 1/12/2017