Candlestick: Hammer

ICE Data Services -

Hammer.efs                                                                                                                          EFSLibrary - Discussion Board

File Name: Hammer.efs


Description:
Hammer

 

Formula Parameters:
Font : Arial Narrow
Font Size : 11
Font and Shape Color : Green
Font BgColor : White

 

Notes:
This is a bullish reversal candlestick which occurs in a downtrend.
It has a small real body at the top of the candlestick and a long lower shadow.

 

Download File:
Hammer.efs




EFS Code:

/*********************************Provided By: eSignal (Copyright c eSignal), 
a division of Interactive Data Corporation. 2009. 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: HammerVersion: 1.0 12/24/2009
Formula Parameters: Default: Font Arial Narrow Font Size 11 Font
and Shape Color Green Font BgColor White Notes: This is a bullish reversal candlestick 
which occurs in a downtrend. It has a small real body at the top of the candlestick and a long lower shadow.
**********************************/

var fpArray = new Array();

function preMain() {
  setPriceStudy(true);
  setStudyTitle("Hammer");
  setShowCursorLabel(false);
  setShowTitleParameters(false);
  var x = 0;
  fpArray[x] = new FunctionParameter("nFontSize", FunctionParameter.NUMBER);
  with (fpArray[x++]) {
    setName("Font Size");
    setLowerLimit(6);
    setDefault(11);
  }
  fpArray[x] = new FunctionParameter("cFontColor", FunctionParameter.COLOR);
  with (fpArray[x++]) {
    setName("Font and Shape Color");
    setDefault(Color.green);
  }
  fpArray[x] = new FunctionParameter("cFontBgColor", FunctionParameter.COLOR);
  with (fpArray[x++]) {
    setName("Font BgColor");
    setDefault(Color.white);
  }
  fpArray[x] = new FunctionParameter("sFont", FunctionParameter.STRING);
  with (fpArray[x++]) {
    setName("Font");
    setDefault("Arial Narrow");
  }
}

function main(sFont, nFontSize, cFontColor, cFontBgColor) {
  Find_Hammer(sFont, nFontSize, cFontColor, cFontBgColor);
  return;
}

function Find_Hammer(sFont, nFontSize, cFontColor, cFontBgColor) {
  var nState = getBarState();
  var Open = open(0);
  var Close = close(0);
  var Open1 = open(-1);
  var Close1 = close(-1);
  var High = high(0);
  var Low = low(0);
  var nID = getCurrentBarCount();
  if (nState == BARSTATE_ALLBARS) {
    if (sFont == null) sFont = "Arial Narrow";
    if (nFontSize == null) nFontSize = 11;
    if (cFontColor == null) cFontColor = Color.green;
    if (cFontBgColor == null) cFontBgColor = Color.white;
  }
  if (
    High < Math.min(Open1, Close1) &&
    Math.abs(Open - Close) * 3 < Math.min(Open, Close) - Low &&
    High - Math.max(Open, Close) < 0.05 * Math.abs(Open - Close)
  ) {
    drawTextRelative(
      0,
      BelowBar2,
      "Hmr",
      cFontColor,
      cFontBgColor,
      Text.PRESET | Text.CENTER,
      sFont,
      nFontSize,
      "T" + nID
    );
    drawShapeRelative(
      0,
      BelowBar1,
      Shape.UPARROW,
      null,
      cFontColor,
      Shape.PRESET,
      "S" + nID
    );
  } else {
    removeText("T" + nID);
    removeShape("S" + nID);
  }
  return;
}