Sumber daya yang dimuat... Pemuatan...

FMZ PINE Script Doc

Penulis:Penemu Kuantitas - Mimpi Kecil, Dibuat: 2022-04-28 16:05:05, Diperbarui: 2024-10-12 17:25:27

nilai indikator semakin panjang panah yang ditarik.

plotarrow(series, title, colorup, colordown, offset, minheight, maxheight, editable, show_last, display)

Contoh

codiff = close - open
plotarrow(codiff, colorup=color.new(color.teal,40), colordown=color.new(color.orange, 40), overlay=true)

Argumen

  • series(serangkaian int/float) Serangkaian data yang akan digambarkan sebagai panah.
  • title(const string) Judul plot.
  • colorup(warna seri) Warna panah ke atas.
  • colordown(warna seri) Warna panah ke bawah.
  • offset(series int) Menggeser panah ke kiri atau ke kanan pada jumlah batang yang diberikan.
  • minheight(input int) Tingkat panah minimal dalam piksel.
  • maxheight(input int) Tinggi panah maksimum dalam piksel. default adalah 100.
  • editable(const bool) Jika benar maka gaya plotarrow akan dapat diedit dalam dialog Format.
  • show_last(input int) Jika ditetapkan, mendefinisikan jumlah panah (dari bar terakhir kembali ke masa lalu) untuk digambarkan pada grafik.
  • display(plot_display) Kontrol di mana plot ditampilkan. Nilai yang mungkin adalah: display.none, display.all. Default adalah display.all.
  • overlay(const bool) adalah argumen ekstensi dari platform FMZ, digunakan untuk mengatur fungsi saat ini untuk ditampilkan pada gambar utama (set to true) atau sub-image (set to false), nilai default adalah false.overlayargumen dalamstrategyatauindicatorJikastrategyatauindicatortidak mengaturoverlayArgumen, itu akan diproses sesuai dengan argumen default.

Lihat juga plot plotshape plotchar barcolor bgcolor

Array

array.pop

Fungsi ini menghapus elemen terakhir dari array dan mengembalikan nilainya.

array.pop(id)

Contoh

// array.pop example
a = array.new_float(5,high)
removedEl = array.pop(a)
plot(array.size(a))
plot(removedEl)

PengembalianNilai elemen yang dihapus.

Argumen

  • id(setiap jenis array) Sebuah objek array.

Lihat juga array.new_float array.set array.push array.remove array.insert array.shift

array.shift

Fungsi ini menghapus elemen pertama array dan mengembalikan nilainya.

array.shift(id)

Contoh

// array.shift example
a = array.new_float(5,high)
removedEl = array.shift(a)
plot(array.size(a))
plot(removedEl)

PengembalianNilai elemen yang dihapus.

Argumen

  • id(setiap jenis array) Sebuah objek array.

Lihat juga array.unshift array.set array.push array.remove array.includes

array.unshift

Fungsi memasukkan nilai di awal array.

array.unshift(id, value)

Contoh

// array.unshift example
a = array.new_float(5, 0)
array.unshift(a, open)
plot(array.get(a, 0))

Argumen

  • id(setiap jenis array) Sebuah objek array.
  • value (series <type of the array's elements>) Nilai untuk ditambahkan ke awal array.

Lihat juga array.shift array.set array.insert array.remove array.indexof

array.size

Fungsi ini mengembalikan jumlah elemen dalam array.

array.size(id)

Contoh

// array.size example
a = array.new_float(0)
for i = 0 to 9
    array.push(a, close[i])
// note that changes in slice also modify original array
slice = array.slice(a, 0, 5)
array.push(slice, open)
// size was changed in slice and in original array
plot(array.size(a))
plot(array.size(slice))

PengembalianJumlah elemen dalam array.

Argumen

  • id(setiap jenis array) Sebuah objek array.

Lihat juga array.new_float array.sum array.slice array.sort

array.slice

Fungsi ini membuat bagian dari array yang ada. Jika suatu objek dari bagian berubah, perubahan diterapkan pada array baru dan asli.

array.slice(id, index_from, index_to)

Contoh

// array.slice example
a = array.new_float(0)
for i = 0 to 9
    array.push(a, close[i])
// take elements from 0 to 4
// *note that changes in slice also modify original array 
slice = array.slice(a, 0, 5)
plot(array.sum(a) / 10)
plot(array.sum(slice) / 5)

PengembalianSebuah salinan dangkal dari irisan array.

Argumen

  • id(setiap jenis array) Sebuah objek array.
  • index_from(seri int) Indeks berbasis nol untuk memulai ekstraksi.
  • index_to(seri int) indeks berbasis nol sebelum yang untuk mengakhiri ekstraksi. fungsi ekstraksi sampai tetapi tidak termasuk elemen dengan indeks ini.

Lihat juga array.new_float array.get array.sort

array.abs

Mengembalikan array yang berisi nilai absolut dari setiap elemen dalam array asli.

array.abs(id)

Argumen

  • id(int[]/float[]) Objek array.

Lihat juga array.new_float array.insert array.slice array.reverse order.ascending order.descending

array.binary_search

Fungsi ini mengembalikan indeks nilai, atau -1 jika nilai tidak ditemukan.

array.binary_search(id, val)

Contoh

// array.binary_search
a = array.from(5, -2, 0, 9, 1)
array.sort(a) // [-2, 0, 1, 5, 9]
position = array.binary_search(a, 0) // 1
plot(position)

Argumen

  • id(int[]/float[]) Objek array.
  • val(seri int/float) Nilai untuk dicari dalam array.

PengamatanPencarian biner bekerja pada array yang sudah disortir dalam urutan naik. Ini dimulai dengan membandingkan elemen di tengah array dengan nilai target. Jika elemen cocok dengan nilai target, posisinya dalam array dikembalikan. Jika nilai elemen lebih besar dari nilai target, pencarian dilanjutkan di bagian bawah array. Jika nilai elemen kurang dari nilai target, pencarian dilanjutkan di bagian atas array. Dengan melakukan ini secara rekursif, algoritma secara progresif menghilangkan bagian array yang lebih kecil dan lebih kecil di mana nilai target tidak dapat terletak.

Lihat juga array.new_float array.insert array.slice array.reverse order.ascending order.descending

array.binary_search_leftmost

Fungsi ini mengembalikan indeks nilai jika ditemukan. Ketika nilai tidak ditemukan, fungsi ini mengembalikan indeks elemen terkecil berikutnya di sebelah kiri dari tempat nilai berada jika berada di array.

array.binary_search_leftmost(id, val)

Contoh

// array.binary_search_leftmost
a = array.from(5, -2, 0, 9, 1)
array.sort(a) // [-2, 0, 1, 5, 9]
position = array.binary_search_leftmost(a, 3) // 2
plot(position)

Argumen

  • id(int[]/float[]) Objek array.
  • val(seri int/float) Nilai untuk dicari dalam array.

PengamatanPencarian biner bekerja pada array yang sudah disortir dalam urutan naik. Ini dimulai dengan membandingkan elemen di tengah array dengan nilai target. Jika elemen cocok dengan nilai target, posisinya dalam array dikembalikan. Jika nilai elemen lebih besar dari nilai target, pencarian dilanjutkan di bagian bawah array. Jika nilai elemen kurang dari nilai target, pencarian dilanjutkan di bagian atas array. Dengan melakukan ini secara rekursif, algoritma secara progresif menghilangkan bagian array yang lebih kecil dan lebih kecil di mana nilai target tidak dapat terletak.

Lihat juga array.new_float array.insert array.slice array.reverse order.ascending order.descending

array.binary_search_rightmost

Fungsi ini mengembalikan indeks nilai jika ditemukan. Ketika nilai tidak ditemukan, fungsi ini mengembalikan indeks elemen ke kanan dari mana nilai akan berada jika berada di array. array harus disortir dalam urutan meningkat.

array.binary_search_rightmost(id, val)

Contoh

// array.binary_search_rightmost
a = array.from(5, -2, 0, 9, 1)
array.sort(a) // [-2, 0, 1, 5, 9]
position = array.binary_search_rightmost(a, 3) // 3
plot(position)

Argumen

  • id(int[]/float[]) Objek array.
  • val(seri int/float) Nilai untuk dicari dalam array.

PengamatanPencarian biner bekerja pada array yang diurutkan dalam urutan naik. Ini dimulai dengan membandingkan elemen di tengah array dengan nilai target. Jika elemen cocok dengan nilai target, posisinya dalam array dikembalikan. Jika nilai elemen lebih besar dari nilai target, pencarian dilanjutkan di bagian bawah array. Jika nilai elemen kurang dari nilai target, pencarian dilanjutkan di bagian atas array. Dengan melakukan ini secara rekursif, algoritma secara progresif menghilangkan bagian array yang lebih kecil dan lebih kecil di mana nilai target tidak dapat terletak.

Lihat juga array.new_float array.insert array.slice array.reverse order.ascending order.descending

array.sort

Fungsi ini menyortir elemen array.

array.sort(id, order)

Contoh

// array.sort example
a = array.new_float(0,0)
for i = 0 to 5
    array.push(a, high[i])
array.sort(a, order.descending)
if barstate.islast
    runtime.log(str.tostring(a))

Argumen

  • id(int[]/float[]/string[]) Sebuah objek array.
  • order(sort_order) Urutan penyortiran: order.ascending (default) atau order.descending.

Lihat juga array.new_float array.insert array.slice array.reverse order.ascending order.descending

array.sort_indices

Mengembalikan array indeks yang, ketika digunakan untuk mengindeks array asli, akan mengakses elemen-elemennya dalam urutan yang disortir.

array.sort_indices(id, order)

Contoh

// array.sort_indices
a = array.from(5, -2, 0, 9, 1)
sortedIndices = array.sort_indices(a) // [1, 2, 4, 0, 3]
indexOfSmallestValue = array.get(sortedIndices, 0) // 1
smallestValue = array.get(a, indexOfSmallestValue) // -2
plot(smallestValue)

Argumen

  • id(int[]/float[]/string[]) Sebuah objek array.
  • order(sort_order) Urutan penyortiran: order.ascending atau order.descending. Opsional. Secara default adalah order.ascending.

Lihat juga array.new_float array.insert array.slice array.reverse order.ascending order.descending

array.clear

Fungsi ini menghapus semua elemen dari array.

array.clear(id)

Contoh

// array.clear example
a = array.new_float(5,high)
array.clear(a)
array.push(a, close)
plot(array.get(a,0))
plot(array.size(a))

Argumen

  • id(setiap jenis array) Sebuah objek array.

Lihat juga array.new_float array.insert array.push array.remove array.pop

array.concat

Fungsi ini digunakan untuk menggabungkan dua array. Ini mendorong semua elemen dari array kedua ke array pertama, dan mengembalikan array pertama.

array.concat(id1, id2)

Contoh

// array.concat example
a = array.new_float(0,0)
b = array.new_float(0,0)
for i = 0 to 4
    array.push(a, high[i])
    array.push(b, low[i])
c = array.concat(a,b)
plot(array.size(a))
plot(array.size(b))
plot(array.size(c))

PengembalianArray pertama dengan elemen gabungan dari array kedua.

Argumen

  • id1(setiap jenis array) Objek array pertama.
  • id2(setiap jenis array) Objek array kedua.

Lihat juga array.new_float array.insert array.slice

array.copy

Fungsi ini membuat salinan array yang sudah ada.

array.copy(id)

Contoh

// array.copy example
length = 5
a = array.new_float(length, close)
b = array.copy(a)
a := array.new_float(length, open)
plot(array.sum(a) / length)
plot(array.sum(b) / length)

PengembalianSalinan array.

Argumen

  • id(setiap jenis array) Sebuah objek array.

Lihat juga array.new_float array.get array.slice array.sort

array.stdev

Fungsi ini mengembalikan standar deviasi dari elemen arrays.

array.stdev(id, biased)

Contoh

// array.stdev example
a = array.new_float(0)
for i = 0 to 9
    array.push(a, close[i])
plot(array.stdev(a))

PengembalianPenyimpangan standar dari elemen array.

Argumen

  • id(int[]/float[]) Objek array.
  • biased(seri bool) Menentukan perkiraan mana yang harus digunakan. Opsional. default adalah benar.

PengamatanJikabiasedadalah benar, fungsi akan menghitung menggunakan estimasi bias dari seluruh populasi, jika salah - estimasi bias dari sampel.

Lihat juga array.new_float array.max array.min array.avg

array.standardize

Fungsi ini mengembalikan array elemen standar.

array.standardize(id)

Contoh

// array.standardize example
a = array.new_float(0)
for i = 0 to 9
    array.push(a, close[i])
b = array.standardize(a)
plot(array.min(b))
plot(array.max(b))

PengembalianArray dari elemen standar.

Argumen

  • id(int[]/float[]) Objek array.

Lihat juga array.max array.min array.mode array.avg array.variance array.stdev

array.variance

Fungsi ini mengembalikan varians dari elemen array.

array.variance(id, biased)

Contoh

// array.variance example
a = array.new_float(0)
for i = 0 to 9
    array.push(a, close[i])
plot(array.variance(a))

PengembalianVarian elemen array.

Argumen

  • id(int[]/float[]) Objek array.
  • biased(seri bool) Menentukan perkiraan mana yang harus digunakan. Opsional. default adalah benar.

PengamatanJikabiasedadalah benar, fungsi akan menghitung menggunakan estimasi bias dari seluruh populasi, jika salah - estimasi bias dari sampel.

Lihat juga array.new_float array.stdev array.min array.avg array.covariance

array.covariance

Fungsi ini mengembalikan kovarian dari dua array.

array.covariance(id1, id2, biased)

Contoh

// array.covariance example
a = array.new_float(0)
b = array.new_float(0)
for i = 0 to 9
    array.push(a, close[i])
    array.push(b, open[i])
plot(array.covariance(a, b))

PengembalianKovarian dari dua array.

Argumen

  • id1(int[]/float[]) Objek array.
  • id2(int[]/float[]) Objek array.
  • biased(seri bool) Menentukan perkiraan mana yang harus digunakan. Opsional. default adalah benar.

PengamatanJikabiasedadalah benar, fungsi akan menghitung menggunakan estimasi bias dari seluruh populasi, jika salah - estimasi bias dari sampel.

Lihat juga array.new_float array.max array.stdev array.avg array.variance

array.fill

Fungsi ini menetapkan elemen array ke nilai tunggal. Jika tidak ada indeks yang ditentukan, semua elemen ditetapkan. Jika hanya indeks awal (default 0) yang disediakan, elemen yang dimulai dari indeks tersebut ditetapkan. Jika kedua argumen indeks digunakan, elemen dari indeks awal hingga tetapi tidak termasuk indeks akhir (default na) ditetapkan.

array.fill(id, value, index_from, index_to)

Contoh

// array.fill example
a = array.new_float(10)
array.fill(a, close)
plot(array.sum(a))

Argumen

  • id(setiap jenis array) Sebuah objek array.
  • value (series <type of the array's elements>) Nilai untuk mengisi array dengan.
  • index_from(seri int) Indeks awal, default adalah 0.
  • index_to(seri int) Indeks akhir, default adalah na. Harus satu lebih besar dari indeks dari elemen terakhir yang akan ditetapkan.

Lihat juga array.new_float array.set array.slice

array.includes

Fungsi mengembalikan true jika nilai ditemukan dalam array, false sebaliknya.

array.includes(id, value)

Contoh

// array.includes example
a = array.new_float(5,high)
p = close
if array.includes(a, high)
    p := open
plot(p)

PengembalianBenar jika nilai ditemukan dalam array, salah jika tidak.

Argumen

  • id(setiap jenis array) Sebuah objek array.
  • value (series <type of the array's elements>) Nilai untuk mencari dalam array.

Lihat juga array.new_float array.indexof array.shift array.remove array.insert

array.insert

Fungsi mengubah isi array dengan menambahkan elemen baru di tempatnya.

array.insert(id, index, value)

Contoh

// array.insert example
a = array.new_float(5, close)
array.insert(a, 0, open)
plot(array.get(a, 5))

Argumen

  • id(setiap jenis array) Sebuah objek array.
  • index(seri int) Indeks di mana nilai harus dimasukkan.
  • value (series <type of the array's elements>) Nilai untuk ditambahkan ke array.

Lihat juga array.new_float array.set array.push array.remove array.pop array.unshift

array.join

Fungsi ini membuat dan mengembalikan string baru dengan mengikat semua elemen array, dipisahkan oleh string pemisah yang ditentukan.

array.join(id, separator)

Contoh

// array.join example
a = array.new_float(5, 5)
runtime.log(array.join(a, ","))

Argumen

  • id(int[]/float[]/string[]) Sebuah objek array.
  • separator(seri string) string yang digunakan untuk memisahkan setiap elemen array.

Lihat juga array.new_float array.set array.insert array.remove array.pop array.unshift

array.lastindexof

Fungsi ini mengembalikan indeks kejadian terakhir nilai, atau -1 jika nilai tidak ditemukan.

array.lastindexof(id, value)

Contoh

// array.lastindexof example
a = array.new_float(5,high)
index = array.lastindexof(a, high)
plot(index)

PengembalianIndeks suatu unsur.

Argumen

  • id(setiap jenis array) Sebuah objek array.
  • value (series <type of the array's elements>) Nilai untuk mencari dalam array.

Lihat juga array.new_float array.set array.push array.remove array.insert

array.max

Fungsi ini mengembalikan nilai terbesar, atau nilai terbesar ke-n dalam array tertentu.

array.max(id, nth)

Contoh

// array.max
a = array.from(5, -2, 0, 9, 1)
secondHighest = array.max(a, 2) // 1
plot(secondHighest)

PengembalianNilai terbesar atau terbesar ke-n dalam array.

Argumen

  • id(int[]/float[]) Objek array.
  • nth(seri int) Nilai terbesar ke-n untuk dikembalikan, di mana nol adalah terbesar. opsional. default adalah nol.

Lihat juga array.new_float array.min array.sum

array.min

Fungsi ini mengembalikan nilai terkecil, atau nilai terkecil ke-n dalam array tertentu.

array.min(id, nth)

Contoh

// array.min
a = array.from(5, -2, 0, 9, 1)
secondLowest = array.min(a, 1) // 0
plot(secondLowest)

PengembalianNilai terkecil atau ke-enam terkecil dalam array.

Argumen

  • id(int[]/float[]) Objek array.
  • nth(seri int) Nilai terkecil ke-n untuk dikembalikan, di mana nol adalah yang terkecil. opsional. default adalah nol.

Lihat juga array.new_float array.max array.sum

array.median

Fungsi ini mengembalikan median dari elemen array.

array.median(id)

Contoh

// array.median example
a = array.new_float(0)
for i = 0 to 9
    array.push(a, close[i])
plot(array.median(a))

PengembalianMedian dari elemen array.

Argumen

  • id(int[]/float[]) Objek array.

Lihat juga array.avg array.variance array.min

array.mode

Fungsi ini mengembalikan modus elemen array. Jika ada beberapa nilai dengan frekuensi yang sama, fungsi ini mengembalikan nilai terkecil.

array.mode(id)

Contoh

// array.mode example
a = array.new_float(0)
for i = 0 to 9
    array.push(a, close[i])
plot(array.mode(a))

PengembalianMode dari elemen array.

Argumen

  • id(int[]/float[]) Objek array.

Lihat juga array.new_float array.avg array.variance array.min

array.percentile_linear_interpolation

Mengembalikan nilai yang persentase nilai array yang ditentukan (persentil) kurang dari atau sama dengan itu, menggunakan interpolasi linier.

array.percentile_linear_interpolation(id, percentage) 

Argumen

  • id(int[]/float[]) Objek array.
  • percentage(seri int/float) Persentase nilai yang harus sama atau lebih kecil dari nilai yang dikembalikan.

PengamatanDalam statistik, persentil adalah persentase item peringkat yang muncul pada atau di bawah skor tertentu. Pengukuran ini menunjukkan persentase skor dalam distribusi frekuensi standar yang lebih rendah dari peringkat persentil yang Anda ukur. Interpolasi linier memperkirakan nilai antara dua peringkat.

Lihat juga array.new_float array.insert array.slice array.reverse order.ascending order.descending

array.percentile_nearest_rank

Mengembalikan nilai yang persentase tertentu dari nilai array (persentil) kurang dari atau sama dengan itu, menggunakan metode peringkat terdekat.

array.percentile_nearest_rank(id, percentage) 

Argumen

  • id(int[]/float[]) Objek array.
  • percentage(seri int/float) Persentase nilai yang harus sama atau lebih kecil dari nilai yang dikembalikan.

PengamatanDalam statistik, persentil adalah persentase dari item peringkat yang muncul pada atau di bawah skor tertentu. Pengukuran ini menunjukkan persentase skor dalam distribusi frekuensi standar yang lebih rendah dari peringkat persentil yang Anda ukur.

Lihat juga array.new_float array.insert array.slice array.reverse order.ascending order.descending

array.percentrank

Mengembalikan peringkat persentil dari nilai dalam array.

array.percentrank(id, index) 

Argumen

  • id(int[]/float[]) Objek array.
  • index(seri int) Nilai untuk menghitung peringkat persentilnya.

PengamatanPercentile rank adalah persentase dari berapa banyak elemen dalam array yang kurang dari atau sama dengan nilai referensi.

Lihat juga array.new_float array.insert array.slice array.reverse order.ascending order.descending

array.range

Fungsi ini mengembalikan perbedaan antara nilai min dan max dari array tertentu.

array.range(id) 

Contoh

// array.range example
a = array.new_float(0)
for i = 0 to 9
    array.push(a, close[i])
plot(array.range(a))

PengembalianPerbedaan antara nilai min dan max dalam array.

Argumen

  • id(int[]/float[]) Objek array.

Lihat juga array.new_float array.min array.max array.sum

array.remove

Fungsi mengubah isi array dengan menghapus elemen dengan indeks yang ditentukan.

array.remove(id, index)

Contoh

// array.remove example
a = array.new_float(5,high)
removedEl = array.remove(a, 0)
plot(array.size(a))
plot(removedEl)

PengembalianNilai elemen yang dihapus.

Argumen

  • id(setiap jenis array) Sebuah objek array.
  • index(seri int) Indeks elemen yang akan dihapus.

Lihat juga array.new_float array.set array.push array.insert array.pop array.shift

array.reverse

Fungsi ini membalikkan array. elemen array pertama menjadi yang terakhir, dan elemen array terakhir menjadi yang pertama.

array.reverse(id)

Contoh

// array.reverse example
a = array.new_float(0)
for i = 0 to 9
    array.push(a, close[i])
plot(array.get(a, 0))
array.reverse(a)
plot(array.get(a, 0))

Argumen

  • id(setiap jenis array) Sebuah objek array.

Lihat juga array.new_float array.sort array.push array.set array.avg

array.from

Fungsi ini mengambil sejumlah variabel argumen dengan salah satu jenis: int, float, bool, string, label, line, color, box, table, linefill, dan mengembalikan array dari tipe yang sesuai.

array.from(arg0, arg1, ...)

Contoh

// array.from_example
arr = array.from("Hello", "World!") // arr (string[]) will contain 2 elements: {Hello}, {World!}.
plot(close)

PengembalianNilai elemen array.

Argumen

  • arg0, arg1, ...(serangkaian int/float/bool/color/string/line/linefill) Array argumen.

array.new

Fungsi ini membuat objek array baru dari<type> elements.

array.new(size, initial_value)

Contoh

// array.new<string> example
a = array.new<string>(1, "Hello, World!")
runtime.log(array.get(a, 0))

Contoh

// array.new<color> example
a = array.new<color>()
array.push(a, color.red)
array.push(a, color.green)
plot(close, color = array.get(a, close > open ? 1 : 0))

Contoh

// array.new<float> example
length = 5
var a = array.new<float>(length, close)
if array.size(a) == length
  array.remove(a, 0)
  array.push(a, close)
plot(array.sum(a) / length, "SMA")

Contoh

// array.new<line> example
// draw last 15 lines
var a = array.new<line>()
array.push(a, line.new(bar_index - 1, close[1], bar_index, close))
if array.size(a) > 15
    ln = array.shift(a)
    line.delete(ln)

PengembalianID dari objek array yang dapat digunakan dalam fungsi array.*( lainnya.

Argumen

  • size(series int) Ukuran awal array. Opsional. default adalah 0.
  • initial_value(seri ) Nilai awal dari semua elemen array. Opsional. default adalah na.

PengamatanIndeks array dimulai dari 0. Jika Anda ingin menginisialisasi array dan menentukan semua elemen pada saat yang sama, maka gunakan fungsi array.from.

Lihat juga array.from array.push array.get array.size array.remove array.shift array.sum

array.new_bool

Fungsi ini menciptakan objek array baru dari elemen jenis bool.

array.new_bool(size, initial_value)

Contoh

// array.new_bool example
length = 5
a = array.new_bool(length, close > open)
plot(array.get(a, 0) ? close : open)

PengembalianID dari objek array yang dapat digunakan dalam fungsi array.*( lainnya.

Argumen

  • size(series int) Ukuran awal array. Opsional. default adalah 0.
  • initial_value(seri bool) Nilai awal dari semua elemen array. Opsional. default adalah na

PengamatanIndeks array dimulai dari 0.

Lihat juga array.new_float array.get array.slice array.sort

array.new_float

Fungsi ini membuat objek array baru dari elemen tipe float.

array.new_float(size, initial_value)

Contoh

// array.new_float example
length = 5
a = array.new_float(length, close)
plot(array.sum(a) / length)

PengembalianID dari objek array yang dapat digunakan dalam fungsi array.*( lainnya.

Argumen

  • size(series int) Ukuran awal array. Opsional. default adalah 0.
  • initial_value(seri int/float) Nilai awal dari semua elemen array. Opsional. default adalah na.

PengamatanIndeks array dimulai dari 0.

Lihat juga array.new_bool array.get array.slice array.sort

array.new_int

Fungsi ini membuat objek array baru dari elemen tipe int.

array.new_int(size, initial_value)

Contoh

// array.new_int example
length = 5
a = array.new_int(length, int(close))
plot(array.sum(a) / length)

PengembalianID dari objek array yang dapat digunakan dalam fungsi array.*( lainnya.

Argumen

  • size(series int) Ukuran awal array. Opsional. default adalah 0.
  • initial_value(series int) Nilai awal dari semua elemen array. Opsional. default adalah na.

PengamatanIndeks array dimulai dari 0.

Lihat juga array.new_float array.get array.slice array.sort

array.new_string

Fungsi ini membuat objek array baru dari elemen jenis string.

array.new_string(size, initial_value)

Contoh

// array.new_string example
length = 5
a = array.new_string(length, "text")
runtime.log(array.get(a, 0))

PengembalianID dari objek array yang dapat digunakan dalam fungsi array.*( lainnya.

Argumen

  • size(series int) Ukuran awal array. Opsional. default adalah 0.
  • initial_value(seri string) Nilai awal dari semua elemen array. Opsional. default adalah na.

PengamatanIndeks array dimulai dari 0.

Lihat juga array.new_float array.get array.slice

array.get

Fungsi ini mengembalikan nilai elemen pada indeks yang ditentukan.

array.get(id, index)

Contoh

// array.get example
a = array.new_float(0)
for i = 0 to 9
  array.push(a, close[i] - open[i])
plot(array.get(a, 9))

PengembalianNilai elemen array.

Argumen

  • id(setiap jenis array) Sebuah objek array.
  • index(seri int) Indeks elemen yang nilainya harus dikembalikan.

Lihat juga array.new_float array.set array.slice array.sort

array.push

Fungsi menambahkan nilai ke array.

array.push(id, value)

Contoh

// array.push example
a = array.new_float(5, 0)
array.push(a, open)
plot(array.get(a, 5))

Argumen

  • id(setiap jenis array) Sebuah objek array.
  • value (series <type of the array's elements>) Nilai elemen yang ditambahkan ke akhir array.

Lihat juga array.new_float array.set array.insert array.remove array.pop array.unshift

array.set

Fungsi ini menetapkan nilai elemen pada indeks yang ditentukan.

array.set(id, index, value) 

Contoh

// array.set example
a = array.new_float(10)
for i = 0 to 9
  array.set(a, i, close[i])
plot(array.sum(a) / 10)

Argumen

  • id(setiap jenis array) Sebuah objek array.
  • index(seri int) Indeks elemen yang akan dimodifikasi.
  • value (series <type of the array's elements>) Nilai baru yang akan ditetapkan.

Lihat juga array.new_float array.get array.slice

array.sum

Fungsi ini mengembalikan jumlah elemen array.

array.sum(id) 

Contoh

// array.sum example
a = array.new_float(0)
for i = 0 to 9
  array.push(a, close[i])
plot(array.sum(a))

PengembalianJumlah elemen array.

Argumen

  • id(int[]/float[]) Objek array.

Lihat juga array.new_float array.max array.min

array.avg

Fungsi ini mengembalikan rata-rata elemen array.

array.avg(id)

Contoh

// array.avg example
a = array.new_float(0)
for i = 0 to 9
  array.push(a, close[i])
plot(array.avg(a))

PengembalianRata-rata elemen array.

Argumen

  • id(int[]/float[]) Objek array.

Lihat juga array.new_float array.max array.min array.stdev

array.indexof

Fungsi ini mengembalikan indeks dari kejadian pertama nilai, atau -1 jika nilai tidak ditemukan.

array.indexof(id, value)

Contoh

// array.indexof example
a = array.new_float(5,high)
index = array.indexof(a, high)
plot(index)

PengembalianIndeks suatu unsur.

Argumen

  • id(setiap jenis array) Sebuah objek array.
  • value (series <type of the array's elements>) Nilai untuk mencari dalam array.

Lihat juga array.lastindexof array.get array.lastindexof array.remove array.insert

strategi

Dalam built-in fungsi yang berkaitan denganstrategy, titik stop loss dan titik take profit didefinisikan sebagai kelipatan dari satu lompatan harga.profitdanlossargumen daristrategy.exitfungsi mewakili stop loss dan mengambil keuntungan dalam poin dan argumenprofitditetapkan menjadi 10, yaitu lompatan harga dikalikan dengan 10 sebagai profit take spread, dan lompatan harga adalah variabel built-insyminfo.mintick.

strategi

Fungsi ini menetapkan sejumlah sifat strategi. Perhatikan bahwa hanyatitle, shorttitle, overlay, pyramiding, default_qty_type, default_qty_valueargumen didukung untuk melewati argumen. argumen lain dapat ditetapkan melalui argumen antarmuka dari strategi bahasa PINE.

strategy(title, shorttitle, overlay, format, precision, scale, pyramiding, calc_on_order_fills, calc_on_every_tick, max_bars_back, backtest_fill_limits_assumption, default_qty_type, default_qty_value, initial_capital, currency, slippage, commission_type, commission_value, process_orders_on_close, close_entries_rule, margin_long, margin_short, explicit_plot_zorder, max_lines_count, max_labels_count, max_boxes_count, risk_free_rate) 

Contoh

strategy("Strategy", overlay = true)

// Enter long by market if current open is greater than previous high.
strategy.entry("Long", strategy.long, 1, when = open > high[1])
// Generate a full exit bracket (profit 10 points, loss 5 points per contract) from the entry named "Long".
strategy.exit("Exit", "Long", profit = 10, loss = 5)

Argumen

  • title(const string) indikator judul yang akan terlihat di Indikator/Strategi widget.
  • shorttitle(const string) indikator judul pendek yang akan terlihat dalam legenda grafik.
  • overlay(const bool) jika benar indikator akan ditambahkan sebagai overlay untuk seri utama. Jika salah - itu akan ditambahkan pada panel grafik terpisah.
  • format(const string) jenis nilai indikator format pada sumbu harga. Nilai yang mungkin adalah: format.inherit, format.price, format.volume.
  • precision(const int) jumlah digit setelah tanda mengambang untuk nilai indikator pada sumbu harga. Harus bilangan bulat non negatif dan tidak lebih besar dari 16. Jika dihilangkan, menggunakan pemformatan dari seri induk. Jika format adalah format.inherit dan argumen ini ditetapkan, maka format menjadi format.price.
  • scale(scale_type) skala harga yang harus dilampirkan indikator. Nilai yang mungkin adalah: scale.right, scale.left, scale.none. Nilai scale.none hanya dapat diterapkan dalam kombinasi dengan pengaturan overlay=true.
  • pyramiding(const int) Jumlah maksimum entri yang diizinkan dalam arah yang sama. Jika nilainya adalah 0, hanya satu pesanan masuk dalam arah yang sama yang dapat dibuka, dan pesanan masuk tambahan ditolak. Nilai default adalah 0.
  • calc_on_order_fills(const bool) Perhitungan order intrabar tambahan satu kali. Jika argumen ditetapkan menjadi true, maka strategi dihitung kembali sekali intrabar setelah order diisi (bukan hanya di dekat bar). Nilai default adalah false.
  • calc_on_every_tick(const bool) Perhitungan strategi intrabar tambahan. Jika argumen adalah true, maka strategi akan dihitung pada setiap tik dalam waktu nyata, bukan pada bar tutup. Argumen ini tidak mempengaruhi perhitungan strategi pada data historis. Nilai default adalah false.
  • max_bars_back(const int) Jumlah bar maksimum yang tersedia untuk strategi untuk referensi historis. Argumen ini diterapkan pada setiap variabel built-in atau pengguna dalam skrip jika ada referensi ke data historis dari variabel dalam kode skrip ([] operator digunakan). ukuran buffer variabel dalam Pine Script biasanya dideteksi secara otomatis. Namun ini tidak mungkin dalam kasus tertentu yang mengapa argumen memungkinkan pengguna untuk mengatur batas bawah nilai ini secara manual. CATATAN: menggunakan fungsi max_bars_back bukan argumen adalah optimal karena hanya berlaku untuk satu variabel.
  • backtest_fill_limits_assumption(const int) Asumsi eksekusi limit order. Limit order diisi intrabar hanya jika harga pasar melebihi level limit order dengan jumlah tick yang ditentukan.
  • default_qty_type(const string) Menentukan apa nilai yang digunakan untukqtynilai mungkin adalah: strategi.fixed untuk kontrak/saham/lot,strategy.cashuntuk jumlah dalam mata uang, atau strategi.percent_of_equity untuk persentase dari ekuitas yang tersedia.
  • default_qty_value(const int/float) Jumlah default untuk perdagangan dalam fungsi strategi.entry atau strategi.order ketika argument qty mereka tidak didefinisikan, dalam satuan yang ditentukan oleh argument yang digunakan dengan argument default_qty_type.
  • currency(const string) Mata uang akun untuk strategi ini. Opsional. Default adalah mata uang yang simbol pada grafik diperdagangkan. Nilai yang mungkin: currency.NONE, currency.USD, currency.EUR, currency.AUD, currency.GBP, currency.NZD, currency.CAD, currency.CHF, currency.HKD, currency.JPY, currency.NOK, currency.SEK, currency.SGD, currency.TRY, currency.ZAR, currency.BTC, currency.ETH, currency.MYR, currency.KRW.
  • slippage(const int) Slippage di ticks untuk ditambahkan/dikurangi dari harga isi pasar beli/jual atau stop order. Jika mintick = 0,01 dan slippage = 5, jumlah slippage akan 5 * 0,01 = 0,05.
  • commission_type(const string) Jenis komisi untuk order. Nilai yang diizinkan adalah: strategy.commission.percent (persentase dari volume kas order), strategy.commission.cash_per_contract (uang yang ditampilkan dalam mata uang rekening per kontrak), strategy.commission.cash_per_order (uang yang ditampilkan dalam mata uang rekening per order).
  • commission_value(const int/float) Nilai komisi untuk pesanan. Tergantung pada jenis yang dipilih (commission_type) termasuk persentase atau uang.
  • process_orders_on_close(const bool) Saat diatur ketrue, menghasilkan upaya tambahan untuk mengeksekusi pesanan setelah sebuah bar ditutup dan perhitungan strategi selesai. Jika pesanan adalah pesanan pasar, emulator broker mengeksekusi mereka sebelum bar berikutnya dibuka. Jika pesanan tergantung pada harga, mereka hanya akan diisi jika kondisi harga terpenuhi. Opsi ini berguna jika Anda ingin menutup posisi pada bar saat ini. Nilai default adalah false.
  • close_entries_rule(const string) Menentukan urutan di mana order ditutup. Nilai yang diizinkan adalah: FIFO atau ANY. FIFO (First-In, First-Out) berarti bahwa ketika beberapa perdagangan terbuka, perdagangan paling awal harus ditutup terlebih dahulu. Aturan ini berlaku untuk saham, berjangka dan forex AS (Aturan Kepatuhan NFA 2-43b). ANY berarti bahwa perdagangan dapat ditutup dalam urutan apa pun; ini diizinkan di forex non-AS. Nilai default adalah FIFO.
  • max_lines_count(const int) Jumlah gambar baris terakhir yang ditampilkan. Nilai default adalah 50 dan maksimum yang diizinkan adalah 500.
  • max_labels_count(const int) Jumlah gambar label terakhir yang ditampilkan Nilai default adalah 50 dan maksimum yang diizinkan adalah 500.
  • max_boxes_count(const int) Jumlah gambar kotak terakhir yang ditampilkan. Nilai default adalah 50 dan maksimum yang diizinkan adalah 500.
  • margin_long(const int/float) Margin long adalah persentase dari harga pembelian sekuritas yang harus ditutupi dengan uang tunai atau jaminan untuk posisi panjang. Harus menjadi angka non-negatif. Opsional. -~~margin_short~~ (const int/float) Margin short adalah persentase dari harga pembelian sekuritas yang harus ditanggung dengan uang tunai atau jaminan untuk posisi pendek. Harus menjadi angka non-negatif. Opsional. default adalah 100.
  • explicit_plot_zorder(const bool) Menentukan urutan di mana plot indikator, mengisi, dan garis ditampilkan. Jika benar, plot akan ditarik berdasarkan urutan di mana mereka muncul dalam kode indikator, masing-masing plot yang lebih baru ditarik di atas yang sebelumnya. Ini hanya berlaku untuk fungsi plot*(), mengisi, dan hline. Opsional.false.
  • initial_capital(const int/float) Jumlah dana yang awalnya tersedia untuk strategi untuk perdagangan, dalam mata uang yang didefinisikan dalamcurrencyOpsional. default adalah 1000000.
  • risk_free_rate(const int/float) Tingkat pengembalian bebas risiko adalah perubahan persentase tahunan dalam nilai investasi dengan risiko minimal atau nol, yang digunakan untuk menghitung rasio Sharpe dan Sortino.

PengamatanSetiap skrip strategi harus memiliki satu panggilan strategi. Kode Pine Script yang menggunakan argumen calc_on_every_tick = true dapat menghitung secara berbeda pada data riwayat dan real-time. Saat menggunakan jenis grafik non-standar sebagai dasar untuk strategi, Anda perlu menyadari bahwa hasilnya akan berbeda. Orde akan dieksekusi pada harga grafik ini (misalnya untuk Heikin Ashi itu akan mengambil harga Heikin Ashi (rata-rata) bukan harga pasar yang sebenarnya).

Lihat juga indicator

strategy.entry

Ini adalah perintah untuk memasuki posisi pasar. Jika pesanan dengan ID yang sama sudah menunggu, dimungkinkan untuk memodifikasi pesanan. Jika tidak ada pesanan dengan ID yang ditentukan, pesanan baru ditempatkan. Untuk menonaktifkan pesanan masuk, perintah strategy.cancel atau strategy.cancel_all harus digunakan. Dibandingkan dengan fungsi strategy.order, fungsi strategy.entry dipengaruhi oleh piramida dan dapat membalikkan posisi pasar dengan benar. Jika kedua argumen limit dan stop adalah NaN, jenis pesanan adalah pesanan pasar.

strategy.entry(id, direction, qty, limit, stop, oca_name, oca_type, comment, when, alert_message) 

Contoh

strategy(title = "simple strategy entry example")
strategy.entry("enter long", strategy.long, 1, when = open > high[1]) // enter long by market if current open great then previous high
strategy.entry("enter short", strategy.short, 1, when = open < low[1]) // enter short by market if current open less then previous low

Argumen

  • id(series string) Argumen yang diperlukan. Pengidentifikasi pesanan. Adalah mungkin untuk membatalkan atau memodifikasi pesanan dengan merujuk pengidentifikasi.
  • direction(strategi_direction) Sebuah argumen yang diperlukan. arah posisi pasar: strategy.long untuk panjang, strategy.short untuk pendek.
  • qty(seri int/float) Argumen opsional. Jumlah kontrak/saham/lot/unit untuk diperdagangkan. Nilai default adalah NaN.
  • limit(seri int/float) Sebuah argumen opsional. Harga batas dari order. Jika ditentukan, jenis order adalah limit, atau stop-limit. NaN harus ditentukan untuk jenis order lainnya.
  • stop(seri int/float) Argumen opsional. Harga stop order. Jika ditentukan, jenis order adalah stop, atau stop-limit. NaN harus ditentukan untuk jenis order lainnya.
  • oca_name(series string) Sebuah argumen opsional. Nama kelompok OCA urutan milik. Jika urutan tidak harus milik kelompok OCA tertentu, harus ada string kosong.Perhatikan bahwa FMZ tidak mendukung argumen ini.~~
  • oca_type(input string) Argumen opsional. Jenis kelompok OCA. Nilai yang diizinkan adalah: strategy.oca.none - order tidak harus termasuk dalam kelompok OCA tertentu; strategy.oca.cancel - order harus termasuk dalam kelompok OCA, di mana segera setelah sebuah order dipenuhi, semua order lain dari kelompok yang sama dibatalkan; strategy.oca.reduce - order harus termasuk dalam kelompok OCA, di mana jika X jumlah kontrak dari sebuah order dipenuhi, jumlah kontrak untuk setiap order lain dari kelompok OCA yang sama dikurangi dengan X.Perhatikan bahwa FMZ tidak mendukung argumen ini.
  • comment(Seri string) Argumen opsional. catatan tambahan pada urutan.
  • when(seri bool) Argumen opsional. Kondisi urutan. Urutan ditempatkan jika kondisi adalah true. Jika kondisi adalah false, tidak ada yang terjadi (urutan yang sebelumnya ditempatkan dengan ID yang sama tidak dibatalkan). Nilai default adalah true.
  • alert_message(seri string) Argumen opsional yang menggantikan placeholder {{strategi.order.alert_message}} ketika digunakan di kotak dialog Membuat Alert Message field.

strategy.close

Ini adalah perintah untuk keluar dari entri dengan ID yang ditentukan. Jika ada beberapa pesanan entri dengan ID yang sama, semuanya keluar sekaligus. Jika tidak ada entri terbuka dengan ID yang ditentukan pada saat perintah dipicu, perintah tidak akan berlaku. Perintah menggunakan pesanan pasar. Setiap entri ditutup dengan pesanan pasar terpisah.

strategy.close(id, when, comment, qty, qty_percent, alert_message) 

Contoh

strategy("closeEntry Demo", overlay=false)
strategy.entry("buy", strategy.long, when = open > close)
strategy.close("buy", when = open < close, qty_percent = 50, comment = "close buy entry for 50%")
plot(strategy.position_size)

Argumen

  • id(series string) Argumen yang diperlukan. Pengidentifikasi order. Adalah mungkin untuk menutup order dengan merujuk pengidentifikasi.
  • when(seri bool) Argumen opsional. Kondisi perintah.
  • qty(seri int/float) Argumen opsional. Jumlah kontrak/saham/lot/unit untuk keluar dari perdagangan. Nilai default adalah NaN.
  • qty_percent(seri int/float) Mendefinisikan persentase (0-100) dari posisi untuk ditutup. Prioritasnya lebih rendah dari argumen qty. Opsional. Default adalah 100.
  • comment(Seri string) Argumen opsional. catatan tambahan pada urutan.
  • alert_message(seri string) Argumen opsional yang menggantikan placeholder {{strategi.order.alert_message}} ketika digunakan di kotak dialog Membuat Alert Message field.

Strategi. tutup semua

Keluar dari posisi pasar saat ini, membuatnya datar.

strategy.close_all(when, comment, alert_message) 

Contoh

strategy("closeAll Demo", overlay=false)
strategy.entry("buy", strategy.long, when = open > close)
strategy.close_all(when = open < close, comment = "close all entries")
plot(strategy.position_size)

Argumen

  • when(seri bool) Argumen opsional. Kondisi perintah.
  • comment(Seri string) Argumen opsional. catatan tambahan pada urutan.
  • alert_message(seri string) Argumen opsional yang menggantikan placeholder {{strategi.order.alert_message}} ketika digunakan di kotak dialog Membuat Alert Message field.

strategy.exit

Ini adalah perintah untuk keluar dari entri tertentu, atau seluruh posisi pasar. Jika pesanan dengan ID yang sama sudah menunggu, dimungkinkan untuk memodifikasi pesanan. Jika pesanan masuk tidak diisi, tetapi pesanan keluar dihasilkan, pesanan keluar akan menunggu sampai pesanan masuk diisi dan kemudian pesanan keluar ditempatkan. Untuk menonaktifkan pesanan keluar, perintah strategi.cancel atau strategi.cancel_all harus digunakan. Jika fungsistrategy.exitJika Anda ingin keluar beberapa kali, perintahstrategy.exitJika Anda menggunakan stop loss dan trailing stop, jenis order mereka adalah stop, jadi hanya satu dari mereka yang ditempatkan (yang seharusnya diisi terlebih dahulu). Jika semua argumen berikut profit, limit, loss, stop, trail_points, trail_offset adalah NaN, perintah akan gagal. Untuk menggunakan pesanan pasar untuk keluar, perintah strategy.close atau strategy.close_all harus digunakan.

strategy.exit(id, from_entry, qty, qty_percent, profit, limit, loss, stop, trail_price, trail_points, trail_offset, oca_name, comment, when, alert_message) 

Contoh

strategy(title = "simple strategy exit example")
strategy.entry("long", strategy.long, 1, when = open > high[1]) // enter long by market if current open great then previous high
strategy.exit("exit", "long", profit = 10, loss = 5) // generate full exit bracket (profit 10 points, loss 5 points per contract) from entry with name "long"

Argumen

  • id(series string) Argumen yang diperlukan. Pengidentifikasi pesanan. Adalah mungkin untuk membatalkan atau memodifikasi pesanan dengan merujuk pengidentifikasi.
  • from_entry(series string) Argumen opsional. Pengidentifikasi perintah entri tertentu untuk keluar dari itu. Untuk keluar dari semua entri string kosong harus digunakan. Nilai default adalah string kosong.
  • qty(seri int/float) Argumen opsional. Jumlah kontrak/saham/lot/unit untuk keluar dari perdagangan. Nilai default adalah NaN.
  • qty_percent(seri int/float) Mendefinisikan persentase dari (0-100) posisi untuk ditutup. Prioritasnya lebih rendah dari argumen qty. Opsional. Default adalah 100.
  • profit(seri int/float) Argumen opsional. Target keuntungan (dispecifikasi dalam tik). Jika ditentukan, pesanan batas ditempatkan untuk keluar dari posisi pasar ketika jumlah keuntungan yang ditentukan (dalam tik) tercapai. Nilai default adalah NaN
  • limit(seri int/float) Argumen opsional. Target keuntungan (membutuhkan harga tertentu). Jika ditentukan, pesanan batas ditempatkan untuk keluar posisi pasar pada harga yang ditentukan (atau lebih baik). Prioritas argumen limit lebih tinggi dari prioritas argumen profit (limit digunakan sebagai pengganti profit, jika nilainya bukan NaN). Nilai default adalah NaN.
  • loss(seri int/float) Argumen opsional. Stop loss (ditentukan dalam tik). Jika ditentukan, stop order ditempatkan untuk keluar dari posisi pasar ketika jumlah kerugian yang ditentukan (dalam tik) tercapai. Nilai default adalah NaN.
  • stop(seri int/float) Argumen opsional. Stop loss (membutuhkan harga tertentu). Jika ditentukan, stop order ditempatkan untuk keluar posisi pasar pada harga yang ditentukan (atau lebih buruk). Prioritas argumen stop lebih tinggi dari prioritas argumen loss (stop digunakan sebagai pengganti loss, jika nilainya tidak NaN).

Lebih banyak

PengemisMengapa Strategi Square Duplikat Strategi Pine Tidak Bisa Terwujud

Penemu Kuantitas - Mimpi KecilBaiklah, mari kita periksa.

PengemisOptimized Trend Tracker dari Zhang Jianhui

Penemu Kuantitas - Mimpi KecilHalo, apakah Anda ingin tahu strategi apa yang sebenarnya?