ΠΠ° Π³Π»Π°Π²Π½ΡΡ > ΠΠ»ΠΎΠ³ > ΠΠ°ΡΠ΅Π³ΠΎΡΠΈΡ > π ΠΠ°ΠΊ Π½Π°ΠΏΠΈΡΠ°ΡΡ ΠΈΠ½Π΄ΠΈΠΊΠ°ΡΠΎΡ Π΄Π»Ρ MT4 ΠΈ MT5: ΠΎΡ ΠΈΠ΄Π΅ΠΈ Π΄ΠΎ ΠΏΠ΅ΡΠ²ΠΎΠ³ΠΎ Π·Π°ΠΏΡΡΠΊΠ°
ΠΡΠ»ΠΈ TradingView β ΡΡΠΎ Β«Π±ΡΡΡΡΡΠΉ ΡΡΠ°ΡΡΒ» Π΄Π»Ρ ΠΈΠ½Π΄ΠΈΠΊΠ°ΡΠΎΡΠΎΠ², ΡΠΎ MetaTrader (MT4 ΠΈ MT5) β ΡΡΠΎ Β«ΡΡΠΆΡΠ»Π°Ρ Π°ΡΡΠΈΠ»Π»Π΅ΡΠΈΡΒ». ΠΠ΄Π΅ΡΡ Π²Ρ ΠΏΠΈΡΠ΅ΡΠ΅ ΠΊΠΎΠ΄ Π½Π° ΡΠ·ΡΠΊΠ°Ρ MQL4 ΠΈ MQL5 β ΠΌΠΎΡΠ½ΡΡ , Π±ΡΡΡΡΡΡ ΠΈ ΠΌΠ°ΠΊΡΠΈΠΌΠ°Π»ΡΠ½ΠΎ ΠΏΡΠΈΠ±Π»ΠΈΠΆΡΠ½Π½ΡΡ ΠΊ C++. ΠΠ°, ΠΏΠΎΡΠΎΠ³ Π²Ρ ΠΎΠ΄Π° Π²ΡΡΠ΅, Π½ΠΎ ΠΈ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡΠΈ ΡΠΎΠ²Π΅ΡΡΠ΅Π½Π½ΠΎ Π΄ΡΡΠ³ΠΈΠ΅: ΡΠΎΡΠ½ΠΈ Π±ΡΡΠ΅ΡΠΎΠ² Π΄Π°Π½Π½ΡΡ [citation:8], ΡΠ°Π±ΠΎΡΠ° Ρ ΡΠΈΠΊΠΎΠ²ΡΠΌΠΈ ΠΎΠ±ΡΡΠΌΠ°ΠΌΠΈ, ΠΏΠΎΠ»Π½ΠΎΡΠ΅Π½Π½Π°Ρ ΡΠΎΡΠ³ΠΎΠ²Π»Ρ ΡΠ΅ΡΠ΅Π· ΡΠΎΠ²Π΅ΡΠ½ΠΈΠΊΠΎΠ², ΠΈ Π³Π»Π°Π²Π½ΠΎΠ΅ β Π²Ρ Π½Π΅ Π·Π°Π²ΠΈΡΠΈΡΠ΅ ΠΎΡ ΡΡΠΎΡΠΎΠ½Π½ΠΈΡ ΡΠ΅ΡΠ²ΠΈΡΠΎΠ². ΠΠ°Ρ ΠΈΠ½Π΄ΠΈΠΊΠ°ΡΠΎΡ ΡΠ°Π±ΠΎΡΠ°Π΅Ρ ΠΏΡΡΠΌΠΎ Π² ΡΠ΅ΡΠΌΠΈΠ½Π°Π»Π΅, Π±Π΅Π· ΠΈΠ½ΡΠ΅ΡΠ½Π΅ΡΠ° (ΠΊΡΠΎΠΌΠ΅ ΠΊΠΎΡΠΈΡΠΎΠ²ΠΎΠΊ), 24/5.
ΠΠ½ΠΎΠ³ΠΈΠ΅ Π½Π°ΡΠΈΠ½Π°ΡΡ Ρ MQL4, ΠΏΠΎΡΠΎΠΌΡ ΡΡΠΎ ΠΎΠ½ ΠΏΡΠΎΡΠ΅ ΠΈ ΠΏΡΠΎΡΠ°Π΅Ρ ΠΎΡΠΈΠ±ΠΊΠΈ. MQL5 β ΡΡΠΎ ΡΠΆΠ΅ Π²Π·ΡΠΎΡΠ»ΡΠΉ ΡΠ·ΡΠΊ Ρ ΠΎΠ±ΡΠ΅ΠΊΡΠ½ΠΎ-ΠΎΡΠΈΠ΅Π½ΡΠΈΡΠΎΠ²Π°Π½Π½ΡΠΌ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠΈΡΠΎΠ²Π°Π½ΠΈΠ΅ΠΌ, Π»ΡΡΡΠ΅ΠΉ ΠΎΠΏΡΠΈΠΌΠΈΠ·Π°ΡΠΈΠ΅ΠΉ ΠΈ ΡΠ°ΡΡΠΈΡΠ΅Π½Π½ΠΎΠΉ Π³ΡΠ°ΡΠΈΠΊΠΎΠΉ [citation:4][citation:8]. ΠΠΎ Π±Π°Π·Π° Ρ Π½ΠΈΡ ΠΎΠ±ΡΠ°Ρ. Π― ΠΏΠΎΠΊΠ°ΠΆΡ ΡΠΎΠ·Π΄Π°Π½ΠΈΠ΅ ΠΈΠ½Π΄ΠΈΠΊΠ°ΡΠΎΡΠ° Π½Π° MQL4 (ΠΊΠΎΠ΄ ΠΏΠΎΠ΄ΠΎΠΉΠ΄ΡΡ ΠΈ Π΄Π»Ρ ΠΏΡΡΡΡΠΊΠΈ Ρ ΠΌΠΈΠ½ΠΈΠΌΠ°Π»ΡΠ½ΡΠΌΠΈ ΠΏΡΠ°Π²ΠΊΠ°ΠΌΠΈ). Π Π³Π»Π°Π²Π½ΠΎΠ΅ β Π½Π°ΡΡΡ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡΡΡ ΠΠ°ΡΡΠ΅ΡΠΎΠΌ MQL, ΠΊΠΎΡΠΎΡΡΠΉ Π°Π²ΡΠΎΠΌΠ°ΡΠΈΡΠ΅ΡΠΊΠΈ ΠΏΠΈΡΠ΅Ρ Π·Π° Π²Π°Ρ ΠΏΠΎΠ»ΠΎΠ²ΠΈΠ½Ρ ΠΊΠΎΠ΄Π° [citation:2].
Β«Π‘Π²ΠΎΠΉ ΠΈΠ½Π΄ΠΈΠΊΠ°ΡΠΎΡ Π½Π° MT4 β ΡΡΠΎ ΠΊΠ°ΠΊ Π»ΠΈΡΠ½ΡΠΉ ΡΠΊΠ°Π»ΡΠΏΠ΅Π»Ρ Ρ ΠΈΡΡΡΠ³Π°. ΠΡ ΠΌΠΎΠΆΠ΅ΡΠ΅ ΠΊΡΠΏΠΈΡΡ Π³ΠΎΡΠΎΠ²ΡΠΉ, Π½ΠΎ ΡΠΎΠ»ΡΠΊΠΎ ΡΠ²ΠΎΠΉ ΠΏΠΎΠ΄Ρ ΠΎΠ΄ΠΈΡ ΠΈΠ΄Π΅Π°Π»ΡΠ½ΠΎ ΠΏΠΎΠ΄ Π²Π°ΡΡ ΡΡΠΊΡ ΠΈ ΡΡΠΈΠ»ΡΒ».
ΠΡΠ΅ΠΆΠ΄Π΅ ΡΠ΅ΠΌ ΠΏΠΈΡΠ°ΡΡ, Π½ΡΠΆΠ½ΠΎ ΠΏΠΎΠ½ΡΡΡ ΡΡΡΡΠΊΡΡΡΡ. ΠΡΠ΅ ΠΈΠ½Π΄ΠΈΠΊΠ°ΡΠΎΡΡ Π² MT4/MT5 β ΡΡΠΎ ΡΠ°ΠΉΠ»Ρ Ρ ΡΠ°ΡΡΠΈΡΠ΅Π½ΠΈΡΠΌΠΈ:
.mq4 / .mq5 β ΠΈΡΡ
ΠΎΠ΄Π½ΡΠΉ ΠΊΠΎΠ΄ (ΠΌΠΎΠΆΠ½ΠΎ ΡΠ΅Π΄Π°ΠΊΡΠΈΡΠΎΠ²Π°ΡΡ Π² MetaEditor).ex4 / .ex5 β ΡΠΊΠΎΠΌΠΏΠΈΠ»ΠΈΡΠΎΠ²Π°Π½Π½ΡΠΉ ΠΈΡΠΏΠΎΠ»Π½ΡΠ΅ΠΌΡΠΉ ΡΠ°ΠΉΠ» (ΡΠΎ, ΡΡΠΎ ΡΠ°Π±ΠΎΡΠ°Π΅Ρ Π² ΡΠ΅ΡΠΌΠΈΠ½Π°Π»Π΅)MQL4/Indicators (ΠΈΠ»ΠΈ MQL5/Indicators) [citation:1].drive_c/Program Files/... ΠΈ Π΄Π°Π»ΡΡΠ΅ Π°Π½Π°Π»ΠΎΠ³ΠΈΡΠ½ΠΎ [citation:1]..ex4 ΠΈΠ»ΠΈ .mq4 Π² ΠΏΠ°ΠΏΠΊΡ Indicators [citation:1].MQL4 ΠΏΡΠΎΡΠ΅ Π΄Π»Ρ Π½ΠΎΠ²ΠΈΡΠΊΠΎΠ². ΠΠΎΡ ΠΎΡΠ½ΠΎΠ²Π½ΡΠ΅ ΠΏΠΎΠ½ΡΡΠΈΡ, Π±Π΅Π· ΠΊΠΎΡΠΎΡΡΡ Π½ΠΈΠΊΡΠ΄Π°:
| ΠΠΎΠ½ΡΡΠΈΠ΅ | ΠΠΏΠΈΡΠ°Π½ΠΈΠ΅ |
|---|---|
input ΠΏΠ΅ΡΠ΅ΠΌΠ΅Π½Π½ΡΠ΅ |
ΠΠ°ΡΠ°ΠΌΠ΅ΡΡΡ, ΠΊΠΎΡΠΎΡΡΠ΅ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Ρ Π²ΠΈΠ΄ΠΈΡ ΠΈ ΠΌΠΎΠΆΠ΅Ρ ΠΌΠ΅Π½ΡΡΡ ΠΏΡΠΈ Π·Π°ΠΏΡΡΠΊΠ΅ ΠΈΠ½Π΄ΠΈΠΊΠ°ΡΠΎΡΠ°. ΠΠ°ΠΏΡΠΈΠΌΠ΅Ρ: ΠΏΠ΅ΡΠΈΠΎΠ΄ ΡΠΊΠΎΠ»ΡΠ·ΡΡΠ΅ΠΉ ΡΡΠ΅Π΄Π½Π΅ΠΉ, ΠΌΠ½ΠΎΠΆΠΈΡΠ΅Π»Ρ. ΠΠ½ΡΡΡΠΈ ΠΊΠΎΠ΄Π° ΠΈΡ ΠΌΠ΅Π½ΡΡΡ Π½Π΅Π»ΡΠ·Ρ, ΡΠΎΠ»ΡΠΊΠΎ ΡΠ½Π°ΡΡΠΆΠΈ [citation:3]. |
#property Π΄ΠΈΡΠ΅ΠΊΡΠΈΠ²Ρ |
ΠΠ°ΡΡΡΠΎΠΉΠΊΠΈ ΡΠ²ΠΎΠΉΡΡΠ² ΠΈΠ½Π΄ΠΈΠΊΠ°ΡΠΎΡΠ°: indicator_chart_window (Π² ΠΎΡΠ½ΠΎΠ²Π½ΠΎΠΌ ΠΎΠΊΠ½Π΅) ΠΈΠ»ΠΈ indicator_separate_window (ΠΎΡΠ΄Π΅Π»ΡΠ½ΠΎΠ΅ ΠΎΠΊΠ½ΠΎ), ΠΊΠΎΠ»ΠΈΡΠ΅ΡΡΠ²ΠΎ Π±ΡΡΠ΅ΡΠΎΠ², ΡΡΠΈΠ»ΠΈ ΠΎΡΡΠΈΡΠΎΠ²ΠΊΠΈ [citation:2]. |
| ΠΠ½Π΄ΠΈΠΊΠ°ΡΠΎΡΠ½ΡΠ΅ Π±ΡΡΠ΅ΡΡ | ΠΠ°ΡΡΠΈΠ²Ρ, Π² ΠΊΠΎΡΠΎΡΡΠ΅ ΡΠΊΠ»Π°Π΄ΡΠ²Π°ΡΡΡΡ Π·Π½Π°ΡΠ΅Π½ΠΈΡ Π΄Π»Ρ ΠΎΡΡΠΈΡΠΎΠ²ΠΊΠΈ. ΠΠΎΠ³ΡΡ Π±ΡΡΡ Π»ΠΈΠ½ΠΈΠΈ, Π³ΠΈΡΡΠΎΠ³ΡΠ°ΠΌΠΌΡ, ΡΡΡΠ΅Π»ΠΊΠΈ ΠΈ Ρ.Π΄. [citation:8] |
Π€ΡΠ½ΠΊΡΠΈΡ OnCalculate() |
Π‘Π΅ΡΠ΄ΡΠ΅ ΠΈΠ½Π΄ΠΈΠΊΠ°ΡΠΎΡΠ°. ΠΠ΄Π΅ΡΡ ΠΏΡΠΎΠΈΡΡ
ΠΎΠ΄ΠΈΡ ΠΏΠ΅ΡΠ΅ΡΡΡΡ Π·Π½Π°ΡΠ΅Π½ΠΈΠΉ ΠΏΡΠΈ ΠΊΠ°ΠΆΠ΄ΠΎΠΌ Π½ΠΎΠ²ΠΎΠΌ Π±Π°ΡΠ΅. ΠΠΎΠ»ΡΡΠ°Π΅Ρ Π½Π° Π²Ρ
ΠΎΠ΄ ΡΠ΅Π½Ρ (open[], close[], high[], low[]) ΠΈ Π΄ΡΡΠ³ΠΈΠ΅ Π΄Π°Π½Π½ΡΠ΅ [citation:2][citation:5]. |
Π MT5 ΡΡΠ½ΠΊΡΠΈΡ OnCalculate() ΠΌΠΎΡΠ½Π΅Π΅: ΠΎΠ½Π° ΠΌΠΎΠΆΠ΅Ρ ΡΠ°ΡΡΡΠΈΡΡΠ²Π°ΡΡ ΠΈΠ½Π΄ΠΈΠΊΠ°ΡΠΎΡΡ Π½Π° ΠΎΡΠ½ΠΎΠ²Π΅ Π΄ΡΡΠ³ΠΎΠ³ΠΎ ΠΈΠ½Π΄ΠΈΠΊΠ°ΡΠΎΡΠ° (Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ, ΡΡΠΎΡ
Π°ΡΡΠΈΠΊ ΠΎΡ RSI) ΠΈ ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΈΠ²Π°Π΅Ρ ΠΌΠ°ΡΡΠΈΠ²Ρ ΡΠΈΠΊΠΎΠ² [citation:7].
ΠΠ°ΠΏΠΈΡΠ΅ΠΌ ΠΈΠ½Π΄ΠΈΠΊΠ°ΡΠΎΡ Β«ΠΠΎΡ ΠΏΠ΅ΡΠ²Π°Ρ ATR-ΠΏΠΎΠ»ΠΎΡΠ°Β». ΠΠ½ Π±ΡΠ΄Π΅Ρ ΠΏΠΎΠΊΠ°Π·ΡΠ²Π°ΡΡ ΡΡΠ΅Π΄Π½ΡΡ ΡΠ΅Π½Ρ (High+Low+Close)/3 ΠΈ Π΄Π²Π΅ ΠΏΠΎΠ»ΠΎΡΡ Π½Π° ΡΠ°ΡΡΡΠΎΡΠ½ΠΈΠΈ ATR (ΡΡΠ΅Π΄Π½ΠΈΠΉ ΠΈΡΡΠΈΠ½Π½ΡΠΉ Π΄ΠΈΠ°ΠΏΠ°Π·ΠΎΠ½).
Π MetaTrader Π½Π°ΠΆΠΌΠΈΡΠ΅ F4 β ΠΎΡΠΊΡΠΎΠ΅ΡΡΡ MetaEditor. Π ΠΌΠ΅Π½Ρ Π²ΡΠ±Π΅ΡΠΈΡΠ΅ Β«Π€Π°ΠΉΠ»Β» β Β«Π‘ΠΎΠ·Π΄Π°ΡΡΒ» β Β«ΠΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»ΡΡΠΊΠΈΠΉ ΠΈΠ½Π΄ΠΈΠΊΠ°ΡΠΎΡΒ». ΠΠ°ΠΏΡΡΡΠΈΡΡΡ ΠΌΠ°ΡΡΠ΅Ρ [citation:2].
ΠΠΌΡ ΠΈΠ½Π΄ΠΈΠΊΠ°ΡΠΎΡΠ°: MyFirstBand
ΠΠ²ΡΠΎΡ: ΠΠ°ΡΠ΅ ΠΈΠΌΡ
ΠΠ°ΡΠ°ΠΌΠ΅ΡΡΡ (input):
int ATR_Period = 14 // ΠΠ΅ΡΠΈΠΎΠ΄ ATR
double Multiplier = 1.5 // ΠΠ½ΠΎΠΆΠΈΡΠ΅Π»Ρ ΠΏΠΎΠ»ΠΎΡ
ΠΠ° ΡΠ»Π΅Π΄ΡΡΡΠ΅ΠΌ ΡΠ°Π³Π΅ Π²ΡΠ±Π΅ΡΠΈΡΠ΅ Β«ΠΠ½Π΄ΠΈΠΊΠ°ΡΠΎΡ Π² ΠΎΡΠ΄Π΅Π»ΡΠ½ΠΎΠΌ ΠΎΠΊΠ½Π΅Β» (ΡΡΠΎΠ±Ρ ΠΏΠΎΠ»ΠΎΡΡ Π±ΡΠ»ΠΈ Π½Π° ΠΎΡΠ½ΠΎΠ²Π½ΠΎΠΌ Π³ΡΠ°ΡΠΈΠΊΠ΅, ΡΠ½ΠΈΠΌΠΈΡΠ΅ Π³Π°Π»ΠΎΡΠΊΡ). ΠΠΎΠ±Π°Π²ΡΡΠ΅ Π΄Π²Π° Π³ΡΠ°ΡΠΈΡΠ΅ΡΠΊΠΈΡ ΠΏΠΎΡΡΡΠΎΠ΅Π½ΠΈΡ Ρ ΠΈΠΌΠ΅Π½Π°ΠΌΠΈ Β«UpperBandΒ» ΠΈ Β«LowerBandΒ», ΡΠΈΠΏ Π»ΠΈΠ½ΠΈΠΈ β ΡΠΏΠ»ΠΎΡΠ½Π°Ρ [citation:2].
ΠΠ°ΡΡΠ΅Ρ ΡΠΎΠ·Π΄Π°ΡΡ ΡΠ°Π±Π»ΠΎΠ½. Π’Π΅ΠΏΠ΅ΡΡ Π·Π°ΠΏΠΎΠ»Π½ΠΈΡΠ΅ Π΅Π³ΠΎ Π»ΠΎΠ³ΠΈΠΊΠΎΠΉ. ΠΠΎΡ Π³ΠΎΡΠΎΠ²ΡΠΉ ΠΊΠΎΠ΄:
//+------------------------------------------------------------------+
//| MyFirstBand.mq4 |
//| Copyright 2025, Your Name |
//+------------------------------------------------------------------+
#property copyright "Your Name"
#property link ""
#property version "1.00"
#property indicator_chart_window // ΠΠ½Π΄ΠΈΠΊΠ°ΡΠΎΡ Π² ΠΎΡΠ½ΠΎΠ²Π½ΠΎΠΌ ΠΎΠΊΠ½Π΅
#property indicator_buffers 2 // ΠΠ²Π° Π±ΡΡΠ΅ΡΠ°: Π²Π΅ΡΡ
Π½ΡΡ ΠΈ Π½ΠΈΠΆΠ½ΡΡ ΠΏΠΎΠ»ΠΎΡΠ°
#property indicator_plots 2
//--- Plot UpperBand
#property indicator_label1 "UpperBand"
#property indicator_type1 DRAW_LINE
#property indicator_color1 clrGreen
#property indicator_style1 STYLE_SOLID
#property indicator_width1 1
//--- Plot LowerBand
#property indicator_label2 "LowerBand"
#property indicator_type2 DRAW_LINE
#property indicator_color2 clrRed
#property indicator_style2 STYLE_SOLID
#property indicator_width2 1
//--- ΠΡ
ΠΎΠ΄Π½ΡΠ΅ ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΡΡ (ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Ρ ΡΠΌΠΎΠΆΠ΅Ρ ΠΌΠ΅Π½ΡΡΡ Π² ΠΎΠΊΠ½Π΅ ΡΠ²ΠΎΠΉΡΡΠ²)
input int ATR_Period = 14; // ΠΠ΅ΡΠΈΠΎΠ΄ ATR
input double Multiplier = 1.5; // ΠΠ½ΠΎΠΆΠΈΡΠ΅Π»Ρ ΠΏΠΎΠ»ΠΎΡ
//--- ΠΡΡΠ΅ΡΡ ΠΈΠ½Π΄ΠΈΠΊΠ°ΡΠΎΡΠ°
double UpperBuffer[];
double LowerBuffer[];
//+------------------------------------------------------------------+
//| Custom indicator initialization function |
//+------------------------------------------------------------------+
int OnInit()
{
// ΠΡΠΈΠ²ΡΠ·ΡΠ²Π°Π΅ΠΌ Π±ΡΡΠ΅ΡΡ ΠΊ ΠΌΠ°ΡΡΠΈΠ²Π°ΠΌ
SetIndexBuffer(0, UpperBuffer);
SetIndexBuffer(1, LowerBuffer);
// ΠΠ°ΡΡΡΠΎΠΉΠΊΠΈ ΠΎΡΠΎΠ±ΡΠ°ΠΆΠ΅Π½ΠΈΡ ΠΈΠΌΠ΅Π½
IndicatorShortName("MyFirstBand(" + string(ATR_Period) + "," + string(Multiplier) + ")");
return(INIT_SUCCEEDED);
}
//+------------------------------------------------------------------+
//| Custom indicator iteration function |
//+------------------------------------------------------------------+
int OnCalculate(const int rates_total,
const int prev_calculated,
const datetime &time[],
const double &open[],
const double &high[],
const double &low[],
const double &close[],
const long &tick_volume[],
const long &volume[],
const int &spread[])
{
// ΠΠΏΡΠ΅Π΄Π΅Π»ΡΠ΅ΠΌ, ΡΠΊΠΎΠ»ΡΠΊΠΎ Π±Π°ΡΠΎΠ² Π½ΡΠΆΠ½ΠΎ ΠΏΠ΅ΡΠ΅ΡΡΠΈΡΠ°ΡΡ
int limit = rates_total - prev_calculated;
if(limit > 1) limit = rates_total - 1;
for(int i = limit; i >= 0; i--)
{
// Π Π°ΡΡΡΡ ΡΠ΅Π½ΡΡΠ°Π»ΡΠ½ΠΎΠΉ ΡΠ΅Π½Ρ (ΠΎΠΏΡΠΈΠΎΠ½Π°Π»ΡΠ½ΠΎ, Π΅Ρ Π½Π΅ ΡΠΈΡΡΠ΅ΠΌ)
double central = (high[i] + low[i] + close[i]) / 3.0;
// Π Π°ΡΡΡΡ ATR (ΡΡΠ΅Π΄Π½Π΅Π³ΠΎ ΠΈΡΡΠΈΠ½Π½ΠΎΠ³ΠΎ Π΄ΠΈΠ°ΠΏΠ°Π·ΠΎΠ½Π°)
double atr = iATR(NULL, 0, ATR_Period, i);
if(atr <= 0) atr = 0.01; // Π·Π°ΡΠΈΡΠ° ΠΎΡ Π½ΡΠ»Ρ
// ΠΠ΅ΡΡ
Π½ΡΡ ΠΈ Π½ΠΈΠΆΠ½ΡΡ ΠΏΠΎΠ»ΠΎΡΡ ΠΎΡΠ½ΠΎΡΠΈΡΠ΅Π»ΡΠ½ΠΎ ΡΠ΅Π½ΡΡΠ°
UpperBuffer[i] = central + atr * Multiplier;
LowerBuffer[i] = central - atr * Multiplier;
}
return(rates_total);
}
//+------------------------------------------------------------------+
ΠΠ°ΠΆΠΌΠΈΡΠ΅ ΠΊΠ½ΠΎΠΏΠΊΡ Β«ΠΠΎΠΌΠΏΠΈΠ»ΠΈΡΠΎΠ²Π°ΡΡΒ» (F7) Π² MetaEditor. ΠΡΠ»ΠΈ Π½Π΅Ρ ΠΎΡΠΈΠ±ΠΎΠΊ, ΠΈΠ½Π΄ΠΈΠΊΠ°ΡΠΎΡ ΠΏΠΎΡΠ²ΠΈΡΡΡ Π² ΡΠΏΠΈΡΠΊΠ΅ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»ΡΡΠΊΠΈΡ ΠΈΠ½Π΄ΠΈΠΊΠ°ΡΠΎΡΠΎΠ² Π² ΠΠ°Π²ΠΈΠ³Π°ΡΠΎΡΠ΅. ΠΠ΅ΡΠ΅ΡΠ°ΡΠΈΡΠ΅ Π΅Π³ΠΎ Π½Π° Π³ΡΠ°ΡΠΈΠΊ β ΡΠ²ΠΈΠ΄ΠΈΡΠ΅ Π΄Π²Π΅ Π»ΠΈΠ½ΠΈΠΈ (Π·Π΅Π»ΡΠ½ΡΡ ΠΈ ΠΊΡΠ°ΡΠ½ΡΡ), ΠΊΠΎΡΠΎΡΡΠ΅ ΡΠ»Π΅Π΄ΡΡΡ Π·Π° ΡΠ΅Π½ΠΎΠΉ Π½Π° ΡΠ°ΡΡΡΠΎΡΠ½ΠΈΠΈ ATR [citation:1].
ΠΠ°ΠΆΠ΅ Π΅ΡΠ»ΠΈ Π²Ρ ΠΏΡΠΎΡΡΠΎ ΡΠΊΠΎΠΏΠΈΡΠΎΠ²Π°Π»ΠΈ ΠΏΡΠΈΠΌΠ΅Ρ, ΠΏΠΎΠ½ΠΈΠΌΠ°Π½ΠΈΠ΅ ΠΊΠ°ΠΆΠ΄ΠΎΠΉ ΡΠ°ΡΡΠΈ ΠΏΠΎΠΌΠΎΠΆΠ΅Ρ Π²Π°ΠΌ Π°Π΄Π°ΠΏΡΠΈΡΠΎΠ²Π°ΡΡ ΠΊΠΎΠ΄ ΠΏΠΎΠ΄ ΡΠ²ΠΎΠΈ ΠΈΠ΄Π΅ΠΈ.
UpperBuffer[] ΠΈ LowerBuffer[], ΠΊΡΠ΄Π° ΠΌΡ ΡΠΊΠ»Π°Π΄ΡΠ²Π°Π΅ΠΌ Π·Π½Π°ΡΠ΅Π½ΠΈΡ Π΄Π»Ρ ΠΎΡΡΠΈΡΠΎΠ²ΠΊΠΈ [citation:8].SetIndexBuffer() ΠΈ Π·Π°Π΄Π°ΡΠΌ ΠΊΠΎΡΠΎΡΠΊΠΎΠ΅ ΠΈΠΌΡ ΠΈΠ½Π΄ΠΈΠΊΠ°ΡΠΎΡΠ° (ΠΎΠ½ΠΎ ΠΎΡΠΎΠ±ΡΠ°ΠΆΠ°Π΅ΡΡΡ Π² Π»Π΅Π²ΠΎΠΌ Π²Π΅ΡΡ
Π½Π΅ΠΌ ΡΠ³Π»Ρ) [citation:2].iATR() ΠΈ Π·Π°ΠΏΠΎΠ»Π½ΡΠ΅ΠΌ Π±ΡΡΠ΅ΡΡ.ΠΠ½Π΄ΠΈΠΊΠ°ΡΠΎΡ Ρ ΠΎΡΠΎΡ ΡΠ°ΠΌ ΠΏΠΎ ΡΠ΅Π±Π΅, Π½ΠΎ Π½Π°ΡΡΠΎΡΡΠ°Ρ ΡΠΈΠ»Π° ΠΎΡΠΊΡΡΠ²Π°Π΅ΡΡΡ, ΠΊΠΎΠ³Π΄Π° Π²Ρ Π²ΡΠ·ΡΠ²Π°Π΅ΡΠ΅ Π΅Π³ΠΎ Π² ΡΠΎΠ²Π΅ΡΠ½ΠΈΠΊΠ΅. ΠΡΠΎ ΠΏΠΎΠ·Π²ΠΎΠ»ΡΠ΅Ρ Π°Π²ΡΠΎΠΌΠ°ΡΠΈΠ·ΠΈΡΠΎΠ²Π°ΡΡ ΡΠΎΡΠ³ΠΎΠ²Π»Ρ: ΠΏΠΎΠ»ΡΡΠΈΠ»ΠΈ ΡΠΈΠ³Π½Π°Π» ΠΎΡ ΠΈΠ½Π΄ΠΈΠΊΠ°ΡΠΎΡΠ° β ΠΎΡΠΊΡΡΠ»ΠΈ ΡΠ΄Π΅Π»ΠΊΡ.
Π MQL4 Π΅ΡΡΡ ΡΠΏΠ΅ΡΠΈΠ°Π»ΡΠ½Π°Ρ ΡΡΠ½ΠΊΡΠΈΡ Π΄Π»Ρ Π²ΡΠ·ΠΎΠ²Π° ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»ΡΡΠΊΠΈΡ ΠΈΠ½Π΄ΠΈΠΊΠ°ΡΠΎΡΠΎΠ²:
double iCustom(
string symbol, // ΡΠΈΠΌΠ²ΠΎΠ» (Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ, "EURUSD")
int timeframe, // ΡΠ°ΠΉΠΌΡΡΠ΅ΠΉΠΌ (0 = ΡΠ΅ΠΊΡΡΠΈΠΉ)
string name, // ΠΈΠΌΡ ΠΈΠ½Π΄ΠΈΠΊΠ°ΡΠΎΡΠ° (Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ, "MyFirstBand")
... // Π²Ρ
ΠΎΠ΄Π½ΡΠ΅ ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΡΡ ΠΈΠ½Π΄ΠΈΠΊΠ°ΡΠΎΡΠ° (ΠΏΠ΅ΡΠΈΠΎΠ΄, ΠΌΠ½ΠΎΠΆΠΈΡΠ΅Π»Ρ)
int mode, // Π½ΠΎΠΌΠ΅Ρ Π±ΡΡΠ΅ΡΠ° (0 = UpperBuffer, 1 = LowerBuffer)
int shift // ΡΠ΄Π²ΠΈΠ³ (0 = ΡΠ΅ΠΊΡΡΠΈΠΉ Π±Π°Ρ, 1 = ΠΏΡΠ΅Π΄ΡΠ΄ΡΡΠΈΠΉ)
);
// ΠΠΎΠ»ΡΡΠ°Π΅ΠΌ Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅ Π²Π΅ΡΡ
Π½Π΅ΠΉ ΠΏΠΎΠ»ΠΎΡΡ Π½Π° ΡΠ΅ΠΊΡΡΠ΅ΠΌ Π±Π°ΡΠ΅
double upperVal = iCustom(NULL, 0, "MyFirstBand", 14, 1.5, 0, 0);
// ΠΠΎΠ»ΡΡΠ°Π΅ΠΌ Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅ Π½ΠΈΠΆΠ½Π΅ΠΉ ΠΏΠΎΠ»ΠΎΡΡ
double lowerVal = iCustom(NULL, 0, "MyFirstBand", 14, 1.5, 1, 0);
// Π’Π΅ΠΊΡΡΠ°Ρ ΡΠ΅Π½Π° Π·Π°ΠΊΡΡΡΠΈΡ
double closePrice = Close[0];
if(closePrice > upperVal)
{
// Π¦Π΅Π½Π° Π²ΡΡΠ΅ Π²Π΅ΡΡ
Π½Π΅ΠΉ ΠΏΠΎΠ»ΠΎΡΡ β ΠΏΠ΅ΡΠ΅ΠΊΡΠΏΠ»Π΅Π½ΠΎ, Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎ, ΠΏΡΠΎΠ΄Π°ΡΠΌ
// Π·Π΄Π΅ΡΡ ΠΊΠΎΠ΄ ΠΎΡΠΊΡΡΡΠΈΡ ΠΎΡΠ΄Π΅ΡΠ° Π½Π° ΠΏΡΠΎΠ΄Π°ΠΆΡ
}
else if(closePrice < lowerVal)
{
// Π¦Π΅Π½Π° Π½ΠΈΠΆΠ΅ Π½ΠΈΠΆΠ½Π΅ΠΉ ΠΏΠΎΠ»ΠΎΡΡ β ΠΏΠ΅ΡΠ΅ΠΏΡΠΎΠ΄Π°Π½ΠΎ, Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎ, ΠΏΠΎΠΊΡΠΏΠ°Π΅ΠΌ
// Π·Π΄Π΅ΡΡ ΠΊΠΎΠ΄ ΠΎΡΠΊΡΡΡΠΈΡ ΠΎΡΠ΄Π΅ΡΠ° Π½Π° ΠΏΠΎΠΊΡΠΏΠΊΡ
}
ΠΠΎΠ΄ΡΠΎΠ±Π½Π΅Π΅ ΠΏΡΠΎ iCustom ΡΠΈΡΠ°ΠΉΡΠ΅ Π² ΠΎΡΠΈΡΠΈΠ°Π»ΡΠ½ΠΎΠΉ Π΄ΠΎΠΊΡΠΌΠ΅Π½ΡΠ°ΡΠΈΠΈ [citation:6]. ΠΠ°ΠΆΠ½ΠΎ: ΠΏΠΎΡΡΠ΄ΠΎΠΊ ΠΈ ΡΠΈΠΏ Π²Ρ
ΠΎΠ΄Π½ΡΡ
ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΡΠΎΠ² Π² iCustom Π΄ΠΎΠ»ΠΆΠ½Ρ ΡΡΡΠΎΠ³ΠΎ ΡΠΎΠΎΡΠ²Π΅ΡΡΡΠ²ΠΎΠ²Π°ΡΡ ΡΠΎΠΌΡ, ΡΡΠΎ ΠΎΠ±ΡΡΠ²Π»Π΅Π½ΠΎ Π² ΠΈΠ½Π΄ΠΈΠΊΠ°ΡΠΎΡΠ΅ ΡΠ΅ΡΠ΅Π· input [citation:3].
ΠΡΠ»ΠΈ Π²Ρ ΠΏΠ»Π°Π½ΠΈΡΡΠ΅ΡΠ΅ ΠΏΠ΅ΡΠ΅Ρ ΠΎΠ΄ΠΈΡΡ Π½Π° ΠΏΡΡΡΡΠΊΡ ΠΈΠ»ΠΈ ΠΏΠΈΡΠ°ΡΡ ΡΠ½ΠΈΠ²Π΅ΡΡΠ°Π»ΡΠ½ΡΠ΅ ΠΈΠ½Π΄ΠΈΠΊΠ°ΡΠΎΡΡ, Π·Π½Π°ΠΉΡΠ΅ ΠΊΠ»ΡΡΠ΅Π²ΡΠ΅ ΡΠ°Π·Π»ΠΈΡΠΈΡ:
| ΠΡΠΏΠ΅ΠΊΡ | MT4 (MQL4) | MT5 (MQL5) |
|---|---|---|
| ΠΠ°ΠΊΡΠΈΠΌΡΠΌ Π±ΡΡΠ΅ΡΠΎΠ² | 8 Π±ΡΡΠ΅ΡΠΎΠ² [citation:8] | 512 Π±ΡΡΠ΅ΡΠΎΠ² (ΠΎΠ³ΡΠΎΠΌΠ½ΡΠΉ ΠΏΡΠΎΡΡΠΎΡ Π΄Π»Ρ ΡΠ»ΠΎΠΆΠ½ΡΡ ΠΈΠ½Π΄ΠΈΠΊΠ°ΡΠΎΡΠΎΠ²) [citation:4][citation:8] |
| Π‘ΡΠΈΠ»ΠΈ ΠΎΡΡΠΈΡΠΎΠ²ΠΊΠΈ | 6 ΡΡΠΈΠ»Π΅ΠΉ (Π»ΠΈΠ½ΠΈΡ, Π³ΠΈΡΡΠΎΠ³ΡΠ°ΠΌΠΌΠ°, ΡΡΡΠ΅Π»ΠΊΠΈ, ΡΠ΅ΠΊΡΠΎΡ ΠΈ Ρ.Π΄.) | 18 ΡΡΠΈΠ»Π΅ΠΉ (Π²ΠΊΠ»ΡΡΠ°Ρ ΡΠ°Π·Π½ΠΎΡΠ²Π΅ΡΠ½ΡΠ΅ Π»ΠΈΠ½ΠΈΠΈ, Π·Π°Π»ΠΈΠ²ΠΊΡ, Π³ΡΠ°Π΄ΠΈΠ΅Π½ΡΡ) [citation:8] |
| Π’ΠΈΠΏΡ Π΄Π°Π½Π½ΡΡ Π² OnCalculate | Π¦Π΅Π½Ρ open, high, low, close, tick_volume, spread | ΠΠΎΠ±Π°Π²Π»Π΅Π½Ρ time, real_volume (Π΅ΡΠ»ΠΈ Π΅ΡΡΡ), ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΊΠ° ΡΠ°ΡΡΠ΅ΡΠ° ΠΏΠΎ Π΄Π°Π½Π½ΡΠΌ Π΄ΡΡΠ³ΠΎΠ³ΠΎ ΠΈΠ½Π΄ΠΈΠΊΠ°ΡΠΎΡΠ° [citation:7][citation:8] |
| ΠΠ±ΡΠ΅ΠΊΡΠ½ΠΎ-ΠΎΡΠΈΠ΅Π½ΡΠΈΡΠΎΠ²Π°Π½Π½ΠΎΠ΅ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠΈΡΠΎΠ²Π°Π½ΠΈΠ΅ | ΠΠ³ΡΠ°Π½ΠΈΡΠ΅Π½Π½Π°Ρ ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΊΠ° ΠΊΠ»Π°ΡΡΠΎΠ² | ΠΠΎΠ»Π½ΠΎΡΠ΅Π½Π½ΠΎΠ΅ ΠΠΠ (ΠΊΠ»Π°ΡΡΡ, Π½Π°ΡΠ»Π΅Π΄ΠΎΠ²Π°Π½ΠΈΠ΅, ΠΏΠΎΠ»ΠΈΠΌΠΎΡΡΠΈΠ·ΠΌ) |
| ΠΠ΅ΡΠ΅Π½ΠΎΡΠΈΠΌΠΎΡΡΡ ΠΊΠΎΠ΄Π° | ΠΠΎΠ΄ MT4 Π½Π΅ ΡΠ°Π±ΠΎΡΠ°Π΅Ρ Π½Π° MT5 Π±Π΅Π· ΠΏΠ΅ΡΠ΅ΠΏΠΈΡΡΠ²Π°Π½ΠΈΡ | ΠΡΡΡΠΎΠ΅Π½Π½ΡΡ ΠΊΠΎΠ½Π²Π΅ΡΡΠ΅ΡΠΎΠ² Π½Π΅Ρ, Π½ΠΎ ΡΠΈΠ½ΡΠ°ΠΊΡΠΈΡ Π±Π»ΠΈΠ·ΠΎΠΊ, ΠΊΡΠΎΠΌΠ΅ ΡΠ°Π±ΠΎΡΡ Ρ ΡΠ°ΠΉΠΌΡΠ΅ΡΠΈΡΠΌΠΈ |
ΠΡΠ»ΠΈ Π²Ρ Π½ΠΎΠ²ΠΈΡΠΎΠΊ β Π½Π°ΡΠΈΠ½Π°ΠΉΡΠ΅ Ρ MT4. MQL4 ΠΏΡΠΎΡΠ΅ ΠΈ ΠΏΡΠΎΡΠ°Π΅Ρ ΠΎΡΠΈΠ±ΠΊΠΈ. ΠΠΎΠ³Π΄Π° ΠΏΠΎΡΡΠ²ΡΡΠ²ΡΠ΅ΡΠ΅ ΡΠ²Π΅ΡΠ΅Π½Π½ΠΎΡΡΡ β ΠΌΠΈΠ³ΡΠΈΡΡΠΉΡΠ΅ Π½Π° MT5, ΡΠ°ΠΌ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡΠΈ Π±Π΅Π·Π³ΡΠ°Π½ΠΈΡΠ½Ρ [citation:8].
ΠΠ°ΠΏΠΈΡΠ°Π½ΠΈΠ΅ ΡΠΎΠ±ΡΡΠ²Π΅Π½Π½ΠΎΠ³ΠΎ ΠΈΠ½Π΄ΠΈΠΊΠ°ΡΠΎΡΠ° Π½Π° MT4 ΠΈΠ»ΠΈ MT5 β ΡΡΠΎ Π½Π΅ ΠΏΡΠΎΡΡΠΎ ΡΡΡΠΎΠΊΠ° ΠΊΠΎΠ΄Π°. ΠΡΠΎ ΠΏΡΠ΅Π²ΡΠ°ΡΠ΅Π½ΠΈΠ΅ Π²Π°ΡΠ΅ΠΉ ΡΡΠ½ΠΎΡΠ½ΠΎΠΉ ΠΈΠ΄Π΅ΠΈ Π² ΠΆΠΈΠ²ΠΎΠΉ, ΡΠ°Π±ΠΎΡΠ°ΡΡΠΈΠΉ ΠΈΠ½ΡΡΡΡΠΌΠ΅Π½Ρ. ΠΠ°ΡΠ½ΠΈΡΠ΅ Ρ ΠΌΠ°Π»ΠΎΠ³ΠΎ: ΠΏΠΎΠ²ΡΠΎΡΠΈΡΠ΅ ΠΏΡΠΈΠΌΠ΅Ρ Ρ ATR-ΠΏΠΎΠ»ΠΎΡΠ°ΠΌΠΈ, ΠΏΠΎΠΈΠ³ΡΠ°ΠΉΡΠ΅ Ρ ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΡΠ°ΠΌΠΈ, ΠΈΠ·ΠΌΠ΅Π½ΠΈΡΠ΅ ΡΠ²Π΅ΡΠ°. ΠΠΎΡΠΎΠΌ Π΄ΠΎΠ±Π°Π²ΡΡΠ΅ ΡΡΠ»ΠΎΠ²ΠΈΡ: ΠΏΡΡΡΡ ΠΏΠΎΠ»ΠΎΡΡ ΠΌΠ΅Π½ΡΡΡ ΡΠ²Π΅Ρ, ΠΊΠΎΠ³Π΄Π° ΡΠ΅Π½Π° ΠΊΠ°ΡΠ°Π΅ΡΡΡ ΠΈΡ . Π Π·Π°ΡΠ΅ΠΌ β ΠΏΠΎΠ΄ΠΊΠ»ΡΡΠ°ΠΉΡΠ΅ ΠΈΠ½Π΄ΠΈΠΊΠ°ΡΠΎΡ ΠΊ ΡΠΎΠ²Π΅ΡΠ½ΠΈΠΊΡ ΠΈ Π°Π²ΡΠΎΠΌΠ°ΡΠΈΠ·ΠΈΡΡΠΉΡΠ΅ Π²Ρ ΠΎΠ΄Ρ [citation:5][citation:6].
ΠΠ°, Π½Π° ΡΡΠ°ΡΡΠ΅ Π±ΡΠ΄Π΅Ρ ΠΌΠ½ΠΎΠ³ΠΎ ΠΎΡΠΈΠ±ΠΎΠΊ ΠΊΠΎΠΌΠΏΠΈΠ»ΡΡΠΈΠΈ. ΠΠ°, Π½Π΅ Π²ΡΡ Π·Π°ΡΠ°Π±ΠΎΡΠ°Π΅Ρ Ρ ΠΏΠ΅ΡΠ²ΠΎΠ³ΠΎ ΡΠ°Π·Π°. ΠΠΎ ΠΊΠ°ΠΆΠ΄ΡΠΉ ΠΈΡΠΏΡΠ°Π²Π»Π΅Π½Π½ΡΠΉ Π±Π°Π³ Π΄Π΅Π»Π°Π΅Ρ Π²Π°Ρ Π»ΡΡΡΠ΅. Π ΠΎΠ΄Π½Π°ΠΆΠ΄Ρ Π²Ρ ΠΏΡΠΎΡΡΠΎ ΠΎΡΠΊΡΠΎΠ΅ΡΠ΅ ΡΠ΅ΡΠΌΠΈΠ½Π°Π», ΡΠ²ΠΈΠ΄ΠΈΡΠ΅ Π·Π΅Π»ΡΠ½ΡΡ ΠΈ ΠΊΡΠ°ΡΠ½ΡΡ Π»ΠΈΠ½ΠΈΠΈ, ΠΊΠΎΡΠΎΡΡΠ΅ ΡΠ°ΠΌΠΈ Π½Π°ΡΠΈΡΠΎΠ²Π°Π»ΠΈΡΡ ΠΏΠΎ Π²Π°ΡΠ΅ΠΉ ΡΠΎΡΠΌΡΠ»Π΅, ΠΈ ΠΏΠΎΠΉΠΌΡΡΠ΅: Β«Π― ΡΡΠΎ ΡΠ΄Π΅Π»Π°Π». ΠΠΎΡ ΠΈΠ΄Π΅Ρ ΠΎΠΆΠΈΠ»Π°Β». Π ΡΡΠΎ ΡΡΠ²ΡΡΠ²ΠΎ ΡΡΠΎΠΈΡ Π²ΡΠ΅Ρ ΠΏΠΎΡΡΠ°ΡΠ΅Π½Π½ΡΡ ΡΠ°ΡΠΎΠ².
Β«ΠΠ΅ΡΠ²ΡΠΉ ΠΈΠ½Π΄ΠΈΠΊΠ°ΡΠΎΡ β ΠΊΠ°ΠΊ ΠΏΠ΅ΡΠ²ΡΠΉ ΡΠ°Π³. Π’ΡΡΠ΄Π½ΠΎ, ΡΡΡΠ°ΡΠ½ΠΎ, Π½ΠΎ ΡΡΡΠΏΠΈΡΡ ΠΎΠ΄Π½Π°ΠΆΠ΄Ρ Π½ΡΠΆΠ½ΠΎ, ΡΡΠΎΠ±Ρ ΠΏΠΎΠ½ΡΡΡ: ΡΠ΅ΠΏΠ΅ΡΡ Π²Ρ Π½Π΅ ΠΏΡΠΎΡΡΠΎ ΡΡΠ΅ΠΉΠ΄Π΅Ρ, Π²Ρ β Π°ΡΡ ΠΈΡΠ΅ΠΊΡΠΎΡ ΡΠ²ΠΎΠΈΡ ΠΈΠ½ΡΡΡΡΠΌΠ΅Π½ΡΠΎΠ²Β».
ΠΠ°ΡΠ° ΡΠ°Π·ΠΌΠ΅ΡΠ΅Π½ΠΈΡ ΡΡΠ°ΡΡΠΈ: 2026-05-18T17:04:19