Как использовать значения по умолчанию для параметров массива в функциях pine-script?

Пайн-скрипт;

  • Библиотеки не могут использовать глобальные переменные в экспортируемых функциях, поэтому я не могу использовать глобальный массив в качестве значения по умолчанию.
  • Функции не принимают результаты функции в качестве значений по умолчанию.

Есть ли способ предоставить значение массива по умолчанию?

Например:

// @version=5

library("mylibrary", overlay = true)

// This is OK
export calc(int a = 10, int[] b) => ...

// This is NOT OK
export calc(int a = 10, int[] b = array.from(1,2)) => ...
Структурированный массив Numpy
Структурированный массив Numpy
Однако в реальных проектах я чаще всего имею дело со списками, состоящими из нескольких типов данных. Как мы можем использовать массивы numpy, чтобы...
T - 1Bits: Генерация последовательного массива
T - 1Bits: Генерация последовательного массива
По мере того, как мы пишем все больше кода, мы привыкаем к определенным способам действий. То тут, то там мы находим код, который заставляет нас...
Что такое деструктуризация массива в JavaScript?
Что такое деструктуризация массива в JavaScript?
Деструктуризация позволяет распаковывать значения из массивов и добавлять их в отдельные переменные.
0
0
25
1
Перейти к ответу Данный вопрос помечен как решенный

Ответы 1

Ответ принят как подходящий

Вы не можете указать значение по умолчанию в виде массива. И аргумент массива не может быть опущен.

В будущем появится возможность назначать int[] b = na в сигнатуре функции. После этого вы сможете проверить, является ли переданный массив «na», а затем переназначить его.

Можно будет сделать что-то вроде этого:

// @version=5
library("mylibrary", overlay = true)

export calc(int[] b = na)  => 
    arr = na(b) ? array.from(1,2) : b
    array.size(b)
    
plot(calc())

Другие вопросы по теме