BLOG

  • Home
  • Blog
  • How to Write Software Requirements Specification?

How to Write Software Requirements Specification?

9/29/2022 10:00:00 PM
  1. What Is the Purpose of Trading System Algorithmization?
  2. Trading System Algorithm 
  3. Money Management Algorithm 
  4. Risk Management Algorithm 
  5. In Conclusion. What Should I Do?

What Is the Purpose of Trading System Algorithmization?

Why should I automize my trading system? There are 3 reasons for algorithmization:

  • EA development frees up time to find new trading strategies since the trading process becomes the robot’s responsibility.
  • Automated trading allows you to trade on multiple trading systems with different instruments. The set of EAs collected in the portfolio trades more stable than one trading robot.
  • The EA makes no human factor mistakes.

Note! You have to create an EA based on a formalized algorithmic trading system. You need to register all trading system rules since a robot cannot use intuition. Provide trading system’s backtesting and forward testing. 

If all these conditions are met, write the software requirements specification (srs). You have to consider:

  • Trading system
  • Money management
  • Risk management

Let's check them out below!

Trading System Algorithm 

It is the head srs section aimed at the overall description of the trading system algorithm. Describe situations and the robot’s actions. 

SRS terms:

  • EA's name

The name can be reflected in the code or trade comments. It must be in Latin and consists of 1—2 words. 

  • Terminal

Define MetaTrader® version (4 or 5 ver.) or choose another trading platform.

  • Trading overview

Describe significant robot functions and purposes. Illustrate the desired result. 

  • Product functions

Determine EA's settings and parameters. Specify defaults and units for each parameter and configuration 

  • Market entry rules

Describe opening conditions for short and long positions.

Is a pending order in use?

Attach screenshots of trades to clarify. 

Specify if a new trade occurs on a tick or at the close candlestick.

An Example of an Entry Market Point Based on the Bollinger Bands IndicatorAn Example of an Entry Market Point Based on the Bollinger Bands Indicator

  • Market exit rules

Are stop-loss and take-profit levels used? Where are they located? Are stop-loss trades applied? What functions do they have? Is there position tracking and stop-loss movement? If so, what rules do they follow?

Answer these questions and describe the exit algorithm.

  • Working hours

Is trading carried out on a specific session or on certain days? 

Money Management Algorithm 

It is crucial to describe several money management methods applied in EAs. Testing will reveal the best one. 

For example, you can apply conservative money management approaches to your Expert Advisors:

  1. The standard lot method implies permanent lot trading in all trades. Try testing the EA starting with this approach.
  2. The fixed ratio style implies that the lot depends on the stop-loss pip size and risks per trade in the deposit currency. This method increases profits. 
  3. The fixed percentage technique implies that the lot is calculated depending on the stop-loss size and the capital risk percentage. 

The trader can try aggressive methods, too. Apply averaging, martingale, and pyramiding. In this case, the operation principles must be more specific.

Risk Management Algorithm 

Risk management provides deposit protection. You should provide a detailed risk outline and its maximum boundary or limiting parameters.

  1. Risk per day. If the loss reaches 5% of the deposit per day, trading stops. The notification is sent.
  2. Risk per week. If the loss reaches 10% of the deposit per week, trading stops. The notification is sent.
  3. Risk per month. If the loss reaches 20% of the deposit per month, trading stops. The notification is sent.
  4. Maximum drawdown. If there is a 30% loss, trading stops. The notification is sent.

Risk parameters vary depending on trading systems. That is why a trader should set entry parameters.

In Conclusion. What Should I Do?

Creating your EAs allows progressing in trading on various trading systems and developing the EA portfolio. 

To generate the EA, write software requirements specification that should be:

  • Laconic, illustrative, logical
  • Equipped with a trading system algorithm description
  • Designed with a money management methods description
  • Supplied with a risk management description

The more correct and clear the software requirements specification, the faster and more accurate EA generating. Simplify and speed up the coder's work!

The 4xDev company will create a high-quality expert advisor especially for you! Be in the heart of trading, bro! Order top-notch custom tools!

request

Do you doubt the reliability of the indicator? Want to check if there is no redrawing? Need an expert programmer to develop a custom Forex indicator? We will do it for you! Just fill in a form and get a free estimate of the price and time needed to develop the desired tool.

  • Home
  • Blog
  • How to Write Software Requirements Specification?