01-03-2018, 10:34 PM
Just wanted to collect some Github feature requests and put them in one place as well as add some of my thoughts on the subject. I encourage others to add to my lists of potential features.
I will likely attempt to work on this myself and submit a pull request when I can, unless someone else volunteers.
Corresponding Github Issues:
https://github.com/askmike/gekko/issues/1619
https://github.com/askmike/gekko/issues/1608
https://github.com/askmike/gekko/issues/1116
https://github.com/askmike/gekko/issues/937
https://github.com/askmike/gekko/issues/484
Summary: Allow for Advanced Portfolio Management - Either through the primary configuration of an instance of the bot, in a strategy itself, or both.
Details:
Portfolio Management - Should probably be configured on a per strategy runner/trader/strategy basis
I will likely attempt to work on this myself and submit a pull request when I can, unless someone else volunteers.
Corresponding Github Issues:
https://github.com/askmike/gekko/issues/1619
https://github.com/askmike/gekko/issues/1608
https://github.com/askmike/gekko/issues/1116
https://github.com/askmike/gekko/issues/937
https://github.com/askmike/gekko/issues/484
Summary: Allow for Advanced Portfolio Management - Either through the primary configuration of an instance of the bot, in a strategy itself, or both.
Details:
Portfolio Management - Should probably be configured on a per strategy runner/trader/strategy basis
- Allow configuration of a percentage of the balance as is seen when the bot is started. For example, you have 1 BTC and want the bot to use 20%. When the bot starts it will take 20% of the 1 BTC and trade with a starting balance of 0.2 BTC. Any profits or losses will belong to that instance of the bot. If it makes money, it will have the new higher balance to work with. Optionally, allow the calculation to be dynamic or static, meaning it will only ever use 20% of the starting balance even if it makes profit or allow it to use its own profits.
- Similar to the above, give the bot a fixed amount of your balance to work with, example you have 1 BTC and want an instance of the bot to use 0.3 BTC, you can define that.
- Similar to the above, give the bot a maximum it can work with. For example, my entire portfolio except 0.1 BTC.
- Limit amount per trade - example, only submit trades for 0.01 BTC each and limit it to X trades per time period or only submit new trades once price has moved by X
- Proportional trade amount - example, trade with a minimum of X and a maximum of Y depending on trend strength
- Match pings or don't - example, ensure pongs (round trip completions) from a specific ping match the traded amount of the ping or allow pongs to be calculated in the same way as pings based on trend strength
- Multiple Instances of the bot running against same asset or currency each given a proportion of the balance to work with
- Not going all in on trends which are no strong
- Stash profits away from bot so they are safe
- Prevent too much directional trading
- Allow for multiple round trips to be open at once
- Allow for trading on both sides of the market
- etc.