inputs:
RSI_Uzunluk(14), // RSI'nın hesaplanacağı çubuk sayısı
Zaman_Cubugu_Uzunlugu(5), // 5 dakikalık zaman çubuğu
Dusus_Sayisi_Gereksinimi(3); // Düşüş sayısı gereksinimi
vars:
RSI_5dk(0), // 5 dakikalık RSI değeri
Dusus_Sayisi(0), // Son 3 veya 5 çubukta RSI'nin düşme sayısı
Satis_Sinyali(false), // Satış sinyali durumu
Alis_Sinyali(false); // Alış sinyali durumu
// 5 dakikalık RSI değerini hesapla
RSI_5dk = RSI(Close, RSI_Uzunluk);
// Son 3 veya 5 çubukta RSI'nin düşme sayısını kontrol et
for i = 1 to Dusus_Sayisi_Gereksinimi begin
if RSI_5dk < RSI_5dk[i] then
Dusus_Sayisi = Dusus_Sayisi + 1;
end;
// Eğer son 3 veya 5 çubukta RSI değeri belirli bir sayıda düşmüşse
if Dusus_Sayisi >= Dusus_Sayisi_Gereksinimi then
Satis_Sinyali = true // Satış sinyali üret
else
Alis_Sinyali = true; // Aksi halde alış sinyali üret
// 5 dakikalık zaman dilimindeyken saat 11 ile 12 arasında saatlik RSI değerini kontrol et
if (Time >= 1100 and Time < 1200 and BarInterval = Zaman_Cubugu_Uzunlugu) then begin
// Saatlik RSI değeri son 3 veya 5 çubukta düşmüşse ve 5 dakikalık RSI de düşmüşse
if RSI(Close, RSI_Uzunluk * Zaman_Cubugu_Uzunlugu) < RSI(Close, RSI_Uzunluk) and Satis_Sinyali then
Satis_Sinyali = true // Satış sinyali üret
else
Alis_Sinyali = true; // Aksi halde alış sinyali üret
end;
// Alış ve satış sinyallerini kullan
if Alis_Sinyali then
Buy("Alis") next bar at market
else if Satis_Sinyali then
Sell("Satis") next bar at market;