t3_TRIX_signals_v1

t3_TRIX_signals_v1

Here's a breakdown of what this MetaTrader script does, explained in a way that's easy to understand without technical jargon:

Overall Goal:

This script is designed to identify potential trading opportunities based on crossovers of two "T3 Trix" indicators. Think of these indicators as lines that represent the momentum of the price. When these lines cross each other, it might suggest a change in the price direction. The script highlights these potential turning points on your chart with arrows.

How it Works:

  1. Setting the Stage: The script starts by defining some settings you can adjust, like the period (length) used to calculate the T3 Trix indicators, how many past bars to analyze, and a "hot" value which is a parameter for the T3 indicator calculation. These settings affect how sensitive the indicator is to price changes.

  2. Calculating the Indicators: The core of the script is calculating two T3 Trix indicators. Each of the T3 Trix indicator is calculated using the iCustom function, which means it relies on a separate indicator called T3_trix. The script retrieves values from these indicators for the current bar and the previous bar.

  3. Spotting the Crossovers: The script then checks for a specific pattern: if one T3 Trix line was below the other on the previous bar, and is now above it on the current bar, it signals a potential uptrend (price increase). Conversely, if the first line was above the other on the previous bar and is now below it, it suggests a possible downtrend (price decrease).

  4. Visual Signals: When a crossover is detected, the script places an arrow on the chart to visually mark the potential trading opportunity. An upward-pointing arrow suggests a possible buy signal, while a downward-pointing arrow implies a potential sell signal.

  5. Alerts: When the crossover happen an alert will be raised to let the user know of the event.

In Simple Terms:

Imagine you have two speedometers (the T3 Trix indicators). This script watches to see when one speedometer reading crosses above or below the other. When that happens, it draws an arrow on your chart to get your attention, suggesting that the "speed" (price momentum) might be changing direction.

Important Considerations:

  • Not a Guarantee: It's crucial to understand that this script only suggests potential trading opportunities. It doesn't guarantee that the price will actually move in the predicted direction.
  • Customization: The settings you can adjust at the beginning of the script play a significant role in its accuracy. Experimenting with different settings can help you find the best configuration for the specific market conditions you're trading in.
  • Additional Analysis: This script is just one tool. Experienced traders typically combine it with other forms of analysis and risk management techniques before making any trading decisions.
Miscellaneous
Implements a curve of type %1
2 Views
0 Downloads
0 Favorites
t3_TRIX_signals_v1
//+---------------------------------------------------------+
//| T3 Trix crossing  signals.mq4 
//|
//| Perky..
//+------------------------------------------------------------------+
#property  copyright "Author - Perky Aint no Porky"

#property indicator_chart_window
#property indicator_buffers 2
#property indicator_color1 LightBlue
#property indicator_width1 3
#property indicator_color2 Red
#property indicator_width2 3

//---- input parameters

extern int       A_t3_period=18; 
extern int       num_bars=350; 
extern int       is_A_open_price=0; 
extern int       B_t3_period_ac=10; 
extern int       diferential=0; 
extern double    hot=0.7; 
extern int CountBars=350;
extern bool UseAlert=True;

//---- buffers
double val1[];
double val2[];
double mtfstochs,mtfstochsb4;
double mtfstochs1,mtfstochs1b4;
int Timer;
string UD="";
//+------------------------------------------------------------------+
//| Custom indicator initialization function                         |
//+------------------------------------------------------------------+
int init()
  {
   string short_name;
//---- indicator line
   IndicatorBuffers(2);
   SetIndexStyle(0,DRAW_ARROW);
   SetIndexArrow(0,108);
   SetIndexStyle(1,DRAW_ARROW);
   SetIndexArrow(1,108);
   SetIndexBuffer(0,val1);
   SetIndexBuffer(1,val2);
//----
   return(0);
  }
//+------------------------------------------------------------------+
//| AltrTrend_Signal_v2_2                                            |
//+------------------------------------------------------------------+
int start()
  {   
  // if (CountBars>=500) CountBars=500;
  // SetIndexDrawBegin(0,500-CountBars);
  // SetIndexDrawBegin(1,500-CountBars);
  int i,shift,counted_bars=IndicatorCounted();


   //---- check for possible errors
  // if(counted_bars<0) return(-1);

   //---- initial zero
  // if(counted_bars<1)
   //  {
    //  for(i=1;i<=CountBars;i++) val1[CountBars-i]=0.0;
    //  for(i=1;i<=CountBars;i++) val2[CountBars-i]=0.0;
    // } 

for ( shift = CountBars; shift>=0; shift--) 
{ 

   
     mtfstochs= 
     iCustom(Symbol(),Period(),"T3__trix",A_t3_period,num_bars,is_A_open_price,B_t3_period_ac,diferential,hot,0,shift+0);
     mtfstochsb4=
     iCustom(Symbol(),Period(),"T3__trix",A_t3_period,num_bars,is_A_open_price,B_t3_period_ac,diferential,hot,0,shift+1);

     mtfstochs1= 
          iCustom(Symbol(),Period(),"T3__trix",A_t3_period,num_bars,is_A_open_price,B_t3_period_ac,diferential,hot,1,shift+0);

     mtfstochs1b4=
         iCustom(Symbol(),Period(),"T3__trix",A_t3_period,num_bars,is_A_open_price,B_t3_period_ac,diferential,hot,1,shift+1);
     
//Comment ( "mtfstochs=",mtfstochs,"mtfstochsb4=",mtfstochsb4,"\nmtfstochs1=",mtfstochs1,"mtfstochs1b4=",mtfstochs1b4);
 	   val1[shift]=0;
		val2[shift]=0;

//if ( TTb4>TT1b4 && TT<TT1 ) 
 if ( mtfstochsb4<mtfstochs1b4 && mtfstochs>mtfstochs1)

{
	val2[shift]=High[shift]+8*Point;
	if (shift < 2 )
	
	{
	   UD="DOWN.";
		DoAlert(UD);
	}

}
// if ( TTb4<TT1b4 && TT>TT1) 
if  (mtfstochsb4>mtfstochs1b4 && mtfstochs<mtfstochs1)

{
		val1[shift]=Low[shift]-8*Point;
	
	 if (shift < 2 )
  { 
  UD=" UP.";	
  DoAlert(UD);
  }
}



}
   //return(0);
  }
 
void DoAlert(string UD)
{
   if (!NewBar() || !UseAlert)
      return;
     Alert (Symbol()," ",Period(),"T3 TRIX cross ",UD);

}


  bool NewBar()
{
   static datetime dt  = 0;
   if (dt != Time[0])
   {
      dt = Time[0];
      return(true);
   }
  
}

//+------------------------------------------------------------------+

Comments

Markdown supported. Formatting help

Markdown Formatting Guide

Element Markdown Syntax
Heading # H1
## H2
### H3
Bold **bold text**
Italic *italicized text*
Link [title](https://www.example.com)
Image ![alt text](image.jpg)
Code `code`
Code Block ```
code block
```
Quote > blockquote
Unordered List - Item 1
- Item 2
Ordered List 1. First item
2. Second item
Horizontal Rule ---