@@ -10,11 +10,8 @@ Backtesting.py
10
10
11
11
Backtest trading strategies with Python.
12
12
13
- [ ** Project website** ] [ website ]
13
+ [ ** Project website** ] ( https://kernc.github.io/backtesting.py ) + [ Documentation ]
14
14
15
- [ Documentation]
16
-
17
- [ website ] : https://kernc.github.io/backtesting.py/
18
15
[ Documentation ] : https://kernc.github.io/backtesting.py/doc/backtesting/
19
16
20
17
@@ -82,6 +79,7 @@ Avg. Trade Duration 32 days 00:00:00
82
79
Profit Factor 2.13
83
80
Expectancy [%] 6.91
84
81
SQN 1.78
82
+ Kelly Criterion 0.6134
85
83
_strategy SmaCross(n1=10, n2=20)
86
84
_equity_curve Equ...
87
85
_trades Size EntryB...
@@ -91,6 +89,7 @@ dtype: object
91
89
92
90
Find more usage examples in the [ documentation] .
93
91
92
+
94
93
Features
95
94
--------
96
95
* Simple, well-documented API
@@ -102,101 +101,20 @@ Features
102
101
* Detailed results
103
102
* Interactive visualizations
104
103
104
+ ![ xkcd.com/1570] ( https://imgs.xkcd.com/comics/engineer_syllogism.png )
105
+
106
+
107
+ Bugs
108
+ ----
109
+ Before reporting bugs or posting to the
110
+ [ discussion board] ( https://github.com/kernc/backtesting.py/discussions ) ,
111
+ please read [ contributing guidelines] ( CONTRIBUTING.md ) , particularly the section
112
+ about crafting useful bug reports and ```` ``` ```` -fencing your code. We thank you!
105
113
106
- -------------------------------------------------
107
114
108
115
Alternatives
109
116
------------
110
- The thing with backtesting is, unless you dug into the dirty details yourself,
111
- you can't rely on execution correctness, and you risk losing your house.
112
- In addition, everyone has their own preconveived ideas about how a mechanical
113
- trading strategy should be conducted, so everyone (and their brother)
114
- just rolls their own backtesting frameworks.
115
-
116
- If after reviewing the docs and exmples perchance you find
117
- [ _ Backtesting.py_ ] [ website ] not your cup of tea,
118
- kindly have a look at some similar alternative Python backtesting frameworks:
119
-
120
- - [ bt] ( http://pmorissette.github.io/bt/ ) -
121
- a framework based on reusable and flexible blocks of
122
- strategy logic that support multiple instruments and
123
- output detailed statistics and useful charts.
124
- - [ vectorbt] ( https://polakowo.io/vectorbt/ ) -
125
- a pandas-based library for quickly analyzing trading strategies at scale.
126
- - [ Backtrader] ( https://www.backtrader.com/ ) -
127
- a pure-python feature-rich framework for backtesting
128
- and live algotrading with a few brokers.
129
- - [ PyAlgoTrade] ( https://gbeced.github.io/pyalgotrade/ ) -
130
- event-driven algorithmic trading library with focus on
131
- backtesting and support for live trading.
132
- - [ Zipline] ( https://www.zipline.io/ ) -
133
- the backtesting and live-trading engine powering Quantopian — the
134
- community-centered, hosted platform for building and executing strategies.
135
- - [ Pinkfish] ( http://fja05680.github.io/pinkfish/ ) -
136
- a lightweight backtester for intraday strategies on daily data.
137
- - [ finmarketpy] ( https://github.com/cuemacro/finmarketpy ) -
138
- a library for analyzing financial market data.
139
- - [ QuantStart QSTrader] ( https://github.com/mhallsmoore/qstrader/ ) -
140
- a modular schedule-driven backtesting framework for long-short equities
141
- and ETF-based systematic trading strategies.
142
- - [ pysystemtrade] ( https://github.com/robcarver17/pysystemtrade ) -
143
- the open-source version of Robert Carver's backtesting engine that
144
- implements systems according to his book _ Systematic Trading:
145
- A unique new method for designing trading and investing systems_ .
146
- - [ QTPyLib] ( https://github.com/ranaroussi/qtpylib ) -
147
- a versatile, event-driven algorithmic trading library.
148
- - [ Gemini] ( https://github.com/anfederico/Gemini ) -
149
- a backtester namely focusing on cryptocurrency markets.
150
- - [ Quantdom] ( https://github.com/constverum/Quantdom ) -
151
- a Qt-based framework that lets you focus on modeling financial strategies,
152
- portfolio management, and analyzing backtests.
153
- - [ Clairvoyant] ( https://github.com/anfederico/Clairvoyant ) -
154
- software for identifying and monitoring social / historical cues
155
- for short-term stock movement.
156
- - [ optopsy] ( https://github.com/michaelchu/optopsy ) -
157
- a nimble backtesting library for options trading.
158
- - [ RQalpha] ( https://github.com/ricequant/rqalpha ) -
159
- a complete solution for programmatic traders from data acquisition,
160
- algorithmic trading, backtesting, real-time simulation, live trading
161
- to mere data analysis. Documentation in Chinese.
162
- - [ zvt] ( https://github.com/zvtvz/zvt ) -
163
- a quant trading platform which includes data recorder, factor calculation,
164
- stock picking, backtesting, and unified visualization. Documentation in Chinese.
165
- - [ AwesomeQuant] ( https://github.com/wilsonfreitas/awesome-quant#trading--backtesting ) -
166
- A somewhat curated list of libraries, packages, and resources for quants.
167
-
168
- #### Obsolete / Unmaintained
169
-
170
- The following projects are mainly old, stale, incomplete, incompatible,
171
- abandoned, and here for posterity reference only:
172
-
173
- - [ AlephNull] ( https://github.com/CarterBain/AlephNull ) -
174
- extends the features of Zipline, for use within an institutional environment.
175
- - [ ProfitPy] ( https://code.google.com/p/profitpy/ ) -
176
- a set of libraries and tools for the development, testing, and execution of
177
- automated stock trading systems.
178
- - [ prophet] ( https://github.com/Emsu/prophet ) -
179
- a microframework for financial markets, focusing on modeling
180
- strategies and portfolio management.
181
- - [ pybacktest] ( https://github.com/ematvey/pybacktest ) -
182
- a vectorized pandas-based backtesting framework,
183
- designed to make backtesting compact, simple and fast.
184
- - [ quant] ( https://github.com/maihde/quant ) -
185
- a technical analysis tool for trading strategies with a particularily
186
- simplistic view of the market.
187
- - [ QuantSoftware Toolkit] ( https://github.com/QuantSoftware/QuantSoftwareToolkit ) -
188
- a toolkit by the guys that soon after went to form Lucena Research.
189
- - [ QuantStart QSForex] ( https://github.com/mhallsmoore/qsforex ) -
190
- an event-driven backtesting and live-trading platform for use in
191
- the foreign exchange markets,
192
- - [ tia: Toolkit for integration and analysis] ( https://github.com/PaulMest/tia/ ) -
193
- a toolkit providing Bloomberg data access, PDF generation,
194
- technical analysis and backtesting functionality.
195
- - [ TradingWithPython] ( https://github.com/sjev/trading-with-python ) -
196
- boiler-plate code for the (no longer active) course _ Trading With Python_ .
197
- - [ Ultra-Finance] ( https://github.com/panpanpandas/ultrafinance ) -
198
- real-time financial data collection, analyzing and backtesting trading strategies.
199
- - [ visualize-wealth] ( https://github.com/benjaminmgross/visualize-wealth ) -
200
- a library to construct, backtest, analyze, and evaluate portfolios
201
- and their benchmarks, with comprehensive documentation illustrating
202
- all underlying methodologies and statistics.
117
+ See [ alternatives.md] for a list of alternative Python
118
+ backtesting frameworks and related packages.
119
+
120
+ [ alternatives.md ] : https://github.com/kernc/backtesting.py/blob/master/doc/alternatives.md
0 commit comments