![MQL5 - MetaTrader 5 müşteri terminalinde yerleşik alım-satım stratejileri dili](https://c.mql5.com/i/registerlandings/logo-2.png)
Alım-satım fırsatlarını kaçırıyorsunuz:
- Ücretsiz alım-satım uygulamaları
- İşlem kopyalama için 8.000'den fazla sinyal
- Finansal piyasaları keşfetmek için ekonomik haberler
Kayıt
Giriş yap
Gizlilik ve Veri Koruma Politikasını ve MQL5.com Kullanım Şartlarını kabul edersiniz
Hesabınız yoksa, lütfen kaydolun
bu, yapı 765'te yüklenmiyor.
muhtemelen korunmuştur
. 765 [/ QUOTE]
Bu göstergeyi (destek ve direnç) EMA'ya görüntü olarak koyabilir miyiz?
Destek veya direnç çizgilerini geçtiğinde alım veya satımı açın.
Bollinger bantları Çizgisini geçerken hareketli ortalama ile açık satış.
destek ve direnç![](https://c.mql5.com/forextsd/forum/151/suporte_e_resistencia.jpg)
bunlar göstergeler
https://www.mql5.com/en/forum/general
Bantlar
//+------------------------------------------- -------------------+
//| Bands.mq4 |
//| Telif Hakkı 2005-2014, MetaQuotes Software Corp. |
//| MQL4: MetaTrader ile otomatikleştirilmiş forex ticareti, strateji test cihazı ve özel göstergeler |
//+------------------------------------------- -------------------+
#özellik telif hakkı "2005-2014, MetaQuotes Software Corp."
#özellik bağlantısı "http://www.mql4.com"
#özellik açıklaması "Bollinger Bantları"
#mülkiyet katı
#Dahil etmek
#özellik göstergesi_chart_window
#özellik göstergesi_tamponları 3
#özellik göstergesi_color1 LightSeaGreen
#özellik göstergesi_renk2 AçıkDenizYeşil
#özellik göstergesi_renk3 LightSeaYeşil
//--- gösterge parametreleri
giriş int InpBandsPeriod=20; // Bantlar Dönemi
giriş int InpBandsShift=0; // Bant Kaydırma
çift giriş InpBandsDeviations=2.0; // Bant Sapmaları
//--- arabellekler
çift ExtMovingBuffer[];
çift ExtUpperBuffer[];
çift ExtLowerBuffer[];
çift ExtStdDevBuffer[];
//+------------------------------------------- -------------------+
//| Özel gösterge başlatma işlevi |
//+------------------------------------------- -------------------+
int OnInit(void)
{
//--- Sayma için kullanılan 1 ek tampon.
Gösterge Tamponları(4);
GöstergeDigits(Rakamlar);
//--- orta hat
SetIndexStyle(0,DRAW_LINE);
SetIndexBuffer(0,ExtMovingBuffer);
SetIndexShift(0,InpBandsShift);
SetIndexLabel(0,"SMA Bantları");
//--- üst bant
SetIndexStyle(1,DRAW_LINE);
SetIndexBuffer(1,ExtUpperBuffer);
SetIndexShift(1,InpBandsShift);
SetIndexLabel(1,"Üst Bantlar");
//--- alt bant
SetIndexStyle(2,DRAW_LINE);
SetIndexBuffer(2,ExtLowerBuffer);
SetIndexShift(2,InpBandsShift);
SetIndexLabel(2,"Bantlar Alt");
//--- iş arabelleği
SetIndexBuffer(3,ExtStdDevBuffer);
//--- giriş parametresini kontrol et
if(InpBandsPeriod<=0)
{
Print("Yanlış giriş parametresi Bantlar Dönemi=",InpBandsPeriod);
dönüş(INIT_FAILED);
}
//---
SetIndexDrawBegin(0,InpBandsPeriod+InpBandsShift);
SetIndexDrawBegin(1,InpBandsPeriod+InpBandsShift);
SetIndexDrawBegin(2,InpBandsPeriod+InpBandsShift);
//--- başlatma tamamlandı
dönüş(INIT_SUCCEEDED);
}
//+------------------------------------------- -------------------+
//| Bollinger Bantları |
//+------------------------------------------- -------------------+
int OnCalculate(const int oranları_toplam,
const int önceki_hesaplanmış,
const tarihsaat &saat[],
const double &aç[],
const çift &yüksek[],
const çift &düşük[],
const double &kapat[],
const uzun &tick_volume[],
const uzun &hacim[],
const int &spread[])
{
int ben, konum;
//---
if(rates_total<=InpBandsPeriod || InpBandsPeriod<=0)
dönüş(0);
//--- 0'dan rate_total'a kadar sayma
ArraySetAsSeries(ExtMovingBuffer,yanlış);
ArraySetAsSeries(ExtUpperBuffer,yanlış);
ArraySetAsSeries(ExtLowerBuffer,yanlış);
ArraySetAsSeries(ExtStdDevBuffer,yanlış);
ArraySetAsSeries(kapat,yanlış);
//--- ilk sıfır
if(önceki_hesaplanmış<1)
{
for(i=0; i<InpBandsPeriod; i++)
{
ExtMovingBuffer=BOŞ_VALUE;
ExtUpperBuffer=BOŞ_VALUE;
ExtLowerBuffer=BOŞ_VALUE;
}
}
//--- hesaplamayı başlat
if(önceki_hesaplanmış>1)
pos=prev_hesaplanmış-1;
başka
konum=0;
//--- ana döngü
for(i=pos; i<rates_total && !IsStopped(); i++)
{
//--- orta hat
ExtMovingBuffer=SimpleMA(i,InpBandsPeriod,close);
//--- StdDev'i hesapla ve yaz
ExtStdDevBuffer=StdDev_Func(i,kapat,ExtMovingBuffer,InpBandsPeriod);
//--- üst satır
ExtUpperBuffer=ExtMovingBuffer+InpBandsDeviations*ExtStdDevBuffer;
//--- alt satır
ExtLowerBuffer=ExtMovingBuffer-InpBandsDeviations*ExtStdDevBuffer;
//---
}
//---- OnHesaplama tamamlandı. Yeni prev_calculated döndürün.
dönüş(oranlar_toplam);
}
//+------------------------------------------- -------------------+
//| Standart Sapmayı Hesapla |
//+------------------------------------------- -------------------+
double StdDev_Func(int pozisyon,const double &fiyat[],const double &MAprice[],int nokta)
{
//--- değişkenler
çift StdDev_dTmp=0.0;
//--- pozisyonu kontrol et
if(konum>=dönem)
{
//--- StdDev'i hesapla
for(int i=0; i<dönem; i++)
StdDev_dTmp+=MathPow(fiyat[konum-i]-MAfiyat[konum],2);
StdDev_dTmp=MathSqrt(StdDev_dTmp/dönem);
}
//--- hesaplanan değeri döndür
dönüş(StdDev_dTmp);
}
//+------------------------------------------- -------------------+
MovingAverages.mqh güvenilir değil
Gerçek nokta sinyali true_point_signal.mq4
Yeniden adlandırılan süper sinyal göstergesi (aynı şeyi yeniden boyar) symphonie_market_emotion_indikator.mq4
Bir süredir bunu kullanıyorum ve beğendim
Merhaba MrTools/Mladen, lütfen çarpı işareti/sinyal çizgisine oklarla uyarılar ekleyebilir misiniz?
teşekkürler
Merhaba,
İşte göstergelerin başka bir versiyonu - v3 uyarıları ve kanal göstergelerinin bir birleşimi. Uyarılar da bildirim gönderebilir .
Belki faydalı bulursun![](https://c.mql5.com/forextsd/smiles/wink.png)
En iyisi, V.