Feel like OctoBot is missing a feature? We welcome your pull requests!
Are you new to OctoBot? Here is an overview of the software architecture and here is the developer guide.
OctoBot is multi strategy, multi exchange and multi cryptocurrency.
- Any change specific to a strategy must be done in the specific code of this strategy, usually in a tentacle.
- Any change specific to an exchange must be done in the exchange's associated tentacle.
- Changes specific to a cryptocurrency or trading pair will be refused unless justified in the generic code.
- Create your PR against the
devbranch, notmasteron the OctoBot and Tentacles repositories, create them againstmasteron other repositories. - Change must be tested via associated pytest test(s) the
testsdirectory.
- Change must be PEP8 compliant (max-line-length = 120).
- Use local variable only if it improves code clarity.
- Always use generators and comprehension list instead of loops when possible.
- Use
try ... exceptinstead ofifstatements whenifis 99%True.
For security and maintenance reasons, additional dependencies could be added to OctoBot only in case they are necessary for the global system to operate. If your development requires an external dependency, please either:
- Open an issue to discuss the integration of this dependency into the main code.
- Make this dependency import optional in your code at import time so that the main OctoBot can still import your code and leave the reponsability to the user to install this dependency to use your code.