Git Product home page Git Product logo

Comments (5)

Rikj000 avatar Rikj000 commented on August 30, 2024 1

Obviously there should be mgm-config-private.example.json in tree.

The one provided is an example, on my end I got that fixed up with Linux system links, but sure we can rename to .example and .gitignore + update the installation guide for it to protect contributing developers more.

The main reason to override - there'll be no need to manually merge local changes and upstream changes to mgm-config after git pull. All locally tuned parameters could be stored in out of tree mgm-config-private.

Same goes for this, we'll rename to .example and .gitignore + update the installation guide for it to improve upon the ease of git pulling.

I'll add following copy/paste command in the docs to make this really easy to do too:

cp ./user_data/mgm-config.example.json ./user_data/mgm-config.json && cp ./user_data/mgm-config-private.example.json ./user_data/mgm-config-private.json

from monigomani.

Rikj000 avatar Rikj000 commented on August 30, 2024

Sorry man but absolutely not! mgm-config-private.json should contain no settings related to configuration!
This file is only meant for delicate private information, such as usernames, passwords, keys, domain names, tokens and such.
All actual settings belong in mgm-config.json and if you need the latest official again then you can just grab it from GitHub or through git 🙂

We do this to keep mgm-config.json setups easy to share and to reduce the risk of someone leaking out his private information!
If you would accidentally post your current mgm-config-private.json then that would be very bad for you, since then with access to the file, can use it to access your Exchange API / wallet!

Also I don't see what's wrong with MGM's current config loading? It's not long? The setting of the class parameters after the json loading is rather lengthy though. There I think we could perhaps improve, but we would need to be very carefully that everything keeps initializing as expected.

FYI: I tried Freqtrades config accessing through the dataprovider but that doesn't work since we already need it while MasterMoniGoManiHyperStrategy is initializing and by then the dataprovider is not yet available.

from monigomani.

rvasilev avatar rvasilev commented on August 30, 2024

I see your point, but there's no way it can reduce the risk of leaking.

mgm-config-private.json should be out of git tree and placed in .gitignore by default if we're concerned about the leakage of sensitive data. Otherwize - pushing once to github will turn the catastrophe.

Obviously there should be mgm-config-private.example.json in tree.


Nothing is wrong with current config loading except that config should be overridable by freqtrade design. You can declare config in the strategy.py and override it in config.json. And after that - override more in config-1.json, config-2.json etc.

The main reason to override - there'll be no need to manually merge local changes and upstream changes to mgm-config after git pull. All locally tuned parameters could be stored in out of tree mgm-config-private.

from monigomani.

rvasilev avatar rvasilev commented on August 30, 2024

OK. private parts will be protected from the accidental git-pushing.

If there's no other special reason to not merge mgm-config and mgm-config-private during strategy initialization and hyperopting, I'll PR in some time.

"exchange": ["name", "key", "secret"], "apiserver", "telegram"

will be popped out from config to not accidentally show on screenshots/hyperopt/backtest stdouts

from monigomani.

Rikj000 avatar Rikj000 commented on August 30, 2024

If there's no other special reason to not merge mgm-config and mgm-config-private during strategy initialization and hyperopting, I'll PR in some time.

The fiat_display_currency I also have in the private section, since that way you don't have to share your local currency which gives away a part of where you are located when you share your mgm-config.json.

Same goes to bot_name, if people configure that, then it only personalizes the config file but changes nothing to the strategy, thus it makes shared files more cluttered and personalized.

But if you want feel free to PR the changes we discussed here! 🙂

from monigomani.

Related Issues (20)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.