7 Commits

Author SHA1 Message Date
Michael Halls-Moore c273962a04 Modified README to detail new backtest interface. 2015-06-30 09:48:25 +01:00
Michael Halls-Moore 784cfd2508 Added a Backtest class, which replaces the script in backtest.py. Also added an examples directory, to make strategy testing straightforward. 2015-06-23 11:52:44 +01:00
Michael Halls-Moore 458f263722 Multi-day backtesting now supported. 2015-06-03 09:23:40 +01:00
Michael Halls-Moore 4380200de7 Added the ability for the backtester to use unrealised PnL from the Position objects to calculate a tick-by-tick equity curve. Added a performance directory that calculates drawdown statistics. Modified the output.py script to use Seaborn and output the equity curve, returns and drawdown curve. 2015-05-15 13:50:34 +01:00
Michael Halls-Moore a03bc7a1fb Added Python 2.7.x and 3.4.x compatibility to the code. Disabled HTTPS security warning in urllib3 package of 'requests' package. 2015-05-11 17:30:28 +01:00
Michael Halls-Moore e84512e1e7 Lots of changes. Modified the Position object to handle more of the actual position calculations instead of the Portfolio. Added more unit tests for both Position and Portfolio. Allowed Positions to trade in currencies other than GBPUSD and in base/quotes which aren't the home currency. Modified the backtester to be single-threaded and added a basic Moving Average Crossover strategy. Also added a basic equity curve output script. 2015-04-21 13:01:20 +01:00
Michael Halls-Moore e74777802b Modified the Position handling to use long/short instead of buy/sell for side/position_type. Also modified the unit tests for both Portfolio and Position to reflect these changes. Added a basic historical backtesting capability via backtest.py and using CSV tick data for currency pairs. 2015-04-17 12:34:31 +01:00