PINE LIBRARY
Updated SessionInfo

Library "SessionInfo"
Utility functions for session specific information like the bar index of the session.
inSession(spec) Returns true if the current bar is in the session specification.
Parameters:
spec: session.regular (default), session.extended or other time spec.
Returns: True if the current is in session; otherwise false.
minutesToLen(minutes, multiple) Converts the number of minutes to a length to be used with indicators.
Parameters:
minutes: The number of minutes.
multiple: The length multiplier.
Returns: math.ceil(minutes * multiple / timeframe.multiplier)
bar(spec, res) Returns the intraday bar index. May not always map directly to time as a bars can be skipped.
Parameters:
spec: session.regular (default), session.extended or other time spec.
res: The resolution (default = "1440").
Returns: The integer index of the bar of the session.
isFirstBar(spec, res) Returns true if the current bar is the first one of the session.
Parameters:
spec: session.regular (default), session.extended or other time spec.
res: The resolution (default = "1440").
Returns: True if the current bar is the first one of the session.
wasLastBar(spec, res) Returns Returns true if the previous bar was the last of the session.
Parameters:
spec: session.regular (default), session.extended or other time spec.
res: The resolution (default = "1440").
Returns: True if was the last bar of the session.
Utility functions for session specific information like the bar index of the session.
inSession(spec) Returns true if the current bar is in the session specification.
Parameters:
spec: session.regular (default), session.extended or other time spec.
Returns: True if the current is in session; otherwise false.
minutesToLen(minutes, multiple) Converts the number of minutes to a length to be used with indicators.
Parameters:
minutes: The number of minutes.
multiple: The length multiplier.
Returns: math.ceil(minutes * multiple / timeframe.multiplier)
bar(spec, res) Returns the intraday bar index. May not always map directly to time as a bars can be skipped.
Parameters:
spec: session.regular (default), session.extended or other time spec.
res: The resolution (default = "1440").
Returns: The integer index of the bar of the session.
isFirstBar(spec, res) Returns true if the current bar is the first one of the session.
Parameters:
spec: session.regular (default), session.extended or other time spec.
res: The resolution (default = "1440").
Returns: True if the current bar is the first one of the session.
wasLastBar(spec, res) Returns Returns true if the previous bar was the last of the session.
Parameters:
spec: session.regular (default), session.extended or other time spec.
res: The resolution (default = "1440").
Returns: True if was the last bar of the session.
Release Notes
v2Added:
maxBars(spec, res) Returns maximum (usual) number of bars per day.
Parameters:
spec: session.regular (default), session.extended or other time spec.
res: The resolution (default = "1440").
Returns: The max (usual) number of bars per day.
maxMinutes(spec, res) Returns maximum (usual) number of minutes per day.
Parameters:
spec: session.regular (default), session.extended or other time spec.
res: The resolution (default = "1440").
Returns: The max (usual) number of minutes per day.
daysToBars(spec, res) Returns the number of bars equal to the number of days based upon usual session length.
Parameters:
spec: session.regular (default), session.extended or other time spec.
res: The resolution (default = "1440").
Returns: The number of bars representing the number of days.
Release Notes
v3Added:
isIn(spec) Returns true if the current bar is in the session specification.
Parameters:
spec: session.regular (default), session.extended or other time spec.
Returns: True if the current is in session; otherwise false.
isBefore(spec, res) Returns true if the bar is before before the session (default = regular) opens.
Parameters:
spec: session.regular (default), session.extended or other time spec.
res: The resolution (default = timeframe.period).
Returns: True if before the session.
isAfter(spec, res) Returns true if the bar is before before the session (default = regular) opens.
Parameters:
spec: session.regular (default), session.extended or other time spec.
res: The resolution (default = timeframe.period).
Returns: True if before the session.
firstBarOfDay(daysBack, spec, res) Returns the number bars in the past to find the first bar of the session of a given day.
Parameters:
daysBack: The number of days in the past to count the bars.
spec: session.regular (default), session.extended or other time spec.
res: The resolution (default = "1440").
Returns: The number bars in the past to find the first bar of the session of a given day.
Removed:
inSession(spec) Returns true if the current bar is in the session specification.
Release Notes
v4Added:
lastBarOfDay(daysBack, spec, res) Returns the number bars in the past to find the last bar of the session of a given day.
Parameters:
daysBack: The number of days in the past to count the bars.
spec: session.regular (default), session.extended or other time spec.
res: The resolution (default = "1440").
Returns: The number bars in the past to find the last bar of the session of a given day.
Release Notes
v5Release Notes
v6Fixed bug in array initialization.
Release Notes
v7Fixed bug in firstBarOfDay
Release Notes
v8 Improved timeframe detection and response.Release Notes
v9 param name change and improved runtime error messagesUpdated:
firstBarOfDay(daysPrior, spec, res) Returns the number bars in the past to find the first bar of the session of a given day.
Parameters:
daysPrior: The number of days in the past to count the bars.
spec: session.regular (default), session.extended or other time spec.
res: The resolution (default = '1440').
Returns: The number bars in the past to find the first bar of the session of a given day.
lastBarOfDay(daysPrior, spec, res) Returns the number bars in the past to find the last bar of the session of a given day.
Parameters:
daysPrior: The number of days in the past to count the bars.
spec: session.regular (default), session.extended or other time spec.
res: The resolution (default = '1440').
Returns: The number bars in the past to find the last bar of the session of a given day.
Release Notes
v10 Corrected issue with .maxBars()Release Notes
v11Improved performance by using profiler and optimizing where possible.
Added:
isNewDay()
Returns true if the current bar is the first of a new day. Only useful for intraday timeframe.
Returns: True if the current is in session; otherwise false.
Pine library
In true TradingView spirit, the author has published this Pine code as an open-source library so that other Pine programmers from our community can reuse it. Cheers to the author! You may use this library privately or in other open-source publications, but reuse of this code in publications is governed by House Rules.
Disclaimer
The information and publications are not meant to be, and do not constitute, financial, investment, trading, or other types of advice or recommendations supplied or endorsed by TradingView. Read more in the Terms of Use.
Pine library
In true TradingView spirit, the author has published this Pine code as an open-source library so that other Pine programmers from our community can reuse it. Cheers to the author! You may use this library privately or in other open-source publications, but reuse of this code in publications is governed by House Rules.
Disclaimer
The information and publications are not meant to be, and do not constitute, financial, investment, trading, or other types of advice or recommendations supplied or endorsed by TradingView. Read more in the Terms of Use.