CODESCRIPT

Diziler

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

array(...)

Verilen elemanlarla dizi oluşturur. Sonuc: Arr(len=3, [1.0, 2.0, 3.0])

Verilen elemanları taşıyan yeni bir dizi.

...
any
Diziye konulacak elemanlar (istediğiniz kadar; sayı, metin, mantıksal, na karışık olabilir).

Not

Elemanları doğrudan sıralayarak dizi kurar; karışık tip serbesttir ama sayısal özet fonksiyonları (arraySum, arrayAvg) sadece sayıları hesaba katar.

Ne zaman kullanılır

Elemanları elle sabit girip küçük bir dizi kurmak için: sabit seviyeler, ağırlıklar, etiket listesi. Boyutu önce belirleyip sonra dolduracaksan arrayNew daha uygundur.

CODESCRIPT
a = array(10, 20, 30)
plot(arraySum(a))

10+20+30 = 60 (dizinin toplamı her barda çizilir).

CODESCRIPT
w = array(0.5, 0.3, 0.2)
plot(arraySum(w))

Ağırlık vektörü: 0.5+0.3+0.2 = 1.0 (dizi float değerlerle kurulabilir).

arrayAbs(array)

Eleman bazlı mutlak değer (yeni dizi). Sonuc: Arr(len=3, [3.0, 1.0, 2.0])

Her elemanın mutlak değerini taşıyan YENİ dizi (orijinal değişmez).

array
array
Mutlak değeri alınacak dizi.

Not

Eleman bazlı çalışır; sayısal-olmayan elemanlar aynen kopyalanır. Orijinali değiştirmez.

Ne zaman kullanılır

Bir dizideki değerlerin işaretini atıp büyüklükleriyle çalışmak için (sapma, fark büyüklüğü).

CODESCRIPT
a = arrayFrom(-3, 4, -5)
b = arrayAbs(a)
plot(arraySum(b))

|−3|+|4|+|−5| = 12.

CODESCRIPT
a = arrayFrom(-2, -4, -6)
b = arrayAbs(a)
plot(arrayMax(b))

Mutlak değerler 2,4,6 → en büyüğü 6 (en büyük genlik).

arrayAvg(array)

Sayısal elemanların ortalaması.

Sayısal elemanların ortalaması; sayısal eleman yoksa na.

array
array
Ortalaması alınacak dizi.

Not

Sadece sayıları hesaba katar. Boş ya da tamamen sayısal-olmayan dizide na döner (0 değil).

Ne zaman kullanılır

Bir diziye toplanan değerlerin ortalamasını almak için — pencere ortalaması, örneklem merkezi.

Sınırlar

Boş dizide na verir; sonucu na() ile korumadan başka bir hesaba sokmayın.

CODESCRIPT
a = arrayFrom(10, 20, 30)
plot(arrayAvg(a))

Ortalama: 20.

CODESCRIPT
var w = arrayNew(0)
arrayPush(w, close)
if arraySize(w) > 10 {
  arrayShift(w)
}
plot(arrayAvg(w))

Son 10 close'un ortalaması — diziyle elle kurulmuş bir SMA(10).

arrayBinarySearch(array, value)

Artan sıralı dizide ikili arama (yoksa -1).

Değerin indeksi; bulunamazsa -1.

array
array
ARTAN sıralı sayısal dizi.
value
number
Aranan değer.

Not

Diziyi ARTAN sıralı varsayar; sırasız dizide sonuç anlamsız olur. Doğrusal aramaya (arrayIndexOf) göre büyük dizilerde çok daha hızlıdır.

Ne zaman kullanılır

Sıralı büyük bir dizide bir değeri hızlıca bulmak için. Eşit değerlerden hangi uca gitmek istiyorsanız arrayBinarySearchLeftmost/Rightmost kullanın.

Sınırlar

Sadece ARTAN sıralı dizide doğru çalışır; önce arraySort ile sıralayın.

CODESCRIPT
a = arrayFrom(10, 20, 30, 40)
plot(arrayBinarySearch(a, 30))

30 değeri 2. konumda.

CODESCRIPT
a = arrayFrom(10, 20, 30, 40)
plot(arrayBinarySearch(a, 25))

25 sıralı dizide yok → -1 (ikili arama bulamadı). Dizi sıralı olmalı.

arrayBinarySearchLeftmost(array, value)

Sıralı dizide sol-uç konum.

Değere eşit ilk konum; değer yoksa eklenmesi gereken konum (sol-uç ekleme noktası).

array
array
ARTAN sıralı sayısal dizi.
value
number
Aranan değer.

Not

Sıralı dizide değerin girebileceği en sol konumu verir. Değer birden çok kez varsa ilk kopyanın indeksini döner.

Ne zaman kullanılır

Sıralı dizide tekrar eden değerlerin ilkine ya da bir eşiğin alt sınır konumuna gitmek için.

CODESCRIPT
a = arrayFrom(1, 2, 2, 2, 3)
plot(arrayBinarySearchLeftmost(a, 2))

İlk 2 değeri 1. konumda.

CODESCRIPT
a = arrayFrom(1, 3, 5)
plot(arrayBinarySearchLeftmost(a, 4))

4 dizide yok; eklense gireceği (en-sol) konum 2. Sıralı dizi gerekir.

arrayBinarySearchRightmost(array, value)

Sıralı dizide sağ-uç konum.

Değere eşit son konum; değer yoksa ondan küçük son elemanın konumu (sağ-uç).

array
array
ARTAN sıralı sayısal dizi.
value
number
Aranan değer.

Not

Sıralı dizide değerin son kopyasının ya da değerden küçük son elemanın konumunu verir.

Ne zaman kullanılır

Sıralı dizide tekrar eden değerlerin sonuncusuna ya da bir eşiğin üst sınır konumuna gitmek için.

CODESCRIPT
a = arrayFrom(1, 2, 2, 2, 3)
plot(arrayBinarySearchRightmost(a, 2))

Son 2 değeri 3. konumda.

CODESCRIPT
a = arrayFrom(1, 2, 3, 4)
plot(arrayBinarySearchRightmost(a, 3))

3 dizide bir kez geçer → en-sağ eşleşme de aynı konum: 2. Tekrarlı olsaydı en sağdakini verirdi.

arrayClear(array)

Dizinin bütün ögelerini siler, dizi kalır ama boşalır. Yeni bir döneme geçerken birikimi sıfırlamak için kullanılır.

Değer döndürmez (na); diziyi yerinde boşaltır.

array
array
Boşaltılacak dizi.

Not

Tüm elemanları siler, boyut 0 olur; dizinin kendisi (referansı) korunur.

Ne zaman kullanılır

Bir tamponu yeniden kullanmadan önce sıfırlamak için — yeni pencereye/döneme geçerken.

CODESCRIPT
a = arrayFrom(1, 2, 3)
arrayClear(a)
plot(arraySize(a))

Boşaltıldı → boyut 0.

CODESCRIPT
var w = arrayNew(0)
arrayPush(w, close)
if arraySize(w) >= 10 {
  arrayClear(w)
}
plot(arraySize(w))

Boyut 10'a ulaşınca dizi boşaltılır → 1..10 arası testere deseni (periyodik kova).

arrayConcat(array1, array2)

dizi2'yi dizi1'e ekler, dizi1'i döner. Sonuc: Arr(len=5, [3.0, 1.0, 2.0, 4.0])

Genişletilmiş dizi1 (aynı referans).

array1
array
Genişletilecek hedef dizi (sonuç buna eklenir).
array2
array
Elemanları eklenecek kaynak dizi.

Not

dizi2'nin elemanlarını dizi1'in sonuna ekler ve dizi1'i değiştirir. dizi2 dokunulmadan kalır.

Ne zaman kullanılır

İki listeyi tek listede birleştirmek için. Orijinali korumak istiyorsanız önce arrayCopy alın.

CODESCRIPT
a = arrayFrom(1, 2)
b = arrayFrom(3, 4)
arrayConcat(a, b)
plot(arraySize(a))

dizi1 4 elemana genişledi.

CODESCRIPT
a = arrayFrom(1, 2)
b = arrayFrom(3, 4, 5)
arrayConcat(a, b)
plot(arrayAvg(a))

İki dizi birleşir (1,2,3,4,5) → ortalama 3 (birleştirin, sonra indirgeyin).

arrayCopy(array)

Dizinin kopyası. Sonuc: Arr(len=3, [3.0, 1.0, 2.0])

Aynı elemanları taşıyan bağımsız yeni dizi.

array
array
Kopyalanacak dizi.

Not

Yüzeysel kopya verir; kopyayı değiştirmek orijinali etkilemez. Yerinde değiştiren fonksiyonlardan (arraySort, arrayReverse) önce orijinali korumak için kullanılır.

Ne zaman kullanılır

Bir diziyi bozmadan üstünde sıralama/ters çevirme gibi yerinde işlemler yapmak için.

CODESCRIPT
a = arrayFrom(3, 1, 2)
b = arrayCopy(a)
arraySort(b, true)
plot(arrayFirst(a))

Kopya sıralandı; orijinalin ilk elemanı hâlâ 3.

CODESCRIPT
a = arrayFrom(1, 2, 3)
b = arrayCopy(a)
arrayPush(b, 4)
plot(arraySize(a))

Kopyaya eleman eklenir ama orijinal etkilenmez → orijinal boyut hâlâ 3 (bağımsız kopya).

arrayCovariance(array1, array2, biased?)

İki dizinin kovaryansı. Sonuc: -0.5

İki dizinin kovaryansı; ortak sayısal eleman sayısı 2'den azsa na.

array1
array
Birinci sayısal dizi.
array2
array
İkinci sayısal dizi.
biased
bool
Yanlı (n ile bölme) için true, yansız (n-1) için false (opsiyonel; varsayılan true).

Not

İki serinin birlikte hareket yönünü ve şiddetini ölçer. Diziler farklı uzunluktaysa kısa olanın uzunluğu kadar eşleştirilir. Varsayılan yanlı (n) bölendir.

Ne zaman kullanılır

İki değer dizisinin (ör. iki varlık getirisi) birlikte artıp azalma eğilimini ölçmek için.

CODESCRIPT
a = arrayFrom(1, 2, 3)
b = arrayFrom(2, 4, 6)
plot(arrayCovariance(a, b))

Birlikte artan iki dizi → pozitif kovaryans (≈1.33, yanlı).

CODESCRIPT
a = arrayFrom(1, 2, 3)
b = arrayFrom(6, 4, 2)
plot(arrayCovariance(a, b))

Biri artarken diğeri azalır → negatif kovaryans (≈ -1.33).

arrayEvery(array)

Tüm elemanlar doğru/sıfırdan-farklı mı. Sonuc: True

Tüm elemanlar doğru/sıfırdan-farklı ise true; boş dizide false.

array
array
Denetlenecek dizi.

Not

Her elemanı doğruluk (truthy) olarak değerlendirir: 0/na/false yanlış sayılır. Boş dizide false döner.

Ne zaman kullanılır

Bir dizideki tüm koşulların aynı anda sağlandığını doğrulamak için (hepsi geçti mi).

CODESCRIPT
a = arrayFrom(1, 1, 1)
plot(arrayEvery(a) ? 1 : 0)

Tüm elemanlar sıfırdan farklı → true.

CODESCRIPT
a = arrayFrom(1, 0, 1)
plot(arrayEvery(a) ? 1 : 0)

Bir eleman 0 → arrayEvery false (0). Tüm elemanlar sıfırdan farklı değil.

arrayFill(array, value, start?, end?)

Aralığı değerle doldurur.

Değer döndürmez (na); diziyi yerinde doldurur.

array
array
Doldurulacak dizi.
value
any
Aralığa yazılacak değer.
start
number
Başlangıç indeksi (dahil; opsiyonel, varsayılan 0; negatif = sondan).
end
number
Bitiş indeksi (hariç; opsiyonel, varsayılan dizi sonu; negatif = sondan).

Not

Verilen aralıktaki tüm elemanları aynı değere yazar; boyutu değiştirmez. Aralık verilmezse tüm dizi dolar.

Ne zaman kullanılır

Bir dizi bölümünü tek değerle sıfırlamak/işaretlemek için.

CODESCRIPT
a = arrayNew(5, 0)
arrayFill(a, 9, 1, 3)
plot(arraySum(a))

1 ve 2. elemanlar 9 yapıldı → toplam 18.

CODESCRIPT
a = arrayNew(4, 1)
arrayFill(a, 0)
plot(arraySum(a))

Aralık verilmeden tüm dizi 0 ile doldurulur → toplam 0 (topluca sıfırlama).

arrayFirst(array)

Dizinin ilk ögesini verir, diziyi değiştirmez. `arrayGet(d, 0)` ile aynı işi yapar ama niyeti daha açık okunur. ⚠ Boş dizide hata verir.

İlk eleman; dizi boşsa na.

array
array
İlk elemanı okunacak dizi.

Not

arrayGet(dizi, 0) ile aynı ama daha okunaklıdır; diziyi değiştirmez.

Ne zaman kullanılır

Dizinin başındaki değeri okumak için (en eski / ilk kayıt).

CODESCRIPT
a = arrayFrom(11, 22, 33)
plot(arrayFirst(a))

İlk eleman: 11.

CODESCRIPT
var w = arrayNew(0)
arrayPush(w, close)
if arraySize(w) > 5 {
  arrayShift(w)
}
plot(arrayFirst(w))

5 barlık kayan pencerenin ilk (en eski) elemanı — 5 bar önceki close.

arrayFrom(...values)

Verdiğiniz değerlerden yeni bir dizi kurar; tek tek eklemek yerine bir satırda yazmanı sağlar. Sabit bir liste kurmak için elverişlidir.

Verilen değerlerden oluşan yeni dizi.

...
any
Diziye konulacak değerler.

Not

array ile aynı işi görür; alışkanlığa göre ikisi de kullanılabilir.

Ne zaman kullanılır

Hazır değer listesinden hızlıca dizi oluşturmak için.

CODESCRIPT
a = arrayFrom(3, 1, 2)
plot(arrayMax(a))

Dizideki en büyük değer: 3.

CODESCRIPT
a = arrayFrom(5, 1, 9, 3, 7)
plot(arrayMedian(a))

Giriş sırasız olabilir: sıralı hâli 1,3,5,7,9 → tam ortadaki (medyan) 5.

arrayGet(array, i)

Dizinin belirli sırasındaki ögeyi verir. Sıra sıfırdan başlar: ilk öge 0, ikinci 1. Sondan saymak için eksi sayı yazılır, son öge -1'dir. ⚠ Dizide olmayan bir sıra istenirse hata verir; önce `arraySize` ile bakmak güvenlidir.

i. eleman; indeks dizi dışındaysa na döner (hata vermez).

array
array
Okunacak dizi.
i
number
Eleman indeksi; 0 ilk elemandır, negatif değer sondan sayar (-1 son eleman).

Not

Negatif indeks sondan erişim sağlar. Sınır dışı indekste çökmez, na verir — sonucu na() ile kontrol edebilirsiniz.

Ne zaman kullanılır

Diziden belirli bir konumdaki değeri okumak için. İlk/son eleman için arrayFirst/arrayLast daha okunaklıdır.

CODESCRIPT
a = arrayFrom(10, 20, 30)
plot(arrayGet(a, -1))

Son eleman: 30.

CODESCRIPT
a = arrayFrom(close, close[1], close[2])
plot(arrayGet(a, 0) > arrayGet(a, 2) ? 1 : 0)

Pozitif indeksle erişim: geçerli close (0. eleman) 2 bar önceki close'tan (2. eleman) büyükse 1.

arrayIncludes(array, value)

Değer dizide var mı (true/false).

Değer dizide varsa true, yoksa false.

array
array
İçinde aranacak dizi.
value
any
Varlığı sorgulanan değer.

Not

Tip-kesin eşitlik kullanır: sayı sayıyla, metin metinle, mantıksal mantıksalla eşleşir.

Ne zaman kullanılır

Bir değerin listede olup olmadığını kontrol etmek için — izleme listesi üyeliği, tekilleştirme.

CODESCRIPT
a = arrayFrom(1, 2, 3)
plot(arrayIncludes(a, 2) ? 1 : 0)

2 dizide var → true (1 olarak çizilir).

CODESCRIPT
a = arrayFrom(1, 5, 9)
plot(arrayIncludes(a, 4) ? 1 : 0)

4 dizide yok → false (0 çizilir) — üyelik testinin olumsuz hâli.

arrayIndexOf(array, value)

Değerin konumu (yoksa -1).

Değerin ilk bulunduğu indeks; yoksa -1.

array
array
İçinde aranacak dizi.
value
any
Konumu aranan değer.

Not

Baştan tarar, ilk eşleşmenin konumunu verir. Tip-kesin eşitlik uygular. Sondan aramak için arrayLastIndexOf.

Ne zaman kullanılır

Bir değerin dizideki konumunu bulmak için (sonra arrayGet/arraySet ile o konuma erişmek).

CODESCRIPT
a = arrayFrom(5, 6, 7)
plot(arrayIndexOf(a, 7))

7 değeri 2. konumda.

CODESCRIPT
a = arrayFrom(5, 6, 7)
plot(arrayIndexOf(a, 99))

99 dizide yok → -1 (bulunamadı işareti).

arrayInsert(array, i, value)

i. konuma ekler.

Değer döndürmez (na); diziyi yerinde büyütür.

array
array
Ekleme yapılacak dizi.
i
number
Ekleme konumu (negatif = sondan; sınır dışıysa başa/sona kırpılır).
value
any
Eklenecek değer.

Not

Belirtilen konuma eleman ekler, sonraki elemanlar sağa kayar. Konum boyutu aşarsa sona, çok küçükse başa eklenir.

Ne zaman kullanılır

Sıralı bir listede araya değer eklemek için. Sadece sona/başa eklemek istiyorsanız arrayPush/arrayUnshift.

CODESCRIPT
a = arrayFrom(1, 3)
arrayInsert(a, 1, 2)
plot(arrayGet(a, 1))

1. konuma 2 eklendi → dizi 1,2,3.

CODESCRIPT
a = arrayFrom(1, 2, 3)
arrayInsert(a, 0, 0)
plot(arrayFirst(a))

0. konuma 0 eklenir (başa) → yeni ilk eleman 0.

arrayJoin(array, separator?)

Elemanları metne birleştirir. Sonuc: 3, 1, 2

Elemanların ayraçla birleştirilmiş tek metni.

array
array
Metne dönüştürülecek dizi.
separator
string
Elemanların arasına konacak ayraç (opsiyonel; varsayılan ",").

Not

Her elemanı metne çevirip ayraçla birleştirir. Ayraç verilmezse virgül kullanılır.

Ne zaman kullanılır

Bir diziyi etikette/tabloda göstermek için tek metne çevirmek istediğinde.

CODESCRIPT
a = arrayFrom(1, 2, 3)
s = arrayJoin(a, "-")
plot(s == "1-2-3" ? 1 : 0)

Elemanlar "-" ile birleşti → "1-2-3".

CODESCRIPT
a = arrayFrom(1, 2, 3)
s = arrayJoin(a)
plot(s == "1,2,3" ? 1 : 0)

Ayraç verilmezse varsayılan virgüldür → "1,2,3".

arrayLast(array)

Son eleman.

Son eleman; dizi boşsa na.

array
array
Son elemanı okunacak dizi.

Not

arrayGet(dizi, -1) ile aynı ama daha okunaklıdır; diziyi değiştirmez.

Ne zaman kullanılır

Dizinin sonundaki değeri okumak için (en son eklenen / güncel kayıt).

CODESCRIPT
a = arrayFrom(11, 22, 33)
plot(arrayLast(a))

Son eleman: 33.

CODESCRIPT
var w = arrayNew(0)
arrayPush(w, high)
plot(arrayLast(w))

Diziye her bar high eklenir; son eleman en son eklenen (güncel) high'dır.

arrayLastIndexOf(array, value)

Son eşleşme indeksi (yoksa -1).

Değerin son bulunduğu indeks; yoksa -1.

array
array
İçinde aranacak dizi.
value
any
Konumu aranan değer.

Not

Sondan başa tarar, son eşleşmenin konumunu verir. Tip-kesin eşitlik uygular.

Ne zaman kullanılır

Aynı değer birden çok kez varken en sonunkinin konumunu istediğinde.

CODESCRIPT
a = arrayFrom(5, 6, 5)
plot(arrayLastIndexOf(a, 5))

Son 5 değeri 2. konumda.

CODESCRIPT
a = arrayFrom(5, 6, 5)
plot(arrayLastIndexOf(a, 9))

9 dizide hiç yok → -1 (son-konum araması da bulamaz).

arrayMax(array)

En büyük sayısal eleman.

En büyük sayısal eleman; sayısal eleman yoksa na.

array
array
En büyüğü aranan dizi.

Not

Sadece sayıları karşılaştırır; metin/na atlanır.

Ne zaman kullanılır

Bir dizideki en yüksek değeri bulmak için (en iyi sonuç, tavan seviye).

CODESCRIPT
a = arrayFrom(7, 3, 9)
plot(arrayMax(a))

En büyük: 9.

CODESCRIPT
var w = arrayNew(0)
arrayPush(w, high)
if arraySize(w) > 20 {
  arrayShift(w)
}
plot(arrayMax(w))

Son 20 barın en yüksek high'ı — kayan direnç (Donchian üst bandı).

arrayMedian(array)

Ortanca (medyan) değer.

Ortanca (medyan) değer; boşsa na. Çift sayıda elemanda ortadaki ikisinin ortalaması.

array
array
Ortancası aranan dizi.

Not

Değerleri sıralayıp ortadakini alır; aşırı uç değerlerden ortalamaya göre daha az etkilenir.

Ne zaman kullanılır

Uç değerlerin bozmadığı tipik değeri (dayanıklı merkez) istediğinde, ortalama yerine.

CODESCRIPT
a = arrayFrom(1, 2, 3, 4)
plot(arrayMedian(a))

Ortadaki ikinin ortalaması: (2+3)/2 = 2.5.

CODESCRIPT
a = arrayFrom(5, 1, 9, 3, 7)
plot(arrayMedian(a))

Tek sayıda eleman: sıralı 1,3,5,7,9 → tam ortadaki 5 (çift sayıdaki durumdan farklı).

arrayMin(array)

En küçük sayısal eleman.

En küçük sayısal eleman; sayısal eleman yoksa na.

array
array
En küçüğü aranan dizi.

Not

Sadece sayıları karşılaştırır; metin/na atlanır.

Ne zaman kullanılır

Bir dizideki en düşük değeri bulmak için (en zayıf sonuç, taban seviye).

CODESCRIPT
a = arrayFrom(7, 3, 9)
plot(arrayMin(a))

En küçük: 3.

CODESCRIPT
var w = arrayNew(0)
arrayPush(w, low)
if arraySize(w) > 20 {
  arrayShift(w)
}
plot(arrayMin(w))

Son 20 barın en düşük low'u — kayan destek (Donchian alt bandı).

arrayMode(array)

En sık değer (eşitlikte en küçük).

En sık geçen sayısal değer; eşitlikte en küçük olanı; boşsa na.

array
array
En sık değeri aranan dizi.

Not

Frekans eşit olan birden çok değer varsa en küçüğünü verir. Sadece sayısal elemanları sayar.

Ne zaman kullanılır

Bir dizide en çok tekrar eden değeri bulmak için (baskın seviye, en sık sonuç).

CODESCRIPT
a = arrayFrom(2, 2, 1, 1)
plot(arrayMode(a))

1 ve 2 eşit sıklıkta → en küçüğü: 1.

CODESCRIPT
a = arrayFrom(1, 3, 3, 3, 2)
plot(arrayMode(a))

3 değeri üç kez geçer → en sık (mod) 3 (net kazanan).

arrayNew(size?, start?)

Dizi oluşturur. Boyut verilirse o kadar eleman (her biri başlangıç değeri), verilmezse BOŞ dizi.

boyut adet elemanın hepsi başlangıç değerine eşit olan yeni dizi.

size
number
Oluşturulacak dizinin eleman sayısı.
start
any
Her elemanın başlangıç değeri (opsiyonel; verilmezse 0).

Not

Önce sabit boyutlu bir dizi ayırıp sonra arraySet/arrayFill ile doldurmak için kullanılır. Başlangıç verilmezse elemanlar 0'dır.

Ne zaman kullanılır

Boyutu bilinen bir tamponu (buffer) önceden ayırmak için: son N sonucu biriktirme, sabit uzunlukta pencere. Elemanları baştan biliyorsanız array kullanın.

CODESCRIPT
a = arrayNew(4, 5)
plot(arraySum(a))

4 elemanın hepsi 5 → toplam 20.

CODESCRIPT
a = arrayNew(3, 2)
arrayPush(a, 4)
plot(arrayAvg(a))

3 eleman 2 ile kurulur, üstüne 4 eklenir → ortalama (2+2+2+4)/4 = 2.5.

arrayNewBool(size?, start?)

Mantıksal dizi. Sonuc: Arr(len=5, [False, False, False, False])

boyut adet elemanın hepsi başlangıç değerine eşit yeni dizi.

size
number
Dizinin eleman sayısı.
start
bool
Her elemanın başlangıç değeri (opsiyonel).

Not

arrayNew ile aynı davranır; mantıksal (true/false) dizi kurma niyetini belirtir. Başlangıç verilmezse 0'dır (yanlış gibi davranır).

Ne zaman kullanılır

Her konum için bir bayrak/koşul tutan tampon ayırmak için.

CODESCRIPT
a = arrayNewBool(3, true)
plot(arrayEvery(a) ? 1 : 0)

Tüm elemanlar true → arrayEvery true.

CODESCRIPT
a = arrayNewBool(3, false)
arraySet(a, 1, true)
plot(arraySome(a) ? 1 : 0)

3 eleman false ile kurulur, 1. eleman true yapılır → arraySome true (1).

arrayNewBox(size?, start?)

Tip-özel dizi yapıcısı (arrayNew ile aynı). Sonuc: Arr(len=0, [])

boyut adet elemanlı yeni kutu (box) dizisi.

size
number
Dizinin eleman sayısı.
start
any
Her elemanın başlangıç değeri (opsiyonel; varsayılan 0).

Not

arrayNew ile aynı davranır; kutu (box) tutmak üzere niyeti belirten tip-özel yapıcıdır. Başlangıç değeri verilmezse elemanlar 0'dır (genelde na/başlangıç verilerek doldurulur).

Ne zaman kullanılır

kutu (box) nesnelerini konum konum tutacak sabit boyutlu bir tampon ayırmak için.

CODESCRIPT
a = arrayNewBox(2)
plot(arraySize(a))

2 elemanlık dizi ayrıldı.

CODESCRIPT
var kutular = arrayNewBox(0)
plot(arraySize(kutular))

var ile boş (0 elemanlı) kutu-tutamacı deposu — barlar boyunca taşınır, boyut 0'dan başlar.

arrayNewColor(size?, start?)

Tip-özel dizi yapıcısı (arrayNew ile aynı). Sonuc: Arr(len=0, [])

boyut adet elemanlı yeni renk dizisi.

size
number
Dizinin eleman sayısı.
start
any
Her elemanın başlangıç değeri (opsiyonel; varsayılan 0).

Not

arrayNew ile aynı davranır; renk tutmak üzere niyeti belirten tip-özel yapıcıdır. Başlangıç değeri verilmezse elemanlar 0'dır (genelde na/başlangıç verilerek doldurulur).

Ne zaman kullanılır

renk nesnelerini konum konum tutacak sabit boyutlu bir tampon ayırmak için.

CODESCRIPT
a = arrayNewColor(2)
plot(arraySize(a))

2 elemanlık dizi ayrıldı.

CODESCRIPT
var palet = arrayNewColor(2, "#26a69a")
arraySet(palet, 1, "#ef5350")
plot(arraySize(palet))

İki renk ayrılır, 1. eleman satış rengiyle değiştirilir → al/sat paleti, boyut 2.

arrayNewFloat(size?, start?)

Boş bir sayı dizisi kurar. Bar bar değer biriktireceksen bunu `var` ile kurman gerekir, yoksa her barda yeniden boşalır.

boyut adet sayısal elemanın hepsi başlangıç değerine eşit yeni dizi.

size
number
Dizinin eleman sayısı.
start
number
Her elemanın başlangıç değeri (opsiyonel; varsayılan 0).

Not

arrayNew ile aynı davranır; sayısal (ondalıklı) dizi kurmayı belirtir. Başlangıç verilmezse 0.

Ne zaman kullanılır

Sayısal bir tampon ayırırken niyeti açıkça belirtmek için.

CODESCRIPT
a = arrayNewFloat(3, 1.5)
plot(arraySum(a))

3 elemanın hepsi 1.5 → toplam 4.5.

CODESCRIPT
a = arrayNewFloat(3, close)
plot(arrayGet(a, 0))

3 eleman geçerli close ile kurulur → 0. eleman o barın close'u (başlangıç bir seri olabilir).

arrayNewInt(size?, start?)

Boş bir tam-sayı dizisi kurar. Bar sayıları, sıra numaraları gibi tam olması gereken değerleri tutmak için kullanılır. Bar bar biriktireceksen `var` ile kurulmalıdır.

boyut adet elemanın hepsi başlangıç değerine eşit yeni dizi.

size
number
Dizinin eleman sayısı.
start
number
Her elemanın başlangıç değeri (opsiyonel; varsayılan 0).

Not

arrayNew ile aynı davranır; tam-sayı dizisi kurma niyetini belirtir. Sayısal saklama ondalıklıdır; değerleri tam-sayı olarak kullanmak size kalır.

Ne zaman kullanılır

Sayaç/indeks gibi tam-sayı değerler tutan bir tampon ayırmayı belirtmek için.

CODESCRIPT
a = arrayNewInt(4, 2)
plot(arraySum(a))

4 elemanın hepsi 2 → toplam 8.

CODESCRIPT
a = arrayNewInt(3, 10)
arraySet(a, 0, 5)
plot(arrayMin(a))

3 eleman 10 ile kurulur, 0. eleman 5 yapılır → en küçük 5.

arrayNewLabel(size?, start?)

Tip-özel dizi yapıcısı (arrayNew ile aynı). Sonuc: Arr(len=0, [])

boyut adet elemanlı yeni etiket (label) dizisi.

size
number
Dizinin eleman sayısı.
start
any
Her elemanın başlangıç değeri (opsiyonel; varsayılan 0).

Not

arrayNew ile aynı davranır; etiket (label) tutmak üzere niyeti belirten tip-özel yapıcıdır. Başlangıç değeri verilmezse elemanlar 0'dır (genelde na/başlangıç verilerek doldurulur).

Ne zaman kullanılır

etiket (label) nesnelerini konum konum tutacak sabit boyutlu bir tampon ayırmak için.

CODESCRIPT
a = arrayNewLabel(2)
plot(arraySize(a))

2 elemanlık dizi ayrıldı.

CODESCRIPT
a = arrayNewLabel(3)
arrayPop(a)
plot(arraySize(a))

3 etiket-yuvası ayrılır, biri çıkarılır (pop) → boyut 2.

arrayNewLine(size?, start?)

Tip-özel dizi yapıcısı (arrayNew ile aynı). Sonuc: Arr(len=0, [])

boyut adet elemanlı yeni çizgi (line) dizisi.

size
number
Dizinin eleman sayısı.
start
any
Her elemanın başlangıç değeri (opsiyonel; varsayılan 0).

Not

arrayNew ile aynı davranır; çizgi (line) tutmak üzere niyeti belirten tip-özel yapıcıdır. Başlangıç değeri verilmezse elemanlar 0'dır (genelde na/başlangıç verilerek doldurulur).

Ne zaman kullanılır

çizgi (line) nesnelerini konum konum tutacak sabit boyutlu bir tampon ayırmak için.

CODESCRIPT
a = arrayNewLine(2)
plot(arraySize(a))

2 elemanlık dizi ayrıldı.

CODESCRIPT
a = arrayNewLine(4)
arrayRemove(a, 0)
plot(arraySize(a))

4 çizgi-yuvası ayrılır, 0. eleman silinir → boyut 3.

arrayNewLinefill(size?, start?)

Tip-özel dizi yapıcısı (arrayNew ile aynı). Sonuc: Arr(len=0, [])

boyut adet elemanlı yeni çizgi-dolgu (linefill) dizisi.

size
number
Dizinin eleman sayısı.
start
any
Her elemanın başlangıç değeri (opsiyonel; varsayılan 0).

Not

arrayNew ile aynı davranır; çizgi-dolgu (linefill) tutmak üzere niyeti belirten tip-özel yapıcıdır. Başlangıç değeri verilmezse elemanlar 0'dır (genelde na/başlangıç verilerek doldurulur).

Ne zaman kullanılır

çizgi-dolgu (linefill) nesnelerini konum konum tutacak sabit boyutlu bir tampon ayırmak için.

CODESCRIPT
a = arrayNewLinefill(2)
plot(arraySize(a))

2 elemanlık dizi ayrıldı.

CODESCRIPT
a = arrayNewLinefill(2)
arrayClear(a)
plot(arraySize(a))

2 linefill-yuvası ayrılır, sonra dizi boşaltılır → boyut 0.

arrayNewString(size?, start?)

Metin dizisi. Sonuc: Arr(len=5, ['', '', '', ''])

boyut adet elemanın hepsi başlangıç metnine eşit yeni dizi.

size
number
Dizinin eleman sayısı.
start
string
Her elemanın başlangıç metni (opsiyonel; verilmezse boş metin "").

Not

Metin dizisi kurar. Diğer arrayNew ailelerinden farkı: başlangıç verilmezse eleman 0 değil BOŞ METİN ("") olur.

Ne zaman kullanılır

Metin (etiket/sembol adı) tutan sabit boyutlu bir tampon ayırmak için.

CODESCRIPT
a = arrayNewString(2)
plot(arrayGet(a, 0) == "" ? 1 : 0)

Başlangıç verilmedi → elemanlar boş metin.

CODESCRIPT
a = arrayNewString(2, "AL")
arraySet(a, 1, "SAT")
plot(arrayIndexOf(a, "SAT"))

İki eleman "AL" ile kurulur, 1. eleman "SAT" yapılır → "SAT" 1. konumda.

arrayNewTable(size?, start?)

Tip-özel dizi yapıcısı (arrayNew ile aynı). Sonuc: Arr(len=0, [])

boyut adet elemanlı yeni tablo (table) dizisi.

size
number
Dizinin eleman sayısı.
start
any
Her elemanın başlangıç değeri (opsiyonel; varsayılan 0).

Not

arrayNew ile aynı davranır; tablo (table) tutmak üzere niyeti belirten tip-özel yapıcıdır. Başlangıç değeri verilmezse elemanlar 0'dır (genelde na/başlangıç verilerek doldurulur).

Ne zaman kullanılır

tablo (table) nesnelerini konum konum tutacak sabit boyutlu bir tampon ayırmak için.

CODESCRIPT
a = arrayNewTable(2)
plot(arraySize(a))

2 elemanlık dizi ayrıldı.

CODESCRIPT
a = arrayNewTable(1)
b = arrayNewTable(2)
arrayConcat(a, b)
plot(arraySize(a))

1'lik ve 2'lik iki tablo-dizisi birleştirilir → boyut 3.

arrayPercentRank(array, index)

i. değerin yüzdelik rütbesi (0-100).

i. elemanın 0–100 arası yüzdelik rütbesi; indeks geçersiz/sayısal-değilse na; 2'den az sayısal elemanda 0.

array
array
Sıralama içinde konum aranan dizi.
index
number
Yüzdelik rütbesi hesaplanacak elemanın indeksi.

Not

Verilen elemanın, diziye göre kaçıncı yüzdelikte olduğunu söyler: kendisi dahil kaç eleman ondan küçük ya da eşit. 0 = en küçük, 100 = en büyük.

Ne zaman kullanılır

Bir değerin geçmiş dağılım içindeki göreli konumunu ölçmek için (bu okuma tarihsel olarak ne kadar yüksek).

CODESCRIPT
a = arrayFrom(10, 20, 30, 40, 50)
plot(arrayPercentRank(a, 2))

30 değeri diziye göre %50 yüzdelikte.

CODESCRIPT
a = arrayFrom(10, 20, 30, 40, 50)
plot(arrayPercentRank(a, 4))

En büyük eleman (50, indeks 4) diziye göre %100 yüzdelikte.

arrayPercentileLinearInterpolation(array, percent)

Doğrusal-enterpolasyon yüzdelik. Sonuc: 2.5

Doğrusal enterpolasyonlu yüzdelik değeri; boşsa na.

array
array
Yüzdelik alınacak dizi.
percent
number
0–100 arası yüzdelik (opsiyonel; varsayılan 50 = medyan).

Not

Sıralanmış değerler arasında konumu doğrusal enterpolasyonla bulur; sonuç dizideki gerçek bir eleman olmayabilir. Daha yumuşak/kesintisiz yüzdelik verir.

Ne zaman kullanılır

Bir dağılımda yumuşak yüzdelik eşiği istediğinde (ör. dinamik %90 seviyesi, medyan).

CODESCRIPT
a = arrayFrom(1, 2, 3, 4)
plot(arrayPercentileLinearInterpolation(a, 50))

%50 yüzdelik (medyan) = 2.5.

CODESCRIPT
a = arrayFrom(1, 2, 3, 4)
plot(arrayPercentileLinearInterpolation(a, 25))

%25 yüzdelik, doğrusal ara-değerle = 1.75 (medyandan farklı bir dilim).

arrayPercentileNearestRank(array, percent)

En-yakın-rütbe yüzdelik.

En-yakın-rütbe yöntemiyle yüzdelik değeri; boşsa na.

array
array
Yüzdelik alınacak dizi.
percent
number
0–100 arası yüzdelik (opsiyonel; varsayılan 50).

Not

Sıralı dizide yüzdeye karşılık gelen rütbeyi yukarı yuvarlar ve o konumdaki GERÇEK elemanı verir; ara değer üretmez.

Ne zaman kullanılır

Yüzdelik sonucunun mutlaka dizideki gerçek bir değer olmasını istediğinde.

CODESCRIPT
a = arrayFrom(1, 2, 3, 4)
plot(arrayPercentileNearestRank(a, 50))

%50 en-yakın-rütbe → dizideki gerçek değer 2.

CODESCRIPT
a = arrayFrom(10, 20, 30, 40, 50)
plot(arrayPercentileNearestRank(a, 90))

%90 en-yakın-rütbe → üst uçtaki gerçek değer 50.

arrayPop(array)

Dizinin son ögesini çıkarır ve o ögeyi verir. Dizi bir kısalır. En son eklenene önce erişmek istediğinde kullanılır.

Çıkarılan son eleman; dizi boşsa na.

array
array
Son elemanı çıkarılacak dizi.

Not

Diziyi bir eleman kısaltır ve çıkardığı değeri verir. Boş dizide çökmez, na döner.

Ne zaman kullanılır

Yığın (stack) mantığında son ekleneni geri almak için.

CODESCRIPT
a = arrayFrom(1, 2, 3)
x = arrayPop(a)
plot(x)

Son eleman çıkarılıp döner: 3.

CODESCRIPT
a = arrayFrom(1, 2, 3, 4)
arrayPop(a)
arrayPop(a)
plot(arrayLast(a))

Son eleman iki kez çıkarılır (4, sonra 3) → kalan son eleman 2 (LIFO).

arrayPush(array, value)

Dizinin sonuna öge ekler ve yeni boyutu verir. Bar bar biriken değerleri toplamak için kullanılır. ⚠ Dizi barlar boyunca yaşasın istiyorsanız `var` ile kurmalısınız, yoksa her barda yeniden boşalır.

Ekleme sonrası yeni eleman sayısı.

array
array
Elemanın ekleneceği dizi.
value
any
Sona eklenecek değer.

Not

Diziyi bir eleman büyütür. Sürekli birikim (log, sonuç listesi) için temel araçtır.

Ne zaman kullanılır

Diziye bar bar sonuç biriktirmek için. Baştan eklemek istiyorsanız arrayUnshift kullanın.

CODESCRIPT
a = arrayNew(0)
arrayPush(a, close)
plot(arraySize(a))

Her bar close eklenir; boyut bar sayısıyla birlikte artar.

CODESCRIPT
var sinyaller = arrayNew(0)
if crossover(close, sma(close, 20)) {
  arrayPush(sinyaller, close)
}
plot(arraySize(sinyaller))

Yalnız 20-SMA yukarı kesişiminde close eklenir; boyut o ana dek oluşan sinyal sayısıdır.

arrayRange(array)

Maks - min farkı.

En büyük ile en küçük sayısal eleman farkı (max - min); boşsa na.

array
array
Aralığı ölçülecek dizi.

Not

Yayılımın en basit ölçüsü; tek bir uç değere karşı çok hassastır.

Ne zaman kullanılır

Bir dizinin uçları arasındaki toplam mesafeyi hızlıca görmek için.

CODESCRIPT
a = arrayFrom(3, 7, 1)
plot(arrayRange(a))

7 - 1 = 6.

CODESCRIPT
a = arrayFrom(-5, 0, 5, 10)
plot(arrayRange(a))

En büyük - en küçük = 10 - (-5) = 15 (negatif değerlerle de çalışır).

arrayRemove(array, i)

Dizinin belirli sırasındaki ögeyi çıkarır ve o ögeyi verir; sonrasındaki ögeler bir sıra kayar. Artık geçerli olmayan bir kaydı listeden düşürmek için kullanılır.

Çıkarılan eleman; indeks dizi dışındaysa na.

array
array
Eleman çıkarılacak dizi.
i
number
Çıkarılacak indeks (negatif = sondan).

Not

Belirtilen konumdaki elemanı çıkarır, sonraki elemanlar sola kayar ve çıkarılan değeri verir.

Ne zaman kullanılır

Diziden belirli bir konumdaki elemanı silmek için. Baş/son için arrayShift/arrayPop.

CODESCRIPT
a = arrayFrom(5, 6, 7)
x = arrayRemove(a, 1)
plot(x)

1. eleman çıkarılıp döner: 6.

CODESCRIPT
a = arrayFrom(5, 6, 7)
arrayRemove(a, 0)
plot(arrayFirst(a))

0. eleman (5) silinir, kalanlar öne kayar → yeni ilk eleman 6.

arrayReverse(array)

Sırayı ters çevirir (yerinde).

Değer döndürmez (na); dizinin sırasını yerinde ters çevirir.

array
array
Ters çevrilecek dizi.

Not

Eleman sırasını başa-son ters çevirir; diziyi değiştirir.

Ne zaman kullanılır

Artan sıralı bir diziyi azalana çevirmek ya da en-eski-ilk listeyi en-yeni-ilk yapmak için.

CODESCRIPT
a = arrayFrom(1, 2, 3)
arrayReverse(a)
plot(arrayFirst(a))

Sıra ters çevrildi → ilk eleman artık 3.

CODESCRIPT
a = arrayFrom(1, 2, 3, 4)
arrayReverse(a)
plot(arrayLast(a))

Sıra ters çevrilir → son eleman artık baştaki 1.

arraySet(array, i, value)

Dizinin belirli sırasındaki ögeyi değiştirir; yeni dizi üretmez, var olanı günceller. Sıra sıfırdan başlar.

Değer döndürmez (na); diziyi yerinde değiştirir.

array
array
Değiştirilecek dizi.
i
number
Yazılacak indeks (negatif = sondan).
value
any
Yerine konacak değer.

Not

Var olan bir konumu değiştirir; boyutu artırmaz. İndeks dizi dışındaysa sessizce hiçbir şey yapmaz.

Ne zaman kullanılır

Önceden ayrılmış bir dizinin belirli konumunu güncellemek için. Sona eklemek istiyorsanız arrayPush kullanın.

CODESCRIPT
a = arrayNew(3, 0)
arraySet(a, 1, 9)
plot(arraySum(a))

1. eleman 9 yapıldı, diğerleri 0 → toplam 9.

CODESCRIPT
a = arrayNew(3, 0)
arraySet(a, 0, high)
arraySet(a, 2, low)
plot(arrayGet(a, 0) - arrayGet(a, 2))

0. elemana high, 2.'ye low yazılır; farkları o barın aralığıdır (high - low).

arrayShift(array)

Dizinin ilk ögesini çıkarır ve o ögeyi verir; kalan ögeler bir sıra öne kayar. En eskiyi önce işlemek istediğinde kullanılır — sondan alan `arrayPop` ile karşıt çalışır.

Çıkarılan ilk eleman; dizi boşsa na.

array
array
İlk elemanı çıkarılacak dizi.

Not

Baştan eleman alır ve kalanları öne kaydırır. Kuyruk (FIFO) mantığında kullanılır.

Ne zaman kullanılır

En eski elemanı bırakıp sabit uzunlukta kayan pencere tutmak için (push + shift).

CODESCRIPT
a = arrayFrom(1, 2, 3)
x = arrayShift(a)
plot(x)

İlk eleman çıkarılıp döner: 1.

CODESCRIPT
a = arrayFrom(10, 20, 30)
arrayShift(a)
plot(arrayFirst(a))

Baştan bir eleman atılır (10) → yeni ilk eleman 20.

arraySize(array)

Dizide kaç öge olduğunu verir. Döngü sınırı olarak ya da dizinin boş olup olmadığını anlamak için kullanılır; boş dizide sıfır döner.

Dizideki eleman sayısı.

array
array
Ölçülecek dizi.

Not

Boş dizide 0 döner. Döngü sınırı ve boşluk kontrolü için kullanılır.

Ne zaman kullanılır

Diziyi baştan sona dolaşmadan önce sınırı bilmek ya da boş olup olmadığını denetlemek için.

CODESCRIPT
a = arrayFrom(5, 6, 7)
plot(arraySize(a))

3 eleman.

CODESCRIPT
var w = arrayNew(0)
arrayPush(w, close)
if arraySize(w) > 20 {
  arrayShift(w)
}
plot(arraySize(w) == 20 ? 1 : 0)

20 barlık kayan pencere dolunca 1 (hazır), ilk 20 barda 0 — ısınma kapısı.

arraySlice(array, start, end?)

Alt-dizi kopyası (başla..bitir) — bağımsız kopya (view/pencere değil, orijinali etkilemez). Sonuc: Arr(len=3, [3.0, 1.0, 2.0])

başla..bitir aralığının yeni bir kopya dizisi.

array
array
Kaynak dizi (değişmez).
start
number
Başlangıç indeksi (dahil; negatif = sondan).
end
number
Bitiş indeksi (hariç; opsiyonel, varsayılan dizi sonu; negatif = sondan).

Not

Kaynağı DEĞİŞTİRMEZ; bağımsız bir alt-dizi kopyası verir. bitir hariç tutulur. Not: view/pencere DEĞİLDİR — dönen dizi orijinalden TAMAMEN bağımsızdır, birini değiştirmek diğerini etkilemez (iki yönde de).

Ne zaman kullanılır

Bir dizinin bir bölümünü ayrı olarak işlemek için (son N eleman, ilk yarı).

Kaynağı DEĞİŞTİRMEZ; bağımsız bir alt-dizi kopyası verir. bitir hariç tutulur.

CODESCRIPT
a = arrayFrom(0, 1, 2, 3, 4)
b = arraySlice(a, 1, 3)
plot(arraySize(b))

1 ve 2. elemanlar → 2 elemanlı kopya.

CODESCRIPT
a = arrayFrom(1, 2, 3, 4, 5)
b = arraySlice(a, 2)
plot(arraySum(b))

2. elemandan sona (bitiş verilmedi) → 3,4,5; toplam 12.

arraySome(array)

En az bir eleman doğru mu. Sonuc: True

En az bir eleman doğru/sıfırdan-farklı ise true; hiçbiri değilse (ya da boşsa) false.

array
array
Denetlenecek dizi.

Not

Her elemanı doğruluk olarak değerlendirir; ilk doğru elemanda true olur. Boş dizide false.

Ne zaman kullanılır

Bir dizideki koşullardan en az birinin sağlandığını kontrol etmek için (herhangi biri geçti mi).

CODESCRIPT
a = arrayFrom(0, 0, 1)
plot(arraySome(a) ? 1 : 0)

Bir eleman sıfırdan farklı → true.

CODESCRIPT
a = arrayFrom(0, 0, 0)
plot(arraySome(a) ? 1 : 0)

Tüm elemanlar 0 → arraySome false (0). Sıfırdan farklı hiç eleman yok.

arraySort(array, ascending?)

Sayısal sıralar (yerinde; artan vars. true).

Değer döndürmez (na); diziyi yerinde sıralar.

array
array
Sıralanacak dizi.
ascending
bool
Artan (küçükten büyüğe) için true, azalan için false (opsiyonel; varsayılan true). Adlandırılmış argüman olarak İngilizce `asc` de kullanılabilir (birebir aynı).

Not

Sadece sayısal elemanları sıralar; sayısal-olmayanlar sona, göründükleri sırayla eklenir. Diziyi değiştirir — kopya istiyorsanız önce arrayCopy.

Ne zaman kullanılır

Değerleri büyüklüğüne göre dizmek için — yüzdelik/medyan öncesi, en iyi/en kötü N seçimi.

CODESCRIPT
a = arrayFrom(30, 10, 20)
arraySort(a, true)
plot(arrayFirst(a))

Artan sıralandı → ilk eleman en küçük: 10.

CODESCRIPT
a = arrayFrom(30, 10, 20, 40)
arraySort(a, false)
plot(arrayFirst(a))

Azalan sıralama (ikinci argüman false) → ilk eleman en büyük: 40.

arraySortIndices(array, ascending?)

Sıralayan indeks dizisi (en-iyi-N için). Adlandırılmış argüman olarak `artan` veya İngilizce `asc` kullanılabilir (ikisi de aynı). Sonuc: Arr(len=3, [0.0, 2.0, 1.0])

Diziyi sıralayacak indekslerin dizisi; dizinin kendisi değişmez.

array
array
Sıralama düzeni çıkarılacak dizi (değişmez).
ascending
bool
Artan için true, azalan için false (opsiyonel; varsayılan true). Adlandırılmış argüman olarak İngilizce `asc` de kullanılabilir (birebir aynı; kardeşi arraySort ile aynı adlar).

Not

Diziyi bozmadan, sıralı hale getirecek eleman konumlarını verir. Sadece sayısal elemanlar sıralamaya girer. En-iyi/en-kötü N seçmek için birebir uygundur.

Ne zaman kullanılır

Bir diziyi bozmadan sıralama düzenini almak ya da paralel bir diziyi aynı düzende hizalamak için.

CODESCRIPT
a = arrayFrom(30, 10, 20)
b = arraySortIndices(a, true)
plot(arrayGet(b, 0))

En küçük değer (10) 1. konumda → ilk indeks 1.

CODESCRIPT
a = arrayFrom(30, 10, 20)
b = arraySortIndices(a, false)
plot(arrayGet(b, 0))

Azalan sırada en büyük değer (30) 0. konumdadır → ilk indeks 0. Dizinin kendisi değişmez.

arrayStandardize(array)

Z-skor: (x-ortalama)/std (yeni dizi). Sonuc: Arr(len=3, [1.0, -1.0, 0.0])

Her elemanı z-skoruna (x−ortalama)/std çeviren YENİ dizi; sapma 0 ise ya da 2'den az eleman varsa hepsi 0.

array
array
Standartlaştırılacak dizi.

Not

Değerleri ortalaması 0, standart sapması 1 olacak şekilde ölçekler (örneklem std ile). Orijinali değiştirmez.

Ne zaman kullanılır

Farklı ölçekteki serileri karşılaştırılabilir hale getirmek ya da uç sapmaları (kaç std uzak) ölçmek için.

Sınırlar

Tüm elemanlar eşitse (std 0) ya da 2'den az elemansa sonuç tümüyle 0'dır.

CODESCRIPT
a = arrayFrom(1, 2, 3)
b = arrayStandardize(a)
plot(arrayGet(b, 2))

En büyük eleman ortalamadan +1 std uzakta → 1.

CODESCRIPT
a = arrayFrom(10, 20, 30, 40, 50)
b = arrayStandardize(a)
plot(arrayGet(b, 0))

İlk eleman (10, en küçük) ortalamanın ≈1.26 standart sapma altında → z-skoru ≈ -1.26.

arrayStdev(array, biased?)

Standart sapma (varyansın karekökü). Varsayılan popülasyon ÷N; biased=false verilirse örneklem ÷(N-1). Sonuc: 0.8164965809

Standart sapma (varyansın karekökü); varsayılan popülasyon (÷N), biased=false ile örneklem (÷N-1); 2'den az sayısal elemanda na.

array
array
Standart sapması alınacak dizi.
biased
bool
İsteğe bağlı. true (varsayılan) popülasyon böleni ÷N; false örneklem böleni ÷(N-1).

Not

Değerlerle aynı birimde yayılım verir; arrayVariance'ın karekökü. Varsayılan popülasyon böleni ÷N; biased=false ile örneklem.

Ne zaman kullanılır

Bir dizideki değerlerin dağınıklığını değerlerle aynı birimde ölçmek için (volatilite benzeri).

Değerlerle aynı birimde yayılım verir; arrayVariance'ın karekökü.

CODESCRIPT
a = arrayFrom(2, 4, 4, 4, 5, 5, 7, 9)
plot(arrayStdev(a))

Örneklem standart sapması ≈ 2.14.

CODESCRIPT
var w = arrayNew(0)
arrayPush(w, close)
if arraySize(w) > 20 {
  arrayShift(w)
}
plot(arrayStdev(w))

Son 20 close'un standart sapması — kayan oynaklık ölçüsü.

arraySum(array)

Dizideki sayıların toplamını verir. Ortalama almak için `arraySize` ile birlikte kullanılır. Boş dizide sıfır döner.

Sayısal elemanların toplamı; sayısal eleman yoksa 0.

array
array
Toplanacak dizi.

Not

Sadece sayıları toplar; metin/na elemanları atlar. Boş dizide 0 verir.

Ne zaman kullanılır

Bir diziye biriktirdiğiniz değerlerin toplamını almak için (ağırlık toplamı, kümülatif skor).

CODESCRIPT
a = arrayFrom(10, 20, 30)
plot(arraySum(a))

Toplam: 60.

CODESCRIPT
a = arrayFrom(close > open ? 1 : 0, close[1] > open[1] ? 1 : 0, close[2] > open[2] ? 1 : 0)
plot(arraySum(a))

Son 3 barın kaçında close>open olduğunu sayar (0 ile 3 arası).

arrayUnshift(array, value)

Dizinin başına öge ekler ve yeni boyutu verir; var olan ögeler bir sıra kayar. En yeni değerin başta durmasını istediğinde kullanılır.

Ekleme sonrası yeni eleman sayısı.

array
array
Elemanın başına ekleneceği dizi.
value
any
Başa eklenecek değer.

Not

Diziyi baştan büyütür; mevcut elemanlar bir konum sağa kayar.

Ne zaman kullanılır

En yeni değeri başta tutmak istediğinde (en-yeni-ilk sıralı liste).

CODESCRIPT
a = arrayFrom(2, 3)
arrayUnshift(a, 1)
plot(arrayFirst(a))

Yeni ilk eleman: 1.

CODESCRIPT
a = arrayFrom(3)
arrayUnshift(a, 2)
arrayUnshift(a, 1)
plot(arrayGet(a, 0))

Başa sırayla 2 ve 1 eklenir → dizi 1,2,3; ilk eleman 1.

arrayVariance(array, biased?)

Varyans (yayılım). Varsayılan popülasyon ÷N; biased=false verilirse örneklem ÷(N-1). Sonuc: 0.6666666667

Varyans; varsayılan popülasyon (÷N), biased=false ile örneklem (÷N-1); 2'den az sayısal elemanda na.

array
array
Varyansı alınacak dizi.
biased
bool
İsteğe bağlı. true (varsayılan) popülasyon böleni ÷N; false örneklem böleni ÷(N-1).

Not

Dağılımın yayılımını ölçer. Varsayılan popülasyon böleni ÷N; biased=false ile örneklem böleni ÷(N-1). Karekökü arrayStdev'dir.

Ne zaman kullanılır

Bir diziye toplanan değerlerin ne kadar dağınık olduğunu ölçmek için.

Sınırlar

En az 2 sayısal eleman ister; tek eleman ya da boşta na.

Dağılımın yayılımını ölçer; n-1 bölen (örneklem) kullanır. Karekökü arrayStdev'dir.

CODESCRIPT
a = arrayFrom(2, 4, 6)
plot(arrayVariance(a))

Örneklem varyansı: 4.

CODESCRIPT
a = arrayFrom(10, 10, 10, 10)
plot(arrayVariance(a))

Tüm elemanlar eşit → dağılım yok → varyans 0.

split(text, separator?)

Metni ayraçtan dizi'ye böler. Sonuc: Arr(len=3, ['a', 'b', 'c'])

Parçaları taşıyan metin dizisi.

text
string
Bölünecek metin.
separator
string
Bölme ayracı (opsiyonel; varsayılan ","; boş metin verilirse her karakter ayrı eleman olur).

Not

Metni ayraçtan bölüp dizi verir. Ayraç verilmezse virgül kullanılır; boş ayraç metni harflere ayırır.

Ne zaman kullanılır

Virgülle ayrılmış bir sembol/parametre listesini tek tek işlenebilir dizi elemanlarına çevirmek için.

CODESCRIPT
a = split("AL,SAT,BEKLE", ",")
plot(arraySize(a))

3 parçaya bölündü.

CODESCRIPT
p = split("AL,SAT,BEKLE", ",")
plot(arrayIndexOf(p, "SAT"))

Metin virgülden bölünür; parçalar arasında "SAT" 1. konumda (ayrıştır, sonra arayın).