"Miracle", "digital" "group" movement indicator

 

Open the six instruments in the sequence below and position them on the screen like this:

NZDUSD USDCAD

EURUSD USDCHF

GBPUSD USDJPY

------------------------------------------------------

Then in any usual indicator/advisor insert this simple code at the beginning after start():


string Shift = "------------------------------------------------------------------------------------------------------------- ";
static double BidInit = 0;
static double BidPrev = 0;

static datetime TimeInit = 0;
static int TimeFrame = 3600;
int TimePassed = 0;
if (TimeCurrent() >= (TimeInit + TimeFrame) )
{
TimeInit = TimeCurrent();
BidInit = NormalizeDouble(Bid,Digits);
BidPrev = BidInit;
}
if (NormalizeDouble(Bid,Digits) !
{
TimePassed = (TimeCurrent() - TimeInit)/60;
Comment(Shift,NormalizeDouble((Bid-BidInit)/Point,Digits),
" (",
NormalizeDouble(BidInit,Digits),
"-",
NormalizeDouble(Bid,Digits)," : ",TimePassed," min.)");
BidPrev = Bid;
}

------------------------------------------------------------------------------

Run the indicator/advisor on all of the above financial tools at the same time.

The results for those who like to catch "group movements" will be very interesting.

It turns out that any movement, even within 10-15 pips, is a group movement.



Who wants to try - this code, designed as an Expert Advisor, is in the attached file

Files:
 
Sart >> :


------------------------------------------------------------------------------

The results for those who like to catch "group movement" will be very interesting.

It turns out that any movement, even a movement within 10-15 pips, is a group movement.



Who wants to try - this code is in attached file.




There goes the secret of the market !

 
Semen Semenych rests
 
Lord_Shadows >> :

>> So, the secret of the market is out !

I advise you to run it and watch it for an hour.

This "indicator" (even without the inverted commas, I put the inverted commas because of the unusual simplicity of the code),

In my opinion, it shows the current direction of the market more clearly than any other tool.

 

This is obvious. All these couples depend on USD! How else do you think it could be? It is equivalent to saying that a person getting out of a car, heading towards his house will move away from the car by exactly the same distance as he is approaching the house. And if there is a bicycle parked near the house, he will be approaching it by the same distance as he is approaching the house. But since the distance between the house and the person differs from the distance between the bicycle and the person by a few centimetres (for example), and the accuracy of distance measurement is chosen in metres, these distances are equated by rounding.

 
Здравствуйте.




С уважением,
Ais.
 
Sart >>...in my opinion, shows the current direction of the market more clearly than any other tool.

I don't know about the practical application, but it's a great impression.

Thank you, Sart.

 

Ideas are in the air, Sart. I myself have turned my attention to multicurrencies relatively recently. In my opinion, only this approach allows for a correct definition of the concept of a trend.

 

Only how to use it?

For example if the yen and pound have already changed by 40 pips and the yen is 0, should we buy the yen?


A little added commentary


//----------------------------------------------------------------------------
int init() { return(0); }
//----------------------------------------------------------------------------
int deinit() { return(0); }
//----------------------------------------------------------------------------
int start () 
{ 
	string Shift = "                                                                                               ";
	static double	BidInit = 0; // начальное значение цены
	static double BidPrev = 0; // предыдущее значение цены

	static datetime TimeInit = 0; // начальное время
	static int TimeFrame = 3600; // время, для которого расчитывается смещение
	int TimePassed = 0; 
	if (TimeCurrent()>= TimeInit+ TimeFrame) // если прошло TimeFrame секунд, то переинициализируем цены
	{
		TimeInit = TimeCurrent(); // сохраняем текущее время
		BidInit = NormalizeDouble(Bid ,Digits); // берем текущую цену
		BidPrev = BidInit; // созраняем ее
	}
	if (NormalizeDouble(Bid,Digits)!=NormalizeDouble( BidPrev,Digits)) // если текущая цена не равна сохраненной
	{
		TimePassed = (TimeCurrent()- TimeInit)/60;	// пройденное время в минутах
		// выводим коментарий
		Comment( Shift, 
			NormalizeDouble((Bid- BidInit)/Point, Digits), // изменение в пуктах от первоначальной
			" (", 
			NormalizeDouble( BidInit, Digits), // первоначальная
			"  -  ", 
			NormalizeDouble(Bid, Digits), // текущая
			" :  ",
			TimePassed," мин.)");					// пройдено времени
		BidPrev = Bid; // сохраняем цену
	}
	return(0);
}
 
And another question. why do we only update BidInit once an hour? (More precisely once every TimeFrame seconds.)
 

I have long ago converted Semyon Semenych's indicators to roughly the same calculation, and in principle have used them for trading not without success.

Reason: