Candle Patterns Indicator For MT4

Candle Patterns Indicator For MT4

Table Of Contents:

  1. Candle Patterns Indicator For MT4
  2. Installing the Candle Patterns Indicator For MT4
  3. Parameters of the Candle Patterns Indicator For MT4
  4. Buffers of the Candle Patterns Indicator For MT4
  5. Main Parts Of The Code

The Candle Patterns Indicator For MT4 detects and displays the following exhaustive list of candlestick reversal and continuation patterns: 1. Four Price Doji 2. High Wave 3. Long Legged Doji 4. Umbrella 5. Inverted Umbrella 6. Doji 7. Black Spinning Top 8. White Spinning Top 9. Small Black Candle 10. Small White Candle 11. White Candle 12. Black Candle 13. Bearish Kicking Pattern 14. Bearish Dark Cloud Cover 15. Bearish Evening Star 16. Bearish Abandoned Baby 17. Bearish Evening Doji Star 18. Bearish 3 Inside Down 19. Bearish 3 Black Crows 20. Bearish 3 Outside Down 21. Bearish Dragonfly Doji 22. Bearish Upside Gap 2 Crows 23. Bearish Long Legged Doji 24. Bearish Engulfing 25. Bearish Doji Star 26. Bearish Gravestone Doji 27. Bearish Meeting Lines 28. Bearish Harami Cross 29. Bearish Advance Block 30. Bearish Deliberation 31. Bearish Star 32. Bearish Crows 33. Bearish Breakaway 34. Bearish Hanging Man 35. Bearish Belt Hold 36. Bearish Shooting Star 37. Bearish Falling Methods 38. Bearish Harami 39. Bearish On Neck 40. Bearish In Neck 41. Bearish Downside Tasuki Gap 42. Bearish Downside Gap Methods 43. Bearish Seperating Lines 44. Bearish Side By Side White Lines 45. Bearish Thrusting 46. Long Black Candle 47. Bearish Line Strike 48. Black Marubozu 49. Black Opening Marubozu 50. Black Closing Marubozu 51. Bullish Kicking Pattern 52. Bullish Piercing Line 53. Bullish Morning Doji Star 54. Bullish Abandoned Baby 55. Bullish Morning Star 56. Bullish 3 Outside Up 57. Bullish 3 Inside Up 58. Bullish Concealing Baby Swallow 59. Bullish 3 White Soldiers 60. Bullish Long Legged Doji 61. Bullish Dragonfly Doji 62. Bullish Engulfing 63. Bullish Doji Star 64. Bullish Gravestone Doji 65. Bullish Homing Pigeon 66. Bullish Harami Cross 67. Bullish Meeting Lines 68. Bullish Matching Low 69. Bullish Star in the South 70. Bullish Stick Sandwich 71. Bullish Unique River Bottom 72. Bullish Tri Star 73. Bullish Breakaway 74. Bullish Belt Hold 75. Bullish Ladder Bottom 76. Bullish Hammer 77. Bullish Inverted Hammer 78. Bullish Harami 79. Bullish Mat Hold 80. Bullish Side By Side White Lines 81. Bullish Upside Gap 3 Methods 82. Bullish Rising Methods 83. Bullish Seperating Lines 84. Bullish Upside Tasuki Gap 85. Long White Candle 86. Bullish 3 Line Strike 87. White Marubozu 88. White Opening Marubozu 89. White Closing Marubozu 90. Reverse 3 Buddha Pattern 91. 3 Buddha Pattern

FREE Candle Patterns Indicator

Download the FREE Candle Patterns Indicator for MT4.

To receive my email 100% sure: 
Put my email on your whitelist!

 

Partially Automated Trading Besides Your Day Job

Alerts In Real-Time When Divergences Occur

My Recommended MT4/MT5 Broker

 

Installing the Candle Patterns Indicator For MT4

After you downloaded the indicator via the form above you need to unzip the zip-file. Then you need to copy the file Candle_Patterns.mq4 into the folder MQL4\Indicators of your MT4 installation. After that please restart MT4 and then you will be able to see the indicator in the list of indicators.

Parameters of the Candle Patterns Indicator For MT4

The Candle Patterns Indicator For MT4 has 15 parameters to configure.

extern int           MaxBarsToScanForPatterns = 1;                  //  0: display visible patterns only extern bool                    ConfirmPattern = true; extern bool                MoveTextOneRowDown = true; extern bool                           AudioON = true; extern color                ColorSingleCandle = Aqua; extern color                ColorMultiCandles = DeepSkyBlue; extern color       AlternateColorSingleCandle = Yellow; extern color       AlternateColorMultiCandles = Gold; extern color                   ColorArrowDown = DarkOrange; extern color                     ColorArrowUp = Lime; extern color                        ColorText = LemonChiffon; extern int                VerticalTextAdjustX = 1;                  // adjust co-ord x of vertical text extern int               VerticalTextFontSize = 8;                  // for zoom level 3 extern int                     TrendMA_Period = 13;                 // Averaging period for calculation extern int                      TrendMA_Shift = 15;                 // Shift relative to the current bar 

Buffers of the Candle Patterns Indicator For MT4

The Candle Patterns Indicator For MT4 provides 0 buffers.

Main Parts Of The Code

//|            Close and then re-start MetaTrader for it to find the | //|            new files.                                            | //|            Select "Indicators" - gt  "Custom" - gt  "Candle Patterns". | //|            The "Custom Indicator" window is displayed, select    | //|            "Common" and enable "Allow DLL imports".              | //|            "Inputs" are described in file "Candle Patterns.rtd", | //|            alternatively right click on the chart and select     | //|            "candle patterns.tpl" from "Templates".               | //| Note 1...: While testing, the indicator has not yet encountered  | //|            patterns comprised of four or five candles, please let| //|            me know on which broker s chart and time frame seen   | //|            and publish it on the forum as a .GIF image would be  | //|            super.                                                | //| Note 2...: Delete the Candle Patterns indicator from the chart   | //|            before changing the period.                           | //+------------------------------------------------------------------+ #property copyright "Copyright © 2008, sx ted" #property link      "This email address is being protected from spambots. You need JavaScript enabled to view it."  //+------------------------------------------------------------------+ //| indicator setup                                                  | //+------------------------------------------------------------------+ #property indicator_chart_window #property indicator_buffers 2                                       // helps improve memory  //+------------------------------------------------------------------+ //| EX4 imports                                                      | //+------------------------------------------------------------------+ #include  lt gSpeak.mqh gt   //+------------------------------------------------------------------+ //| input parameters:                                                | //+-----------0---+----1----+----2----+----3]------------------------+ extern int           MaxBarsToScanForPatterns = 1;                  //  0: display visible patterns only                                                                     //  1: display pattern of bar 1 only                                                                     //  gt 1: display patterns up to MaxBars extern bool                    ConfirmPattern = true; extern bool                MoveTextOneRowDown = true; extern bool                           AudioON = true; extern color                ColorSingleCandle = Aqua; extern color                ColorMultiCandles = DeepSkyBlue; extern color       AlternateColorSingleCandle = Yellow; extern color       AlternateColorMultiCandles = Gold; extern color                   ColorArrowDown = DarkOrange; extern color                     ColorArrowUp = Lime; extern color                        ColorText = LemonChiffon; extern int                VerticalTextAdjustX = 1;                  // adjust co-ord x of vertical text extern int               VerticalTextFontSize = 8;                  // for zoom level 3 extern int                     TrendMA_Period = 13;                 // Averaging period for calculation extern int                      TrendMA_Shift = 15;                 // Shift relative to the current bar                                                                     // to compare the averages so as to                                                                     // determine the trend  //+------------------------------------------------------------------+ //| defines                                                          | //+------------------------------------------------------------------+ #define CALC_ALL                                          -9        // calculate all flag #define MAX_CANDLES                                        5        // max candles in a pattern #define ERR_0                                              0.00001  // avoid divide by zero factor //-------------------------------------------------------------------- Candle and shadow sizes: #define CandleBodyCount                                    0        // Candle Body Count if size  gt  0 #define CandleBodyTotal                                    1        // Candle Body aggregate #define SmallCandleBody                                    2        // Candle Body Small (top threshold) #define LongCandleBody                                     3        // Candle Body Long (bottom threshold) #define UpperShadowCount                                   4        // Upper Shadow Count if size  gt  0 #define UpperShadowTotal                                   5        // Upper Shadow aggregate #define SmallUpperShadow                                   6        // Upper Shadow Small (top threshold) #define LongUpperShadow                                    7        // Upper Shadow Long (bottom threshold) #define BottomShadowCount                                  8        // Lower Shadow Count if size  gt  0 #define BottomShadowTotal                                  9        // Lower Shadow aggregate #define SmallBottomShadow                                 10        // Lower Shadow Small (top threshold) #define LongBottomShadow                                  11        // Lower Shadow Long (bottom threshold) #define SIZE_CNT                                          12        // array dSize count of elements #define LT_FACTOR                                          0.31     // Lower Threshold Factor //-------------------------------------------------------------------- Base Candles: #define FourPriceDoji                                      0        // 0 #define Umbrella_1                                         1        // 1 #define Umbrella_2                                         2        // 2 #define Doji                                               3        // 3 #define DojiSN                                             4        // 4 Doji with small/normal legs #define DojiSNL                                            5        // 5 Doji with all kinds of legs #define InvertedUmbrella_6                                 6        // 6 #define InvertedUmbrella_7                                 7        // 7 #define LongLeggedDoji_8                                   8        // 8    #define LongLeggedDoji_9                                   9        // 9    #define SmallBlackCandle                                  10        // A #define HighWave                                          11        // B      #define BlackSpinningTop                                  12        // C #define BlackCandle                                       13        // D #define BlackCandleDay4LadderBottom                       14        // E #define BlackDay3ConcealBabySwallow                       15        // F #define BlackMarubozu                                     16        // G    #define BlackOpeningMarubozu                              17        // H   #define BlackOpeningMarubozuLongshadow                    18        // I #define BlackClosingMarubozu                              19        // J   #define LongBlackCandle                                   20        // K #define SmallWhiteCandle                                  21        // L #define WhiteSpinningTop                                  22        // M   #define WhiteCandle                                       23        // N #define WhiteMarubozu                                     24        // O    #define WhiteClosingMarubozu                              25        // P   #define WhiteOpeningMarubozu                              26        // Q   #define LongWhiteCandle                                   27        // R   #define BlackHammerOrHangingMan                           28        // S   #define WhiteHammerOrHangingMan                           29        // T               #define InvertedUmbrella_U                                30        // U    #define InvertedUmbrella_V                                31        // V #define BlackInvertedHammerOrStar                         32        // W  #define WhiteInvertedHammerOrStar                         33        // X                       //-------------------------------------------------------------------- sPattern: specs & name #define P_DISPLAY    0 // Display flag:        1=Display,     0=Hide #define P_TYP        1 // pattern Type:        R=Reversal,    C=Continuation,  X=Reversal/Continuation #define P_REE        2 // pattern Relevance:   D=Bearish,     U=Bullish,       I=Indecision #define P_PRV        3 // Previous trend:      D=Bearish,     U=Bullish        X=N/A #define P_NUM        4 // Number of candles #define P_CHK        5 // confirmation Check:  refer to ConfirmPattern para #define P_LEN        6 // Length of name #define P_NAM        7 // pattern Name //-------------------------------------------------------------------- arrow shapes: #define C_DN       "ê" // -22 was 234 for identifying font "Wingdings" character Arrow Down #define C_UP       "é" // -23 was 233 for identifying font "Wingdings" character Arrow Up //-------------------------------------------------------------------- Text to Audio: #define M_BUY      "Buy" #define M_DN       "Pattern confirmed down" #define M_REV_DN   "Pattern confirmed reverse down" #define M_REV_UP   "Pattern confirmed reverse up" #define M_UP       "Pattern confirmed up" #define M_SELL     "Sell" #define M_NULL     "" //-------------------------------------------------------------------- Trade Type: #define TT_BUY         0 // Buy #define TT_SELL        1 // Sell #define TT_NO_PATTERN -1 // No Pattern found #define TT_WAIT       -2 // cater for Reversal/Continuation and wait for confirmation //-------------------------------------------------------------------- font: #define V_TXT_FONT_SIZE 8 // original font size used while scaling vertical text   //+------------------------------------------------------------------+ //| global variables to program:                                     | //+------------------------------------------------------------------+ bool     bAlternateColorMulti,          bAlternateColorSingle,          TrendDn,          TrendUp; datetime tPreviousTime; double   dSize[SIZE_CNT],                                           // candle sizes          dPipsFactor,                                               // price to pips conversion factor          O[MAX_CANDLES],                                            // Open          H[MAX_CANDLES],                                            // High          L[MAX_CANDLES],                                            // Low          C[MAX_CANDLES],                                            // Close          B[MAX_CANDLES],                                            // candle body bottom          T[MAX_CANDLES];                                            // candle body top int      candle[MAX_CANDLES],                                       // candle code          iBarsToScan,          iPattern,                                                  // candle Pattern number                   iPeriod,                iScaleAdjustX,                                             // used for vertical text alignment          iScaleAdjustX_MN,                                          // PERIOD MN1 basis for pro rata calc                        iScaleAdjustY,          iVeryNear,          iVerySmallBody; string   sBoxObj,          sMsg,          sAudio,          sPRV,                                                      // Previous Trend Confirmation arrow          sREE,                                                      // Relevance Confirmation arrow          sSymbol; /*-------------------------------------------------------------------- Base Candles:                              Dec,Base candle code number             , p,c, b , u, l */  int      iBaseCandle[96][2]={  0,FourPriceDoji,                     // 0,0,000,00,00                                         3,Umbrella_1,                        // 0,0,000,00,11                                           4,InvertedUmbrella_U,                // 0,0,000,01,00                                          5,Doji,                              // 0,0,000,01,01                                6,DojiSN,                            // 0,0,000,01,10                                7,DojiSNL,                           // 0,0,000,01,11                                8,InvertedUmbrella_V,                // 0,0,000,10,00                                          9,DojiSN,                            // 0,0,000,10,01                               10,DojiSN,                            // 0,0,000,10,10                               11,DojiSNL,                           // 0,0,000,10,11                               12,InvertedUmbrella_6,                // 0,0,000,11,00                                         13,DojiSNL,                           // 0,0,000,11,01                               14,DojiSNL,                           // 0,0,000,11,10                               15,LongLeggedDoji_8,                  // 0,0,000,11,11                                        19,Umbrella_2,                        // 0,0,001,00,11                                          21,DojiSN,                            // 0,0,001,01,01                               22,DojiSN,                            // 0,0,001,01,10                               23,DojiSNL,                           // 0,0,001,01,11                               25,DojiSN,                            // 0,0,001,10,01                               26,DojiSN,                            // 0,0,001,10,10                               27,DojiSNL,                           // 0,0,001,10,11                               28,InvertedUmbrella_7,                // 0,0,001,11,00                                         29,DojiSNL,                           // 0,0,001,11,01                               30,DojiSNL,                           // 0,0,001,11,10                               31,LongLeggedDoji_9,                  // 0,0,001,11,11                                        39,HighWave,                          // 0,0,010,01,11                                         43,HighWave,                          // 0,0,010,10,11                                         45,HighWave,                          // 0,0,010,11,01                                         46,HighWave,                          // 0,0,010,11,10                                         47,HighWave,                          // 0,0,010,11,11                                         56,BlackCandleDay4LadderBottom,       // 0,0,011,10,00                                60,BlackDay3ConcealBabySwallow,       // 0,0,011,11,00                               64,BlackMarubozu,                     // 0,0,100,00,00                                         65,BlackOpeningMarubozu,              // 0,0,100,00,01                                        66,BlackOpeningMarubozu,              // 0,0,100,00,10                                        67,BlackOpeningMarubozuLongshadow,    // 0,0,100,00,11                                    68,BlackClosingMarubozu,              // 0,0,100,01,00                                        69,LongBlackCandle,                   // 0,0,100,01,01                                        70,LongBlackCandle,                   // 0,0,100,01,10                                        71,LongBlackCandle,                   // 0,0,100,01,11                                        72,BlackClosingMarubozu,              // 0,0,100,10,00                                        73,LongBlackCandle,                   // 0,0,100,10,01                                        74,LongBlackCandle,                   // 0,0,100,10,10                                        75,LongBlackCandle,                   // 0,0,100,10,11                                        76,BlackClosingMarubozu,              // 0,0,100,11,00                                        77,LongBlackCandle,                   // 0,0,100,11,01                                        78,LongBlackCandle,                   // 0,0,100,11,10                                        79,LongBlackCandle,                   // 0,0,100,11,11                                       147,Umbrella_2,                        // 0,1,001,00,11                                         149,DojiSN,                            // 0,1,001,01,01                              150,DojiSN,                            // 0,1,001,01,10                              151,DojiSNL,                           // 0,1,001,01,11                              153,DojiSN,                            // 0,1,001,10,01                              154,DojiSN,                            // 0,1,001,10,10                              155,DojiSNL,                           // 0,1,001,10,11                              156,InvertedUmbrella_7,                // 0,1,001,11,00                                        157,DojiSNL,                           // 0,1,001,11,01                              158,DojiSNL,                           // 0,1,001,11,10                              159,LongLeggedDoji_9,                  // 0,1,001,11,11                                       167,HighWave,                          // 0,1,010,01,11                                        171,HighWave,                          // 0,1,010,10,11                                        173,HighWave,                          // 0,1,010,11,01                                        174,HighWave,                          // 0,1,010,11,10                                        175,HighWave,                          // 0,1,010,11,11                                        192,WhiteMarubozu,                     // 0,1,100,00,00                                        193,WhiteClosingMarubozu,              // 0,1,100,00,01                                       194,WhiteClosingMarubozu,              // 0,1,100,00,10                                       195,WhiteClosingMarubozu,              // 0,1,100,00,11                                       196,WhiteOpeningMarubozu,              // 0,1,100,01,00                                       197,LongWhiteCandle,                   // 0,1,100,01,01                                       198,LongWhiteCandle,                   // 0,1,100,01,10                                       199,LongWhiteCandle,                   // 0,1,100,01,11                                       200,WhiteOpeningMarubozu,              // 0,1,100,10,00                                       201,LongWhiteCandle,                   // 0,1,100,10,01                                       202,LongWhiteCandle,                   // 0,1,100,10,10                                       203,LongWhiteCandle,                   // 0,1,100,10,11                                       204,WhiteOpeningMarubozu,              // 0,1,100,11,00                                       205,LongWhiteCandle,                   // 0,1,100,11,01                                       206,LongWhiteCandle,                   // 0,1,100,11,10                                       207,LongWhiteCandle,                   // 0,1,100,11,11                                       291,BlackHammerOrHangingMan,           // 1,0,010,00,11                                       293,SmallBlackCandle,                  // 1,0,010,01,01                                       298,BlackSpinningTop,                  // 1,0,010,10,10                                       299,BlackSpinningTop,                  // 1,0,010,10,11                                       300,BlackInvertedHammerOrStar,         // 1,0,010,11,00                                      302,BlackSpinningTop,                  // 1,0,010,11,10                                       303,BlackSpinningTop,                  // 1,0,010,11,11                                       309,BlackCandle,                       // 1,0,011,01,01                                        419,WhiteHammerOrHangingMan,           // 1,1,010,00,11                                       421,SmallWhiteCandle,                  // 1,1,010,01,01                                       426,WhiteSpinningTop,                  // 1,1,010,10,10                                       427,WhiteSpinningTop,                  // 1,1,010,10,11                                       428,WhiteInvertedHammerOrStar,         // 1,1,010,11,00                                      430,WhiteSpinningTop,                  // 1,1,010,11,10                                       431,WhiteSpinningTop,                  // 1,1,010,11,11                                       437,WhiteCandle                        // 1,1,011,01,01                                      };  //-------------------------------------------------------------------- Candle Patterns: string sPattern[91][8];                       //+------------------------------------------------------------------+ //| Custom indicator initialization function                         | //+------------------------------------------------------------------+ void init() {   //                     Period    ,TextSize,ChartHeight,   int iTextRatios[9][3]={PERIOD_M1 ,       5,         20,           // TextSize based on Pattern number                          PERIOD_M5 ,      21,         70,           // 40 and scaled using the Crosshair                          PERIOD_M15,      32,        110,           // and custom indicator CP_TextSize.                          PERIOD_M30,      35,        120,           //                           PERIOD_H1 ,      35,        120,           // ChartHeight is the height of chart                          PERIOD_H4 ,     139,        470,           // in points, with no sub-windows,                          PERIOD_D1 ,     285,        960,           // when Pattern 40 was scaled,                          PERIOD_W1 ,     552,       1864,           // corresponds to PriceMaxVisible()                          PERIOD_MN1,    1729,       5850            // minus PriceMinVisible().                         },       i, x;                  ObjectsDeletePrefixed("CP_");   candle[0]=CALC_ALL;                                               // load all flag   dPipsFactor=MathPow(10, Digits);   dSize[0]=CALC_ALL;                                                // calculate average for all bars flag   iPattern=TT_NO_PATTERN;   iPeriod=Period();   sBoxObj="";   sMsg="";   sAudio="";   sPRV="";   sREE="";      sSymbol=Symbol();   tPreviousTime=D 01.01.2008 ;    void start() {   if(tPreviousTime == Time[0]) return; // only start analysis on complete bars 

 

About Me

I'm Mike Semlitsch the owner of PerfectTrendSystem.com. My trading career started in 2007. Since 2013 I have helped thousands of traders to take their trading to the next level. Many of them are now constantly profitable traders. 

The following performance was achieved by me while trading live in front of hundreds of my clients:

Connect With Me:  

Results From 5 Months!
This service starts soon! Be the first who get's notified when it begins!

This FREE Indicator Can Transform
Your Trading!

FREE Indicator + Telegram Group


Request the Ultimate Double Top/Bottom Indicator which is used by 10,000+ traders.