FSRS.efs
EFSLibrary - Discussion Board
File Name: FSRS.efs
Description:
FSRS (Modification of FSK Indicator)
Formula Parameters:
- 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.
Download File:
FSRS.efs
EFS Code:
/********************************* 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/2009 Formula 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 = null var 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; }