Sistem
14 işlev. Her kaydın ne aldığı, ne verdiği ve çalışan örneği.
Temaya uygun çizim yapmak için — kendi eklediğin katmanların arka planla uyumlu renklenmesinde.
if barstate.islast { label(close, chartBgColor(), barIndex) } plot(close)
Arka plan rengini son bara etiket olarak yazar.
Etiket/metin rengini temayla uyumlu tutmak için.
if barstate.islast { label(close, chartFgColor(), barIndex) } plot(close)
Ön plan rengini son bara etiket olarak yazar.
Bar tipine göre dallanan mantığı korumak için bir kapıdır; CodeScript standart barlar ürettiğinden değer sabittir.
plot(chartIsStandard() ? 1 : 0, "Standart mı")
Standart grafikte sabit 1 çizer.
Görünür pencerenin sol ucunu temel almak için; zaman ekseninde konumlandırma yaparken referans olarak.
plot(chartLeftVisibleBarTime())
İlk barın zaman damgasını sabit bir çizgi olarak çizer.
Görünür pencerenin sağ ucunu (en güncel bar) temel almak için.
plot(chartRightVisibleBarTime())
Son barın zaman damgasını sabit bir çizgi olarak çizer.
Değer döndürmez; mesajı hata olarak çalışma günlüğüne ekler (script'i DURDURMAZ).
Çalışmayı kesmez — durdurmak istiyorsan runtimeError kullan. Beklenmeyen bir durumu günlükte kalıcı iz olarak bırakmak için.
if close <= 0 { logError("gecersiz fiyat") } plot(close)
Fiyat sıfır/negatif olsaydı günlüğe hata satırı eklenir; normal veride tetiklenmez.
Değer döndürmez; mesajı bilgi olarak çalışma günlüğüne ekler.
Script'i durdurmaz. Ara değerleri ya da hangi dalın çalıştığını izlemek için — çıktı ayrı bir günlük listesinde toplanır.
if barstate.islast { logInfo("tarama tamamlandi") } plot(close)
Son barda günlüğe bir bilgi satırı ekler; çizim etkilenmez.
Değer döndürmez; mesajı uyarı olarak çalışma günlüğüne ekler.
Script'i durdurmaz; bilgiden bir tık daha dikkat çeken ama ölümcül olmayan durumları işaretler.
if rsi(close, 14) > 70 { logWarning("asiri alim bolgesi") } plot(close)
RSI 70'in üstüne çıktığı barlarda günlüğe uyarı ekler.
Değer döndürmez; script'i durdurup verilen mesajı hata olarak bildirir.
Çağrıldığı an çalışmayı keser. Bir varsayımın bozulduğunu (geçersiz parametre, beklenmeyen durum) erken ve açık biçimde bildirmek için — koşula bağlayıp yalnız hatalı durumda tetikle.
if close < 0 { runtimeError("fiyat negatif olamaz") } plot(close)
Fiyat negatif olsaydı script durur; normal veride koşul sağlanmaz ve fiyat çizilir.
Geçerli barın KAPANIŞ zamanı (epoch milisaniye).
`time()` barın AÇILIŞ zamanını verir, `time_close()` ise kapanışını (açılış + bar süresi). Sonuç borsa saat diliminden bağımsızdır (yalnız UTC bar sınırlarına dayanır).
plot(time_close(""))
Her barın kapanış zamanını (epoch ms) çizer.
Mantıksal seri: verilen zaman diliminin yeni bir dilimini AÇAN barda true, diğerlerinde false.
İlk bar her zaman false'tur (öncesi yoktur). Tanınmayan bir zaman diliminde tüm seri false döner.
plotshape(timeframeChange("1D"), "Yeni gün")
Her yeni günün ilk barında bir işaret koyar.
plot(timeframeChange("1W") ? high : na, "Hafta başı")
Yeni haftanın ilk barında high'ı çizer, diğer barlarda boş (na).
Saniyeyi derli toplu bir zaman dilimi dizesine çevirir (örn 3600 → "1h", 86400 → "1D"). Sıfır/negatif ya da sayı-olmayan → boş metin.
timeframeInSeconds'ın tersidir; tam bölünen en büyük birimi seçer (hafta > gün > saat > dakika).
label(close, timeframeFromSeconds(3600))
Etiket olarak "1h" yazar (3600 saniye = 1 saat).
label(close, timeframeFromSeconds(86400))
Etiket olarak "1D" yazar (86400 saniye = 1 gün).
Zaman diliminin saniye cinsinden uzunluğunu döndürür (örn "1h" → 3600). Tanınmayan dilimde na.
Bir zaman dilimi dizesini sayısal bir uzunluğa çevirir; ölçekleme ya da karşılaştırmalarda kullanılır.
plot(timeframeInSeconds("1h"), "Saniye")
Sabit 3600 çizer (1 saat = 3600 saniye).
plot(timeframeInSeconds("1D") / 3600, "Günde kaç saat")
Sabit 24 çizer (bir günün saat sayısı).
timestamp(yıl, ay, gün, saat, dakika, saniye)
Takvim parçalarından üretilen epoch zaman damgası (milisaniye, UTC).
Dönüşüm dosdoğru UTC'dir — borsa saat dilimi/DST karışmaz (bunlar yalnız `hour`/`minute`/`year` gibi OKUMA değişkenlerinde uygulanır). Argümanlar sabit ya da seri (`year`, `month` gibi) olabilir; seri verilirse sonuç da bar-bar hesaplanan bir seri olur.
plot(timestamp(2024, 1, 1, 0, 0, 0))
2024-01-01 00:00:00 UTC'nin epoch milisaniyesini çizer.