PINE LIBRARY
Updated

SAT_LIB

1263
Library "SAT_LIB"
TODO: This library regroups indicator's functions and functions i use a lot

getRENKOLEVELS(upColor1, dnColor1, HIGH, LOW, ATR)
  TODO: RenkoLevels indicator by Mongolor function
  Parameters:
    upColor1: TODO: (Type: color) renko up color
    dnColor1: TODO: (Type: color) renko down color
    HIGH: TODO: (Type: float)
    LOW: TODO: (Type: float)
    ATR: TODO: (Type: float)
  Returns: TODO: Renkolevels
Release Notes
v2

Added:
conv_atr(valu)
  TODO: RENKO RSI indicator by LonesomeTheBlue function
  Parameters:
    valu: TODO: (Type: float)
  Returns: TODO: ATR boxSize

boxTreatment(mode, atrboxsize, boxsize, source)
  TODO: RENKO RSI indicator by LonesomeTheBlue function
  Parameters:
    mode: TODO: (Type: string)
    atrboxsize: TODO: (Type: float)
    boxsize: TODO: (Type: float)
    source: TODO: (Type: string)
  Returns: TODO: [box, icloseprice, iopenprice, trend]

Renko_rsi(ser, len, trcnt, obox, trch, trend)
  TODO: RENKO RSI indicator by LonesomeTheBlue function
  Parameters:
    ser: TODO: (Type: float)
    len: TODO: (Type: int)
    trcnt: TODO: (Type: int)
    obox: TODO: (Type: float)
    trch: TODO: (Type: bool)
    trend: TODO: (Type: int)
  Returns: TODO: renkRSI
Release Notes
v3

Added:
showOnlyFirstSignal(boolean, bool1, bool1_switchOff_cond, bool2, bool2_switchOff_cond)
  TODO: Show Only first occurence depending on another condition
  Parameters:
    boolean: TODO: (Type: bool)
    bool1: TODO: (Type: bool)
    bool1_switchOff_cond: TODO: (Type: bool)
    bool2: TODO: (Type: bool)
    bool2_switchOff_cond: TODO: (Type: bool)
  Returns: TODO: Filterred [bool1, booll2]

showOnlyFirstOccurence(booleanInput)
  Single out the occurence of a bool series between to 2 bool series.
  Parameters:
    booleanInput: to activate or deactivate occurences filtering.
  Returns: filterred or not bool series.
Release Notes
v4

Added:
getDoubleMovingAverages(fast_ma_type, fast_ma_length, fast_ma_src)
  TODO: [ SMA , SMMA , EMA , VWMA , HULL, TEMA ] Between this options this function return a fast and a slow moving averages.
  Parameters:
    fast_ma_type: TODO: string fast MA type
    fast_ma_length: TODO: int fast MA type
    fast_ma_src: TODO: float fast MA source
  Returns: TODO: [fast_ma, slow_ma]
Release Notes
v5
Release Notes
v6

Added:
getMovingAverage(fast_ma_type, fast_ma_length, fast_ma_src, fast_ma_type, fast_ma_length, fast_ma_src)
  TODO: [ SMA , SMMA , EMA , VWMA , HULL, TEMA ] Between this options this function return a fast and a slow moving averages.
  Parameters:
    fast_ma_type: TODO: string fast MA type
    fast_ma_length: TODO: int fast MA type
    fast_ma_src: TODO: float fast MA source
    fast_ma_type: TODO: string slow MA type
    fast_ma_length: TODO: int slow MA type
    fast_ma_src: TODO: float slow MA source
  Returns: TODO: [fast_ma, slow_ma]
Release Notes
v7

Added:
Cond_EMA()

Cond_SMA()

Stdev()
Release Notes
v8

Added:
rng_size()
Release Notes
v9
Release Notes
v10

Added:
Var_Func(src, length)
  TODO: HOTT LOTT indicator by KivancOzbilgic function
  Parameters:
    src: TODO: float
    length: TODO: int
  Returns: TODO: float VAR

Wwma_Func(src, length)
  TODO: WWMA by KivancOzbilgic function
  Parameters:
    src: TODO: float
    length: TODO: int
  Returns: TODO: float WWMA

Zlema_Func(src, length)
  TODO: ZLEMA by KivancOzbilgic function
  Parameters:
    src: TODO: float
    length: TODO: int
  Returns: TODO: float ZLEMA

Tsf_Func(src, length)
  TODO: TSF by KivancOzbilgic function
  Parameters:
    src: TODO: float
    length: TODO: int
  Returns: TODO: float ZLEMA

getMA(mav, src, length, x, VAR1, VAR2, WWMA1, WWMA2, ZLEMA1, ZLEMA2, TSF1, TSF2)
  TODO: getMA by KivancOzbilgic function cutomised
  Parameters:
    mav: TODO: string
    src: TODO: float
    length: TODO: int
    x: TODO: string type
    VAR1: TODO: float
    VAR2: TODO: float
    WWMA1: TODO: float
    WWMA2: TODO: float
    ZLEMA1: TODO: float
    ZLEMA2: TODO: float
    TSF1: TODO: float
    TSF2: TODO: float
  Returns: TODO: float ZLEMA
Release Notes
v11

Added:
getMA2(mav, src, length, DEMA, VAR, WWMA, ZLEMA, TSF, HMA)
  TODO: getMA by KivancOzbilgic function cutomised
  Parameters:
    mav: TODO: string
    src: TODO: float
    length: TODO: int
    DEMA: TODO: float
    VAR: TODO: float
    WWMA: TODO: float
    ZLEMA: TODO: float
    TSF: TODO: float
    HMA: TODO: float
  Returns: TODO: float ZLEMA
Release Notes
v12

Added:
SmMA(source, length, type)
  TODO: getMA
  Parameters:
    source: TODO: float
    length: TODO: int
    type: TODO: float
  Returns: TODO: float ZLEMA
Release Notes
v13

Added:
getATRBands(atrPeriod, atrSourceRef)
  TODO: get ATR function cutomised
  Parameters:
    atrPeriod: TODO: int
    atrSourceRef: TODO: string
  Returns: TODO: [upperATRBand, lowerATRBand]
Release Notes
v14

Added:
rangeValue(ha_close, ha_high, ha_low)
  TODO: return average Range and state value
  Parameters:
    ha_close: TODO: float
    ha_high: TODO: float
    ha_low: TODO: float
  Returns: TODO: [mid, uppish, downish, midUp, midDn, realb, reals]
Release Notes
v15
Release Notes
v16
Release Notes
v17
Release Notes
v18
Release Notes
v19
Release Notes
v20

Added:
getATRTrendBands(src, delta)
  get trend ATR bands.
  Parameters:
    src: TODO: float
    delta: TODO: float
  Returns: TODO: [midb, upperb, lowerb]
Release Notes
v21

Added:
rangify(hvalue, lvalue, divider)
  TODO: return an array containing up to 21 levels divising a Range
  Parameters:
    hvalue: TODO: float
    lvalue: TODO: float
    divider: TODO: int
  Returns: TODO: levels
Release Notes
v22

Added:
unchanged(value, lvalue, leftlookback)
  TODO: return an array containing up to 21 levels divising a Range
  Parameters:
    value: TODO: float
    lvalue: TODO: float
    leftlookback: TODO: int
  Returns: TODO: levels
Release Notes
v23
Release Notes
v24
Release Notes
v25

Added:
three_V_unchanged(value, leftlookback)
  TODO: Modifiy a boolean to false if 3 values for the past leftlookback have not changed
  Parameters:
    value: TODO: float
    leftlookback: TODO: int
  Returns: TODO: nothing
Release Notes
v26

Added:
ConditionedCondition(cond1, cond2)
  TODO: find the first occurrence of a condtion depending on a prior condition
  Parameters:
    cond1: TODO: bool
    cond2: TODO: bool
  Returns: TODO: the candle where cond 2 happened
Release Notes
v27

Added:
lineBetweenLines(hl1, ll2, percent)
  TODO: return a line between 2 lines, the line position depend of the percent parameter
  Parameters:
    hl1: (higher line) TODO: float
    ll2: (lower line) TODO: float
    percent: TODO: float
  Returns: TODO: return a line between 2 lines, the line position depend of the percent parameter
Release Notes
v28

Updated:
rangeValue(ha_close, ha_high, ha_low, darkMode)
  TODO: return average Range and state value
  Parameters:
    ha_close: TODO: float
    ha_high: TODO: float
    ha_low: TODO: float
    darkMode: TODO: bool
  Returns: TODO: [mid, uppish, downish, midUp, midDn, realb, reals]
Release Notes
v29

Added:
ConditionedFisrtOccurence(priorCond, cond2, singleton)
  TODO: find the first occurrence or all occurences of a condtion depending on a prior condition
  Parameters:
    priorCond: TODO: bool
    cond2: TODO: bool
    singleton: TODO: bool
  Returns: TODO: the candle where cond 2 happened

Updated:
ConditionedCondition(priorCond, cond2)
  TODO: find the first occurrence of a condtion depending on a prior condition
  Parameters:
    priorCond: TODO: bool
    cond2: TODO: bool
  Returns: TODO: the candle where cond 2 happened
Release Notes
v30

Added:
unchanged_value(leftlookback, value)
  TODO: Modifiy a boolean to false if the value for the past leftlookback have changed
  Parameters:
    leftlookback: TODO: int
    value: TODO: float
  Returns: TODO: nothing

unchanged_condition(leftlookback, cond)
  TODO: Modifiy a boolean to false if the value for the past leftlookback have changed
  Parameters:
    leftlookback: TODO: int
    cond: TODO: bool
  Returns: TODO: nothing

cumulative_lookback(leftlookback, value)
  TODO: cumulates a series value for the past leftlookback
  Parameters:
    leftlookback: TODO: int
    value: TODO: float
  Returns: TODO: cummulative total

reseting_cmltv_lookback(leftlookback, value, invalid_cond, valid_cond)
  TODO: cumulates a series value for the past leftlookback depending on a valid and invalid condition
  Parameters:
    leftlookback: TODO: int
    value: TODO: float
    invalid_cond: TODO: bool
    valid_cond: TODO: bool
  Returns: TODO: cummulative total

AbsPercentChange(src)
  TODO: return the variation percent of a serie
  Parameters:
    src: TODO: float
  Returns: TODO: return the variation percent of a serie

Removed:
unchanged(leftlookback, value)
  TODO: Modifiy a boolean to false if the value for the past leftlookback have changed
Release Notes
v31
Release Notes
v32

Added:
variation_status(serie)
  TODO: return posistive / negative variation candle of a serie
  Parameters:
    serie: TODO: float
  Returns: TODO: [state, realb, reals]
Release Notes
v33

Updated:
variation_status(serie)
  TODO: return posistive / negative variation candle of a serie
  Parameters:
    serie: TODO: float
  Returns: TODO: [variation, state, realb, reals]
Release Notes
v34

Updated:
ConditionedCondition(priorCond, cond2, cond3)
  TODO: find the first occurrence of a condtion depending on a prior condition
  Parameters:
    priorCond: TODO: bool
    cond2: TODO: bool
    cond3: TODO: bool decide when we look for first prior condition occurence or not
  Returns: TODO: the candle where cond 2 happened
Release Notes
v35
Release Notes
v36

Added:
AbsPercent(src1, src2)
  TODO: return the percent difference between 2 series
  Parameters:
    src1 (float): TODO: float
    src2 (float): TODO: float
  Returns: TODO: return the variation percent of a serie
Release Notes
v37

Added:
CondiCummulPercent(cond1, src)
  TODO: return the percent difference between 2 series
  Parameters:
    cond1 (bool): TODO: bool
    src (float)
  Returns: TODO: return the variation percent of a serie
Release Notes
v38
Release Notes
v39

Updated:
CondiCummulPercent(cond1, src, cond2)
  TODO: return the cummuled variation percent of a serie depending on bool cond
  Parameters:
    cond1 (bool): TODO: bool
    src (float)
    cond2 (bool): TODO: bool
  Returns: TODO: return the cumuled variation percent of a serie
Release Notes
v40
Release Notes
v41

Added:
f_getPrice(_osc, _thresh, _cross)
  TODO: return the price
  Parameters:
    _osc (float): TODO: float
    _thresh (float): TODO: float
    _cross (string): TODO: string
  Returns: TODO: return return_1
Release Notes
v42
Release Notes
v43

Added:
ict_donchian(prd)
  Parameters:
    prd (int): TODO: int
  Returns: TODO: return donchian levels
Release Notes
v44

Added:
session_tick(rth_ses, colori, ref_res)
  Parameters:
    rth_ses (string): TODO: string
    colori (color)
    ref_res (string): TODO: string
  Returns: TODO: return donchian levels

is_newbar(res)
  Parameters:
    res (string): TODO: string
  Returns: TODO: return is new bar of timeframe
Release Notes
v45
Release Notes
v46

Added:
abs_variation_beetweenlines(hl1, ll2)
  TODO: return a the percent distance between 2 ylines, the line position depend of the percent parameter
  Parameters:
    hl1 (float): (higher line) TODO: float
    ll2 (float): (lower line) TODO: float
  Returns: TODO: return float distance percent
Release Notes
v47
Release Notes
v48

Added:
getDailyHighLow()
Release Notes
v49

Added:
calculateRSI_BANDZ(rsiSourceInput, rsiLengthInput, up_level, dn_level)
  TODO: RSI BANDZ
  Parameters:
    rsiSourceInput (float)
    rsiLengthInput (simple int)
    up_level (int)
    dn_level (int)
  Returns: TODO: RSI BANDZ DATA [rsi, up_lev_line, dn_lev_line, rsi_range, rsi_line_chart]
Release Notes
v50

Added:
RTI(trend_sens_percent, data_count, signal_length)
  TODO: RTI Level
  Parameters:
    trend_sens_percent (int)
    data_count (int)
    signal_length (simple int)
  Returns: TODO: RTI Level [rsi, up_lev_line, dn_lev_line, rsi_range, rsi_line_chart]
Release Notes
v51

Added:
range_dividers(upperb, lowerb, mid_b, rg_divider, darkMode0, showRgDividers0, showRgSplitter0)
  TODO : plot up to 21 levels divising a Range
  Parameters:
    upperb (float): TODO : float
    lowerb (float): TODO : float
    mid_b (float): TODO : float
    rg_divider (int): TODO : int
    darkMode0 (bool): TODO : bool
    showRgDividers0 (bool): TODO : bool
    showRgSplitter0 (bool): TODO : bool
  Returns: TODO: levels
Release Notes
v52
Release Notes
v53

Updated:
range_dividers(upperb, lowerb, rg_divider)
  Parameters:
    upperb (float)
    lowerb (float)
    rg_divider (int)
Release Notes
v54

Added:
trigCondiCummulPercent(triggeringcond1, src, cancelingcond2)
  TODO: return the cummuled variation percent of a serie depending on bool cond
  Parameters:
    triggeringcond1 (bool): TODO: bool
    src (float)
    cancelingcond2 (bool): TODO: bool
  Returns: TODO: return the cumuled variation percent of a serie
Release Notes
v55

Updated:
trigCondiCummulPercent(triggeringcond1, src, resettingcond2)
  TODO: return the cummuled variation percent of a serie depending on bool cond
  Parameters:
    triggeringcond1 (bool): TODO: bool
    src (float)
    resettingcond2 (bool)
  Returns: TODO: return the cumuled variation percent of a serie
Release Notes
v56
Release Notes
v57

Added:
full_hott_lott(length, hLen, lLen, mav, percent)
  Parameters:
    length (simple int): TODO: simple int
    hLen (int)
    lLen (int): TODO: int
    mav (string): TODO: string
    percent (float): TODO: float
  Returns: TODO: [HOTT, LOTT]
Release Notes
v58

Added:
TwoTrendzState(long_trigger, short_trigger)
  TODO: return 2 trendz state
  Parameters:
    long_trigger (bool)
    short_trigger (bool): TODO: bool
  Returns: TODO: [long_trend_state, short_trend_state]

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.