/*********************************Provided By: eSignal (Copyright c eSignal), a division of Interactive Data Corporation. 2008. All rights reserved. This sample eSignal Formula Script (EFS) is for educational purposes only and may be modified and saved under a new file name. eSignal is not responsible for the functionality once modified. eSignal reserves the right to modify and overwrite this EFS file with each new release.Description: FSRS Version: 1.0 01/12/2009Formula Parameters: Default: BuyZone 50 Notes: FSRS is the modification of FSK indicator. It uses RSI in the calculation. The FSRS (Fast & Slow RSI) is constructed from five different parts. The Kurtosis, the Fast Kurtosis(FK), the Fast/Slow Kurtosis(FSK), FSRS and Weighted FSRS.**********************************/var fpArray = new Array();var bInit = false;function preMain() { setStudyTitle("FSRS"); setCursorLabelName("BZ", 0); setCursorLabelName("FSRS", 1); setDefaultBarFgColor(Color.blue, 0); setDefaultBarFgColor(Color.red, 1); var x=0; fpArray[x] = new FunctionParameter("BuyZone", FunctionParameter.NUMBER); with(fpArray[x++]){ setLowerLimit(1); setDefault(50); }}var xMOM_R = null;var xMOM_RAvr = null;var xVal6 = nullvar xVal5 = null;function main(BuyZone) {var nState = getBarState();var nVal5 = 0;var nVal6 = 0; if (nState == BARSTATE_ALLBARS) { if (BuyZone == null) BuyZone = 50; } if ( bInit == false ) { xMOM_R = mom(1, mom(3)); xMOM_RAvr = ema(65, xMOM_R); xVal5 = efsInternal("Calc_Val5", wma(6, xMOM_RAvr), rsi(9)); xVal6 = wma(6, xVal5); addBand(BuyZone,PS_SOLID,1,Color.green, "0"); bInit = true; } if (getCurrentBarCount() < 65) return; nVal5 = xVal5.getValue(0); nVal6 = xVal6.getValue(0); if (nVal5 == null || nVal6 == null) return; return new Array(nVal5, nVal6);}function Calc_Val5(xMOM_RWAvr, xRSI) {var nRes = 0; nRes = 10000 * xMOM_RWAvr.getValue(0) + xRSI.getValue(0); if (nRes == null) nRes = 1; return nRes;} |