Rework the codebase to be more modular
Rework the entire current codebase to be essentially a backend instead of the current basic console app standalone solution.
- The printed information needs to be returned in the relevant methods instead of being printed.
- Use streams and listeners for constantly updating information (collection progress, trade events, etc)
- Get rid of modes (or at least be able to switch between them)
- Generate logs using an appropriate logging solution like
log4j
This is the prerequisite for https://github.com/markusaksli/TradeBot/issues/8. This means the console exe with launch4j can be replaced with a different front-end. Once this is done the bot backend could also be entirely detached from the local executable, run as a server, and communicate via API responses.
hi @markusaksli i also suggest you to remove static classes BuySell, Trade, Simulator, and make them object, in this way it will be possible to spawn multiple simulator at once, making everything self contained
@ramarro123 I'm working on this right now in the v11 branch
https://github.com/markusaksli/TradeBot/blob/v11/src/main/java/trading/Instance.java
It's still pretty incomplete but let me know if this fits the general idea