git: 808d0facae47 - main - finance/py-bt: New port: Flexible backtesting framework to test quantitative trading strategies
- Go to: [ bottom of page ] [ top of archives ] [ this month ]
Date: Tue, 27 Dec 2022 02:38:47 UTC
The branch main has been updated by yuri: URL: https://cgit.FreeBSD.org/ports/commit/?id=808d0facae4791f940f479a6bbb86f1df3a41d3d commit 808d0facae4791f940f479a6bbb86f1df3a41d3d Author: Yuri Victorovich <yuri@FreeBSD.org> AuthorDate: 2022-12-27 02:38:16 +0000 Commit: Yuri Victorovich <yuri@FreeBSD.org> CommitDate: 2022-12-27 02:38:42 +0000 finance/py-bt: New port: Flexible backtesting framework to test quantitative trading strategies --- finance/Makefile | 1 + finance/py-bt/Makefile | 30 ++++++++++++++++++++++++++++++ finance/py-bt/distinfo | 3 +++ finance/py-bt/pkg-descr | 15 +++++++++++++++ 4 files changed, 49 insertions(+) diff --git a/finance/Makefile b/finance/Makefile index ab2d5907e13a..d25938f7d402 100644 --- a/finance/Makefile +++ b/finance/Makefile @@ -100,6 +100,7 @@ SUBDIR += py-alpha-vantage SUBDIR += py-backtrader SUBDIR += py-bitcoin + SUBDIR += py-bt SUBDIR += py-ebaysdk SUBDIR += py-exchange-calendars SUBDIR += py-ffn diff --git a/finance/py-bt/Makefile b/finance/py-bt/Makefile new file mode 100644 index 000000000000..3f2fdce425e5 --- /dev/null +++ b/finance/py-bt/Makefile @@ -0,0 +1,30 @@ +PORTNAME= bt +DISTVERSIONPREFIX= v +DISTVERSION= 0.2.9 +CATEGORIES= finance python +#MASTER_SITES= CHEESESHOP # no tests +PKGNAMEPREFIX= ${PYTHON_PKGNAMEPREFIX} +DISTNAME= ${PORTNAME:S/-/_/}-${PORTVERSION} + +MAINTAINER= yuri@FreeBSD.org +COMMENT= Flexible backtesting framework to test quantitative trading strategies +WWW= http://pmorissette.github.io/bt/ + +LICENSE= MIT +LICENSE_FILE= ${WRKSRC}/LICENSE.txt + +PY_DEPENDS= ${PYTHON_PKGNAMEPREFIX}ffn>=0.3.5:finance/py-ffn@${PY_FLAVOR} \ + ${PYTHON_PKGNAMEPREFIX}pyprind>=2.11:misc/py-pyprind@${PY_FLAVOR} +BUILD_DEPENDS= ${PY_DEPENDS} +RUN_DEPENDS= ${PY_DEPENDS} + +USES= python:3.8+ +USE_PYTHON= distutils autoplist pytest # tests require nose which is currently broken + +USE_GITHUB= yes +GH_ACCOUNT= pmorissette + +post-install: + @${STRIP_CMD} ${STAGEDIR}${PYTHON_SITELIBDIR}/bt/core${PYTHON_EXT_SUFFIX}.so + +.include <bsd.port.mk> diff --git a/finance/py-bt/distinfo b/finance/py-bt/distinfo new file mode 100644 index 000000000000..59a697c538fc --- /dev/null +++ b/finance/py-bt/distinfo @@ -0,0 +1,3 @@ +TIMESTAMP = 1672107963 +SHA256 (pmorissette-bt-v0.2.9_GH0.tar.gz) = 2c1fedd577b56d4a5b816c9c42b1c58cc6d96e750560b90c3f2bdf71cca601b9 +SIZE (pmorissette-bt-v0.2.9_GH0.tar.gz) = 3664420 diff --git a/finance/py-bt/pkg-descr b/finance/py-bt/pkg-descr new file mode 100644 index 000000000000..8da09529a2f8 --- /dev/null +++ b/finance/py-bt/pkg-descr @@ -0,0 +1,15 @@ +bt is a flexible backtesting framework for Python used to test quantitative +trading strategies. Backtesting is the process of testing a strategy over a +given data set. This framework allows you to easily create strategies that mix +and match different Algos. It aims to foster the creation of easily testable, +re-usable and flexible blocks of strategy logic to facilitate the rapid +development of complex trading strategies. + +The goal: to save quants from re-inventing the wheel and let them focus on the +important part of the job - strategy development. + +bt is coded in Python and joins a vibrant and rich ecosystem for data analysis. +Numerous libraries exist for machine learning, signal processing and statistics +and can be leveraged to avoid re-inventing the wheel - something that happens +all too often when using other languages that don't have the same wealth of +high-quality, open-source projects.