Skip to content
This repository was archived by the owner on Jun 8, 2023. It is now read-only.
This repository was archived by the owner on Jun 8, 2023. It is now read-only.

⚡️ mgm-hurry - Detect initial 0 trade punishment epochs + auto restart HO if needed #238

@Rikj000

Description

@Rikj000

With MoniGoMani's current implementation it will force the bot to do 0 buys and 0 sells as a punishment when it detects impossible total weights needed or impossible triggers needed.

Which saves us the trouble from having to check the mgm-config-hyperopt against these issues.

However with unlucky random states this can also lead to an initial 750 or more epochs with 0 trade punishment epochs.
This will often lead to a not fully optimized HO due to not enough actual epochs being left in the HO.

Solution proposal

  • Detect the amount of initial epochs with 0 trade punishments with mgm-hurry
  • Add a max_initial_zero_trade_punishment_epochs_allowed setting in mgm-config
  • If no explicit random state is passed in the mgm-hurry command &
    if the amount of initial 0 trade punishment epochs exceeds over the configured max_initial_zero_trade_punishment_epochs_allowed,
  • Then make mgm-hurry abort the HyperOpt & automatically start a new one
    (With identical command/params/config, but a different random state)
  • We also need to add some max_ho_retries_allowed setting to prevent infinite loops when the user configures a mgm-config that will never be able to yield any "best" results

Note

If we could come up with a way to prevent impossible total weights needed or impossible triggers needed without 0 trade punishment epochs, then that solution would be preferred.
Since currently we do "loose" quite a few epochs to this solution.

Metadata

Metadata

Assignees

No one assigned

    Labels

    Feature - EnhancementUpdate or improvement to existing featurePlannedPlanned feature, improvement or bugfix (not being worked on yet)

    Projects

    No projects

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions