The KM-Strength Arrow is a visual trading tool designed to help market participants identify potential trend reversals based on price momentum. By analyzing the relationship between current market prices and established historical averages, the script identifies specific "turning points" where the market may be shifting from one direction to another.
Core Logic & Methodology
The indicator operates by monitoring a momentum oscillator (the Relative Strength Index) over a short, responsive timeframe. It looks for specific "breakout" behaviors in this momentum to signal when the market is losing steam in one direction and gaining strength in the other.
How the Signals are Generated:
-
Buy Signals (Bullish Reversals): The script watches for moments when the market momentum has dipped into a "low" zone (below the 25% threshold). When the momentum starts to climb back up from this low point, the indicator places a visual marker on your chart. This suggests that the previous downward pressure may be exhausting and the price could be preparing for an upward move.
-
Sell Signals (Bearish Reversals): Conversely, the script monitors the "high" zone of momentum (above the 75% threshold). When the indicator detects that the momentum is beginning to drop from these highs, it places a visual marker on the chart. This identifies a potential cooling-off period where the upward trend may be losing its power, signaling a possible move downward.
Visual Experience
Instead of cluttering your screen with complex lines or heavy data sets, this tool provides a clean, streamlined experience. It uses clear arrows to pinpoint these entry zones directly on your trading chart:
- Buy Now: Marked when the market shows signs of recovering from an oversold state.
- Sell Now: Marked when the market shows signs of retreating from an overbought state.
Best Practices for Use
While the logic is designed to be responsive, the developer recommends using this tool on Higher Time Frames. Using it on longer timeframes helps filter out "market noise" and ensures that the signals generated are based on more significant, reliable shifts in market sentiment rather than minor, temporary price fluctuations.
//+------------------------------------------------------------------+
//| KM-Strength Arrow v1.mq4 |
//| Khurram Mustafa |
//| https://www.mql5.com/en/users/kc1981 |
//+------------------------------------------------------------------+
#property copyright "KHURRAM MUSTAFA"
#property link "https://www.mql5.com/en/users/kc1981/seller"
#property description "KM-Strength Arrow"
#property description "Recommended: Higher Time Frames"
#property version "1.0"
#property strict
#property indicator_chart_window
#property indicator_buffers 2
#property indicator_width1 0
#property indicator_width2 0
#property indicator_color1 Black
#property indicator_color2 Black
int rsiperiod = 5;
double buffy1[];
double buffy2[];
int cb = 0;
int bar ;
//+------------------------------------------------------------------+
//| Custom indicator initialization function |
//+------------------------------------------------------------------+
int init()
{
int draw = 0;
SetIndexStyle(0,DRAW_ARROW);
SetIndexArrow(0,233);
SetIndexStyle(1,DRAW_ARROW);
SetIndexArrow(1,234);
SetIndexEmptyValue(0,0.0);
SetIndexLabel(0,"Buy Now");
SetIndexLabel(1,"Sell Now");
SetIndexDrawBegin(0,draw);
SetIndexDrawBegin(1,draw);
SetIndexBuffer(0,buffy1);
SetIndexBuffer(1,buffy2);
return(0);
}
//+------------------------------------------------------------------+
int deinit()
{
ObjectsDeleteAll(0,OBJ_ARROW);
return(0);
}
//+------------------------------------------------------------------+
int start()
{
int IndicatorCounted = cb;
if (bar == Time[0]) return(0);
int x;
if(Bars<=100) return(0);
if (cb<0) return(-1);
if (cb>0) cb--;
x=Bars-cb;
for(int i=0; i<x; i++)
{
double r1 = iRSI(NULL,0,rsiperiod,PRICE_CLOSE,i);
double r2 = iRSI(NULL,0,rsiperiod,PRICE_CLOSE,i+1);
if (r1>25 && r2<25)
buffy1[i] = Low[i+1]-15*Point;
if (r1<75 && r2>75)
buffy2[i] = High[i+1]+15*Point;
}
return(0);
}
//+------------------------------------------------------------------+
Comments