Matthias
|
2061162d79
|
Convert trade-opendate to python datetime
|
2021-04-26 20:01:13 +02:00 |
|
Rokas Kupstys
|
98f6fce2ec
|
Use correct sell reason in case of custom sell reason.
|
2021-04-25 09:48:40 +03:00 |
|
Rokas Kupstys
|
595b8735f8
|
Add dataframe parameter to custom_stoploss() and custom_sell() methods.
|
2021-04-25 09:48:40 +03:00 |
|
Rokas Kupstys
|
1aad128d85
|
Support returning a string from custom_sell() and have it recorded as custom sell reason.
|
2021-04-25 09:48:40 +03:00 |
|
Matthias
|
88f26971fa
|
Use defaultdict for backtesting
|
2021-04-24 19:15:09 +02:00 |
|
Matthias
|
f12e002686
|
Merge pull request #4775 from freqtrade/fix_wallet_unlimited
Fix wallet unlimited
|
2021-04-24 15:54:06 +02:00 |
|
Matthias
|
df16fbd742
|
Add "dataload complete" message to backtest + hyperopt
|
2021-04-23 19:22:41 +02:00 |
|
Matthias
|
d8c8a8d8c2
|
Remvoe pointless arguments from get_trade_stake_amount
|
2021-04-21 20:01:10 +02:00 |
|
Matthias
|
cfa9315e2a
|
Prevent out of candle ROI sells
|
2021-04-20 20:29:53 +02:00 |
|
Matthias
|
89bbfd2324
|
Remove candle_count from dataframe before backtesting
closes #3754
|
2021-03-29 20:26:54 +02:00 |
|
Matthias
|
292ea8c1d0
|
Update backtesting.py
|
2021-03-25 09:34:33 +01:00 |
|
rextea
|
0ca95aa0c2
|
Change rate to acctual close rate
|
2021-03-25 10:25:25 +02:00 |
|
Matthias
|
ec15610bff
|
Fix isort issue
|
2021-03-24 19:21:07 +01:00 |
|
rextea
|
f51f4b1817
|
Add confirm_trade_exit and confirm_trade_entry to backtesting
|
2021-03-23 10:35:46 +02:00 |
|
rextea
|
dc4ea604dd
|
Add confirm_trade_exit and confirm_trade_entry to backtesting
|
2021-03-23 10:19:16 +02:00 |
|
rextea
|
eb5d69dcd4
|
Add confirm_trade_exit and confirm_trade_entry to backtesting
|
2021-03-23 10:12:08 +02:00 |
|
rextea
|
6856963aef
|
Add confirm_trade_exit and confirm_trade_entry to backtesting
|
2021-03-23 10:09:41 +02:00 |
|
Matthias
|
b57c150654
|
Final balance should include forcesold pairs
|
2021-03-14 09:48:40 +01:00 |
|
Matthias
|
d1acc8092c
|
Improve backtest performance
|
2021-03-13 10:17:14 +01:00 |
|
Matthias
|
0db5c9746f
|
Merge pull request #4454 from freqtrade/backtest_compound_speed
Backtest compound, wallet, ...
|
2021-03-10 10:07:40 +01:00 |
|
Matthias
|
4b550dab17
|
Always reset fake-databases
Otherwise results may stick around for the next strategy
|
2021-03-08 19:40:29 +01:00 |
|
Matthias
|
0b81b58d28
|
Use pandas.values.tolist instead of itertuples
speeds up backtesting
closes #4494
|
2021-03-07 11:28:54 +01:00 |
|
Matthias
|
2083cf6ddf
|
Fix mypy errors introduced by Arrow update
|
2021-03-01 08:57:57 +01:00 |
|
Matthias
|
b2e9295d7f
|
Small stylistic fixes
|
2021-02-27 19:57:42 +01:00 |
|
Matthias
|
324b9dbdff
|
Simplify wallet code
|
2021-02-27 10:33:25 +01:00 |
|
Matthias
|
98f3142b30
|
Improve handling of backtesting params
|
2021-02-27 09:33:00 +01:00 |
|
Matthias
|
fc256749af
|
Add test for backtesting _enter_trade
|
2021-02-27 09:33:00 +01:00 |
|
Matthias
|
53a57f2c81
|
Change some types
Fix types of new model object
|
2021-02-27 09:33:00 +01:00 |
|
Matthias
|
03eb23a4ce
|
2 levels of Trade models, one with and one without sqlalchemy
Fixes a performance issue when backtesting with sqlalchemy, as that
uses descriptors for all properties.
|
2021-02-27 09:33:00 +01:00 |
|
Matthias
|
394a6bbf2a
|
Fix some type errors
|
2021-02-27 09:33:00 +01:00 |
|
Matthias
|
52acacbed5
|
Check min-trade-stake in backtesting
|
2021-02-27 09:33:00 +01:00 |
|
Matthias
|
7913166453
|
Improve performance by updating wallets only when necessary
|
2021-02-27 09:33:00 +01:00 |
|
Matthias
|
74fc4bdab5
|
Shorten debug log
|
2021-02-27 09:32:59 +01:00 |
|
Matthias
|
8d61a26382
|
Allow dynamic stake for backtesting and hyperopt
|
2021-02-27 09:32:59 +01:00 |
|
Matthias
|
e4abe902fc
|
Enable compounding for backtesting
|
2021-02-27 09:32:59 +01:00 |
|
Matthias
|
0faa6f84dc
|
Improve Wallet logging disabling for backtesting
|
2021-02-27 09:32:59 +01:00 |
|
Matthias
|
081b9be45c
|
use get_all_locks to get locks for backtest result
|
2021-02-27 09:32:59 +01:00 |
|
Matthias
|
712d503e6c
|
Use sell-reason value in backtesting, not the enum object
|
2021-02-27 09:32:59 +01:00 |
|
Matthias
|
9361aa1c95
|
Add wallets to backtesting
|
2021-02-27 09:32:59 +01:00 |
|
Matthias
|
789a980a30
|
Fix tests for new export format
|
2021-01-24 19:42:32 +01:00 |
|
Matthias
|
deb8432d33
|
Streamline trade to dataframe conversion
|
2021-01-24 08:58:41 +01:00 |
|
Matthias
|
8ee264bc59
|
Don't use profit_percent for backtesting results anymore
|
2021-01-24 08:58:41 +01:00 |
|
Matthias
|
48977493bb
|
Backtesting does not need to convert to BacktestResult object
|
2021-01-24 08:58:41 +01:00 |
|
Matthias
|
0b65fe6afe
|
Capture backtest start / end time
|
2021-01-14 19:09:25 +01:00 |
|
Matthias
|
9147106259
|
call bot_loop_start() in backtesting to allow setup-code to run
|
2021-01-14 19:09:25 +01:00 |
|
Matthias
|
baa1142afa
|
Use preprocessed to get min/max date in hyperopt
|
2021-01-14 19:09:21 +01:00 |
|
Matthias
|
9d4cdcad10
|
Extract backtesting of one strategy
|
2021-01-14 19:04:42 +01:00 |
|
Matthias
|
f3de0dd3eb
|
Fix support for protections in hyperopt
closes #4208
|
2021-01-14 06:53:40 +01:00 |
|
Matthias
|
f11fd2fee1
|
Sort imports
|
2020-12-23 17:00:02 +01:00 |
|
Matthias
|
67193bca3d
|
Move pairlists to be a plugin submodule
|
2020-12-23 16:54:35 +01:00 |
|
Matthias
|
266031a6be
|
Disallow PerformanceFilter for backtesting
closes #4072
|
2020-12-16 19:24:47 +01:00 |
|
Matthias
|
f047297995
|
Improve wording, fix bug
|
2020-12-07 15:48:06 +01:00 |
|
Matthias
|
5849d07497
|
Export locks as part of backtesting
|
2020-12-07 11:39:01 +01:00 |
|
Matthias
|
bb51da8297
|
Fix slow backtest due to protections
|
2020-12-07 11:39:01 +01:00 |
|
Matthias
|
75a5161650
|
Support multis-strategy backtests with protections
|
2020-12-07 11:39:01 +01:00 |
|
Matthias
|
a3f9cd2c26
|
Only load protections when necessary
|
2020-12-07 11:39:01 +01:00 |
|
Matthias
|
e2d15f4082
|
Add parameter to enable protections for backtesting
|
2020-12-07 11:39:01 +01:00 |
|
Matthias
|
32189d27c8
|
Disable output from plugins in backtesting
|
2020-12-07 11:39:01 +01:00 |
|
Matthias
|
9f34aebdaa
|
Allow closing trades without message
|
2020-12-07 11:39:01 +01:00 |
|
Matthias
|
b606936eb7
|
Make changes to backtesting to incorporate protections
|
2020-12-07 11:39:01 +01:00 |
|
Matthias
|
e73203acb8
|
FIx bug with dmmp
|
2020-11-01 10:51:07 +01:00 |
|
Matthias
|
cf2ae788d7
|
Convert backtesting rows to Tuples for performance gains
|
2020-10-18 17:16:57 +02:00 |
|
Matthias
|
5d3a67d324
|
Don't debug-log during backtesting.
Even though log-messages are surpressed, calling "debug" will always
have to do something.
|
2020-10-18 16:38:16 +02:00 |
|
Matthias
|
b80a219d03
|
Improve typehints for backtesting
|
2020-10-18 16:35:23 +02:00 |
|
Matthias
|
2591a34db4
|
Don't use arrow objects for backtesting
|
2020-10-18 16:18:52 +02:00 |
|
Matthias
|
23278e52db
|
remove obsolete logging statements
|
2020-10-08 20:22:59 +02:00 |
|
Matthias
|
e8f2c09f08
|
Extract handling of left open trades to seperate method
|
2020-10-08 20:11:45 +02:00 |
|
Matthias
|
52502193c4
|
Backtesting should not double-loop for sell signals
|
2020-10-07 20:59:05 +02:00 |
|
Matthias
|
253b7b763e
|
Apply isort to freqtrade codebase
|
2020-09-28 19:40:46 +02:00 |
|
Matthias
|
bb27b236ce
|
Remove unused arguments
|
2020-09-26 14:55:12 +02:00 |
|
Matthias
|
ff3e2641ae
|
generate_backtest_stats must take config options from the strategy
config
as a strategy can override certain options.
|
2020-09-25 20:47:37 +02:00 |
|
Matthias
|
284d39930f
|
Allow using pairlists through dataprovider in backtesting
|
2020-08-30 10:07:28 +02:00 |
|
Matthias
|
3d515ed5bf
|
Merge pull request #3558 from freqtrade/bt_add_maxdrawdown
Revise backtesting export format, add some metrics
|
2020-08-19 06:39:47 +02:00 |
|
Matthias
|
87e4a82041
|
Merge branch 'develop' into bt_add_maxdrawdown
|
2020-08-09 08:34:36 +02:00 |
|
Matthias
|
2afe1d5b11
|
Add link to full sample
|
2020-08-08 17:30:31 +02:00 |
|
Matthias
|
dd430455e4
|
Enable dataprovier for hyperopt
|
2020-08-08 17:04:32 +02:00 |
|
Matthias
|
c1191400a4
|
Allow 0 fee value by correctly checking for None
|
2020-07-15 19:20:20 +02:00 |
|
Matthias
|
0d15a87af8
|
Remove old store_backtest method
|
2020-07-03 20:21:32 +02:00 |
|
Matthias
|
7727292861
|
Rename duration to trade_duration
|
2020-07-03 06:58:27 +02:00 |
|
Matthias
|
f368aabcc7
|
Add amount to backtest-result
|
2020-07-03 06:58:27 +02:00 |
|
Matthias
|
6e94734678
|
Add fee to backtestresult
|
2020-07-03 06:58:27 +02:00 |
|
Matthias
|
075eb0a161
|
Fix sequence of saving
|
2020-07-03 06:58:27 +02:00 |
|
Matthias
|
0fa56be9d2
|
remove openIndex and closeIndex from backtest-report
|
2020-07-03 06:58:27 +02:00 |
|
Matthias
|
b068e7c564
|
Rename open_time and close_time to *date
|
2020-07-03 06:58:27 +02:00 |
|
Matthias
|
415853583b
|
Save backtest-stats
|
2020-07-03 06:58:27 +02:00 |
|
Matthias
|
fbddfaeacf
|
Introduce DatetimePrintFormat
|
2020-07-03 06:58:27 +02:00 |
|
Matthias
|
cbcf3dbb43
|
Add more metrics to summarytable
|
2020-07-03 06:58:27 +02:00 |
|
hroff-1902
|
02c0488d45
|
Merge pull request #3453 from freqtrade/fix/3363
Backtesting should load pairlists after the strategy
|
2020-06-29 21:53:33 +03:00 |
|
Matthias
|
72ae4b1500
|
Load pairlist after strategy to use strategy-config
fail in certain conditions when using strategy-list
Fix #3363
|
2020-06-07 16:15:26 +02:00 |
|
hroff-1902
|
64881a94e2
|
Merge branch 'develop' into timeframe
|
2020-06-02 15:56:34 +03:00 |
|
Matthias
|
cadc50ce9b
|
Replace more occurances of ticker_interval with timeframe
|
2020-06-01 20:49:40 +02:00 |
|
Matthias
|
091693308a
|
Correctly call show_backtest_results
|
2020-06-01 09:25:26 +02:00 |
|
Matthias
|
fb8a85da01
|
Disallow VolumePairList from backtesting for now
|
2020-04-27 07:56:17 +02:00 |
|
Matthias
|
8987859044
|
Enable pairlist parsing for backtesting and hyperopt
|
2020-04-25 15:37:13 +02:00 |
|
Matthias
|
de47186263
|
Use .loc for assignments
|
2020-04-02 19:31:48 +02:00 |
|
Matthias
|
e95665ceca
|
Make backtestresult storing independent from printing
|
2020-03-15 15:36:23 +01:00 |
|
Matthias
|
a13d581658
|
Move backtest-result visualization out of backtesting class
|
2020-03-15 15:17:53 +01:00 |
|
Matthias
|
6106d59e1a
|
Move store_backtest_results to optimize_reports
|
2020-03-15 15:17:35 +01:00 |
|
Matthias
|
328dbd3930
|
Remove unnecessary parameter to generate_text_table_sell_reason
|
2020-03-15 15:04:48 +01:00 |
|
Matthias
|
0f1640bed4
|
convert exportfilename to Path when config parsing
|
2020-03-15 09:39:45 +01:00 |
|
hroff-1902
|
ebb0187f40
|
dataframe -> df_analyzed in backtesting and edge
|
2020-03-13 03:54:56 +03:00 |
|
hroff-1902
|
3208faf7ed
|
Do not use ticker where it's not a ticker
|
2020-03-08 20:47:02 +03:00 |
|
Fredrik81
|
55d471190a
|
Changed table style of backtesting and alignment of headers
|
2020-02-27 13:28:28 +01:00 |
|
Matthias
|
d65a06947d
|
Merge branch 'develop' into data_handler
|
2020-02-09 15:16:43 +01:00 |
|
Yazeed Al Oyoun
|
5b00eaa42d
|
Updated Strategy Summary table to match other backtesting tables (#2864)
|
2020-02-06 06:58:58 +01:00 |
|
hroff-1902
|
d457d43999
|
Merge pull request #2833 from hroff-1902/type-hints
Add some type hints
|
2020-02-03 23:24:26 +03:00 |
|
hroff-1902
|
f3d500085c
|
Add some type hints
|
2020-02-02 07:00:40 +03:00 |
|
Yazeed Al Oyoun
|
e2b3907df5
|
more consistent backtesting tables and labels
|
2020-01-31 04:39:18 +01:00 |
|
Matthias
|
1b9af9d2d8
|
Merge branch 'develop' into data_handler
|
2020-01-26 20:31:13 +01:00 |
|
Matthias
|
bd4dd8403b
|
Fix type-errors with stake_amount
|
2020-01-25 12:49:37 +01:00 |
|
hroff-1902
|
f4c7edf551
|
No args for backtest(), use arguments
|
2020-01-25 12:49:37 +01:00 |
|
Matthias
|
fc2970f41b
|
Merge branch 'develop' into data_handler
|
2020-01-21 06:58:48 +01:00 |
|
Tejesh
|
f73f0b1653
|
Update comments on backtesting
|
2020-01-15 19:29:00 +05:30 |
|
Matthias
|
c475729c13
|
Extract edge reporting to optimize_reports
|
2020-01-09 06:52:34 +01:00 |
|
Matthias
|
904e1647e1
|
Extract generate_text_table_strategy to seperate module
|
2020-01-02 09:31:53 +01:00 |
|
Matthias
|
caec345c0b
|
Extract generate_text_table_sell_reason from backtesting class
|
2020-01-02 09:31:53 +01:00 |
|
Matthias
|
18a53f4467
|
Extract generate_text_table from backtesting class
|
2020-01-02 09:31:47 +01:00 |
|
Matthias
|
699c0d6bc3
|
Merge branch 'develop' into data_handler
|
2019-12-30 19:40:43 +01:00 |
|
Matthias
|
1ffda29fd2
|
Adjust improts to new exception location
|
2019-12-30 15:02:17 +01:00 |
|
Matthias
|
f4a532ef6d
|
Pass format to load_data
|
2019-12-28 14:57:39 +01:00 |
|
Matthias
|
416517b0c9
|
Move trim_dataframe from history to converter
|
2019-12-28 11:01:41 +01:00 |
|
hroff-1902
|
6db75bc244
|
Merge pull request #2706 from freqtrade/data_dir
Convert datadir within config to Path
|
2019-12-28 05:14:48 +03:00 |
|
Matthias
|
e5aed098b5
|
Enhance backtest results with sell reason profit / loss table
|
2019-12-25 09:39:29 +01:00 |
|
Matthias
|
c6b9c8eca0
|
Forgot to save
|
2019-12-23 19:32:31 +01:00 |
|
Matthias
|
c6d2233978
|
Convert StrategyLoader to static loader
|
2019-12-23 10:23:48 +01:00 |
|
Matthias
|
560acb7cea
|
Convert ExchangeResolver to static loader class
|
2019-12-23 10:03:18 +01:00 |
|
hroff-1902
|
cf4c3642ce
|
Minor improvements in data.history
|
2019-12-18 01:06:03 +03:00 |
|
Matthias
|
a2964afd42
|
Rename profit_percent to profit_ratio to be consistent
|
2019-12-17 08:53:30 +01:00 |
|
hroff-1902
|
26ab108890
|
Fix mypy errors in develop
|
2019-12-15 01:10:09 +03:00 |
|
hroff-1902
|
1cc174c007
|
Merge pull request #2624 from freqtrade/backtest_refactor
handle and document ROI=-1
|
2019-12-14 23:11:36 +03:00 |
|
Matthias
|
a48c0ad868
|
Use first pair of pairlist to get fee
Use this instead of hardcoded ETH/BTC - so backtesting works with
exchanges without ETH/BTC pair
|
2019-12-14 12:55:02 +01:00 |
|
Matthias
|
7c7ca1cb90
|
Remove min (plural) from codebase
|
2019-12-11 07:12:37 +01:00 |
|
Matthias
|
de33ec4250
|
use sell_row.open also when the active ROI value just changed
|
2019-12-09 16:52:12 +01:00 |
|
Matthias
|
45d12dbc83
|
Avoid a few calculations during backtesting
|
2019-12-07 15:28:56 +01:00 |
|
Matthias
|
3163cbdf8a
|
Apply special case for negative ROI
|
2019-12-07 15:18:12 +01:00 |
|
Matthias
|
3091869115
|
refactor get_close_rate out of get_sell_trade-entry
|
2019-12-07 14:30:14 +01:00 |
|
Matthias
|
af3eea3805
|
Move config json validation to after strategy loading
Otherwise attributes are mandatory in configuration
while they could be set in the strategy
|
2019-11-25 07:05:30 +01:00 |
|
Matthias
|
1c57a4ac35
|
more replacements of ticker_interval
|
2019-11-12 15:13:06 +01:00 |
|
Matthias
|
d801dec6aa
|
Some more places with ticker_interval gone
|
2019-11-12 15:13:06 +01:00 |
|
Matthias
|
e4bdb92521
|
Replace some occurances of ticker_interval with timeframe
|
2019-11-12 15:13:06 +01:00 |
|
Matthias
|
eb0b0350e0
|
Introduce remove_credentials to remove code duplication
|
2019-11-05 12:39:19 +01:00 |
|
Matthias
|
1e44f93c31
|
Fix pandas access warning
|
2019-11-03 10:58:31 +01:00 |
|
Matthias
|
33164ac78e
|
Refactor loading of bt data to backtesting ...
|
2019-10-27 09:44:56 +01:00 |
|
Matthias
|
bd4a23beeb
|
Refactor start-adjust logic to timerange
|
2019-10-27 09:44:56 +01:00 |
|
Matthias
|
6382a4cd04
|
Implement startup-period to default-strategy
|
2019-10-27 09:44:56 +01:00 |
|
Matthias
|
704121c197
|
Move most logic to history
|
2019-10-27 09:44:56 +01:00 |
|
Matthias
|
9c7696a8ce
|
Add required_startup to backtesting
|
2019-10-27 09:44:56 +01:00 |
|
hroff-1902
|
2ec8376af9
|
Merge pull request #2342 from freqtrade/fix/negativeroi
Don't have backtest sells outside of a candle
|
2019-10-08 11:19:34 +03:00 |
|
Matthias
|
0664a8c0e6
|
add --fee to change fees to other values
|
2019-10-05 15:29:00 +02:00 |
|
Matthias
|
7ea9da9605
|
Fix #2277
|
2019-10-05 10:54:28 +02:00 |
|
Matthias
|
dc47a391da
|
Move ignore to corrct line for mypy 730
|
2019-09-30 19:32:46 +02:00 |
|
Matthias
|
1cd8ed0c1a
|
Remove --refresh-pairs
|
2019-09-20 20:02:07 +02:00 |
|
hroff-1902
|
69f29e8907
|
minor: Cleanup for backtesting
|
2019-09-18 22:57:17 +03:00 |
|
hroff-1902
|
76e45883bd
|
Merge pull request #2253 from hroff-1902/backtesting-improve-logs
Improve logs for backtesting
|
2019-09-14 11:23:46 +03:00 |
|
hroff-1902
|
849d694c27
|
Don't inherit from object
|
2019-09-12 04:39:52 +03:00 |
|
hroff-1902
|
9bdfaf3803
|
Remove quotes around the pairs
|
2019-09-11 23:32:08 +03:00 |
|
hroff-1902
|
35580b135a
|
Improve backtesting logs
|
2019-09-10 10:42:45 +03:00 |
|
Matthias
|
972b8a1726
|
Remove defaulting to test_data folder when no datadir is present
|
2019-09-07 21:06:20 +02:00 |
|
hroff-1902
|
d9c2b7d460
|
fix fetching ticker_interval from strategy
|
2019-08-26 22:31:24 +03:00 |
|
hroff-1902
|
bfc68ec792
|
minor cleanup in Backtesting
|
2019-08-25 23:36:42 +03:00 |
|
Matthias
|
9e24992835
|
Remove calls to load_data using live=
|
2019-08-20 07:00:43 +02:00 |
|
Matthias
|
9e8ca8d4bf
|
Merge pull request #2138 from freqtrade/history_docstrings
Refactorings to history
|
2019-08-20 06:35:54 +02:00 |
|
Matthias
|
09286d4918
|
file_dump_json accepts Path - so we should feed it that
|
2019-08-16 13:04:48 +02:00 |
|
Matthias
|
51c3a31bb5
|
Correct imports and calls to parse_timerange
|
2019-08-14 10:07:32 +02:00 |
|
Matthias
|
3d3b0938e5
|
Merge pull request #2101 from freqtrade/backtest_ticker_interval_unset
Backtest ticker interval unset
|
2019-08-07 14:20:36 +02:00 |
|
Matthias
|
7e91a0f4a8
|
Fail gracefully if ticker-interval is not set
|
2019-08-06 06:45:44 +02:00 |
|
Matthias
|
bc2e920ae2
|
Adjust code to verify "current" candle for buy/sells
|
2019-08-05 20:07:29 +02:00 |
|
Matthias
|
5144e98a82
|
Merge pull request #2015 from hroff-1902/refactor/config2
Make configuration a module
|
2019-07-15 19:41:57 +02:00 |
|
hroff-1902
|
1bdffcc73b
|
make configuration a sep. module, including arguments
|
2019-07-12 00:49:23 +03:00 |
|
hroff-1902
|
c474e2ac86
|
fix #2008
|
2019-07-10 01:53:40 +03:00 |
|
Matthias
|
700bc087d3
|
Merge pull request #1952 from hroff-1902/fix/1948
Fix #1948
|
2019-06-27 19:36:06 +02:00 |
|
hroff-1902
|
e5a8030dd7
|
comment added
|
2019-06-27 16:42:10 +03:00 |
|
Matthias
|
a07653a6cc
|
Merge branch 'develop' into fix/validate_dataframe
|
2019-06-24 06:21:08 +02:00 |
|
hroff-1902
|
7fbdf36c64
|
avoid code duplication while selecting min_roi entries
|
2019-06-23 19:23:51 +03:00 |
|
Matthias
|
4cbcb5f36f
|
Move .title to ExchangeResolver (it does not make sense to do this over
and over again)
|
2019-06-22 16:52:14 +02:00 |
|
Matthias
|
55079831a1
|
Don't explicitly validate backtest data (it's done while loading now).
|
2019-06-15 13:45:50 +02:00 |
|
Matthias
|
1afe6c1437
|
Don't run validation per strategy, it's only eneded once
|
2019-06-14 19:37:54 +02:00 |
|
Matthias
|
4dc3a0ca1d
|
Small cleanup to reduce dict lookups during backtesting/hyperopt
|
2019-06-10 16:20:19 +02:00 |
|
hroff-1902
|
90b0f1daa8
|
minor optimize cleanup
|
2019-06-10 02:08:54 +03:00 |
|
Matthias
|
c2f6897d8b
|
Move download of live data to load_data
Avoids code duplication in backtesting and plot_dataframe
|
2019-05-29 20:20:20 +02:00 |
|
Matthias
|
236c392d28
|
Don't load hyperopts / optimize dependency tree if that module is not
used
|
2019-05-25 20:00:31 +02:00 |
|
Matthias
|
b38c43141c
|
Adjust imports to new location
|
2019-05-25 16:53:35 +02:00 |
|
hroff-1902
|
8b95e12468
|
log message adjusted in backtesting and hyperopt
|
2019-05-15 12:05:35 +03:00 |
|
Matthias
|
bf56e25404
|
Merge pull request #1746 from hroff-1902/json-defaults
Support for defaults in json schema
|
2019-04-24 12:20:39 +02:00 |
|
Matthias
|
d16ccd7e37
|
Merge branch 'develop' into json-defaults
|
2019-04-24 09:51:04 +02:00 |
|
hroff-1902
|
ad85ac3dde
|
make --refresh-pairs-cached common option for optimization; added support for it into hyperopt
|
2019-04-22 21:24:45 +03:00 |
|
hroff-1902
|
9fbe573cca
|
limit usage of ccxt to freqtrade/exchange only
|
2019-04-09 12:27:35 +03:00 |
|
hroff-1902
|
4559a38172
|
PoC: use defaults in json schema for some exchange options
|
2019-04-08 04:42:28 +03:00 |
|
hroff-1902
|
8cb1024ff6
|
Merge branch 'develop' into ccxt-parse_timeframe
|
2019-04-05 23:16:27 +03:00 |
|
Misagh
|
9dc2a30793
|
Merge pull request #1683 from gianlup/fix_bt_partial_data
Fix backtest problem with partial data
|
2019-04-05 07:28:57 +02:00 |
|
Matthias
|
7010c835d2
|
Improve commentign
|
2019-04-04 20:23:10 +02:00 |
|
hroff-1902
|
2aa1b43f01
|
get rid of TICKER_INTERVAL_MINUTES dict, use ccxt's parse_timeframe() instead
|
2019-04-04 20:56:40 +03:00 |
|
Matthias
|
32cbb714f9
|
Improve commenting on backtsting and backtest_multi_tst
|
2019-04-04 19:44:03 +02:00 |
|
Matthias
|
0307ba7883
|
Remove one branch - python does lazy evaluation
|
2019-04-03 20:04:04 +02:00 |
|
Matthias
|
e085fd9e95
|
Disable dataprovider from hyperopt.
Dataprovider uses weak links to initialize, which cannot be pickled, and
therefore cannot be used during hyperopt.
|
2019-03-25 19:49:58 +01:00 |
|
Matthias
|
0ae81d4115
|
Provide dataprovider access during backtesting
|
2019-03-25 19:26:51 +01:00 |
|
Matthias
|
00e6749d8b
|
Refactor backtest() to be a bit more concise
|
2019-03-23 15:00:07 +01:00 |
|
Gianluca Puglia
|
6b89e86a97
|
Removed Timestamp cast
|
2019-03-20 19:44:59 +01:00 |
|
Gianluca Puglia
|
0eff324ce0
|
Use dedicated index for every pair
|
2019-03-20 18:38:10 +01:00 |
|
Matthias
|
e67ffd2d87
|
Fix issue that backtest is broken when stoploss_on_exchange is on
|
2019-03-06 19:55:34 +01:00 |
|
Matthias
|
02d13645b0
|
Merge branch 'develop' into feat/dataprovider
|
2019-01-26 19:29:41 +01:00 |
|
Matthias
|
3afe54790e
|
Merge pull request #1510 from gianlup/add_totprofit_to_bt
Added total profit column to backtest result
|
2019-01-25 06:38:39 +01:00 |
|
Matthias
|
d136cac181
|
Merge branch 'develop' into feat/dataprovider
|
2019-01-23 21:01:19 +01:00 |
|
Gianluca Puglia
|
896c9d34fd
|
Added total profit column do backtest result
|
2019-01-22 22:41:53 +01:00 |
|
Matthias
|
13e2f71d30
|
Add flake8 plugins and implement small improvements
|
2019-01-22 20:01:12 +01:00 |
|
Matthias
|
0aa0b1d4fe
|
Store tickers by pair / ticker_interval
|
2019-01-22 07:07:15 +01:00 |
|
Matthias
|
a206777fe5
|
Rename refresh_tickers to refresh_latest_ohlcv
|
2019-01-22 07:05:09 +01:00 |
|
Matthias
|
1340b71633
|
Add RunMode setting to determine bot state
|
2019-01-22 07:04:19 +01:00 |
|
Matthias
|
a2c01916e1
|
Add type-ignores to floatfmt
tabulate supports this:
30554300d7/tabulate.py (tabulate.py-1291) :1294
|
2019-01-17 20:28:21 +01:00 |
|
Matthias
|
cd2bccd441
|
Have backtest use the same logic to get the ROI entry
|
2019-01-12 13:45:43 +01:00 |
|
Misagh
|
26a77e193e
|
Merge pull request #1454 from freqtrade/feat/interpolate_missing
interpolate missing candles
|
2019-01-04 22:33:53 +01:00 |
|
Matthias
|
2bc76771bf
|
Align backtest to interface.py
interface.py roi calculation skips on <= duration
the correct selection is therefore trade_duration > x.
|
2019-01-01 16:50:10 +01:00 |
|
Matthias
|
fae875f588
|
Implement missing_data_fillup to tests and operations
|
2018-12-31 19:15:49 +01:00 |
|
Matthias
|
8b9cc45f41
|
move test for data completeness
should be done before analyzing strategy
|
2018-12-31 15:09:50 +01:00 |
|
Matthias
|
429f846ad1
|
Switch load_data to kwargs
|
2018-12-15 20:31:05 +01:00 |
|
Matthias
|
6c02cc5993
|
Adjust test to pathlib
|
2018-12-15 14:14:38 +01:00 |
|
Matthias
|
21aba1620c
|
Replace calls to load_data
|
2018-12-15 14:10:33 +01:00 |
|
Matthias
|
432cc00283
|
Adjust imports to data.history
|
2018-12-14 06:32:49 +01:00 |
|
Matthias
|
7a533de1a8
|
Use list ticker history for backtesting
|
2018-12-12 19:17:09 +01:00 |
|
Matthias
|
3ac2106a16
|
Merge pull request #1290 from freqtrade/fix/backtest_toomanyopen
fix backtesting not respecting max_open_trades
|
2018-11-30 19:17:09 +01:00 |
|
Matthias
|
21a093bcdb
|
extract resolvers to IResolvers and it's own package
|
2018-11-24 20:00:02 +01:00 |
|
Matthias
|
93429a58b2
|
remove TODO
|
2018-11-09 07:13:20 +01:00 |
|
Matthias
|
66487f2a13
|
require start/end-date argument in backtest
|
2018-11-09 07:13:20 +01:00 |
|
Matthias
|
e94da7ca41
|
inverse backtest logic to loop over time - not pairs (more realistic)
|
2018-11-09 07:12:41 +01:00 |
|
Matthias
|
95d271ca5d
|
Fix ROI close-rate calculation to work with fees - adjust tests
|
2018-11-01 13:14:59 +01:00 |
|
Matthias
|
8c93760a6d
|
simplify some code
|
2018-10-30 20:23:31 +01:00 |
|
Matthias
|
f96f0cdea7
|
Add additional comment
|
2018-10-30 20:02:31 +01:00 |
|
Matthias
|
98050ff594
|
use all min_roi entries
|
2018-10-29 19:27:23 +01:00 |
|
Matthias
|
233c442af9
|
Adjust backtest so sell uses stop-loss or roi value as closerate
|
2018-10-29 19:27:23 +01:00 |
|
Matthias
|
fb52d32296
|
Add validate_backtest_data function
|
2018-10-18 19:42:54 +02:00 |
|
Matthias
|
d7459bbbf3
|
refactor get_timeframe out of backtesting class
|
2018-10-17 19:59:33 +02:00 |
|
Matthias
|
8a3272e7c5
|
don't copy tickerdata_to_dataframe into backtesting
it's used only once, so this does not make sense and hides the origin of
the function
|
2018-10-17 19:47:19 +02:00 |
|
Matthias
|
6e66763e5f
|
Only load strategy once during backtesting
|
2018-09-27 19:23:55 +02:00 |
|
Matthias
|
567211e9f9
|
don't print "NAN" lines in "left_open_trades"
|
2018-09-20 20:35:26 +02:00 |
|
Matthias
|
6d1c82a5fa
|
Remove last refreence to get_candle_history
|
2018-08-19 19:50:14 +02:00 |
|
Janne Sinivirta
|
3a5b435dfa
|
Merge pull request #1089 from freqtrade/feat/backtest_multi_strat
Allow multi strategy backtest without data reload
|
2018-08-02 12:35:47 +03:00 |
|
creslin
|
a741f1144a
|
missing __init__.py
|
2018-08-02 08:58:04 +00:00 |
|
Matthias
|
40ee86b357
|
Adapt after rebase
|
2018-07-31 21:08:03 +02:00 |
|
Matthias
|
76fbb89a03
|
use print for backtest results to avoid odd newline-handling
|
2018-07-31 21:04:03 +02:00 |
|
Matthias
|
c648e2acfc
|
Adjust documentation to strategy table
|
2018-07-31 21:04:03 +02:00 |
|
Matthias
|
028589abd2
|
Add strategy summary table
|
2018-07-31 21:04:03 +02:00 |
|
Matthias
|
5125076f5d
|
Fix typo
|
2018-07-31 21:04:03 +02:00 |
|
Matthias
|
a57a2f4a75
|
Store backtest-result in different vars
|
2018-07-31 21:04:03 +02:00 |
|
Matthias
|
bd3563df67
|
Add test for new functionality
|
2018-07-31 21:04:03 +02:00 |
|
Matthias
|
644f729aea
|
Refactor strategy loading to __init__
|
2018-07-31 21:04:03 +02:00 |
|
Matthias
|
5f2e92ec5c
|
Refactor backtesting
|
2018-07-31 21:04:03 +02:00 |
|
Matthias
|
65aaa3dffd
|
Extract backtest strategy setting
|
2018-07-31 21:04:03 +02:00 |
|
Matthias
|
56046b3cb3
|
Add strategylist option to backtesting
|
2018-07-31 21:04:03 +02:00 |
|
Matthias
|
787d6042de
|
Switch from pair(str) to metadata(dict)
|
2018-07-29 20:56:23 +02:00 |
|
Matthias
|
df8700ead0
|
Adapt after merge from develop
|
2018-07-29 20:55:37 +02:00 |
|
xmatthias
|
2e6e5029ba
|
fix mypy and tests
|
2018-07-29 20:55:06 +02:00 |
|
Janne Sinivirta
|
4b38c8b11d
|
use pandas own min and max for column sorting
|
2018-07-25 17:04:25 +03:00 |
|
Janne Sinivirta
|
0b3190552e
|
Merge pull request #1018 from freqtrade/feat/sell_reason
Record sell reason
|
2018-07-24 09:09:45 +03:00 |
|
Matthias
|
4fb9823cfb
|
fix rebase problem
|
2018-07-19 19:50:06 +02:00 |
|
Matthias
|
760c79c5e9
|
Use .center() to output trades header line
|
2018-07-19 19:39:08 +02:00 |
|
Matthias
|
a452864b41
|
Use namedtuple for sell_return
|
2018-07-19 19:39:08 +02:00 |
|
Matthias
|
506aa0e3d3
|
Add print_sales table and test
|
2018-07-19 19:34:14 +02:00 |
|
Matthias
|
2a61629014
|
Export sell_reason from backtest
|
2018-07-19 19:29:31 +02:00 |
|
Matthias
|
cbffd3650b
|
add sell_reason to backtesting
|
2018-07-19 19:29:31 +02:00 |
|
Janne Sinivirta
|
0cc1b66ae7
|
Merge pull request #1037 from freqtrade/fix/backtest-comment
replace --realistic with 2 separate flags
|
2018-07-19 17:33:19 +03:00 |
|
Janne Sinivirta
|
6070d819b8
|
Merge pull request #1040 from freqtrade/xmatthias_backtest_duration
Fix backtest duration calculation
|
2018-07-19 17:32:11 +03:00 |
|
Matthias
|
aa69177436
|
Properly check emptyness and adjust floatfmt
|
2018-07-19 13:14:21 +02:00 |
|
Matthias
|
79b1030435
|
output duration in a more readable way
|
2018-07-18 20:08:55 +02:00 |
|
Matthias
|
f9f6a3bd04
|
cast to int to keep exports constant
|
2018-07-18 09:29:51 +02:00 |
|
Matthias
|
8e4d2abd4e
|
Fix typo
|
2018-07-18 09:10:17 +02:00 |
|
Matthias
|
08237abe20
|
Fix wrong backtest duration
identified in #1038
|
2018-07-18 09:06:12 +02:00 |
|
Matthias
|
c82276ecbe
|
add --disable-max-market-positions
|
2018-07-17 21:05:03 +02:00 |
|
Matthias
|
e17618407b
|
Rename --realistic-simulation to --enable-position-stacking
|
2018-07-17 20:26:59 +02:00 |
|
Janne Sinivirta
|
aeb4102bcb
|
refactor Analyze class methods to base Strategy class
|
2018-07-16 08:23:39 +03:00 |
|
Janne Sinivirta
|
85e6c9585a
|
remove pass-through methods from Analyze
|
2018-07-16 08:23:39 +03:00 |
|
Janne Sinivirta
|
a74147c472
|
move strategy initialization outside Analyze
|
2018-07-16 08:23:39 +03:00 |
|
Matthias
|
06c9494a46
|
add missing s to Backtest cum results
|
2018-07-11 14:50:04 +02:00 |
|
Janne Sinivirta
|
aa2366346a
|
Merge pull request #1001 from xmatthias/feat/backtest_cum_profit
Add cumulative profit to backtest result table
|
2018-07-11 07:21:28 +03:00 |
|
Matthias
|
8b06000f0f
|
Use open-rates for backtesting
|
2018-07-08 20:03:11 +02:00 |
|
Matthias
|
efaa8f16e7
|
Improve formattiong of table
|
2018-07-08 20:01:33 +02:00 |
|
Matthias
|
1a24afef77
|
add cumsum to backtest-results
|
2018-07-08 19:55:04 +02:00 |
|
Janne Sinivirta
|
bf4d0a9b70
|
sort imports
|
2018-07-04 10:31:35 +03:00 |
|
Michael Egger
|
6dd5f85fb6
|
Merge pull request #954 from freqtrade/feat/allow_backtest_plot
allow backtest ploting
|
2018-06-29 19:44:06 +02:00 |
|
xmatthias
|
e70cb963f7
|
document what to do with exported backtest results
|
2018-06-24 17:00:00 +02:00 |
|
Anton
|
f82b809fcf
|
Merge with develop
|
2018-06-23 16:50:27 +03:00 |
|
xmatthias
|
0440a19171
|
export open/close rate for backtesting too
preparation to allow plotting of backtest results
|
2018-06-23 14:19:50 +02:00 |
|
Janne Sinivirta
|
c73b9f5c77
|
avoid calling exchange.get_fee inside loop
|
2018-06-22 21:04:07 +03:00 |
|
xmatthias
|
251f7db3ca
|
require exchange object to delete pairs
|
2018-06-17 23:38:07 +02:00 |
|
xmatthias
|
21edcbdc27
|
Refactor exchange to class
|
2018-06-17 23:38:07 +02:00 |
|
Anton
|
ae94ab17f4
|
Merge branch 'develop' into feature-unlimited-stake_amount
|
2018-06-17 02:23:40 +03:00 |
|
Matthias
|
a5511e2e30
|
Merge pull request #894 from freqtrade/feature/force_close_backtest
Display open trades after backtest period
|
2018-06-16 12:49:08 +02:00 |
|
xmatthias
|
c0289ad844
|
use list comprehension to build list
|
2018-06-13 19:53:12 +02:00 |
|
xmatthias
|
e600be4f56
|
Reduce force-sell verbosity
|
2018-06-13 19:44:00 +02:00 |
|
xmatthias
|
6357812743
|
fix backtest report able
|
2018-06-13 06:57:49 +02:00 |
|
xmatthias
|
e3ced7c15e
|
extract export from backtest function
|
2018-06-12 22:29:30 +02:00 |
|
xmatthias
|
bfde33c945
|
Use timestamp() instead of strftime
this will avoid a bug shifting epoch time by 1 hour:
https://stackoverflow.com/questions/11743019/convert-python-datetime-to-epoch-with-strftime
|
2018-06-12 21:12:55 +02:00 |
|
xmatthias
|
335d1fbbbc
|
Check if no backtest data is found and fail gracefully
|
2018-06-11 19:50:43 +02:00 |
|
xmatthias
|
12e455cbf5
|
add buy/sell index to backtest result
|
2018-06-10 20:52:42 +02:00 |
|
xmatthias
|
27ee8f7360
|
make flake happy
|
2018-06-10 13:55:48 +02:00 |
|
xmatthias
|
1cd7ac55a8
|
Added "left open trades" report
|
2018-06-10 13:45:16 +02:00 |
|
xmatthias
|
b81588307f
|
Add "open_at_end" parameter
|
2018-06-10 13:37:53 +02:00 |
|
xmatthias
|
31025216f9
|
fix type of open/close timestmap
|
2018-06-10 13:32:07 +02:00 |
|
xmatthias
|
322a528c12
|
fix bug with backtestResult
|
2018-06-10 13:25:16 +02:00 |
|
xmatthias
|
9c57d3aa8b
|
add BacktestresultTuple
|
2018-06-10 13:15:46 +02:00 |
|
xmatthias
|
c1b2e06eda
|
simplify return from _get_sell_trade_entry
|
2018-06-10 09:07:04 +02:00 |
|