MHL_MA.efs
File Name: MHL_MA.efs
Description:
The Middle-High-Low Moving Average by Vitali Apirine
Formula Parameters:
MHL_MA.efs
- Lookback: 15
- Avg Length: 35
- Smoothing: sma
- Show Average: true
Notes:
The related article is copyrighted material. If you are not a subscriber of Stocks & Commodities, please visit www.traders.com.
Download File:
MHL_MA.efs
EFS Code:
/********************************* /********************************* Provided By: eSignal (Copyright c eSignal), a division of Interactive Data Corporation. 2016. 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: The Middle-High-Low Moving Average by Vitali Apirine Version: 1.00 06/09/2016 Formula Parameters: Default: Lookback 15 Avg Length 35 Smoothing sma Show Average true Notes: The related article is copyrighted material. If you are not a subscriber of Stocks & Commodities, please visit www.traders.com. **********************************/ var fpArray = new Array(); function preMain(){ setPriceStudy(true); setStudyTitle("MHL"); setCursorLabelName("MHL",0); setCursorLabelName("MA",1); setDefaultBarFgColor(Color.RGB(0,148,255), 0); setDefaultBarFgColor(Color.RGB(255,155,0), 1); var x = 0; fpArray[x] = new FunctionParameter("Lookback", FunctionParameter.NUMBER) with(fpArray[x++]){ setName("Lookback"); setDefault(15); setLowerLimit(1); } fpArray[x] = new FunctionParameter("AvgLength", FunctionParameter.NUMBER) with(fpArray[x++]){ setName("Avg Length"); setDefault(35); setLowerLimit(1); } fpArray[x] = new FunctionParameter("Smoothing", FunctionParameter.STRING) with(fpArray[x++]){ setName("Smoothing"); addOption("sma"); addOption("ema"); setDefault("sma"); } fpArray[x] = new FunctionParameter("isPlot", FunctionParameter.BOOLEAN) with(fpArray[x++]){ setName("Show Average"); setDefault(true); } } var bVersion = null; var bInit = false; var xMA = null; var xBaseMA = null; function main(Lookback, AvgLength, Smoothing, isPlot){ if (bVersion == null) bVersion = verify(); if (bVersion == false) return; if (getBarState() == BARSTATE_ALLBARS){ bInit = false; } if(!bInit){ xMA = eval(Smoothing)(AvgLength, middleDonchian(Lookback)); xBaseMA = eval(Smoothing)(AvgLength); bInit = true; } if (xMA.getValue(0) != null){ if (isPlot) return [xMA.getValue(0), xBaseMA.getValue(0)]; else return xMA.getValue(0); } } function verify(){ var b = false; if (getBuildNumber() < 719){ drawTextAbsolute(5, 35, "This study requires version 10.6 or later.", Color.white, Color.blue, Text.RELATIVETOBOTTOM|Text.RELATIVETOLEFT|Text.BOLD|Text.LEFT, null, 13, "error"); drawTextAbsolute(5, 20, "Click HERE to upgrade.@URL=http://www.esignal.com/download/default.asp", Color.white, Color.blue, Text.RELATIVETOBOTTOM|Text.RELATIVETOLEFT|Text.BOLD|Text.LEFT, null, 13, "upgrade"); return b; } else b = true; return b; }