Neural Network Strategy – Trading Strategies – 24 July 2023


NeuralNetwork NeuralNetwork 1

I plan to study strategy using algorithms such as neural networks, described as follows

  • Step 1: Read the full historical data of 1 currency pair in the past for example XAUUSD
  • Step 2: Process that data into redefined data that is intended as input data for step 3.
  • Step 3: Build a logical algorithm that scans the data in the past and compares the data in the present time, then makes a decision on buying and selling

1. I will describe each step in more detail below

In step 1:

Rereading data from the past is simple because MT5 always provides data from the past for each tick

However, this data is big because it provides details about the price per tick, which in turn slows down the trading process.

So Step 2 will be needed to process this data so that it is simpler and lighter in size and faster to process

2. Process price history data processing

In step 2;

First we need to define what the ultimate purpose of the data is.

In this case: My goal is to separate which point to buy, which point to sell, take profit at which point, stop loss at which point, at that time, what is the RSI, MA, CCI, ATR Ask price, Bid price.

It’s like you are watching a movie again and you can completely know the segments in the movie, from which you select the necessary points and save and create a more concise movie summary (like the Film Review clips).

The meaning of this treatment is: Build how situations happened in the past, these situations have clear answers.

  • The scenarios here are: RSI, MA, CCI, ATR, Ask/Bid price
  • The answers are: Entry Buy/Sell, Takeprofit/Stoploss

More optimized:

Determine the processing point.

For example a road 1 million meters long, we cannot process every millimeter. So let’s cut it every 1 km and we’ll take a situation there.

In my case: for each 1000Point will choose a situation

Create an attribute that classifies data with a certain precision

How to do: after creating the above data table, we continue to process the data to be more optimized as follows:

If the situations occur and the results occur more often and are similar to each other to a greater extent, then the situation is appreciated, so high accuracy.

(Make your own rules and regulations for this assessment.)

Here for simplicity I only classify by 3 levels: Low, Medium, High

This data will be the model to use for step 3

3. Process data and make business decisions

In step 3:

Determine the processing point. Similarly: for each 1000Point will choose a situation

We will compare current situations with past situations, if it is the same then make the same decisions as the results had in the past.

Talk in more detail:

We compare the current indicators (RSI, MA, CCI, Ask/Bid price) across all past situations created in step 2 ie RSI, MA, CCI, Ask/Bid price).

If similar to all indices with similarity, for example greater than 90%, then execute Buy/Sell, Takeprofit/Stoploss orders as in the past data.

Note how dynamic you can allow for customization if you want.

In this step 2 cases will happen

Case 1:

The current result is the same as the result in the past data, then we save the situation and the result again in the past data.

Case 2:

Current result is not correct, unlike past data we correct this situation and store result in past data table

Optimization: For faster browsing

Select first to browse by category of historical data accuracy.

Compare with the past situation with high accuracy first, if there is no case then go to medium level, continue to go to low level, if no situation add step 4

4. Refresh update of new data

in step 4: We can treat as follows, every 100,000Point ie experiencing 100 situations, we can repeat step 1 and step 2.

The goal is to refresh the data, get new data, and from there the data becomes more and more accurate

It is the algorithm described in words:

I will rely on these basic descriptions to build an automatic strategy, during the construction process, there will definitely be many problems that need to be handled, maybe the completion time will be longer than expected.

Looking forward to your comments and support

Please follow to receive new notifications

My channel:



Please enter your comment!
Please enter your name here