Pine Script - Как рассчитать среднее значение за последние 5 пивотов? - PullRequest
0 голосов
/ 14 апреля 2020

Я хочу вычислить среднее значение предыдущих пивотов, но проблема в том, что когда я использую что-то вроде

plot(pivothigh(close, 14, 14)[2]) + plot(pivothigh(close, 14, 14)[3]) / 2 

и затем наносю на график результат, он скользит вниз, как если бы я просто использовал "самый высокий". Я пытаюсь вычислить среднее значение, и для этого мне нужно получить доступ к точному значению предыдущих пивотов. Может ли кто-нибудь помочь мне с этим? Я борюсь с этим 3 дня подряд, и когда я думаю, что это работает, я вычисляю вещи вручную, и кажется, что что-то не так.

Заранее спасибо!

1 Ответ

0 голосов
/ 14 апреля 2020

Когда вы используете pivothigh(close, 14, 14)[2], вы не обращаетесь ко второму пивоту; вместо этого вы обращаетесь к значению pivothigh() вызова функции на 2 такта назад, где опорная точка может быть, а может и не быть, обнаружена, и это правильный способ обнаружить это, чтобы проверить его возвращаемое значение для na.

Основная проблема, которую вам нужно решить, это как сохранить сводные значения по мере их появления, и без массивов в Pine вам нужно будет кодировать очередь LIFO, используя n переменных, затем использовать avg(), что может занять до 10 аргументы, чтобы усреднить эти переменные.

Если ваши стержни могут быть найдены без необходимости оглядываться назад на слишком большое количество баров, вы можете рассмотреть возможность использования такой функции, как наша avgWhenLast(_src, _cond, _cnt) в Средние - FAQ по PineCoders .

...