DMI_Oscillator.efs, DMI_Stochastic_Extreme.efs, DMI_Stochastic_Reversal_Alerts.efs
File Name: DMI_Oscillator.efs, DMI_Stochastic_Extreme.efs, DMI_Stochastic_Reversal_Alerts.efs
Description:
The DMI Stochastic by Barbara Star
Formula Parameters:
DMI_Oscillator.efs
- DMI Oscillator Period: 10
- Up Color: blue
- Down Color: red
DMI_Stochastic_Extreme.efs
- DMI Stochastic Period: 10
- DMI Stochastic High/Low Period: 3
- DMI Stochastic Sum Period: 3
- Extreme Low Color: blue
- Extreme Low Level: 10
- Extreme High Color: red
- Extreme High Level: 90
DMI_Stochastic_Reversal_Alerts.efs
- DMI Stochastic Period: 10
- DMI Stochastic High/Low Period: 3
- DMI Stochastic Sum Period: 3
- DMI Stochastic MA Period: 3
- Below Color: green
- Above Color: red
Notes:
The related article is copyrighted material. If you are not a subscriber of Stocks & Commodities, please visit www.traders.com.
Download File:
DMI_Oscillator.efs
DMI_Stochastic_Extreme.efs
DMI_Stochastic_Reversal_Alerts.efs
DMI_Oscillator.efs, DMI_Stochastic_Extreme.efs, DMI_Stochastic_Reversal_Alerts.efs
EFS Code:
DMI_Oscillator.efs
/********************************* Provided By: eSignal (Copyright c eSignal), a division of Interactive Data Corporation. 2012. 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: DMI Stochastic by Barbara Star Version: 1.00 06/07/2012 Formula Parameters: Default: DMI Oscillator Period 10 Up Color blue Down Color red 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() { setStudyTitle("DMI Oscillator"); setPlotType(PLOTTYPE_HISTOGRAM, 0); setColorPriceBars(true); var x=0; fpArray[x] = new FunctionParameter("gPeriod", FunctionParameter.NUMBER); with(fpArray[x++]) { setName("DMI Oscillator Period"); setLowerLimit(1); setDefault(10); } fpArray[x] = new FunctionParameter("gUpColor", FunctionParameter.COLOR); with(fpArray[x++]) { setName("Up Color"); setDefault(Color.blue); } fpArray[x] = new FunctionParameter("gDownColor", FunctionParameter.COLOR); with(fpArray[x++]) { setName("Down Color"); setDefault(Color.red); } } var bInit = false; var bVersion = null; var xPDI = null; var xMDI = null; function main(gPeriod,gUpColor,gDownColor) { if (bVersion == null) bVersion = verify(); if (bVersion == false) return; if(!bInit) { xPDI = pdi(gPeriod,gPeriod); xMDI = ndi(gPeriod,gPeriod); bInit = true; } var vPDI = xPDI.getValue(0); var vMDI = xMDI.getValue(0) if (vPDI == null || vMDI == null) return; vDMI = vPDI-vMDI; if (vDMI>0) setPriceBarColor(gUpColor); else setPriceBarColor(gDownColor); return new Array(vDMI, vDMI); } function verify() { var b = false; if (getBuildNumber() < 779) { drawTextAbsolute(5, 35, "This study requires version 8.0 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; }
DMI_Stochastic_Extreme.efs
/********************************* Provided By: eSignal (Copyright c eSignal), a division of Interactive Data Corporation. 2012. 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: DMI Stochastic by Barbara Star Version: 1.00 06/07/2012 Formula Parameters: Default: DMI Stochastic Period 10 DMI Stochastic High/Low Period 3 DMI Stochastic Sum Period 3 Extreme Low Color blue Extreme Low Level 10 Extreme High Color red Extreme High Level 90 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() { setStudyTitle("DMI Stochastic Extreme"); var x = 0; fpArray[x] = new FunctionParameter("gPeriod", FunctionParameter.NUMBER); with(fpArray[x++]) { setName("DMI Stochastic Period"); setLowerLimit(1); setDefault(10); } fpArray[x] = new FunctionParameter("gHLPeriod", FunctionParameter.NUMBER); with(fpArray[x++]) { setName("DMI Stochastic High/Low Period"); setLowerLimit(1); setDefault(3); } fpArray[x] = new FunctionParameter("gSumPeriod", FunctionParameter.NUMBER); with(fpArray[x++]) { setName("DMI Stochastic Sum Period"); setLowerLimit(1); setDefault(3); } fpArray[x] = new FunctionParameter("gLowColor", FunctionParameter.COLOR); with(fpArray[x++]) { setName("Extreme Low Color"); setDefault(Color.blue); } fpArray[x] = new FunctionParameter("gLowExreme", FunctionParameter.NUMBER); with(fpArray[x++]) { setName("Extreme Low Level"); setLowerLimit(10); setUpperLimit(15); setDefault(10); } fpArray[x] = new FunctionParameter("gHighColor", FunctionParameter.COLOR); with(fpArray[x++]) { setName("Extreme High Color"); setDefault(Color.red); } fpArray[x] = new FunctionParameter("gHighExreme", FunctionParameter.NUMBER); with(fpArray[x++]) { setName("Extreme High Level"); setLowerLimit(85); setUpperLimit(90); setDefault(90); } fpArray[x] = new FunctionParameter("gShowArrows", FunctionParameter.BOOLEAN); with(fpArray[x++]) { setName("Show Arrows"); setDefault(true); } } var bInit = false; var bVersion = null; var xStoh = null; function main(gPeriod, gHLPeriod, gSumPeriod, gLowColor, gLowExreme, gHighColor, gHighExreme,gShowArrows) { if (bVersion == null) bVersion = verify(); if (bVersion == false) return; if (!bInit) { xStoh = efsInternal("GetDMI_Stohastic", gPeriod, gHLPeriod, gSumPeriod); bInit = true; } var vStoh_0 = xStoh.getValue(0); var vStoh_1 = xStoh.getValue(-1); if (vStoh_1 == null) return; if (gShowArrows) { if (vStoh_0 > gLowExreme && vStoh_1 <= gLowExreme) { drawShapeRelative(0, gLowExreme - 5 , Shape.UPARROW, null, gLowColor, Shape.CENTER); } if (vStoh_0 < gHighExreme && vStoh_1 >= gHighExreme) { drawShapeRelative(0, gHighExreme + 5, Shape.DOWNARROW, null, gHighColor, Shape.CENTER); } } return vStoh_0; } var bStohInit = false; var xOsc = null; var xHHV = null; var xLLV = null; function GetDMI_Stohastic(gPeriod, gHLPeriod, gSumPeriod) { if(!bStohInit) { xOsc = efsInternal("GetOsc", gPeriod); xHHV = hhv(gHLPeriod, xOsc); xLLV = llv(gHLPeriod, xOsc); bStohInit = true; } if(xHHV.getValue(-gSumPeriod) == null || xLLV.getValue(-gSumPeriod) == null) return; var nSumNumerator = 0; var nSumDenomenator = 0; for (var i = 0; i < gSumPeriod; i++) { nSumNumerator += xOsc.getValue(-i) - xLLV.getValue(-i); nSumDenomenator += xHHV.getValue(-i) - xLLV.getValue(-i); } if (nSumDenomenator == 0) return; var nResult = (nSumNumerator / nSumDenomenator) * 100; return nResult; } var bGetOscInit = false; var xPDI = null; var xMDI = null; function GetOsc(gPeriod) { if(!bGetOscInit) { xPDI = pdi(gPeriod, gPeriod); xMDI = ndi(gPeriod, gPeriod); bGetOscInit = true; } var vPDI = xPDI.getValue(0); var vMDI = xMDI.getValue(0) if (vPDI == null || vMDI == null) return; var vDMI = vPDI - vMDI; return vDMI; } function verify() { var b = false; if (getBuildNumber() < 779) { drawTextAbsolute(5, 35, "This study requires version 8.0 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; }
DMI_Stochastic_Reversal_Alerts.efs
/********************************* Provided By: eSignal (Copyright c eSignal), a division of Interactive Data Corporation. 2012. 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: DMI Stochastic by Barbara Star Version: 1.00 06/07/2012 Formula Parameters: Default: DMI Stochastic Period 10 DMI Stochastic High/Low Period 3 DMI Stochastic Sum Period 3 DMI Stochastic MA Period 3 Below Color green Above Color red 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() { setStudyTitle("DMI Stochastic Reversal Alerts"); setPriceStudy(true); var x=0; fpArray[x] = new FunctionParameter("gPeriod", FunctionParameter.NUMBER); with(fpArray[x++]) { setName("DMI_Stochastic Period"); setLowerLimit(1); setDefault(10); } fpArray[x] = new FunctionParameter("gHLPeriod", FunctionParameter.NUMBER); with(fpArray[x++]) { setName("DMI Stochastic High/Low Period"); setLowerLimit(1); setDefault(3); } fpArray[x] = new FunctionParameter("gSumPeriod", FunctionParameter.NUMBER); with(fpArray[x++]) { setName("DMI Stochastic Sum Period"); setLowerLimit(1); setDefault(3); } fpArray[x] = new FunctionParameter("gMAPeriod", FunctionParameter.NUMBER); with(fpArray[x++]) { setName("DMI Stochastic MA Period"); setLowerLimit(1); setDefault(3); } fpArray[x] = new FunctionParameter("gBelowColor", FunctionParameter.COLOR); with(fpArray[x++]) { setName("Below Color"); setDefault(Color.green); } fpArray[x] = new FunctionParameter("gAboveColor", FunctionParameter.COLOR); with(fpArray[x++]) { setName("Above Color"); setDefault(Color.red); } } var bMainInit = false; var bVersion = null; var xStoh=null; var xMA=null; function main(gPeriod,gHLPeriod,gSumPeriod,gMAPeriod,gBelowColor,gAboveColor) { if (bVersion == null) bVersion = verify(); if (bVersion == false) return; if(!bMainInit) { xStoh=efsInternal("GetDMI_Stohastic",gPeriod,gHLPeriod,gSumPeriod); xMA=sma(gMAPeriod,xStoh); bMainInit = true; } var vStoh_0 = xStoh.getValue(0); var vStoh_1 = xStoh.getValue(-1); var vMA_0 = xMA.getValue(0); var vMA_1 = xMA.getValue(-1); if (vStoh_1==null || vMA_1==null) return; if (vStoh_1 < vMA_1 && vStoh_0 > vMA_0) { drawShapeRelative(0, BelowBar1, Shape.DIAMOND, null, gBelowColor, Shape.PRESET); } if (vStoh_1 > vMA_1 && vStoh_0 < vMA_0) { drawShapeRelative(0, AboveBar1, Shape.DIAMOND, null, gAboveColor, Shape.PRESET); } return; } var bStohInit = false; var xOsc = null; var xHHV = null; var xLLV = null; function GetDMI_Stohastic(gPeriod, gHLPeriod, gSumPeriod) { if(!bStohInit) { xOsc = efsInternal("GetOsc", gPeriod); xHHV = hhv(gHLPeriod, xOsc); xLLV = llv(gHLPeriod, xOsc); bStohInit = true; } if(xHHV.getValue(-gSumPeriod) == null || xLLV.getValue(-gSumPeriod) == null) return; var nSumNumerator = 0; var nSumDenomenator = 0; for (var i = 0; i < gSumPeriod; i++) { nSumNumerator += xOsc.getValue(-i) - xLLV.getValue(-i); nSumDenomenator += xHHV.getValue(-i) - xLLV.getValue(-i); } if (nSumDenomenator == 0) return; var nResult = (nSumNumerator / nSumDenomenator) * 100; return nResult; } var bGetOscInit = false; var xPDI = null; var xMDI = null; function GetOsc(gPeriod) { if(!bGetOscInit) { xPDI = pdi(gPeriod, gPeriod); xMDI = ndi(gPeriod, gPeriod); bGetOscInit = true; } var vPDI = xPDI.getValue(0); var vMDI = xMDI.getValue(0) if (vPDI == null || vMDI == null) return; var vDMI = vPDI - vMDI; return vDMI; } function verify() { var b = false; if (getBuildNumber() < 779) { drawTextAbsolute(5, 35, "This study requires version 8.0 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; }