The "smart_money_strategy" is a trading strategy designed for backtesting on a trading platform. Here's a short description of what the strategy does:
The strategy aims to buy assets at a low price and sell them at a higher price, without implementing any advanced or sophisticated techniques. It uses various technical indicators to make buying and selling decisions, including the Chaikin Money Flow (CMF), Money Flow Index (MFI), and the Exponential Moving Average (EMA) with a period of 200.
The strategy tries to avoid false signals by considering the relationship between the closing price and the EMA(200) indicator, as well as the MFI and CMF values.
When the conditions for a buy signal are met (e.g., the closing price is below the EMA(200), MFI is below 35, and CMF is below -0.07), the strategy generates a buy signal.
Conversely, when the conditions for a sell signal are met (e.g., the closing price is above the EMA(200), MFI is above 70, and CMF is above 0.20), the strategy generates a sell signal. The strategy has a predefined minimal return on investment (ROI) target, where it aims for a 10% return. There is also a stop-loss mechanism implemented, with a value of -99, which indicates that the strategy does not use a stop-loss. The strategy is optimized for a timeframe of 1 hour and is primarily focused on maximizing sell profits rather than minimizing losses. The "smart_money_strategy_hyperopt" is an extension of the original strategy that includes hyperparameters for hyperparameter optimization. It uses the same technical indicators and buying/selling conditions as the base strategy but allows for the optimization of specific parameters. The hyperparameters that can be optimized include:
"buy_mfi": The MFI value used as a threshold for a buy signal. "buy_cmf": The CMF value used as a threshold for a buy signal. "sell_mfi": The MFI value used as a threshold for a sell signal. "sell_cmf": The CMF value used as a threshold for a sell signal. By optimizing these hyperparameters, the strategy can be fine-tuned to improve its performance based on historical data. The hyperparameters have predefined ranges within which the optimization can be performed. The strategy still maintains the minimal ROI target, stop-loss value, timeframe, and sell profit preferences from the base strategy.
Traceback (most recent call last):
File "/freqtrade/freqtrade/main.py", line 42, in main
return_code = args['func'](args)
^^^^^^^^^^^^^^^^^^
File "/freqtrade/freqtrade/commands/optimize_commands.py", line 58, in start_backtesting
backtesting.start()
File "/freqtrade/freqtrade/optimize/backtesting.py", line 1391, in start
self.load_bt_data_detail()
File "/freqtrade/freqtrade/optimize/backtesting.py", line 270, in load_bt_data_detail
self.detail_data = history.load_data(
^^^^^^^^^^^^^^^^^^
File "/freqtrade/freqtrade/data/history/history_utils.py", line 99, in load_data
hist = load_pair_history(pair=pair, timeframe=timeframe,
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/freqtrade/freqtrade/data/history/history_utils.py", line 57, in load_pair_history
return data_handler.ohlcv_load(pair=pair,
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/freqtrade/freqtrade/data/history/idatahandler.py", line 320, in ohlcv_load
pairdf = self._ohlcv_load(
^^^^^^^^^^^^^^^^^
File "/freqtrade/freqtrade/data/history/featherdatahandler.py", line 62, in _ohlcv_load
pairdata = read_feather(filename)
^^^^^^^^^^^^^^^^^^^^^^
File "/home/ftuser/.local/lib/python3.11/site-packages/pandas/io/feather_format.py", line 129, in read_feather
return feather.read_feather(
^^^^^^^^^^^^^^^^^^^^^
File "/home/ftuser/.local/lib/python3.11/site-packages/pyarrow/feather.py", line 226, in read_feather
return (read_table(
^^^^^^^^^^^
File "/home/ftuser/.local/lib/python3.11/site-packages/pyarrow/feather.py", line 252, in read_table
reader = _feather.FeatherReader(
^^^^^^^^^^^^^^^^^^^^^^^
File "pyarrow/_feather.pyx", line 79, in pyarrow._feather.FeatherReader.__cinit__
File "pyarrow/error.pxi", line 154, in pyarrow.lib.pyarrow_internal_check_status
File "pyarrow/error.pxi", line 91, in pyarrow.lib.check_status
pyarrow.lib.ArrowInvalid: Not an Arrow file