_Signal_Bars_Meter
Download scriptThis script functions as a comprehensive multi-timeframe dashboard designed to provide traders with a real-time visual summary of market conditions across different periods (ranging from 1-minute charts to Daily charts). Instead of forcing you to switch back and forth between different tabs or timeframes, it aggregates critical data into a single, easy-to-read display directly on your current screen.
The logic is divided into three primary analytical components:
1. Money Flow Index (MFI) Analysis
The script monitors the "Money Flow" for seven different timeframes simultaneously. It analyzes where the volume and price are moving to determine market sentiment.
- Overbought/Oversold Indicators: It checks if the flow is extremely high (above 80) or extremely low (below 20).
- Trend Coloring: The dashboard uses a color-coded system to signal strength:
- Green: Indicates very high flow (overbought territory).
- Red: Indicates very low flow (oversold territory).
- Lime/Orange: Provides intermediate signals based on whether the flow is currently above or below the 50% midpoint.
2. STR Signal Logic (Multi-Indicator Confluence)
This section represents a sophisticated "confluence" check. For a signal to be confirmed in this logic, it requires three different technical indicators to agree with each other simultaneously: the RVI, Momentum, and CCI.
- Bullish Alignment: If all three indicators show positive growth/strength, the dashboard displays a Green status.
- Bearish Alignment: If all three indicators show negative decay/weakness, it displays a Red status.
- Neutral/Complex States: The script includes specific logic to detect nuanced market shifts (using colors like Lime, Silver, and Orange) when the indicators provide conflicting data, such as when momentum is high but price volatility remains low.
3. EMA Trend Tracking
The script tracks Exponential Moving Averages (EMA) across all timeframes to establish the "path of least resistance."
- Fast vs. Slow: It compares a fast-moving average against a slow-moving average for every timeframe from M1 to D1.
- Directional Bias: If the fast line is above the slow line, the dashboard highlights the trend in Lime (Bullish). If it falls below, it highlights it in Red (Bearish). This allows you to see instantly if the "big picture" trend aligns with your short-term trade.
Visual Layout and User Experience
To ensure the data is actionable, the script creates a clean user interface on the top-right corner of your chart:
- Dynamic Labels: It organizes the data into organized rows for MFI, STR, and EMA.
- Customizable Positioning: Users can adjust the "Side-to-side" distance and "Up/Down" shifts to move the dashboard so it doesn't block any price action or other tools.
- Instant Recognition: By using a standardized color palette (Green, Red, Lime, Orange, Silver), the script allows for "at-a-glance" trading, where you can identify market health in seconds without needing to interpret raw numbers.
//+------------------------------------------------------------------+
//+------------------------------------------------------------------+
#property copyright "Copyright © 2006, MetaQuotes Software Corp."
#property link "http://www.metaquotes.net"
#property indicator_chart_window
extern bool Show_EMA = true;
extern bool Show_STR = true;
extern bool Show_MFI = false;
extern bool Corner_of_Chart_RIGHT_TOP = true;
extern bool Show_Price = false;
extern bool Show_Xtra_Details = true;
extern bool Show_Smaller_Size = false;
extern int Shift_UP_DN =0;
extern int Adjust_Side_to_side = 20;
extern color BarLabel_color = LightBlue;
extern color CommentLabel_color = LightBlue;
//****************************************
extern int MFI_Period = 9;
//extern int MFI_PRICE_TYPE = 0;
extern int RVI_Period = 9;
//extern int RVI_PRICE_TYPE = 1;
extern int CCI_Period = 13;
extern int CCI_PRICE_TYPE = 0;
extern int Mom_Period = 10;
extern int Mom_PRICE_TYPE = 0;
extern int MA_Fast = 1;
extern int MA_Slow = 62;
extern int MA_MODE = 1;
extern int MA_PRICE_TYPE = 0;
//+------------------------------------------------------------------+
//| Custom indicator initialization function |
//+------------------------------------------------------------------+
int init()
{
//---- indicators
//----
return(0);
}
//+------------------------------------------------------------------+
//| Custom indicator deinitialization function |
//+------------------------------------------------------------------+
int deinit()
{
//----
ObjectsDeleteAll(0,OBJ_LABEL);
ObjectsDeleteAll();
//----
return(0);
}
//+------------------------------------------------------------------+
//| Custom indicator iteration function |
//+------------------------------------------------------------------+
int start()
{
//***********************************************************************************************************************
int counted_bars=IndicatorCounted();
if (Corner_of_Chart_RIGHT_TOP == true)
{
ObjectCreate("Numbers", OBJ_LABEL, 0, 0, 0);
ObjectSetText("Numbers", " M1 M5 M15 M30 H1 H4 D1", 7, "Tahoma Narrow", BarLabel_color);
ObjectSet("Numbers", OBJPROP_CORNER, Corner_of_Chart_RIGHT_TOP);
ObjectSet("Numbers", OBJPROP_XDISTANCE, 17+Adjust_Side_to_side);
ObjectSet("Numbers", OBJPROP_YDISTANCE, 28+Shift_UP_DN);
}
if (Corner_of_Chart_RIGHT_TOP == false)
{
ObjectCreate("Numbers", OBJ_LABEL, 0, 0, 0);
ObjectSetText("Numbers", " M1 M5 M15 M30 H1 H4 D1", 7, "Tahoma Narrow", BarLabel_color);
ObjectSet("Numbers", OBJPROP_CORNER, Corner_of_Chart_RIGHT_TOP);
ObjectSet("Numbers", OBJPROP_XDISTANCE, 17+Adjust_Side_to_side);
ObjectSet("Numbers", OBJPROP_YDISTANCE, 24+Shift_UP_DN);
}
//MFI Signals
if( Show_MFI ) {
string MFI_StrH1 = "", MFI_StrM15 = "", MFI_StrM5 = "", MFI_StrM1 = "", MFI_StrH4 ="", MFI_StrM30= "", MFI_StrD1= "", MFI_StrW1= "";
color color_signal,color_M1,color_M5,color_M15,color_M30,color_M60,color_M240,color_M1440;
double MFI_M1 = iMFI(NULL, PERIOD_M1, MFI_Period , 0 );
double MFI_M5 = iMFI(NULL, PERIOD_M5, MFI_Period , 0 );
double MFI_M15 = iMFI(NULL, PERIOD_M15, MFI_Period , 0 );
double MFI_M30 = iMFI(NULL, PERIOD_M30, MFI_Period , 0 );
double MFI_H1 = iMFI(NULL, PERIOD_H1, MFI_Period , 0 );
double MFI_H4 = iMFI(NULL, PERIOD_H4, MFI_Period , 0 );
double MFI_D1 = iMFI(NULL, PERIOD_D1, MFI_Period , 0 );
if (MFI_M1 > 80){ MFI_StrM1 = "-"; color_M1 = Green;}
if (MFI_M5 > 80){ MFI_StrM5 = "-"; color_M5 = Green;}
if (MFI_M15 > 80){ MFI_StrM15 = "-"; color_M15 = Green;}
if (MFI_M30 > 80){ MFI_StrM30 = "-"; color_M30 = Green;}
if (MFI_H1 > 80){ MFI_StrH1 = "-"; color_M60 = Green;}
if (MFI_H4 > 80){ MFI_StrH4 = "-"; color_M240 = Green;}
if (MFI_D1 > 80){ MFI_StrD1 = "-"; color_M1440 = Green;}
if (MFI_M1 < 20){ MFI_StrM1 = "-"; color_M1 = Red;}
if (MFI_M5 < 20){ MFI_StrM5 = "-"; color_M5 = Red;}
if (MFI_M15 < 20){ MFI_StrM15 = "-"; color_M15 = Red;}
if (MFI_M30 < 20){ MFI_StrM30 = "-"; color_M30 = Red;}
if (MFI_H1 < 20){ MFI_StrH1 = "-"; color_M60 = Red;}
if (MFI_H4 < 20){ MFI_StrH4 = "-"; color_M240 = Red;}
if (MFI_D1 < 20){ MFI_StrD1 = "-"; color_M1440 = Red;}
if (MFI_M1 > 50){ MFI_StrM1 = "-"; color_M1 = Lime;}
if (MFI_M5 > 50){ MFI_StrM5 = "-"; color_M5 = Lime;}
if (MFI_M15 > 50){ MFI_StrM15 = "-"; color_M15 = Lime;}
if (MFI_M30 > 50){ MFI_StrM30 = "-"; color_M30 = Lime;}
if (MFI_H1 > 50){ MFI_StrH1 = "-"; color_M60 = Lime;}
if (MFI_H4 > 50){ MFI_StrH4 = "-"; color_M240 = Lime;}
if (MFI_D1 > 50){ MFI_StrD1 = "-"; color_M1440 = Lime;}
if (MFI_M1 < 50){ MFI_StrM1 = "-"; color_M1 = Orange;}
if (MFI_M5 < 50){ MFI_StrM5 = "-"; color_M5 = Orange;}
if (MFI_M15 < 50){ MFI_StrM15 = "-"; color_M15 = Orange;}
if (MFI_M30 < 50){ MFI_StrM30 = "-"; color_M30 = Orange;}
if (MFI_H1 < 50){ MFI_StrH1 = "-"; color_M60 = Orange;}
if (MFI_H4 < 50){ MFI_StrH4 = "-"; color_M240 = Orange;}
if (MFI_D1 < 50){ MFI_StrD1 = "-"; color_M1440 = Orange;}
ObjectCreate("MFIM1t", OBJ_LABEL, 0, 0, 0);
ObjectSetText("MFIM1t", "MFI", 6, "Tahoma Narrow", BarLabel_color);
ObjectSet("MFIM1t", OBJPROP_CORNER, Corner_of_Chart_RIGHT_TOP);
ObjectSet("MFIM1t", OBJPROP_XDISTANCE, 155+Adjust_Side_to_side);
ObjectSet("MFIM1t", OBJPROP_YDISTANCE, 36+Shift_UP_DN);
ObjectCreate("MFIM1", OBJ_LABEL, 0, 0, 0);
ObjectSetText("MFIM1", MFI_M1, 40, "Tahoma Narrow", color_M1);
ObjectSet("MFIM1", OBJPROP_CORNER, Corner_of_Chart_RIGHT_TOP);
ObjectSet("MFIM1", OBJPROP_XDISTANCE, 130+Adjust_Side_to_side);
ObjectSet("MFIM1", OBJPROP_YDISTANCE, 0+Shift_UP_DN);
ObjectCreate("MFIM5", OBJ_LABEL, 0, 0, 0);
ObjectSetText("MFIM5", MFI_M5, 40, "Tahoma Narrow", color_M5);
ObjectSet("MFIM5", OBJPROP_CORNER, Corner_of_Chart_RIGHT_TOP);
ObjectSet("MFIM5", OBJPROP_XDISTANCE, 110+Adjust_Side_to_side);
ObjectSet("MFIM5", OBJPROP_YDISTANCE, 0+Shift_UP_DN);
ObjectCreate("MFIM15", OBJ_LABEL, 0, 0, 0);
ObjectSetText("MFIM15", MFI_M15, 40, "Tahoma Narrow", color_M15);
ObjectSet("MFIM15", OBJPROP_CORNER, Corner_of_Chart_RIGHT_TOP);
ObjectSet("MFIM15", OBJPROP_XDISTANCE, 90+Adjust_Side_to_side);
ObjectSet("MFIM15", OBJPROP_YDISTANCE, 0+Shift_UP_DN);
ObjectCreate("MFIM30", OBJ_LABEL, 0, 0, 0);
ObjectSetText("MFIM30", MFI_M30, 40, "Tahoma Narrow", color_M30);
ObjectSet("MFIM30", OBJPROP_CORNER, Corner_of_Chart_RIGHT_TOP);
ObjectSet("MFIM30", OBJPROP_XDISTANCE, 70+Adjust_Side_to_side);
ObjectSet("MFIM30", OBJPROP_YDISTANCE, 0+Shift_UP_DN);
ObjectCreate("MFIH1", OBJ_LABEL, 0, 0, 0);
ObjectSetText("MFIH1", MFI_H1, 40, "Tahoma Narrow", color_M60);
ObjectSet("MFIH1", OBJPROP_CORNER, Corner_of_Chart_RIGHT_TOP);
ObjectSet("MFIH1", OBJPROP_XDISTANCE, 50+Adjust_Side_to_side);
ObjectSet("MFIH1", OBJPROP_YDISTANCE, 0+Shift_UP_DN);
ObjectCreate("MFIh4", OBJ_LABEL, 0, 0, 0);
ObjectSetText("MFIH4", MFI_H4, 40, "Tahoma Narrow", color_M240);
ObjectSet("MFIH4", OBJPROP_CORNER, Corner_of_Chart_RIGHT_TOP);
ObjectSet("MFIH4", OBJPROP_XDISTANCE, 30+Adjust_Side_to_side);
ObjectSet("MFIH4", OBJPROP_YDISTANCE, 0+Shift_UP_DN);
ObjectCreate("MFID1", OBJ_LABEL, 0, 0, 0);
ObjectSetText("MFID1", MFI_D1, 40, "Tahoma Narrow", color_M1440);
ObjectSet("MFID1", OBJPROP_CORNER, Corner_of_Chart_RIGHT_TOP);
ObjectSet("MFID1", OBJPROP_XDISTANCE, 10+Adjust_Side_to_side);
ObjectSet("MFID1", OBJPROP_YDISTANCE, 0+Shift_UP_DN);
}
//***************************************************************************************************************
//STR Signals
if ( Show_STR ) {
double RVI_d1 = iRVI(NULL, PERIOD_D1, RVI_Period , MODE_MAIN, 0 );
double RVI_h4 = iRVI(NULL, PERIOD_H4, RVI_Period , MODE_MAIN, 0 );
double RVI_h1 = iRVI(NULL, PERIOD_H1, RVI_Period , MODE_MAIN, 0 );
double RVI_m30 = iRVI(NULL, PERIOD_M30, RVI_Period , MODE_MAIN, 0 );
double RVI_m15 = iRVI(NULL, PERIOD_M15, RVI_Period , MODE_MAIN, 0 );
double RVI_m5 = iRVI(NULL, PERIOD_M5, RVI_Period , MODE_MAIN, 0 );
double RVI_m1 = iRVI(NULL, PERIOD_M1, RVI_Period , MODE_MAIN, 0 );
double Mom_D1 = iMomentum(NULL, PERIOD_D1, Mom_Period , Mom_PRICE_TYPE, 0);
double Mom_H4 = iMomentum(NULL, PERIOD_H4, Mom_Period , Mom_PRICE_TYPE, 0);
double Mom_H1 = iMomentum(NULL, PERIOD_H1, Mom_Period , Mom_PRICE_TYPE, 0);
double Mom_M30 = iMomentum(NULL, PERIOD_M30, Mom_Period , Mom_PRICE_TYPE, 0);
double Mom_M15 = iMomentum(NULL, PERIOD_M15, Mom_Period , Mom_PRICE_TYPE, 0);
double Mom_M5 = iMomentum(NULL, PERIOD_M5, Mom_Period , Mom_PRICE_TYPE, 0);
double Mom_M1 = iMomentum(NULL, PERIOD_M1, Mom_Period , Mom_PRICE_TYPE, 0);
double cci_DD1 = iCCI(NULL, PERIOD_D1,CCI_Period , CCI_PRICE_TYPE, 0);
double cci_HH4 = iCCI(NULL, PERIOD_H4,CCI_Period , CCI_PRICE_TYPE, 0);
double cci_HH1 = iCCI(NULL, PERIOD_H1,CCI_Period , CCI_PRICE_TYPE, 0);
double cci_MM30 = iCCI(NULL, PERIOD_M30,CCI_Period , CCI_PRICE_TYPE, 0);
double cci_MM15 = iCCI(NULL, PERIOD_M15,CCI_Period , CCI_PRICE_TYPE, 0);
double cci_MM5 = iCCI(NULL, PERIOD_M5,CCI_Period , CCI_PRICE_TYPE, 0);
double cci_MM1 = iCCI(NULL, PERIOD_M1,CCI_Period , CCI_PRICE_TYPE, 0);
string STR_h1 = "", STR_m15 = "", STR_m5 = "", STR_m1 = "", STR_h4 ="",STR_m30= "",STR_d1= "",STR_w1= "";
// color color_signal,color_m1,color_m5,color_m15,color_m30,color_m60,color_m240,color_m1440;
if ((RVI_d1 > 0) && (Mom_D1 > 100) && (cci_DD1 > 0)) { STR_d1 = "-";color_M1440 = Green;}
if ((RVI_h4 > 0) && (Mom_H4 > 100) && (cci_HH4 > 0)) { STR_h4 = "-";color_M240 = Green;}
if ((RVI_h1 > 0) && (Mom_H1 > 100) && (cci_HH1 > 0)) { STR_h1 = "-";color_M60 = Green;}
if ((RVI_m30 > 0) && (Mom_M30 > 100) && (cci_MM30 > 0)) { STR_m30 = "-";color_M30 = Green; }
if ((RVI_m15 > 0) && (Mom_M15 > 100) && (cci_MM15 > 0)) { STR_m15 = "-";color_M15 = Green; }
if ((RVI_m5 > 0) && (Mom_M5 > 100) && (cci_MM5 > 0)) { STR_m5 = "-"; color_M5 = Green;}
if ((RVI_m1 > 0) && (Mom_M1 > 100) && (cci_MM1 > 0)) { STR_m1 = "-"; color_M1 = Green;}
if ((RVI_d1 < 0) && (Mom_D1 < 100) && (cci_DD1 < 0)) { STR_d1 = "-";color_M1440 = Red;}
if ((RVI_h4 < 0) && (Mom_H4 < 100) && (cci_HH4 < 0)) { STR_h4 = "-";color_M240 = Red;}
if ((RVI_h1 < 0) && (Mom_H1 < 100) && (cci_HH1 < 0)) { STR_h1 = "-";color_M60 = Red;}
if ((RVI_m30 < 0) && (Mom_M30 < 100) && (cci_MM30 < 0)) { STR_m30 = "-";color_M30 = Red;}
if ((RVI_m15 < 0) && (Mom_M15 < 100) && (cci_MM15 < 0)) { STR_m15 = "-";color_M15 = Red;}
if ((RVI_m5 < 0) && (Mom_M5 < 100) && (cci_MM5 < 0)) { STR_m5 = "-";color_M5 = Red;}
if ((RVI_m1 < 0) && (Mom_M1 < 100) && (cci_MM1 < 0)) { STR_m1 = "-"; color_M1 = Red;}
if ((RVI_m1 < 50) && (Mom_M1 > 100) && (cci_MM1 > 0)) { STR_m1 = "-"; color_M1 = Lime;} // original
if ((RVI_m1 < 50) && (Mom_M1 > 100) && (cci_MM1 < 0)) { STR_m1 = "-"; color_M1 = Silver;} // original
if ((RVI_m1 < 50) && (Mom_M1 < 100) && (cci_MM1 > 0)) { STR_m1 = "-"; color_M1 = GreenYellow;}
if ((RVI_m1 < 50) && (Mom_M1 < 100) && (cci_MM1 < 0)) { STR_m1 = "-"; color_M1 = OrangeRed;}
if ((RVI_m1 > 50) && (Mom_M1 > 100) && (cci_MM1 < 0)) { STR_m1 = "-"; color_M1 = Orange;}
if ((RVI_m1 > 50) && (Mom_M1 > 100) && (cci_MM1 > 0)) { STR_m1 = "-"; color_M1 = Silver;}
if ((RVI_m1 > 50) && (Mom_M1 < 100) && (cci_MM1 < 0)) { STR_m1 = "-"; color_M1 = Orange;} // original
if ((RVI_m1 > 50) && (Mom_M1 < 100) && (cci_MM1 > 0)) { STR_m1 = "-"; color_M1 = Silver;} // original
// if ((rsi_m1 > 50) && (Mom_M1 > 100) && (cci_MM1 < 0)) { STR_m1 = "-"; color_M1 = Goldenrod;}
// if ((rsi_m1 > 50) && (Mom_M1 < 100) && (cci_MM1 < 0)) { STR_m1 = "-"; color_M1 = Goldenrod;}
if ((RVI_m5 < 50) && (Mom_M5 > 100) && (cci_MM5 > 0)) { STR_m5 = "-"; color_M5 = Lime;}
if ((RVI_m5 > 50) && (Mom_M5 < 100) && (cci_MM5 < 0)) { STR_m5 = "-"; color_M5 = Orange;}
if ((RVI_m5 < 50) && (Mom_M5 > 100) && (cci_MM5 < 0)) { STR_m5 = "-"; color_M5 = Silver;}
if ((RVI_m5 > 50) && (Mom_M5 < 100) && (cci_MM5 > 0)) { STR_m5 = "-"; color_M5 = Silver;}
// if ((rsi_m5 > 50) && (Mom_M5 > 100) && (cci_MM5 < 0)) { STR_m5 = "-"; color_M5 = Goldenrod;}
// if ((rsi_m5 > 50) && (Mom_M5 < 100) && (cci_MM5 < 0)) { STR_m5 = "-"; color_m5 = Goldenrod;}
if ((RVI_m15 < 50) && (Mom_M15 > 100) && (cci_MM15 > 0)) { STR_m15 = "-"; color_M15 = Lime;}
if ((RVI_m15 > 50) && (Mom_M15 < 100) && (cci_MM15 < 0)) { STR_m15 = "-"; color_M15 = Orange;}
if ((RVI_m15 < 50) && (Mom_M15 > 100) && (cci_MM15 < 0)) { STR_m15 = "-"; color_M15 = Silver;}
if ((RVI_m15 > 50) && (Mom_M15 < 100) && (cci_MM15 > 0)) { STR_m15 = "-"; color_M15 = Silver;}
// if ((rsi_m15 > 50) && (Mom_M15 > 100) && (cci_MM15 < 0)) { STR_m15 = "-"; color_M15 = Goldenrod;}
// if ((rsi_m15 > 50) && (Mom_M15 < 100) && (cci_MM15 < 0)) { STR_m15 = "-"; color_M15 = Goldenrod;}
if ((RVI_m30 < 50) && (Mom_M30 > 100) && (cci_MM30 > 0)) { STR_m30 = "-"; color_M30 = Lime;}
if ((RVI_m30 > 50) && (Mom_M30 < 100) && (cci_MM30 < 0)) { STR_m30 = "-"; color_M30 = Orange;}
if ((RVI_m30 < 50) && (Mom_M30 > 100) && (cci_MM30 < 0)) { STR_m30 = "-"; color_M30 = Silver;}
if ((RVI_m30 > 50) && (Mom_M30 < 100) && (cci_MM30 > 0)) { STR_m30 = "-"; color_M30 = Silver;}
// if ((rsi_m30 > 50) && (Mom_M30 > 100) && (cci_MM30 < 0)) { STR_m30 = "-"; color_M30 = Goldenrod;}
// if ((rsi_m30 > 50) && (Mom_M30 < 100) && (cci_MM30 < 0)) { STR_m30 = "-"; color_M30 = Goldenrod;}
if ((RVI_h1 < 50) && (Mom_H1 > 100) && (cci_HH1 > 0)) { STR_h1 = "-"; color_M60 = Lime;}
if ((RVI_h1 > 50) && (Mom_H1 < 100) && (cci_HH1 < 0)) { STR_h1 = "-"; color_M60 = Orange;}
if ((RVI_h1 < 50) && (Mom_H1 > 100) && (cci_HH1 < 0)) { STR_h1 = "-"; color_M60 = Silver;}
if ((RVI_h1 > 50) && (Mom_H1 < 100) && (cci_HH1 > 0)) { STR_h1 = "-"; color_M60 = Silver;}
// if ((rsi_h1 > 50) && (Mom_H1 > 100) && (cci_HH1 < 0)) { STR_h1 = "-"; color_M60 = Goldenrod;}
// if ((rsi_h1 > 50) && (Mom_H1 < 100) && (cci_HH1 < 0)) { STR_h1 = "-"; color_M60 = Goldenrod;}
if ((RVI_h4 < 50) && (Mom_H4 > 100) && (cci_HH4 > 0)) { STR_h4 = "-"; color_M240 = Lime;}
if ((RVI_h4 > 50) && (Mom_H4 < 100) && (cci_HH4 < 0)) { STR_h4 = "-"; color_M240 = Orange;}
if ((RVI_h4 < 50) && (Mom_H4 > 100) && (cci_HH4 < 0)) { STR_h4 = "-"; color_M240 = Silver;}
if ((RVI_h4 > 50) && (Mom_H4 < 100) && (cci_HH4 > 0)) { STR_h4 = "-"; color_M240 = Silver;}
// if ((rsi_h4 > 50) && (Mom_H4 > 100) && (cci_HH4 < 0)) { STR_h4 = "-"; color_M240 = Goldenrod;}
// if ((rsi_h4 > 50) && (Mom_H4 < 100) && (cci_HH4 < 0)) { STR_h4 = "-"; color_M240 = Goldenrod;}
if ((RVI_d1 < 50) && (Mom_D1 > 100) && (cci_DD1 > 0)) { STR_d1 = "-"; color_M1440 = Lime;}
if ((RVI_d1 > 50) && (Mom_D1 < 100) && (cci_DD1 < 0)) { STR_d1 = "-"; color_M1440 = Orange;}
if ((RVI_d1 < 50) && (Mom_D1 > 100) && (cci_DD1 < 0)) { STR_d1 = "-"; color_M1440 = Silver;}
if ((RVI_d1 > 50) && (Mom_D1 < 100) && (cci_DD1 > 0)) { STR_d1 = "-"; color_M1440 = Silver;}
// if ((rsi_d1 > 50) && (Mom_D1 > 100) && (cci_DD1 < 0)) { STR_d1 = "-"; color_M1440 = Goldenrod;}
// if ((rsi_d1 > 50) && (Mom_D1 < 100) && (cci_DD1 < 0)) { STR_d1 = "-"; color_M1440 = Goldenrod;}
ObjectCreate("SignalSTRM1t", OBJ_LABEL, 0, 0, 0);
ObjectSetText("SignalSTRM1t","STR", 7, "Tahoma Narrow", BarLabel_color);
ObjectSet("SignalSTRM1t", OBJPROP_CORNER, Corner_of_Chart_RIGHT_TOP);
ObjectSet("SignalSTRM1t", OBJPROP_XDISTANCE, 155+Adjust_Side_to_side);
ObjectSet("SignalSTRM1t", OBJPROP_YDISTANCE, 36+Shift_UP_DN);
ObjectCreate("SignalSTRM1", OBJ_LABEL, 0, 0, 0);
ObjectSetText("SignalSTRM1", STR_m1, 40, "Tahoma Narrow", color_M1);
ObjectSet("SignalSTRM1", OBJPROP_CORNER, Corner_of_Chart_RIGHT_TOP);
ObjectSet("SignalSTRM1", OBJPROP_XDISTANCE, 130+Adjust_Side_to_side);
ObjectSet("SignalSTRM1", OBJPROP_YDISTANCE, 10+Shift_UP_DN);
ObjectCreate("SignalSTRM5", OBJ_LABEL, 0, 0, 0);
ObjectSetText("SignalSTRM5", STR_m5, 40, "Tahoma Narrow", color_M5);
ObjectSet("SignalSTRM5", OBJPROP_CORNER, Corner_of_Chart_RIGHT_TOP);
ObjectSet("SignalSTRM5", OBJPROP_XDISTANCE, 110+Adjust_Side_to_side);
ObjectSet("SignalSTRM5", OBJPROP_YDISTANCE, 10+Shift_UP_DN);
ObjectCreate("SignalSTRM15", OBJ_LABEL, 0, 0, 0);
ObjectSetText("SignalSTRM15", STR_m15, 40, "Tahoma Narrow", color_M15);
ObjectSet("SignalSTRM15", OBJPROP_CORNER, Corner_of_Chart_RIGHT_TOP);
ObjectSet("SignalSTRM15", OBJPROP_XDISTANCE, 90+Adjust_Side_to_side);
ObjectSet("SignalSTRM15", OBJPROP_YDISTANCE, 10+Shift_UP_DN);
ObjectCreate("SignalSTRM30", OBJ_LABEL, 0, 0, 0);
ObjectSetText("SignalSTRM30", STR_m30, 40, "Tahoma Narrow", color_M30);
ObjectSet("SignalSTRM30", OBJPROP_CORNER, Corner_of_Chart_RIGHT_TOP);
ObjectSet("SignalSTRM30", OBJPROP_XDISTANCE, 70+Adjust_Side_to_side);
ObjectSet("SignalSTRM30", OBJPROP_YDISTANCE, 10+Shift_UP_DN);
ObjectCreate("SignalSTRM60", OBJ_LABEL, 0, 0, 0);
ObjectSetText("SignalSTRM60", STR_h1, 40, "Tahoma Narrow", color_M60);
ObjectSet("SignalSTRM60", OBJPROP_CORNER, Corner_of_Chart_RIGHT_TOP);
ObjectSet("SignalSTRM60", OBJPROP_XDISTANCE, 50+Adjust_Side_to_side);
ObjectSet("SignalSTRM60", OBJPROP_YDISTANCE, 10+Shift_UP_DN);
ObjectCreate("SignalSTRM240", OBJ_LABEL, 0, 0, 0);
ObjectSetText("SignalSTRM240", STR_h4, 40, "Tahoma Narrow", color_M240);
ObjectSet("SignalSTRM240", OBJPROP_CORNER, Corner_of_Chart_RIGHT_TOP);
ObjectSet("SignalSTRM240", OBJPROP_XDISTANCE, 30+Adjust_Side_to_side);
ObjectSet("SignalSTRM240", OBJPROP_YDISTANCE, 10+Shift_UP_DN);
ObjectCreate("SignalSTRM1440", OBJ_LABEL, 0, 0, 0);
ObjectSetText("SignalSTRM1440", STR_d1, 40, "Tahoma Narrow", color_M1440);
ObjectSet("SignalSTRM1440", OBJPROP_CORNER, Corner_of_Chart_RIGHT_TOP);
ObjectSet("SignalSTRM1440", OBJPROP_XDISTANCE, 10+Adjust_Side_to_side);
ObjectSet("SignalSTRM1440", OBJPROP_YDISTANCE, 10+Shift_UP_DN);
}
//******************************************************************************************************************
//EMA Signals
if(Show_EMA) {
double EMA_M1 = iMA(Symbol(),1,MA_Fast,0,MA_MODE,MA_PRICE_TYPE,0);
double ema_m1 = iMA(Symbol(),1,MA_Slow,0,MA_MODE,MA_PRICE_TYPE,0);
double EMA_M5 = iMA(Symbol(),5,MA_Fast,0,MA_MODE,MA_PRICE_TYPE,0);
double ema_m5 = iMA(Symbol(),5,MA_Slow,0,MA_MODE,MA_PRICE_TYPE,0);
double EMA_M15 = iMA(Symbol(),15,MA_Fast,0,MA_MODE,MA_PRICE_TYPE,0);
double ema_m15 = iMA(Symbol(),15,MA_Slow,0,MA_MODE,MA_PRICE_TYPE,0);
double EMA_M30 = iMA(Symbol(),30,MA_Fast,0,MA_MODE,MA_PRICE_TYPE,0);
double ema_m30 = iMA(Symbol(),30,MA_Slow,0,MA_MODE,MA_PRICE_TYPE,0);
double EMA_H1 = iMA(Symbol(),60,MA_Fast,0,MA_MODE,MA_PRICE_TYPE,0);
double ema_h1 = iMA(Symbol(),60,MA_Slow,0,MA_MODE,MA_PRICE_TYPE,0);
double EMA_H4 = iMA(Symbol(),240,MA_Fast,0,MA_MODE,MA_PRICE_TYPE,0);
double ema_h4 = iMA(Symbol(),240,MA_Slow,0,MA_MODE,MA_PRICE_TYPE,0);
double EMA_D1 = iMA(Symbol(),1440,MA_Fast,0,MA_MODE,MA_PRICE_TYPE,0);
double ema_d1 = iMA(Symbol(),1440,MA_Slow,0,MA_MODE,MA_PRICE_TYPE,0);
// double EMA_W1 = iMA(Symbol(),10080,MA_Fast,0,MA_MODE,MA_PRICE_TYPE,0);
// double ema_w1 = iMA(Symbol(),10080,MA_Slow,0,MA_MODE,MA_PRICE_TYPE,0);
string M1_EMA= "",M5_EMA= "", M15_EMA= "", M30_EMA= "", H1_EMA= "", H4_EMA= "", D1_EMA= "",PRC1;
color color_EMAm1,color_EMAm5,color_EMAm15,color_EMAm30,color_EMAm60,color_EMAm240,color_EMAm1440;
if (EMA_M1 > ema_m1) {M1_EMA= "-";color_EMAm1 = Lime; }
if (EMA_M1 <= ema_m1) {M1_EMA= "-";color_EMAm1 = Red; }
if (EMA_M5 > ema_m5) {M5_EMA= "-";color_EMAm5 = Lime; }
if (EMA_M5 <= ema_m5) {M5_EMA= "-";color_EMAm5 = Red; }
if (EMA_M15 > ema_m15) {M15_EMA= "-";color_EMAm15 = Lime; }
if (EMA_M15 <= ema_m15) {M15_EMA= "-";color_EMAm15 = Red; }
if (EMA_M30 > ema_m30) {M30_EMA= "-";color_EMAm30 = Lime; }
if (EMA_M30 <= ema_m30) {M30_EMA= "-";color_EMAm30 = Red; }
if (EMA_H1 > ema_h1) {H1_EMA= "-";color_EMAm60 = Lime; }
if (EMA_H1 <= ema_h1) {H1_EMA= "-";color_EMAm60 = Red; }
if (EMA_H4 > ema_h4) {H4_EMA= "-";color_EMAm240 = Lime; }
if (EMA_H4 <= ema_h4) {H4_EMA= "-";color_EMAm240 = Red; }
if (EMA_D1 > ema_d1) {D1_EMA= "-";color_EMAm1440 = Lime; }
if (EMA_D1 <= ema_d1) {D1_EMA= "-";color_EMAm1440 = Red; }
ObjectCreate("SignalEMAM1t", OBJ_LABEL, 0, 0, 0);
ObjectSetText("SignalEMAM1t","EMA", 7, "Tahoma Narrow", BarLabel_color);
ObjectSet("SignalEMAM1t", OBJPROP_CORNER, Corner_of_Chart_RIGHT_TOP);
ObjectSet("SignalEMAM1t", OBJPROP_XDISTANCE, 155+Adjust_Side_to_side);
ObjectSet("SignalEMAM1t", OBJPROP_YDISTANCE, 50+Shift_UP_DN);
ObjectCreate("SignalEMAM1", OBJ_LABEL, 0, 0, 0);
ObjectSetText("SignalEMAM1", M1_EMA, 40, "Tahoma Narrow", color_EMAm1);
ObjectSet("SignalEMAM1", OBJPROP_CORNER, Corner_of_Chart_RIGHT_TOP);
ObjectSet("SignalEMAM1", OBJPROP_XDISTANCE, 130+Adjust_Side_to_side);
ObjectSet("SignalEMAM1", OBJPROP_YDISTANCE, 20+Shift_UP_DN);
ObjectCreate("SignalEMAM5", OBJ_LABEL, 0, 0, 0);
ObjectSetText("SignalEMAM5", M5_EMA, 40, "Tahoma Narrow", color_EMAm5);
ObjectSet("SignalEMAM5", OBJPROP_CORNER, Corner_of_Chart_RIGHT_TOP);
ObjectSet("SignalEMAM5", OBJPROP_XDISTANCE, 110+Adjust_Side_to_side);
ObjectSet("SignalEMAM5", OBJPROP_YDISTANCE, 20+Shift_UP_DN);
ObjectCreate("SignalEMAM15", OBJ_LABEL, 0, 0, 0);
ObjectSetText("SignalEMAM15", M15_EMA, 40, "Tahoma Narrow", color_EMAm15);
ObjectSet("SignalEMAM15", OBJPROP_CORNER, Corner_of_Chart_RIGHT_TOP);
ObjectSet("SignalEMAM15", OBJPROP_XDISTANCE, 90+Adjust_Side_to_side);
ObjectSet("SignalEMAM15", OBJPROP_YDISTANCE, 20+Shift_UP_DN);
ObjectCreate("SignalEMAM30", OBJ_LABEL, 0, 0, 0);
ObjectSetText("SignalEMAM30", M30_EMA, 40, "Tahoma Narrow", color_EMAm30);
ObjectSet("SignalEMAM30", OBJPROP_CORNER, Corner_of_Chart_RIGHT_TOP);
ObjectSet("SignalEMAM30", OBJPROP_XDISTANCE, 70+Adjust_Side_to_side);
ObjectSet("SignalEMAM30", OBJPROP_YDISTANCE, 20+Shift_UP_DN);
ObjectCreate("SignalEMAM60", OBJ_LABEL, 0, 0, 0);
ObjectSetText("SignalEMAM60", H1_EMA, 40, "Tahoma Narrow", color_EMAm60);
ObjectSet("SignalEMAM60", OBJPROP_CORNER, Corner_of_Chart_RIGHT_TOP);
ObjectSet("SignalEMAM60", OBJPROP_XDISTANCE, 50+Adjust_Side_to_side);
ObjectSet("SignalEMAM60", OBJPROP_YDISTANCE, 20+Shift_UP_DN);
ObjectCreate("SignalEMAM240", OBJ_LABEL, 0, 0, 0);
ObjectSetText("SignalEMAM240", H4_EMA, 40, "Tahoma Narrow", color_EMAm240);
ObjectSet("SignalEMAM240", OBJPROP_CORNER, Corner_of_Chart_RIGHT_TOP);
ObjectSet("SignalEMAM240", OBJPROP_XDISTANCE, 30+Adjust_Side_to_side);
ObjectSet("SignalEMAM240", OBJPROP_YDISTANCE, 20+Shift_UP_DN);
ObjectCreate("SignalEMAM1440", OBJ_LABEL, 0, 0, 0);
ObjectSetText("SignalEMAM1440", D1_EMA, 40, "Tahoma Narrow", color_EMAm1440);
ObjectSet("SignalEMAM1440", OBJPROP_CORNER, Corner_of_Chart_RIGHT_TOP);
ObjectSet("SignalEMAM1440", OBJPROP_XDISTANCE, 10+Adjust_Side_to_side);
ObjectSet("SignalEMAM1440", OBJPROP_YDISTANCE, 20+Shift_UP_DN);
}
//----
return(0);
}
//+------------------------------------------------------------------+
Comments