Library "lib_fvg" further expansion of my object oriented library toolkit. This lib detects Fair Value Gaps and returns them as objects. Drawing them is a separate step so the lib can be used with securities. It also allows for usage of current/close price to detect fill/invalidation of a gap and to adjust the fill level dynamically. FVGs can be detected while forming and extended indefinitely while they're unfilled.
method draw(this) Namespace types: FVG Parameters: this (FVG)
is_fvg(mode, precondition, filter_insignificant, filter_insignificant_atr_factor, live) Parameters: mode (int): switch for detection 1 for bullish FVGs, -1 for bearish FVGs precondition (bool): allows for other confluences to block/enable detection filter_insignificant (bool): allows to ignore small gaps filter_insignificant_atr_factor (float): allows to adjust how small (compared to a 50 period ATR) live (bool): allows to detect FVGs while the third bar is forming -> will cause repainting Returns: a tuple of (bar_index of gap bar, gap top, gap bottom)
create_fvg(mode, idx, top, btm, filled_at_pc, config) Parameters: mode (int): switch for detection 1 for bullish FVGs, -1 for bearish FVGs idx (int): the bar_index of the FVG gap bar top (float): the top level of the FVG btm (float): the bottom level of the FVG filled_at_pc (float): the ratio (0-1) that the fill source needs to retrace into the gap to consider it filled/invalidated/ready for removal config (FVGConfig): the plot configuration/styles for the FVG Returns: a new FVG object if there was a new FVG, else na
detect_fvg(mode, filled_at_pc, precondition, filter_insignificant, filter_insignificant_atr_factor, live, config) Parameters: mode (int): switch for detection 1 for bullish FVGs, -1 for bearish FVGs filled_at_pc (float) precondition (bool): allows for other confluences to block/enable detection filter_insignificant (bool): allows to ignore small gaps filter_insignificant_atr_factor (float): allows to adjust how small (compared to a 50 period ATR) live (bool): allows to detect FVGs while the third bar is forming -> will cause repainting config (FVGConfig) Returns: a new FVG object if there was a new FVG, else na
method update(this, fill_src) Namespace types: FVG Parameters: this (FVG) fill_src (float): allows for usage of different fill source series, e.g. high for bearish FVGs, low vor bullish FVGs or close for both
method delete(this) Namespace types: FVG Parameters: this (FVG)
method delete_filled_fvgs_buffered(filled_fvgs, max_keep) Namespace types: FVG[] Parameters: filled_fvgs (FVG[]) max_keep (int): the number of filled, latest FVGs to retain on the chart.
v3 added get_candles to generate Candle objects for the 3 candles forming the FVG
Added: method get_candles(this) Namespace types: FVG Parameters: this (FVG)
เอกสารเผยแพร่
v4 fix max_bars_back error on extended boxes draw
เอกสารเผยแพร่
v5 added tostring
Added: method tostring(this) converts object to json representation Namespace types: FVG Parameters: this (FVG)
เอกสารเผยแพร่
v6 improved calculation
เอกสารเผยแพร่
v7 bugfix
เอกสารเผยแพร่
v8 added a fix for insignificant FVG detection before xth candle, did not work due to ta.atr(x) preventing detection earlier.
Updated: is_fvg(mode, precondition, filter_insignificant, filter_insignificant_atr_factor, insignificant_atr_len, live) Parameters: mode (int): switch for detection 1 for bullish FVGs, -1 for bearish FVGs precondition (bool): allows for other confluences to block/enable detection filter_insignificant (bool): allows to ignore small gaps filter_insignificant_atr_factor (float): allows to adjust how small (compared to a 50 period ATR) insignificant_atr_len (simple int) live (bool): allows to detect FVGs while the third bar is forming -> will cause repainting Returns: a tuple of (bar_index of gap bar, gap top, gap bottom)
detect_fvg(mode, filled_at_pc, precondition, filter_insignificant, filter_insignificant_atr_factor, insignificant_atr_len, live, config) Parameters: mode (int): switch for detection 1 for bullish FVGs, -1 for bearish FVGs filled_at_pc (float) precondition (bool): allows for other confluences to block/enable detection filter_insignificant (bool): allows to ignore small gaps filter_insignificant_atr_factor (float): allows to adjust how small (compared to a 50 period ATR) insignificant_atr_len (simple int) live (bool): allows to detect FVGs while the third bar is forming -> will cause repainting config (FVGConfig) Returns: a new FVG object if there was a new FVG, else na
เอกสารเผยแพร่
v9 fixed insignificant fvg filter
เอกสารเผยแพร่
v10 drawing FVG boxes one bar earlier to match the wick they originate from
เอกสารเผยแพร่
v11 added fill_size_current and filled_pc to store amount of FVG filled in absolute and relative values
เอกสารเผยแพร่
v12 fixed calculation of filled_pc
เอกสารเผยแพร่
v13 allow overfilled with flll_lvl_current > fill_size and filled_pc > 1