Matthias
201fe108bc
Merge pull request #5607 from TreborNamor/develop
...
a new hyperopt loss created that uses calmar ratio
2021-10-29 09:20:44 +02:00
Matthias
5cdae2ce3f
Remove CalmarDaily hyperopt loss
2021-10-29 06:53:40 +02:00
Matthias
20a61e03da
Merge pull request #5786 from SimonEbner/clean_up_file_handles
...
Clean up file handles
2021-10-25 19:49:07 +02:00
Robert Roman
88b96d5d1b
Update hyperopt_loss_calmar.py
2021-10-25 00:45:10 -05:00
Simon Ebner
f7926083ca
Clean up unclosed file handles
...
Close all file handles that are left dangling to avoid warnings such as
```
ResourceWarning: unclosed file <_io.TextIOWrapper
name='...' mode='r' encoding='UTF-8'> params = json_load(filename.open('r'))
```
2021-10-24 23:15:05 +02:00
Simon Ebner
df033d92ef
Improve performance of decimalspace.py
...
decimalspace.py is heavily used in the hyperoptimization. The following
benchmark code runs an optimization which is taken from optimizing a
real strategy (wtc).
The optimized version takes on my machine approx. 11/12s compared to the
original 32s. Results are equivalent in both cases.
```
import freqtrade.optimize.space
import numpy as np
import skopt
import timeit
def init():
Decimal = freqtrade.optimize.space.decimalspace.SKDecimal
Integer = skopt.space.space.Integer
dimensions = [Decimal(low=-1.0,
high=1.0,
decimals=4,
prior='uniform',
transform='identity')] * 20
return skopt.Optimizer(
dimensions,
base_estimator="ET",
acq_optimizer="auto",
n_initial_points=5,
acq_optimizer_kwargs={'n_jobs': 96},
random_state=0,
model_queue_size=10,
)
def test():
opt = init()
actual = opt.ask(n_points=2)
expected = [[
0.7515, -0.4723, -0.6941, -0.7988, 0.0448, 0.8605, -0.108, 0.5399,
0.763, -0.2948, 0.8345, -0.7683, 0.7077, -0.2478, -0.333, 0.8575,
0.6108, 0.4514, 0.5982, 0.3506
], [
0.5563, 0.7386, -0.6407, 0.9073, -0.5211, -0.8167, -0.3771,
-0.0318, 0.2861, 0.1176, 0.0943, -0.6077, -0.9317, -0.5372,
-0.4934, -0.3637, -0.8035, -0.8627, -0.5399, 0.6036
]]
absdiff = np.max(np.abs(np.asarray(expected) - np.asarray(actual)))
assert absdiff < 1e-5
def time():
opt = init()
print('dt', timeit.timeit("opt.ask(n_points=20)", globals=locals()))
if __name__ == "__main__":
test()
time()
```
2021-10-24 18:14:24 +02:00
Matthias
dffb4c5d53
Merge branch 'develop' into pr/TreborNamor/5607
2021-10-24 08:55:10 +02:00
Matthias
96f99699e0
Merge pull request #4606 from rextea/add_days_breakdown_to_backtesting_summary
...
Add days breakdown table to backtesting
2021-10-21 13:56:30 +02:00
Matthias
e458c9867a
Styling fixes
2021-10-21 07:45:15 +02:00
Matthias
7b5346b984
Add test for breakdown-stats
2021-10-21 07:11:39 +02:00
Matthias
fa028c2134
Support day/week/month breakdowns
2021-10-21 06:58:40 +02:00
Matthias
7197f4ce77
Don't show daily % profit (it's wrong)
2021-10-20 20:01:31 +02:00
Matthias
de5497c766
backtest_days cannot be below 1
2021-10-20 19:39:37 +02:00
Matthias
5454460227
Revert initial_points to 30
...
closes #5760
2021-10-20 07:46:15 +02:00
Matthias
7d8cd736b8
Support days-breakdown also for hyperopt results
2021-10-17 16:49:39 +02:00
Matthias
47bba331c1
Merge branch 'develop' into pr/rextea/4606
2021-10-17 16:29:31 +02:00
Matthias
0e7d903a6f
Merge pull request #5644 from slyons/develop
...
Add ability to ignore unparameterized spaces
2021-10-14 08:07:07 +02:00
Matthias
aed919a05f
Simplify "no-space-configured" error handling by moving it to hyperopt_auto
2021-10-13 19:54:35 +02:00
sid
30bc96cf3f
simplify expression
2021-10-09 06:36:23 +05:30
sid
46c320513a
use profit_abs
2021-10-07 08:07:07 +05:30
sid
6ba46b38bd
fix formatting
2021-10-06 13:46:05 +05:30
sid
c0d01dbc26
add max_drawdown loss
2021-10-06 13:24:27 +05:30
Scott Lyons
df45f467c6
Adding ability to ignore unparameterized spaces
2021-09-30 01:11:02 -07:00
Robert Roman
ca973c05d1
Merge branch 'freqtrade:develop' into develop
2021-09-28 10:16:36 -05:00
Robert Roman
626a40252d
resolved mypy error
...
error: Signature of "hyperopt_loss_function" incompatible with supertype "IHyperOptLoss"
2021-09-27 17:33:29 -05:00
Robert Roman
c3414c3b78
resolved mypy error
...
error: Signature of "hyperopt_loss_function" incompatible with supertype "IHyperOptLoss"
2021-09-27 17:32:49 -05:00
Matthias
5726886b06
Reduce backtest-noise from "pandas slice" warning
2021-09-27 20:52:19 +02:00
Robert Roman
bdca3e2343
Merge branch 'freqtrade:develop' into develop
2021-09-26 15:37:09 -05:00
Matthias
6319c104fe
Fix unreliable backtest-result when using webserver mode
2021-09-26 15:07:48 +02:00
Robert Roman
24baad7884
Add Calmar Ratio Daily
...
This hyper opt loss calculates the daily Calmar ratio.
2021-09-25 16:28:36 -05:00
Robert Roman
3b99c84b0a
resolved the total profit issue
...
I resolved the total profit issue and locally ran flak8 and isort
2021-09-23 21:31:33 -05:00
Robert Roman
c6b684603c
removed trade_count inside if statement
...
i removed trade_count inside if statement. Even though it helps overfitting, It is not useful when running hyperopt on small datasets.
2021-09-22 09:21:43 -05:00
Robert Roman
b946f8e7f1
I sorted imports with isort
2021-09-22 09:18:17 -05:00
Robert Roman
3834bb86ff
updated line 42
...
I removed the minus sign on max drawdown.
2021-09-21 20:25:17 -05:00
Robert Roman
3845d55186
a new hyperopt loss created that uses calmar ratio
...
This is a new hyperopt loss file that uses the Calmar Ratio.
Calmar Ratio = average annual rate of return / maximum drawdown
2021-09-21 20:04:23 -05:00
Rokas Kupstys
5dc78a0c66
[SQUASH] Get rid of _initialize() and fix informatives for dynamic pairlists.
2021-09-18 10:48:53 +03:00
Rokas Kupstys
dfa61b7ad2
[SQUASH] Fix informatives for each pair not being created because dataprovider was not available.
...
Fix not being able to have informative dataframe of a pair in whitelist.
2021-09-18 10:48:53 +03:00
Matthias
853c3a4433
Merge pull request #5587 from raph92/patch-3
...
Update prepare_trials_columns() return type
2021-09-18 08:08:18 +02:00
raphael
4b2c1a9b8e
Remove trailing whitespace
2021-09-17 14:39:15 -04:00
raphael
e715f2a253
Update formatting
...
Line 302 was too long
2021-09-17 14:23:26 -04:00
raphael
9525a5b96c
Add type to "trials" parameter
2021-09-17 14:10:37 -04:00
raphael
124e97f3b9
Remove ununsed variables from export_csv_file
2021-09-17 11:57:36 -04:00
raphael
3a98fb72a4
Update prepare_trials_columns() return type
...
Was returning str, updated to pd.DataFrame
2021-09-17 11:42:33 -04:00
Matthias
994c3c3a4c
Add some errorhandling for custom estimator
2021-09-16 07:13:25 +02:00
Matthias
c0811ae896
Add possibility to override estimator from within hyperopt
2021-09-15 21:36:53 +02:00
Matthias
57ea0c322f
Rename indicator_space to buy_indicator_space
2021-09-15 20:20:31 +02:00
Matthias
315ea1e116
Merge pull request #5566 from freqtrade/remove_hyperopt
...
Remove legacy hyperopt
2021-09-14 19:20:58 +02:00
Matthias
a12c3ecc9b
Remove credentials whenever dry-run is set from within the exchange
2021-09-13 20:27:32 +02:00
Matthias
fd6bf591f8
Update some tests to remove explicit hyperopt interface
2021-09-12 08:18:13 +02:00
Matthias
dad4a49e81
Remove legacy hyperopt interface from hyperopt.py
2021-09-12 08:18:13 +02:00