Matthias
c26c0b6822
Merge branch 'feat/short' into short_buy_tag_compat
2021-11-21 19:31:59 +01:00
Matthias
36deced00b
Remove more buy_tag references
2021-11-21 09:55:10 +01:00
Matthias
0a50017c84
Add long/short support to backtesting
2021-11-18 20:34:59 +01:00
Matthias
f40221dd9f
Merge branch 'develop' into feat/short
2021-11-18 20:20:01 +01:00
Matthias
e0fd880c11
Improve some more pct formattings
2021-11-11 16:12:23 +01:00
Sam Germain
e8b4cf6eaa
Merge branch 'develop' into feat/short
2021-10-02 03:15:12 -06:00
Matthias
6319c104fe
Fix unreliable backtest-result when using webserver mode
2021-09-26 15:07:48 +02:00
Matthias
2a678bdbb4
Update buy_tag column to long_tag
2021-09-26 08:37:44 +02:00
Matthias
71ff214adf
Support "initial_call" for download-data of new pairs
2021-09-07 07:14:40 +02:00
Masoud Azizi
40ad451019
Download-data log process added
...
Download-data log process added
pytest assert solved
2021-08-20 14:52:56 +00:00
slowy07
f24a951ec5
fix: typo spelling grammar
2021-08-16 19:16:24 +07:00
Matthias
e9ef9a6d28
Use .view() to convert dates to enums
...
part of #5314 - fixing deprecation warning.
2021-08-01 10:31:35 +02:00
Matthias
138b126d03
Merge pull request #5299 from kevinjulian/feat/kevinjulian/add-buy-signal-name
...
Add buy signal name
2021-07-30 08:23:11 +02:00
kevinjulian
49886874aa
rename to buy_tag
2021-07-21 20:05:35 +07:00
kevinjulian
cbfedf8b29
fix backtest testcase
2021-07-20 23:25:00 +07:00
George Muravei-Alkhavoi
ab786abf7f
Fix intendation.
2021-07-19 00:47:51 +03:00
George Muravei-Alkhavoi
f705293353
Dataprovider caching and trimming to timerange of historical informative.
2021-07-19 00:25:24 +03:00
Matthias
10998eb0fa
Remove further usages of int(int_timestamp)
2021-07-05 19:51:14 +02:00
aayush-jain18
d294ef10d7
unexpected docstring params
2021-06-25 23:56:16 +05:30
aayush-jain18
a46f60bd94
spell corrections
2021-06-25 22:10:04 +05:30
Matthias
9c34304cb9
Move state enums to enums package
2021-06-08 21:20:35 +02:00
Matthias
a7bd8b0aa5
Fix exception in plotting when no trades where generated
...
as seen in #4981
2021-05-22 17:03:16 +02:00
Matthias
96ea10e562
Fix circular import in hyperopt
2021-05-21 08:52:56 +02:00
Matthias
f398888865
Refactor preprocessed trimming to seperate method
2021-05-21 08:26:19 +02:00
Brook Miles
db17b1a851
fix indentation
2021-05-15 20:20:36 +09:00
Brook Miles
88da1f109b
fix #4412 download-data does not stop downloading at the specified TIMERANGE end date
2021-05-15 20:15:19 +09:00
Matthias
92186d89a2
Add some changes to strategytemplate
2021-05-09 09:56:36 +02:00
Rokas Kupstys
8d8c782bd0
Slice dataframe in backtesting, preventing access to rows past current time.
2021-05-08 18:40:49 +03:00
Rokas Kupstys
1b01ad6f85
Make exchange parameter optional and do not use it as parameter in backtesting.
2021-05-08 10:29:47 +03:00
Matthias
4b6cd69c81
Add test for no-exchange dataprovider
2021-05-08 10:29:47 +03:00
Rokas Kupstys
d344194b36
Fix dataprovider in hyperopt.
2021-05-08 10:29:47 +03:00
Rokas Kupstys
cdfa6adbe5
Store pair datafrmes in dataprovider for backtesting.
2021-05-08 10:29:47 +03:00
Matthias
4f529fe424
Don't use Arrow to get min/max backtest dates
2021-05-06 19:43:14 +02:00
Matthias
fd3afdc230
plot-profit should use absolute values
2021-04-25 10:10:09 +02:00
Matthias
e855530483
hdf5 handler should include the end-date
2021-04-24 20:26:37 +02:00
Matthias
406c1267a2
Remove superfluss space
2021-04-22 20:01:08 +02:00
Rokas Kupstys
09efa7b06b
Add --new-pairs-days parameter for download-data command.
...
This parameter allows us to customize a number of days we would like to download for new pairs only. This allows us to achieve efficient data update, downloading all data for new pairs and only missing data for existing pairs. To do that use `freqtrade download-data --new-pairs-days=3650` (not specifying `--days` or `--timerange` causes freqtrade to download only missing data for existing pairs).
2021-04-22 10:07:13 +03:00
Matthias
9b23be4021
Return a copy from current_whitelist
...
this avoids manipulating of the pair whitelist from within a strategy
2021-04-13 06:49:53 +02:00
Matthias
50fcb3f330
Reduce verbosity of missing data if less than 1% of data is missing
2021-03-30 07:26:39 +02:00
Matthias
89bbfd2324
Remove candle_count from dataframe before backtesting
...
closes #3754
2021-03-29 20:26:54 +02:00
Matthias
53a57f2c81
Change some types
...
Fix types of new model object
2021-02-27 09:33:00 +01:00
Matthias
aed23d55c2
Add starting balance to profit cumsum calculation
2021-02-27 09:33:00 +01:00
Matthias
0d2f877e77
Use absolute drawdown calc
2021-02-27 09:32:59 +01:00
Florian Reitmeir
5c263c7ffd
add backtesting results abs profit min/abs profit max, to get a better view if a strategy has a enough money to succeed
2021-02-14 19:41:12 +01:00
Matthias
2c80388b40
Fix valueerror in case of empty array files
2021-02-01 06:28:49 +01:00
Matthias
5724371a4f
Fix types for numpy 1.20.0 upgrade
2021-01-31 11:21:23 +01:00
Matthias
ea0ffbae73
use profit_ratio in calculate_cum_profit
2021-01-29 19:06:57 +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
0d4cf32086
Slightly adapt to pandas incompatibility
2020-12-28 09:50:48 +01:00
Matthias
ceb50a7807
use exception handler when downloading data
...
closes #3992
2020-11-25 07:57:27 +01:00
Matthias
e8e3ca0c3c
Catch ValueError from trade_conversion
...
closes #3967
2020-11-21 10:57:19 +01:00
Matthias
83861fabde
Fix #3967 , move TradeList type to constants
2020-11-21 10:52:15 +01:00
Matthias
52c9a2c37f
Convert np to None when loading hdf5 trades to allow duplicate detection
2020-11-19 07:31:54 +01:00
Matthias
887d78171c
Merge pull request #3857 from freqtrade/arrow_deprecation_timestamp
...
Convert timestamp to int_timestamp for all arrow occurances
2020-11-02 16:40:43 +01:00
Matthias Spiller
78874fa865
informative_pairs does not honor dataformat
2020-10-31 10:53:51 +00:00
Matthias
adffd402ea
Replace some pointless occurances of arrow
2020-10-20 20:11:38 +02:00
Matthias
8cdc795a44
Rename persistence.init to init_db
2020-10-16 08:15:18 +02:00
Matthias
6977ffdbf9
Merge branch 'develop' into isort_config
2020-09-28 20:21:55 +02:00
Matthias
253b7b763e
Apply isort to freqtrade codebase
2020-09-28 19:40:46 +02:00
Matthias
6e70ae6e95
Improve code quality
2020-09-27 19:40:55 +02:00
Matthias
3cb1a9a5a9
Support loading results from a specific hyperopt history file
2020-09-27 17:03:30 +02:00
Matthias
c42a924df8
Load latest file
2020-09-27 16:50:42 +02:00
Matthias
77d0189695
Remove not needed argument in update_trade_state
2020-09-19 09:37:11 +02:00
Matthias
38c52c7eee
Merge pull request #3626 from freqtrade/feat/hdf5
...
Introduce HDF5 Datahandler
2020-08-31 16:10:24 +02:00
Matthias
284d39930f
Allow using pairlists through dataprovider in backtesting
2020-08-30 10:07:28 +02:00
Matthias
309ea1246a
Update config to use single quotes
2020-08-26 20:52:09 +02:00
Matthias
4eb17b4daf
Remove unneeded function
2020-08-18 15:20:37 +02:00
Matthias
87e4a82041
Merge branch 'develop' into bt_add_maxdrawdown
2020-08-09 08:34:36 +02:00
Matthias
bad89307dd
Fix mypy error
2020-07-25 17:19:41 +02:00
Matthias
119bf2a8ea
Document hdf5 dataformat
2020-07-25 17:06:58 +02:00
Matthias
0a28818b46
Add some tests for hdf5
2020-07-24 19:37:37 +02:00
Matthias
861e7099cc
Rename hdf5handler to hdf5DataHandler
2020-07-24 19:23:37 +02:00
Matthias
3171ad33b7
Add blosc compression
2020-07-24 17:44:29 +02:00
Matthias
0f08addfbe
Don't store empty arrays
2020-07-24 17:37:07 +02:00
Matthias
31df42e737
Implement get_available_data
2020-07-24 17:31:43 +02:00
Matthias
d4540c846a
Add trades_load method
2020-07-23 19:33:23 +02:00
Matthias
55591e287c
First version of hdf5handler - no proper support for trades yet
2020-07-23 19:33:23 +02:00
Matthias
b035d9e267
Update return type comment
2020-07-12 10:23:09 +02:00
Matthias
d4fc52d2d5
Add tests for ohlcv_get_available_data
2020-07-12 09:56:46 +02:00
Matthias
422825ea1b
Add ohlcv_get_available_data to find available data
2020-07-12 09:50:53 +02:00
Matthias
d56f9655e2
Update notebook with new statistics example
2020-07-03 07:20:43 +02:00
Matthias
d999fa2a7e
Test autogetting result filename
2020-07-03 06:58:27 +02:00
Matthias
7c5587aeaa
exportfilename can be a file or directory
2020-07-03 06:58:27 +02:00
Matthias
2ed808da1f
Extract .last_result.json to constant
2020-07-03 06:58:27 +02:00
Matthias
afefe92523
Add multi-strategy loading logic
2020-07-03 06:58:27 +02:00
Matthias
c13ec4a1d4
implement fallback loading for load_backtest_data
2020-07-03 06:58:27 +02:00
Matthias
04eaf2c39c
Add test for get_last_backtest_Result
2020-07-03 06:58:27 +02:00
Matthias
7727292861
Rename duration to trade_duration
2020-07-03 06:58:27 +02:00
Matthias
af9a9592b7
Remove unnecessary statement
2020-07-03 06:58:27 +02:00
Matthias
dacb40a976
Add get_latest_backtest_filename
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
5fce7f3b22
Add market Change
...
closes #2524 and #3518
2020-07-03 06:58:27 +02:00
Matthias
c2a6f70b4c
Merge branch 'develop' into keep_dataframe_noapi
2020-06-30 07:46:52 +02:00
Matthias
bf61bc9d83
Introduce ExchangeError
2020-06-28 16:01:40 +02:00
Matthias
676006b99c
--dl-trades should also support increasing download span
...
(by downloading the whole dataset again to avoid missing data in the
middle).
2020-06-24 17:40:23 +02:00
Matthias
ab9382434f
Add test for get_analyzed_dataframe
2020-06-18 06:50:06 +02:00
Matthias
8166b37253
Explicitly check if dp is available
2020-06-18 06:50:06 +02:00
Matthias
9794914838
store dataframe updated as tuple
2020-06-18 06:50:05 +02:00
Matthias
fd97ad9b76
Cache analyzed dataframe
2020-06-18 06:50:05 +02:00
Matthias
a3506f4d8e
Merge branch 'develop' into timeframe
2020-06-15 06:35:55 +02:00
Matthias
3f9ab0846d
Rename profitperc to profit_percent
2020-06-07 15:39:59 +02:00
hroff-1902
f4c2bb1346
Fix crash in #3404
2020-06-02 19:37:08 +03:00
Matthias
f9bb1a7f22
Update more occurances of ticker_interval
2020-06-02 10:02:55 +02:00
Matthias
cadc50ce9b
Replace more occurances of ticker_interval with timeframe
2020-06-01 20:49:40 +02:00
Matthias
16cd1f06b2
Rename get_order_book to fetch_l2_order_book (aligning to ccxt)
2020-05-26 20:27:35 +02:00
Matthias
046202fdda
Fix typing circular dependency
2020-05-22 20:56:34 +02:00
Matthias
1a984ac677
Explicitly raise ValueError if trades are empty
2020-05-21 07:12:53 +02:00
hroff-1902
115586a50f
Introduce freqtrade.typing
2020-05-18 21:59:50 +03:00
hroff-1902
627c5059f0
Move create_pair_list to pairlistmanager
2020-05-18 13:54:21 +03:00
hroff-1902
5f2a871637
Add missing module
2020-05-16 17:15:58 +03:00
hroff-1902
e7c11ed2cf
Fix fetching timeframe (failed in backtesting)
2020-05-16 12:27:56 +03:00
hroff-1902
f8b01f5a43
Make flake happy
2020-05-16 12:27:56 +03:00
hroff-1902
035a12ce61
Move _create_pair_whitelist to dataprovider
2020-05-16 12:27:56 +03:00
hroff-1902
bf25746965
Introduce datatype for informative pairs
2020-05-16 12:27:56 +03:00
hroff-1902
aae096c6ae
Handle fetching ticker for non-existing pair safe way
2020-05-14 13:36:48 +03:00
hroff-1902
3079e18239
Merge branch 'develop' into dataprovider-add-ticker
2020-05-14 13:22:52 +03:00
hroff-1902
b4d2433fc1
Merge pull request #3267 from GrilledChickenThighs/develop
...
Method for accessing current pairlist inside strategy.
2020-05-13 21:29:39 +03:00
Matthias
d86855f2f3
Merge pull request #3129 from freqtrade/trades_to_list
...
convert dl-trades datadownload to list
2020-05-13 09:41:26 +02:00
Paul D. Mendes
9fbe135790
attached pairlist manager onto dataprovider init for unified access to dynamic whitelist
2020-05-11 20:17:03 +04:00
Paul D. Mendes
bc9efc31ad
Added Method for accessing current pair list on initialization for dynamic informative pairs
...
moved import into function to avoid circular import with hyperopt
2020-05-11 19:45:15 +04:00
hroff-1902
63b55658ac
Add ticker to dataprovider
2020-05-01 05:11:30 +03:00
Matthias
7aba9bc62a
Update freqtrade/data/converter.py
...
Co-Authored-By: hroff-1902 <47309513+hroff-1902@users.noreply.github.com>
2020-04-17 06:22:25 +02:00
hroff-1902
f2b1802666
Merge pull request #3137 from freqtrade/fix_maxdrawdown
...
[minor] Fix maxdrawdown
2020-04-14 16:03:25 +03:00
Matthias
ddf37ef059
Add test to demonstrate that the dataframe is not changed
2020-04-14 08:02:42 +02:00
Matthias
4ee0cbb575
Reset index to correctly gather index
2020-04-12 10:40:02 +02:00
orehunt
20abb379aa
trim trades to the available ohlcv data before plotting profits
2020-04-06 15:54:17 +02:00
Matthias
41d5c40f10
Correctly test drawdown plot
2020-04-05 14:44:44 +02:00
Matthias
e204170eb6
Fix max_drawdown bug finding low before high!
2020-04-05 14:29:40 +02:00
Matthias
9d7ad23d42
Fix test leakage
2020-04-02 08:20:50 +02:00
Matthias
eab6c9c5f2
Fix message
2020-04-01 20:50:00 +02:00
Matthias
0d51383b57
Format logmessages correctly
2020-04-01 20:31:21 +02:00
Matthias
ba03d96961
Test 5s offset on since
2020-04-01 20:04:36 +02:00
Matthias
ff9caf790b
remove trade duplicates in datahandler
2020-04-01 19:45:46 +02:00
Matthias
0506caf986
Implement trades_remove_dulicates
2020-04-01 19:45:38 +02:00
Matthias
bac0eaab03
fix convert to ohlcv
2020-04-01 19:45:35 +02:00
Matthias
d76bb1ccf4
Use List of Lists instead of list of Dicts for trades data
2020-04-01 19:45:21 +02:00
Matthias
1659ddcc5d
Add conversion function from fetch_trades to list
2020-04-01 19:45:21 +02:00
Matthias
3e1bef888a
Fix flake8 error
2020-03-18 19:40:13 +01:00
Fredrik81
0920d6fce4
Update freqtrade/data/btanalysis.py
...
Co-Authored-By: Matthias <xmatthias@outlook.com>
2020-03-18 11:01:09 +01:00
Fredrik81
8c33e07dc6
Update based on comments
2020-03-15 21:20:32 +01:00
hroff-1902
57ff3ff450
Merge branch 'develop' into plot-trades
2020-03-15 13:31:00 +03:00
Matthias
0f1640bed4
convert exportfilename to Path when config parsing
2020-03-15 09:39:45 +01:00
Fredrik81
27faf12fde
Fix if no file exists
2020-03-14 22:15:03 +01:00
hroff-1902
59fadabb5b
Fix merging
2020-03-13 20:26:14 +03:00
hroff-1902
51f52c8609
Merge branch 'develop' into no-ticker-2
2020-03-13 16:43:52 +03:00
Matthias
6f67b8d9b9
iCheck after clean_dataframe, too
2020-03-12 19:50:46 +01:00
Matthias
129a88d5da
Extract emptyness check to it's own method
2020-03-11 19:53:28 +01:00
orehunt
3eaae4661d
check again for emptiness after trimming dataframe
2020-03-09 17:51:21 +01:00
hroff-1902
3208faf7ed
Do not use ticker where it's not a ticker
2020-03-08 20:47:02 +03:00
Matthias
9d8970a76b
Add test and formatting to drawdown
2020-03-03 20:23:44 +01:00
Matthias
33a63562cb
make drawdown function less restrictive
2020-03-03 07:23:38 +01:00
Matthias
e050511ddc
Add test for max_drawdown calculation
2020-03-03 07:20:41 +01:00
Matthias
3479f7d986
Add max_drawdown function
2020-03-03 07:15:03 +01:00
hroff-1902
e2e6b940a3
copy=False does not make the changes inline anyway, so not needed
2020-02-22 19:54:19 +03:00
hroff-1902
c651e0ac82
Fix #2948
2020-02-22 19:46:40 +03:00
Matthias
3186add87b
Use explicit column list for float parsing
2020-02-22 14:46:54 +01:00
Matthias
7ecc56fa44
Load ohlcv data as float
2020-02-22 13:10:41 +01:00
Matthias
d65a06947d
Merge branch 'develop' into data_handler
2020-02-09 15:16:43 +01:00
hroff-1902
f3d500085c
Add some type hints
2020-02-02 07:00:40 +03:00
Matthias
41945138ac
Converting pairs from filename to pair corrected
2020-01-05 13:35:36 +01:00
Matthias
4eaaec9d1a
Implement pair_to_filename to datahandler
...
includes tests - taken from #2744 and modified to adapt to new structure
2020-01-05 10:36:08 +01:00
Matthias
f82c4346b6
data conversion, not data conversation
...
* we're not talking to the data yet ...
2020-01-05 09:55:02 +01:00
Matthias
2409261cb7
Merge branch 'develop' into data_handler
2020-01-04 11:36:27 +01:00
Matthias
2c8e8d8ef6
Align columns for btanalysis loading
2020-01-02 09:51: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
814cc20c6b
Remove potential circular import
2019-12-28 19:58:41 +01:00
Matthias
f4a532ef6d
Pass format to load_data
2019-12-28 14:57:39 +01:00
Matthias
ae1b28aab7
Remove get_datahandlerclass from package exposes
2019-12-28 14:32:11 +01:00
Matthias
66d18575a7
Implement abstract interface
2019-12-28 11:10:31 +01:00
Matthias
9e4fc00a0f
Add test for convert_ohlcv
2019-12-28 11:03:06 +01:00
Matthias
28787a001c
Move convert functions to convert module
2019-12-28 11:02:34 +01:00
Matthias
6860491189
Rename datahandler module to history module
...
Also move previous history.py into this module - so everything is
bundled
2019-12-28 11:01:42 +01:00
Matthias
9c5b94adf5
Pass data_format to methods
2019-12-28 11:01:42 +01:00
Matthias
d65c1eea7a
Add some tests for datahandler
2019-12-28 11:01:42 +01:00
Matthias
8a030e7fc0
Use exists instead of is_file
2019-12-28 11:01:42 +01:00
Matthias
a3144cb2f0
remove trim_tickerlist
2019-12-28 11:01:42 +01:00
Matthias
d1b52809ac
Cleanup history
2019-12-28 11:01:41 +01:00
Matthias
d06777b8ce
Remove old "load_cached_data" method
2019-12-28 11:01:41 +01:00
Matthias
7a6476c9ba
Update tests
2019-12-28 11:01:41 +01:00
Matthias
df085a6f15
Fix small bug and test
2019-12-28 11:01:41 +01:00
Matthias
c648d973c1
Implement new "load_data_for_updating" method based on dataframes
2019-12-28 11:01:41 +01:00
Matthias
ec8fb5f308
Make no-data warning optional
2019-12-28 11:01:41 +01:00
Matthias
b83487a70d
Extract default dataframe columns to constant
2019-12-28 11:01:41 +01:00
Matthias
91c70a0e9c
Change to use ohlcv_purge
2019-12-28 11:01:41 +01:00
Matthias
37c5b68987
Move dataframe validation to abstract class
2019-12-28 11:01:41 +01:00
Matthias
e861f05b75
Move dataframe trim to within jsondatahandler
2019-12-28 11:01:41 +01:00
Matthias
552c93abf0
Improve some docstrings
2019-12-28 11:01:41 +01:00
Matthias
b7c1d55491
Modify tests to point to datahandlers
2019-12-28 11:01:41 +01:00
Matthias
9876d126ca
Use handler for trades
2019-12-28 11:01:41 +01:00
Matthias
9547d47ae2
Initialize datahandlers
2019-12-28 11:01:41 +01:00
Matthias
5fca17d7e1
Allow initializing handler-class just once
2019-12-28 11:01:41 +01:00
Matthias
416517b0c9
Move trim_dataframe from history to converter
2019-12-28 11:01:41 +01:00
Matthias
9d8ea2f13b
Replace calls to load_tickerdata_file with DataHandler calls
2019-12-28 11:01:41 +01:00
Matthias
88fa7fc24c
Simplify validate dataframe method
2019-12-28 11:01:41 +01:00
Matthias
53ee636fa0
Check if file exists before loading
2019-12-28 11:01:41 +01:00
Matthias
873f5dbe6b
Revrite validate_pairdata to work with pandas
2019-12-28 11:01:41 +01:00
Matthias
db520a09ee
Trim dataframe, not tickerlist
2019-12-28 11:01:41 +01:00