The Essential Elements of a Profitable Trading Strategy

While most of the components of a trading system may seem obvious, some are often overlooked. This checklist will help you ensure that there isn’t something you have left out when building a trading system. These components apply to manually traded strategies, but are particularly relevant for a trading bot.

1. Volatility and Trend Filters

Filters are not an absolute requirement, but many trading systems have them. A filter identifies the setup for a trade as well as the market conditions under which trades can be entered. A combination of volatility and trend indicators can be used to create filters that identify the right market conditions for a system.

Many algo-trading systems stop performing when market conditions change. You can save yourself a lot of frustration by identifying the market conditions under which a trading strategy does and doesn’t work and incorporating them into the strategy. If you can do that you will not have to lose money before you begin to figure out the right market conditions for your trading bot to perform.

2. Entry Criteria

Each trade needs a trigger or trading signal. This can be very simple, like a moving average crossover, or it can be quite complex, requiring confirmation. Before a trading signal is generated the current position needs to be checked, and the capacity to take on new risk needs to be calculated.

3. Exit Strategy and Trade Management

Most trading systems have a combination of exit strategies which together make up a trade management plan. Broadly speaking a trade is exited in one of three ways: the trade is stopped out at the initial stop loss level, a profit target is reached, or a trailing stop kicks in to protect an open profit.

Splitting the position up with multiple targets and exit strategies may not add to the long-term profitability of the system, but it can smooth the equity curve by protecting some profits while allowing a portion of the trade to benefit form extended moves.

Most automated trading software can accommodate fairly sophisticated exit strategies. It’s well worth making use of this functionality to smooth the equity curve.

4. Position Size

Position sizing can be very simple or can be quite sophisticated if multiple positions are held. If your system adds to positions it will need to be able to read the current position and the total account size to calculate the capacity to take on more risk.

Something many traders don’t pay enough attention to is the lot size of the instrument to be traded. The notional value of each lot will determine the minimum position size, which in turn determines the minimum account size that can be traded for the strategy. Often, when a back test is done using automated trading software a default position size of $100,000 is used. If, however, a smaller live account of say $10,000 is traded, the lot size may be too large. The minimum viable account size therefore needs to be considered during strategy development.

5. Instrument Universe

The list of instruments to be traded doesn’t need to be written into the code, but it is nevertheless a part of the strategy. If a trading bot simply doesn’t work for some instruments this should, if possible, be included in the code or noted somewhere as a reminder. This will stop you accidentally running the system on a currency pair or instrument where it is not profitable.

6. Time Frame

Again, the time frame can be applied when the EA is launched and doesn’t need to be written into the code. However, if you know a trading strategy is not suitable for certain time frames, it’s worth including this in the code or as a note to prevent the trading bot being run on a time frame where it has little chance of success.

Thinking through each of these elements when developing your trading strategy will ensure that there are no surprises down the line when your trading bot begins live trading.

Automate your trading strategy!

If you want to automate your Forex trading strategy feel free to contact us. Nordman Algorithms specializes in MQL4/MQL5 programming services, developing EAs and Custom Indicators for MetaTrader 4 and MetaTrader 5 trading platforms. All you need is an idea and we can give you a time estimate and quote to turn it into a MT4/MT5 Expert Advisor or MT4/MT5 Custom Indicator.



With financial background, using excellent programming techniques, developing automated trading systems of a splendid quality that serve your investing purpose.


Mon - Fri : 08:00 - 18:00 EEST

[email protected]

11412, Majaka str. 26, HarjuCounty, Tallinn, Estonia


Trading contains substantial risk and is not for every investor. An investor could potentially lose all or more than the initial investment. Risk capital is money that can be lost without jeopardizing ones financial security or lifestyle. Only risk capital should be used for trading and only those with sufficient risk capital should consider trading. Past performance is not necessarily indicative of future results.

Hypothetical or Simulated performance results have certain limitations, unlike an actual performance record, simulated results do not represent actual trading. Also, since the trades have not been executed, the results may have under-or-over compensated for the impact, if any, of certain market factors, such as lack of liquidity. Simulated trading programs in general are also subject to the fact that they are designed with the benefit of hindsight. No representation is being made that any account will or is likely to achieve profit or losses similar to those shown.

Please note, that testimonials appearing on this website may not be representative of other clients or customers and is not a guarantee of future performance or success.