KOŞULLARIN BİRLEŞTİRİLMESİ:
Birden fazla sayıda koşulun birlikte uygulanabilmesi
mümkündür.
Farklı koşulları, formüllerinin arasına AND veya OR koyarak
birleştirebilirsiniz.
AND ile birleştirme: Her 2 koşulunda aynı zamanda
doğrulanmış olmasını gerektirir.
Örnek:
C>MOV(C,5,E) AND RSI(C,14)<35
İpucu: Koşullar ile AND / OR arasında mutlaka 1 karakterlik
boşluk olmalıdır.
Yukarıdaki koşulun anlamı şudur: Kapanış 5 barlık hareketli
ortalamadan büyük olacak ve aynı zamanda 14 barlık RSI değeri de 35 ten küçük
olacak.
Bu 2 koşulun her ikisi de geçerli olduğu anda sisteminiz
sonuç verecektir.
OR ile birleştirme :
C>MOV(C,5,E) OR RSI(C,14)<35
Formülü bu şekilde OR ile yazarsak şunu demiş oluruz:
Yukarıdaki 2 koşuldan sadece bir tanesi bile geçerli olduğu
anda sonuç ver.
Bu konuda dikkat edilmesi gereken bazı detaylar vardır.
Kesişme zamanlarını bulmak için koşulların önemli bir kısmı
CROSS fonksiyonu ile yazılmaktadır.
Bu durumda 2 koşulun birleştirilmesinde karşımıza bir sorun
çıkar. Birden fazla koşulumuz olsun ve her ikisinde de CROSS fonksiyonu kullandığımızı
varsayalım. Bu 2 koşulu AND ile birleştirdiğimiz takdirde, her 2 kesişmenin
aynı anda (aynı barda) gerçekleşmesi gerekir. Bu da pratikte pek mümkün
değildir. Bu sebeple koşullardan birisini (veya her ikisini de) > <
işaretlerini kullanarak yazmak gerekir.
Cross fonksiyonunun şablonu :
Cross(Data1,Data2) şeklindedir.
Buradaki koşulu kesişme yerine
> / < şeklinde yazmak istersek yapılması gereken şudur :
Data1>Data2 şeklinde yazmak.
2 tane koşul varken hangisini
> / < şekline dönüştüreyim derseniz aslında yapmanız gereken normalde
ikisini de büyüktür - küçüktür şeklinde yazmak olmalıdır.
Yukarıdaki şekle bakınız.
13 Ekim gününde MACD’ye göre kesişme gerçekleşmiştir. Bununla beraber
ortalamaların kesişmesi gerçekleşmemiştir.
MACD koşulunu kesişme şeklinde
(CROSS ile) bıraktığınızı ve hareketli ortalama kesişmesini
MAV(C,5,E)>MAV(C,15,E) şeklinde yazdığınızı düşünelim.
13 Ekim günü hareketli ortalama
koşulu henüz gerçekleşmediği için sistemin bütünü sonuç vermeyecektir.
5 günlük hareketli ortalamanın
15 günlük hareketli ortalamanın üstüne çıktığı anda da MACD kesişmesi
oluşmadığı için (daha önceden kesişme gerçekleşti çünkü) 15 Ekim gününde de 2
sistemin birlikte çalışması için gerçekleşme sonucu elde edemeyeceksiniz.
Eğer her 2 koşulu da >
işareti ile yazarsanız 15 Ekim barında koşullarınız gerçekleşti sonucu
alırsınız.
Burada belirleyici olan sizin
beklentilerinizdir.
Koşullardan birisi sizin için
daha önemli (belirleyici) olabilir. Ve kesişme olduğu anda (diğer koşullarda
uygun ise) alırım, yoksa bir sonraki kesişmeyi beklerim diyebilirsiniz.
O zaman o koşulu kesişme kuralı
ile tutmanız gerekir.
Koşulların birleştirilmesinde
temel mantık bu şekildedir. Koşul sayısı arttıkça CROSS kullanımı zorlaşır. Bu
sebeple CROSS içeren koşullarınızın formüllerini > veya < işareti
kullanacak şekilde değiştirmenizde fayda vardır.
Merhabalar hocam kolay gelsin. PMAX ve sott koşulunu birleştirdim ikiside cross var ama >< işaretleri nereye koysam daha fayda sağları teşekkür ederim şimdiden.
YanıtlaSilperiod:=OPT1;
coeff:=OPT2;
MovPeriod:=OPT3;
K:=MOV((H+L)/2,MovPeriod,VAR);
OFFSET:=coeff*ATRe(period);
STR:=K+OFFSET;
STS:=K-OFFSET;
FUB:=IF(STRPREV,STR,PREV);
FLB:=IF(STS>PREV OR REF(K,-1)FUB,FLB,IF(PREV=REF(FLB,-1) AND K>FLB,FLB,IF(PREV=REF(FLB,-1) AND K<FLB,FUB,FUB))));
Cross(K,PMax) AND Cross(STOSK(opt1,opt2,33,VAR)+1000,OTT(STOSK(opt1,opt2,33,VAR)+1000,2,opt3))