Stock Portfolio Organizer
The ultimate porfolio management solution.
Shares, Margin, CFD's, Futures and Forex
EOD and Realtime
Dividends and Trust Distributions
And Much More ....
WiseTrader Toolbox
#1 Selling Amibroker Plugin featuring:
Advanced Adaptive Indicators
Advanced Pattern Exploration
Neural Networks
And Much More ....
Elder Impulse for Amibroker (AFL)
Rating:
3 / 5 (Votes 2)
Tags:
amibroker
A normal chart pattern using elder impulse
Screenshots
Similar Indicators / Formulas
Kavach Of Karna v2
Submitted
by hbkwarez over 10 years ago
Advanced Elliott Waves
Submitted
by MarcosEn over 13 years ago
3_6Day GuaiLiLv
Submitted
by motorfly over 13 years ago
Williams Alligator System
Submitted
by durgesh1712 over 13 years ago
Interactive Linear Regression Channel
Submitted
by InternetWorm over 13 years ago
*Level Breakout system*
Submitted
by Tinych over 13 years ago
Indicator / Formula
Copy & Paste Friendly
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 | _SECTION_BEGIN ( "Elder Impulse" ); SetChartOptions (0, chartShowArrows | chartShowDates ); EnableTextOutput ( False ); // User-defined parameter for EMA periods EMA_Type = Param ( "EMA-1, TEMA-2, JMA-3" , 2, 1, 3, 1); EMA_prds = Param ( "EMA_periods" , 7, 1, 30, 1); Std_MACD = Param ( "Standard MACD? No-0, Yes-1" , 1, 0, 1, 1); Plot_fashion = Param ( "Bar+Arrows-1, Impulse Bars-2" , 2, 1, 2, 1); // Allow user to define Weekly and Monthly Ribbon Location and Height WR_P1 = Param ( "Weekly Ribbon Location" , 5.2, -1000, 1000, 0.1); WR_P2 = Param ( "Weekly Ribbon Height" , 199, -0.001, 500, 0.1); //MR_P1 = Param("Monthly Ribbon Location", 5.2, -1000, 1000, 0.1); //MR_P2 = Param("Monthly Ribbon Height", 199, -0.001, 500, 0.1); // Compute EMA and MACD Histogram if (EMA_Type == 1) { DayEMA = EMA ( Close , EMA_prds); } if (EMA_Type == 2) { DayEMA = TEMA ( Close , EMA_prds); } if (EMA_Type == 3) { // Line below to be used with Jurik JMA // DayEMA = JurikJMA(C, EMA_Prds); } Histogram = MACD () - Signal (); // Determine if we have an Impulse UP, DOWN or None Impulse_Up = DayEMA > Ref (DayEMA, -1) AND Histogram > Ref (Histogram, -1); Impulse_Down = DayEMA < Ref (DayEMA, -1) AND Histogram < Ref (Histogram, -1); Impulse_None = ( NOT Impulse_UP) AND ( NOT Impulse_Down); // Compute Weekly MACD and determine whether rising or falling // Note: uses "non-standard" parameters! TimeFrameSet ( inWeekly ); if (Std_MACD == 0) { MACD_val = MACD (5, 8); Signal_val = Signal (5, 8, 5); } else { MACD_val = MACD (12, 26); Signal_val = Signal (12, 26, 9); } Hist_in_w = MACD_val - Signal_val; wh_rising = Hist_in_w > Ref (Hist_in_w, -1); wh_falling = Hist_in_w < Ref (Hist_in_w, -1); wh_none = ( NOT wh_rising) AND ( NOT wh_falling); TimeFrameRestore (); // Now get Monthly MACD Histogram.... TimeFrameSet ( inMonthly ); MACD_val = MACD (5, 8); Signal_val = Signal (5, 8, 5); Hist_in_m = MACD_val - Signal_val; mh_rising = Hist_in_m > Ref (Hist_in_m, -1); mh_falling = Hist_in_m < Ref (Hist_in_m, -1); TimeFrameRestore (); wh_rising = TimeFrameExpand ( wh_rising, inWeekly , expandLast ); wh_falling = TimeFrameExpand ( wh_falling, inWeekly , expandLast); wh_none = TimeFrameExpand ( wh_none, inWeekly , expandLast); mh_rising = TimeFrameExpand (mh_rising, inMonthly , expandLast); mh_falling = TimeFrameExpand (mh_falling, inMonthly , expandLast); kol = IIf ( wh_rising, colorBrightGreen , IIf (wh_falling, colorRed , IIf (wh_none, colorCustom11 , colorLightGrey ))); mkol = IIf ( mh_rising, colorBlue , IIf (mh_falling, colorYellow , colorLightGrey )); // Plot them all! if (Plot_fashion == 1) { Plot ( Close , "Close" , colorTeal , styleBar ); PlotShapes ( shapeUpArrow * Impulse_Up, colorBrightGreen , 0, Low , -12); PlotShapes ( shapeDownArrow * Impulse_Down, colorRed , 0, High , -12); PlotShapes ( shapeSmallCircle * Impulse_None, colorWhite , 0, High , 5); } else { bar_kol = IIf (impulse_UP, colorBrightGreen , IIf (impulse_Down, colorRed , colorCustom11 )); Plot ( C , "Close" , bar_kol, styleBar ); } Plot (10, "Weekly Ribbon" , kol, styleOwnScale | styleArea | styleNoLabel , WR_P1, WR_P2); // Weekly trend GREEN = RISING, RED = FALLING, WHITE = NEUTRAL //Plot(10, "Monthly Ribbon", mkol, styleOwnScale|styleArea|styleNoLabel, MR_P1, MR_P2); // Monthly Trend BLUE = RISING, YELLOW = FALLING, WHITE = NEUTRAL // Auto Envelope PlotForeign ( GetBaseIndex (), IndustryID (1), colorWhite , styleLine | styleLeftAxisScale ); LookBkPd = 100 ; AvgPd = 22 ; ExternalBarPct = 15 ; ConvergePct = 2 ; Middle = EMA ( C ,AvgPd ) ; Rng = HHV ( H ,LookBkPd ) - LLV ( L ,LookBkPd ) ; X = Rng ; deltaX = X/2 ; do { Over = H > Middle + X ; Under = L < Middle - X ; OuterPct = 100*( Sum ( Over, LookBkPd ) + Sum ( Under, LookBkPd ) )/LookBkPd ; OP = LastValue (OuterPct) ; X=X+ sign ( OP - ExternalBarPct )*deltaX ; deltaX = deltaX/2 ; } while ( abs ( OP - ExternalBarPct ) > ConvergePct ) ; Plot ( Middle, "MA" , colorYellow , styleLine | styleNoTitle ) ; Plot ( Middle+X, "MA" , colorSkyblue , styleDashed | styleNoTitle ) ; Plot ( Middle-X, "MA" , colorSkyblue , styleDashed | styleNoTitle ) ; // Explorer Section // Determine if Impulse status is bullish, neutral or bearish. Display as Text Column. Impulse_State = WriteIf (Impulse_Up, "Bulllish" , WriteIf (Impulse_Down, "Bearish" , "Neutral" )); // Set the background color for Impulse Status Column Impulse_Col = IIf (Impulse_Up, colorGreen , IIf (Impulse_Down, colorRed , colorLightGrey )); // Determine Weekly Trend. Display as Text Column Weekly_Trend = WriteIf (wh_rising, "Rising" , WriteIf (wh_falling, "Falling" , "Flat!" )); Weekly_Col = IIf (wh_rising, colorGreen , IIf (wh_falling, colorRed , colorLightGrey )); // Determine Monthly Trend. Display as Text Column Monthly_Trend = WriteIf (mh_rising, "Rising" , WriteIf (mh_falling, "Falling" , "Flat!" )); Monthly_Col = IIf (mh_rising, colorGreen , IIf (mh_falling, colorRed , colorLightGrey )); // Determine how many bars has the current state existed bars_in_bull = Min ( BarsSince (impulse_none), BarsSince (impulse_down)); bars_in_bear = Min ( BarsSince (impulse_up), BarsSince (impulse_none)); bars_in_neut = Min ( BarsSince (impulse_down), BarsSince (impulse_up)); // Set a single variable to show number of bars in current state depending upon // actual Impulse Status - Bullish, Bearish or Neutral bars_in_state = IIf (Impulse_Up, bars_in_bull, IIf (Impulse_down, bars_in_bear, bars_in_neut)); // Columns for display in Explorer AddTextColumn (Impulse_State, "Impulse Status" , 1, colorWhite , Impulse_Col); AddColumn (bars_in_state, "Bars in this state" , 1, colorWhite , Impulse_col); AddTextColumn (Weekly_Trend, "Weekly Trend" , 1, colorWhite , Weekly_Col); AddTextColumn (Monthly_Trend, "Monthly Trend" , 1, colorWhite , Monthly_Col); Filter = 1; |
2 comments
Leave Comment
Please login here to leave a comment.
Back
Output does not match the screenshot given.
Finally, I got one that works perfect, Thank you.