CODESCRIPT

Matematik

33 işlev. Her kaydın ne aldığı, ne verdiği ve çalışan örneği.

abs(x)

Mutlak değer.

x
number
Sayı ya da seri.
NOT

İşareti atar, büyüklüğü tutar; hem skaler hem seride eleman bazlı çalışır.

CODESCRIPT
plot(abs(change(close, 1)))

Bar başına fiyat değişiminin mutlak büyüklüğü (yönsüz).

acos(x)

x'in ark-kosinüsü (radyan, 0..π).

x
number
Sayı ya da seri; girdi [-1, 1] aralığına kırpılır.
NOT

Aralık dışı girdi na üretmesin diye önce [-1, 1]'e kırpılır. Sonuç radyandır; dereceye çevirmek için todegrees.

CODESCRIPT
plot(todegrees(acos(1)))

acos(1) = 0 radyan = 0 derece.

asin(x)

x'in ark-sinüsü (radyan, -π/2..π/2).

x
number
Sayı ya da seri; girdi [-1, 1] aralığına kırpılır.
NOT

Aralık dışı girdi na üretmesin diye önce [-1, 1]'e kırpılır. Sonuç radyandır (todegrees ile dereceye).

CODESCRIPT
plot(todegrees(asin(1)))

asin(1) = π/2 radyan = 90 derece.

atan(x)

x'in ark-tanjantı (radyan, -π/2..π/2).

x
number
Sayı ya da seri (eğim/oran).
NOT

Tek argümanlı; bir eğimin (Δy/Δx) açısını verir. İşaret/çeyrek duyarlılığı gereken açı için atan2 kullan.

CODESCRIPT
plot(todegrees(atan(change(close, 1))))

Bar başına fiyat değişiminin eğim açısı (derece).

atan2(y, x)

(x, y) noktasının açısı (radyan, -π..π; çeyrek-duyarlı).

y
number
Dikey bileşen (pay).
x
number
Yatay bileşen (payda).
NOT

İki argümanlı ark-tanjant: atan'dan farkı, işaretleri kullanıp doğru çeyreği (-π..π) vermesidir. Sonuç radyandır.

CODESCRIPT
plot(todegrees(atan2(1, 1)))

atan2(1, 1) = π/4 radyan = 45 derece.

avg(a, b, ...)

Eleman bazlı ortalama.

a
series
Birinci değer/seri.
b
series
İkinci değer/seri (ve sonrası).
NOT

İkiden fazla argüman alabilir.

CODESCRIPT
plot(avg(high, low, close))

high, low ve close'un bar-bazlı ortalaması (hlc3 ile aynı).

bool(x)

Sıfır/na → false, sıfır-dışı → true.

x
number
Sayı, seri ya da mantıksal değer.
NOT

Bu dilde bool ASLA na değildir: bool(na) = false. Skaler girdi gerçek mantıksal, seri girdi 1/0 (na→0) döner. Son-değere çökertme yok.

CODESCRIPT
plot(bool(volume) ? 1 : 0)

Hacim sıfır/na ise 0, aksi halde 1.

ceil(x)

Yukarı yuvarlanmış tam değer.

x
series
Değer/seri.
NOT

Yukarı (artı sonsuza) yuvarlar: ceil(2.1) = 3. Eleman bazlıdır.

CODESCRIPT
plot(ceil(close / 10) * 10)

Kapanışı üstteki 10'un katına çıkarır.

clamp(x, lo, hi)

[lo, hi] aralığına sıkıştırılmış değer.

x
series
Değer/seri.
lo
number
Alt sınır.
hi
number
Üst sınır.
NOT

x'i [lo, hi] aralığına sıkıştırır; alt/üst sınırların dışını sınıra çeker.

CODESCRIPT
plot(clamp(rsi(close, 14), 30, 70))

RSI'yı 30-70 bandına kısıtlar; taşan uçları keser.

cos(x)

Kosinüs.

x
series
Radyan.
NOT

Girdi radyandır. Çıktı -1 ile 1 arasındadır. Eleman bazlıdır.

CODESCRIPT
plot(cos(0))

cos(0) = 1 (sabit).

exp(x)

e^x.

x
series
Üs.
NOT

e üzeri x; logaritmanın tersidir. Eleman bazlıdır.

CODESCRIPT
plot(exp(log(close)))

log'un tersi close'u geri verir (kimlik kontrolü).

fixnan(source)

Aynı uzunlukta seri: her na, o noktaya kadarki son na-olmayan değerle doldurulur (ilk geçerliye kadar na).

source
series
İleri-taşınacak seri (na içerebilir).
NOT

nz ile karıştırma: nz(x)/nz(x,y) na yerine SABİT değer koyar (0 ya da y). fixnan(x) na yerine serideki SON BİLİNEN değeri koyar (ileri-taşıma, ffill) — sabit değil, veriye göre değişir.

float(x)

Değeri ondalıklı (float) sayıya çevirir (na korunur).

x
number
Sayı ya da seri.
NOT

Tip netliği için; sayısal bir değeri açıkça ondalık olarak işaretler. na girdi na kalır. Zaten ondalıklı değerlerde etkisizdir.

CODESCRIPT
plot(float(3))

3 tam sayısını 3.0 ondalığına çevirir.

floor(x)

Aşağı yuvarlanmış tam değer.

x
series
Değer/seri.
NOT

Aşağı (eksi sonsuza) yuvarlar: floor(-2.1) = -3. Sıfıra doğru kırpan int'ten farklıdır.

CODESCRIPT
plot(floor(close / 10) * 10)

Kapanışı alttaki 10'un katına indirir (fiyat kademesi).

int(x)

Ondalığı sıfıra doğru atarak tam sayıya çevirir (na korunur).

x
number
Sayı ya da seri.
NOT

Sıfıra doğru kırpar: int(10.9)=10, int(-10.9)=-10. Aşağı yuvarlama için floor farklıdır (negatiflerde). na girdi na kalır.

CODESCRIPT
plot(int(close))

Kapanışın ondalıksız (sıfıra doğru kırpılmış) tam kısmı.

log(x)

Doğal logaritma.

x
number
Sayı ya da seri.
NOT

Doğal logaritma (taban e). Girdi ≤0 ise tanımsızdır. Eleman bazlıdır.

CODESCRIPT
plot(log(close / prev(close, 1)))

Bar başına logaritmik getiri.

log10(x)

10 tabanlı logaritma; x<=0 ise na.

x
series
Pozitif değer/seri.
NOT

10 tabanlı logaritma. Girdi ≤0 ise tanımsızdır. Eleman bazlıdır.

CODESCRIPT
plot(log10(volume))

Hacmin 10 tabanlı logaritması (büyüklük mertebesi).

math.pi / e / phi / rphi / sqrt2 / sqrt3

Matematik sabitleri (nokta ile erişilir): pi=3.14159..., e=2.71828..., phi=altın oran 1.61803..., rphi=altın oranın tersi 0.61803..., sqrt2=1.41421..., sqrt3=1.73205...

max(a, b, ...)

İkisinden büyük olanı (element-bazlı).

a
number
Birinci değer.
b
number
İkinci değer.
NOT

İki değerin büyüğünü eleman bazlı seçer; seri ile sabit karışık verilebilir.

CODESCRIPT
plot(max(close - open, 0))

Yalnız yükseliş gövdelerinin boyu; düşüş barlarında 0.

min(a, b, ...)

İkisinden küçük olanı (element-bazlı).

a
number
Birinci değer.
b
number
İkinci değer.
NOT

İki değerin küçüğünü eleman bazlı seçer; seri ile sabit karışık verilebilir.

CODESCRIPT
plot(min(high - close, close - low))

Üst ve alt fitilden kısa olanı.

mod(a, b)

a mod b; b=0 ise na.

a
series
Bölünen.
b
series
Bölen.
NOT

a'nın b'ye bölümünden kalan. Payda 0 ise sonuç tanımsızdır. Eleman bazlıdır.

CODESCRIPT
plotshape(mod(barIndex, 10) == 0, style="cross", location="bottom")

Her 10 barda bir alt bantta işaret.

nz(source, replacement=0)

na'sız seri.

source
series
Kaynak seri.
replacement
number
na yerine konacak değer (varsayılan 0).
NOT

na değerleri replacement (varsayılan 0) ile değiştirir, diğerlerine dokunmaz.

CODESCRIPT
plot(nz(change(close, 1), 0))

İlk barda na yerine 0; sonrasında normal değişim.

pow(x, y)

x üzeri y.

x
number
Taban.
y
number
Üs.
NOT

x üzeri y. Eleman bazlıdır; taban ve üs seri olabilir.

CODESCRIPT
plot(pow(2, 10))

2 üzeri 10 = 1024 (sabit).

random(min, max, seed?)

Her bar için [min, max) aralığında deterministik rastgele değer taşıyan seri.

min
number
Alt sınır (dahil).
max
number
Üst sınır.
seed
number
İsteğe bağlı. Tohum (varsayılan 0); aynı tohum aynı diziyi üretir.
NOT

Deterministiktir: aynı seed ile backtest ve canlı sonuç birebir eşleşir (tohum → tekrarlanabilirlik). Gerçek anlamda öngörülemez sayı değildir.

CODESCRIPT
plot(random(0, 1, 42))

42 tohumuyla bar başına 0..1 arası tekrarlanabilir rastgele seri.

round(x, decimals=0)

Yuvarlanmış değer.

x
series
Yuvarlanacak değer/seri.
decimals
number
Ondalık basamak (varsayılan 0).
NOT

Eleman bazlı çalışır.

CODESCRIPT
plot(round(close, 2))

Kapanış iki ondalığa yuvarlanmış.

round_to_mintick(deger, tick?)

Değeri en yakın tick katına yuvarlar.

deger
number
Yuvarlanacak değer ya da seri.
tick
number
İsteğe bağlı. Fiyat adımı (varsayılan 0.01; ≤0 verilirse 0.01'e döner).
NOT

Fiyatı sembolün işlem adımına oturtmak için. Sabit basamak sayısına yuvarlamak istiyorsan round daha uygundur.

CODESCRIPT
plot(round_to_mintick(12.347, 0.05))

12.347 en yakın 0.05 katına → 12.35.

sign(x)

İşaret: pozitifte +1, sıfırda 0, negatifte −1.

x
number
Sayı ya da seri.
NOT

Yalnızca -1, 0 ya da +1 döndürür (pozitif→1, negatif→-1, sıfır→0). Eleman bazlıdır.

CODESCRIPT
plot(sign(change(close, 1)))

Fiyat yükseldiyse +1, düştüyse -1, değişmediyse 0.

sin(x)

Sinüs.

x
series
Radyan.
NOT

Girdi radyandır. Çıktı -1 ile 1 arasındadır. Eleman bazlıdır.

CODESCRIPT
plot(sin(toradians(barIndex * 10)))

Bar indeksine bağlı yumuşak salınan (-1..1) dalga.

sqrt(x)

Karekök.

x
number
Sayı ya da seri.
NOT

Negatif girdi na döndürür. Eleman bazlıdır.

CODESCRIPT
plot(sqrt(pow(high - low, 2)))

Bar aralığının karesinin karekökü = aralığın kendisi (kimlik kontrolü).

sum(source, length)

Son length barın toplamı.

source
series
Toplanacak seri.
length
number
Pencere uzunluğu.
NOT

İlk length-1 bar None.

CODESCRIPT
plot(sum(volume, 5))

Son 5 barın toplam hacmi (kayan pencere).

tan(x)

Tanjant.

x
series
Radyan.
NOT

Girdi radyandır. 90°'nin tek katlarında sonsuza gider. Eleman bazlıdır.

CODESCRIPT
plot(tan(0))

tan(0) = 0 (sabit).

todegrees(rad)

Aynı açının derece karşılığı (rad × 180 / π).

rad
number
Radyan cinsinden açı (sayı ya da seri).
NOT

Trigonometrik/ark fonksiyonlarının çıktısı radyandır; okunur derece için bunu kullan. Tersi toradians.

CODESCRIPT
plot(todegrees(3.141592653589793))

π radyan = 180 derece.

toradians(derece)

Aynı açının radyan karşılığı (derece × π / 180).

derece
number
Derece cinsinden açı (sayı ya da seri).
NOT

sin/cos/tan radyan bekler; derece bir değeri onlara vermeden önce bununla çevir. Tersi todegrees.

CODESCRIPT
plot(sin(toradians(90)))

90 dereceyi radyana çevirip sinüsünü alır → 1.