«адресация» серии в контексте с несколькими временными рамками в Pine-Script

#pine-script

#pine-script

Вопрос:

Предположим, я хочу работать с сериями с несколькими временными рамками

например, у нас есть почасовая серия

 s = security (tickerid, "60", close)
  

во время работы над 5-минутным графиком.

в контексте 5-миллионного графика s будет выглядеть как ступенчатая функция, которая меняет значение каждые 12 баров (== каждый час), и s [1] будет возвращать в 11 случаях из 12 то же значение, что и текущее значение s.

Предположим, я хочу построить стратегию, в которой я ставлю некоторые условия для часовой серии, например, произойдет бычий ценовой поворот

 priceflip = s > s[4] and s[1] < s[5]
  

это то, что я бы написал, если бы работал над часовыми графиками

но в контексте 5mns это выражение, вероятно, все время возвращало бы false (подумайте, почему!) грязный способ решения проблемы — написать

 priceflip = s > s[4*12] and s[1*12] s< s[5*12]
  

для меня это довольно неэлегантно, потому что если мы меняем временные рамки, то меняются все множители.

Есть ли более «функциональный язык» или элегантный способ сделать это?

Ответ №1:

Следите за функцией security(). Это ошибка и вызывает проблему с перерисовкой. Подробнее объясняется здесь: https://www.tradingview.com/script/JwWWwZOD-RSI-MTF-by-PeterO