İlk göstergeniz
Bu sayfa sizi editörü açmaktan grafikte kendi çizginizi görmeye kadar götürür. Tek satırla başlarsınız, sonuna geldiğinde ekranında çalışan bir gösterge olur.
Gösterge, fiyattan bir değer hesaplayıp onu grafiğe çizen küçük bir programdır. Hesabı bir kez yazarsınız, terminal onu her bar için yeniden çalıştırır. Sizin işin hangi değeri istediğini söylemek.
Editörü açın, tek satır yazın
Grafiğin altındaki kod editörünü açın ve boş bir sayfayla başlayın. Yazacağınız ilk şey bir çizim çağrısı olsun. plot, verdiğiniz değeri bar bar grafiğe döker.
// her barin kapanis fiyatini grafige cizer plot(close)
Fiyat panosunda kapanışları birleştiren ince bir çizgi belirir. Çizgi her mumun kapanış ucundan geçer.
İki eğik çizgiyle başlayan satır yorumdur. Terminal onu çalıştırmaz; kodu okuyan insan için oradadır. Yorum yazmak sonradan kendi koduna döndüğünde en çok işine yarayan alışkanlıktır.
Kodu yazdıktan sonra çalıştırmayı unutmayın. Editör, çalıştırılmamış kodu grafiğe uygulamaz. Çizgi görünmüyorsa önce gerçekten çalıştığından emin olun.
Bar, seri ve close
Grafikteki her mum bir bardır. Bir barın dört fiyatı vardır: açılış, en yüksek, en düşük ve kapanış. Kodda bunların adı open, high, low ve close.
close tek bir sayı değildir. Her bar için ayrı bir değer taşıyan bir seridir. plot(close) yazdığında tek nokta değil uçtan uca bir çizgi görmenin sebebi budur.
- open — barın açıldığı fiyat
- high — bar içinde görülen en yüksek fiyat
- low — bar içinde görülen en düşük fiyat
- close — barın kapandığı fiyat, göstergelerin en sık kullandığı kaynak
- hl2 — en yüksek ile en düşüğün ortası; kapanıştan daha az titrer
- volume — o barda gerçekleşen işlem miktarı
// ikinci arguman kunyede gorunen baslik, ucuncusu hex renk plot(close, "Kapanis", "#787b86") // hl2 barin orta noktasidir: (high + low) / 2 plot(hl2, "Bar ortasi", "#2962ff")
Aynı panoda iki çizgi: gri kapanış çizgisi ve mavi orta nokta çizgisi. Mavi olan daha yumuşak seyreder.
plot'a verdiğiniz ikinci değer başlıktır ve grafiğin künyesinde görünür. Başlık yazmazsan çizgileri birbirinden ayırmak zorlaşır; ikiden fazla çizgide bu hemen can sıkar.
İlk göstergeniz: hareketli ortalama
Ham fiyat çizgisi çok titrer, yön okunmaz. Bu yüzden genellikle son birkaç barın ortalaması alınır. sma bu işi sizin yerine yapar: verdiğiniz seriyi verdiğiniz pencere boyunca ortalar ve sonucu yine bir seri olarak döndürür.
// son 20 barin ortalamasi; her yeni barda yeniden hesaplanir ortalama = sma(close, 20) plot(close, "Kapanis", "#787b86") plot(ortalama, "SMA 20", "#2962ff")
Gri kapanış çizgisinin ortasından geçen, ondan çok daha düz mavi bir SMA 20 çizgisi. Fiyat mavi çizginin üstünde kaldığı sürece yön yukarı sayılır.
İlk 19 barda SMA 20 boştur, çünkü ortalaması alınacak kadar bar yoktur. Grafiğin sol ucunda çizginin geç başlaması hata değildir; uzunluk kadar bar birikmeden gösterge değer üretemez.
Başlık ve renk vermek
Renk üçüncü argümandır ve hex olarak yazılır. Bir hesabı iki kez yazmak yerine değişkene alın; hem kod kısalır hem aynı seriyi başka yerde de kullanabilirsiniz.
hizli = sma(close, 10) yavas = sma(close, 50) plot(hizli, "SMA 10", "#26a69a") plot(yavas, "SMA 50", "#ef5350") // iki cizgi arasindaki alani yari saydam maviye boya fill(hizli, yavas, "#2962ff22")
Hızlı yeşil ve yavaş kırmızı iki ortalama; aralarındaki alan yarı saydam maviyle dolar. Bant genişledikçe hareketin hızlandığını görürsünüz.
Hex rengin sonuna iki karakter daha eklerseniz saydamlık verirsiniz. #2962ff22 ile #2962ff aynı mavidir; ilki arkasındaki barları görmeni sağlar.
Ayrı panoda çizmek
Bazı göstergeler fiyatla aynı ölçekte değildir. RSI 0 ile 100 arasında gezer; fiyat panosuna konursa çizgi ekranın dibinde ezilir. plot'un dördüncü argümanına bir pano adı yazarsanız değer aşağıda kendi panosuna gider.
guc = rsi(close, 14) // dorduncu arguman bir alt pano adidir plot(guc, "RSI 14", "#7e57c2", "guc") hline(70, "asiri alim", "#ef5350") hline(30, "asiri satim", "#26a69a")
Fiyatın altında mor bir RSI çizgisi taşıyan yeni bir pano; 70 ve 30 eşikleri kesikli yatay çizgilerle işaretlenir.
Aynı pano adını kullanan bütün plot çağrıları tek bir panoda toplanır. Pano adı yazmazsan terminal değerin aralığına bakıp kendisi karar verir.
Uzunluğu ayarlanabilir yapmak
20 sayısını koda gömerseniz değiştirmek için her seferinde kodu açman gerekir. input ile sayıyı ayar paneline taşırsınız; değer orada değişir, kod aynı kalır.
uzunluk = input(20, min=5, max=200, step=1, name="Ortalama uzunlugu") ortalama = ema(close, uzunluk) plot(close, "Kapanis", "#787b86") plot(ortalama, "EMA", "#ff9800")
Ayar panelinde 5 ile 200 arasında değiştirilebilen bir uzunluk alanı; turuncu EMA çizgisi siz değeri değiştirdikçe yeniden çizilir.
min ve max verirseniz alan bir aralığa kapanır, kimse 0 ya da eksi uzunluk yazamaz. Adı yazmayı da ihmal etmeyin; panelde tek başına duran bir sayı hiçbir şey anlatmaz.
Sinyali barın üstünde işaretlemek
Çizgi yönü gösterir ama anı göstermez. Fiyatın ortalamayı yukarı kestiği barları görmek istiyorsanız o barlara bir şekil koyun. crossover yalnızca kesişimin olduğu barda doğrudur, sonrasında sıfırlanır.
ortalama = sma(close, 20) plot(ortalama, "SMA 20", "#2962ff") // yalnizca kesisim barlarinda, barin altina yesil ucgen plotshape(crossover(close, ortalama), "Yukari kesis", "triangleup", "belowbar", "#26a69a")
Mavi SMA 20 çizgisi ve fiyatın onu yukarı kestiği her barın altında yeşil bir üçgen. Aradaki barlarda hiçbir şey çizilmez.
Buraya kadar geldiyseniz ekranında çalışan bir gösterge var: bir ortalama, bir renk, bir de sinyal işareti. Bundan sonrası aynı üç adımın tekrarıdır — değeri hesapla, çizin, koşulu işaretleyin.
Sık yapılan hatalar
- Rengi başlığın yerine yazmak. plot'ta sıra seri, başlık, renk, pano biçimindedir; hex kodu ikinci sıraya koyarsanız renk değil başlık olur.
- Aynı hesabı iki kez yazmak. sma(close, 20) satırını iki yerde tekrarlamak yerine bir değişkene alın.
- 0 ile 100 arasında gezen bir göstergeyi fiyat panosunda aramak. Pano adı vermeden RSI çizerseniz değer aralığına göre yerleştirilir, beklediğiniz yerde olmayabilir.
- Çok kısa bir pencere seçmek. sma(close, 2) neredeyse fiyatın kendisidir ve hiçbir şeyi yumuşatmaz.
- İlk barlardaki boşluğu veri eksikliği sanmak. Uzunluk kadar bar birikmeden gösterge değer üretemez.
Bu sayfada kullandığınız işlevler
plot(series, title?, color?, pane?, style?, linewidth?, linestyle?, offset?, display?)
Değer döndürmez; verdiğiniz seriyi bar bar birleştirip grafiğe çizgi olarak çizer.
sma(source, length)
Her bar için son length barın aritmetik ortalamasını taşıyan seri.
ema(source, length)
Son barlara daha çok ağırlık veren üstel hareketli ortalama serisi.
rsi(source, length)
0 ile 100 arasında salınan göreceli güç serisi.
hline(price, title?, color?, style?, width?, display?)
Değer döndürmez; sabit bir fiyat seviyesine yatay çizgi çizer.
plotshape(series, title?, style?, location?, color?, offset?, text?, textcolor?, size?, display?)
Değer döndürmez; koşulun doğru olduğu barlara fiyat panosunda bir şekil koyar.