1. Trading Systems Coding: Introduction
  2. Trading Systems Coding: System Design
  3. Trading Systems Coding: The Coding Stage
  4. Trading Systems Coding: The Coding Process
  5. Trading Systems Coding: Testing, Troubleshooting and Optimizing
  6. Trading Systems Coding: Using Your System
  7. Trading Systems Coding: Conclusion


By Justin Kuepper
Contact Justin

The first step when coding any application is the design phase. Whether coding a software application or a trading system, careful design and planning will help you finish in a shorter amount of time with fewer errors. We will be using a simple three-step process to design our trading system.


Step 1: Create Your Trading System Rules
The first step when designing a trading system is simply coming up with the rules by which your system will operate. There should be four core rules to every trading system:

  1. Buy - Identify when you want to buy a position.
  2. Sell - Identify when you want to sell a position.
  3. Stop - Identify when you want to cut your losses.
  4. Target - Identify when you want to book a gain.
So, for example:
  1. Buy - When the 30-day moving average (MA) crosses above the 60-day MA
  2. Sell - When the 30-day MA crosses below the 60-day MA
  3. Stop - Maximum loss of 10 units
  4. Target - Target of 10 units
This example system will buy and sell based on the 30- and 60-day moving averages and will automatically book gains after a 10-unit profit or sell at a loss after a 10-unit move in the opposite direction.

Step 2: Identify the Components of Each Rule
Now that we have our rules down, we need to identify the components involved in each rule. Each component should contain two elements:
  1. The indicator or study used
  2. The settings for the indicator or study
These components should be constructed by typing the shorthand name for the study, followed by the settings in parentheses. These settings in parentheses are referred to as "parameters" of the indicator or study. Occasionally, a study may have multiple parameters, in which case you simply separate them with commas.

Let's take a look at a few examples:
  1. MA(25) - 25-day moving average
  2. RSI(25) - 25-day relative strength index
  3. MACD(Close(0),5,5) - Moving average convergence divergence set based on today's close, with a five-day fast length and a five-day slow length
If you are unsure of how many parameters a certain component requires, you can simply consult your trading program's documentation, which lists these components along with the values that need to be filled in. For example, we can see that Tradecision tells us that we need three parameters with MACD:



So, for the example mentioned in step one, we would use:
  1. MA(30) - Meaning 30-day moving average
  2. MA(60) - Meaning 60-day moving average
Step 3: Adding Action
Now we will add actions to our rules. Each action adheres to the following basic format:

IF Condition [WHILE Condition] THEN Action




Typically, the condition will consist of the components and parameters you created above, while the action will consist of buy or sell. Conditions may also consist of simple English if no component is present. Note that the "while" component is optional.


Here are a few examples to help illustrate this point:
  • IF MA(30) Crosses Above MA(60) THEN Buy
  • IF MA(30) Crosses Below MA(60) WHILE Volume(20,000) THEN Sell
  • IF EMA(25) Is Greater Than MA(5) THEN Sell
  • IF RSI(20) Is Equal To 50 THEN Buy
So, for the example we've been using, we'd simply list:
  • IF MA(30) Crosses Above MA(60) THEN Buy
  • IF MA(30) Crosses Below MA(60) THEN Sell
  • IF our trade has 10 units of profit THEN Sell
  • IF our trade has 10 units of loss THEN Sell
What's Next?
Next, we'll take a look at converting these rules into a code that your computer can understand!

Trading Systems Coding: The Coding Stage
Related Articles
  1. Trading

    Trading Systems Coding

    Automate your trades by translating your strategy into a language your computer can implement in this hands-free approach to investing.
  2. Trading

    Use Moving Averages to Buy Stocks

    A moving average constantly updates a stock's average price, but it cannot predict a stock's performance.
  3. Trading

    How To Use A Moving Average To Buy Stocks

    The Moving Average indicator is one of the most useful tools for trading and analyzing financial markets.
Frequently Asked Questions
  1. Who determines interest rates?

    In countries using a centralized banking model, interest rates are determined by the central bank. In the first step of interest ...
  2. What's the Best Way to Contact Warren Buffett?

    Learn how to contact Warren Buffett and what kinds of contact is most likely to receive a response from him or from his company, ...
  3. What is the Financial Services Sector?

    A diverse group of companies, beyond banks and credit unions, comprises the financial services sector.
  4. Who are Whole Foods' (WFM) main competitors?

    Whole Foods' main competitors are Sprouts Farmers Markets and Trader Joe's. However, the recent acquisition by Amazon my ...
Trading Center