This question is quite important for both customers and developers. With this post I want to specify the question of writing the terms of reference, so that no questions arise between the customer and the developer.
The terms of reference is a document that should describe the logic of development, the necessary settings, details and nuances. The purpose of this document is to clearly describe the algorithm, and exclude the ambiguity of interpretation of the task. We do not set any clear requirements for the terms of reference, but nevertheless it must fully describe everything that the customer wants.
Terms of Reference
Let’s look at what should be included in the terms of reference, but specifically from the algotrading side.
- Main points. This part describes the general logic of the bot, the desired name, the indicators or other sources of information for the algorithm, the exchange or platform on which the bot should trade.
- The bot logic. This is the most important paragraph of the technical requirements. It describes the entire logic of trading actions in detail. Entry signals, exit/turn signals, various additional buy/sell signals, the calculation of volumes, choice of symbols, etc. – all so that the developer can clearly and unambiguously understand what the customer needs. In this case, it is desirable to add a screenshot of possible situations, it greatly improves the understanding of the requirements for the bot.
- Interface and settings. In this section, describe the requirements for the appearance – what buttons should be there, what windows, what should be displayed (deposits, open orders, open deals, etc.), what should be in the logs, etc. Also, here you specify what parameters should be adjustable – the selection of symbols, timeframe, indicator parameters, volumes, and everything else you think is important.
- Conclusion. In this place, you can specify important nuances, which should be taken into account (for example, the ability to work on a remote server, pick up open positions, etc.), as well as suggestions (sometimes the customer is not confident in some of the provisions of their specifications, or it is necessary to write a manual or make a video review).
The terms of reference is made by the customer, but if he is not sure that he will create correctly or just does not want to do it, then the developer can also do it. But in this case, it should be understood that it may cost money, and this should not be surprising – there is a reason for this. The developer spends his time to create the requirements specification, and the customer can go to another developer with ready-made requirements specification (for example, if he does not like the cost or terms), and the time of the first developer remains unpaid.
It is important to understand that the quality of the requirements specification is the key to success of the trading bot! This step in the creation of your product should be taken seriously.