This Expert Advisor is rewritten from MQL4 and was originally published here https://www.mql5.com/en/code/8101 by its author izhutov,.
Three MA's are used.
Conditions for buying:
The fast moving average crosses the middle moving average upwards. The fast MA is above the slow MA, the fast MA is above the slow MA from the previous bar, the fast MA on the previous bar is above the slow MA, the fast MA on the previous bar is above the slow MA from the previous bar. The middle MA is above the slow MA, the middle MA is above the slow MA from the previous bar, the middle MA on the previous bar is above the slow MA, the middle MA on the previous bar is above the slow MA from the previous bar.
Conditions for selling:
The conditions for selling and buying mirror each other. The fast moving average crosses the middle moving average downwards. The fast MA is below the slow MA, the fast MA is below the slow MA from the previous bar, the fast MA on the previous bar is below the slow MA, the fast MA on the previous bar is below the slow MA from the previous bar. The middle MA is below the slow MA, the middle MA is below the slow MA from the previous bar, the middle MA on the previous bar is below the slow MA, the middle MA on the previous bar is below the slow MA from the previous bar.
The lot size for positions to be opened can be fixed or proportional to free margin. There is an additional function to reduce the lot size at losses - the more consecutive losing trades, the smaller the lot size. A trailing stop can be set for an open position.
The image below shows the performance of the Expert Advisor in the strategy tester's visual mode.

Note
It is not recommended to set FastShift, MiddleShift, SlowShift values at less than 1. The Expert Advisor ckecks the indicators on the zero bar only when the new bar opens (it is not supposed to work on the zero (forming) bar). The original version does not have any external parameters of moving averages.MetaQuotes Ltd에서 러시아어로 번역함.
원본 코드: https://www.mql5.com/ru/code/1079
ATR_OpenIndent_v2
The indicator shows the opening price of the senior time frame (e.g., 1-day time frame) and draws line indents to the opening price, thus forming a range.
CSelectFile
The file selection graphical interface class.
Exp_3rdGenerationXMA
The Expert Advisor based on the change in the 3rdGenXMA moving average direction.
CCI T3 Tick
The CCI indicator smoothed using Tillson's algorithm.