Kodlama yardımı - sayfa 227

 
Air92:
Merhaba Mladen.Sürümü bu gösterge yaptınız. Mümkünse diğer gösterge örneğinde olduğu gibi burada ayrı ayrı hareketli ortalama yapmak istiyorum. Teşekkür ederim.

hava92

Yapılamaz (zaten 8 çizim arabelleği kullanılıyor - metatrader 4, 8'den fazla çizim arabelleğine izin vermiyor)

 
mladen:
Air92 Yapılamaz (zaten 8 çizim arabelleği kullanılıyor - metatrader 4, 8'den fazla çizim arabelleğine izin vermiyor)

Tamam, Mladen.Anladım.Teşekkürler

 

Merhaba Mladen,

Lütfen bu MACD MTF indi'yi bir EA'ya çevirir misiniz, macd herhangi bir 3 tf'de yeşil olduğunda satın alın, herhangi bir üç kırmızı olduğunda satar mısınız? ticareti kapatın ve ters trendde yeni açın.

gerekli ayarlar: iz, başabaş, kayıp, açık veya kapalı çubukta giriş, Sihirli sayı ve parti büyüklüğü. Alt tf'de iyi çalışıyor! Takdir edecek. teşekkürler

Dosyalar:
 

Merhaba, forumda hepimiz için ilginç bir şey buldum.Bir sonraki mumun yönünü tahmin etmeye yardımcı olabilecek bir yazılım var.Bu mt4 betiği üzerinde volatilite eklemek için çalışıyorum ama yapamadım.Ben de istiyorum. mevcut mumun kapanışında gelmek için uyarıda bulunun ve bize bir sonraki şekillenmek üzere olan mumun yönünü söyleyin. oynaklık bize boyutu veya fiyatın ne kadar uzayacağını söyleyecektir. İlke benim değildi.i bir yerden kopyalayın.betik gerçekten çalışıyor.Codergurus ve Mladin gibi bir programcının lütfen bu betiği incelemesini istiyorum.Şu anda gerçekten iyi çalışmıyor.Uyarı toplamaya ve yeniden boyamaya devam ettiği için.

#özellik göstergesi_chart_window

#özellik göstergesi_tamponları 2

#özellik göstergesi_color1 Kireç

#özellik göstergesi_renk2 Kırmızı

#özellik göstergesi_width1 4

#özellik göstergesi_width2 4

extern bool Uyarılar = DOĞRU;

çift Çapraz[];

çift CrossDown[];

bool CrossedUp = yanlış;

bool CrossedDown = yanlış;

int SignalLabeled = 0; // 0: başlangıç durumu; 1 Yukarı; 2: aşağı.

int upalert=yanlış,downalert=yanlış;

//+------------------------------------------- -------------------+

//| Özel gösterge başlatma işlevi |

//+------------------------------------------- -------------------+

int init()

{

//---- göstergeler

SetIndexStyle(0,DRAW_OK, BOŞ);

SetIndexArrow(0,233);

SetIndexBuffer(0,CrossUp);

SetIndexStyle(1,DRAW_OK, BOŞ);

SetIndexArrow(1,234);

SetIndexBuffer(1,CrossDown);

//----

dönüş(0);

}

//+------------------------------------------- -------------------+

//| Özel gösterge sıfırlama işlevi |

//+------------------------------------------- -------------------+

int tanım()

{

//----

//----

dönüş(0);

}

//+------------------------------------------- -------------------+

//| Özel gösterge yineleme işlevi |

//+------------------------------------------- -------------------+

int start(){

int limit,i,counter;

çift pnow;

çift p1,p2,p3,p4,p5,p6,p7,p8,p9,p10;

çift SOT,SOT1,SOT2,SOT3,SOT4,SOT5,SOT6,SOT7,SOT8,SOT9,SOT10;

çift SOTAV10;

çift SOTAV2;

çift Aralık, AvgRange;

int counted_bars=IndicatorCounted();

//---- olası hataları kontrol et

if(counted_bars<0) return(-1);

//---- son sayılan çubuk yeniden sayılacak

if(counted_bars>0) counted_bars--;

limit=Barlar-sayılan_barlar;

for(i = 0; i <= limit; i++) {

sayaç=i;

Aralık=0;

OrtAralık=0;

for (sayaç=i;sayaç<=i+12;sayaç++)

{

AvgRange=AvgRange+MathAbs(Yüksek[sayaç]-Düşük[sayaç]);

}

Aralık=OrtAralık/10;

// geçerli fiyat Kapat ve Aç

çift OpenPricenow = Aç ;

double ClosePricenow = Kapat ;

double Volumenow = Volume ;

// mum 1

çift OpenPrice1 = Aç ;

double ClosePrice1 = Kapat ;

çift Cilt1 = Hacim ;

// mum 2

çift OpenPrice2 = Aç ;

double ClosePrice2 = Kapat ;

çift Cilt2 = Hacim ;

// mum 3

çift OpenPrice3 = Aç ;

double ClosePrice3 = Kapat ;

çift Hacim3 = Hacim ;

// mum 4

çift OpenPrice4 = Aç ;

double ClosePrice4 = Kapat ;

çift Hacim4 = Hacim ;

// mum 5

çift OpenPrice5 = Aç ;

double ClosePrice5 = Kapat ;

çift Hacim5 = Hacim ;

// mum 6

çift OpenPrice6 = Aç ;

double ClosePrice6 = Kapat ;

çift Hacim6=Hacim ;

// mum 7

çift OpenPrice7 = Aç ;

double ClosePrice7 = Kapat ;

çift Hacim7 = Hacim ;

// mum 8

double OpenPrice8 =Aç ;

double ClosePrice8 =Kapat ;

çift Hacim8 =Hacim;

// mum 9

çift OpenPrice9 = Aç ;

double ClosePrice9 = Kapat ;

çift Hacim9 = Hacim ;

// mum 10

çift OpenPrice10 =Açık;

double ClosePrice10=Kapat;

çift Hacim10=Hacim;

pnow =(ClosePricenow - OpenPricenow);

SOT = (pnow / Volumenow)*10000;

p1 = (KapatFiyat1 - AçıkFiyat1);

SOT1= (p1 / Cilt1) *10000;

p2 = (KapatFiyat2 - AçıkFiyat2);

SOT2 =(p2/ Cilt2) *10000;

p3 =(KapatFiyat3 - AçıkFiyat3);

SOT3 =(p3/Hacim3)*10000;

p4=(KapatFiyat4 - AçıkFiyat4);

SOT4=(p4/Hacim4)*10000;

p5=(KapatFiyat5 - AçıkFiyat5);

SOT5 =(p5/Hacim5)*10000;

p6=(KapatFiyat6 - AçıkFiyat6);

SOT6 =(p6/Hacim6)*10000;

p7=(KapatFiyat7 - AçıkFiyat7);

SOT7 =(p7 / Hacim7)*10000;

p8 =(KapatFiyat8 - AçıkFiyat8);

SOT8=(p8/Hacim8)*10000;

p9 =(KapatFiyat9-AçFiyat9);

SOT9 =(p9/Hacim9)*10000;

p10 =(KapatFiyat10 -AçıkFiyat10);

SOT10 = (p10/Hacim10)*10000;

SOTAV10=(SOT1+SOT2+SOT3+SOT4+SOT5+SOT6+SOT7+SOT8+SOT9+SOT10/100*10);

SOTAV2 = (SOTAV10*2);

if ((SOT>SOTAV2)&&(KapatFiyat1<AçFiyat1)&&(KapatFiyatnow<AçFiyat1)){

Çapraz = doğru;

ÇaprazDown=yanlış;

}

başka

if((SOT>SOTAV2)&&(KapatFiyat1>AçFiyat1)&&(KapatFiyatnow>AçFiyatnow)){

CrossedUp = yanlış;

CrossDown = doğru;

}

if((CrossedUp==true)&&(SignalLabeled!=1)){

CrossUp=Düşük Menzil*1.3;

if(i<=2 && Uyarılar && !upalert)

{

Uyarı (Symbol()," ",Period()," M Fiyat YUKARI ");

//SendMail("Satın Al "+Symbol(),"");

upalert=true;

downalert=yanlış;

}

SignalLabeled = 1;

}

if ((CrossedDown == true) && (SignalLabeled != 2)) {

CrossDown = Yüksek + Aralık*1.3;

if(i<=2 && Uyarılar && !downalert)

{

Uyarı (Symbol()," ",Period(),"M Fiyat AŞAĞI ");

//SendMail("Sat "+Symbol(),"");

downalert=true;

upalert=yanlış;

}

SignalLabeled = 2;

}

}

dönüş(0);

}

Bu yazılımı yöneten ilke şudur:

İşlem hızı = (Fiyat Değişimi / Hacim) birim zaman başına. = (Aç-Kapat)/varsayılan dönemde tik hacmi.

Mevcut mumun SoT'si, seçilen dönemin ortalama SoT'sinin iki katından büyükse, sonraki mum mevcut mumla aynı yönde olacaktır. (Sinyallerimiz mevcut mumun kapanışında verilebilir).

Dikkat: Mevcut mumu aynı renk 2-3 mum takip ediyorsa sinyal verilmeyecektir. Örnek olarak: Tarih E/J(Açık) E/J(Yüksek) E/J(Düşük) E/J(Kapat) Hacim(E/J) Yön Fiyat değişim Hızı 11/06/2012 03:56:00 102.456 102.456 102.429 102.429 96 AŞAĞI -0.027 2.81 11/06/2012 03:57:00 102.429 102.429 102.398 102.413 158 AŞAĞI -0.016 1.01 Hız 1.70'den (ortalama 14 mum) büyük olduğundan, bir sonraki mumun düşeceğini tahmin ediyor. Bu gösterge bir hız göstergesi gibi görünebilir veya mum üzerindeki sinyalle birlikte sadece sayı görünebilir. Bunun doğru kararlar vermede çok yardımcı olacağını düşünüyorum. Bunun arkasındaki teori, her yükselişin veya düşüşün mevcut kuvvetten daha büyük bir kuvvete veya eylemsizliğe ihtiyaç duymasıdır, bu nedenle böyle bir ekstra kuvveti gördüğümüzde veya yakaladığımızda, bir sonraki mum yönünü ve değerlerini de belirleyebiliriz.

................................................................ ................................................................ ................................

 
Mastercash:
Merhaba, forumda hepimiz için ilginç bir şey buldum.Bir sonraki mumun yönünü tahmin etmeye yardımcı olabilecek bir yazılım var.Bu mt4 betiği üzerinde volatilite eklemek için çalışıyorum ama yapamadım.Ben de istiyorum. mevcut mumun kapanışında gelmek için uyarıda bulunun ve bize bir sonraki şekillenmek üzere olan mumun yönünü söyleyin. oynaklık bize boyutu veya fiyatın ne kadar uzayacağını söyleyecektir. İlke benim değildi.i bir yerden kopyalayın.betik gerçekten çalışıyor.Codergurus ve Mladin gibi bir programcının lütfen bu betiği incelemesini istiyorum.Şu anda gerçekten iyi çalışmıyor.Uyarı toplamaya ve yeniden boyamaya devam ettiği için.

#özellik göstergesi_chart_window

#özellik göstergesi_tamponları 2

#özellik göstergesi_color1 Kireç

#özellik göstergesi_renk2 Kırmızı

#özellik göstergesi_width1 4

#özellik göstergesi_width2 4

extern bool Uyarılar = DOĞRU;

çift Çapraz[];

çift CrossDown[];

bool CrossedUp = yanlış;

bool CrossedDown = yanlış;

int SignalLabeled = 0; // 0: başlangıç durumu; 1 Yukarı; 2: aşağı.

int upalert=yanlış,downalert=yanlış;

//+------------------------------------------- -------------------+

//| Özel gösterge başlatma işlevi |

//+------------------------------------------- -------------------+

int init()

{

//---- göstergeler

SetIndexStyle(0,DRAW_OK, BOŞ);

SetIndexArrow(0,233);

SetIndexBuffer(0,CrossUp);

SetIndexStyle(1,DRAW_OK, BOŞ);

SetIndexArrow(1,234);

SetIndexBuffer(1,CrossDown);

//----

dönüş(0);

}

//+------------------------------------------- -------------------+

//| Özel gösterge sıfırlama işlevi |

//+------------------------------------------- -------------------+

int tanım()

{

//----

//----

dönüş(0);

}

//+------------------------------------------- -------------------+

//| Özel gösterge yineleme işlevi |

//+------------------------------------------- -------------------+

int start(){

int limit,i,counter;

çift pnow;

çift p1,p2,p3,p4,p5,p6,p7,p8,p9,p10;

çift SOT,SOT1,SOT2,SOT3,SOT4,SOT5,SOT6,SOT7,SOT8,SOT9,SOT10;

çift SOTAV10;

çift SOTAV2;

çift Aralık, AvgRange;

int counted_bars=IndicatorCounted();

//---- olası hataları kontrol et

if(counted_bars<0) return(-1);

//---- son sayılan çubuk yeniden sayılacak

if(counted_bars>0) counted_bars--;

limit=Barlar-sayılan_barlar;

for(i = 0; i <= limit; i++) {

sayaç=i;

Aralık=0;

OrtAralık=0;

for (sayaç=i;sayaç<=i+12;sayaç++)

{

AvgRange=AvgRange+MathAbs(Yüksek[sayaç]-Düşük[sayaç]);

}

Aralık=OrtAralık/10;

// geçerli fiyat Kapat ve Aç

çift OpenPricenow = Aç ;

double ClosePricenow = Kapat ;

double Volumenow = Volume ;

// mum 1

çift OpenPrice1 = Aç ;

double ClosePrice1 = Kapat ;

çift Cilt1 = Hacim ;

// mum 2

çift OpenPrice2 = Aç ;

double ClosePrice2 = Kapat ;

çift Cilt2 = Hacim ;

// mum 3

çift OpenPrice3 = Aç ;

double ClosePrice3 = Kapat ;

çift Hacim3 = Hacim ;

// mum 4

çift OpenPrice4 = Aç ;

double ClosePrice4 = Kapat ;

çift Hacim4 = Hacim ;

// mum 5

double OpenPrice5 = Aç ;

double ClosePrice5 = Kapat ;

çift Hacim5 = Hacim ;

// mum 6

çift OpenPrice6 = Aç ;

double ClosePrice6 = Kapat ;

çift Hacim6=Hacim ;

// mum 7

çift OpenPrice7 = Aç ;

double ClosePrice7 = Kapat ;

çift Hacim7 = Hacim ;

// mum 8

double OpenPrice8 =Aç ;

double ClosePrice8 =Kapat ;

çift Hacim8 =Hacim;

// mum 9

çift OpenPrice9 = Aç ;

double ClosePrice9 = Kapat ;

çift Hacim9 = Hacim ;

// mum 10

çift OpenPrice10 =Açık;

double ClosePrice10=Kapat;

çift Hacim10=Hacim;

pnow =(ClosePricenow - OpenPricenow);

SOT = (pnow / Volumenow)*10000;

p1 = (KapatFiyat1 - AçıkFiyat1);

SOT1= (p1 / Cilt1) *10000;

p2 = (KapatFiyat2 - AçıkFiyat2);

SOT2 =(p2/ Cilt2) *10000;

p3 =(KapatFiyat3 - AçıkFiyat3);

SOT3 =(p3/Hacim3)*10000;

p4=(KapatFiyat4 - AçıkFiyat4);

SOT4=(p4/Hacim4)*10000;

p5=(KapatFiyat5 - AçıkFiyat5);

SOT5 =(p5/Hacim5)*10000;

p6=(KapatFiyat6 - AçıkFiyat6);

SOT6 =(p6/Hacim6)*10000;

p7=(KapatFiyat7 - AçıkFiyat7);

SOT7 =(p7 / Hacim7)*10000;

p8 =(KapatFiyat8 - AçıkFiyat8);

SOT8=(p8/Hacim8)*10000;

p9 =(KapatFiyat9-AçFiyat9);

SOT9 =(p9/Hacim9)*10000;

p10 =(KapatFiyat10 -AçıkFiyat10);

SOT10 = (p10/Hacim10)*10000;

SOTAV10=(SOT1+SOT2+SOT3+SOT4+SOT5+SOT6+SOT7+SOT8+SOT9+SOT10/100*10);

SOTAV2 = (SOTAV10*2);

if ((SOT>SOTAV2)&&(KapatFiyat1<AçFiyat1)&&(KapatFiyatnow<AçFiyat1)){

Çapraz = doğru;

ÇaprazDown=yanlış;

}

başka

if((SOT>SOTAV2)&&(KapatFiyat1>AçFiyat1)&&(KapatFiyatnow>AçFiyatnow)){

CrossedUp = yanlış;

CrossDown = doğru;

}

if((CrossedUp==true)&&(SignalLabeled!=1)){

CrossUp=Düşük Menzil*1.3;

if(i<=2 && Uyarılar && !upalert)

{

Uyarı (Symbol()," ",Period()," M Fiyat YUKARI ");

//SendMail("Satın Al "+Symbol(),"");

upalert=true;

downalert=yanlış;

}

SignalLabeled = 1;

}

if ((CrossedDown == true) && (SignalLabeled != 2)) {

CrossDown = Yüksek + Aralık*1.3;

if(i<=2 && Uyarılar && !downalert)

{

Uyarı (Symbol()," ",Period(),"M Fiyat AŞAĞI ");

//SendMail("Sat "+Symbol(),"");

downalert=true;

upalert=yanlış;

}

SignalLabeled = 2;

}

}

dönüş(0);

}

Bu yazılımı yöneten ilke şudur:

İşlem hızı = (Fiyat Değişimi / Hacim) birim zaman başına. = (Aç-Kapat)/varsayılan dönemde tik hacmi.

Mevcut mumun SoT'si, seçilen dönemin ortalama SoT'sinin iki katından büyükse, sonraki mum mevcut mumla aynı yönde olacaktır. (Sinyallerimiz mevcut mumun kapanışında verilebilir).

Dikkat: Mevcut mumu aynı renk 2-3 mum takip ediyorsa sinyal verilmeyecektir. Örnek olarak: Tarih E/J(Açık) E/J(Yüksek) E/J(Düşük) E/J(Kapat) Hacim(E/J) Yön Fiyat değişim Hızı 11/06/2012 03:56:00 102.456 102.456 102.429 102.429 96 AŞAĞI -0.027 2.81 11/06/2012 03:57:00 102.429 102.429 102.398 102.413 158 AŞAĞI -0.016 1.01 Hız 1.70'den (ortalama 14 mum) büyük olduğundan, bir sonraki mumun düşeceğini tahmin ediyor. Bu gösterge bir hız göstergesi gibi görünebilir veya mum üzerindeki sinyalle birlikte sadece sayı görünebilir. Bunun doğru kararlar vermede çok yardımcı olacağını düşünüyorum. Bunun arkasındaki teori, her yükselişin veya düşüşün mevcut kuvvetten daha büyük bir kuvvete veya eylemsizliğe ihtiyaç duymasıdır, bu nedenle böyle bir ekstra kuvveti gördüğümüzde veya yakaladığımızda, bir sonraki mum yönünü ve değerlerini de belirleyebiliriz.

................................................................ ................................................................ ................................

ana para

Gördüğüm gibi, kod üzerinde herhangi bir şey yapmadan önce bazı çalışma zamanı testlerine ihtiyacı olacak. Piyasa açılır açılmaz neler yapılabileceğini görecek

 

Merhaba

Birisi bu komut dosyasına biraz kod eklememe yardımcı olabilir. jarroo_level_picker.mq4

Bu betik, kandilin açılıp kapanmasına bir çizgi çizer, onu kandilin yarısının altına mı yoksa altına mı düşürdüğümüze bağlıdır ve daha sonra hangi kandelin kullanıldığını görmek için kandilin altına veya altına küçük bir ok çizmesini istiyorum.

Şimdiden teşekkürler.

Dosyalar:
 
Andrewsurfer:
Merhaba

Birisi bu komut dosyasına biraz kod eklememe yardımcı olabilir. jarroo_level_picker.mq4

Bu betik, kandilin açılıp kapanmasına bir çizgi çizer, onu kandilin yarısının altına mı yoksa altına mı düşürdüğümüze bağlıdır ve daha sonra hangi kandelin kullanıldığını görmek için kandilin altına veya altına küçük bir ok çizmesini istiyorum.

Şimdiden teşekkürler.

Andrewsörfçü

Bu sürümü deneyin. Ok eklemez, mumun kullanıldığı çubukta çizgi rengiyle aynı renkte bir çubuk ekler.

Dosyalar:
 
mladen:
Andrewsurfer Bu sürümü deneyin. Ok eklemez, mumun kullanıldığı çubukta çizgi rengiyle aynı renkte bir çubuk ekler.

Üzgünüm ama herhangi bir değişiklik görmüyorum. Hala başka işaretler olmadan sadece mavi çizgi.

 
Andrewsurfer:
Üzgünüm ama herhangi bir değişiklik görmüyorum. Hala başka işaretler olmadan sadece mavi çizgi.

Fazladan bir satır var (resimde olduğu gibi) ve betiği bıraktığınız çubukta oluşturulur.

Dosyalar:
v_line.gif  36 kb
 
mladen:
Fazladan bir satır var (resimde olduğu gibi) ve betiği bıraktığınız çubukta oluşturulur.

Ön planda MT4 grafiğinin yanlış ayarlarını yaptım ve şimdi çalışıyor.

Çok teşekkürler.