Matthias
ae0e72a945
Provide strategy with copied objects
...
avoids accidental modification of crucial elements in a trade object
part of #5828
2021-11-08 19:59:29 +01:00
Matthias
ebc38159b8
Merge branch 'develop' into feat/short
2021-11-06 15:24:52 +01:00
Matthias
431b96de98
Merge branch 'develop' into pr/theluxaz/5710
2021-11-03 19:43:36 +01:00
Matthias
c094ac5762
Merge branch 'develop' into feat/short
2021-10-30 19:45:19 +02:00
incrementby1
a50bde10de
Merge https://github.com/freqtrade/freqtrade into personal-branch
2021-10-27 15:52:10 +02:00
Matthias
f80d3d48e4
Add default to minimal_roi to avoid failures
...
closes #5796
2021-10-27 06:33:49 +02:00
incrementby1
c3f3bdaa2a
Add "allow_position_stacking" value to config, which allows rebuys of a pair
...
Add function unlock_reason(str: pair) which removes all PairLocks with reason
Provide demo strategy that allows buying the same pair multiple times
2021-10-26 00:04:40 +02: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
theluxaz
69a59cdf37
Fixed flake 8, changed sell_tag to exit_tag and fixed telegram functions
2021-10-18 23:56:41 +03:00
Matthias
bc10b451fe
Revert wrong condition
2021-10-17 09:46:39 +02:00
Sam Germain
5fbe76cd7e
isolated conditionals in interface stoploss method
2021-10-14 05:10:28 -06:00
theluxaz
b151cf032b
Merge branch 'develop' of https://github.com/theluxaz/freqtrade into main
...
# Conflicts:
# freqtrade/freqtradebot.py
# freqtrade/optimize/backtesting.py
2021-10-13 02:01:26 +03:00
theluxaz
80b71790bc
Added some bigfixes for sell_tag
2021-10-13 01:22:53 +03:00
theluxaz
b898f86364
Added sell_tag and buy/sell telegram performance functions
2021-10-13 00:02:28 +03:00
Sam Germain
729957572b
updated strategy stop_loss_reached to work for shorts
2021-10-09 14:39:11 -06:00
Sam Germain
7f7f377a90
updated a test, put in TODO-lev
2021-10-07 05:03:38 -06:00
Matthias
a926f54a25
Add "side" parameter to custom_stake_amount
2021-09-26 19:35:54 +02:00
Matthias
84e013de2d
Update confirm_trade_entry to support "side" parameter
2021-09-26 19:33:22 +02:00
Matthias
4fd00db630
Use "combined" enter_tag column
2021-09-26 15:22:37 +02:00
Matthias
2a678bdbb4
Update buy_tag column to long_tag
2021-09-26 08:37:44 +02:00
Matthias
a0ef89d910
Also support column-transition for V1 strategies
2021-09-22 20:52:55 +02:00
Matthias
0e13d57e57
Update advise_* methods to entry/exit
2021-09-22 20:42:31 +02:00
Matthias
5928ba9c88
Test and document leverage strategy callback
2021-09-22 20:14:52 +02:00
Matthias
7a5c7e7020
Update some tests to use StrategyV3
2021-09-21 19:33:33 +02:00
Sam Germain
778f0d9d0a
Merged feat/short into lev-strat
2021-09-19 17:44:12 -06:00
Rokas Kupstys
713e7819f7
[SQUASH] Remove mypy import.
2021-09-18 15:27:58 +03:00
Rokas Kupstys
e4ca42faec
[SQUASH] Update stoploss_from_absolute to behave more like stoploss_from_open and add a test for it.
2021-09-18 10:48:53 +03:00
Rokas Kupstys
7e6aa9390a
[SQUASH] Unconditionally include quote currency when asset is explicitly specified. Added docs suggesting to use string formatting to make strategy independent of configured stake currency.
2021-09-18 10:48:53 +03:00
Rokas Kupstys
e88c4701bb
[SQUASH] Address PR comments.
2021-09-18 10:48:53 +03:00
Matthias
bb6ae682fc
Small simplifications
2021-09-18 10:48:53 +03: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
f81df19b93
[TMP] Make tests not fail for now.
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
Rokas Kupstys
f2a1d9d2fc
[SQUASH] Address PR comments.
2021-09-18 10:48:18 +03:00
Rokas Kupstys
1fdb656334
Add a decorator which can be used to declare populate_indicators() functions for informative pairs.
2021-09-18 10:48:18 +03:00
Rokas Kupstys
d84ef34740
A helper to calculate stoploss value from absolute price.
2021-09-18 10:48:18 +03:00
Matthias
a89c67787b
Replace some more occurances of 'buy'
2021-09-18 09:23:53 +02:00
Matthias
4d558879e9
Merge branch 'feat/short' into pr/samgermain/5378
2021-09-17 19:33:35 +02:00
Matthias
d680fdf33a
Merge branch 'develop' into feat/short
2021-09-17 11:16:37 +02:00
Matthias
f7bae81d96
Dataframe should be copied after populate_indicator
...
Without that, PerformanceWarnings can appear throughout hyperopt which
are unnecessary and missleading for users
closes #5408
2021-09-15 19:56:12 +02:00
Sam Germain
f5b01443ad
buy/short -> entry order, sell/exit_short -> exit order
2021-09-09 02:10:12 -06:00
Matthias
2e50948699
Fix some tests
2021-09-04 20:23:51 +02:00
Matthias
ca44d2e092
Merge branch 'feat/short' into pr/samgermain/5378
2021-09-04 19:54:34 +02:00
Matthias
5184cc7749
Merge branch 'develop' into feat/short
2021-09-02 07:03:14 +02:00
Matthias
da5f8c87ae
Add stake_currency to strategy interface
...
allows type-completion in editors
2021-08-31 07:18:57 +02:00
Matthias
6b93c71d15
Small refactorings, use only enter_long columns
2021-08-25 06:49:06 +02:00
Matthias
b951f59f89
Fix patch_get_signal
2021-08-24 21:03:13 +02:00
Matthias
6524edbb4e
Simplify should_exit interface
2021-08-24 20:47:54 +02:00
Matthias
f3b6a0a797
Fix some type errors
2021-08-24 20:40:35 +02:00
Matthias
9a03cb96f5
Update get_signal
2021-08-24 20:24:51 +02:00
Matthias
b40f985b13
Add short-exit logic to backtesting
2021-08-24 20:02:40 +02:00
Matthias
11bd8e912e
Fix some tests
2021-08-24 06:52:28 +02:00
Matthias
7a977a8eaf
Merge branch 'feat/short' into pr/samgermain/5378
2021-08-24 06:28:16 +02:00
Matthias
957551ea97
Merge branch 'develop' into feat/short
2021-08-24 06:25:06 +02:00
Matthias
faf5cfa66d
Update some tests for updated backtest interface
2021-08-23 21:35:28 +02:00
Matthias
9add3bf808
Add enter_long compatibility layer
2021-08-23 21:12:46 +02:00
Sam Germain
0afeb269ad
Removed unnecessary TODOs
2021-08-23 00:15:35 -06:00
Sam Germain
5ca3f49cb5
merged with feat/short after feat/short added styling and comment changes PR
2021-08-22 21:37:20 -06:00
Sam Germain
a5be535cc9
strategy interface: removed some changes
2021-08-21 17:06:04 -06:00
Sam Germain
55c070f1bb
Added interface leverage method
2021-08-18 16:52:34 -06:00
Sam Germain
dc4090234d
Added interface leverage method
2021-08-18 16:52:34 -06:00
Sam Germain
092780df9d
condensed strategy methods down to 2
2021-08-18 16:52:34 -06:00
Sam Germain
d4a7d2d444
Added short and exit_short to strategy
2021-08-18 16:52:20 -06:00
Sam Germain
314359dd6e
strategy interface changes to comments to mention shorting
2021-08-18 13:23:04 -06:00
Sam Germain
e2d5299116
Name changes for strategy
2021-08-18 13:22:54 -06:00
Matthias
c456cfc312
Merge branch 'develop' into pr/Axel-CH/5347
2021-08-14 09:13:30 +02:00
Matthias
cf27968b97
Properly preserve trade's low during backtesting
2021-08-09 19:38:56 +02:00
Matthias
a5f796bc97
refactor ohlcvdata_to_dataframe to advise_all_indicators
2021-08-09 14:53:18 +02:00
Matthias
6532aba765
Merge pull request #5360 from freqtrade/hyperopt_protections
...
Hyperopt protections and Boolean parameter
2021-08-07 09:42:05 +02:00
Sam Germain
b9356a5564
Autopep8 formatting
2021-08-06 16:35:39 -06:00
axel
612b88e993
Merge branch 'develop' of https://github.com/freqtrade/freqtrade into custom_order_price
2021-08-05 18:21:31 -04:00
axel
cb3b0cf311
add custom_exit_price in interface and freqtradebot
2021-08-04 23:09:40 -04:00
axel
f243ad4af0
add custom_exit_price in strategy interface
2021-08-04 19:09:55 -04:00
axel
f9f519fd3c
add custom_exit_price function to interface
2021-08-04 18:54:17 -04:00
axel
d9b9eecd4d
remove entry price reached method
2021-08-04 18:47:14 -04:00
Matthias
ad0e4a8567
Add BooleanParameter
2021-08-04 20:52:56 +02:00
Matthias
3c41223333
Add test for protections-hyperopt
2021-08-04 20:01:28 +02:00
Matthias
544e0da6c2
Add protection parameter space
2021-08-04 06:50:14 +02:00
Matthias
6410a6528b
Add missing methods to advanced strategy template
2021-08-04 06:46:21 +02:00
axel
b644233ead
rename custom_entry_price kwarg to align it to the interface
2021-08-03 17:03:27 -04:00
axel
b3dafb378e
remove use_custom_entry_price as a config option
2021-08-03 16:54:28 -04:00
axel
00939b63f2
flake 8 fixes
2021-08-03 16:25:18 -04:00
axel
53fb8b05e7
remove short logic in entry_price_reached function
2021-08-03 16:19:29 -04:00
axel
5284112b69
fix in custom entry function output,remove changes related to outdated prices, doc exemple minor changes
2021-08-03 15:57:23 -04:00
axel
f11f5d17e9
add feature custom entry price for live
2021-08-03 15:57:23 -04:00
Matthias
c981641441
Don't fail if strategy doesn't contain sell signal
2021-08-02 20:30:46 +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
aea5da0c73
changes testcase
2021-07-23 11:42:43 +07:00
kevinjulian
5fe18be4b5
add note buy_tag and split 3 assignment for get_signal
2021-07-23 01:25:15 +07:00
Matthias
b84a1d0c92
Don't crash when *_params is not defined in strategy
...
closes #5407
2021-07-22 20:21:04 +02:00
kevinjulian
643b6b950e
run flake8
2021-07-22 02:23:34 +07:00
kevinjulian
25e329623f
change signature
2021-07-22 02:11:54 +07:00
kevinjulian
235c1afd09
add buy_tag on telegram
2021-07-22 01:53:15 +07:00
kevinjulian
49886874aa
rename to buy_tag
2021-07-21 20:05:35 +07:00
kevinjulian
66a7070170
run linter
2021-07-20 23:56:03 +07:00
Kevin Julian
edf9c08f06
Merge branch 'develop' into feat/kevinjulian/add-buy-signal-name
2021-07-20 19:19:46 +07:00
kevinjulian
ed30c023cd
fix some testcase
2021-07-20 19:08:14 +07:00
kevinjulian
104711a9bf
get_signal signature
2021-07-20 05:04:25 +07:00
kevinjulian
9e63bdbac9
feat: add buy signal name
2021-07-20 04:58:20 +07:00
Rokas Kupstys
0e4466ca1e
Implement strategy-controlled stake sizes. Expose self.wallet
to a strategy.
2021-07-11 12:38:58 +03:00
Matthias
898bef1837
Merge pull request #5219 from freqtrade/hyperopt_paramfile
...
automatic Hyperopt paramfile
2021-07-04 13:56:52 +02:00
Rokas Kupstys
3686efa08a
Add range property to CategoricalParameter and DecimalParameter, add their tests.
...
At the moment we can keep a single code path when using IntParameter, but we have to make a special hyperopt case for CategoricalParameter/DecimalParameter. Range property solves this.
2021-07-03 16:02:45 +03:00
Matthias
645da51b5f
Add test for parameter loading
2021-06-30 06:55:10 +02:00
Matthias
55f032b18e
Catch trying to read faulty parameter file
2021-06-29 20:51:29 +02:00
Matthias
a2ccc1526e
Load parameters from file
2021-06-29 07:07:34 +02:00
Matthias
2310deec53
Update name to get non-optimized parameters
2021-06-29 06:50:47 +02:00
Matthias
750c780293
Support loading parameters from json file
2021-06-29 06:50:47 +02:00
Matthias
158cb415a9
Add settings interface to have types available
2021-06-26 17:28:37 +02:00
Matthias
1067a9f356
Move strategy-override signals to top-level of the config
...
closes #2867
2021-06-26 16:06:13 +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
96fbb226c5
Implement better strategy checks
...
part of #2696
2021-06-19 19:32:29 +02:00
Matthias
e1010ff592
Don't load protections from config if strategy defines a property
2021-06-18 19:55:53 +02:00
Matthias
38ed49cef5
move low to stoploss_reached
...
to clarify where which rate is used
2021-06-15 09:05:36 +03:00
Rokas Kupstys
6d5fc96714
Implement most pessimistic handling of trailing stoploss.
2021-06-15 09:05:36 +03:00
Matthias
d4dfdf04fc
Move RPCMessageType to enums
2021-06-09 20:23:17 +02:00
Matthias
9c34304cb9
Move state enums to enums package
2021-06-08 21:20:35 +02:00
Matthias
3c149b9b59
Move signalType to enums
2021-06-08 21:09:39 +02:00
Matthias
89b9915c12
Update imports for SellType in tests
2021-06-08 21:07:16 +02:00
Matthias
d16a619489
Move SellType Enum to it's own module
2021-06-08 21:04:34 +02:00
Matthias
d7fdc2114a
allow list-strategies to show if params are hyperoptable
2021-05-29 13:27:08 +02:00
Matthias
4bc018a456
Change rate back to "open" for custom_sell
...
closes #4920
2021-05-14 07:18:10 +02:00
Rokas Kupstys
6af4de8fe8
Remove dataframe parameter from docs.
2021-05-08 10:29:47 +03:00
Rokas Kupstys
dc6e702fec
Pass current_time to confirm_trade_entry/confirm_trade_exit.
2021-05-08 10:29:47 +03:00
Rokas Kupstys
d34da3f981
Revert "Add dataframe parameter to custom_stoploss() and custom_sell() methods."
...
This reverts commit 595b8735f8
.
# Conflicts:
# freqtrade/optimize/backtesting.py
# freqtrade/strategy/interface.py
2021-05-08 10:29:47 +03:00
Matthias
9049d6b779
Reformat hyper to cache parameters
2021-05-02 10:45:21 +02:00
Matthias
555262b6e1
Only calculate additional indicators if the space is selected
2021-05-01 16:40:29 +02:00
Matthias
e050ea8dfa
Don't load parameters for other space
2021-05-01 16:21:59 +02:00
Joe Schr
f3388ed9aa
fix IStrategy: abstract methods still need to pass through return value
...
otherwise doing something like:
```py
dataframe = super().populate_indicators(dataframe, ...)
```
won't work, because `dataframe` becomes `None`.
This is needed if one of those methods uses dataframe.copy() instead of
just working on reference. e.g. using `merge_informative` in
`populate_indicator` in a nested class hierarchy
2021-04-30 14:39:01 +02:00
Matthias
55faa6a84a
safe_wrapper should use kwargs to call methods
2021-04-26 20:18:03 +02:00
Matthias
dbf33271b5
Small doc changes
2021-04-26 19:52:26 +02:00
Rokas Kupstys
31a2285eac
Fix mypy complaints.
2021-04-26 10:42:24 +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
961b38636f
Remove explicit sell_flag parameter from SellCheckTuple.
2021-04-25 09:48:40 +03:00
Rokas Kupstys
bfad4e82ad
Make execute_sell() use SellCheckTuple for sell reason.
2021-04-25 09:48:40 +03:00
Rokas Kupstys
a90e795695
Warn and trim custom sell reason if it is too long.
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
Rokas Kupstys
1292e08fe4
Use strategy_safe_wrapper() when calling custom_sell().
2021-04-25 09:48:40 +03:00
Rokas Kupstys
0fd68aee51
Add IStrategy.custom_sell method which allows per-trade sell signal evaluation.
2021-04-25 09:48:40 +03:00
Matthias
90476c4287
Add "range" property to IntParameter
2021-04-24 07:00:33 +02:00
Matthias
9dc7f776d9
Improve log output when loading parameters
2021-04-23 20:35:30 +02:00
Matthias
e820814809
Default-stoploss-hyperopt should use decimal space, nto real
2021-04-14 20:32:34 +02:00
Matthias
9804e20114
Don't use _set_value for autoOpt-Spaces
2021-04-10 09:53:48 +02:00
Matthias
83fbaf16c8
Extract numeric param validation and explosion
2021-04-10 07:59:59 +02:00
Matthias
ea4b5d675d
Don't explode low/high, but use explicit parameters
2021-04-10 07:12:31 +02:00
Matthias
5f67400649
Add SKDecimal Space
2021-04-09 21:58:15 +02:00
Matthias
c51839dc3b
Make the logmessage for loaded parameters clearer
2021-04-05 11:21:20 +02:00
Matthias
dc406fe19f
Fail in case of name and explicit space name collisions
2021-04-05 10:53:00 +02:00
Matthias
30e5e92968
Don't allow one parmeter to be in 2 spaces
...
use the explicit user wish (given explicitly with "space")
2021-04-03 20:17:48 +02:00
Rokas Kupstys
faf40482ef
Fix parameter printing.
2021-04-03 13:49:24 +03:00