Candle Patterns Indicator For MT4
Table Of Contents:
- Candle Patterns Indicator For MT4
- Installation du Candle Patterns Indicator For MT4
- Paramètres du Candle Patterns Indicator For MT4
- Tampons du Candle Patterns Indicator For MT4
- Parties principales du code
L' Candle Patterns Indicator For MT4 détecte et affiche la liste exhaustive suivante de modèles d'inversion et de continuation de chandelier: 1. Doji à quatre prix 2. Vague haute 3. Doji à longues jambes 4. Parapluie 5. Parapluie inversé 6. Doji 7. Toupie noire 8 Toupie blanche 9. Petite bougie noire 10. Petite bougie blanche 11. Bougie blanche 12. Bougie noire 13. Motif de coups de pied baissiers 14. Couverture nuageuse sombre baissière 15. Étoile du soir baissière 16. Bébé abandonné baissier 17. Soirée baissière 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 Lignes de rencontre baissières 28. Croix haramienne baissière 29. Bloc d'avance baissière 30. Délibération baissière 31. Étoile baissière 32. Corbeaux baissiers 33. Échappement baissier 34. Homme pendu baissier 35. Maintien de la ceinture baissière 36. Étoile filante baissière 37. Méthodes de chute baissière. 38. Ours ish Harami 39. Bearish On Neck 40. Bearish In Neck 41. Bearish Downside Gap Tasuki 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 55. Bullish Morning Star 56. Bullish 3 Outside Up 57. Bullish 3 Inside Up 58. Bébé hirondelle dissimulant haussier 59. 3 soldats blancs haussiers 60. Doji haussier à longues pattes 61. Dragonji haussier Doji 62. Engouffrement haussier 63. Doji étoile haussière 64. Pierre tombale haussière Doji 65. Pigeon voyageur haussier 66. Harami Cross haussier 67. Lignes de rencontre haussières 68. Basse haussière correspondante 69. Étoile haussière au sud 70. Sandwich haussier haussier 71. Fond de rivière unique haussier 72. Étoile haussière Tri Tri 73. Écart haussier 74. Maintien de la ceinture haussière 75. Bas de l'échelle haussière 76. Haussier Hamme r 77. Marteau inversé haussier 78. Harami haussier 79. Tenue de tapis haussier 80. Lignes blanches côte à côte haussières 81. Écart haussier haussier 3 Méthodes 82. Méthodes haussières haussières 83. Lignes séparatrices haussières 84. Écart Tasuki haussier haussier 85. Blanc long Bougie 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
Installation du Candle Patterns Indicator For MT4
Après avoir téléchargé l'indicateur via le formulaire ci-dessus, vous devez décompresser le fichier zip. Ensuite, vous devez copier le fichier Candle_Patterns.mq4 dans le dossier MQL4Indicators de votre installation MT4 . Ensuite, redémarrez MT4 et vous pourrez voir l’indicateur dans la liste des indicateurs.
Paramètres du Candle Patterns Indicator For MT4
Candle Patterns Indicator For MT4 a des paramètres 15 à configurer.
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
Tampons du Candle Patterns Indicator For MT4
Le Candle Patterns Indicator For MT4 0 Candle Patterns Indicator For MT4 fournit des tampons 0 .
Parties principales du 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 "Cette adresse e-mail est protégée contre les robots spammeurs. Vous devez activer le JavaScript pour la visualiser." //+------------------------------------------------------------------+ //| 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