-
denemek isteyene örnek kod.....
PHP Code:
// This source code is subject to the terms of the Mozilla Public License 2.0 at https://mozilla.org/MPL/2.0/
// © carefulCode53358
//@version=5
indicator(".", overlay = true)
ehad = input(true, title='Renklendirme')
/////verisi kullanılacak sistemler...indikatörler.....
length = input.int(5, minval=1)
ema1 = ta.ema(close, length)
ema2 = ta.ema(ema1, length)
ema3 = ta.ema(ema2, length)
out = 3 * (ema1 - ema2) + ema3
plot(out, "TEMA5", color=#2962FF)
length1 = input.int(20, minval=1)
ema11 = ta.ema(close, length1)
ema21 = ta.ema(ema11, length1)
ema31 = ta.ema(ema21, length1)
out1 = 3 * (ema11 - ema21) + ema31
plot(out1, "TEMA20", color=#ce0cf5)
length13 = input.int(50, minval=1)
ema113 = ta.ema(close, length13)
ema213 = ta.ema(ema113, length13)
ema313 = ta.ema(ema213, length13)
out13 = 3 * (ema113 - ema213) + ema313
plot(out13, "TEMA50", color=#f5f10c)
//hesaplanan veriyi zaman döngüsüne aktarma.....
fatiha = out
kadir = out1
velasr = out13
/////tüm zaman döngülerinin tanımı.....
//İnned dîne indâllâhil İslâm...Ali-İmran 19.ayet
bakara = input.timeframe('1', title='Periyot')
aliimran = input.timeframe('3', title='Periyot')
nisa = input.timeframe('5', title='Periyot')
maide = input.timeframe('15', title='Periyot')
enam = input.timeframe('30', title='Periyot')
araf = input.timeframe('45', title='Periyot')
enfal = input.timeframe('60', title='Periyot')
tevbe = input.timeframe('120', title='Periyot')
yunus = input.timeframe('180', title='Periyot')
hud = input.timeframe('240', title='Periyot')
yusuf = input.timeframe('D', title='Periyot')
rad = input.timeframe('W', title='Periyot')
ibrahim = input.timeframe('M', title='Periyot')
hicr = input.timeframe('3M', title='Periyot')
nahl = input.timeframe('12M', title='Periyot')
// Security 1 veriyi zaman döngüsünde hesaplatma...
isra = request.security(syminfo.tickerid, bakara, fatiha)
kehf = request.security(syminfo.tickerid, aliimran, fatiha)
meryem = request.security(syminfo.tickerid, nisa, fatiha)
taha = request.security(syminfo.tickerid, maide, fatiha)
enbiya = request.security(syminfo.tickerid, enam, fatiha)
hac = request.security(syminfo.tickerid, araf, fatiha)
muminun = request.security(syminfo.tickerid, enfal, fatiha)
nur = request.security(syminfo.tickerid, tevbe, fatiha)
furkan = request.security(syminfo.tickerid, yunus, fatiha)
suara = request.security(syminfo.tickerid, hud, fatiha)
neml = request.security(syminfo.tickerid, yusuf, fatiha)
kasas = request.security(syminfo.tickerid, rad, fatiha)
ankebut = request.security(syminfo.tickerid, ibrahim, fatiha)
rum = request.security(syminfo.tickerid, hicr, fatiha)
lokman = request.security(syminfo.tickerid, nahl, fatiha)
//Signal...1veri zaman döngüsü sinyalleri hesapla ve çizdir
//tegabun = (isra )
//plot(tegabun, title='1anlık', style=plot.style_stepline, color=ehad ? isra > close ? color.rgb(255, 82, 82, 100) : color.rgb(0, 230, 119, 100) : color.silver, linewidth=2)
//talak = (isra + kehf + meryem ) / 3
//plot(talak, title='5', style=plot.style_stepline, color=ehad ? isra > close ? color.rgb(255, 82, 82, 100) : color.rgb(0, 230, 119, 100) : color.silver, linewidth=2)
//tahrim = (isra + kehf + meryem + taha ) / 4
//plot(tahrim, title='15', style=plot.style_stepline, color=ehad ? isra > close ? color.rgb(255, 82, 82, 100) : color.rgb(0, 230, 119, 100) : color.silver, linewidth=2)
//mulk = (isra + kehf + meryem + taha + enbiya + hac + muminun ) / 7
//plot(mulk, title='60', style=plot.style_stepline, color=ehad ? isra > close ? color.rgb(255, 82, 82, 100) : color.rgb(0, 230, 119, 100) : color.silver, linewidth=2)
//kalem = (isra + kehf + meryem + taha + enbiya + hac + muminun+nur+furkan+suara+neml ) / 11
//plot(kalem, title='Gün', style=plot.style_stepline, color=ehad ? isra > close ? color.rgb(255, 82, 82, 100) : color.rgb(0, 230, 119, 100) : color.silver, linewidth=2)
//hakka = (isra + kehf + meryem + taha+enbiya+hac+muminun+nur+furkan+suara+neml+kasas ) / 12
//plot(hakka, title='Hafta', style=plot.style_stepline, color=ehad ? isra > close ? color.rgb(255, 82, 82, 100) : color.rgb(0, 230, 119, 100) : color.silver, linewidth=2)
//mearic = (isra + kehf + meryem + taha+enbiya+hac+muminun+nur+furkan+suara+neml+kasas+ankebut ) / 13
//plot(mearic, title='Ay', style=plot.style_stepline, color=ehad ? isra > close ? color.rgb(255, 82, 82, 100) : color.rgb(0, 230, 119, 100) : color.silver, linewidth=2)
//nuh = (isra + kehf + meryem + taha+enbiya+hac+muminun+nur+furkan+suara+neml+kasas+ankebut+rum ) / 14
//plot(nuh, title='ÜçAy', style=plot.style_stepline, color=ehad ? isra > close ? color.rgb(255, 82, 82, 100) : color.rgb(0, 230, 119, 100) : color.silver, linewidth=2)
//cin = (isra + kehf + meryem + taha+enbiya+hac+muminun+nur+furkan+suara+neml+kasas+ankebut+rum +lokman ) / 15
//plot(cin, title='Yıl', style=plot.style_stepline, color=ehad ? isra > close ? color.rgb(255, 82, 82, 100) : color.rgb(0, 230, 119, 100) : color.silver, linewidth=2)
// 2.veriyi zamanda döndürme
secde = request.security(syminfo.tickerid, bakara, kadir)
ahzab = request.security(syminfo.tickerid, aliimran, kadir)
sebe = request.security(syminfo.tickerid, nisa, kadir)
fatir = request.security(syminfo.tickerid, maide, kadir)
yasin = request.security(syminfo.tickerid, enam, kadir)
saffat = request.security(syminfo.tickerid, araf, kadir)
sad = request.security(syminfo.tickerid, enfal, kadir)
zumer = request.security(syminfo.tickerid, tevbe, kadir)
mumin = request.security(syminfo.tickerid, yunus, kadir)
fussilet = request.security(syminfo.tickerid, hud, kadir)
sura = request.security(syminfo.tickerid, yusuf, kadir)
zuhruf = request.security(syminfo.tickerid, rad, kadir)
duhan = request.security(syminfo.tickerid, ibrahim, kadir)
casiye = request.security(syminfo.tickerid, hicr, kadir)
ahkaf = request.security(syminfo.tickerid, nahl, kadir)
///2veri
//muzzemmil = (secde )
//plot(muzzemmil, title='2-Anlık', style=plot.style_stepline, color=ehad ? secde > close ? color.rgb(255, 82, 82, 100) : color.rgb(0, 230, 119, 100) : color.silver, linewidth=2)
//muddesir = (secde+ahzab+sebe ) / 3
//plot(muddesir, title='2.Veri-5DakikayaDöngü', style=plot.style_stepline, color=ehad ? isra > close ? color.rgb(255, 82, 82, 100) : color.rgb(0, 230, 119, 100) : color.silver, linewidth=2)
//kiyamet = (secde+ahzab+sebe+fatir ) / 4
//plot(kiyamet, title='2.Veri-15DakikayaDöngü', style=plot.style_stepline, color=ehad ? isra > close ? color.rgb(255, 82, 82, 100) : color.rgb(0, 230, 119, 100) : color.silver, linewidth=2)
//insan = (secde+ahzab+sebe+fatir+yasin+saffat+sad ) / 7
//plot(insan, title='2-Saatlik', style=plot.style_stepline, color=ehad ? isra > close ? color.rgb(255, 82, 82, 100) : color.rgb(0, 230, 119, 100) : color.silver, linewidth=2)
//murselat = (secde+ahzab+sebe+fatir+yasin+saffat+sad+zumer+mumin+fussilet+sura ) / 11
//plot(murselat, title='2-Günlük', style=plot.style_stepline, color=ehad ? isra > close ? color.rgb(255, 82, 82, 100) : color.rgb(0, 230, 119, 100) : color.silver, linewidth=2)
//nebe = (secde+ahzab+sebe+fatir+yasin+saffat+sad+zumer+mumin+fussilet+sura+zuhruf ) / 12
//plot(nebe, title='2-Haftalık', style=plot.style_stepline, color=ehad ? isra > close ? color.rgb(255, 82, 82, 100) : color.rgb(0, 230, 119, 100) : color.silver, linewidth=2)
//naziat = (secde+ahzab+sebe+fatir+yasin+saffat+sad+zumer+mumin+fussilet+sura+zuhruf+duhan ) / 13
//plot(naziat, title='2-Aylık', style=plot.style_stepline, color=ehad ? isra > close ? color.rgb(255, 82, 82, 100) : color.rgb(0, 230, 119, 100) : color.silver, linewidth=2)
//abese = (secde+ahzab+sebe+fatir+yasin+saffat+sad+zumer+mumin+fussilet+sura+zuhruf+duhan+casiye ) / 14
//plot(abese, title='2.Veri-ÜçAyaDöngü', style=plot.style_stepline, color=ehad ? isra > close ? color.rgb(255, 82, 82, 100) : color.rgb(0, 230, 119, 100) : color.silver, linewidth=2)
//tekvir = (secde+ahzab+sebe+fatir+yasin+saffat+sad+zumer+mumin+fussilet+sura+zuhruf+duhan+casiye+ahkaf ) / 15
//plot(tekvir, title='2.Veri-YılaDöngü', style=plot.style_stepline, color=ehad ? isra > close ? color.rgb(255, 82, 82, 100) : color.rgb(0, 230, 119, 100) : color.silver, linewidth=2)
// Security3.veriyi zamanda döndürme...
fetih = request.security(syminfo.tickerid, bakara, velasr)
hucurat = request.security(syminfo.tickerid, aliimran, velasr)
kaf = request.security(syminfo.tickerid, nisa, velasr)
zariyat = request.security(syminfo.tickerid, maide, velasr)
tur = request.security(syminfo.tickerid, enam, velasr)
necm = request.security(syminfo.tickerid, araf, velasr)
kamer = request.security(syminfo.tickerid, enfal, velasr)
vakia = request.security(syminfo.tickerid, tevbe, velasr)
hadid = request.security(syminfo.tickerid, yunus, velasr)
mucadele = request.security(syminfo.tickerid, hud, velasr)
hasr = request.security(syminfo.tickerid, yusuf, velasr)
mumtehine = request.security(syminfo.tickerid, rad, velasr)
saf = request.security(syminfo.tickerid, ibrahim, velasr)
cuma = request.security(syminfo.tickerid, hicr, velasr)
munafik = request.security(syminfo.tickerid, nahl, velasr)
/////3.veri...bilgiler...
//infitar = (fetih )
//plot(infitar, title='3-Anlık', style=plot.style_stepline, color=ehad ? fetih > close ? color.rgb(255, 82, 82, 100) : color.rgb(0, 230, 119, 100) : color.silver, linewidth=2)
//mutaffifin = (fetih+hucurat+kaf ) /3
//plot(mutaffifin, title='3.Veri-5DakikayaDöngü', style=plot.style_stepline, color=ehad ? fetih > close ? color.rgb(255, 82, 82, 100) : color.rgb(0, 230, 119, 100) : color.silver, linewidth=2)
//insikak = (fetih+hucurat+kaf+zariyat ) /4
//plot(insikak, title='3.Veri-15DakikayaDöngü', style=plot.style_stepline, color=ehad ? fetih > close ? color.rgb(255, 82, 82, 100) : color.rgb(0, 230, 119, 100) : color.silver, linewidth=2)
//buruc = (fetih+hucurat+kaf+zariyat+tur+necm+kamer ) /7
//plot(buruc, title='3-Saatlik', style=plot.style_stepline, color=ehad ? fetih > close ? color.rgb(255, 82, 82, 100) : color.rgb(0, 230, 119, 100) : color.silver, linewidth=2)
//tarik = (fetih+hucurat+kaf+zariyat+tur+necm+kamer+vakia+hadid+mucadele+hasr ) /11
//plot(tarik, title='3-Günlük', style=plot.style_stepline, color=ehad ? fetih > close ? color.rgb(255, 82, 82, 100) : color.rgb(0, 230, 119, 100) : color.silver, linewidth=2)
//ala = (fetih+hucurat+kaf+zariyat+tur+necm+kamer+vakia+hadid+mucadele+hasr+mumtehine ) /12
//plot(ala, title='3-Haftalık', style=plot.style_stepline, color=ehad ? fetih > close ? color.rgb(255, 82, 82, 100) : color.rgb(0, 230, 119, 100) : color.silver, linewidth=2)
//gasiye = (fetih+hucurat+kaf+zariyat+tur+necm+kamer+vakia+hadid+mucadele+hasr+mumtehine+saf ) /13
//plot(gasiye, title='3-Aylık', style=plot.style_stepline, color=ehad ? fetih > close ? color.rgb(255, 82, 82, 100) : color.rgb(0, 230, 119, 100) : color.silver, linewidth=2)
//fecr = (fetih+hucurat+kaf+zariyat+tur+necm+kamer+vakia+hadid+mucadele+hasr+mumtehine+saf+cuma) /14
//plot(fecr, title='3.Veri-ÜçayaDöngü', style=plot.style_stepline, color=ehad ? fetih > close ? color.rgb(255, 82, 82, 100) : color.rgb(0, 230, 119, 100) : color.silver, linewidth=2)
//beled = (fetih+hucurat+kaf+zariyat+tur+necm+kamer+vakia+hadid+mucadele+hasr+mumtehine+saf+cuma+munafik ) /15
//plot(beled, title='3.Veri-YılaDöngü', style=plot.style_stepline, color=ehad ? fetih > close ? color.rgb(255, 82, 82, 100) : color.rgb(0, 230, 119, 100) : color.silver, linewidth=2)
/////////////////
sems = (isra+secde+fetih ) /3
plot(sems, title='1', style=plot.style_stepline, color=ehad ? sems > close ? color.rgb(255, 82, 82, 100) : color.rgb(0, 230, 119, 100) : color.silver, linewidth=2)
leyl = (kehf+ahzab+hucurat ) /3
//plot(leyl, title='3', style=plot.style_stepline, color=ehad ? leyl > close ? color.rgb(255, 82, 82, 100) : color.rgb(0, 230, 119, 100) : color.silver, linewidth=2)
duha = (meryem+sebe+kaf ) /3
plot(duha, title='5', style=plot.style_stepline, color=ehad ? duha > close ? color.rgb(255, 82, 82, 100) : color.rgb(0, 230, 119, 100) : color.silver, linewidth=2)
insirah = (taha+fatir+zariyat ) /3
plot(insirah, title='15', style=plot.style_stepline, color=ehad ? insirah > close ? color.rgb(255, 82, 82, 100) : color.rgb(0, 230, 119, 100) : color.silver, linewidth=2)
tin = (enbiya+yasin+tur ) /3
//plot(tin, title='30', style=plot.style_stepline, color=ehad ? tin > close ? color.rgb(255, 82, 82, 100) : color.rgb(0, 230, 119, 100) : color.silver, linewidth=2)
alak = (hac+saffat+necm ) /3
//plot(alak, title='45', style=plot.style_stepline, color=ehad ? alak > close ? color.rgb(255, 82, 82, 100) : color.rgb(0, 230, 119, 100) : color.silver, linewidth=2)
beyyine = (muminun+sad+kamer ) /3
plot(beyyine, title='60', style=plot.style_stepline, color=ehad ? beyyine > close ? color.rgb(255, 82, 82, 100) : color.rgb(0, 230, 119, 100) : color.silver, linewidth=2)
zilzal = (nur+zumer+vakia ) /3
//plot(zilzal, title='120', style=plot.style_stepline, color=ehad ? zilzal > close ? color.rgb(255, 82, 82, 100) : color.rgb(0, 230, 119, 100) : color.silver, linewidth=2)
adiyat = (furkan+mumin+hadid ) /3
//plot(adiyat, title='180', style=plot.style_stepline, color=ehad ? adiyat > close ? color.rgb(255, 82, 82, 100) : color.rgb(0, 230, 119, 100) : color.silver, linewidth=2)
karia = (suara+fussilet+mucadele ) /3
//plot(karia, title='240', style=plot.style_stepline, color=ehad ? karia > close ? color.rgb(255, 82, 82, 100) : color.rgb(0, 230, 119, 100) : color.silver, linewidth=2)
tekasur = (neml+sura+hasr ) /3
//plot(tekasur, title='Gün', style=plot.style_stepline, color=ehad ? tekasur > close ? color.rgb(255, 82, 82, 100) : color.rgb(0, 230, 119, 100) : color.silver, linewidth=2)
humeze = (kasas+zuhruf+mumtehine ) /3
//plot(humeze, title='Hafta', style=plot.style_stepline, color=ehad ? humeze > close ? color.rgb(255, 82, 82, 100) : color.rgb(0, 230, 119, 100) : color.silver, linewidth=2)
fil = (ankebut+duhan+saf ) /3
//plot(fil, title='Ay', style=plot.style_stepline, color=ehad ? fil > close ? color.rgb(255, 82, 82, 100) : color.rgb(0, 230, 119, 100) : color.silver, linewidth=2)
//kureys = (rum+casiye+cuma ) /3
//plot(kureys, title='3Ay', style=plot.style_stepline, color=ehad ? kureys > close ? color.rgb(255, 82, 82, 100) : color.rgb(0, 230, 119, 100) : color.silver, linewidth=2)
//maun = (lokman+ahkaf+munafik ) /3
//plot(maun, title='12Ay', style=plot.style_stepline, color=ehad ? maun > close ? color.rgb(255, 82, 82, 100) : color.rgb(0, 230, 119, 100) : color.silver, linewidth=2)
kevser = (sems+leyl+duha ) /3
plot(kevser, title='5Döngü', style=plot.style_stepline, color=ehad ? kevser > close ? color.rgb(255, 82, 82, 100) : color.rgb(0, 230, 119, 100) : color.silver, linewidth=2)
kafirun = (sems+leyl+duha+insirah ) /4
plot(kafirun, title='15Döngü', style=plot.style_stepline, color=ehad ? kafirun > close ? color.rgb(255, 82, 82, 100) : color.rgb(0, 230, 119, 100) : color.silver, linewidth=2)
nasr = (sems+leyl+duha+insirah+tin+alak+beyyine ) /7
plot(nasr, title='60Döngü', style=plot.style_stepline, color=ehad ? nasr > close ? color.rgb(255, 82, 82, 100) : color.rgb(0, 230, 119, 100) : color.silver, linewidth=2)
tebbet = (sems+leyl+duha+insirah+tin+alak+beyyine+zilzal+adiyat+karia+tekasur ) /11
plot(tebbet, title='GünDöngü', style=plot.style_stepline, color=ehad ? tebbet > close ? color.rgb(255, 82, 82, 100) : color.rgb(0, 230, 119, 100) : color.silver, linewidth=2)
//ihlas = (sems+leyl+duha+insirah+tin+alak+beyyine+zilzal+adiyat+karia+tekasur+humeze ) /12
//plot(ihlas, title='HaftaDöngü', style=plot.style_stepline, color=ehad ? ihlas > close ? color.rgb(255, 82, 82, 100) : color.rgb(0, 230, 119, 100) : color.silver, linewidth=2)
//felak = (sems+leyl+duha+insirah+tin+alak+beyyine+zilzal+adiyat+karia+tekasur+humeze+fil ) /13
//plot(felak, title='AyDöngü', style=plot.style_stepline, color=ehad ? felak > close ? color.rgb(255, 82, 82, 100) : color.rgb(0, 230, 119, 100) : color.silver, linewidth=2)
//nas = (sems+leyl+duha+insirah+tin+alak+beyyine+zilzal+adiyat+karia+tekasur+humeze+fil+kureys ) /14
//plot(nas, title='3AyDöngü', style=plot.style_stepline, color=ehad ? nas > close ? color.rgb(255, 82, 82, 100) : color.rgb(0, 230, 119, 100) : color.silver, linewidth=2)
-
zaman kalıbında bolinger örneği...
denemek isteyene örnek kod....
PHP Code:
// This source code is subject to the terms of the Mozilla Public License 2.0 at https://mozilla.org/MPL/2.0/
// © carefulCode53358
//@version=5
indicator(".", overlay = true)
ehad = input(true, title='Renklendirme')
/////verisi kullanılacak sistemler...indikatörler.....
length = input.int(20, minval=1)
src = input(close, title="Source")
mult = input.float(2.0, minval=0.001, maxval=50, title="StdDev")
basis = ta.sma(src, length)
dev = mult * ta.stdev(src, length)
upper = basis + dev
lower = basis - dev
offset = input.int(0, "Offset", minval = -500, maxval = 500)
plot(basis, "Basis", color=#FF6D00, offset = offset)
p1 = plot(upper, "Upper", color=#2962FF, offset = offset)
p2 = plot(lower, "Lower", color=#2962FF, offset = offset)
//fill(p1, p2, title = "Background", color=color.rgb(33, 150, 243, 95))
//hesaplanan veriyi zaman döngüsüne aktarma.....
fatiha = upper
kadir = basis
velasr = lower
/////tüm zaman döngülerinin tanımı.....
//İnned dîne indâllâhil İslâm...Ali-İmran 19.ayet
bakara = input.timeframe('1', title='Periyot')
aliimran = input.timeframe('3', title='Periyot')
nisa = input.timeframe('5', title='Periyot')
maide = input.timeframe('15', title='Periyot')
enam = input.timeframe('30', title='Periyot')
araf = input.timeframe('45', title='Periyot')
enfal = input.timeframe('60', title='Periyot')
tevbe = input.timeframe('120', title='Periyot')
yunus = input.timeframe('180', title='Periyot')
hud = input.timeframe('240', title='Periyot')
yusuf = input.timeframe('D', title='Periyot')
rad = input.timeframe('W', title='Periyot')
ibrahim = input.timeframe('M', title='Periyot')
hicr = input.timeframe('3M', title='Periyot')
nahl = input.timeframe('12M', title='Periyot')
// Security 1 veriyi zaman döngüsünde hesaplatma...
isra = request.security(syminfo.tickerid, bakara, fatiha)
kehf = request.security(syminfo.tickerid, aliimran, fatiha)
meryem = request.security(syminfo.tickerid, nisa, fatiha)
taha = request.security(syminfo.tickerid, maide, fatiha)
enbiya = request.security(syminfo.tickerid, enam, fatiha)
hac = request.security(syminfo.tickerid, araf, fatiha)
muminun = request.security(syminfo.tickerid, enfal, fatiha)
nur = request.security(syminfo.tickerid, tevbe, fatiha)
furkan = request.security(syminfo.tickerid, yunus, fatiha)
suara = request.security(syminfo.tickerid, hud, fatiha)
neml = request.security(syminfo.tickerid, yusuf, fatiha)
kasas = request.security(syminfo.tickerid, rad, fatiha)
ankebut = request.security(syminfo.tickerid, ibrahim, fatiha)
rum = request.security(syminfo.tickerid, hicr, fatiha)
lokman = request.security(syminfo.tickerid, nahl, fatiha)
//Signal...1veri zaman döngüsü sinyalleri hesapla ve çizdir
//tegabun = (isra )
//plot(tegabun, title='1anlık', style=plot.style_stepline, color=ehad ? isra > close ? color.rgb(255, 82, 82, 100) : color.rgb(0, 230, 119, 100) : color.silver, linewidth=2)
//talak = (isra + kehf + meryem ) / 3
//plot(talak, title='5', style=plot.style_stepline, color=ehad ? isra > close ? color.rgb(255, 82, 82, 100) : color.rgb(0, 230, 119, 100) : color.silver, linewidth=2)
//tahrim = (isra + kehf + meryem + taha ) / 4
//plot(tahrim, title='15', style=plot.style_stepline, color=ehad ? isra > close ? color.rgb(255, 82, 82, 100) : color.rgb(0, 230, 119, 100) : color.silver, linewidth=2)
//mulk = (isra + kehf + meryem + taha + enbiya + hac + muminun ) / 7
//plot(mulk, title='60', style=plot.style_stepline, color=ehad ? isra > close ? color.rgb(255, 82, 82, 100) : color.rgb(0, 230, 119, 100) : color.silver, linewidth=2)
//kalem = (isra + kehf + meryem + taha + enbiya + hac + muminun+nur+furkan+suara+neml ) / 11
//plot(kalem, title='Gün', style=plot.style_stepline, color=ehad ? isra > close ? color.rgb(255, 82, 82, 100) : color.rgb(0, 230, 119, 100) : color.silver, linewidth=2)
//hakka = (isra + kehf + meryem + taha+enbiya+hac+muminun+nur+furkan+suara+neml+kasas ) / 12
//plot(hakka, title='Hafta', style=plot.style_stepline, color=ehad ? isra > close ? color.rgb(255, 82, 82, 100) : color.rgb(0, 230, 119, 100) : color.silver, linewidth=2)
//mearic = (isra + kehf + meryem + taha+enbiya+hac+muminun+nur+furkan+suara+neml+kasas+ankebut ) / 13
//plot(mearic, title='Ay', style=plot.style_stepline, color=ehad ? isra > close ? color.rgb(255, 82, 82, 100) : color.rgb(0, 230, 119, 100) : color.silver, linewidth=2)
//nuh = (isra + kehf + meryem + taha+enbiya+hac+muminun+nur+furkan+suara+neml+kasas+ankebut+rum ) / 14
//plot(nuh, title='ÜçAy', style=plot.style_stepline, color=ehad ? isra > close ? color.rgb(255, 82, 82, 100) : color.rgb(0, 230, 119, 100) : color.silver, linewidth=2)
//cin = (isra + kehf + meryem + taha+enbiya+hac+muminun+nur+furkan+suara+neml+kasas+ankebut+rum +lokman ) / 15
//plot(cin, title='Yıl', style=plot.style_stepline, color=ehad ? isra > close ? color.rgb(255, 82, 82, 100) : color.rgb(0, 230, 119, 100) : color.silver, linewidth=2)
// 2.veriyi zamanda döndürme
secde = request.security(syminfo.tickerid, bakara, kadir)
ahzab = request.security(syminfo.tickerid, aliimran, kadir)
sebe = request.security(syminfo.tickerid, nisa, kadir)
fatir = request.security(syminfo.tickerid, maide, kadir)
yasin = request.security(syminfo.tickerid, enam, kadir)
saffat = request.security(syminfo.tickerid, araf, kadir)
sad = request.security(syminfo.tickerid, enfal, kadir)
zumer = request.security(syminfo.tickerid, tevbe, kadir)
mumin = request.security(syminfo.tickerid, yunus, kadir)
fussilet = request.security(syminfo.tickerid, hud, kadir)
sura = request.security(syminfo.tickerid, yusuf, kadir)
zuhruf = request.security(syminfo.tickerid, rad, kadir)
duhan = request.security(syminfo.tickerid, ibrahim, kadir)
casiye = request.security(syminfo.tickerid, hicr, kadir)
ahkaf = request.security(syminfo.tickerid, nahl, kadir)
///2veri
//muzzemmil = (secde )
//plot(muzzemmil, title='2-Anlık', style=plot.style_stepline, color=ehad ? secde > close ? color.rgb(255, 82, 82, 100) : color.rgb(0, 230, 119, 100) : color.silver, linewidth=2)
//muddesir = (secde+ahzab+sebe ) / 3
//plot(muddesir, title='2.Veri-5DakikayaDöngü', style=plot.style_stepline, color=ehad ? isra > close ? color.rgb(255, 82, 82, 100) : color.rgb(0, 230, 119, 100) : color.silver, linewidth=2)
//kiyamet = (secde+ahzab+sebe+fatir ) / 4
//plot(kiyamet, title='2.Veri-15DakikayaDöngü', style=plot.style_stepline, color=ehad ? isra > close ? color.rgb(255, 82, 82, 100) : color.rgb(0, 230, 119, 100) : color.silver, linewidth=2)
//insan = (secde+ahzab+sebe+fatir+yasin+saffat+sad ) / 7
//plot(insan, title='2-Saatlik', style=plot.style_stepline, color=ehad ? isra > close ? color.rgb(255, 82, 82, 100) : color.rgb(0, 230, 119, 100) : color.silver, linewidth=2)
//murselat = (secde+ahzab+sebe+fatir+yasin+saffat+sad+zumer+mumin+fussilet+sura ) / 11
//plot(murselat, title='2-Günlük', style=plot.style_stepline, color=ehad ? isra > close ? color.rgb(255, 82, 82, 100) : color.rgb(0, 230, 119, 100) : color.silver, linewidth=2)
//nebe = (secde+ahzab+sebe+fatir+yasin+saffat+sad+zumer+mumin+fussilet+sura+zuhruf ) / 12
//plot(nebe, title='2-Haftalık', style=plot.style_stepline, color=ehad ? isra > close ? color.rgb(255, 82, 82, 100) : color.rgb(0, 230, 119, 100) : color.silver, linewidth=2)
//naziat = (secde+ahzab+sebe+fatir+yasin+saffat+sad+zumer+mumin+fussilet+sura+zuhruf+duhan ) / 13
//plot(naziat, title='2-Aylık', style=plot.style_stepline, color=ehad ? isra > close ? color.rgb(255, 82, 82, 100) : color.rgb(0, 230, 119, 100) : color.silver, linewidth=2)
//abese = (secde+ahzab+sebe+fatir+yasin+saffat+sad+zumer+mumin+fussilet+sura+zuhruf+duhan+casiye ) / 14
//plot(abese, title='2.Veri-ÜçAyaDöngü', style=plot.style_stepline, color=ehad ? isra > close ? color.rgb(255, 82, 82, 100) : color.rgb(0, 230, 119, 100) : color.silver, linewidth=2)
//tekvir = (secde+ahzab+sebe+fatir+yasin+saffat+sad+zumer+mumin+fussilet+sura+zuhruf+duhan+casiye+ahkaf ) / 15
//plot(tekvir, title='2.Veri-YılaDöngü', style=plot.style_stepline, color=ehad ? isra > close ? color.rgb(255, 82, 82, 100) : color.rgb(0, 230, 119, 100) : color.silver, linewidth=2)
// Security3.veriyi zamanda döndürme...
fetih = request.security(syminfo.tickerid, bakara, velasr)
hucurat = request.security(syminfo.tickerid, aliimran, velasr)
kaf = request.security(syminfo.tickerid, nisa, velasr)
zariyat = request.security(syminfo.tickerid, maide, velasr)
tur = request.security(syminfo.tickerid, enam, velasr)
necm = request.security(syminfo.tickerid, araf, velasr)
kamer = request.security(syminfo.tickerid, enfal, velasr)
vakia = request.security(syminfo.tickerid, tevbe, velasr)
hadid = request.security(syminfo.tickerid, yunus, velasr)
mucadele = request.security(syminfo.tickerid, hud, velasr)
hasr = request.security(syminfo.tickerid, yusuf, velasr)
mumtehine = request.security(syminfo.tickerid, rad, velasr)
saf = request.security(syminfo.tickerid, ibrahim, velasr)
cuma = request.security(syminfo.tickerid, hicr, velasr)
munafik = request.security(syminfo.tickerid, nahl, velasr)
/////3.veri...bilgiler...
//infitar = (fetih )
//plot(infitar, title='3-Anlık', style=plot.style_stepline, color=ehad ? fetih > close ? color.rgb(255, 82, 82, 100) : color.rgb(0, 230, 119, 100) : color.silver, linewidth=2)
//mutaffifin = (fetih+hucurat+kaf ) /3
//plot(mutaffifin, title='3.Veri-5DakikayaDöngü', style=plot.style_stepline, color=ehad ? fetih > close ? color.rgb(255, 82, 82, 100) : color.rgb(0, 230, 119, 100) : color.silver, linewidth=2)
//insikak = (fetih+hucurat+kaf+zariyat ) /4
//plot(insikak, title='3.Veri-15DakikayaDöngü', style=plot.style_stepline, color=ehad ? fetih > close ? color.rgb(255, 82, 82, 100) : color.rgb(0, 230, 119, 100) : color.silver, linewidth=2)
//buruc = (fetih+hucurat+kaf+zariyat+tur+necm+kamer ) /7
//plot(buruc, title='3-Saatlik', style=plot.style_stepline, color=ehad ? fetih > close ? color.rgb(255, 82, 82, 100) : color.rgb(0, 230, 119, 100) : color.silver, linewidth=2)
//tarik = (fetih+hucurat+kaf+zariyat+tur+necm+kamer+vakia+hadid+mucadele+hasr ) /11
//plot(tarik, title='3-Günlük', style=plot.style_stepline, color=ehad ? fetih > close ? color.rgb(255, 82, 82, 100) : color.rgb(0, 230, 119, 100) : color.silver, linewidth=2)
//ala = (fetih+hucurat+kaf+zariyat+tur+necm+kamer+vakia+hadid+mucadele+hasr+mumtehine ) /12
//plot(ala, title='3-Haftalık', style=plot.style_stepline, color=ehad ? fetih > close ? color.rgb(255, 82, 82, 100) : color.rgb(0, 230, 119, 100) : color.silver, linewidth=2)
//gasiye = (fetih+hucurat+kaf+zariyat+tur+necm+kamer+vakia+hadid+mucadele+hasr+mumtehine+saf ) /13
//plot(gasiye, title='3-Aylık', style=plot.style_stepline, color=ehad ? fetih > close ? color.rgb(255, 82, 82, 100) : color.rgb(0, 230, 119, 100) : color.silver, linewidth=2)
//fecr = (fetih+hucurat+kaf+zariyat+tur+necm+kamer+vakia+hadid+mucadele+hasr+mumtehine+saf+cuma) /14
//plot(fecr, title='3.Veri-ÜçayaDöngü', style=plot.style_stepline, color=ehad ? fetih > close ? color.rgb(255, 82, 82, 100) : color.rgb(0, 230, 119, 100) : color.silver, linewidth=2)
//beled = (fetih+hucurat+kaf+zariyat+tur+necm+kamer+vakia+hadid+mucadele+hasr+mumtehine+saf+cuma+munafik ) /15
//plot(beled, title='3.Veri-YılaDöngü', style=plot.style_stepline, color=ehad ? fetih > close ? color.rgb(255, 82, 82, 100) : color.rgb(0, 230, 119, 100) : color.silver, linewidth=2)
/////////////////
sems = (isra+secde+fetih ) /3
plot(sems, title='1', style=plot.style_stepline, color=ehad ? sems > close ? color.rgb(255, 82, 82, 100) : color.rgb(0, 230, 119, 100) : color.silver, linewidth=2)
leyl = (kehf+ahzab+hucurat ) /3
//plot(leyl, title='3', style=plot.style_stepline, color=ehad ? leyl > close ? color.rgb(255, 82, 82, 100) : color.rgb(0, 230, 119, 100) : color.silver, linewidth=2)
duha = (meryem+sebe+kaf ) /3
plot(duha, title='5', style=plot.style_stepline, color=ehad ? duha > close ? color.rgb(255, 82, 82, 100) : color.rgb(0, 230, 119, 100) : color.silver, linewidth=2)
insirah = (taha+fatir+zariyat ) /3
plot(insirah, title='15', style=plot.style_stepline, color=ehad ? insirah > close ? color.rgb(255, 82, 82, 100) : color.rgb(0, 230, 119, 100) : color.silver, linewidth=2)
tin = (enbiya+yasin+tur ) /3
//plot(tin, title='30', style=plot.style_stepline, color=ehad ? tin > close ? color.rgb(255, 82, 82, 100) : color.rgb(0, 230, 119, 100) : color.silver, linewidth=2)
alak = (hac+saffat+necm ) /3
//plot(alak, title='45', style=plot.style_stepline, color=ehad ? alak > close ? color.rgb(255, 82, 82, 100) : color.rgb(0, 230, 119, 100) : color.silver, linewidth=2)
beyyine = (muminun+sad+kamer ) /3
plot(beyyine, title='60', style=plot.style_stepline, color=ehad ? beyyine > close ? color.rgb(255, 82, 82, 100) : color.rgb(0, 230, 119, 100) : color.silver, linewidth=2)
zilzal = (nur+zumer+vakia ) /3
//plot(zilzal, title='120', style=plot.style_stepline, color=ehad ? zilzal > close ? color.rgb(255, 82, 82, 100) : color.rgb(0, 230, 119, 100) : color.silver, linewidth=2)
adiyat = (furkan+mumin+hadid ) /3
//plot(adiyat, title='180', style=plot.style_stepline, color=ehad ? adiyat > close ? color.rgb(255, 82, 82, 100) : color.rgb(0, 230, 119, 100) : color.silver, linewidth=2)
karia = (suara+fussilet+mucadele ) /3
//plot(karia, title='240', style=plot.style_stepline, color=ehad ? karia > close ? color.rgb(255, 82, 82, 100) : color.rgb(0, 230, 119, 100) : color.silver, linewidth=2)
tekasur = (neml+sura+hasr ) /3
//plot(tekasur, title='Gün', style=plot.style_stepline, color=ehad ? tekasur > close ? color.rgb(255, 82, 82, 100) : color.rgb(0, 230, 119, 100) : color.silver, linewidth=2)
humeze = (kasas+zuhruf+mumtehine ) /3
//plot(humeze, title='Hafta', style=plot.style_stepline, color=ehad ? humeze > close ? color.rgb(255, 82, 82, 100) : color.rgb(0, 230, 119, 100) : color.silver, linewidth=2)
fil = (ankebut+duhan+saf ) /3
//plot(fil, title='Ay', style=plot.style_stepline, color=ehad ? fil > close ? color.rgb(255, 82, 82, 100) : color.rgb(0, 230, 119, 100) : color.silver, linewidth=2)
//kureys = (rum+casiye+cuma ) /3
//plot(kureys, title='3Ay', style=plot.style_stepline, color=ehad ? kureys > close ? color.rgb(255, 82, 82, 100) : color.rgb(0, 230, 119, 100) : color.silver, linewidth=2)
//maun = (lokman+ahkaf+munafik ) /3
//plot(maun, title='12Ay', style=plot.style_stepline, color=ehad ? maun > close ? color.rgb(255, 82, 82, 100) : color.rgb(0, 230, 119, 100) : color.silver, linewidth=2)
kevser = (sems+leyl+duha ) /3
plot(kevser, title='5Döngü', style=plot.style_stepline, color=ehad ? kevser > close ? color.rgb(255, 82, 82, 100) : color.rgb(0, 230, 119, 100) : color.silver, linewidth=2)
kafirun = (sems+leyl+duha+insirah ) /4
plot(kafirun, title='15Döngü', style=plot.style_stepline, color=ehad ? kafirun > close ? color.rgb(255, 82, 82, 100) : color.rgb(0, 230, 119, 100) : color.silver, linewidth=2)
nasr = (sems+leyl+duha+insirah+tin+alak+beyyine ) /7
plot(nasr, title='60Döngü', style=plot.style_stepline, color=ehad ? nasr > close ? color.rgb(255, 82, 82, 100) : color.rgb(0, 230, 119, 100) : color.silver, linewidth=2)
tebbet = (sems+leyl+duha+insirah+tin+alak+beyyine+zilzal+adiyat+karia+tekasur ) /11
plot(tebbet, title='GünDöngü', style=plot.style_stepline, color=ehad ? tebbet > close ? color.rgb(255, 82, 82, 100) : color.rgb(0, 230, 119, 100) : color.silver, linewidth=2)
//ihlas = (sems+leyl+duha+insirah+tin+alak+beyyine+zilzal+adiyat+karia+tekasur+humeze ) /12
//plot(ihlas, title='HaftaDöngü', style=plot.style_stepline, color=ehad ? ihlas > close ? color.rgb(255, 82, 82, 100) : color.rgb(0, 230, 119, 100) : color.silver, linewidth=2)
//felak = (sems+leyl+duha+insirah+tin+alak+beyyine+zilzal+adiyat+karia+tekasur+humeze+fil ) /13
//plot(felak, title='AyDöngü', style=plot.style_stepline, color=ehad ? felak > close ? color.rgb(255, 82, 82, 100) : color.rgb(0, 230, 119, 100) : color.silver, linewidth=2)
//nas = (sems+leyl+duha+insirah+tin+alak+beyyine+zilzal+adiyat+karia+tekasur+humeze+fil+kureys ) /14
//plot(nas, title='3AyDöngü', style=plot.style_stepline, color=ehad ? nas > close ? color.rgb(255, 82, 82, 100) : color.rgb(0, 230, 119, 100) : color.silver, linewidth=2)
-
zaman kalıbında saatlik bolinger örneği ...
denemek isteyene örnek kod....
PHP Code:
//@version=5
// This source code is subject to the terms of the Mozilla Public License 2.0 at https://mozilla.org/MPL/2.0/
// © carefulCode53358
//////anakalıp
indicator('60', overlay=true,timeframe="60", timeframe_gaps=true,max_boxes_count=500)
fatiha = input.timeframe('60', title='Periyot')
ehad = input(true, title='Renklendirme')
/////anakalıp .....buraya dokunma....
//veri oluştur...
length = input.int(20, minval=1)
src = input(close, title="Source")
mult = input.float(2.0, minval=0.001, maxval=50, title="StdDev")
basis = ta.sma(src, length)
dev = mult * ta.stdev(src, length)
upper = basis + dev
lower = basis - dev
offset = input.int(0, "Offset", minval = -500, maxval = 500)
plot(basis, "Basis", color=#FF6D00, offset = offset)
p1 = plot(upper, "Upper", color=#2962FF, offset = offset)
p2 = plot(lower, "Lower", color=#2962FF, offset = offset)
//fill(p1, p2, title = "Background", color=color.rgb(33, 150, 243, 95))
//veri oluştur...
//veri alma...
bakara = ta.sar(0, 0.01, 1)
aliimran=(upper)
nisa=(basis)
maide=(lower)
// Security
kuran1 = request.security(syminfo.tickerid, fatiha, bakara)
kuran2 = request.security(syminfo.tickerid, fatiha, aliimran)
kuran3 = request.security(syminfo.tickerid, fatiha, nisa)
kuran4 = request.security(syminfo.tickerid, fatiha, maide)
//Plots
//plot(kuran1, title='sar', style=plot.style_circles, color=ehad ? kuran1 > close ? color.red : color.lime : color.silver, linewidth=1)
//plot(kuran2, title='twap', style=plot.style_circles, color=ehad ? kuran2 > close ? color.red : color.lime : color.silver, linewidth=1)
//Signal
vallahualem=(kuran1+kuran2+kuran3+kuran4)/4
plot(vallahualem, title='vallahualem', style=plot.style_stepline, color=ehad ? vallahualem > close ? color.red : color.lime : color.silver, linewidth=1)
//
//END
bcolor = ta.crossunder(close,vallahualem) ? color.red : ta.crossover(close,vallahualem) ? color.green: close>vallahualem ? color.green : close<vallahualem ? color.red: color.rgb(216, 4, 253) // : color.black
barcolor(bcolor)
-
veri ile fiyat fark hesaplaması ....
örnek sar ve macd...
denemek isteyene kodu...
PHP Code:
// This source code is subject to the terms of the Mozilla Public License 2.0 at https://mozilla.org/MPL/2.0/
// © carefulCode53358
//@version=5
indicator(".", overlay = true)
//Trend Sar
psar(start1, inc1, maximum1) =>
out1 = float(na)
isUpTrend1 = bool(na)
maxMin1 = float(na)
acc1 = float(na)
prev1 = float(na)
if bar_index >= 1
prev1 := out1[1]
if bar_index == 1
if close > close[1]
isUpTrend1 := true
maxMin1 := math.max(high, high[1])
prev1 := math.min(low, low[1])
prev1
else
isUpTrend1 := false
maxMin1 := math.min(low, low[1])
prev1 := math.max(high, high[1])
prev1
acc1 := start1
acc1
else
isUpTrend1 := isUpTrend1[1]
acc1 := acc1[1]
maxMin1 := maxMin1[1]
maxMin1
if isUpTrend1
if high > maxMin1
maxMin1 := high
acc1 := math.min(acc1 + inc1, maximum1)
acc1
else
if low < maxMin1
maxMin1 := low
acc1 := math.min(acc1 + inc1, maximum1)
acc1
if na(out1)
out1 := prev1 + acc1 * (maxMin1 - prev1)
out1
if isUpTrend1
if low <= out1
isUpTrend1 := false
out1 := maxMin1
maxMin1 := low
acc1 := start1
acc1
else
if high >= out1
isUpTrend1 := true
out1 := maxMin1
maxMin1 := high
acc1 := start1
acc1
if na(out1)
if isUpTrend1
out1 := math.min(out1, bar_index == 1 ? low[1] : math.min(low[1], low[2]))
out1
else
out1 := math.max(out1, bar_index == 1 ? high[1] : math.max(high[1], high[2]))
out1
[out1, acc1, maxMin1, isUpTrend1]
start1 = input(0)
increment1 = input(0.1)
maximum1 = input(1)
[p1, AF1, EP1, isUpTrend1] = psar(start1, increment1, maximum1)
newEP1 = EP1 != EP1[1]
epNew1 = newEP1 ? EP1 : na
//plot(p1, 'SAR', style=plot.style_stepline, color=isUpTrend1 ? color.rgb(76, 175, 79, 100) : color.rgb(255, 82, 82, 100), linewidth=1)
//plot(EP1, 'ONAY', style=plot.style_circles, color=isUpTrend1 ? color.green : color.red, linewidth=2)
//plot(epNew1, 'Trend-Continue', style=plot.style_line, color=isUpTrend1 ? color.rgb(76, 175, 79, 00) : color.rgb(255, 82, 82, 00), linewidth=1)
asd1=(epNew1-p1 )+close
plot(asd1, title='F+Sar',style=plot.style_cross, color=color.rgb(0, 230, 119, 100), linewidth=2)
asdx1=close-(epNew1-p1 )
plot(asdx1, title='F-Sar',style=plot.style_cross, color=color.rgb(255, 82, 82, 100), linewidth=2)
//Function
inp = input(title='Source', defval=close)
res = input.timeframe(title='Resolution', defval='720')
rep = input(title='Allow Repainting?', defval=false)
//////////////////////////////////////////////////////
src1 = request.security(syminfo.tickerid, res, inp[rep ? 0 : barstate.isrealtime ? 1 : 0])[rep ? 0 : barstate.isrealtime ? 0 : 1]
fastLength1 = input.int(title='FastLength', defval=12, minval=1)
slowLength1 = input.int(title='SlowLength', defval=26, minval=1)
signalLength1 = input.int(title='SignalLength', defval=9, minval=1)
macdLevel1 = input.float(title='MacdLevel', defval=0, minval=0)
fastAlpha1 = 2.0 / (1 + fastLength1)
slowAlpha1 = 2.0 / (1 + slowLength1)
fastEma1 = ta.ema(src1, fastLength1)
slowEma1 = ta.ema(src1, slowLength1)
pMacdEq1 = fastAlpha1 - slowAlpha1 != 0 ? ((nz(fastEma1[1]) * fastAlpha1) - (nz(slowEma1[1]) * slowAlpha1)) / (fastAlpha1 - slowAlpha1) : 0
pMacdEqSig1 = ta.ema(pMacdEq1, signalLength1)
pMacdLevel1 = fastAlpha1 - slowAlpha1 != 0 ? (macdLevel1 - (nz(fastEma1[1]) * (1 - fastAlpha1)) + (nz(slowEma1[1]) * (1 - slowAlpha1))) / (fastAlpha1 - slowAlpha1) : 0
slo1 = src1 - pMacdEq1
sig1 = slo1 > 0 ? slo1 > nz(slo1[1]) ? 2 : 1 : slo1 < 0 ? slo1 < nz(slo1[1]) ? -2 : -1 : 0
rmacdColor = sig1 > 1 ? color.lime : sig1 > 0 ? color.lime : sig1 < -1 ? color.red : sig1 < 0 ? color.red : color.white
//plot(pMacdEq1, title='Trend',style=plot.style_cross, color=rmacdColor, linewidth=2)
//plot(pMacdEqSig1, title='Stop', color=color.rgb(255, 255, 255, 100), linewidth=1)
//plot(pMacdLevel1, title='MacdLevel', color=color.blue, linewidth=2)
xyzx=(pMacdEq1+pMacdEqSig1+pMacdLevel1)/3
//plot(xyzx, title='Avarage', color=color.rgb(241, 225, 8, 100), linewidth=2)
//plot(xyzx, title='Trend1',style=plot.style_cross, color=rmacdColor, linewidth=2)
asd=(pMacdEq1-xyzx )+close
plot(asd, title='F+Macd',style=plot.style_cross, color=color.rgb(0, 230, 119, 100), linewidth=2)
asdx=close-(pMacdEq1-xyzx )
plot(asdx, title='F-Macd',style=plot.style_cross, color=color.rgb(255, 82, 82, 100), linewidth=2)
////////////////////////////////////////////////////////////////////////////
-
ortaya karışık bir sistem...
200lük parabol içinde kanallamalı....
stoplu...
sar...macd...ema....olası destek ve dirençlerini gösteren....
dip ve tepe işareti koyarken....fractal reverse kullanan....
pivotu...tüm verilerin ortalaması ile birleştirip.....
mor trenle tutarsa trendini.....ya tutarsa hedeflemeli.....
görüntüsü sade....
denemek isteyene kodu.....
not strateji testi yapın.....
ayrıca parabol içi sarla...alanlara ayrılmıştır.....
PHP Code:
// This source code is subject to the terms of the Mozilla Public License 2.0 at https://mozilla.org/MPL/2.0/
// © carefulCode53358
//@version=5
indicator('.', max_bars_back=100, overlay=true)
//Function sar
psar(start1, inc1, maximum1) =>
out1 = float(na)
isUpTrend1 = bool(na)
maxMin1 = float(na)
acc1 = float(na)
prev1 = float(na)
if bar_index >= 1
prev1 := out1[1]
if bar_index == 1
if close > close[1]
isUpTrend1 := true
maxMin1 := math.max(high, high[1])
prev1 := math.min(low, low[1])
prev1
else
isUpTrend1 := false
maxMin1 := math.min(low, low[1])
prev1 := math.max(high, high[1])
prev1
acc1 := start1
acc1
else
isUpTrend1 := isUpTrend1[1]
acc1 := acc1[1]
maxMin1 := maxMin1[1]
maxMin1
if isUpTrend1
if high > maxMin1
maxMin1 := high
acc1 := math.min(acc1 + inc1, maximum1)
acc1
else
if low < maxMin1
maxMin1 := low
acc1 := math.min(acc1 + inc1, maximum1)
acc1
if na(out1)
out1 := prev1 + acc1 * (maxMin1 - prev1)
out1
if isUpTrend1
if low <= out1
isUpTrend1 := false
out1 := maxMin1
maxMin1 := low
acc1 := start1
acc1
else
if high >= out1
isUpTrend1 := true
out1 := maxMin1
maxMin1 := high
acc1 := start1
acc1
if na(out1)
if isUpTrend1
out1 := math.min(out1, bar_index == 1 ? low[1] : math.min(low[1], low[2]))
out1
else
out1 := math.max(out1, bar_index == 1 ? high[1] : math.max(high[1], high[2]))
out1
[out1, acc1, maxMin1, isUpTrend1]
start1 = input(0)
increment1 = input(0.1)
maximum1 = input(1)
[p1, AF1, EP1, isUpTrend1] = psar(start1, increment1, maximum1)
newEP1 = EP1 != EP1[1]
epNew1 = newEP1 ? EP1 : na
//plot(p1, 'SAR', style=plot.style_stepline, color=isUpTrend1 ? color.rgb(76, 175, 79, 100) : color.rgb(255, 82, 82, 100), linewidth=1)
//plot(EP1, 'ONAY', style=plot.style_circles, color=isUpTrend1 ? color.green : color.red, linewidth=2)
//plot(epNew1, 'Trend-Continue', style=plot.style_line, color=isUpTrend1 ? color.rgb(76, 175, 79, 00) : color.rgb(255, 82, 82, 00), linewidth=1)
asd1we=(epNew1-p1 )+close
plot(asd1we, title='SarHedef',style=plot.style_cross, color=color.rgb(0, 230, 119, 100), linewidth=2)
asdx1we=close-(epNew1-p1 )
plot(asdx1we, title='SarHedef',style=plot.style_cross, color=color.rgb(255, 82, 82, 100), linewidth=2)
//Time period
inp = input(title='Source', defval=close)
res = input.timeframe(title='Resolution', defval='15')
rep = input(title='Allow Repainting?', defval=false)
//
src1 = request.security(syminfo.tickerid, res, inp[rep ? 0 : barstate.isrealtime ? 1 : 0])[rep ? 0 : barstate.isrealtime ? 0 : 1]
fastLength1 = input.int(title='FastLength', defval=12, minval=1)
slowLength1 = input.int(title='SlowLength', defval=26, minval=1)
signalLength1 = input.int(title='SignalLength', defval=9, minval=1)
macdLevel1 = input.float(title='MacdLevel', defval=0, minval=0)
fastAlpha1 = 2.0 / (1 + fastLength1)
slowAlpha1 = 2.0 / (1 + slowLength1)
fastEma1 = ta.ema(src1, fastLength1)
slowEma1 = ta.ema(src1, slowLength1)
pMacdEq1 = fastAlpha1 - slowAlpha1 != 0 ? ((nz(fastEma1[1]) * fastAlpha1) - (nz(slowEma1[1]) * slowAlpha1)) / (fastAlpha1 - slowAlpha1) : 0
pMacdEqSig1 = ta.ema(pMacdEq1, signalLength1)
pMacdLevel1 = fastAlpha1 - slowAlpha1 != 0 ? (macdLevel1 - (nz(fastEma1[1]) * (1 - fastAlpha1)) + (nz(slowEma1[1]) * (1 - slowAlpha1))) / (fastAlpha1 - slowAlpha1) : 0
slo1 = src1 - pMacdEq1
sig1 = slo1 > 0 ? slo1 > nz(slo1[1]) ? 2 : 1 : slo1 < 0 ? slo1 < nz(slo1[1]) ? -2 : -1 : 0
rmacdColor = sig1 > 1 ? color.lime : sig1 > 0 ? color.lime : sig1 < -1 ? color.red : sig1 < 0 ? color.red : color.white
//plot(pMacdEq1, title='Trend Continue',style=plot.style_cross, color=rmacdColor, linewidth=2)
//plot(pMacdEqSig1, title='MacdEqSignal', color=color.rgb(255, 255, 255, 100), linewidth=1)
//plot(pMacdLevel1, title='MacdLevel', color=color.blue, linewidth=2)
xyz1=(pMacdEq1+pMacdEqSig1+pMacdLevel1)/3
//plot(xyz11, title='Avarage', color=color.rgb(241, 225, 8, 100), linewidth=2)
//plot(pMacdEq1, title='Trend',style=plot.style_cross, color=rmacdColor, linewidth=2)
//plot(pMacdEqSig1, title='Stop', color=color.rgb(255, 255, 255, 100), linewidth=1)
//plot(pMacdLevel1, title='MacdLevel', color=color.blue, linewidth=2)
xyzx=(pMacdEq1+pMacdEqSig1+pMacdLevel1)/3
//plot(xyzx, title='Avarage', color=color.rgb(241, 225, 8, 100), linewidth=2)
//plot(xyzx, title='Trend1',style=plot.style_cross, color=rmacdColor, linewidth=2)
asd=(pMacdEq1-xyzx )+close
plot(asd, title='MacdHedef',style=plot.style_cross, color=color.rgb(0, 230, 119, 100), linewidth=2)
asdx=close-(pMacdEq1-xyzx )
plot(asdx, title='MacdHedef',style=plot.style_cross, color=color.rgb(255, 82, 82, 100), linewidth=2)
////////////////////////////////////////////////////////////////////////////
//
src25 = request.security(syminfo.tickerid, res, inp[rep ? 0 : barstate.isrealtime ? 1 : 0])[rep ? 0 : barstate.isrealtime ? 0 : 1]
fastLimit25 = input.float(title='FastLimit', defval=0.2, minval=0.01, step=0.01)
slowLimit25 = input.float(title='SlowLimit', defval=0.02, minval=0.01, step=0.01)
pi25 = 2 * math.asin(1)
period25 = 0.0
smooth25 = (4 * src25 + 3 * nz(src25[1]) + 2 * nz(src25[2]) + nz(src25[3])) / 10
detrender25 = (0.0962 * smooth25 + 0.5769 * nz(smooth25[2]) - 0.5769 * nz(smooth25[4]) - 0.0962 * nz(smooth25[6])) * (0.075 * nz(period25[1]) + 0.54)
q125 = (0.0962 * detrender25 + 0.5769 * nz(detrender25[2]) - 0.5769 * nz(detrender25[4]) - 0.0962 * nz(detrender25[6])) * (0.075 * nz(period25[1]) + 0.54)
i125 = nz(detrender25[3])
jI25 = (0.0962 * i125 + 0.5769 * nz(i125[2]) - 0.5769 * nz(i125[4]) - 0.0962 * nz(i125[6])) * (0.075 * nz(period25[1]) + 0.54)
jQ25 = (0.0962 * q125 + 0.5769 * nz(q125[2]) - 0.5769 * nz(q125[4]) - 0.0962 * nz(q125[6])) * (0.075 * nz(period25[1]) + 0.54)
i225 = i125 - jQ25
i225 := 0.2 * i225 + 0.8 * nz(i225[1])
q225 = q125 + jI25
q225 := 0.2 * q225 + 0.8 * nz(q225[1])
re25 = i225 * nz(i225[1]) + q225 * nz(q225[1])
re25 := 0.2 * re25 + 0.8 * nz(re25[1])
im25 = i225 * nz(q225[1]) - q225 * nz(i225[1])
im25 := 0.2 * im25 + 0.8 * nz(im25[1])
period25 := im25 != 0 and re25 != 0 ? 2 * pi25 / math.atan(im25 / re25) : 0
period25 := math.min(math.max(period25, 0.67 * nz(period25[1])), 1.5 * nz(period25[1]))
period25 := math.min(math.max(period25, 6), 50)
period25 := 0.2 * period25 + 0.8 * nz(period25[1])
smoothPeriod25 = 0.0
smoothPeriod25 := 0.33 * period25 + 0.67 * nz(smoothPeriod25[1])
phase25 = i125 != 0 ? math.atan(q125 / i125) * 180 / pi25 : 0
deltaPhase25 = nz(phase25[1]) - phase25
deltaPhase25 := deltaPhase25 < 1 ? 1 : deltaPhase25
alpha25 = fastLimit25 / deltaPhase25
alpha25 := alpha25 < slowLimit25 ? slowLimit25 : alpha25
mama25 = 0.0
mama25 := alpha25 * src25 + (1 - alpha25) * nz(mama25[1])
fama25 = 0.0
fama25 := 0.5 * alpha25 * mama25 + (1 - 0.5 * alpha25) * nz(fama25[1])
sig25 = mama25 > fama25 ? 1 : mama25 < fama25 ? -1 : 0
mamaColor25 = sig25 > 0 ? color.green : sig25 < 0 ? color.red : color.black
//plot(mama25, title='MAMA', color=mamaColor25, linewidth=2)
//plot(fama25, title='FAMA', color=color.new(color.yellow, 0), linewidth=2)
xyz2=(mama25+fama25)/2
//
length26 = input.int(title='Length', defval=15, minval=1)
momLength26 = input.int(title='MomentumLength', defval=5, minval=1)
src26 = request.security(syminfo.tickerid, res, inp[rep ? 0 : barstate.isrealtime ? 1 : 0])[rep ? 0 : barstate.isrealtime ? 0 : 1]
num26 = 0.0
coefSum26 = 0.0
for i = 0 to length26 - 1 by 1
coef26 = math.abs(nz(src26[i]) - nz(src26[i + momLength26]))
num26 += coef26 * nz(src26[i])
coefSum26 += coef26
coefSum26
filt26 = coefSum26 != 0 ? num26 / coefSum26 : 0
sig26 = src26 > filt26 ? 1 : src26 < filt26 ? -1 : 0
filtColor26 = sig26 > 0 ? color.green : sig26 < 0 ? color.red : color.black
//plot(filt26, title='Filter', color=filtColor26, linewidth=2)
//
src27 = request.security(syminfo.tickerid, res, inp[rep ? 0 : barstate.isrealtime ? 1 : 0])[rep ? 0 : barstate.isrealtime ? 0 : 1]
wma127 = (7 * src27 + 6 * nz(src27[1]) + 5 * nz(src27[2]) + 4 * nz(src27[3]) + 3 * nz(src27[4]) + 2 * nz(src27[5]) + nz(src27[6])) / 28
wma227 = (7 * wma127 + 6 * nz(wma127[1]) + 5 * nz(wma127[2]) + 4 * nz(wma127[3]) + 3 * nz(wma127[4]) + 2 * nz(wma127[5]) + nz(wma127[6])) / 28
predict27 = 2 * wma127 - wma227
trigger27 = (4 * predict27 + 3 * nz(predict27[1]) + 2 * nz(predict27[2]) + nz(predict27[3])) / 10
sig27 = predict27 > trigger27 ? 1 : predict27 < trigger27 ? -1 : 0
pmaColor27 = sig27 > 0 ? color.green : sig27 < 0 ? color.red : color.black
//plot(predict27, title='Predict', color=pmaColor27, linewidth=2)
//plot(trigger27, title='Trigger', color=color.new(color.yellow, 0), linewidth=1)
xyz3=(filt26+predict27+trigger27)/3
//
src29 = request.security(syminfo.tickerid, res, inp[rep ? 0 : barstate.isrealtime ? 1 : 0])[rep ? 0 : barstate.isrealtime ? 0 : 1]
shortLength29 = input.int(title='ShortLength', defval=5, minval=1)
longLength29 = input.int(title='LongLength', defval=20, minval=1)
shortAvg29 = ta.wma(src29, shortLength29)
shortMa29 = math.sum(math.pow(src29 - shortAvg29, 2), shortLength29) / shortLength29
shortRms29 = shortMa29 > 0 ? math.sqrt(shortMa29) : 0
longAvg29 = ta.wma(src29, longLength29)
longMa29 = math.sum(math.pow(src29 - longAvg29, 2), longLength29) / longLength29
longRms29 = longMa29 > 0 ? math.sqrt(longMa29) : 0
kk29 = longRms29 != 0 ? 0.2 * shortRms29 / longRms29 : 0
vidya29 = 0.0
vidya29 := kk29 * src29 + (1 - kk29) * nz(vidya29[1])
slo29 = src29 - vidya29
sig29 = slo29 > 0 ? slo29 > nz(slo29[1]) ? 2 : 1 : slo29 < 0 ? slo29 < nz(slo29[1]) ? -2 : -1 : 0
vidyaColor29 = sig29 > 1 ? color.green : sig29 > 0 ? color.lime : sig29 < -1 ? color.maroon : sig29 < 0 ? color.red : color.black
//plot(vidya29, title='Vidya', color=vidyaColor29, linewidth=2)
//
src32 = request.security(syminfo.tickerid, res, inp[rep ? 0 : barstate.isrealtime ? 1 : 0])[rep ? 0 : barstate.isrealtime ? 0 : 1]
length32 = input.int(title='Length', defval=3, minval=1)
jsa32 = (src32 + src32[length32]) / 2
sig32 = src32 > jsa32 ? 1 : src32 < jsa32 ? -1 : 0
jsaColor32 = sig32 > 0 ? color.green : sig32 < 0 ? color.red : color.black
//plot(jsa32, color=jsaColor32, linewidth=2)
//
src33 = request.security(syminfo.tickerid, res, inp[rep ? 0 : barstate.isrealtime ? 1 : 0])[rep ? 0 : barstate.isrealtime ? 0 : 1]
fastLength33 = input.int(title = "FastLength", defval = 5, minval = 1)
slowLength33 = input.int(title = "SlowLength", defval = 50, minval = 1)
leavittProjection(src33, length33) =>
result33 = ta.linreg(src33, length33, -1)
fastLp33 = leavittProjection(src33, fastLength33)
slowLp33 = leavittProjection(src33, slowLength33)
slo33 = fastLp33 - slowLp33
sig33 = slo33 > 0 ? slo33 > nz(slo33[1]) ? 2 : 1 : slo33 < 0 ? slo33 < nz(slo33[1]) ? -2 : -1 : 0
lpColor33 = sig33 > 1 ? color.lime : sig33 > 0 ? color.lime : sig33 < -1 ? color.red : sig33 < 0 ? color.red : color.white
//plot(fastLp33, title = 'FastLp', color = lpColor33, linewidth = 2)
//plot(slowLp33, title = 'Stop', style=plot.style_cross, color = rmacdColor, linewidth = 2)
xyz4=(vidya29+jsa32+fastLp33+slowLp33)/4
//
src37 = request.security(syminfo.tickerid, res, inp[rep ? 0 : barstate.isrealtime ? 1 : 0])[rep ? 0 : barstate.isrealtime ? 0 : 1]
fastLength37 = input.int(title='FastLength', defval=5, minval=1)
slowLength37 = input.int(title='SlowLength', defval=20, minval=1)
mult37 = input.int(title='Multiple', defval=1, minval=1)
fastEma37 = ta.ema(src37, fastLength37)
slowEma37 = ta.ema(src37, slowLength37)
sqAvg37 = math.sum(math.pow(slowEma37 - fastEma37, 2), fastLength37) / fastLength37
dev37 = math.sqrt(sqAvg37) * mult37
upperBand37 = slowEma37 + dev37
lowerBand37 = slowEma37 - dev37
middleBand37 = fastEma37
sig37 = src37 > upperBand37 and nz(src37[1]) <= nz(upperBand37[1]) or src37 > lowerBand37 and nz(src37[1]) <= nz(lowerBand37[1]) ? 1 : src37 < lowerBand37 and nz(src37[1]) >= nz(lowerBand37[1]) or src37 < upperBand37 and nz(src37[1]) >= nz(upperBand37[1]) ? -1 : src37 > middleBand37 ? 1 : src37 < middleBand37 ? -1 : 0
mabColor37 = sig37 > 0 ? color.green : sig37 < 0 ? color.red : color.black
//plot(upperBand37, title='MabUp', color=mabColor37, linewidth=2)
//plot(middleBand37, title='MabMid', color=color.new(color.yellow, 0), linewidth=1)
//plot(lowerBand37, title='MabLow', color=mabColor37, linewidth=2)
xyz5=(upperBand37+middleBand37+lowerBand37)/3
//
src44 = request.security(syminfo.tickerid, res, inp[rep ? 0 : barstate.isrealtime ? 1 : 0])[rep ? 0 : barstate.isrealtime ? 0 : 1]
length44 = input.int(title='Length', defval=10, minval=1)
middleBandLength44 = input.int(title='MiddleBandLength', defval=21, minval=1)
bandsDeviation44 = input.float(title='BandsDeviation', defval=2.4, minval=0.1)
lowBandAdjust44 = input.float(title='LowBandAdjust', defval=0.9, minval=0.1)
atrPeriod44 = length44 * 2 - 1
atrBuf44 = ta.atr(atrPeriod44) * bandsDeviation44
ma44 = ta.ema(src44, length44)
upperBand44 = ma44 + ma44 * atrBuf44 / src44
middleBand44 = ta.ema(src44, middleBandLength44)
lowerBand44 = ma44- ma44 * atrBuf44 * lowBandAdjust44 / src44
sig44 = src44 > upperBand44 and nz(src44[1]) <= nz(upperBand44[1]) or src44 > lowerBand44 and nz(src44[1]) <= nz(lowerBand44[1]) or src44 > middleBand44 ? 1 : src44 < lowerBand44 and nz(src44[1]) >= nz(lowerBand44[1]) or src44 < upperBand44 and nz(src44[1]) >= nz(upperBand44[1]) or src44 < middleBand44 ? -1 : 0
svbColor44 = sig44 > 0 ? color.green : sig44 < 0 ? color.red : color.black
//plot(upperBand44, title='SVBUp', color=svbColor44, linewidth=2)
//plot(middleBand44, title='SVBMid', color=color.new(color.black, 0), linewidth=1)
//plot(lowerBand44, title='SVBLow', color=svbColor44, linewidth=2)
xyz6=(upperBand44+middleBand44+lowerBand44)/3
//
float inp55 = input(title = 'Source', defval = close)
string res55 = input.timeframe(title = 'Resolution', defval = '')
bool rep55 = input(title = 'Allow Repainting?', defval = false)
//
float src51 = request.security(syminfo.ticker, res55, inp55[rep55 ? 0 : barstate.isrealtime ? 1 : 0])[rep55 ? 0 : barstate.isrealtime ? 0 : 1]
int fastLength51 = input.int(title = 'FastLength', defval = 5, minval = 1)
int slowLength51 = input.int(title = 'SlowLength', defval = 20, minval = 1)
int sampleLength51 = input.int(title = 'SampleLength', defval = 5, minval = 1)
hannFilter51(float sampleSrc51, int length51) =>
filt51 = 0.0, coef51 = 0.0
for i = 1 to length51
cosine51 = 1 - math.cos(2 * math.pi * i / (length51 + 1))
filt51 := filt51 + (cosine51 * nz(sampleSrc51[i - 1]))
coef51 := coef51 + cosine51
filt51 := coef51 != 0 ? filt51 / coef51 : 0
float sample51 = 0.0
sample51 := bar_index % sampleLength51 == 0 ? src51 : nz(sample51[1])
float fastAvg51 = hannFilter51(sample51, fastLength51)
float slowAvg51 = hannFilter51(sample51, slowLength51)
float slo51 = fastAvg51 - slowAvg51
int sig51 = slo51 > 0 ? slo51 > nz(slo51[1]) ? 2 : 1 : slo51 < 0 ? slo51 < nz(slo51[1]) ? -2 : -1 : 0
color udsmaColor51 = sig51 > 1 ? color.green : sig51 > 0 ? color.lime : sig51 < -1 ? color.maroon : sig51 < 0 ? color.red : color.black
//plot(fastAvg51, title = "FastAverage", color = udsmaColor51, linewidth = 2)
//plot(slowAvg51, title = "SlowAverage", color = chart.fg_color, linewidth = 1)
xyz7=(fastAvg51+slowAvg51)/2
//
float src52 = request.security(syminfo.tickerid, res55, inp55[rep55 ? 0 : barstate.isrealtime ? 1 : 0])[rep55 ? 0 : barstate.isrealtime ? 0 : 1]
fastLength52 = input.int(title = "FastLength", defval = 14, minval = 1)
slowLength52 = input.int(title = "SlowLength", defval = 30, minval = 1)
leavittProjection52(float src52, int length52) =>
float result52 = ta.linreg(src52, length52, -1)
leavittConvolution52(float src52, int length52) =>
int sqrtLength52 = math.floor(nz(math.sqrt(length52)))
float result52 = ta.linreg(leavittProjection52(src52, length52), sqrtLength52, -1)
float fastConv52 = leavittConvolution52(src52, fastLength52)
float slowConv52 = leavittConvolution52(src52, slowLength52)
float slo52 = fastConv52 - slowConv52
int sig52 = slo52 > 0 ? slo52 > nz(slo52[1]) ? 2 : 1 : slo52 < 0 ? slo52 < nz(slo52[1]) ? -2 : -1 : 0
color lcColor52 = sig52 > 1 ? color.green : sig52 > 0 ? color.lime : sig52 < -1 ? color.maroon : sig52 < 0 ? color.red : color.white
//plot(fastConv52, title = 'FastConv', color = lcColor52, linewidth = 2)
//plot(slowConv52, title = 'SlowConv', color = chart.fg_color, linewidth = 1)
xyz8=(fastConv52+slowConv52)/2
//
f_security(_symbol66, _res66, _src66, _repaint66) =>
request.security(_symbol66, _res66, _src66[_repaint66 ? 0 : barstate.isrealtime ? 1 : 0])[_repaint66 ? 0 : barstate.isrealtime ? 0 : 1]
res66 = input.timeframe(title='Resolution', defval='')
rep66 = input(title='Allow Repainting?', defval=false)
//
length53 = input.int(title='Length', defval=20, minval=1)
factor53 = input.int(title='Factor', defval=2, minval=1)
p53 = f_security(syminfo.tickerid, res66, hl2, rep66)
h53 = f_security(syminfo.tickerid, res66, high, rep66)
l53 = f_security(syminfo.tickerid, res66, low, rep66)
t53 = f_security(syminfo.tickerid, res66, ta.tr, rep66)
mpEma53 = ta.ema(p53, length53)
trEma53 = ta.ema(t53, length53)
stdDev53 = ta.stdev(trEma53, length53)
ad53 = p53 > nz(p53[1]) ? mpEma53 + trEma53 / 2 : p53 < nz(p53[1]) ? mpEma53 - trEma53 / 2 : mpEma53
adm53 = ta.ema(ad53, length53)
trndDn53 = 0.0
trndDn53 := ta.crossunder(adm53, mpEma53) ? h53[2] : p53 < nz(p53[1]) ? p53 + stdDev53 * factor53 : nz(trndDn53[1], h53[2])
trndUp53 = 0.0
trndUp53 := ta.crossover(adm53, mpEma53) ? l53[2] : p53 > nz(p53[1]) ? p53 - stdDev53 * factor53 : nz(trndUp53[1], l53[2])
trndr53 = 0.0
trndr53 := adm53 < mpEma53 ? trndDn53 : adm53 > mpEma53 ? trndUp53 : nz(trndr53[1], 0)
sig53 = p53 > trndr53 ? 1 : p53 < trndr53 ? -1 : 0
trndrColor53 = sig53 > 0 ? color.green : sig53 < 0 ? color.red : color.black
//plot(trndr53, color=trndrColor53, linewidth=2)
//plot(mpEma53, color=color.new(color.blue, 0), linewidth=2)
//plot(adm53, color=color.new(color.black, 0), linewidth=1)
xyz9=(trndDn53+mpEma53+adm53)/3
//
c54 = f_security(syminfo.tickerid, res66, close, rep66)
v54 = f_security(syminfo.tickerid, res66, volume, rep66)
length54 = input.int(title='Length', defval=50, minval=2)
mult54 = input.float(title='Mult', defval=10.0, minval=0.01)
alpha54 = 2.0 / (length54 + 1)
mom54 = c54 - nz(c54[1])
pv54 = mom54 > 0 ? v54 : 0
nv54 = mom54 < 0 ? v54 : 0
pvMa54 = ta.ema(pv54, length54)
nvMa54 = ta.ema(nv54, length54)
vs54 = pvMa54 + nvMa54 != 0 ? math.abs(pvMa54 - nvMa54) / (pvMa54 + nvMa54) : 0
rsvaEma54 = 0.0
rsvaEma54 := nz(rsvaEma54[1]) + (alpha54 * (1 + (vs54 * mult54)) * (c54 - nz(rsvaEma54[1])))
slo54 = c54 - rsvaEma54
sig54 = slo54 > 0 ? slo54 > nz(slo54[1]) ? 2 : 1 : slo54 < 0 ? slo54 < nz(slo54[1]) ? -2 : -1 : 0
rsvaemaColor54 = sig54 > 1 ? color.green : sig54 > 0 ? color.lime : sig54 < -1 ? color.maroon : sig54 < 0 ? color.red : color.black
//plot(rsvaEma54, title='RSEma', color=rsvaemaColor54, linewidth=2)
//
length56 = input.int(title='Length', defval=20, minval=1)
h56 = f_security(syminfo.tickerid, res66, high, rep66)
l56 = f_security(syminfo.tickerid, res66, low, rep66)
c56 = f_security(syminfo.tickerid, res66, close, rep66)
hh56 = ta.highest(h56, length56)
ll56 = ta.lowest(l56, length56)
atr56 = ta.atr(length56)
mult56 = math.sqrt(length56)
dSup56 = hh56 - atr56 * mult56
dRes56 = ll56 + atr56 * mult56
dMid56 = (dSup56 + dRes56) / 2
sig56 = c56 > dMid56 ? 1 : c56 < dMid56 ? -1 : 0
dsrColor56 = sig56 > 0 ? color.green : sig56 < 0 ? color.red : color.black
//plot(dSup56, title='Support', color=color.new(color.red, 0), linewidth=2)
//plot(dMid56, title='Middle', color=dsrColor56, linewidth=1)
//plot(dRes56, title='Resistance', color=color.new(color.green, 0), linewidth=2)
xyz10=(rsvaEma54+dSup56+dMid56+dRes56)/4
//
length57 = input.int(title='Length', defval=10, minval=1)
h57 = f_security(syminfo.tickerid, res66, high, rep66)
l57 = f_security(syminfo.tickerid, res66, low, rep66)
c57 = f_security(syminfo.tickerid, res66, close, rep66)
highMa57 = ta.sma(h57, length57)
lowMa57 = ta.sma(l57, length57)
ghla57 = 0.0
ghla57 := c57 > nz(highMa57[1]) ? lowMa57 : c57 < nz(lowMa57[1]) ? highMa57 : nz(ghla57[1])
sig57 = c57 > ghla57 ? 1 : c57 < ghla57 ? -1 : 0
ghlaColor57 = sig57 > 0 ? color.green : sig57 < 0 ? color.red : color.black
//plot(ghla57, title='GHLA', color=ghlaColor57, linewidth=2)
//
inp59 = input(title='Source', defval=close)
h59 = f_security(syminfo.tickerid, res66, high, rep66)
l59 = f_security(syminfo.tickerid, res66, low, rep66)
c59 = f_security(syminfo.tickerid, res66, inp59, rep66)
length59 = input.int(title='Length', defval=14, minval=1)
mHigh59 = ta.linreg(h59, length59, 0) - ta.linreg(h59, length59, 1)
mLow59 = ta.linreg(l59, length59, 0) - ta.linreg(l59, length59, 1)
upperBand59 = h59, lowerBand59 = l59
for i = 0 to length59 - 1
currH59 = nz(h59[i])
prevH59 = nz(h59[i - 1])
currL59 = nz(l59[i])
prevL59 = nz(l59[i - 1])
vHigh59 = currH59 + (nz(mHigh59[i]) * i)
vLow59 = currL59 + (nz(mLow59[i]) * i)
upperBand59 := math.max(vHigh59, upperBand59)
lowerBand59 := math.min(vLow59, lowerBand59)
middleBand59 = (upperBand59 + 59) / 2
slo59 = c59 - middleBand59
sig59 = (c59 > upperBand59 and nz(c59[1]) <= nz(upperBand59[1])) or (c59 > lowerBand59 and nz(c59[1]) <= nz(lowerBand59[1]))
? 1 : (c59 < lowerBand59 and nz(c59[1]) >= nz(lowerBand59[1])) or (c59 < upperBand59 and nz(c59[1]) >= nz(upperBand59[1]))
? -1 : slo59 > 0 ? slo59 > nz(slo59[1]) ? 2 : 1 : slo59 < 0 ? slo59 < nz(slo59[1]) ? -2 : -1 : 0
pbColor59 = sig59 > 1 ? color.green : sig59 > 0 ? color.lime : sig59 < -1 ? color.maroon : sig59 < 0 ? color.red : color.black
//plot(upperBand59, title="UpperBand", linewidth=2, color=pbColor59)
//plot(lowerBand59, title="LowerBand", linewidth=2, color=pbColor59)
xyz11=(ghla57+upperBand59+lowerBand59)/3
//
length61 = input.int(title='Length', defval=25, minval=1)
h61 = f_security(syminfo.tickerid, res66, high, rep66)
l61 = f_security(syminfo.tickerid, res66, low, rep66)
c61 = f_security(syminfo.tickerid, res66, close, rep66)
hh61 = ta.highest(h61, length61)
ll61 = ta.lowest(l61, length61)
range_161 = hh61 - ll61
sup161 = ll61 - 0.25 * range_161
sup261 = ll61 - 0.5 * range_161
res161 = hh61 + 0.25 * range_161
res261 = hh61 + 0.5 * range_161
mid61 = (sup161 + sup261 + res161 + res261) / 4
sig61 = c61 > mid61 ? 1 : c61 < mid61 ? -1 : 0
psrColor61 = sig61 > 0 ? color.green : sig61 < 0 ? color.red : color.black
//plot(sup161, title='Support1', color=color.new(color.red, 0), linewidth=2)
//plot(sup261, title='Support2', color=color.new(color.red, 0), linewidth=2)
//plot(mid61, title='Middle', color=psrColor61, linewidth=1)
//plot(res161, title='Resistance1', color=color.new(color.green, 0), linewidth=2)
//plot(res261, title='Resistance2', color=color.new(color.green, 0), linewidth=2)
xyz12=(sup161+sup261+mid61+res161+res261)/5
//Function Avarage
xyz13=(xyz1+xyz2+xyz3+xyz4+xyz5+xyz6+xyz7+xyz8+xyz9+xyz10+xyz11+xyz12)/12
plot(xyz13, title='tutarsa',style=plot.style_stepline, color=color.rgb(155, 39, 176, 100), linewidth=2)
dfg=(xyz13*1.3)
plot(dfg, title='ya tutarsa',style=plot.style_stepline, color=color.rgb(155, 39, 176, 100), linewidth=2)
//END
//2 Pole Super Smoother Function
SSF(x, t) =>
omega = 2 * math.atan(1) * 4 / t
a = math.exp(-math.sqrt(2) * math.atan(1) * 4 / t)
b = 2 * a * math.cos(math.sqrt(2) / 2 * omega)
c2 = b
c3 = -math.pow(a, 2)
c1 = 1 - c2 - c3
SSF = 0.0
SSF := c1 * x + c2 * nz(SSF[1], x) + c3 * nz(SSF[2], nz(SSF[1], x))
SSF
//Getter Function For Pseudo 2D Matrix
get_val(mat, row, col, rowsize) =>
array.get(mat, int(rowsize * row + col))
//Setter Function For Pseudo 2D Matrix
set_val(mat, row, col, rowsize, val) =>
array.set(mat, int(rowsize * row + col), val)
//LU Decomposition Function
LU(A, B) =>
A_size = array.size(A)
B_size = array.size(B)
var L = array.new_float(A_size)
var U = array.new_float(A_size)
L_temp = 0.0
U_temp = 0.0
for c = 0 to B_size - 1 by 1
set_val(U, 0, c, B_size, get_val(A, 0, c, B_size))
for r = 1 to B_size - 1 by 1
set_val(L, r, 0, B_size, get_val(A, r, 0, B_size) / get_val(U, 0, 0, B_size))
for r = 0 to B_size - 1 by 1
for c = 0 to B_size - 1 by 1
if r == c
set_val(L, r, c, B_size, 1)
if r < c
set_val(L, r, c, B_size, 0)
if r > c
set_val(U, r, c, B_size, 0)
for r = 0 to B_size - 1 by 1
for c = 0 to B_size - 1 by 1
if na(get_val(L, r, c, B_size))
L_temp := get_val(A, r, c, B_size)
for k = 0 to math.max(c - 1, 0) by 1
L_temp -= get_val(U, k, c, B_size) * get_val(L, r, k, B_size)
L_temp
set_val(L, r, c, B_size, L_temp / get_val(U, c, c, B_size))
if na(get_val(U, r, c, B_size))
U_temp := get_val(A, r, c, B_size)
for k = 0 to math.max(r - 1, 0) by 1
U_temp -= get_val(U, k, c, B_size) * get_val(L, r, k, B_size)
U_temp
set_val(U, r, c, B_size, U_temp)
[L, U]
//Lower Triangular Solution Function (Forward Substitution)
LT_solve(L_, B) =>
B_size = array.size(B)
var Y = array.new_float(B_size)
Y_temp = 0.0
array.set(Y, 0, array.get(B, 0) / get_val(L_, 0, 0, B_size))
for r = 1 to B_size - 1 by 1
Y_temp := array.get(B, r)
for k = 0 to math.max(r - 1, 0) by 1
Y_temp -= get_val(L_, r, k, B_size) * array.get(Y, k)
Y_temp
array.set(Y, r, Y_temp / get_val(L_, r, r, B_size))
Y
//Upper Triangular Solution Function (Backward Substitution)
UT_solve(U_, Y_) =>
Y_size = array.size(Y_)
U_rev = array.copy(U_)
Y_rev = array.copy(Y_)
array.reverse(U_rev)
array.reverse(Y_rev)
X_rev = LT_solve(U_rev, Y_rev)
X = array.copy(X_rev)
array.reverse(X)
X
//Regression Function
regression_val(X_, index_, order_, offset_) =>
reg = 0.0
for i = 0 to order_ by 1
reg += array.get(X_, i) * math.pow(index_ - offset_, i)
reg
reg
//Curve Segment Drawing Function
draw_curve(Y, sdev, n, step_, col, ls, lw, draw, conf) =>
var line segment = line.new(x1=time[n * step_], y1=array.get(Y, n) + sdev, x2=time[(n - 1) * step_], y2=array.get(Y, n - 1) + sdev, xloc=xloc.bar_time)
if draw
if conf ? barstate.isconfirmed : 1
line.set_xy1(segment, time[n * step_], array.get(Y, n) + sdev)
line.set_xy2(segment, time[(n - 1) * step_], array.get(Y, n - 1) + sdev)
line.set_color(segment, col)
line.set_width(segment, lw)
line.set_style(segment, ls == 'Solid' ? line.style_solid : ls == 'Dotted' ? line.style_dotted : line.style_dashed)
else
line.delete(segment)
//-----------------------------------------------------------------------------------------------------------------------------------------------------------------
//Inputs
//-----------------------------------------------------------------------------------------------------------------------------------------------------------------
//Source Inputs
src = input(defval=close, title='Input Source Value')
use_filt = input(defval=true, title='Smooth Data Before Curve Fitting')
filt_per = input.int(defval=2, minval=2, title='Data Smoothing Period ═══════════════════')
//Calculation Inputs
per = input.int(defval=200, minval=2, title='Regression Sample Period')
order = input.int(defval=2, minval=1, title='Polynomial Order')
calc_offs = input(defval=0, title='Regression Offset')
ndev = input.float(defval=2.0, minval=0, title='Width Coefficient')
equ_from = input.int(defval=0, minval=0, title='Forecast From _ Bars Ago ═══════════════════')
//Channel Display Inputs
show_curve = input(defval=true, title='Show Fitted Curve')
show_high = input(defval=true, title='Show Fitted Channel High')
show_low = input(defval=true, title='Show Fitted Channel Low')
draw_step1 = input.int(defval=2, minval=1, title='Curve Drawing Step Size')
auto_step = input(defval=true, title='Auto Decide Step Size Instead')
draw_freq = input.string(defval='Close Only', options=['Continuous', 'Close Only'], title='Curve Update Frequency')
poly_col_h = input(defval=color.yellow, title='Channel High Line Color')
poly_lw_h = input.int(defval=1, minval=1, title='Channel High Line Width')
poly_ls_h = input.string(defval='Dashed', options=['Solid', 'Dotted', 'Dashed'], title='Channel High Line Style')
poly_col_m = input(defval=color.rgb(255, 235, 59, 100), title='Channel Middle Line Color')
poly_lw_m = input.int(defval=1, minval=1, title='Channel Middle Line Width')
poly_ls_m = input.string(defval='Dotted', options=['Solid', 'Dotted', 'Dashed'], title='Channel Middle Line Style')
poly_col_l = input(defval=color.yellow, title='Channel Low Line Color')
poly_lw_l = input.int(defval=1, minval=1, title='Channel Low Line Width')
poly_ls_l = input.string(defval='Dashed', options=['Solid', 'Dotted', 'Dashed'], title='Channel Low Line Style ═══════════════════')
//Smooth data and determine source type for calculation.
filt = SSF(src, filt_per)
srcxd = use_filt ? filt : src
//Populate a period sized array with bar values.
var x_vals = array.new_float(per)
for i = 0 to per - 1 by 1
array.set(x_vals, i, i + 1)
//Populate a period sized array with historical source values.
var src_vals = array.new_float(per)
for i = 0 to per - 1 by 1
array.set(src_vals, i, srcxd[per - 1 - i + equ_from])
//Populate an order*2 + 1 sized array with bar power sums.
var xp_sums = array.new_float(order * 2 + 1)
xp_sums_temp = 0.0
for i = 0 to order * 2 by 1
xp_sums_temp := 0
for j = 0 to per - 1 by 1
xp_sums_temp += math.pow(array.get(x_vals, j), i)
xp_sums_temp
array.set(xp_sums, i, xp_sums_temp)
//Populate an order + 1 sized array with (bar power)*(source value) sums.
var xpy_sums = array.new_float(order + 1)
xpy_sums_temp = 0.0
for i = 0 to order by 1
xpy_sums_temp := 0
for j = 0 to per - 1 by 1
xpy_sums_temp += math.pow(array.get(x_vals, j), i) * array.get(src_vals, j)
xpy_sums_temp
array.set(xpy_sums, i, xpy_sums_temp)
//Generate a pseudo square matrix with row and column sizes of order + 1 using bar power sums.
var xp_matrix = array.new_float(int(math.pow(order + 1, 2)))
for r = 0 to order by 1
for c = 0 to order by 1
set_val(xp_matrix, r, c, order + 1, array.get(xp_sums, r + c))
//Factor the power sum matrix into lower and upper triangular matrices with order + 1 rows and columns.
[lower, upper] = LU(xp_matrix, xpy_sums)
//Find lower triangular matrix solutions using (bar power)*(source value) sums.
l_solutions = LT_solve(lower, xpy_sums)
//Find upper triangular matrix solutions using lower matrix solutions. This gives us our regression coefficients.
reg_coefs = UT_solve(upper, l_solutions)
//Define curve drawing step size.
draw_step = auto_step ? math.ceil(per / 10) : draw_step1
//Calculate curve values.
var inter_vals = array.new_float(11)
for i = 0 to 10 by 1
array.set(inter_vals, i, regression_val(reg_coefs, per, order, calc_offs - equ_from + draw_step * i))
//Calculate standard deviation for channel.
Stdev = array.stdev(src_vals) * ndev
//Draw interpolated segments.
draw_curve(inter_vals, 0, 1, draw_step, poly_col_m, poly_ls_m, poly_lw_m, show_curve, draw_freq == 'Close Only')
draw_curve(inter_vals, 0, 2, draw_step, poly_col_m, poly_ls_m, poly_lw_m, show_curve, draw_freq == 'Close Only')
draw_curve(inter_vals, 0, 3, draw_step, poly_col_m, poly_ls_m, poly_lw_m, show_curve, draw_freq == 'Close Only')
draw_curve(inter_vals, 0, 4, draw_step, poly_col_m, poly_ls_m, poly_lw_m, show_curve, draw_freq == 'Close Only')
draw_curve(inter_vals, 0, 5, draw_step, poly_col_m, poly_ls_m, poly_lw_m, show_curve, draw_freq == 'Close Only')
draw_curve(inter_vals, 0, 6, draw_step, poly_col_m, poly_ls_m, poly_lw_m, show_curve, draw_freq == 'Close Only')
draw_curve(inter_vals, 0, 7, draw_step, poly_col_m, poly_ls_m, poly_lw_m, show_curve, draw_freq == 'Close Only')
draw_curve(inter_vals, 0, 8, draw_step, poly_col_m, poly_ls_m, poly_lw_m, show_curve, draw_freq == 'Close Only')
draw_curve(inter_vals, 0, 9, draw_step, poly_col_m, poly_ls_m, poly_lw_m, show_curve, draw_freq == 'Close Only')
draw_curve(inter_vals, 0, 10, draw_step, poly_col_m, poly_ls_m, poly_lw_m, show_curve, draw_freq == 'Close Only')
//Draw channel high segments.
draw_curve(inter_vals, Stdev, 1, draw_step, poly_col_h, poly_ls_h, poly_lw_h, show_high, draw_freq == 'Close Only')
draw_curve(inter_vals, Stdev, 2, draw_step, poly_col_h, poly_ls_h, poly_lw_h, show_high, draw_freq == 'Close Only')
draw_curve(inter_vals, Stdev, 3, draw_step, poly_col_h, poly_ls_h, poly_lw_h, show_high, draw_freq == 'Close Only')
draw_curve(inter_vals, Stdev, 4, draw_step, poly_col_h, poly_ls_h, poly_lw_h, show_high, draw_freq == 'Close Only')
draw_curve(inter_vals, Stdev, 5, draw_step, poly_col_h, poly_ls_h, poly_lw_h, show_high, draw_freq == 'Close Only')
draw_curve(inter_vals, Stdev, 6, draw_step, poly_col_h, poly_ls_h, poly_lw_h, show_high, draw_freq == 'Close Only')
draw_curve(inter_vals, Stdev, 7, draw_step, poly_col_h, poly_ls_h, poly_lw_h, show_high, draw_freq == 'Close Only')
draw_curve(inter_vals, Stdev, 8, draw_step, poly_col_h, poly_ls_h, poly_lw_h, show_high, draw_freq == 'Close Only')
draw_curve(inter_vals, Stdev, 9, draw_step, poly_col_h, poly_ls_h, poly_lw_h, show_high, draw_freq == 'Close Only')
draw_curve(inter_vals, Stdev, 10, draw_step, poly_col_h, poly_ls_h, poly_lw_h, show_high, draw_freq == 'Close Only')
//Draw channel low segments.
draw_curve(inter_vals, -Stdev, 1, draw_step, poly_col_l, poly_ls_l, poly_lw_l, show_low, draw_freq == 'Close Only')
draw_curve(inter_vals, -Stdev, 2, draw_step, poly_col_l, poly_ls_l, poly_lw_l, show_low, draw_freq == 'Close Only')
draw_curve(inter_vals, -Stdev, 3, draw_step, poly_col_l, poly_ls_l, poly_lw_l, show_low, draw_freq == 'Close Only')
draw_curve(inter_vals, -Stdev, 4, draw_step, poly_col_l, poly_ls_l, poly_lw_l, show_low, draw_freq == 'Close Only')
draw_curve(inter_vals, -Stdev, 5, draw_step, poly_col_l, poly_ls_l, poly_lw_l, show_low, draw_freq == 'Close Only')
draw_curve(inter_vals, -Stdev, 6, draw_step, poly_col_l, poly_ls_l, poly_lw_l, show_low, draw_freq == 'Close Only')
draw_curve(inter_vals, -Stdev, 7, draw_step, poly_col_l, poly_ls_l, poly_lw_l, show_low, draw_freq == 'Close Only')
draw_curve(inter_vals, -Stdev, 8, draw_step, poly_col_l, poly_ls_l, poly_lw_l, show_low, draw_freq == 'Close Only')
draw_curve(inter_vals, -Stdev, 9, draw_step, poly_col_l, poly_ls_l, poly_lw_l, show_low, draw_freq == 'Close Only')
draw_curve(inter_vals, -Stdev, 10, draw_step, poly_col_l, poly_ls_l, poly_lw_l, show_low, draw_freq == 'Close Only')
//END
//Reverse
requestSecurity(string _symbol, string _res, bool _repaints) =>
repIndex = _repaints ? 0 : barstate.isrealtime ? 1 : 0
resIndex = _repaints ? 0 : barstate.isrealtime ? 0 : 1
[h, l, t] = request.security(_symbol, _res, [high[repIndex], low[repIndex], time[repIndex]])
[h[resIndex], l[resIndex], t[resIndex]]
var GRP1 = "General Settings"
string resxc = input.timeframe(title = "Resolution", defval = "", group = GRP1)
bool ignoreInsideBars = input.bool(title = "Ignore Inside Bars?", defval = true, group = GRP1)
bool repxc = input.bool(title = "Allow Repainting?", defval = false, group = GRP1)
var string GRP2 = "Short Term Settings"
bool showSTHighs = input.bool(title = "Show Short Term Highs?", defval = true, group = GRP2)
color stHighsColor = input.color(color.red, "Short Term Highs Color", group = GRP2)
bool showSTLows = input.bool(title = "Show Short Term Lows?", defval = true, group = GRP2)
color stLowsColor = input.color(color.yellow, "Short Term Lows Color", group = GRP2)
var string GRP3 = "Mid Term Settings"
bool showMTHighs = input.bool(title = "Show Mid Term Highs?", defval = true, group = GRP3)
color mtHighsColor = input.color(color.red, "Mid Term Highs Color", group = GRP3)
bool showMTLows = input.bool(title = "Show Mid Term Lows?", defval = true, group = GRP3)
color mtLowsColor = input.color(color.aqua, "Mid Term Lows Color", group = GRP3)
var string GRP4 = "Long Term Settings"
bool showLTHighs = input.bool(title = "Show Long Term Highs?", defval = true, group = GRP4)
color ltHighsColor = input.color(color.red, "Long Term Highs Color", group = GRP4)
bool showLTLows = input.bool(title = "Show Long Term Lows?", defval = true, group = GRP4)
color ltLowsColor = input.color(color.white, "Long Term Lows Color", group = GRP4)
[h, l, t] = requestSecurity(syminfo.ticker, res, rep)
type ReversalPoint
int bar_time
float price
var lowShortRevPoints = array.new<ReversalPoint>()
var highShortRevPoints = array.new<ReversalPoint>()
var lowMediumRevPoints = array.new<ReversalPoint>()
var highMediumRevPoints = array.new<ReversalPoint>()
isReversalPoint(bool isLow, float firstSrc, float midSrc, float lastSrc, bool isInsideBar) =>
bool isReversalPoint = false
if not (isInsideBar and ignoreInsideBars)
if isLow
isReversalPoint := lastSrc > midSrc and midSrc < firstSrc
else
isReversalPoint := lastSrc < midSrc and midSrc > firstSrc
isReversalPoint
plotReversalPoint(bool isLow, ReversalPoint revPoint, color revPointColor, string labelSize, bool createLabel) =>
if createLabel
label.new(revPoint.bar_time, revPoint.price, isLow ? '▲' : '▼',
xloc = xloc.bar_time, yloc = isLow ? yloc.belowbar : yloc.abovebar, size = labelSize, color = color(na),
textcolor = revPointColor, style = label.style_text_outline)
getReversalPoints(bool isLow, ReversalPoint[] sourceArray, color plotColor, ReversalPoint newRp, string labelSize,
bool createLabel, bool isInsideBar) =>
ReversalPoint result = na
sourceArray.push(newRp)
plotReversalPoint(isLow, newRp, plotColor, labelSize, createLabel)
int arraySize = sourceArray.size()
float midArrayValue = arraySize >= 2 ? sourceArray.get(arraySize - 2).price : na
float firstArrayValue = arraySize >= 3 ? sourceArray.get(arraySize - 3).price : na
if not na(firstArrayValue) and not na(midArrayValue) and isReversalPoint(isLow, firstArrayValue, midArrayValue, newRp.price, isInsideBar)
result := sourceArray.get(arraySize - 2)
result
bool isInsideBar = h < nz(h[1]) and l > nz(l[1])
ReversalPoint shortTermLow = isReversalPoint(true, nz(l[2]), nz(l[1]), l, isInsideBar) ? ReversalPoint.new(nz(t[1]), nz(l[1])) : na
ReversalPoint midTermLow = na
ReversalPoint longTermLow = na
if not na(shortTermLow)
midTermLow := getReversalPoints(true, lowShortRevPoints, stLowsColor, shortTermLow, size.tiny, showSTLows, isInsideBar)
if not na(midTermLow)
longTermLow := getReversalPoints(true, lowMediumRevPoints, mtLowsColor, midTermLow, size.small, showMTLows, isInsideBar)
if not na(longTermLow)
plotReversalPoint(true, longTermLow, ltLowsColor, size.normal, showLTLows)
ReversalPoint shortTermHigh = isReversalPoint(false, nz(h[2]), nz(h[1]), h, isInsideBar) ? ReversalPoint.new(nz(t[1]), nz(h[1])) : na
ReversalPoint midTermHigh = na
ReversalPoint longTermHigh = na
if not na(shortTermHigh)
midTermHigh := getReversalPoints(false, highShortRevPoints, stHighsColor, shortTermHigh, size.tiny, showSTHighs, isInsideBar)
if not na(midTermHigh)
longTermHigh := getReversalPoints(false, highMediumRevPoints, mtHighsColor, midTermHigh, size.small, showMTHighs, isInsideBar)
if not na(longTermHigh)
plotReversalPoint(false, longTermHigh, ltHighsColor, size.normal, showLTHighs)
//TrailingStop
//Stop
//Top-Bottom
plot = input.bool(true, title="Display past dots")
OverSold = input(0)
OverBought = input(100)
length1 = input.int(2, title = "Length")
tr = input.int(1, title = "Trigger Length")
// Define the function
func(source, int len, int tr) =>
HP = 0.00, a1 = 0.00, b1 = 0.00, c1 = 0.00, c2 = 0.00, c3 = 0.00, ag = 0.00, Sp = 0.00, X = 0.00, Quotient1 = 0.00, Quotient2 = 0.00, w = math.sqrt(.5)
HP := 2500 * (source - 2 * nz(source[1]) + nz(source[2])) + 1.92 * nz(HP[1]) - .9216 * nz(HP[2])
a1 := math.exp(-math.sqrt(2) * math.pi / len)
b1 := 2 * a1 * math.cos(math.sqrt(2) * math.pi / len)
c2 := b1
c3 := -a1 * a1
c1 := 1 - c2 - c3
ag := c1 * (HP + nz(HP[1])) / 2 + c2 * nz(ag[1]) + c3 * nz(ag[2])
Sp := .991 * nz(Sp[1])
if math.abs(ag) > Sp
Sp := math.abs(ag)
Sp
if Sp != 0
X := ag / Sp
X
q1 = X * 60 + 50
out= ta.sma(q1, tr)
[out]
[k] = func(close, length1,tr)
OverboughtCond = k > OverBought
OversoldCond = k < OverSold
//plotshape(plot? OverboughtCond:na, style=shape.cross, location=location.abovebar, color=color.new(color.red, 50), size=size.tiny)
//plotshape(plot? OversoldCond:na, style=shape.cross, location=location.belowbar, color=color.new(color.lime, 50), size=size.tiny)
var label myLabel_Overbought = na
if OverboughtCond
// Delete the previous label if there is one
if not na(myLabel_Overbought)
label.delete(myLabel_Overbought[1])
// Create a new label
myLabel_Overbought := label.new(bar_index, high, 'Tepe',yloc=yloc.abovebar,style=label.style_circle, size=size.normal, color=color.rgb(255, 82, 82, 50), textcolor=color.white)
myLabel_Overbought
var label myLabel_Oversold = na
if OversoldCond
// Delete the previous label if there is one
if not na(myLabel_Oversold)
label.delete(myLabel_Oversold[1])
// Create a new label
myLabel_Oversold := label.new(bar_index, low, 'Dip',yloc=yloc.belowbar,style=label.style_circle, size=size.normal, color=color.rgb(0, 230, 119, 50), textcolor=color.white)
myLabel_Oversold
//
startsa = input.float(0, "Starting value")
incsa = input.float(0.01, "Increment")
maxsa = input.float(1, "Max Value")
widthsa = input.float(9.00, "Zone width")
atrs = ta.atr(100) * widthsa
sarone = ta.sar(startsa, incsa, maxsa)
sarzone = if close > sarone
sarone + atrs
else if close < sarone
sarone - atrs
sartwo = ta.sar(startsa/2, incsa/2, maxsa/2)
p1sa = plot(sarone, "Kanal", color = close > sarone ? #2962ff00 : #e91e6200, style=plot.style_circles)
p3sa = plot(sarzone, "Kanal", color = close > sarone ? #2962ff00 : #e91e6200, style=plot.style_circles)
fill(p1sa, p3sa, color = close > sarone ? color.new(#8e9646, 80) : color.new(#e91e62, 100))
//plot(sartwo, "Second SAR", color = close > sartwo ? color.new(#2962ff, 50) : color.new(#e91e63, 50), style=plot.style_linebr)
////Emas
q1 = ta.ema(ohlc4, 1)
q5 = ta.ema(ohlc4, 5)
q9 = ta.ema(ohlc4, 9)
q13 = ta.ema(ohlc4, 13)
q26 = ta.ema(ohlc4, 26)
q50 = ta.ema(ohlc4, 50)
q100 = ta.ema(ohlc4, 100)
q200 = ta.ema(ohlc4, 200)
qeq=(q1+q5+q9+q13+q26+q50+q100+q200)/8
//plot(qeq,"EMA",color.rgb(255, 235, 59, 100), linewidth=1)
//super avarage farkı
asd1=(close-xyz13 )+close
//plot(asd1, title='Pozitif',style=plot.style_cross, color=color.rgb(0, 230, 119, 100), linewidth=2)
asd2=close-(close-xyz13 )
//plot(asd2, title='Negatif',style=plot.style_cross, color=color.rgb(255, 82, 82, 100), linewidth=2)
//ema farkı
asd11=(close-qeq )+close
//plot(asd11, title='Pozitife',style=plot.style_cross, color=color.rgb(0, 230, 119, 100), linewidth=2)
asd22=close-(close-qeq )
//plot(asd22, title='Negatife',style=plot.style_cross, color=color.rgb(255, 82, 82, 100), linewidth=2)
//macd farkı
asd111=(pMacdEq1-pMacdEqSig1 )+pMacdEq1
//plot(asd111, title='Pozitifemacd',style=plot.style_cross, color=color.rgb(0, 230, 119, 100), linewidth=2)
asd222=pMacdEq1-(pMacdEq1-pMacdEqSig1 )
//plot(asd222, title='Negatifemacd',style=plot.style_cross, color=color.rgb(255, 82, 82, 100), linewidth=2)
//sar farkı
asd1111=(sarone-sartwo )+sarone
//plot(asd1111, title='Pozitifemacdsar',style=plot.style_cross, color=color.rgb(0, 230, 119, 100), linewidth=2)
asd2222=sarone-(sarone-sartwo )
//plot(asd2222, title='Negatifemacdsar',style=plot.style_cross, color=color.rgb(255, 82, 82, 100), linewidth=2)
//toplam farkı
asd11111=(asd1+asd11+asd111+asd1111 )/4
plot(asd11111, title='EmaHedef',style=plot.style_cross, color=color.rgb(0, 230, 119, 100), linewidth=2)
asd22222=(asd2+asd22+asd222+asd2222 )/4
plot(asd22222, title='EmaHedef',style=plot.style_cross, color=color.rgb(255, 82, 82, 100), linewidth=2)
//Function Sar; slow-avarage-fast
lenxc = input(3)
lenxc20 = input(2)
lenxc50 = input(1)
z(close, lenxc) =>
hxc = 0.0
dxc = 0.0
for i = 0 to lenxc - 1 by 1
kxc = (lenxc - i) * lenxc
hxc += kxc
dxc += close[i] * kxc
dxc
dxc / hxc
cxc = z(close, math.floor(math.sqrt(lenxc)))
//
z20(close, lenxc20) =>
hcx20 = 0.0
dxc20 = 0.0
for i = 0 to lenxc20 - 1 by 1
kxc20 = (lenxc20 - i) * lenxc20
hcx20 += kxc20
dxc20 += close[i] * kxc20
dxc20
dxc20 / hcx20
cxc20 = z20(close, math.floor(math.sqrt(lenxc20)))
//
z50(close, lenxc50) =>
hxc50 = 0.0
dxc50 = 0.0
for i = 0 to lenxc50 - 1 by 1
kxc50 = (lenxc50 - i) * lenxc50
hxc50 += kxc50
dxc50 += close[i] * kxc50
dxc50
dxc50 / hxc50
cxc50 = z50(close, math.floor(math.sqrt(lenxc50)))
//
//
startsx = 0.05
incrementsx = 0.75
maximumsx = 0.35
ssx = ta.sar(startsx, incrementsx, maximumsx)
s1sx = z(ssx, lenxc)
pcsx = close < s1sx ? color.rgb(255, 82, 82, 100) : color.rgb(76, 175, 79, 100)
//plot(s1sx, title="SAR Avarage",style=plot.style_cross, color=pcsx, linewidth=1)
startsx20 = 0
incrementsx20 = 0.01
maximumsx20 = 1
ssx20 = ta.sar(startsx20, incrementsx20, maximumsx20)
s1sx20 = z20(ssx20, lenxc20)
pcsx20 = close < s1sx20 ? color.rgb(255, 82, 82, 00) : color.rgb(76, 175, 79, 00)
//plot(s1sx20, title="YavaşDöngü",style=plot.style_cross, color=pcsx20, linewidth=2)
startsx50 = 0
incrementsx50 = 0.1
maximumsx50 = 1
ssx50 = ta.sar(startsx50, incrementsx50, maximumsx50)
s1sx50 = z50(ssx50, lenxc50)
pcsx50 = close < s1sx50 ? color.rgb(255, 82, 82, 00) : color.rgb(76, 175, 79, 00)
//plot(s1sx50, title="HızlıDöngü",style=plot.style_cross, color=pcsx50, linewidth=2)
//Break
start88 = input(0, title="start", group="Parabolic SAR")
increment88 = input(0.001, title="Increment", group="Parabolic SAR")
maximum88 = input(1, title="Maximum", group="Parabolic SAR")
out88 = ta.sar(start88, increment88, maximum88)
sarChange1 = ta.change(out88<high)
var prevSar1 = out88
if(sarChange1)
prevSar1 := out88[1] + ((out88[1]/100)*0.9)
//plot(out88 and sarChange1?na:prevSar1, style=plot.style_linebr, offset = -5, color=out88<high? color.rgb(255, 153, 0, 100) : color.orange, title="Kırılım", linewidth=3)
//END
//Stop Function
mult156 = input.float(3, 'Multiplicative Factor', minval = 0)
slope156 = input.float(20, 'Slope', minval = 0)
width156 = input.float(100, 'Width %', minval = 0, maxval = 100) / 100
//Style
bullCss156 = input.color(color.lime, 'Average Color', inline = 'avg', group = 'Style')
bearCss156 = input.color(color.red, '' , inline = 'avg', group = 'Style')
//Calculation
//-----------------------------------------------------------------------------{
var float upper156 = na
var float lower156 = na
var float avg156 = close
var hold156 = 0.
var os156 = 1.
atr156 = nz(ta.atr(200)) * mult156
avg156 := math.abs(close - avg156) > atr156 ?
math.avg(close, avg156)
: avg156 + os156 * (hold156 / mult156 / slope156)
os156 := math.sign(avg156 - avg156[1])
hold156 := os156 != os156[1] ? atr156 : hold156
upper156 := avg156 + width156 * hold156
lower156 := avg156 - width156 * hold156
css156 = os156 == 1 ? bullCss156 : bearCss156
plot_avg156 = plot(avg156, 'STOP', os156 != os156[1] ? na : css156, style=plot.style_line,linewidth = 3)
//END
-
2061 nolu mesajdakinin...sade hali.....
kanal ve stoplu.....
denemek isteyene örnek kodu.....
not bu arada kodların içinden istediğiniz bölümleri silerek sadeleştirme yapabilirsiniz.....
PHP Code:
// This source code is subject to the terms of the Mozilla Public License 2.0 at https://mozilla.org/MPL/2.0/
// © carefulCode53358
//@version=5
indicator('.', max_bars_back=100, overlay=true)
startsa = input.float(0, "Starting value")
incsa = input.float(0.01, "Increment")
maxsa = input.float(1, "Max Value")
widthsa = input.float(9.00, "Zone width")
atrs = ta.atr(100) * widthsa
sarone = ta.sar(startsa, incsa, maxsa)
sarzone = if close > sarone
sarone + atrs
else if close < sarone
sarone - atrs
sartwo = ta.sar(startsa/2, incsa/2, maxsa/2)
p1sa = plot(sarone, "Kanal", color = close > sarone ? #2962ff00 : #e91e6200, style=plot.style_circles)
p3sa = plot(sarzone, "Kanal", color = close > sarone ? #2962ff00 : #e91e6200, style=plot.style_circles)
fill(p1sa, p3sa, color = close > sarone ? color.new(#8e9646, 80) : color.new(#e91e62, 100))
//plot(sartwo, "Second SAR", color = close > sartwo ? color.new(#2962ff, 50) : color.new(#e91e63, 50), style=plot.style_linebr)
////Emas
q1 = ta.ema(ohlc4, 1)
q5 = ta.ema(ohlc4, 5)
q9 = ta.ema(ohlc4, 9)
q13 = ta.ema(ohlc4, 13)
q26 = ta.ema(ohlc4, 26)
q50 = ta.ema(ohlc4, 50)
q100 = ta.ema(ohlc4, 100)
q200 = ta.ema(ohlc4, 200)
qeq=(q1+q5+q9+q13+q26+q50+q100+q200)/8
//plot(qeq,"EMA",color.rgb(255, 235, 59, 100), linewidth=1)
//Function Sar; slow-avarage-fast
lenxc = input(3)
lenxc20 = input(2)
lenxc50 = input(1)
z(close, lenxc) =>
hxc = 0.0
dxc = 0.0
for i = 0 to lenxc - 1 by 1
kxc = (lenxc - i) * lenxc
hxc += kxc
dxc += close[i] * kxc
dxc
dxc / hxc
cxc = z(close, math.floor(math.sqrt(lenxc)))
//
z20(close, lenxc20) =>
hcx20 = 0.0
dxc20 = 0.0
for i = 0 to lenxc20 - 1 by 1
kxc20 = (lenxc20 - i) * lenxc20
hcx20 += kxc20
dxc20 += close[i] * kxc20
dxc20
dxc20 / hcx20
cxc20 = z20(close, math.floor(math.sqrt(lenxc20)))
//
z50(close, lenxc50) =>
hxc50 = 0.0
dxc50 = 0.0
for i = 0 to lenxc50 - 1 by 1
kxc50 = (lenxc50 - i) * lenxc50
hxc50 += kxc50
dxc50 += close[i] * kxc50
dxc50
dxc50 / hxc50
cxc50 = z50(close, math.floor(math.sqrt(lenxc50)))
//
//
startsx = 0.05
incrementsx = 0.75
maximumsx = 0.35
ssx = ta.sar(startsx, incrementsx, maximumsx)
s1sx = z(ssx, lenxc)
pcsx = close < s1sx ? color.rgb(255, 82, 82, 100) : color.rgb(76, 175, 79, 100)
//plot(s1sx, title="SAR Avarage",style=plot.style_cross, color=pcsx, linewidth=1)
startsx20 = 0
incrementsx20 = 0.01
maximumsx20 = 1
ssx20 = ta.sar(startsx20, incrementsx20, maximumsx20)
s1sx20 = z20(ssx20, lenxc20)
pcsx20 = close < s1sx20 ? color.rgb(255, 82, 82, 00) : color.rgb(76, 175, 79, 00)
//plot(s1sx20, title="YavaşDöngü",style=plot.style_cross, color=pcsx20, linewidth=2)
startsx50 = 0
incrementsx50 = 0.1
maximumsx50 = 1
ssx50 = ta.sar(startsx50, incrementsx50, maximumsx50)
s1sx50 = z50(ssx50, lenxc50)
pcsx50 = close < s1sx50 ? color.rgb(255, 82, 82, 00) : color.rgb(76, 175, 79, 00)
//plot(s1sx50, title="HızlıDöngü",style=plot.style_cross, color=pcsx50, linewidth=2)
//Break
start88 = input(0, title="start", group="Parabolic SAR")
increment88 = input(0.001, title="Increment", group="Parabolic SAR")
maximum88 = input(1, title="Maximum", group="Parabolic SAR")
out88 = ta.sar(start88, increment88, maximum88)
sarChange1 = ta.change(out88<high)
var prevSar1 = out88
if(sarChange1)
prevSar1 := out88[1] + ((out88[1]/100)*0.9)
//plot(out88 and sarChange1?na:prevSar1, style=plot.style_linebr, offset = -5, color=out88<high? color.rgb(255, 153, 0, 100) : color.orange, title="Kırılım", linewidth=3)
//END
//Stop Function
mult156 = input.float(3, 'Multiplicative Factor', minval = 0)
slope156 = input.float(20, 'Slope', minval = 0)
width156 = input.float(100, 'Width %', minval = 0, maxval = 100) / 100
//Style
bullCss156 = input.color(color.lime, 'Average Color', inline = 'avg', group = 'Style')
bearCss156 = input.color(color.red, '' , inline = 'avg', group = 'Style')
//Calculation
//-----------------------------------------------------------------------------{
var float upper156 = na
var float lower156 = na
var float avg156 = close
var hold156 = 0.
var os156 = 1.
atr156 = nz(ta.atr(200)) * mult156
avg156 := math.abs(close - avg156) > atr156 ?
math.avg(close, avg156)
: avg156 + os156 * (hold156 / mult156 / slope156)
os156 := math.sign(avg156 - avg156[1])
hold156 := os156 != os156[1] ? atr156 : hold156
upper156 := avg156 + width156 * hold156
lower156 := avg156 - width156 * hold156
css156 = os156 == 1 ? bullCss156 : bearCss156
plot_avg156 = plot(avg156, 'STOP', os156 != os156[1] ? na : css156, style=plot.style_line,linewidth = 3)
//END
-
ortaya karışık...
denemek isteyene kodu....
PHP Code:
// This source code is subject to the terms of the Mozilla Public License 2.0 at https://mozilla.org/MPL/2.0/
// © carefulCode53358... yörük trading sistem
//@version=5
indicator(".", overlay = true)
//Trend Sar
psar(start1, inc1, maximum1) =>
out1 = float(na)
isUpTrend1 = bool(na)
maxMin1 = float(na)
acc1 = float(na)
prev1 = float(na)
if bar_index >= 1
prev1 := out1[1]
if bar_index == 1
if close > close[1]
isUpTrend1 := true
maxMin1 := math.max(high, high[1])
prev1 := math.min(low, low[1])
prev1
else
isUpTrend1 := false
maxMin1 := math.min(low, low[1])
prev1 := math.max(high, high[1])
prev1
acc1 := start1
acc1
else
isUpTrend1 := isUpTrend1[1]
acc1 := acc1[1]
maxMin1 := maxMin1[1]
maxMin1
if isUpTrend1
if high > maxMin1
maxMin1 := high
acc1 := math.min(acc1 + inc1, maximum1)
acc1
else
if low < maxMin1
maxMin1 := low
acc1 := math.min(acc1 + inc1, maximum1)
acc1
if na(out1)
out1 := prev1 + acc1 * (maxMin1 - prev1)
out1
if isUpTrend1
if low <= out1
isUpTrend1 := false
out1 := maxMin1
maxMin1 := low
acc1 := start1
acc1
else
if high >= out1
isUpTrend1 := true
out1 := maxMin1
maxMin1 := high
acc1 := start1
acc1
if na(out1)
if isUpTrend1
out1 := math.min(out1, bar_index == 1 ? low[1] : math.min(low[1], low[2]))
out1
else
out1 := math.max(out1, bar_index == 1 ? high[1] : math.max(high[1], high[2]))
out1
[out1, acc1, maxMin1, isUpTrend1]
start1 = input(0)
increment1 = input(0.02)
maximum1 = input(0.06)
[p1, AF1, EP1, isUpTrend1] = psar(start1, increment1, maximum1)
newEP1 = EP1 != EP1[1]
epNew1 = newEP1 ? EP1 : na
//plot(p1, 'Continue-SAR', style=plot.style_stepline, color=isUpTrend1 ? color.rgb(25, 248, 5, 100) : color.rgb(243, 5, 5, 100), linewidth=1)
//plot(EP1, 'Continue', style=plot.style_circles, color=isUpTrend1 ? color.rgb(25, 248, 5, 100) : color.rgb(243, 5, 5, 100), linewidth=2)
//plot(epNew1, 'Trend-Continue', style=plot.style_line, color=isUpTrend1 ? color.rgb(76, 175, 79, 00) : color.rgb(255, 82, 82, 00), linewidth=1)
//Signal
xyz=ta.crossunder(epNew1,p1)
//plotshape(xyz? epNew1:na, style=shape.circle, location=location.abovebar, color=isUpTrend1 ? color.rgb(34, 247, 6) : color.rgb(247, 3, 3), size=size.small)
xyz1=ta.crossover(epNew1,p1)
//plotshape(xyz1? epNew1:na, style=shape.circle, location=location.belowbar, color=isUpTrend1 ? color.rgb(34, 247, 6) : color.rgb(247, 3, 3), size=size.small)
ax=p1*1.05
axs=p1*1.10
axs1=p1*1.15
//plot(ax, 'Olasılık', style=plot.style_cross, color=color.rgb(239, 5, 247, 100), linewidth=2)
//plot(axs, 'Olasılık', style=plot.style_cross, color=color.rgb(239, 5, 247, 100), linewidth=2)
//plot(axs1, 'Olasılık', style=plot.style_cross, color=color.rgb(239, 5, 247, 100), linewidth=2)
//END
//bcolor = ta.crossunder(epNew1,p1) ? color.red : ta.crossover(epNew1,p1) ? color.green: close>EP1 ? color.red : close<EP1 ? color.green: color.green // : color.black
//barcolor(bcolor)
//@version=5
//resolution
x1 = input.timeframe('1', title='Resolution')
//output functions
z = ta.sar(0, 0.1, 1)
// Security
y1 = request.security(syminfo.tickerid, x1, z)
//Plots
xz = input(true, title='Adaptive Coloring')
//Functions Sar for support and resistance
q3 = ta.sar(0.01, 0.01, 0.1)
q2 = ta.sar(0, 0.1, 0.1)
q1 = ta.sar(0, 0.2, 0.6)
plot(q3, title='UV-Sar', style=plot.style_circles, color=xz ? y1 > close ? color.rgb(229, 2, 250) : color.rgb(250, 225, 3) : color.silver, linewidth=1)
plot(q2, title='OV-Sar', style=plot.style_circles, color=xz ? y1 > close ? color.rgb(229, 2, 250) : color.rgb(250, 225, 3) : color.silver, linewidth=1)
plot(q1, title='KV-Sar', style=plot.style_circles, color=xz ? y1 > close ? color.rgb(229, 2, 250) : color.rgb(250, 225, 3) : color.silver, linewidth=1)
//Signal
xyzq = (y1)
//plot(xyzq, title='Yörük', style=plot.style_linebr, color=xz ? y1 > close ? color.rgb(239, 5, 247, 100) : color.rgb(237, 243, 240, 100) : color.silver, linewidth=1)
//@version=5
lenxc = input(1)
lenxc50 = input(1)
z(close, lenxc) =>
hxc = 0.0
dxc = 0.0
for i = 0 to lenxc - 1 by 1
kxc = (lenxc - i) * lenxc
hxc += kxc
dxc += close[i] * kxc
dxc
dxc / hxc
cxc = z(close, math.floor(math.sqrt(lenxc)))
////
z50(close, lenxc50) =>
hxc50 = 0.0
dxc50 = 0.0
for i = 0 to lenxc50 - 1 by 1
kxc50 = (lenxc50 - i) * lenxc50
hxc50 += kxc50
dxc50 += close[i] * kxc50
dxc50
dxc50 / hxc50
cxc50 = z50(close, math.floor(math.sqrt(lenxc50)))
////
startsx = 0
incrementsx = 0.2
maximumsx = 0.6
ssx = ta.sar(startsx, incrementsx, maximumsx)
s1sx = z(ssx, lenxc)
pcsx = close < s1sx ? color.rgb(255, 82, 82, 100) : color.rgb(76, 175, 79, 100)
//plot(s1sx, title="Döngü:1-0",style=plot.style_cross, color=pcsx, linewidth=1)
startsx50 = 0
incrementsx50 = 0.1
maximumsx50 = 0.1
ssx50 = ta.sar(startsx50, incrementsx50, maximumsx50)
s1sx50 = z50(ssx50, lenxc50)
pcsx50 = close < s1sx50 ? color.rgb(255, 82, 82, 100) : color.rgb(76, 175, 79, 100)
//plot(s1sx50, title="Döngü:0-1",style=plot.style_cross, color=pcsx50, linewidth=1)
//Signal
//END
bcolor = ta.crossunder(close,s1sx) ? color.red : ta.crossover(close,s1sx50) ? color.green: close>s1sx50 ? color.green : close<s1sx ? color.red: color.rgb(253, 216, 4) // : color.black
barcolor(bcolor)
-
ortaya karışık döngüselli....
denemek isteyene kodu....
PHP Code:
// This source code is subject to the terms of the Mozilla Public License 2.0 at https://mozilla.org/MPL/2.0/
// © carefulCode53358
//@version=5
indicator(".", overlay = true)
ehad = input(true, title='Renklendirme')
/////verisi hesaplanacak sar değerleridir........
//yörükten...başkaraya selamlarla......
//@version=5
src = input(hlc3, title="Source")
highlight = input(true, title="Highlighting?")
showSignals = input(true, title="Show Signals?")
Q1 = input.int(3, title="Q1")
Q2 = input.float(0.8, title="Q2")
Q3 = Q2/100
Q4 = ta.ema(src, Q1)
Q5 = 0.0
Q5 := (Q4*(1-Q3))>nz(Q5[1],0) ? Q4*(1-Q3) : (Q4*(1+Q3))<nz(Q5[1],0) ? Q4*(1+Q3) : nz(Q5[1],0)
Z1 = input.int(3, title="Z1")
Z2 = input.float(1.23, title="Z2")
Z3 = Z2/100
Z4 = ta.ema(src, Z1)
Z5 = 0.0
Z5 := (Z4*(1-Z3))>nz(Z5[1],0) ? Z4*(1-Z3) : (Z4*(1+Z3))<nz(Z5[1],0) ? Z4*(1+Z3) : nz(Z5[1],0)
BuySignal = ta.crossover(Q5,Z5)
SellSignal = ta.crossunder(Q5,Z5)
Q5pl=plot(int(Q5/0.025+0.50)*0.025, color=color.green, linewidth=1)
Z5pl=plot(int(Z5/0.025+0.50)*0.025, color=color.red, linewidth=1)
fill(Q5pl,Z5pl, color= highlight ? Q5>Z5 ? color.new(color.green,50) : color.new(color.red,50) : na)
plotshape(showSignals and BuySignal, title="Buy Signal", style=shape.labelup, text="Al", textcolor=color.white, color=color.green, location=location.belowbar)
plotshape(showSignals and SellSignal, title="Sell Signal", style=shape.labeldown, text="SAT", textcolor=color.white, color=color.red, location=location.abovebar)
//hesaplanan veriyi zaman döngüsüne aktarma.....
fatiha = Q5
kadir = Z5
velasr = (Q5+Z5)/2
/////tüm zaman döngülerinin tanımı.....1-5-15-60 periyotları için....
bakara = input.timeframe('1', title='Periyot')
aliimran = input.timeframe('5', title='Periyot')
nisa = input.timeframe('15', title='Periyot')
maide = input.timeframe('60', title='Periyot')
// 1 veriyi zaman döngüsünde hesaplatma...
isra = request.security(syminfo.tickerid, bakara, fatiha)
kehf = request.security(syminfo.tickerid, aliimran, fatiha)
meryem = request.security(syminfo.tickerid, nisa, fatiha)
taha = request.security(syminfo.tickerid, maide, fatiha)
//1. veriyi hesaplayan sistem.....
tegabun = (isra )
//plot(tegabun, title='1', style=plot.style_stepline, color=ehad ? isra > close ? color.rgb(255, 82, 82, 100) : color.rgb(0, 230, 119, 100) : color.silver, linewidth=2)
talak = (isra + kehf ) / 2
//plot(talak, title='5', style=plot.style_stepline, color=ehad ? kehf > close ? color.rgb(255, 82, 82, 100) : color.rgb(0, 230, 119, 100) : color.silver, linewidth=2)
tahrim = (isra + kehf + meryem ) / 3
//plot(tahrim, title='15', style=plot.style_stepline, color=ehad ? meryem > close ? color.rgb(255, 82, 82, 100) : color.rgb(0, 230, 119, 100) : color.silver, linewidth=2)
mulk = (isra + kehf + meryem + taha ) / 4
//plot(mulk, title='60', style=plot.style_stepline, color=ehad ? taha > close ? color.rgb(255, 82, 82, 100) : color.rgb(0, 230, 119, 100) : color.silver, linewidth=2)
// 2.veriyi zamanda döndürme
secde = request.security(syminfo.tickerid, bakara, kadir)
ahzab = request.security(syminfo.tickerid, aliimran, kadir)
sebe = request.security(syminfo.tickerid, nisa, kadir)
fatir = request.security(syminfo.tickerid, maide, kadir)
///2veriyi hesaplayan sistem....
muzzemmil = (secde )
//plot(muzzemmil, title='2-1', style=plot.style_stepline, color=ehad ? secde > close ? color.rgb(255, 82, 82, 100) : color.rgb(0, 230, 119, 100) : color.silver, linewidth=2)
muddesir = (secde+ahzab ) / 2
//plot(muddesir, title='2-5', style=plot.style_stepline, color=ehad ? ahzab > close ? color.rgb(255, 82, 82, 100) : color.rgb(0, 230, 119, 100) : color.silver, linewidth=2)
kiyamet = (secde+ahzab+sebe ) / 3
//plot(kiyamet, title='2-15', style=plot.style_stepline, color=ehad ? sebe > close ? color.rgb(255, 82, 82, 100) : color.rgb(0, 230, 119, 100) : color.silver, linewidth=2)
insan = (secde+ahzab+sebe+fatir) / 4
//plot(insan, title='2-60', style=plot.style_stepline, color=ehad ? fatir > close ? color.rgb(255, 82, 82, 100) : color.rgb(0, 230, 119, 100) : color.silver, linewidth=2)
// Security3.veriyi zamanda döndürme...
fetih = request.security(syminfo.tickerid, bakara, velasr)
hucurat = request.security(syminfo.tickerid, aliimran, velasr)
kaf = request.security(syminfo.tickerid, nisa, velasr)
zariyat = request.security(syminfo.tickerid, maide, velasr)
/////3.veriyi döngüsel hesaplayan sistem....
infitar = (fetih )
//plot(infitar, title='3-1', style=plot.style_stepline, color=ehad ? fetih > close ? color.rgb(255, 82, 82, 100) : color.rgb(0, 230, 119, 100) : color.silver, linewidth=2)
mutaffifin = (fetih+hucurat) /2
//plot(mutaffifin, title='3-5', style=plot.style_stepline, color=ehad ? hucurat > close ? color.rgb(255, 82, 82, 100) : color.rgb(0, 230, 119, 100) : color.silver, linewidth=2)
insikak = (fetih+hucurat+kaf ) /3
//plot(insikak, title='3-15', style=plot.style_stepline, color=ehad ? kaf > close ? color.rgb(255, 82, 82, 100) : color.rgb(0, 230, 119, 100) : color.silver, linewidth=2)
buruc = (fetih+hucurat+kaf+zariyat ) /4
//plot(buruc, title='3-60', style=plot.style_stepline, color=ehad ? zariyat > close ? color.rgb(255, 82, 82, 100) : color.rgb(0, 230, 119, 100) : color.silver, linewidth=2)
//3 verinin 1-5-15-ve 60 dakikalık olarak ortalamasını hesaplayan sistem...
sems = (tegabun+muzzemmil+infitar ) /3
plot(sems, title='1', style=plot.style_stepline, color=ehad ? sems > close ? color.rgb(255, 82, 82, 100) : color.rgb(0, 230, 119, 100) : color.silver, linewidth=2)
leyl = (talak+muddesir+mutaffifin ) /3
plot(leyl, title='5', style=plot.style_stepline, color=ehad ? leyl > close ? color.rgb(255, 82, 82, 100) : color.rgb(0, 230, 119, 100) : color.silver, linewidth=2)
duha = (tahrim+kiyamet+insikak ) /3
plot(duha, title='15', style=plot.style_stepline, color=ehad ? duha > close ? color.rgb(255, 82, 82, 100) : color.rgb(0, 230, 119, 100) : color.silver, linewidth=2)
insirah = (mulk+insan+buruc ) /3
plot(insirah, title='60', style=plot.style_stepline, color=ehad ? insirah > close ? color.rgb(255, 82, 82, 100) : color.rgb(0, 230, 119, 100) : color.silver, linewidth=2)
//3 verinin hesaplamasını....kendi içinde.... döngüleyen sistem.....
kevser = (sems+leyl ) /2
plot(kevser, title='5Döngü', style=plot.style_stepline, color=ehad ? kevser > close ? color.rgb(255, 82, 82, 100) : color.rgb(0, 230, 119, 100) : color.silver, linewidth=2)
kafirun = (sems+leyl+duha ) /3
plot(kafirun, title='15Döngü', style=plot.style_stepline, color=ehad ? kafirun > close ? color.rgb(255, 82, 82, 100) : color.rgb(0, 230, 119, 100) : color.silver, linewidth=2)
nasr = (sems+leyl+duha+insirah ) /4
plot(nasr, title='60Döngü', style=plot.style_stepline, color=ehad ? nasr > close ? color.rgb(255, 82, 82, 100) : color.rgb(0, 230, 119, 100) : color.silver, linewidth=2)
// 3 dakikalık sar hesaplaması ile bar renklendirmedir.....
fatiha1 = input.timeframe('3', title='yörük')
bakara1 = ta.sar(0, 0.01, 0.1)
kuran1 = request.security(syminfo.tickerid, fatiha1, bakara1)
vallahualem=(kuran1)
plot(vallahualem, title='yörük', style=plot.style_stepline, color=ehad ? vallahualem > close ? color.rgb(250, 2, 2) : color.rgb(62, 253, 3) : color.rgb(178, 181, 190, 100), linewidth=2)
bcolor = ta.crossunder(close,vallahualem) ? color.rgb(248, 4, 4) : ta.crossover(vallahualem,close) ? color.rgb(4, 248, 12): close>vallahualem ? color.rgb(5, 245, 13) : close<vallahualem ? color.rgb(250, 2, 2): color.rgb(236, 253, 4) // : color.black
barcolor(bcolor)
//vurkaç hareketler için.....hesaplatılan sar sistemisidir....1 dakikalıkta kullanılacaktır....
x1 = input.timeframe('1', title='vurkaç')
z = ta.sar(0, 0.1, 1)
y1 = request.security(syminfo.tickerid, x1, z)
q3 = ta.sar(0.001, 0.01, 0.1)
q2 = ta.sar(0.001, 0.02, 0.2)
q1 = ta.sar(0.001, 0.03, 0.3)
plot(q3, title='UV-Sar', style=plot.style_circles, color=ehad ? q3 > close ? color.rgb(229, 2, 250) : color.rgb(250, 225, 3) : color.silver, linewidth=1)
plot(q2, title='OV-Sar', style=plot.style_circles, color=ehad ? q2 > close ? color.rgb(229, 2, 250) : color.rgb(250, 225, 3) : color.silver, linewidth=1)
plot(q1, title='KV-Sar', style=plot.style_circles, color=ehad ? q1 > close ? color.rgb(229, 2, 250) : color.rgb(250, 225, 3) : color.silver, linewidth=1)
//End
//Trend Sar
psar(start1, inc1, maximum1) =>
out1 = float(na)
isUpTrend1 = bool(na)
maxMin1 = float(na)
acc1 = float(na)
prev1 = float(na)
if bar_index >= 1
prev1 := out1[1]
if bar_index == 1
if close > close[1]
isUpTrend1 := true
maxMin1 := math.max(high, high[1])
prev1 := math.min(low, low[1])
prev1
else
isUpTrend1 := false
maxMin1 := math.min(low, low[1])
prev1 := math.max(high, high[1])
prev1
acc1 := start1
acc1
else
isUpTrend1 := isUpTrend1[1]
acc1 := acc1[1]
maxMin1 := maxMin1[1]
maxMin1
if isUpTrend1
if high > maxMin1
maxMin1 := high
acc1 := math.min(acc1 + inc1, maximum1)
acc1
else
if low < maxMin1
maxMin1 := low
acc1 := math.min(acc1 + inc1, maximum1)
acc1
if na(out1)
out1 := prev1 + acc1 * (maxMin1 - prev1)
out1
if isUpTrend1
if low <= out1
isUpTrend1 := false
out1 := maxMin1
maxMin1 := low
acc1 := start1
acc1
else
if high >= out1
isUpTrend1 := true
out1 := maxMin1
maxMin1 := high
acc1 := start1
acc1
if na(out1)
if isUpTrend1
out1 := math.min(out1, bar_index == 1 ? low[1] : math.min(low[1], low[2]))
out1
else
out1 := math.max(out1, bar_index == 1 ? high[1] : math.max(high[1], high[2]))
out1
[out1, acc1, maxMin1, isUpTrend1]
start1 = input(0)
increment1 = input(0.01)
maximum1 = input(0.1)
[p1, AF1, EP1, isUpTrend1] = psar(start1, increment1, maximum1)
newEP1 = EP1 != EP1[1]
epNew1 = newEP1 ? EP1 : na
plot(p1, 'Trend', style=plot.style_stepline, color=isUpTrend1 ? color.rgb(25, 248, 5, 100) : color.rgb(243, 5, 5, 100), linewidth=1)
plot(EP1, 'Trend-Devam', style=plot.style_circles, color=isUpTrend1 ? color.rgb(25, 248, 5, 100) : color.rgb(243, 5, 5, 100), linewidth=2)
//plot(epNew1, 'Trend-Continue', style=plot.style_line, color=isUpTrend1 ? color.rgb(76, 175, 79, 00) : color.rgb(255, 82, 82, 00), linewidth=1)