Предполагая, что мы сейчас на сессии RTH. Я пытаюсь автоматически нарисовать линии OHL C (точки разворота) в текущем сеансе RTH для предыдущего сеанса RTH и сеанса овернайт.
Вот что я имею до сих пор. Но это рассматривает сеанс как 24-часовой период и не различает guish между ночным и РУТ. Сценарий можно найти здесь: https://www.tradingview.com/script/HDQuJjio-OHLC-Previous-Session-Lines-24hr/
// This source code is subject to the terms of the Mozilla Public License 2.0 at https://mozilla.org/MPL/2.0/
// © TopStepLocal
//@version=4
// Pivots for Previous Session OHLC
// TODO: add pivots for Overnight session, that are distinct from Previous RTH session
//
study("OHLC Previous Session Lines", overlay=true)
higherTF = input("D", type=input.resolution)
prevOpenHTF = security(syminfo.tickerid, higherTF, open[1], lookahead=true)
prevCloseHTF = security(syminfo.tickerid, higherTF, close[1], lookahead=true)
prevHighHTF = security(syminfo.tickerid, higherTF, high[1], lookahead=true)
prevLowHTF = security(syminfo.tickerid, higherTF, low[1], lookahead=true)
var line prevCloseHTF_line = na
var line prevOpenHTF_line = na
var line prevHighHTF_line = na
var line prevLowHTF_line = na
if prevOpenHTF[1] != prevOpenHTF
line.set_x2(prevOpenHTF_line, bar_index)
line.set_x2(prevCloseHTF_line, bar_index)
line.set_x2(prevHighHTF_line, bar_index)
line.set_x2(prevLowHTF_line, bar_index)
line.set_extend(prevOpenHTF_line, extend.none)
line.set_extend(prevCloseHTF_line, extend.none)
line.set_extend(prevHighHTF_line, extend.none)
line.set_extend(prevLowHTF_line, extend.none)
prevOpenHTF_line := line.new(bar_index, prevOpenHTF, bar_index, prevOpenHTF, extend=extend.right, width=3, color=color.white)
prevCloseHTF_line := line.new(bar_index, prevCloseHTF, bar_index, prevCloseHTF, extend=extend.right, width=3, color=color.gray)
prevHighHTF_line := line.new(bar_index, prevHighHTF, bar_index, prevHighHTF, extend=extend.right, width=3, color=color.green)
prevLowHTF_line := line.new(bar_index, prevLowHTF, bar_index, prevLowHTF, extend=extend.right, width=3, color=color.red)
label.new(bar_index, prevOpenHTF, "OPEN", style=label.style_none, textcolor=color.white, textalign=text.align_right)
label.new(bar_index, prevCloseHTF, "CLOSE", style=label.style_none, textcolor=color.gray, textalign=text.align_right)
label.new(bar_index, prevHighHTF, "HIGH", style=label.style_none, textcolor=color.green, textalign=text.align_right)
label.new(bar_index, prevLowHTF, "LOW", style=label.style_none, textcolor=color.red, textalign=text.align_right)
if not na(prevOpenHTF_line) and line.get_x2(prevOpenHTF_line) != bar_index
line.set_x2(prevOpenHTF_line, bar_index)
line.set_x2(prevCloseHTF_line, bar_index)
line.set_x2(prevHighHTF_line, bar_index)
line.set_x2(prevLowHTF_line, bar_index)