Noncommercial Index. COT Index based on noncommercial net value.
study("Noncommercial Index", shorttitle="Noncom Ind", precision=2) force_root = input("", title="Override Product") is_includeoptions = input(false, type=bool, title="Include Options") fxroot = ticker == "USDCAD" ? "CD" : ticker == "USDCAD" ? "CD" : ticker == "USDCHF" ? "SF" : ticker == "USDCZK" ? "CZ" : ticker == "USDHUF" ? "FR" : ticker == "USDILS" ? "IS" : ticker == "USDJPY" ? "JY" : ticker == "USDMXN" ? "MP" : ticker == "USDNOK" ? "UN" : ticker == "USDPLN" ? "PZ" : ticker == "USDRUB" ? "RU" : ticker == "USDSEK" ? "SE" : ticker == "USDZAR" ? "RA" : ticker == "EURUSD" ? "EC" : ticker == "AUDUSD" ? "AD" : ticker == "GBPUSD" ? "BP" : ticker == "NZDUSD" ? "NE" : ticker == "BRLUSD" ? "BR" : "" root = force_root == "" ? fxroot == "" ? syminfo.root : fxroot : force_root code = root + (is_includeoptions ? "_FO" : "_F") + "_L_ALL" is_inversed = ticker == "USDCAD" ? true : ticker == "USDCAD" ? true : ticker == "USDCHF" ? true : ticker == "USDCZK" ? true : ticker == "USDHUF" ? true : ticker == "USDILS" ? true : ticker == "USDJPY" ? true : ticker == "USDMXN" ? true : ticker == "USDNOK" ? true : ticker == "USDPLN" ? true : ticker == "USDRUB" ? true : ticker == "USDSEK" ? true : ticker == "USDZAR" ? true : false long_noncom = security("QUANDL:CFTC/"+code+"|1", "D", close) short_noncom = close long = is_inversed ? short_noncom : long_noncom short = is_inversed ? long_noncom : short_noncom net = long-short length = input(24, title="Period (weeks)") max = highest(net, length) min = lowest(net, length) index = 100 * (net - min) / (max - min) index_adopted = security("QUANDL:CFTC/"+code+"|2", "D", index) plot(index_adopted, color = black, title="Index", style=line) hline(60, color=blue, linestyle=dashed) hline(10, color=blue, linestyle=dashed)