Rikj000 / MoniGoMani

Isn't that what we all want? Our money to go many? Well that's what this framework/strategy hopes to do for you! By giving you & HyperOpt a lot of signals to alter the weights from.

Home Page:https://monigomani.io

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

❓ Exception: inputs are all NaN

rodrigogs opened this issue · comments

I'm having the following error using mgm-hurry on Ubuntu 21.

I just executed mgm-hurry up and left everything as default. Any idea?

INFO - Using optimizer random state: 46429
INFO - Using indicator startup period: 400 ...
INFO - NumExpr defaulting to 8 threads.
INFO - Loading data from 2021-04-29 14:40:00 up to 2021-10-26 00:00:00 (179 days).
INFO - Dataload complete. Calculating indicators
WARNING - No history data for pair: "BTC/USDT", timeframe: 4h. Use `freqtrade download-data` to download the data
ERROR - Fatal exception!
Traceback (most recent call last):
  File "/home/rodrigosilva/Workspace/mgm-dev/freqtrade-mgm/freqtrade/main.py", line 37, in main
    return_code = args['func'](args)
  File "/home/rodrigosilva/Workspace/mgm-dev/freqtrade-mgm/freqtrade/commands/optimize_commands.py", line 87, in start_hyperopt
    hyperopt.start()
  File "/home/rodrigosilva/Workspace/mgm-dev/freqtrade-mgm/freqtrade/optimize/hyperopt.py", line 398, in start
    self.prepare_hyperopt_data()
  File "/home/rodrigosilva/Workspace/mgm-dev/freqtrade-mgm/freqtrade/optimize/hyperopt.py", line 378, in prepare_hyperopt_data
    preprocessed = self.backtesting.strategy.ohlcvdata_to_dataframe(data)
  File "/home/rodrigosilva/Workspace/mgm-dev/freqtrade-mgm/freqtrade/strategy/interface.py", line 716, in ohlcvdata_to_dataframe
    return {pair: self.advise_indicators(pair_data.copy(), {'pair': pair})
  File "/home/rodrigosilva/Workspace/mgm-dev/freqtrade-mgm/freqtrade/strategy/interface.py", line 716, in <dictcomp>
    return {pair: self.advise_indicators(pair_data.copy(), {'pair': pair})
  File "/home/rodrigosilva/Workspace/mgm-dev/freqtrade-mgm/freqtrade/strategy/interface.py", line 733, in advise_indicators
    return self.populate_indicators(dataframe, metadata)
  File "/home/rodrigosilva/Workspace/mgm-dev/freqtrade-mgm/monigomani/user_data/strategies/MoniGoManiHyperStrategy.py", line 159, in populate_indicators
    return self._populate_indicators(dataframe=dataframe, metadata=metadata)
  File "/home/rodrigosilva/Workspace/mgm-dev/freqtrade-mgm/monigomani/user_data/strategies/MasterMoniGoManiHyperStrategy.py", line 514, in _populate_indicators
    core_trend = self._populate_core_trend(core_trend, metadata)
  File "/home/rodrigosilva/Workspace/mgm-dev/freqtrade-mgm/monigomani/user_data/strategies/MasterMoniGoManiHyperStrategy.py", line 431, in _populate_core_trend
    dataframe['ht_trendmode'] = ta.HT_TRENDMODE(dataframe)
  File "talib/_abstract.pxi", line 399, in talib._ta_lib.Function.__call__
  File "talib/_abstract.pxi", line 441, in talib._ta_lib.Function.__call_function
  File "/home/rodrigosilva/Workspace/mgm-dev/freqtrade-mgm/.env/lib/python3.9/site-packages/talib/__init__.py", line 27, in wrapper
    return func(*args, **kwargs)
  File "talib/_func.pxi", line 3169, in talib._ta_lib.HT_TRENDMODE
  File "talib/_func.pxi", line 68, in talib._ta_lib.check_begidx1
Exception: inputs are all NaN
ERROR - 🤷 No "best" results found during the HyperOpt, aborting further tests since there are no HyperOpt results to test upon.

You still need to mgm-hurry download_candle_data for 4h candles

Sorry for commenting in this closed thread @Rikj000 , but I'm facing this issue as well even though my configuration isn't set to use 4h timeframe. It's true that the moment I include in my downloaded data the 4h candles then the error disappears and I'm able to run the hyperopt. However, in this situation the hyperopt doesn't seem to find any best result.

In short, despite of setting in the configuration to use 5m/30m candles the hyperopt seems to require 4h, causing (I'm assuming) not to find any best result.

Please take this as a very humble input from somebody that wants to participate and that values the hard work you've invested in this project.

Sorry for commenting in this closed thread @Rikj000 , but I'm facing this issue as well even though my configuration isn't set to use 4h timeframe. It's true that the moment I include in my downloaded data the 4h candles then the error disappears and I'm able to run the hyperopt. However, in this situation the hyperopt doesn't seem to find any best result.

In short, despite of setting in the configuration to use 5m/30m candles the hyperopt seems to require 4h, causing (I'm assuming) not to find any best result.

Please take this as a very humble input from somebody that wants to participate and that values the hard work you've invested in this project.

Hi @Bloodsucker, no problem glad you took the time to write down your concerns! 🦾
My guess would be that it's just not that clear that MGM was using 4h candles.

In the default mgm-config we use a "timeframe": "30m" and a "core_trend_timeframe_multiplier": 8,
which resulted into a "core_trend_timeframe": "4h"(30m x 8 = 4h).

Don't worry though, the core_trend_timeframe_multiplier wasn't documented yet and I actually just switched it back to a more simple core_trend_timeframe again + I added a new TimeFrames Documentation section 🙂

FYI: When you update with mgm-hurry install_mgm you currently still will manually have to update your mgm-config

This was such a fast and informative answer. I've managed to get that new commit and I've also let the script to replace to the new one. Very much appreciated.

Seriously, keep this hard work and attitude for this dream project.