Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- //╔════════════════════════════════════════════════════════════════════════════╗
- //║ ║
- //║ ▓▓ ▓▓ ▓▓▓▓▓ ▓▓ ▓▓ ║
- //║ ▓▓ ▓▓ ▓▓ ▓▓ ▓▓▓ ▓▓▓ ▓▓ ║
- //║ ▓▓ ▓ ▓▓ ▓▓▓▓▓ ▓▓ ▓ ▓▓ ▓▓▓▓▓▓ ║
- //║ ▓▓▓▓▓▓▓ ▓▓ ▓▓ ▓▓ ▓▓ ▓▓ ║
- //║ ▓▓ ▓▓ ▓▓ ▓▓ ▓▓ ▓▓ ║
- //║ ║
- //║ < WT_RSI_MFI+ > ║
- //╟──────────────┬─────────────────────────────────────────────────────────────╢
- //║ Description: │ An indicator conglomerate combining Wavetrend from LB, ║
- //║ │ RSI and MFI with buy and sell signals ║
- //╟──────────────┼─────────────────────────────────────────────────────────────╢
- //║ Authors: │ liHard, Lazybear for Wavetrend ║
- //╟──────────────┼─────────────────────────────────────────────────────────────╢
- //║ Version: │ 0.20 2014_09_13 ║
- //╚══════════════╧═════════════════════════════════════════════════════════════╝
- study(title="IDDQD-α", shorttitle="IDDQD-α")
- alt_symb = input(title="Symbol", type=symbol, defval="BTCE:BTCUSD")
- set_symbol = input(false, "Set symbol")
- close_src = set_symbol ? security(alt_symb, period, close) : close
- hlc3_src = set_symbol ? security(alt_symb, period, hlc3) : hlc3
- //---------------------------------------------------------------------
- //--- Wavetrend -------------------------------------------------------
- wt_n1 = input(10, "WT Channel Length")
- wt_n2 = input(21, "WT Average Length")
- wt_ob_lev1 = input(60, "WT Overbought Level 1")
- wt_ob_lev2 = input(53, "WT Overbought Level 2")
- wt_os_lev1 = input(-70, "WT Oversold Level 1")
- wt_os_lev2 = input(-53, "WT Oversold Level 2")
- wt_ap = hlc3_src
- wt_esa = ema(wt_ap, wt_n1)
- wt_d = ema(abs(wt_ap - wt_esa), wt_n1)
- wt_ci = (wt_ap - wt_esa) / (0.015 * wt_d)
- wt_tci = ema(wt_ci, wt_n2)
- wt1 = wt_tci
- wt2 = sma(wt1,4)
- //---------------------------------------------------------------------
- //--- RSI -------------------------------------------------------------
- rsi_length = input(title="RSI length", type=integer, defval=14, minval=1, maxval=2000)
- rsi_ob_lev = input(70, "RSI overbought level")
- rsi_os_lev = input(30, "RSI oversold level")
- rsi = rsi(close_src, rsi_length)
- //---------------------------------------------------------------------
- //--- MFI -------------------------------------------------------------
- mfi_length = input(title="MFI length", type=integer, defval=14, minval=1, maxval=2000)
- mfi_ob_lev = input(80, "MFI overbought level")
- mfi_os_lev = input(20, "MFI oversold level")
- mfi_src = hlc3_src
- mfi_upper = sum(volume * (change(mfi_src) <= 0 ? 0 : mfi_src), mfi_length)
- mfi_lower = sum(volume * (change(mfi_src) >= 0 ? 0 : mfi_src), mfi_length)
- mfi = rsi(mfi_upper, mfi_lower)
- //---------------------------------------------------------------------
- //--- buy/sell signals ------------------------------------------------
- wt_cor = (wt1+100)*0.5
- //---------------------------------------------------------------------
- //--- ob/os calc 0 ----------------------------------------------------
- rsi_win = input(3, "RSI window length", minval=1)
- mfi_win = input(3, "MFI window length", minval=1)
- wt_win = input(3, "WT window length", minval=1)
- wt_overbought = highest(wt1, wt_win) > wt_ob_lev1 ? 1 : 0
- wt_oversold = lowest(wt1, wt_win) < wt_os_lev1 ? 1 : 0
- mfi_overbought = highest(mfi, mfi_win) > mfi_ob_lev ? 1 : 0
- mfi_oversold = lowest(mfi, mfi_win) < mfi_os_lev ? 1 : 0
- rsi_overbought = highest(rsi, rsi_win) > rsi_ob_lev ? 1 : 0
- rsi_oversold = lowest(rsi, rsi_win) < rsi_os_lev ? 1 : 0
- //rsi_over_lev = rsi_overbought == 1 ? rsi_ob_lev : rsi_oversold == 1 ? rsi_os_lev : na
- overbought_0 = rsi_overbought + mfi_overbought + wt_overbought >= 3
- oversold_0 = rsi_oversold + mfi_oversold + wt_oversold >= 3
- stupid_bgcolor_0 = overbought_0 ? #FF0000 : oversold_0 ? #00FF00 : #000000
- over_lev = overbought_0 ? 45 : oversold_0 ? 55 : na
- //---------------------------------------------------------------------
- //--- plot ------------------------------------------------------------
- //plotshape(over_lev, "ob_os", shape.circle, location.absolute, stupid_bgcolor_0, 50, 0)
- plot(over_lev, color=stupid_bgcolor_0, style=linebr, linewidth=4)
- mfi_ob_line = hline(mfi_ob_lev, title="MFI overbought", color=#804040)
- rsi_ob_line = hline(rsi_ob_lev, title="RSI overbought", color=#808080)
- hline(50, color=#606060)
- rsi_os_line = hline(rsi_os_lev, title="RSI oversold", color=#808080)
- mfi_os_line = hline(mfi_os_lev, title="MFI oversold", color=#408040)
- fill(rsi_ob_line, rsi_os_line, color=#404080, transp=70)
- plot(wt_cor, title="WT", color=#006080, style=line)
- plot(mfi, title="MFI", color=#308010, style=line)
- plot(rsi, title="RSI", color=#FFFFFF, style=line, linewidth=1)
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement