1{
2 lib,
3 buildPythonPackage,
4 fetchPypi,
5 setuptools,
6 setuptools-scm,
7 numpy,
8 pandas,
9 bokeh,
10}:
11
12buildPythonPackage rec {
13 pname = "backtesting";
14 version = "0.6.5";
15 pyproject = true;
16
17 src = fetchPypi {
18 inherit pname version;
19 hash = "sha256-c4od7ij8U98u2jXqLy0aHDfdugHfFCI/yeh9gKHvvC4=";
20 };
21
22 postPatch = ''
23 substituteInPlace setup.py \
24 --replace-fail "'setuptools_git'," ""
25 '';
26
27 build-system = [
28 setuptools
29 setuptools-scm
30 ];
31
32 dependencies = [
33 numpy
34 pandas
35 bokeh
36 ];
37
38 # No tests
39 doCheck = false;
40
41 meta = {
42 description = "Backtest trading strategies in Python";
43 homepage = "https://kernc.github.io/backtesting.py/";
44 changelog = "https://github.com/kernc/backtesting.py/blob/${version}/CHANGELOG.md";
45 license = lib.licenses.agpl3Only;
46 maintainers = with lib.maintainers; [ appleboblin ];
47 };
48}