Вам необходимо сохранить значение, когда ваш скрипт обнаружит условие, из которого вы хотите сохранить ATR. Понимание модели выполнения Pine поможет вам осмыслить решение, которое очень часто встречается при написании сценариев. Сценарий Pine выполняется на каждом баре, поэтому гораздо эффективнее сохранять значения, которые вам понадобятся, на следующих барах, когда это возможно, чем ждать момента, когда вам нужны значения, а затем оглянуться назад, чтобы найти их.
См. Как сохранить значение при возникновении события? для примера кода, делающего это.
[РЕДАКТИРОВАНИЕ 2020.03.23 00:17 - LucF]
//@version=4
study("Atr at Pivot")
pivotLegs = 3
pHi = pivothigh(pivotLegs, pivotLegs)
atr = atr(14)
var float atrAtHiPivot = na
if not na(pHi)
// A pivot was detected. Since the pivot actually occurred `pivotLegs` bars back,
// fetch atr value from the same number of bars back.
atrAtHiPivot := atr[pivotLegs]
plotchar(not na(pHi), "not na(pHi)", "▼", location.top)
plot(atrAtHiPivot, "atrAtHiPivot")
plot(atr, "atr", color.aqua)