Metin
23 işlev. Her kaydın ne aldığı, ne verdiği ve çalışan örneği.
Opaklık uygulanmış #rrggbbaa biçiminde renk.
alpha 0-1 aralığına sıkıştırılır. Geçersiz hex verilirse girdi olduğu gibi döner. Dolgu ve arka planları yarı saydam yapmak için idealdir.
plot(close, color=color("#26a69a", 0.5))
Fiyatı yarı saydam yeşille çizer (#26a69a80).
parça metnin içinde geçiyorsa true, yoksa false.
Büyük/küçük harfe duyarlıdır. Sembol adı ya da seans etiketi gibi metinleri sınıflandırmak için.
plot(iff(contains("BTCUSDT", "USD"), 1, 0))
"BTCUSDT" içinde "USD" geçtiği için 1 çizilir.
metin bu parçayla bitiyorsa true, yoksa false.
Büyük/küçük harfe duyarlıdır. Kotasyon para birimini (…USDT) ayıklamak için kullanışlıdır.
plot(iff(endsWith("BTCUSDT", "USDT"), 1, 0))
"BTCUSDT", "USDT" ile bittiğinden 1 çizilir.
Yer tutucuları doldurulmuş metin; text ile aynı davranır.
text'in eş adıdır. {0} indeksle, {} sırayla doldurulur; ondalık en çok 4 haneye kırpılır.
if barstate.islast { infoTable(format("O:{0} C:{1}", open, close)) } plot(close)
Açılış ve kapanışı tek satırda birleştirip panele yazar.
"YYYY-MM-DD HH:MM" biçiminde (UTC) tarih-saat metni; geçersiz girdide boş metin.
Saniye ya da milisaniye damgasını otomatik ayırt eder. Çıktı UTC'dir. Zamanı etiket/panelde göstermek için.
if barstate.islast { label(close, formatTime(time), barIndex) } plot(close)
Son barın zamanını okunur tarih-saat olarak etikete yazar.
gradient(value, lo, hi, loColor, hiColor)
değer [lo,hi] aralığında oranlanarak iki renk arasında karıştırılmış renk (seri verilirse renk serisi).
değer aralığın dışına taşarsa uçlara sabitlenir. Isı-haritası benzeri renklendirme için — örneğin RSI'ı aşırı-satımdan aşırı-alıma renk geçişiyle göstermek.
plot(close, color=gradient(rsi(close, 14), 30, 70, "#ef5350", "#26a69a"))
RSI 30'a yakınken kırmızı, 70'e yakınken yeşil olacak şekilde fiyatı renklendirir.
parçanın ilk geçtiği konum (0'dan); bulunamazsa -1.
Konum 0'dan sayılır. Bulunamama durumu -1 ile ayırt edilir.
plot(indexOf("merhaba", "h"))
"h", "merhaba" içinde 3. konumda olduğundan 3 çizilir.
Karşılaştırmayı büyük/küçük harften bağımsız yapmak için iki tarafı da lower ile eşitle.
if barstate.islast { label(close, lower("MERHABA"), barIndex) } plot(close)
Son bara "merhaba" yazan bir etiket koyar.
Desene uyan İLK parça; uyum yoksa boş metin.
Yalnız ilk eşleşmeyi döndürür. Metin içinden sayı ya da kalıp ayıklamak için toNumber ile birlikte kullanılabilir.
plot(toNumber(regexMatch("abc123def", "[0-9]+")))
Metindeki ilk sayı bloğu "123" ayıklanıp sayıya çevrilir ve çizilir.
metin ard arda n kez yazılmış hâli.
n sıfır ya da negatifse boş metin döner. Basit ilerleme çubuğu / ayraç dizmede kullanışlıdır.
plot(strLength(repeat("ab", 3)))
"ab" 3 kez tekrarlanır ("ababab"); uzunluğu 6 çizilir.
Yalnız İLK eşleşmesi değiştirilmiş metin.
Sadece ilk eşleşmeyi değiştirir; tüm eşleşmeler için replaceAll kullan.
if barstate.islast { label(close, replace("aXbXc", "X", "-"), barIndex) } plot(close)
İlk X değişir; etiket "a-bXc" olur.
Tüm eşleşmeleri değiştirilmiş metin.
Bütün eşleşmeleri değiştirir; yalnız ilkini değiştirmek için replace kullan.
if barstate.islast { label(close, replaceAll("aXbXc", "X", "-"), barIndex) } plot(close)
Tüm X'ler değişir; etiket "a-b-c" olur.
metin bu parçayla başlıyorsa true, yoksa false.
Büyük/küçük harfe duyarlıdır.
plot(iff(startsWith("BTCUSDT", "BTC"), 1, 0))
"BTCUSDT", "BTC" ile başladığından 1 çizilir.
Değerin metin karşılığı; seri verilirse eleman-eleman metin serisi. na → "NaN".
Biçim verilmezse en çok 10 ondalık gösterip fazla sıfırları atar. "percent" sonuna % ekler, "volume" büyük sayıları K/M/B/T ile kısaltır, "mintick" sembolün fiyat adımına yuvarlar.
if barstate.islast { label(close, str(close, "#.##"), barIndex) } plot(close)
Kapanışı iki ondalıkla metne çevirip son bara etiket olarak koyar.
strFormat(şablon, ...değerler)
Yer tutucuları doldurulmuş metin; text/format ile aynı davranır.
text'in bir başka eş adıdır — biçimlendirme davranışı aynıdır.
if barstate.islast { infoTable(strFormat("H:{0} L:{1}", high, low)) } plot(close)
Yüksek ve düşük değerleri tek satırda birleştirip panele yazar.
Boş metin için 0 döner.
plot(strLength("merhaba"))
"merhaba" 7 karakter olduğundan 7 çizilir.
Girdi metinse aynısı, na ise na metni.
Yalnız metin/na kabul eder; sayı ya da mantıksal verilirse hata verir. Sayı/seriyi metne çevirmek için str kullan.
plot(strLength(string("merhaba")))
Metin girdisi olduğu gibi döner; uzunluğu 7 çizilir.
substring(metin, başla, bitir?)
[başla, bitir) aralığındaki alt metin.
Konumlar 0'dan başlar ve bitir hariç tutulur; bitir verilmezse metnin sonuna kadar alınır.
plot(strLength(substring("merhaba", 0, 3)))
İlk 3 karakter ("mer") alınır; uzunluğu 3 çizilir.
Yer tutucuları verilen değerlerle doldurulmuş metin.
{0} indeksle, {} ise sırayla doldurulur. Ondalık sayı en çok 4 haneye kırpılır; seri verilirse son geçerli değeri yazılır.
if barstate.islast { infoTable(text("Kapanis: {0}", close)) } plot(close)
Son barda sağ-üst panele "Kapanis:
label(close, text("RSI {0}", rsi(close, 14)), 50) plot(close)
50. bara RSI değerini katıştıran bir etiket koyar.
Baş/son boşluklar yok sayılır. Geçersiz metin hata vermez, na döner.
plot(toNumber("3.14"))
"3.14" metnini 3.14 sayısına çevirip çizer.
Değerin metin karşılığı; str ile aynı davranır.
str'nin eş adıdır — aynı biçim seçeneklerini kabul eder. Okunurluk için tercih edilebilir.
if barstate.islast { label(close, toString(rsi(close, 14)), barIndex) } plot(close)
RSI değerini metne çevirip son bara etiket olarak yazar.
Yalnız uçlardaki boşlukları alır; içteki boşluklar korunur.
plot(strLength(trim(" ab ")))
Uçlardaki boşluklar atılır; kalan "ab" uzunluğu 2 çizilir.
Sembol adlarını tek biçime getirmek için kullanışlıdır.
if barstate.islast { label(close, upper("btc"), barIndex) } plot(close)
Son bara "BTC" yazan bir etiket koyar.