add --fee to change fees to other values
				
					
				
			This commit is contained in:
		| @@ -15,7 +15,7 @@ ARGS_STRATEGY = ["strategy", "strategy_path"] | ||||
| ARGS_MAIN = ARGS_COMMON + ARGS_STRATEGY + ["db_url", "sd_notify"] | ||||
|  | ||||
| ARGS_COMMON_OPTIMIZE = ["ticker_interval", "timerange", | ||||
|                         "max_open_trades", "stake_amount"] | ||||
|                         "max_open_trades", "stake_amount", "fee"] | ||||
|  | ||||
| ARGS_BACKTEST = ARGS_COMMON_OPTIMIZE + ["position_stacking", "use_max_market_positions", | ||||
|                                         "strategy_list", "export", "exportfilename"] | ||||
|   | ||||
| @@ -144,6 +144,12 @@ AVAILABLE_CLI_OPTIONS = { | ||||
|         default=os.path.join('user_data', 'backtest_results', | ||||
|                              'backtest-result.json'), | ||||
|     ), | ||||
|     "fee": Arg( | ||||
|         '--fee', | ||||
|         help='Specify fee %%. Should be in %%, will be applied twice (on trade entry and exit).', | ||||
|         type=float, | ||||
|         metavar='FLOAT', | ||||
|     ), | ||||
|     # Edge | ||||
|     "stoploss_range": Arg( | ||||
|         '--stoplosses', | ||||
|   | ||||
| @@ -210,6 +210,10 @@ class Configuration: | ||||
|                              logstring='Parameter --stake_amount detected, ' | ||||
|                              'overriding stake_amount to: {} ...') | ||||
|  | ||||
|         self._args_to_config(config, argname='fee', | ||||
|                              logstring='Parameter --fee detected, ' | ||||
|                              'setting fee to: {} ...') | ||||
|  | ||||
|         self._args_to_config(config, argname='timerange', | ||||
|                              logstring='Parameter --timerange detected: {} ...') | ||||
|  | ||||
| @@ -323,7 +327,8 @@ class Configuration: | ||||
|                         sample: logfun=len (prints the length of the found | ||||
|                         configuration instead of the content) | ||||
|         """ | ||||
|         if argname in self.args and self.args[argname]: | ||||
|         if (argname in self.args and self.args[argname] is not None | ||||
|             and self.args[argname] is not False): | ||||
|  | ||||
|             config.update({argname: self.args[argname]}) | ||||
|             if logfun: | ||||
|   | ||||
| @@ -77,8 +77,10 @@ class Edge: | ||||
|  | ||||
|         self._timerange: TimeRange = TimeRange.parse_timerange("%s-" % arrow.now().shift( | ||||
|             days=-1 * self._since_number_of_days).format('YYYYMMDD')) | ||||
|  | ||||
|         self.fee = self.exchange.get_fee() | ||||
|         if config.get('fee'): | ||||
|             self.fee = config['fee'] | ||||
|         else: | ||||
|             self.fee = self.exchange.get_fee() | ||||
|  | ||||
|     def calculate(self) -> bool: | ||||
|         pairs = self.config['exchange']['pair_whitelist'] | ||||
|   | ||||
| @@ -63,9 +63,12 @@ class Backtesting: | ||||
|         self.config['exchange']['uid'] = '' | ||||
|         self.config['dry_run'] = True | ||||
|         self.strategylist: List[IStrategy] = [] | ||||
|  | ||||
|         self.exchange = ExchangeResolver(self.config['exchange']['name'], self.config).exchange | ||||
|         self.fee = self.exchange.get_fee() | ||||
|  | ||||
|         if config.get('fee'): | ||||
|             self.fee = config['fee'] | ||||
|         else: | ||||
|             self.fee = self.exchange.get_fee() | ||||
|  | ||||
|         if self.config.get('runmode') != RunMode.HYPEROPT: | ||||
|             self.dataprovider = DataProvider(self.config, self.exchange) | ||||
|   | ||||
		Reference in New Issue
	
	Block a user