ICözel işlev - sayfa 3

 

Çoğunlukla test/doğrulama için

Stratejilerimi bir gösterge ile geliştiriyorum ve EA'nın göstergenin yaptığı gibi çalıştığını doğrulamak istiyorum. Kemerim altında MT4 ile biraz daha deneyim kazanırsam, belki gösterge mantığının etini bir alt program veya DLL yapabilir ve ardından hem göstergemden hem de EA'dan çağırabilirim.

Test cihazını kullandığınızda bir grafik açabilirsiniz. Bu mantığı geçersiz kılabilirsem, o çizelgeye de nesneler koyabilirdim.

Size ne yaptıklarını grafiksel olarak gösteren bazı EA'ları bilen var mı?

 

İlk ICustom'umu özel olarak Fisher m11 kullanarak yaptım. Güzel bir grafik olan ancak çoğu zaman kaybeden test cihazındaki göstergeyi gösterir. Fisher m11 bir göstergedir ve o klasörde olması gerekir. Fisher Auto EA m11, uzmanlar klasöründe olmalıdır. İşte onu EA'ya yerleştirme şeklim:

iCustom(NULL,0,"Fisher_m11",Fisher_Period, IndexSmoothing,PriceSmoothing,0);

İşte onu kullanma biçimi: double iCustom(dize sembolü, int zaman çerçevesi, dize adı, ..., int modu, int shift)

Kendi EA'larını oluşturmaya çalışan bazı kişilere yardımcı olabilir.

Dosyalar:
 

Benzer bir sorum var.

kullanmayı bilen var mı

SHI_SilverTrendSigAlert

ve

Uyarı v3 ile SilverTrend_Signal

EA'da mı?

Profesyonel bir yardıma ihtiyacım var.

 

SilverTrend ticaret yapmak için güzel ama sinyal, bar kapanana kadar devam edecek ve bu bir EA yapmakta zor olabilir. Bakmanız için 12 Gümüş EA'dan oluşan bir fermuar ekledim.

Dosyalar:
 

Sadece iCustom satırının son değerlerini kafamda netleştirmek istedim.

Çizgi ve Shift

Bu nedenle, VQ gibi yalnızca bir grafik çizgisi olan bir Göstergem varsa ve önceki kapalı mumda, bir Satın Alma koşulu için Ok sinyali veriyorsa veya Ok aşağı inerek bir Satış koşulu sinyali veriyorsa, ihtiyacım olacak gibi iki koşul ayarlamak için;

double VQ0 = iCustom(NULL, 0, "VQ", false,0,5,3,1,5,true,false,true,true,false,true,1485, 1,1);

double VQ1 = iCustom(NULL, 0, "VQ", false,0,5,3,1,5,true,false,true,true,false,true,1485, 2,1);

[/code]

So the above is going to check for an up condition (up) or sell (down) condition on the closed bar, correct?

Then my Buy and Sell code should be; correct?

//Buy

if (VQ0>VQ1 && ((EachTickMode && !TickCheck) || (!EachTickMode && (Bars != BarCount))))

//Sell

if (VQ0<VQ1 && ((EachTickMode && !TickCheck) || (!EachTickMode && (Bars != BarCount))))

[/code]

Now if I wanted to add a second indicator so that TWO conditions need to be met at the same time to trigger a trade, it has two graphical lines (Don't know if it matters by how many lines it has, the indicator knows what it's Buy and Sell conditions are, correct?) My code would change to;

[code]

double VQ0 = iCustom(NULL, 0, "VQ", false,0,5,3,1,5,true,false,true,true,false,true,1485, 1,1);

double VQ1 = iCustom(NULL, 0, "VQ", false,0,5,3,1,5,true,false,true,true,false,true,1485, 2,1);

double QQEA0 = iCustom(NULL, 0, "QQEA",5,14,4.236, 1, 1);

double QQEA1 = iCustom(NULL, 0, "QQEA",5,14,4.236, 2, 1);

and Buy and Sell code should be

[code]

//Buy

if (VQ0>VQ1 && QQEA0>QQEA1 && ((EachTickMode && !TickCheck) || (!EachTickMode && (Bars != BarCount))))

//Sell

if (VQ0<VQ1 && QQEA0<QQEA1 && ((EachTickMode && !TickCheck) || (!EachTickMode && (Bars != BarCount))))

Düzenleme: Az önce bir geri test yaptım ve her M30 (Grafik TF) gibi işlem görüyor gibi görünüyor. Sadece ticareti YALNIZCA ilk Sinyal koşulunda başlatmasını ve ardından bir sonraki karşı sinyal koşuluna kadar beklemesini istiyorum. Her iki gösterge de bir Alış üzerinde anlaştığında işlem görüyor, ardından işlem kapatıldığında, koşullar hala karşılanıyorsa bir sonraki mumda başka bir Alış işlemine devam ediyor gibi görünüyor. istediğim bu değil Alış/Satış Sinyali başına sadece bir işlem istiyorum. teşekkürler

Ekli, birisinin koşulların yanlış olduğunu düşündükleri için benim için değiştirdiği İlk EA'm adlı iki EA'dır ve bir tanesi YourExpertAdvisor adlı bir şablon kullanarak yaptım. İkisi de doğru mu?

Teşekkür ederim

Dosyalar:
 

Eğer doğru anladıysam, EA'nızın her bir anlaşma olayının bir sinyal olması yerine, kesintisiz bir dizi gösterge anlaşmasını "tek bir sinyal" olarak ele almasını istiyorsunuz.

Bunu yapmanın bir yolu, onu durum bilgisi olan bir EA yapmak ve aşağıdaki gibi bir tasarım kullanmaktır:

static int last_signal = 0;

int signal = 0;

if ( ) signal = 1;

if ( ) signal = -1;

if ( signal != 0 && signal != last_signal ) {

// New signal series...

}

last_signal = signal;

 
ralph.ronnquist:
Eğer doğru anladıysam, EA'nızın her bir anlaşma olayının bir sinyal olması yerine, kesintisiz bir dizi gösterge anlaşmasını "tek bir sinyal" olarak ele almasını istiyorsunuz.

Bunu yapmanın bir yolu, onu durum bilgisi olan bir EA yapmak ve aşağıdaki gibi bir tasarım kullanmaktır:

static int last_signal = 0;

int signal = 0;

if ( ) signal = 1;

if ( ) signal = -1;

if ( signal != 0 && signal != last_signal ) {

// New signal series...

}

last_signal = signal;

Merhaba Ralph, belki açtığım bu konu daha anlaşılır olur;

https://www.mql5.com/en/forum/178432

teşekkürler

 
codersguru:
cinayet,

Gecikme için çok üzgünüm.

Lütfen LSMA ve iCustom_Demo'nun ekli değiştirilmiş sürümünü bulun.

Geçerli rengi (1=kırmızı, 2=yeşil ve 3=sarı) tutmak için LSMA'ya yeni bir arabellek ekledim.

Nerede (1=düşüş trendi , 2=yükseliş trendi ve 3=trend yok).

Bu arabelleğin değerini almak üzere iCustom işlevini kullanmak için şunu yazabilirsiniz:

double clr = iCustom(NULL,0,"LSMA in Color",14,1500, 5 ,0);

Teşekkürler Codersguru!!

Disk göstergeleriyle kullanmak için Dijital Pusulamın bir sürümünü oluşturabildim.

 

TheRumpledOne, aynı zamanda görüntüleri satır içi yapmak yerine nasıl ekleyeceğinizi de öğrenseniz iyi olur; yapıştırdığınız çöplerle, çok fazla yer harcar.

 
ralph.ronnquist:
TheRumpledOne, aynı zamanda görüntüleri satır içi yapmak yerine nasıl ekleyeceğinizi de öğrenseniz iyi olur; yapıştırdığınız çöplerle, çok fazla yer harcar.

Eğer "çöp" ise, neden yayınlasın ki?

Neden: