πŸ“ˆ Как Π½Π°ΠΏΠΈΡΠ°Ρ‚ΡŒ ΠΈΠ½Π΄ΠΈΠΊΠ°Ρ‚ΠΎΡ€ для MT4 ΠΈ MT5: ΠΎΡ‚ ΠΈΠ΄Π΅ΠΈ Π΄ΠΎ ΠΏΠ΅Ρ€Π²ΠΎΠ³ΠΎ запуска


На Π³Π»Π°Π²Π½ΡƒΡŽ > Π‘Π»ΠΎΠ³ > ΠšΠ°Ρ‚Π΅Π³ΠΎΡ€ΠΈΡ > πŸ“ˆ Как Π½Π°ΠΏΠΈΡΠ°Ρ‚ΡŒ ΠΈΠ½Π΄ΠΈΠΊΠ°Ρ‚ΠΎΡ€ для MT4 ΠΈ MT5: ΠΎΡ‚ ΠΈΠ΄Π΅ΠΈ Π΄ΠΎ ΠΏΠ΅Ρ€Π²ΠΎΠ³ΠΎ запуска

write_indicator

ВступлСниС: ΠΏΠΎΡ‡Π΅ΠΌΡƒ MetaTrader β€” ΠΊΠΎΡ€ΠΎΠ»ΡŒ индикаторостроСния

Если TradingView β€” это «быстрый старт» для ΠΈΠ½Π΄ΠΈΠΊΠ°Ρ‚ΠΎΡ€ΠΎΠ², Ρ‚ΠΎ MetaTrader (MT4 ΠΈ MT5) β€” это «тяТёлая артиллСрия». Π—Π΄Π΅ΡΡŒ Π²Ρ‹ ΠΏΠΈΡˆΠ΅Ρ‚Π΅ ΠΊΠΎΠ΄ Π½Π° языках MQL4 ΠΈ MQL5 β€” ΠΌΠΎΡ‰Π½Ρ‹Ρ…, быстрых ΠΈ максимально ΠΏΡ€ΠΈΠ±Π»ΠΈΠΆΡ‘Π½Π½Ρ‹Ρ… ΠΊ C++. Π”Π°, ΠΏΠΎΡ€ΠΎΠ³ Π²Ρ…ΠΎΠ΄Π° Π²Ρ‹ΡˆΠ΅, Π½ΠΎ ΠΈ возмоТности ΡΠΎΠ²Π΅Ρ€ΡˆΠ΅Π½Π½ΠΎ Π΄Ρ€ΡƒΠ³ΠΈΠ΅: сотни Π±ΡƒΡ„Π΅Ρ€ΠΎΠ² Π΄Π°Π½Π½Ρ‹Ρ… [citation:8], Ρ€Π°Π±ΠΎΡ‚Π° с Ρ‚ΠΈΠΊΠΎΠ²Ρ‹ΠΌΠΈ ΠΎΠ±ΡŠΡ‘ΠΌΠ°ΠΌΠΈ, полноцСнная торговля Ρ‡Π΅Ρ€Π΅Π· совСтников, ΠΈ Π³Π»Π°Π²Π½ΠΎΠ΅ β€” Π²Ρ‹ Π½Π΅ зависитС ΠΎΡ‚ сторонних сСрвисов. Π’Π°Ρˆ ΠΈΠ½Π΄ΠΈΠΊΠ°Ρ‚ΠΎΡ€ Ρ€Π°Π±ΠΎΡ‚Π°Π΅Ρ‚ прямо Π² Ρ‚Π΅Ρ€ΠΌΠΈΠ½Π°Π»Π΅, Π±Π΅Π· ΠΈΠ½Ρ‚Π΅Ρ€Π½Π΅Ρ‚Π° (ΠΊΡ€ΠΎΠΌΠ΅ ΠΊΠΎΡ‚ΠΈΡ€ΠΎΠ²ΠΎΠΊ), 24/5.

МногиС Π½Π°Ρ‡ΠΈΠ½Π°ΡŽΡ‚ с MQL4, ΠΏΠΎΡ‚ΠΎΠΌΡƒ Ρ‡Ρ‚ΠΎ ΠΎΠ½ ΠΏΡ€ΠΎΡ‰Π΅ ΠΈ ΠΏΡ€ΠΎΡ‰Π°Π΅Ρ‚ ошибки. MQL5 β€” это ΡƒΠΆΠ΅ взрослый язык с ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π½ΠΎ-ΠΎΡ€ΠΈΠ΅Π½Ρ‚ΠΈΡ€ΠΎΠ²Π°Π½Π½Ρ‹ΠΌ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ΠΌ, Π»ΡƒΡ‡ΡˆΠ΅ΠΉ ΠΎΠΏΡ‚ΠΈΠΌΠΈΠ·Π°Ρ†ΠΈΠ΅ΠΉ ΠΈ Ρ€Π°ΡΡˆΠΈΡ€Π΅Π½Π½ΠΎΠΉ Π³Ρ€Π°Ρ„ΠΈΠΊΠΎΠΉ [citation:4][citation:8]. Но Π±Π°Π·Π° Ρƒ Π½ΠΈΡ… общая. Π― ΠΏΠΎΠΊΠ°ΠΆΡƒ созданиС ΠΈΠ½Π΄ΠΈΠΊΠ°Ρ‚ΠΎΡ€Π° Π½Π° MQL4 (ΠΊΠΎΠ΄ ΠΏΠΎΠ΄ΠΎΠΉΠ΄Ρ‘Ρ‚ ΠΈ для пятёрки с ΠΌΠΈΠ½ΠΈΠΌΠ°Π»ΡŒΠ½Ρ‹ΠΌΠΈ ΠΏΡ€Π°Π²ΠΊΠ°ΠΌΠΈ). А Π³Π»Π°Π²Π½ΠΎΠ΅ β€” Π½Π°ΡƒΡ‡Ρƒ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒΡΡ ΠœΠ°ΡΡ‚Π΅Ρ€ΠΎΠΌ MQL, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ автоматичСски ΠΏΠΈΡˆΠ΅Ρ‚ Π·Π° вас ΠΏΠΎΠ»ΠΎΠ²ΠΈΠ½Ρƒ ΠΊΠΎΠ΄Π° [citation:2].

Β«Π‘Π²ΠΎΠΉ ΠΈΠ½Π΄ΠΈΠΊΠ°Ρ‚ΠΎΡ€ Π½Π° MT4 β€” это ΠΊΠ°ΠΊ Π»ΠΈΡ‡Π½Ρ‹ΠΉ скальпСль Ρ…ΠΈΡ€ΡƒΡ€Π³Π°. Π’Ρ‹ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ ΠΊΡƒΠΏΠΈΡ‚ΡŒ Π³ΠΎΡ‚ΠΎΠ²Ρ‹ΠΉ, Π½ΠΎ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ свой ΠΏΠΎΠ΄Ρ…ΠΎΠ΄ΠΈΡ‚ идСально ΠΏΠΎΠ΄ Π²Π°ΡˆΡƒ Ρ€ΡƒΠΊΡƒ ΠΈ ΡΡ‚ΠΈΠ»ΡŒΒ».

1. ΠŸΠ΅Ρ€Π²Ρ‹Π΅ шаги: Π³Π΄Π΅ ΠΆΠΈΠ²ΡƒΡ‚ ΠΈΠ½Π΄ΠΈΠΊΠ°Ρ‚ΠΎΡ€Ρ‹ ΠΈ ΠΊΠ°ΠΊ ΠΈΡ… Π·Π°ΠΏΡƒΡΠΊΠ°Ρ‚ΡŒ

ΠŸΡ€Π΅ΠΆΠ΄Π΅ Ρ‡Π΅ΠΌ ΠΏΠΈΡΠ°Ρ‚ΡŒ, Π½ΡƒΠΆΠ½ΠΎ ΠΏΠΎΠ½ΡΡ‚ΡŒ структуру. ВсС ΠΈΠ½Π΄ΠΈΠΊΠ°Ρ‚ΠΎΡ€Ρ‹ Π² MT4/MT5 β€” это Ρ„Π°ΠΉΠ»Ρ‹ с Ρ€Π°ΡΡˆΠΈΡ€Π΅Π½ΠΈΡΠΌΠΈ:

  • .mq4 / .mq5 β€” исходный ΠΊΠΎΠ΄ (ΠΌΠΎΠΆΠ½ΠΎ Ρ€Π΅Π΄Π°ΠΊΡ‚ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ Π² MetaEditor)
  • .ex4 / .ex5 β€” скомпилированный исполняСмый Ρ„Π°ΠΉΠ» (Ρ‚ΠΎ, Ρ‡Ρ‚ΠΎ Ρ€Π°Π±ΠΎΡ‚Π°Π΅Ρ‚ Π² Ρ‚Π΅Ρ€ΠΌΠΈΠ½Π°Π»Π΅)

Π“Π΄Π΅ ΠΎΠ½ΠΈ хранятся:

  • Windows: ΠΎΡ‚ΠΊΡ€ΠΎΠΉΡ‚Π΅ MT4/MT5 β†’ Β«Π€Π°ΠΉΠ»Β» β†’ Β«ΠžΡ‚ΠΊΡ€Ρ‹Ρ‚ΡŒ ΠΏΠ°ΠΏΠΊΡƒ Π΄Π°Π½Π½Ρ‹Ρ…Β» β†’ ΠΏΠ΅Ρ€Π΅ΠΉΠ΄ΠΈΡ‚Π΅ Π² ΠΏΠ°ΠΏΠΊΡƒ MQL4/Indicators (ΠΈΠ»ΠΈ MQL5/Indicators) [citation:1].
  • Mac: ΠΏΡ€Π°Π²ΠΎΠΉ ΠΊΠ½ΠΎΠΏΠΊΠΎΠΉ Π½Π° ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΈ MT4 β†’ Β«ΠŸΠΎΠΊΠ°Π·Π°Ρ‚ΡŒ содСрТимоС ΠΏΠ°ΠΊΠ΅Ρ‚Π°Β» β†’ Π½Π°ΠΉΠ΄ΠΈΡ‚Π΅ ΠΏΠ°ΠΏΠΊΡƒ drive_c/Program Files/... ΠΈ дальшС Π°Π½Π°Π»ΠΎΠ³ΠΈΡ‡Π½ΠΎ [citation:1].

Как Π΄ΠΎΠ±Π°Π²ΠΈΡ‚ΡŒ Π³ΠΎΡ‚ΠΎΠ²Ρ‹ΠΉ ΠΈΠ½Π΄ΠΈΠΊΠ°Ρ‚ΠΎΡ€:

  1. Π‘ΠΊΠΎΠΏΠΈΡ€ΡƒΠΉΡ‚Π΅ Ρ„Π°ΠΉΠ» .ex4 ΠΈΠ»ΠΈ .mq4 Π² ΠΏΠ°ΠΏΠΊΡƒ Indicators [citation:1].
  2. ΠŸΠ΅Ρ€Π΅Π·Π°ΠΏΡƒΡΡ‚ΠΈΡ‚Π΅ Ρ‚Π΅Ρ€ΠΌΠΈΠ½Π°Π» ΠΈΠ»ΠΈ Π½Π°ΠΆΠΌΠΈΡ‚Π΅ Π² ΠΎΠΊΠ½Π΅ «Навигатор» β†’ ΠΏΡ€Π°Π²ΠΎΠΉ ΠΊΠ½ΠΎΠΏΠΊΠΎΠΉ Π½Π° Β«ΠŸΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΡΠΊΠΈΠ΅ ΠΈΠ½Π΄ΠΈΠΊΠ°Ρ‚ΠΎΡ€Ρ‹Β» β†’ Β«ΠžΠ±Π½ΠΎΠ²ΠΈΡ‚ΡŒΒ» [citation:1].
  3. ΠŸΠ΅Ρ€Π΅Ρ‚Π°Ρ‰ΠΈΡ‚Π΅ ΠΈΠ½Π΄ΠΈΠΊΠ°Ρ‚ΠΎΡ€ ΠΈΠ· списка Π½Π° Π³Ρ€Π°Ρ„ΠΈΠΊ.
πŸ’‘ Настройка: ΠΏΡ€ΠΈ Π΄ΠΎΠ±Π°Π²Π»Π΅Π½ΠΈΠΈ Π½Π° Π³Ρ€Π°Ρ„ΠΈΠΊ откроСтся ΠΎΠΊΠ½ΠΎ с ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€Π°ΠΌΠΈ. Π—Π΄Π΅ΡΡŒ ΠΌΠΎΠΆΠ½ΠΎ ΠΌΠ΅Π½ΡΡ‚ΡŒ Π²Ρ…ΠΎΠ΄Π½Ρ‹Π΅ ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹Π΅, Ρ†Π²Π΅Ρ‚Π°, стили Π»ΠΈΠ½ΠΈΠΉ ΠΈ Ρ€Π°Π·Ρ€Π΅ΡˆΠ°Ρ‚ΡŒ ΠΈΠΌΠΏΠΎΡ€Ρ‚ DLL (Ссли ΠΈΠ½Π΄ΠΈΠΊΠ°Ρ‚ΠΎΡ€ Ρ‡Ρ‚ΠΎ-Ρ‚ΠΎ Π·Π°ΠΏΡ€Π°ΡˆΠΈΠ²Π°Π΅Ρ‚ ΠΈΠ·Π²Π½Π΅) [citation:1].

2. Π’Π²Π΅Π΄Π΅Π½ΠΈΠ΅ Π² MQL: Ρ‡Ρ‚ΠΎ Π½ΡƒΠΆΠ½ΠΎ Π·Π½Π°Ρ‚ΡŒ ΠΏΠ΅Ρ€Π΅Π΄ стартом

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].

3. Π‘ΠΎΠ·Π΄Π°Ρ‘ΠΌ ΠΈΠ½Π΄ΠΈΠΊΠ°Ρ‚ΠΎΡ€: пошаговая инструкция с ΠΏΡ€ΠΈΠΌΠ΅Ρ€ΠΎΠΌ

НапишСм ΠΈΠ½Π΄ΠΈΠΊΠ°Ρ‚ΠΎΡ€ «Моя пСрвая ATR-полоса». Он Π±ΡƒΠ΄Π΅Ρ‚ ΠΏΠΎΠΊΠ°Π·Ρ‹Π²Π°Ρ‚ΡŒ ΡΡ€Π΅Π΄Π½ΡŽΡŽ Ρ†Π΅Π½Ρƒ (High+Low+Close)/3 ΠΈ Π΄Π²Π΅ полосы Π½Π° расстоянии ATR (срСдний истинный Π΄ΠΈΠ°ΠΏΠ°Π·ΠΎΠ½).

Π¨Π°Π³ 1. ΠžΡ‚ΠΊΡ€Ρ‹Π²Π°Π΅ΠΌ ΠœΠ°ΡΡ‚Π΅Ρ€ MQL

Π’ MetaTrader Π½Π°ΠΆΠΌΠΈΡ‚Π΅ F4 β€” откроСтся MetaEditor. Π’ мСню Π²Ρ‹Π±Π΅Ρ€ΠΈΡ‚Π΅ Β«Π€Π°ΠΉΠ»Β» β†’ Β«Π‘ΠΎΠ·Π΄Π°Ρ‚ΡŒΒ» β†’ Β«ΠŸΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΡΠΊΠΈΠΉ ΠΈΠ½Π΄ΠΈΠΊΠ°Ρ‚ΠΎΡ€Β». Запустится мастСр [citation:2].


Имя ΠΈΠ½Π΄ΠΈΠΊΠ°Ρ‚ΠΎΡ€Π°: MyFirstBand
Автор: Π’Π°ΡˆΠ΅ имя
ΠŸΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€Ρ‹ (input):
    int ATR_Period = 14        // ΠŸΠ΅Ρ€ΠΈΠΎΠ΄ ATR
    double Multiplier = 1.5    // ΠœΠ½ΠΎΠΆΠΈΡ‚Π΅Π»ΡŒ полос

На ΡΠ»Π΅Π΄ΡƒΡŽΡ‰Π΅ΠΌ шагС Π²Ρ‹Π±Π΅Ρ€ΠΈΡ‚Π΅ Β«Π˜Π½Π΄ΠΈΠΊΠ°Ρ‚ΠΎΡ€ Π² ΠΎΡ‚Π΄Π΅Π»ΡŒΠ½ΠΎΠΌ ΠΎΠΊΠ½Π΅Β» (Ρ‡Ρ‚ΠΎΠ±Ρ‹ полосы Π±Ρ‹Π»ΠΈ Π½Π° основном Π³Ρ€Π°Ρ„ΠΈΠΊΠ΅, снимитС Π³Π°Π»ΠΎΡ‡ΠΊΡƒ). Π”ΠΎΠ±Π°Π²ΡŒΡ‚Π΅ Π΄Π²Π° графичСских построСния с ΠΈΠΌΠ΅Π½Π°ΠΌΠΈ Β«UpperBandΒ» ΠΈ Β«LowerBandΒ», Ρ‚ΠΈΠΏ Π»ΠΈΠ½ΠΈΠΈ β€” сплошная [citation:2].

Π¨Π°Π³ 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);
}
//+------------------------------------------------------------------+

Π¨Π°Π³ 3. ΠšΠΎΠΌΠΏΠΈΠ»ΡΡ†ΠΈΡ ΠΈ запуск

НаТмитС ΠΊΠ½ΠΎΠΏΠΊΡƒ Β«ΠšΠΎΠΌΠΏΠΈΠ»ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒΒ» (F7) Π² MetaEditor. Если Π½Π΅Ρ‚ ошибок, ΠΈΠ½Π΄ΠΈΠΊΠ°Ρ‚ΠΎΡ€ появится Π² спискС ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΡΠΊΠΈΡ… ΠΈΠ½Π΄ΠΈΠΊΠ°Ρ‚ΠΎΡ€ΠΎΠ² Π² НавигаторС. ΠŸΠ΅Ρ€Π΅Ρ‚Π°Ρ‰ΠΈΡ‚Π΅ Π΅Π³ΠΎ Π½Π° Π³Ρ€Π°Ρ„ΠΈΠΊ β€” ΡƒΠ²ΠΈΠ΄ΠΈΡ‚Π΅ Π΄Π²Π΅ Π»ΠΈΠ½ΠΈΠΈ (Π·Π΅Π»Ρ‘Π½ΡƒΡŽ ΠΈ ΠΊΡ€Π°ΡΠ½ΡƒΡŽ), ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΡΠ»Π΅Π΄ΡƒΡŽΡ‚ Π·Π° Ρ†Π΅Π½ΠΎΠΉ Π½Π° расстоянии ATR [citation:1].

4. Π Π°Π·Π±ΠΎΡ€ ΠΊΠΎΠ΄Π°: Ρ‡Ρ‚ΠΎ Π΄Π΅Π»Π°Π΅Ρ‚ ваш ΠΈΠ½Π΄ΠΈΠΊΠ°Ρ‚ΠΎΡ€

Π”Π°ΠΆΠ΅ Ссли Π²Ρ‹ просто скопировали ΠΏΡ€ΠΈΠΌΠ΅Ρ€, ΠΏΠΎΠ½ΠΈΠΌΠ°Π½ΠΈΠ΅ ΠΊΠ°ΠΆΠ΄ΠΎΠΉ части ΠΏΠΎΠΌΠΎΠΆΠ΅Ρ‚ Π²Π°ΠΌ Π°Π΄Π°ΠΏΡ‚ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ ΠΊΠΎΠ΄ ΠΏΠΎΠ΄ свои ΠΈΠ΄Π΅ΠΈ.

  • #property β€” Π·Π°Π΄Π°Ρ‘Ρ‚ Π³Π»ΠΎΠ±Π°Π»ΡŒΠ½Ρ‹Π΅ настройки: Π³Π΄Π΅ Ρ€ΠΈΡΠΎΠ²Π°Ρ‚ΡŒ (Π½Π° основном Π³Ρ€Π°Ρ„ΠΈΠΊΠ΅ ΠΈΠ»ΠΈ Π² ΠΎΡ‚Π΄Π΅Π»ΡŒΠ½ΠΎΠΌ ΠΎΠΊΠ½Π΅), Ρ‚ΠΈΠΏ Π»ΠΈΠ½ΠΈΠΈ (линия, гистограмма, стрСлки), Ρ†Π²Π΅Ρ‚ ΠΈ Ρ‚ΠΎΠ»Ρ‰ΠΈΠ½Ρƒ [citation:2].
  • input β€” ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹Π΅, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒ ΠΌΠΎΠΆΠ΅Ρ‚ ΠΈΠ·ΠΌΠ΅Π½ΡΡ‚ΡŒ ΠΏΡ€ΠΈ запускС. ΠŸΠ΅Ρ€ΠΈΠΎΠ΄ ATR ΠΈ ΠΌΠ½ΠΎΠΆΠΈΡ‚Π΅Π»ΡŒ полос [citation:3].
  • Π±ΡƒΡ„Π΅Ρ€Ρ‹ β€” массивы UpperBuffer[] ΠΈ LowerBuffer[], ΠΊΡƒΠ΄Π° ΠΌΡ‹ складываСм значСния для отрисовки [citation:8].
  • OnInit() β€” выполняСтся ΠΎΠ΄ΠΈΠ½ Ρ€Π°Π· ΠΏΡ€ΠΈ запускС ΠΈΠ½Π΄ΠΈΠΊΠ°Ρ‚ΠΎΡ€Π°. Π—Π΄Π΅ΡΡŒ ΠΌΡ‹ привязываСм Π±ΡƒΡ„Π΅Ρ€Ρ‹ Ρ‡Π΅Ρ€Π΅Π· SetIndexBuffer() ΠΈ Π·Π°Π΄Π°Ρ‘ΠΌ ΠΊΠΎΡ€ΠΎΡ‚ΠΊΠΎΠ΅ имя ΠΈΠ½Π΄ΠΈΠΊΠ°Ρ‚ΠΎΡ€Π° (ΠΎΠ½ΠΎ отобраТаСтся Π² Π»Π΅Π²ΠΎΠΌ Π²Π΅Ρ€Ρ…Π½Π΅ΠΌ ΡƒΠ³Π»Ρƒ) [citation:2].
  • OnCalculate() β€” вызываСтся ΠΏΡ€ΠΈ ΠΊΠ°ΠΆΠ΄ΠΎΠΌ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠΈ Ρ†Π΅Π½ (Π½ΠΎΠ²Ρ‹ΠΉ Ρ‚ΠΈΠΊ ΠΈΠ»ΠΈ свСча). ΠŸΠ΅Ρ€Π΅ΡΡ‡ΠΈΡ‚Ρ‹Π²Π°Π΅Ρ‚ значСния для всСх Π±Π°Ρ€ΠΎΠ², начиная с самых старых [citation:5][citation:7]. Π’ Ρ†ΠΈΠΊΠ»Π΅ считаСм Ρ†Π΅Π½Ρ‚Ρ€Π°Π»ΡŒΠ½ΡƒΡŽ Ρ†Π΅Π½Ρƒ, ΠΏΠΎΠ»ΡƒΡ‡Π°Π΅ΠΌ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ ATR Ρ‡Π΅Ρ€Π΅Π· ΡΡ‚Π°Π½Π΄Π°Ρ€Ρ‚Π½ΡƒΡŽ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΡŽ iATR() ΠΈ заполняСм Π±ΡƒΡ„Π΅Ρ€Ρ‹.
🧠 Π’Π°ΠΆΠ½ΠΎ: Π² MQL4 массив Ρ†Π΅Π½ индСксируСтся ΠΎΡ‚ ΠΏΡ€ΠΎΡˆΠ»ΠΎΠ³ΠΎ ΠΊ настоящСму (0 β€” самый старый Π±Π°Ρ€, rates_total-1 β€” послСдний). Π’ MQL5 β€” Π½Π°ΠΎΠ±ΠΎΡ€ΠΎΡ‚, Π½ΠΎ встроСнный шаблон ΡƒΠΆΠ΅ всё ΠΊΠΎΡ€Ρ€Π΅ΠΊΡ‚Π½ΠΎ ΠΎΠ±Ρ€Π°Π±Π°Ρ‚Ρ‹Π²Π°Π΅Ρ‚.

5. Как ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ ΠΈΠ½Π΄ΠΈΠΊΠ°Ρ‚ΠΎΡ€ Π² совСтникС (связка с iCustom)

Π˜Π½Π΄ΠΈΠΊΠ°Ρ‚ΠΎΡ€ Ρ…ΠΎΡ€ΠΎΡˆ сам ΠΏΠΎ сСбС, Π½ΠΎ настоящая сила открываСтся, ΠΊΠΎΠ³Π΄Π° Π²Ρ‹ Π²Ρ‹Π·Ρ‹Π²Π°Π΅Ρ‚Π΅ Π΅Π³ΠΎ Π² совСтникС. Π­Ρ‚ΠΎ позволяСт Π°Π²Ρ‚ΠΎΠΌΠ°Ρ‚ΠΈΠ·ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ Ρ‚ΠΎΡ€Π³ΠΎΠ²Π»ΡŽ: ΠΏΠΎΠ»ΡƒΡ‡ΠΈΠ»ΠΈ сигнал ΠΎΡ‚ ΠΈΠ½Π΄ΠΈΠΊΠ°Ρ‚ΠΎΡ€Π° β†’ ΠΎΡ‚ΠΊΡ€Ρ‹Π»ΠΈ сдСлку.

Ѐункция iCustom

Π’ 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].

6. ΠžΡ‚Π»ΠΈΡ‡ΠΈΡ MT4 ΠΎΡ‚ MT5: Π½Π° Ρ‡Ρ‚ΠΎ ΠΎΠ±Ρ€Π°Ρ‚ΠΈΡ‚ΡŒ Π²Π½ΠΈΠΌΠ°Π½ΠΈΠ΅

Если Π²Ρ‹ ΠΏΠ»Π°Π½ΠΈΡ€ΡƒΠ΅Ρ‚Π΅ ΠΏΠ΅Ρ€Π΅Ρ…ΠΎΠ΄ΠΈΡ‚ΡŒ Π½Π° пятёрку ΠΈΠ»ΠΈ ΠΏΠΈΡΠ°Ρ‚ΡŒ ΡƒΠ½ΠΈΠ²Π΅Ρ€ΡΠ°Π»ΡŒΠ½Ρ‹Π΅ ΠΈΠ½Π΄ΠΈΠΊΠ°Ρ‚ΠΎΡ€Ρ‹, Π·Π½Π°ΠΉΡ‚Π΅ ΠΊΠ»ΡŽΡ‡Π΅Π²Ρ‹Π΅ различия:

АспСкт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].

7. Π“Π΄Π΅ ΠΈΡΠΊΠ°Ρ‚ΡŒ Π²Π΄ΠΎΡ…Π½ΠΎΠ²Π΅Π½ΠΈΠ΅ ΠΈ ΠΏΠΎΠΌΠΎΡ‰ΡŒ

  • πŸ“˜ Π‘ΠΏΡ€Π°Π²ΠΎΡ‡Π½ΠΈΠΊ MQL4 / MQL5 β€” встроСн Π² MetaEditor (Π½Π°ΠΆΠΌΠΈΡ‚Π΅ F1). Всё ΠΎΡ„ΠΈΡ†ΠΈΠ°Π»ΡŒΠ½ΠΎ, с ΠΏΡ€ΠΈΠΌΠ΅Ρ€Π°ΠΌΠΈ. ОсобСнно Ρ€Π΅ΠΊΠΎΠΌΠ΅Π½Π΄ΡƒΡŽ Ρ€Π°Π·Π΄Π΅Π» Β«Custom IndicatorsΒ» [citation:3][citation:6].
  • πŸ’¬ Π€ΠΎΡ€ΡƒΠΌ MQL5.com β€” тысячи Π³ΠΎΡ‚ΠΎΠ²Ρ‹Ρ… Ρ€Π΅ΡˆΠ΅Π½ΠΈΠΉ ΠΈ обсуТдСний. Π—Π°Π΄Π°Π²Π°ΠΉΡ‚Π΅ вопросы β€” сообщСство Π°ΠΊΡ‚ΠΈΠ²Π½ΠΎΠ΅ ΠΈ Π΄Ρ€ΡƒΠΆΠ΅Π»ΡŽΠ±Π½ΠΎΠ΅ [citation:5][citation:9].
  • πŸ” Market MetaTrader β€” ΠΌΠΎΠΆΠ½ΠΎ ΡΠΊΠ°Ρ‡Π°Ρ‚ΡŒ бСсплатныС ΠΈΠ½Π΄ΠΈΠΊΠ°Ρ‚ΠΎΡ€Ρ‹ ΠΈ ΠΏΠΎΡΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ ΠΈΡ… исходный ΠΊΠΎΠ΄ (Ссли Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊ ΠΎΡ‚ΠΊΡ€Ρ‹Π»). Π›ΡƒΡ‡ΡˆΠΈΠΉ способ ΡƒΡ‡ΠΈΡ‚ΡŒΡΡ β€” Ρ‡ΠΈΡ‚Π°Ρ‚ΡŒ Ρ‡ΡƒΠΆΠΎΠΉ ΠΊΠΎΠ΄.
  • πŸŽ“ Книги: Β«MQL4 для Π½Π°Ρ‡ΠΈΠ½Π°ΡŽΡ‰ΠΈΡ…Β» (К. Π“Π°Π»ΠΈΡ‡, А. Π‘ΡƒΠ²ΠΎΡ€ΠΎΠ²) β€” классика. Для MQL5 β€” ΠΎΡ„ΠΈΡ†ΠΈΠ°Π»ΡŒΠ½Π°Ρ докумСнтация с сайта MetaQuotes [citation:7].

Π—Π°ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΠ΅: ваш ΠΏΠ΅Ρ€Π²Ρ‹ΠΉ ΠΈΠ½Π΄ΠΈΠΊΠ°Ρ‚ΠΎΡ€ β€” это Π½Π°Ρ‡Π°Π»ΠΎ большого ΠΏΡƒΡ‚ΠΈ

НаписаниС собствСнного ΠΈΠ½Π΄ΠΈΠΊΠ°Ρ‚ΠΎΡ€Π° Π½Π° MT4 ΠΈΠ»ΠΈ MT5 β€” это Π½Π΅ просто строка ΠΊΠΎΠ΄Π°. Π­Ρ‚ΠΎ ΠΏΡ€Π΅Π²Ρ€Π°Ρ‰Π΅Π½ΠΈΠ΅ вашСй Ρ€Ρ‹Π½ΠΎΡ‡Π½ΠΎΠΉ ΠΈΠ΄Π΅ΠΈ Π² ΠΆΠΈΠ²ΠΎΠΉ, Ρ€Π°Π±ΠΎΡ‚Π°ΡŽΡ‰ΠΈΠΉ инструмСнт. НачнитС с ΠΌΠ°Π»ΠΎΠ³ΠΎ: ΠΏΠΎΠ²Ρ‚ΠΎΡ€ΠΈΡ‚Π΅ ΠΏΡ€ΠΈΠΌΠ΅Ρ€ с ATR-полосами, ΠΏΠΎΠΈΠ³Ρ€Π°ΠΉΡ‚Π΅ с ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€Π°ΠΌΠΈ, ΠΈΠ·ΠΌΠ΅Π½ΠΈΡ‚Π΅ Ρ†Π²Π΅Ρ‚Π°. ΠŸΠΎΡ‚ΠΎΠΌ Π΄ΠΎΠ±Π°Π²ΡŒΡ‚Π΅ условия: ΠΏΡƒΡΡ‚ΡŒ полосы ΠΌΠ΅Π½ΡΡŽΡ‚ Ρ†Π²Π΅Ρ‚, ΠΊΠΎΠ³Π΄Π° Ρ†Π΅Π½Π° касаСтся ΠΈΡ…. А Π·Π°Ρ‚Π΅ΠΌ β€” ΠΏΠΎΠ΄ΠΊΠ»ΡŽΡ‡Π°ΠΉΡ‚Π΅ ΠΈΠ½Π΄ΠΈΠΊΠ°Ρ‚ΠΎΡ€ ΠΊ совСтнику ΠΈ Π°Π²Ρ‚ΠΎΠΌΠ°Ρ‚ΠΈΠ·ΠΈΡ€ΡƒΠΉΡ‚Π΅ Π²Ρ…ΠΎΠ΄Ρ‹ [citation:5][citation:6].

Π”Π°, Π½Π° стартС Π±ΡƒΠ΄Π΅Ρ‚ ΠΌΠ½ΠΎΠ³ΠΎ ошибок компиляции. Π”Π°, Π½Π΅ всё Π·Π°Ρ€Π°Π±ΠΎΡ‚Π°Π΅Ρ‚ с ΠΏΠ΅Ρ€Π²ΠΎΠ³ΠΎ Ρ€Π°Π·Π°. Но ΠΊΠ°ΠΆΠ΄Ρ‹ΠΉ исправлСнный Π±Π°Π³ Π΄Π΅Π»Π°Π΅Ρ‚ вас Π»ΡƒΡ‡ΡˆΠ΅. И ΠΎΠ΄Π½Π°ΠΆΠ΄Ρ‹ Π²Ρ‹ просто ΠΎΡ‚ΠΊΡ€ΠΎΠ΅Ρ‚Π΅ Ρ‚Π΅Ρ€ΠΌΠΈΠ½Π°Π», ΡƒΠ²ΠΈΠ΄ΠΈΡ‚Π΅ Π·Π΅Π»Ρ‘Π½ΡƒΡŽ ΠΈ ΠΊΡ€Π°ΡΠ½ΡƒΡŽ Π»ΠΈΠ½ΠΈΠΈ, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ сами Π½Π°Ρ€ΠΈΡΠΎΠ²Π°Π»ΠΈΡΡŒ ΠΏΠΎ вашСй Ρ„ΠΎΡ€ΠΌΡƒΠ»Π΅, ΠΈ ΠΏΠΎΠΉΠΌΡ‘Ρ‚Π΅: Β«Π― это сдСлал. Моя идСя ΠΎΠΆΠΈΠ»Π°Β». И это чувство стоит всСх ΠΏΠΎΡ‚Ρ€Π°Ρ‡Π΅Π½Π½Ρ‹Ρ… часов.

Β«ΠŸΠ΅Ρ€Π²Ρ‹ΠΉ ΠΈΠ½Π΄ΠΈΠΊΠ°Ρ‚ΠΎΡ€ β€” ΠΊΠ°ΠΊ ΠΏΠ΅Ρ€Π²Ρ‹ΠΉ шаг. Π’Ρ€ΡƒΠ΄Π½ΠΎ, ΡΡ‚Ρ€Π°ΡˆΠ½ΠΎ, Π½ΠΎ ΡΡ‚ΡƒΠΏΠΈΡ‚ΡŒ ΠΎΠ΄Π½Π°ΠΆΠ΄Ρ‹ Π½ΡƒΠΆΠ½ΠΎ, Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΠΏΠΎΠ½ΡΡ‚ΡŒ: Ρ‚Π΅ΠΏΠ΅Ρ€ΡŒ Π²Ρ‹ Π½Π΅ просто Ρ‚Ρ€Π΅ΠΉΠ΄Π΅Ρ€, Π²Ρ‹ β€” Π°Ρ€Ρ…ΠΈΡ‚Π΅ΠΊΡ‚ΠΎΡ€ своих инструмСнтов».

 

Π”Π°Ρ‚Π° размСщСния ΡΡ‚Π°Ρ‚ΡŒΠΈ: 2026-05-18T17:04:19