valor del indicador cuanto más larga sea la flecha.
plotarrow(series, title, colorup, colordown, offset, minheight, maxheight, editable, show_last, display)
Ejemplo
codiff = close - open
plotarrow(codiff, colorup=color.new(color.teal,40), colordown=color.new(color.orange, 40), overlay=true)
Argumentos
series
(serie int/float) Serie de datos que se trazará en forma de flechas.title
Título de la parcela.colorup
(color de la serie) Color de las flechas hacia arriba.colordown
(color de serie) Color de las flechas hacia abajo.offset
(series int) Mueve las flechas a la izquierda o a la derecha en el número dado de barras.minheight
La altura mínima de la flecha en píxeles, por defecto es 5.maxheight
La altura máxima de la flecha en píxeles es 100.editable
(const bool) Si es verdadero entonces el estilo de la fila de gráficos será editable en el diálogo de formato.show_last
(input int) Si está configurado, define el número de flechas (desde la última barra hasta el pasado) para trazar en el gráfico.display
(plot_display) Controles donde se muestra la trama. Los valores posibles son: display.none, display.all. El valor predeterminado es display.all.overlay
(const bool) es el argumento de extensión de la plataforma FMZ, se utiliza para establecer la función actual que se mostrará en la imagen principal (establecida en verdadera) o sub-imagen (establecida en falsa), el valor predeterminado es falso.overlay
el argumento enstrategy
o bienindicator
, sistrategy
o bienindicator
no establece eloverlay
Argumento, se procesará de acuerdo con los argumentos predeterminados.Véase también
plot
plotshape
plotchar
barcolor
bgcolor
La función elimina el último elemento de una matriz y devuelve su valor.
array.pop(id)
Ejemplo
// array.pop example
a = array.new_float(5,high)
removedEl = array.pop(a)
plot(array.size(a))
plot(removedEl)
Las devolucionesEl valor del elemento eliminado.
Argumentos
id
(cualquier tipo de matriz) Un objeto matriz.Véase también
array.new_float
array.set
array.push
array.remove
array.insert
array.shift
La función elimina el primer elemento de una matriz y devuelve su valor.
array.shift(id)
Ejemplo
// array.shift example
a = array.new_float(5,high)
removedEl = array.shift(a)
plot(array.size(a))
plot(removedEl)
Las devolucionesEl valor del elemento eliminado.
Argumentos
id
(cualquier tipo de matriz) Un objeto matriz.Véase también
array.unshift
array.set
array.push
array.remove
array.includes
La función inserta el valor al principio de la matriz.
array.unshift(id, value)
Ejemplo
// array.unshift example
a = array.new_float(5, 0)
array.unshift(a, open)
plot(array.get(a, 0))
Argumentos
id
(cualquier tipo de matriz) Un objeto matriz.value
(series <type of the array's elements>
) El valor a añadir al comienzo de la matriz.Véase también
array.shift
array.set
array.insert
array.remove
array.indexof
La función devuelve el número de elementos en una matriz.
array.size(id)
Ejemplo
// 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))
Las devolucionesEl número de elementos en la matriz.
Argumentos
id
(cualquier tipo de matriz) Un objeto matriz.Véase también
array.new_float
array.sum
array.slice
array.sort
La función crea una rebanada de una matriz existente. Si un objeto de la rebanada cambia, los cambios se aplican tanto a la nueva como a la matriz original.
array.slice(id, index_from, index_to)
Ejemplo
// 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)
Las devolucionesUna copia superficial de una rebanada de matriz.
Argumentos
id
(cualquier tipo de matriz) Un objeto matriz.index_from
(serie int) Índice basado en cero para comenzar la extracción.index_to
(serie int) índice basado en cero antes de que termine la extracción.Véase también
array.new_float
array.get
array.sort
Devuelve una matriz que contiene el valor absoluto de cada elemento de la matriz original.
array.abs(id)
Argumentos
id
(int[]/float[]) Un objeto de matriz.Véase también
array.new_float
array.insert
array.slice
array.reverse
order.ascending
order.descending
La función devuelve el índice del valor, o -1 si no se encuentra el valor.
array.binary_search(id, val)
Ejemplo
// 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)
Argumentos
id
(int[]/float[]) Un objeto de matriz.val
(serie int/float) El valor a buscar en la matriz.Las observacionesUna búsqueda binaria funciona en matrices pre-ordenadas en orden ascendente. Comienza comparando un elemento en el medio de la matriz con el valor objetivo. Si el elemento coincide con el valor objetivo, se devuelve su posición en la matriz. Si el valor del elemento es mayor que el valor objetivo, la búsqueda continúa en la mitad inferior de la matriz. Si el valor del elemento es menor que el valor objetivo, la búsqueda continúa en la mitad superior de la matriz. Al hacerlo de manera recursiva, el algoritmo elimina progresivamente porciones cada vez más pequeñas de la matriz en las que el valor objetivo no puede estar.
Véase también
array.new_float
array.insert
array.slice
array.reverse
order.ascending
order.descending
La función devuelve el índice del valor si se encuentra. Cuando el valor no se encuentra, la función devuelve el índice del siguiente elemento más pequeño a la izquierda de donde el valor estaría si estuviera en la matriz. La matriz a buscar debe ordenarse en orden ascendente.
array.binary_search_leftmost(id, val)
Ejemplo
// 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)
Argumentos
id
(int[]/float[]) Un objeto de matriz.val
(serie int/float) El valor a buscar en la matriz.Las observacionesUna búsqueda binaria funciona en matrices pre-ordenadas en orden ascendente. Comienza comparando un elemento en el medio de la matriz con el valor objetivo. Si el elemento coincide con el valor objetivo, se devuelve su posición en la matriz. Si el valor del elemento es mayor que el valor objetivo, la búsqueda continúa en la mitad inferior de la matriz. Si el valor del elemento es menor que el valor objetivo, la búsqueda continúa en la mitad superior de la matriz. Al hacerlo de manera recursiva, el algoritmo elimina progresivamente porciones cada vez más pequeñas de la matriz en las que el valor objetivo no puede estar.
Véase también
array.new_float
array.insert
array.slice
array.reverse
order.ascending
order.descending
La función devuelve el índice del valor si se encuentra. Cuando el valor no se encuentra, la función devuelve el índice del elemento a la derecha de donde el valor estaría si estuviera en la matriz. La matriz debe ordenarse en orden ascendente.
array.binary_search_rightmost(id, val)
Ejemplo
// 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)
Argumentos
id
(int[]/float[]) Un objeto de matriz.val
(serie int/float) El valor a buscar en la matriz.Las observacionesUna búsqueda binaria funciona en matrices ordenadas en orden ascendente. Comienza comparando un elemento en el medio de la matriz con el valor objetivo. Si el elemento coincide con el valor objetivo, se devuelve su posición en la matriz. Si el valor del elemento es mayor que el valor objetivo, la búsqueda continúa en la mitad inferior de la matriz. Si el valor del elemento es menor que el valor objetivo, la búsqueda continúa en la mitad superior de la matriz. Al hacerlo de manera recursiva, el algoritmo elimina progresivamente porciones cada vez más pequeñas de la matriz en las que el valor objetivo no puede estar.
Véase también
array.new_float
array.insert
array.slice
array.reverse
order.ascending
order.descending
La función ordena los elementos de una matriz.
array.sort(id, order)
Ejemplo
// 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))
Argumentos
id
(int[]/float[]/string[]) Un objeto de matriz.order
(sort_order) El orden de clasificación: orden.ascendente (por defecto) o orden.descendiente.Véase también
array.new_float
array.insert
array.slice
array.reverse
order.ascending
order.descending
Devuelve una matriz de índices que, cuando se utiliza para indexar la matriz original, accederá a sus elementos en su orden ordenado.
array.sort_indices(id, order)
Ejemplo
// 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)
Argumentos
id
(int[]/float[]/string[]) Un objeto de matriz.order
(sort_order) El orden de clasificación: order.ascending o order.descending. Opcional. El orden por defecto es order.ascending.Véase también
array.new_float
array.insert
array.slice
array.reverse
order.ascending
order.descending
La función elimina todos los elementos de una matriz.
array.clear(id)
Ejemplo
// 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))
Argumentos
id
(cualquier tipo de matriz) Un objeto matriz.Véase también
array.new_float
array.insert
array.push
array.remove
array.pop
La función se utiliza para fusionar dos matrices. Empuja todos los elementos de la segunda matriz a la primera matriz y devuelve la primera matriz.
array.concat(id1, id2)
Ejemplo
// 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))
Las devolucionesLa primera matriz con elementos fusionados de la segunda matriz.
Argumentos
id1
(cualquier tipo de matriz) El primer objeto de matriz.id2
(cualquier tipo de matriz) El segundo objeto de matriz.Véase también
array.new_float
array.insert
array.slice
La función crea una copia de una matriz existente.
array.copy(id)
Ejemplo
// 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)
Las devolucionesUna copia de una matriz.
Argumentos
id
(cualquier tipo de matriz) Un objeto matriz.Véase también
array.new_float
array.get
array.slice
array.sort
La función devuelve la desviación estándar de un conjunto de elementos.
array.stdev(id, biased)
Ejemplo
// array.stdev example
a = array.new_float(0)
for i = 0 to 9
array.push(a, close[i])
plot(array.stdev(a))
Las devolucionesLa desviación estándar de los elementos de la matriz.
Argumentos
id
(int[]/float[]) Un objeto de matriz.biased
(serie bool) Determina qué estimación se debe utilizar. Opcional. El valor predeterminado es verdadero.Las observacionesSi esbiased
si es verdad, la función calculará usando una estimación sesgada de toda la población, si es falsa - estimación imparcial de una muestra.
Véase también
array.new_float
array.max
array.min
array.avg
La función devuelve la matriz de elementos estandarizados.
array.standardize(id)
Ejemplo
// 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))
Las devolucionesLa matriz de elementos estandarizados.
Argumentos
id
(int[]/float[]) Un objeto de matriz.Véase también
array.max
array.min
array.mode
array.avg
array.variance
array.stdev
La función devuelve la varianza de los elementos de una matriz.
array.variance(id, biased)
Ejemplo
// array.variance example
a = array.new_float(0)
for i = 0 to 9
array.push(a, close[i])
plot(array.variance(a))
Las devolucionesLa varianza de los elementos del conjunto.
Argumentos
id
(int[]/float[]) Un objeto de matriz.biased
(serie bool) Determina qué estimación se debe utilizar. Opcional. El valor predeterminado es verdadero.Las observacionesSi esbiased
si es verdad, la función calculará usando una estimación sesgada de toda la población, si es falsa - estimación imparcial de una muestra.
Véase también
array.new_float
array.stdev
array.min
array.avg
array.covariance
La función devuelve la covarianza de dos matrices.
array.covariance(id1, id2, biased)
Ejemplo
// 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))
Las devolucionesLa covarianza de dos matrices.
Argumentos
id1
(int[]/float[]) Un objeto de matriz.id2
(int[]/float[]) Un objeto de matriz.biased
(serie bool) Determina qué estimación se debe utilizar. Opcional. El valor predeterminado es verdadero.Las observacionesSi esbiased
si es verdad, la función calculará usando una estimación sesgada de toda la población, si es falsa - estimación imparcial de una muestra.
Véase también
array.new_float
array.max
array.stdev
array.avg
array.variance
La función establece elementos de una matriz a un solo valor. Si no se especifica ningún índice, se establecen todos los elementos. Si solo se proporciona un índice de inicio (default 0), se establecen los elementos que comienzan en ese índice. Si se usan ambos argumentos de índice, se establecen los elementos desde el índice de inicio hasta, pero sin incluir, el índice final (default na).
array.fill(id, value, index_from, index_to)
Ejemplo
// array.fill example
a = array.new_float(10)
array.fill(a, close)
plot(array.sum(a))
Argumentos
id
(cualquier tipo de matriz) Un objeto matriz.value
(series <type of the array's elements>
) Valor para llenar la matriz.index_from
(serie int) índice de inicio, por defecto es 0.index_to
(serie int) Índice final, por defecto es na. Debe ser uno mayor que el índice del último elemento a establecer.Véase también
array.new_float
array.set
array.slice
La función devuelve verdadero si el valor se encontró en una matriz, falso de lo contrario.
array.includes(id, value)
Ejemplo
// array.includes example
a = array.new_float(5,high)
p = close
if array.includes(a, high)
p := open
plot(p)
Las devolucionesVerdadero si el valor se encontró en la matriz, falso de lo contrario.
Argumentos
id
(cualquier tipo de matriz) Un objeto matriz.value
(series <type of the array's elements>
) El valor a buscar en la matriz.Véase también
array.new_float
array.indexof
array.shift
array.remove
array.insert
La función cambia el contenido de una matriz agregando nuevos elementos en su lugar.
array.insert(id, index, value)
Ejemplo
// array.insert example
a = array.new_float(5, close)
array.insert(a, 0, open)
plot(array.get(a, 5))
Argumentos
id
(cualquier tipo de matriz) Un objeto matriz.index
(serie int) El índice en el que se inserta el valor.value
(series <type of the array's elements>
) El valor a añadir a la matriz.Véase también
array.new_float
array.set
array.push
array.remove
array.pop
array.unshift
La función crea y devuelve una nueva cadena concatenando todos los elementos de una matriz, separados por la cadena separadora especificada.
array.join(id, separator)
Ejemplo
// array.join example
a = array.new_float(5, 5)
runtime.log(array.join(a, ","))
Argumentos
id
(int[]/float[]/string[]) Un objeto de matriz.separator
La cadena utilizada para separar cada elemento de la matriz.Véase también
array.new_float
array.set
array.insert
array.remove
array.pop
array.unshift
La función devuelve el índice de la última aparición del valor, o -1 si no se encuentra el valor.
array.lastindexof(id, value)
Ejemplo
// array.lastindexof example
a = array.new_float(5,high)
index = array.lastindexof(a, high)
plot(index)
Las devolucionesEl índice de un elemento.
Argumentos
id
(cualquier tipo de matriz) Un objeto matriz.value
(series <type of the array's elements>
) El valor a buscar en la matriz.Véase también
array.new_float
array.set
array.push
array.remove
array.insert
La función devuelve el mayor valor, o el n ° mayor valor en una matriz dada.
array.max(id, nth)
Ejemplo
// array.max
a = array.from(5, -2, 0, 9, 1)
secondHighest = array.max(a, 2) // 1
plot(secondHighest)
Las devolucionesEl mayor o el n-ésimo mayor valor de la matriz.
Argumentos
id
(int[]/float[]) Un objeto de matriz.nth
(serie int) El n ° mayor valor a devolver, donde cero es el mayor.Véase también
array.new_float
array.min
array.sum
La función devuelve el valor más pequeño, o el n menor valor en una matriz dada.
array.min(id, nth)
Ejemplo
// array.min
a = array.from(5, -2, 0, 9, 1)
secondLowest = array.min(a, 1) // 0
plot(secondLowest)
Las devolucionesEl valor más pequeño o el n-ésimo más pequeño de la matriz.
Argumentos
id
(int[]/float[]) Un objeto de matriz.nth
(serie int) El n menor valor a devolver, donde el cero es el más pequeño.Véase también
array.new_float
array.max
array.sum
La función devuelve la mediana de un conjunto de elementos.
array.median(id)
Ejemplo
// array.median example
a = array.new_float(0)
for i = 0 to 9
array.push(a, close[i])
plot(array.median(a))
Las devolucionesLa mediana de los elementos del conjunto.
Argumentos
id
(int[]/float[]) Un objeto de matriz.Véase también
array.avg
array.variance
array.min
Si hay varios valores con la misma frecuencia, devuelve el valor más pequeño.
array.mode(id)
Ejemplo
// array.mode example
a = array.new_float(0)
for i = 0 to 9
array.push(a, close[i])
plot(array.mode(a))
Las devolucionesEl modo de los elementos del array.
Argumentos
id
(int[]/float[]) Un objeto de matriz.Véase también
array.new_float
array.avg
array.variance
array.min
Devuelve el valor para el cual el porcentaje especificado de los valores de la matriz (percentil) es menor o igual a él, utilizando la interpolación lineal.
array.percentile_linear_interpolation(id, percentage)
Argumentos
id
(int[]/float[]) Un objeto de matriz.percentage
(serie int/float) El porcentaje de valores que deben ser iguales o inferiores al valor devuelto.Las observacionesEn estadística, el percentil es el porcentaje de elementos de clasificación que aparecen en o por debajo de una determinada puntuación.
Véase también
array.new_float
array.insert
array.slice
array.reverse
order.ascending
order.descending
Devuelve el valor para el cual el porcentaje especificado de los valores de la matriz (percentil) es menor o igual a él, utilizando el método de rango más cercano.
array.percentile_nearest_rank(id, percentage)
Argumentos
id
(int[]/float[]) Un objeto de matriz.percentage
(serie int/float) El porcentaje de valores que deben ser iguales o inferiores al valor devuelto.Las observacionesEn estadística, el percentil es el porcentaje de elementos de clasificación que aparecen en o por debajo de una determinada puntuación.
Véase también
array.new_float
array.insert
array.slice
array.reverse
order.ascending
order.descending
Devuelve el rango percentil de un valor en la matriz.
array.percentrank(id, index)
Argumentos
id
(int[]/float[]) Un objeto de matriz.index
(serie int) El valor para el que se calcula su rango percentil.Las observacionesEl rango percentil es el porcentaje de cuántos elementos de la matriz son menores o iguales al valor de referencia.
Véase también
array.new_float
array.insert
array.slice
array.reverse
order.ascending
order.descending
La función devuelve la diferencia entre los valores mínimos y máximos de una matriz dada.
array.range(id)
Ejemplo
// array.range example
a = array.new_float(0)
for i = 0 to 9
array.push(a, close[i])
plot(array.range(a))
Las devolucionesLa diferencia entre los valores mínimos y máximos en la matriz.
Argumentos
id
(int[]/float[]) Un objeto de matriz.Véase también
array.new_float
array.min
array.max
array.sum
La función cambia el contenido de una matriz eliminando el elemento con el índice especificado.
array.remove(id, index)
Ejemplo
// array.remove example
a = array.new_float(5,high)
removedEl = array.remove(a, 0)
plot(array.size(a))
plot(removedEl)
Las devolucionesEl valor del elemento eliminado.
Argumentos
id
(cualquier tipo de matriz) Un objeto matriz.index
(serie int) El índice del elemento a eliminar.Véase también
array.new_float
array.set
array.push
array.insert
array.pop
array.shift
La función invierte una matriz. El primer elemento de la matriz se convierte en el último, y el último elemento de la matriz se convierte en el primero.
array.reverse(id)
Ejemplo
// 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))
Argumentos
id
(cualquier tipo de matriz) Un objeto matriz.Véase también
array.new_float
array.sort
array.push
array.set
array.avg
La función toma un número variable de argumentos con uno de los tipos: int, float, bool, cadena, etiqueta, línea, color, caja, tabla, linefill, y devuelve una matriz del tipo correspondiente.
array.from(arg0, arg1, ...)
Ejemplo
// array.from_example
arr = array.from("Hello", "World!") // arr (string[]) will contain 2 elements: {Hello}, {World!}.
plot(close)
Las devolucionesEl valor del elemento de la matriz.
Argumentos
arg0, arg1, ...
(serie int/float/bool/color/string/line/linefill) Argumentos de la matriz.La función crea un nuevo objeto de matriz de<type>
elements.
array.new(size, initial_value)
Ejemplo
// array.new<string> example
a = array.new<string>(1, "Hello, World!")
runtime.log(array.get(a, 0))
Ejemplo
// 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))
Ejemplo
// 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")
Ejemplo
// 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)
Las devolucionesEl ID de un objeto de matriz que puede ser utilizado en otras funciones de matriz.*().
Argumentos
size
(series int) Tamaño inicial de una matriz. Opcional. El valor predeterminado es 0.initial_value
(serie Las observacionesUn índice de matriz comienza en 0. Si desea iniciar una matriz y especificar todos sus elementos al mismo tiempo, entonces use la función array.from.
Véase también
array.from
array.push
array.get
array.size
array.remove
array.shift
array.sum
La función crea un nuevo objeto de matriz de elementos de tipo bool.
array.new_bool(size, initial_value)
Ejemplo
// array.new_bool example
length = 5
a = array.new_bool(length, close > open)
plot(array.get(a, 0) ? close : open)
Las devolucionesEl ID de un objeto de matriz que puede ser utilizado en otras funciones de matriz.*().
Argumentos
size
(series int) Tamaño inicial de una matriz. Opcional. El valor predeterminado es 0.initial_value
(serie bool) Valor inicial de todos los elementos de la matriz. Opcional. El valor predeterminado es Las observacionesEl índice de la matriz comienza en 0.
Véase también
array.new_float
array.get
array.slice
array.sort
La función crea un nuevo objeto de matriz de elementos de tipo float.
array.new_float(size, initial_value)
Ejemplo
// array.new_float example
length = 5
a = array.new_float(length, close)
plot(array.sum(a) / length)
Las devolucionesEl ID de un objeto de matriz que puede ser utilizado en otras funciones de matriz.*().
Argumentos
size
(series int) Tamaño inicial de una matriz. Opcional. El valor predeterminado es 0.initial_value
(serie int/float) Valor inicial de todos los elementos de la matriz. Opcional. El valor predeterminado es Las observacionesUn índice de matriz comienza en 0.
Véase también
array.new_bool
array.get
array.slice
array.sort
La función crea un nuevo objeto de matriz de elementos de tipo int.
array.new_int(size, initial_value)
Ejemplo
// array.new_int example
length = 5
a = array.new_int(length, int(close))
plot(array.sum(a) / length)
Las devolucionesEl ID de un objeto de matriz que puede ser utilizado en otras funciones de matriz.*().
Argumentos
size
(series int) Tamaño inicial de una matriz. Opcional. El valor predeterminado es 0.initial_value
(serie int) Valor inicial de todos los elementos de la matriz. Opcional. El valor predeterminado es Las observacionesUn índice de matriz comienza en 0.
Véase también
array.new_float
array.get
array.slice
array.sort
La función crea un nuevo objeto de matriz de elementos de tipo de cadena.
array.new_string(size, initial_value)
Ejemplo
// array.new_string example
length = 5
a = array.new_string(length, "text")
runtime.log(array.get(a, 0))
Las devolucionesEl ID de un objeto de matriz que puede ser utilizado en otras funciones de matriz.*().
Argumentos
size
(series int) Tamaño inicial de una matriz. Opcional. El valor predeterminado es 0.initial_value
(serie de cadenas) Valor inicial de todos los elementos de la matriz. Opcional. El valor predeterminado es Las observacionesUn índice de matriz comienza en 0.
Véase también
array.new_float
array.get
array.slice
La función devuelve el valor del elemento en el índice especificado.
array.get(id, index)
Ejemplo
// 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))
Las devolucionesEl valor del elemento de la matriz.
Argumentos
id
(cualquier tipo de matriz) Un objeto matriz.index
(serie int) El índice del elemento cuyo valor se devuelve.Véase también
array.new_float
array.set
array.slice
array.sort
La función añade un valor a una matriz.
array.push(id, value)
Ejemplo
// array.push example
a = array.new_float(5, 0)
array.push(a, open)
plot(array.get(a, 5))
Argumentos
id
(cualquier tipo de matriz) Un objeto matriz.value
(series <type of the array's elements>
) El valor del elemento añadido al final del conjunto.Véase también
array.new_float
array.set
array.insert
array.remove
array.pop
array.unshift
La función establece el valor del elemento en el índice especificado.
array.set(id, index, value)
Ejemplo
// array.set example
a = array.new_float(10)
for i = 0 to 9
array.set(a, i, close[i])
plot(array.sum(a) / 10)
Argumentos
id
(cualquier tipo de matriz) Un objeto matriz.index
(serie int) El índice del elemento a modificar.value
(series <type of the array's elements>
) El nuevo valor a establecer.Véase también
array.new_float
array.get
array.slice
La función devuelve la suma de los elementos de una matriz.
array.sum(id)
Ejemplo
// array.sum example
a = array.new_float(0)
for i = 0 to 9
array.push(a, close[i])
plot(array.sum(a))
Las devolucionesLa suma de los elementos del conjunto.
Argumentos
id
(int[]/float[]) Un objeto de matriz.Véase también
array.new_float
array.max
array.min
La función devuelve la media de los elementos de una matriz.
array.avg(id)
Ejemplo
// array.avg example
a = array.new_float(0)
for i = 0 to 9
array.push(a, close[i])
plot(array.avg(a))
Las devolucionesLa media de los elementos de la matriz.
Argumentos
id
(int[]/float[]) Un objeto de matriz.Véase también
array.new_float
array.max
array.min
array.stdev
La función devuelve el índice de la primera aparición del valor, o -1 si no se encuentra el valor.
array.indexof(id, value)
Ejemplo
// array.indexof example
a = array.new_float(5,high)
index = array.indexof(a, high)
plot(index)
Las devolucionesEl índice de un elemento.
Argumentos
id
(cualquier tipo de matriz) Un objeto matriz.value
(series <type of the array's elements>
) El valor a buscar en la matriz.Véase también
array.lastindexof
array.get
array.lastindexof
array.remove
array.insert
En las funciones integradas relacionadas constrategy
, los puntos de stop loss y los puntos de take profit se definen como múltiplos de un salto de precio.profit
yloss
Las conclusiones de lastrategy.exit
La función representa stop loss y take profit en puntos y el argumentoprofit
se establece en 10, es decir, el salto de precio se multiplica por 10 como el beneficio de tomar el diferencial, y el salto de precio es la variable incorporadasyminfo.mintick
.
La función establece una serie de propiedades de estrategia.
Tenga en cuenta que sólotitle
, shorttitle
, overlay
, pyramiding
, default_qty_type
, default_qty_value
Los argumentos de interfaz de la estrategia de lenguaje PINE son compatibles con los argumentos de paso.
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)
Ejemplo
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)
Argumentos
title
(const string) el título del indicador que se vería en el widget Indicadores/Estrategias.shorttitle
(const string) título corto del indicador que se vería en la leyenda del gráfico.overlay
(const bool) si es cierto el indicador se añadirá como una superposición para la serie principal. si es falso - se añadirá en un panel de gráfico separado.format
precision
scale
pyramiding
(const int) El número máximo de entradas permitidas en la misma dirección. Si el valor es 0, solo se puede abrir una orden de entrada en la misma dirección y se rechazan órdenes de entrada adicionales. El valor predeterminado es 0.calc_on_order_fills
(const bool) Cálculo de orden intrabar adicional de una vez. Si el argumento está establecido en calc_on_every_tick
max_bars_back
backtest_fill_limits_assumption
default_qty_type
(const string) Determina cuál es el valor utilizado para elqty
Los valores posibles son: strategy.fixed para contratos/acciones/lotes,strategy.cashpara los importes en moneda, o strategy.percent_of_equity para un porcentaje del capital disponible.default_qty_value
(const int/float) La cantidad predeterminada para operar en las funciones de strategy.entry o strategy.order cuando su argumento currency
slippage
commission_type
commission_value
process_orders_on_close
true
, genera un intento adicional de ejecutar órdenes después de que una barra se cierra y se completen los cálculos de estrategia. Si las órdenes son órdenes de mercado, el emulador de corredor las ejecuta antes de que se abra la siguiente barra. Si las órdenes están condicionadas al precio, solo se llenarán si se cumplen las condiciones del precio. Esta opción es útil si desea cerrar posiciones en la barra actual. El valor predeterminado es close_entries_rule
max_lines_count
max_labels_count
max_boxes_count
margin_long
margin_short
~~ (const int/float) Margen corto es el porcentaje del precio de compra de un valor que debe ser cubierto por efectivo o garantía para posiciones cortas. Debe ser un número no negativo. Opcional. El valor predeterminado es 100.explicit_plot_zorder
false
.initial_capital
currency
- Opcional. El valor predeterminado es 1000000.risk_free_rate
Las observacionesCada guión de estrategia debe tener una llamada de estrategia. El código Pine Script que utiliza el argumento calc_on_every_tick = true podría calcular de manera diferente en el historial y los datos en tiempo real. Cuando se utilizan tipos de gráfico no estándar como base para la estrategia, es necesario darse cuenta de que el resultado será diferente. Las órdenes se ejecutarán a los precios de este gráfico (por ejemplo, para Heikin Ashi se tomarán los precios de Heikin Ashi (los promedio) no los precios reales del mercado). Por lo tanto, le recomendamos encarecidamente que use el tipo de gráfico estándar para las estrategias.
Véase también
indicator
Es un comando para ingresar a una posición de mercado. Si una orden con el mismo ID ya está pendiente, es posible modificar la orden. Si no hay una orden con el ID especificado, se coloca una nueva orden. Para desactivar una orden de entrada, se debe usar el comando strategy.cancel o strategy.cancel_all. En comparación con la función strategy.order, la función strategy.entry se ve afectada por la pirámide y puede revertir la posición de mercado correctamente. Si los argumentos
strategy.entry(id, direction, qty, limit, stop, oca_name, oca_type, comment, when, alert_message)
Ejemplo
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
Argumentos
id
(serie de cadenas) Un argumento requerido. El identificador del pedido. Es posible cancelar o modificar un pedido haciendo referencia a su identificador.direction
(strategy_direction) Un argumento requerido. Dirección de posición de mercado: qty
(serie int/float) Un argumento opcional. Número de contratos/acciones/lotes/unidades a negociar. El valor predeterminado es limit
(series int/float) Un argumento opcional. Precio límite de la orden. Si se especifica, el tipo de orden es stop
(series int/float) Un argumento opcional. Precio de parada de la orden. Si se especifica, el tipo de orden es oca_name
oca_type
comment
Un argumento opcional. Notas adicionales sobre el orden.when
(series bool) Un argumento opcional. Condición del orden. El orden se coloca si la condición es alert_message
(serie de cadenas) Un argumento opcional que reemplaza el marcador de posición {{strategy.order.alert_message}} cuando se utiliza en el cuadro de diálogo Es un comando para salir de la entrada con el ID especificado. Si hubo varias órdenes de entrada con el mismo ID, todas ellas se salen a la vez. Si no hay entradas abiertas con el ID especificado en el momento en que se activa el comando, el comando no entrará en vigencia. El comando utiliza un pedido de mercado. Cada entrada se cierra con un pedido de mercado separado.
strategy.close(id, when, comment, qty, qty_percent, alert_message)
Ejemplo
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)
Argumentos
id
(serie de cadenas) Un argumento requerido. El identificador del pedido. Es posible cerrar un pedido haciendo referencia a su identificador.when
Un argumento opcional, condición del comando.qty
(series int/float) Un argumento opcional. Número de contratos/acciones/lotes/unidades con los que salir de una operación. El valor predeterminado es qty_percent
(series int/float) Define el porcentaje (0-100) de la posición a cerrar. Su prioridad es menor que la del argumento comment
Un argumento opcional. Notas adicionales sobre el orden.alert_message
(serie de cadenas) Un argumento opcional que reemplaza el marcador de posición {{strategy.order.alert_message}} cuando se utiliza en el cuadro de diálogo Salga de la posición actual del mercado, haciéndolo plano.
strategy.close_all(when, comment, alert_message)
Ejemplo
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)
Argumentos
when
Un argumento opcional, condición del comando.comment
Un argumento opcional. Notas adicionales sobre el orden.alert_message
(serie de cadenas) Un argumento opcional que reemplaza el marcador de posición {{strategy.order.alert_message}} cuando se utiliza en el cuadro de diálogo Es un comando para salir de una entrada específica, o de una posición de mercado entera. Si una orden con el mismo ID ya está pendiente, es posible modificar la orden. Si una orden de entrada no se llenó, pero se genera una orden de salida, la orden de salida esperará hasta que se llene la orden de entrada y luego se coloca la orden de salida.strategy.exitSi se llama una vez, sale de una posición sólo una vez.strategy.exitSi se utiliza un stop loss y un trailing stop, su tipo de orden es
strategy.exit(id, from_entry, qty, qty_percent, profit, limit, loss, stop, trail_price, trail_points, trail_offset, oca_name, comment, when, alert_message)
Ejemplo
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"
Argumentos
id
(serie de cadenas) Un argumento requerido. El identificador del pedido. Es posible cancelar o modificar un pedido haciendo referencia a su identificador.from_entry
(serie de cadenas) Un argumento opcional. El identificador de una orden de entrada específica para salir de ella. Para salir de todas las entradas se debe utilizar una cadena vacía. Los valores predeterminados son cadena vacía.qty
(series int/float) Un argumento opcional. Número de contratos/acciones/lotes/unidades con los que salir de una operación. El valor predeterminado es qty_percent
(series int/float) Define el porcentaje de (0-100) de la posición a cerrar. Su prioridad es menor que la del argumento profit
(series int/float) Un argumento opcional. Objetivo de ganancia (especificado en ticks). Si se especifica, se coloca una orden límite para salir de la posición de mercado cuando se alcanza el monto especificado de ganancia (en ticks). El valor predeterminado es limit
(series int/float) Un argumento opcional. Objetivo de ganancia (requiere un precio específico). Si se especifica, se coloca una orden de límite para salir de la posición de mercado al precio especificado (o mejor). La prioridad del argumento loss
(series int/float) Un argumento opcional. Stop loss (especificado en ticks). Si está especificado, se coloca una orden de stop para salir de la posición de mercado cuando se alcanza el monto especificado de pérdida (en ticks). El valor predeterminado es stop
(series int/float) Un argumento opcional. Stop loss (requiere un precio específico). Si se especifica, se coloca una orden de stop para salir de la posición de mercado al precio especificado (o peor). La prioridad del argumento El mendigo¿Por qué las estrategias de la Plaza de Replicación de la estrategia de Pine no pueden ser reales?
Los inventores cuantifican - sueños pequeñosBien, vamos a ver qué pasa.
El mendigoEl rastreador de tendencias optimizado de Zhang
Los inventores cuantifican - sueños pequeñosHola, ¿cuál es la estrategia en concreto?