Dynamics (In Motion)

Things are changing rapidly currently.

I thought I would explain some of the dynamics a little more.

The first thing to understand better is the failure level, which is 40% outside the statistical range (pendulum) drawn around the condolidation weight. I drew in the black line for you. That line has been in place since the last CI cross over above 53.

 ObjectCreate("Pick", OBJ_RECTANGLE, 0, Time[i],taxi[0]+570*Point, Time[0],  taxi[0]+680*Point);
                      ObjectSetInteger(0,"Pick",OBJPROP_COLOR,clrWhite);
                      ObjectSet("Pick",OBJPROP_WIDTH,1);
                      ObjectSet("Pick",OBJPROP_BACK,1);

The white field is 57-68 pips away from the TAXI line, which is the consolidation mean, and as I mentioned before, the failure level is about 60 pips out. It is also about 10 pips shy of the Goldilocks level, which if it was hit would grant further rights for a no break extension move.

The second thing is the re-emergence of the red CounterForce signals. With a 6-hour delay this would eliminate the current S1 and S2 levels and use these lines from then on to represent R1 and R2.

If you follow the black arrow heads, you can see how the S1 line is yielding to the new born R1. S2 does the same for R2.

For the code, see the CounterRejoyce blog entry.

Now, let’s pull up an example of what preceeds a radioactive close.

For a radioactive close outside you would need the S2 to be re-applied, so counter-intuitively enough you would need Green Stretch Marks appear which would mean at least a 58+ pips stretch upwards. I highligthed the first green that coincided with a move above the R1. See how the S2 although was removed, price ended up coasting all the way to where it at was prior. It is also a possibility currently that price could make it to the where the S2 was, at 1.0885 – barring the Opex Futures expiration level to be adjusted by tomorrow. It now stands at 100.50 on FXE and that would mean price to settle at least 30 pips higher than where it is at at the monent (1.0916).

By the way, the radioactive print saw no continuation on the example above, as there was no close below the low of that candle. Multiple flips of resistance and support configs are also possible as you can see.

I have already talked about the stages of the start of a run including the signal blockout hours.

Autumn Leaves

I started posting in 2017. I had views of a single entry reaching 200+. Hitting new lows again, yesterday’s post had 2 views so far. Time out & some stuff to indulge with if you like to use your imagination and perhaps solve some things along the way.


Autumn leaves, but does it, really? You are about to decide between working for The Toothpaste Management or the National Whale Services for the remainder of your time. As one big human falafel, writing is no longer of your concern.

The first red print since the 1.07x low would change the config to bearish and would plot the R1 at 136 pips up from the low, currently this would mean 1.1060.

Knife Fight

As Leon, the perpetrator said, the last thing you need to learn, is the close combat. Knife Fight in our case means getting the wave structure right.

I made one mistake on this image:

Thanks to the new”C, sell W2″ pullback plot I can now say that the move up, that was looking like one continuous impulse move was infact an ABC move at a very high speed. This brings me to an interesting dilemma: I called this “No challenge of volatility”, but was there no challenge when price did show up at the rink only it brought Adidas to a knife fight?

Corrected image below:

I’ll spare you the zoom in.

Tom Hanks to RSI2, I do keep an eye out for continuation divergences I.e. the one between wave 2 and Wave 4. I did get in on this short for instance.

This brings us again to Elliott Beethoven. Can you patent subjectivity?

I have learnt the 5 wave structure by experience, by using RSI2 HL2 on the hourly and naming a certain divergence a continuation divergence.

I decided on giving a plot to a Volatility Breach Reversal, found that this is great guidance for where that Wave 3 possibly ended, and saw that this was good.

   if (High[i+2]>iBands(symbol,0,30,2,0,PRICE_MEDIAN,MODE_UPPER,i+2)+60*Point && High[i+4]<iBands(symbol,0,30,2,0,PRICE_MEDIAN,MODE_UPPER,i+4) && Close[i+1]<iBands(symbol,0,30,2,0,PRICE_MEDIAN,MODE_UPPER,i+1) && Close[i+1]<High[i+2]-(High[i+2]-Low[i+2])/1.5 && High[i+2]-Low[i+2]>100*Point
     && iBands(symbol,0,30,2,0,PRICE_MEDIAN,MODE_UPPER,i+1)-iBands(symbol,0,30,2,0,PRICE_MEDIAN,MODE_LOWER,i+1)>820*Point
   ){
            ObjectCreate("Pal"+IntegerToString(i), OBJ_RECTANGLE, 0,  Time[i+3], iHigh(symbol,0,iHighest(symbol,0,MODE_HIGH,3,i)), Time[i], Close[i]+50*Point);
            ObjectSetInteger(0,"Pal"+IntegerToString(i),OBJPROP_COLOR,clrSalmon);
            ObjectSet("Pal"+IntegerToString(i),OBJPROP_BACK,1);
            ObjectSet("Pal"+IntegerToString(i),OBJPROP_WIDTH,5);
   }
   if (Low[i+2]<iBands(symbol,0,30,2,0,PRICE_MEDIAN,MODE_LOWER,i+2)-30*Point && Low[i+4]>iBands(symbol,0,30,2,0,PRICE_MEDIAN,MODE_LOWER,i+4) && Close[i+1]>iBands(symbol,0,30,2,0,PRICE_MEDIAN,MODE_LOWER,i+1) && Close[i+1]>Low[i+2]+(High[i+2]-Low[i+2])/1.5 && High[i+2]-Low[i+2]>100*Point
   
   ){
            ObjectCreate("Pal"+IntegerToString(i), OBJ_RECTANGLE, 0,  Time[i+3], iLow(symbol,0,iLowest(symbol,0,MODE_LOW,3,i)), Time[i], Close[i]-50*Point);
            ObjectSetInteger(0,"Pal"+IntegerToString(i),OBJPROP_COLOR,clrYellowGreen);
            ObjectSet("Pal"+IntegerToString(i),OBJPROP_BACK,1);
            ObjectSet("Pal"+IntegerToString(i),OBJPROP_WIDTH,5);
   }

Yet it isn’t me who is arrogant here. I don’t start sentences like “I still think” (which is only a smidge shy of “why don’t you” or “my frined”) like FX Pippoletto does, whom came in as number 2; not that he has nothing to learn from, but this is not condusive with being inconclusive.

So, what was this period after the 5 waves down? Coda. Sonido electronico. The gear selector. First Gear 3 was selected then Gear 5. Now we are in the run up. Maximum 5 hourly closes below the 8 EMO would be allowed.

Elliott Symphony 5 has nothing on this.

         if (High[i+5]<iBands(symbol,0,30,2,0,PRICE_MEDIAN,MODE_UPPER,i+5)-100*Point && High[i+4]<iBands(symbol,0,30,2,0,PRICE_MEDIAN,MODE_UPPER,i+4)-100*Point
            && High[i+3]<iBands(symbol,0,30,2,0,PRICE_MEDIAN,MODE_UPPER,i+3) && High[i+3]>iBands(symbol,0,30,2,0,PRICE_MEDIAN,MODE_UPPER,i+3)-130*Point
            && High[i+2]<iBands(symbol,0,30,2,0,PRICE_MEDIAN,MODE_UPPER,i+2) && High[i+2]>iBands(symbol,0,30,2,0,PRICE_MEDIAN,MODE_UPPER,i+2)-100*Point
            && High[i+1]<iBands(symbol,0,30,2,0,PRICE_MEDIAN,MODE_UPPER,i+1) && High[i+1]>iBands(symbol,0,30,2,0,PRICE_MEDIAN,MODE_UPPER,i+1)-100*Point
            && Close[i]<Close[i+1]           
           ){
                  ObjectCreate("Nochz"+IntegerToString(i), OBJ_TEXT, 0, Time[i+4], Close[i+1]+90*Point); 
                  ObjectSetText("Nochz"+IntegerToString(i), "   (C) Sell: (2) @ "+DoubleToStr(NormalizeDouble(iClose(symbol,0,iHighest(symbol,0,MODE_CLOSE,2,i)),4),4), 26, "Impact", White);
                  ObjectCreate("Noch"+IntegerToString(i), OBJ_TEXT, 0, Time[i+4], Close[i+1]+90*Point); 
                  ObjectSetText("Noch"+IntegerToString(i), "  (C) Sell: (2) @ "+DoubleToStr(NormalizeDouble(iClose(symbol,0,iHighest(symbol,0,MODE_CLOSE,2,i)),4),4), 26, "Impact", DeepPink);
            }

All That’s Mine

Like a ship on the Ocean, headed out to Sea.

Going into the day, you can already know two things.

1. the configuration

2. the level to fail at

The configuration is the presence of R1 & R2 or S1 & S2 – see the CounterRejoyce routine.

The level to fail is based on the last 15-minute consolidation candle (where full charge was reached measured by the CI) and the distance is the 3-day ATR less 20 pips. There is no math to this, only stats.

Now, the scope of this article is to determine where the move away from the Fail levelel may yield another failure – in the opposite direction.

There are 2 main directional fail conditions.

One is above the highest close of the second “Green block” i.e.:

or a Volatility Breach Reversal – posted in the blog entry titled alike.

The last thing to contend with is volatility for the 3rd time. There may be a failure caused by the inability to challenge the upper 30-sample Hourly HL2 Bollinger Band, but as the previous example shows, there may be multiple attempts and I would not put my money on this event cutting the run short.

If you need to know how I can look back and find prior failures when all I plot is from the last 15-min failure, I have a continous version on the 15 min, and I can measure approximately 60 pips from the actual consolidation mean, et French.

It also seems to coincide with the white block, which is 30% outside the pendulum (in geek again).

Other than that there is nothing like the contrast of hevy metal and weightlessness.

The Market Switch

Gonna be rather geeky, but it kept me engaged and made me excited.

So I’m building on this CounterForce / CounterRejoyce pair.

In Forex things may happen more quickly and you may need a faster trigger than a Weekly 59 EMA.

The activity we’re touching upon here is the radioactivity.

The image below shows the stages of breaking into a Bear / Bull phase.

Mirror mirrror

    if (corr[i]>corr2[i] && Close[i]<corr2[i]){
    ObjectCreate("Hot"+IntegerToString(i), OBJ_TEXT, 0, Time[i], Low[i]-70*Point); 
    ObjectSetText("Hot"+IntegerToString(i), CharToStr(62), 42, "Wingdings", clrRed);                                                      
   }
   
    if (corr[i]<corr2[i] && Close[i]>corr2[i]){
    ObjectCreate("Hot"+IntegerToString(i), OBJ_TEXT, 0, Time[i], High[i]+70*Point); 
    ObjectSetText("Hot"+IntegerToString(i), CharToStr(62), 42, "Wingdings", clrGreen);                                                      
   }

Volatility Breach Reversal

Things get ravaged, things get re-opened.

First time I saw that video w/ the Titanic idea that surprise-surprise somehow did not come from Anton.

There are things that just lend to a subject.


I figured a complmentary, volatility breach & instant crack back signal would be a nice addition to the Counter series.

Not that the rangebound nature of the current market isn’t obvious otherwise, but this new signal definately highlites it well.

   if (High[i+2]>iBands(symbol,0,30,2,0,PRICE_MEDIAN,MODE_UPPER,i+2)+60*Point && High[i+3]<iBands(symbol,0,30,2,0,PRICE_MEDIAN,MODE_UPPER,i+3) && Close[i+1]<iBands(symbol,0,30,2,0,PRICE_MEDIAN,MODE_UPPER,i+1) && Close[i+1]<High[i+2]-(High[i+2]-Low[i+2])/1.5 && High[i+2]-Low[i+2]>100*Point
     && iBands(symbol,0,30,2,0,PRICE_MEDIAN,MODE_UPPER,i+1)-iBands(symbol,0,30,2,0,PRICE_MEDIAN,MODE_LOWER,i+1)>820*Point
   ){
            ObjectCreate("Pal"+IntegerToString(i), OBJ_RECTANGLE, 0,  Time[i+3], High[i+2], Time[i], Close[i]+50*Point);
            ObjectSetInteger(0,"Pal"+IntegerToString(i),OBJPROP_COLOR,clrSalmon);
            ObjectSet("Pal"+IntegerToString(i),OBJPROP_BACK,1);
            ObjectSet("Pal"+IntegerToString(i),OBJPROP_WIDTH,5);
   }
   if (Low[i+2]<iBands(symbol,0,30,2,0,PRICE_MEDIAN,MODE_LOWER,i+2)-30*Point && Low[i+3]>iBands(symbol,0,30,2,0,PRICE_MEDIAN,MODE_LOWER,i+3) && Close[i+1]>iBands(symbol,0,30,2,0,PRICE_MEDIAN,MODE_LOWER,i+1) && Close[i+1]>Low[i+2]+(High[i+2]-Low[i+2])/1.5 && High[i+2]-Low[i+2]>100*Point
   
   ){
            ObjectCreate("Pal"+IntegerToString(i), OBJ_RECTANGLE, 0,  Time[i+3], Low[i+2], Time[i], Close[i]-50*Point);
            ObjectSetInteger(0,"Pal"+IntegerToString(i),OBJPROP_COLOR,clrYellowGreen);
            ObjectSet("Pal"+IntegerToString(i),OBJPROP_BACK,1);
            ObjectSet("Pal"+IntegerToString(i),OBJPROP_WIDTH,5);
   }

Another example of me preferring to use the width of the Bollinger Bands for a filter.

CounterRejoyce

In MT4 you cannot have the same routine make continuous plots both in the chart window and in an indicator window.

This is why I had to make this duplicate alter ego, since I wanted the statistical buy / sell level plotted at all times.

Now you have no choice but to rejoyce.

Here’s the buy, where it all happens.

After the buy, the bigger stretches are the entries, say 50 or more in the negative or the 3rd purple print arrives. The Run Up is on until the second Green print appears. As mentioned before, a full body outside the Bollinger diqualifies the counter for the first count. After the close of Green 2, the market is in the correction, down to the joyce line. Similarly, the get in is the 50+ stretch of the 2nd purple close.

#property copyright "Copyright © 2023, Macdulio" 
#property link      "https://forexfore.blog" 
#property description "V1.0"
#property description "Counter Rejoyce"
#property description "8-sample stretch from the 8-EMA band"
#property strict

//--- indicator settings
#property indicator_chart_window
#property indicator_buffers 2
#property indicator_color1  clrDeepPink
#property indicator_color2  clrPurple

extern int lookback = 1000;
extern int sample = 8;
double corr[],corr2[];
string symbol = Symbol();  
double ExtATRBuffer[],ExtATRBuffer2[],ExtATRBuffer3[],ExtATRBuffer4[],ExtATRBuffer5[];

int init(){
  
   SetIndexBuffer(0,corr);   
   SetIndexStyle(0,DRAW_LINE,STYLE_SOLID,4,indicator_color1);
   SetIndexBuffer(1,corr2);   
   SetIndexStyle(1,DRAW_LINE,STYLE_SOLID,4,indicator_color2);
  
   return(0);
}

//+------------------------------------------------------------------+
//| Average True Range                                               |
//+------------------------------------------------------------------+
int start(){
  
  ArrayResize(ExtATRBuffer, Bars); 
  ArrayInitialize(ExtATRBuffer, EMPTY_VALUE);   
    ArrayResize(ExtATRBuffer2, Bars); 
  ArrayInitialize(ExtATRBuffer2, EMPTY_VALUE);   
      ArrayResize(ExtATRBuffer3, Bars); 
  ArrayInitialize(ExtATRBuffer3, EMPTY_VALUE);  
      ArrayResize(ExtATRBuffer4, Bars); 
  ArrayInitialize(ExtATRBuffer4, EMPTY_VALUE);  
     ArrayResize(ExtATRBuffer5, Bars); 
  ArrayInitialize(ExtATRBuffer5, EMPTY_VALUE);   
   ArrayResize(corr, Bars);   
 ArrayInitialize(corr,  EMPTY_VALUE);  
    ArrayResize(corr2, Bars);   
 ArrayInitialize(corr2,  EMPTY_VALUE);  

   int i;

for(i=lookback; i>=0; i--){ 

 ExtATRBuffer[i]= -1*(iHigh(symbol,0,iHighest(symbol,0,MODE_HIGH,sample-1,i+1))-Low[i])*10000;
 if (ExtATRBuffer[i]<-80) ExtATRBuffer[i]=-80;
 ExtATRBuffer2[i]=(High[i]-iLow(symbol,0,iLowest(symbol,0,MODE_LOW,sample-1,i+1)))*10000;
 if (ExtATRBuffer2[i]>80) ExtATRBuffer2[i]=80;
 if (ExtATRBuffer[i]<-58) ExtATRBuffer3[i]=ExtATRBuffer[i];
 else if (ExtATRBuffer2[i]>58) ExtATRBuffer3[i]=ExtATRBuffer2[i]; 
 if (High[i]>iBands(symbol,0,216,1.8,0,PRICE_MEDIAN,MODE_UPPER,i) && (iBands(symbol,0,30,2,0,PRICE_MEDIAN,MODE_UPPER,i)-iBands(symbol,0,30,2,0,PRICE_MEDIAN,MODE_LOWER,i)>1100*Point || Low[i]>iBands(symbol,0,30,2,0,PRICE_MEDIAN,MODE_UPPER,i)) && ExtATRBuffer3[i]>0) ExtATRBuffer4[i]=ExtATRBuffer3[i]; 
 if (Low[i]<iBands(symbol,0,216,1.8,0,PRICE_MEDIAN,MODE_LOWER,i) && (iBands(symbol,0,30,2,0,PRICE_MEDIAN,MODE_UPPER,i)-iBands(symbol,0,30,2,0,PRICE_MEDIAN,MODE_LOWER,i)>1100*Point || High[i]<iBands(symbol,0,30,2,0,PRICE_MEDIAN,MODE_LOWER,i)) && ExtATRBuffer3[i]<0) ExtATRBuffer5[i]=ExtATRBuffer3[i];  
}
  

for(i=lookback; i>=0; i--){ 
   corr[i]=corr[i+1];
   corr2[i]=corr2[i+1];
   if (ExtATRBuffer4[i+6]!=EMPTY_VALUE) {corr[i]=iHigh(symbol,0,iHighest(symbol,0,MODE_HIGH,60,i))-1360*Point; corr2[i]=iHigh(symbol,0,iHighest(symbol,0,MODE_HIGH,60,i))-2200*Point;} 
   if (ExtATRBuffer5[i+6]!=EMPTY_VALUE) {corr[i]=iLow(symbol,0,iLowest(symbol,0,MODE_LOW,60,i))+1360*Point; corr2[i]=iLow(symbol,0,iLowest(symbol,0,MODE_LOW,60,i))+2200*Point;}
}

  return(0);
}
//+------------------------------------------------------------------+
   void deletetxt1(string text){
   for(int iObj=ObjectsTotal()-1; iObj >= 0; iObj--){
      string   on = ObjectName(iObj);
      if(StringFind(on, text) == 0)  ObjectDelete(on);
}  }

Counter Force II

A quick lesson on why quick lessons are important.

Apply the new filer changes & zoom out.

if (High[i]>iBands(symbol,0,216,1.8,0,PRICE_MEDIAN,MODE_UPPER,i) && (iBands(symbol,0,30,2,0,PRICE_MEDIAN,MODE_UPPER,i)-iBands(symbol,0,30,2,0,PRICE_MEDIAN,MODE_LOWER,i)>1100*Point || Low[i]>iBands(symbol,0,30,2,0,PRICE_MEDIAN,MODE_UPPER,i)) && ExtATRBuffer3[i]>0) ExtATRBuffer4[i]=ExtATRBuffer3[i]; 
 if (Low[i]<iBands(symbol,0,216,1.8,0,PRICE_MEDIAN,MODE_LOWER,i) && (iBands(symbol,0,30,2,0,PRICE_MEDIAN,MODE_UPPER,i)-iBands(symbol,0,30,2,0,PRICE_MEDIAN,MODE_LOWER,i)>1100*Point || High[i]<iBands(symbol,0,30,2,0,PRICE_MEDIAN,MODE_LOWER,i)) && ExtATRBuffer3[i]<0) ExtATRBuffer5[i]=ExtATRBuffer3[i];  
}

What do you see?

Can taking volatility measurements and applying some filters tell you the type of the market at a single glance? Look at the green and the red highlights. Which is more? Are there streaks of reds? Aren’ those 3 lows make up a line?

I’ve got the predicting power

3 images to make a point about them streaks (gatherings).

The streaks are followed by a correction that is in excess of 136 pips, and may get as deep as 220.

This sounds as some rather tradeable information.

One of the ideas I introduce at this point is the need for at least 2 green strike outs where the first one cannot have the entire body of the hourly candle outside the 30 sample hourly BB (HL2).

Only one question remains. Is it not an issue that there hasn’t been a single green stick on this current run up?

Nor a White Rabbit.

Anatolij of the Rabbit

Today we’re talking about Rabbits and pieces.

Remember this image?

I was trying to get the “moratorium net” to be visualized a bit easiser. White Rabbit down.

How good are the White Rabbit signals? If you had to ask, you obviously can’t afford the answer.

The White Rabbits either confirm that a high / low is in place or provide you with the allowance before the signal gets called off and hedging becomes necessary. That’s about the best signal in the world.

They are not all over the place, either.

I pinky swear that the pinks are different by having larger energy reserves to begin with. If a white one gets broken, a pink would have the last word (so take those “post” breaches seriously). If a pink shows first, you are still expecting a White Knight.

 if (
      (ExtMapBuffer[i]>ExtMapBuffer[i+1]+4 && ExtMapBuffer[i+1]<StdDevLoBuffer[i+1]+5 )     ||
       (ExtMapBuffer[i]>ExtMapBuffer[i+1]+3 && ExtMapBuffer[i+1]>44 && MathAbs(ExtMapBuffer[i+1]-ExtMapBuffer[i+2])<.44 && ExtMapBuffer[i+2]<45 )  ||
            (ExtMapBuffer[i+1]<StdDevLoBuffer[i+1] && ExtMapBuffer[i+2]<StdDevLoBuffer[i+2] && ExtMapBuffer[i+3]<StdDevLoBuffer[i+3] && ExtMapBuffer[i+4]<StdDevLoBuffer[i+4] && ExtMapBuffer[i+5]<StdDevLoBuffer[i+5] && ExtMapBuffer[i]<35 && StdDevLoBuffer[i]<38 && (ExtMapBuffer[i+1]>33 || ExtMapBuffer[i+1]<25) )
      || (ExtMapBuffer[i]>ExtMapBuffer[i+1]+2 && ExtMapBuffer[i+1]<StdDevLoBuffer[i+1] && StdDevLoBuffer[i]>44) 
      || (ExtMapBuffer[i]<34 && ExtMapBuffer[i+1]>34 && ExtMapBuffer[i]<StdDevLoBuffer[i] && StdDevLoBuffer[i]<38)
      )
      {
     //    ObjectCreate("FOCUS"+IntegerToString(i),OBJ_VLINE,2, Time[i+1], 0);
         
         if (Close[i+1]>iMA(symbol,0,480,0,MODE_SMA,PRICE_MEDIAN,i+1)) ObjectCreate("FOCUS"+IntegerToString(i),OBJ_TREND,indicator_window, Time[i+1], 43.5, Time[i+1], 80 );
         else  ObjectCreate("FOCUS"+IntegerToString(i),OBJ_TREND,indicator_window, Time[i+1], 43.5, Time[i+1], 0 );
         if (ExtMapBuffer[i+2]>StdDevLoBuffer[i+2] && !(MathAbs(ExtMapBuffer[i+1]-ExtMapBuffer[i+2])<.44)) ObjectSet("FOCUS"+IntegerToString(i),OBJPROP_COLOR,clrNONE);
      else ObjectSet("FOCUS"+IntegerToString(i),OBJPROP_COLOR,clrWhite);
            ObjectSet("FOCUS"+IntegerToString(i),OBJPROP_WIDTH,4);
      ObjectSet("FOCUS"+IntegerToString(i),OBJPROP_BACK,1);
      if (MathAbs(Close[i+1]-iMA(symbol,0,480,0,MODE_SMA,PRICE_MEDIAN,i+1))<200*Point) ObjectSet("FOCUS"+IntegerToString(i),OBJPROP_COLOR,clrRed);
      if (ExtMapBuffer[i+1]<34 || ExtMapBuffer[i+2]<34 || ExtMapBuffer[i+1]>46) { ObjectSet("FOCUS"+IntegerToString(i),OBJPROP_COLOR,clrMagenta);
            if (ExtMapBuffer[i+1]>46) ObjectSet("FOCUS"+IntegerToString(i),OBJPROP_COLOR,clrPink);
      
            if (Close[i+1]<iMA(symbol,0,480,0,MODE_SMA,PRICE_MEDIAN,i+1) && Low[i+1]>iBands(symbol,0,480,2,MODE_SMA,PRICE_MEDIAN,MODE_LOWER,i+1) ){
                ObjectCreate("Failb"+IntegerToString(i), OBJ_TEXT, indicator_window, Time[i], 55); 
            ObjectSetText("Failb"+IntegerToString(i), " Buy LL @ "+DoubleToStr(NormalizeDouble(iLow(symbol,0,iLowest(symbol,0,MODE_LOW,100,i))-50*Point,4),4), 31, "Impact", Maroon);
            ObjectCreate("Failbx"+IntegerToString(i), OBJ_TEXT, indicator_window, Time[i], 55); 
            ObjectSetText("Failbx"+IntegerToString(i), "Buy LL @ "+DoubleToStr(NormalizeDouble(iLow(symbol,0,iLowest(symbol,0,MODE_LOW,100,i))-50*Point,4),4), 31, "Impact", Chartreuse);}
          if (Close[i+1]>iMA(symbol,0,480,0,MODE_SMA,PRICE_MEDIAN,i+1) && Low[i+1]>iMA(symbol,0,1424,0,MODE_SMA,PRICE_LOW,i+1) && ExtMapBuffer[i+1]<46){
                ObjectCreate("Failb"+IntegerToString(i), OBJ_TEXT, indicator_window, Time[i], 55); 
            ObjectSetText("Failb"+IntegerToString(i), " Sell HH @ "+DoubleToStr(NormalizeDouble(iHigh(symbol,0,iHighest(symbol,0,MODE_HIGH,100,i))+200*Point,4),4), 31, "Impact", Maroon);
            ObjectCreate("Failbx"+IntegerToString(i), OBJ_TEXT, indicator_window, Time[i], 55); 
            ObjectSetText("Failbx"+IntegerToString(i), "Sell HH @ "+DoubleToStr(NormalizeDouble(iHigh(symbol,0,iHighest(symbol,0,MODE_HIGH,100,i))+200*Point,4),4), 31, "Impact", Red);}
         
      
      
      
           if (!((ExtMapBuffer[i+1]>ExtMapBuffer[i+2]+4 && ExtMapBuffer[i+2]<StdDevLoBuffer[i+2]+5 )     ||
       (ExtMapBuffer[i+1]>ExtMapBuffer[i+2]+3 && ExtMapBuffer[i+2]>44 && MathAbs(ExtMapBuffer[i+2]-ExtMapBuffer[i+3])<.44 && ExtMapBuffer[i+4]<45 )  ||
            (ExtMapBuffer[i+2]<StdDevLoBuffer[i+2] && ExtMapBuffer[i+3]<StdDevLoBuffer[i+3] && ExtMapBuffer[i+4]<StdDevLoBuffer[i+4] && ExtMapBuffer[i+5]<StdDevLoBuffer[i+5] && ExtMapBuffer[i+6]<StdDevLoBuffer[i+6] && ExtMapBuffer[i+1]<35 && StdDevLoBuffer[i+1]<38 && (ExtMapBuffer[i+2]>33 || ExtMapBuffer[i+2]<25) )
      || (ExtMapBuffer[i+1]>ExtMapBuffer[i+2]+2 && ExtMapBuffer[i+2]<StdDevLoBuffer[i+2] && StdDevLoBuffer[i+1]>44) 
      || (ExtMapBuffer[i+1]<34 && ExtMapBuffer[i+2]>34 && ExtMapBuffer[i+1]<StdDevLoBuffer[i+1] && StdDevLoBuffer[i+1]<38)
          )
          && !((ExtMapBuffer[i+2]>ExtMapBuffer[i+3]+4 && ExtMapBuffer[i+2]<StdDevLoBuffer[i+3]+5 )     ||
       (ExtMapBuffer[i+2]>ExtMapBuffer[i+3]+3 && ExtMapBuffer[i+3]>44 && MathAbs(ExtMapBuffer[i+3]-ExtMapBuffer[i+4])<.44 && ExtMapBuffer[i+5]<45 )  ||
            (ExtMapBuffer[i+3]<StdDevLoBuffer[i+3] && ExtMapBuffer[i+4]<StdDevLoBuffer[i+4] && ExtMapBuffer[i+5]<StdDevLoBuffer[i+5] && ExtMapBuffer[i+6]<StdDevLoBuffer[i+6] && ExtMapBuffer[i+7]<StdDevLoBuffer[i+7] && ExtMapBuffer[i+2]<35 && StdDevLoBuffer[i+2]<38 && (ExtMapBuffer[i+3]>33 || ExtMapBuffer[i+3]<25) )
      || (ExtMapBuffer[i+2]>ExtMapBuffer[i+3]+2 && ExtMapBuffer[i+3]<StdDevLoBuffer[i+3] && StdDevLoBuffer[i+2]>44) 
      || (ExtMapBuffer[i+2]<34 && ExtMapBuffer[i+3]>34 && ExtMapBuffer[i+2]<StdDevLoBuffer[i+2] && StdDevLoBuffer[i+2]<38)
          ) 
     // && !(ExtMapBuffer[i+1]>ExtMapBuffer[i+2]+4 && ExtMapBuffer[i+2]<StdDevLoBuffer[i+2]+5 )     ||
    //   (ExtMapBuffer[i+1]>ExtMapBuffer[i+2]+3 && ExtMapBuffer[i+2]>44 && MathAbs(ExtMapBuffer[i+2]-ExtMapBuffer[i+3])<.44 && ExtMapBuffer[i+4]<45 )  ||
    //        (ExtMapBuffer[i+2]<StdDevLoBuffer[i+2] && ExtMapBuffer[i+3]<StdDevLoBuffer[i+3] && ExtMapBuffer[i+4]<StdDevLoBuffer[i+4] && ExtMapBuffer[i+5]<StdDevLoBuffer[i+5] && ExtMapBuffer[i+6]<StdDevLoBuffer[i+6] && ExtMapBuffer[i+1]<35 && StdDevLoBuffer[i+1]<38 && (ExtMapBuffer[i+2]>33 || ExtMapBuffer[i+2]<25) )
    //  || (ExtMapBuffer[i+1]>ExtMapBuffer[i+2]+2 && ExtMapBuffer[i+2]<StdDevLoBuffer[i+2] && StdDevLoBuffer[i+1]>44) 
    //  || (ExtMapBuffer[i+1]<34 && ExtMapBuffer[i+2]>34 && ExtMapBuffer[i+1]<StdDevLoBuffer[i+1] && StdDevLoBuffer[i+1]<38)
    //      ) 
    )
      {if ( ExtMapBuffer[i]>53){ 
         if (Close[i+1]>iMA(symbol,0,480,0,MODE_SMA,PRICE_MEDIAN,i+1)){
             ObjectCreate("Faila"+IntegerToString(i), OBJ_TEXT, 0, Time[i], iHigh(symbol,0,iHighest(symbol,0,MODE_HIGH,100,i))-530*Point); 
            ObjectSetText("Faila"+IntegerToString(i), " Buy 4 HH (before white rabbit up)@ "+DoubleToStr(NormalizeDouble(iHigh(symbol,0,iHighest(symbol,0,MODE_HIGH,100,i))-540*Point,4),4), 21, "Impact", White);
            ObjectCreate("Failax"+IntegerToString(i), OBJ_TEXT, 0, Time[i], iHigh(symbol,0,iHighest(symbol,0,MODE_HIGH,100,i))-530*Point); 
            ObjectSetText("Failax"+IntegerToString(i), "Buy 4 HH (before white rabbit up)@ "+DoubleToStr(NormalizeDouble(iHigh(symbol,0,iHighest(symbol,0,MODE_HIGH,100,i))-540*Point,4),4), 21, "Impact", LimeGreen);
            }
          else {
            ObjectCreate("Faila"+IntegerToString(i), OBJ_TEXT, 0, Time[i], iLow(symbol,0,iLowest(symbol,0,MODE_LOW,100,i))+540*Point); 
            ObjectSetText("Faila"+IntegerToString(i), " Sell 4 LL (before white rabbit dn)@ "+DoubleToStr(NormalizeDouble(iLow(symbol,0,iLowest(symbol,0,MODE_LOW,100,i))+530*Point,4),4), 21, "Impact", Maroon);
            ObjectCreate("Failax"+IntegerToString(i), OBJ_TEXT, 0, Time[i], iLow(symbol,0,iLowest(symbol,0,MODE_LOW,100,i))+540*Point); 
            ObjectSetText("Failax"+IntegerToString(i), "Sell 4 LL (before white rabbit dn)@ "+DoubleToStr(NormalizeDouble(iLow(symbol,0,iLowest(symbol,0,MODE_LOW,100,i))+530*Point,4),4), 21, "Impact", OrangeRed);}
         }
      }
      }
      else if (MathAbs(Close[i+1]-iMA(symbol,0,480,0,MODE_SMA,PRICE_MEDIAN,i+1))<200*Point) ObjectSet("FOCUS"+IntegerToString(i),OBJPROP_COLOR,clrRed);
          
            
      if (!((ExtMapBuffer[i+1]>ExtMapBuffer[i+2]+4 && ExtMapBuffer[i+2]<StdDevLoBuffer[i+2]+5) 
      || (ExtMapBuffer[i+2]<StdDevLoBuffer[i+2] && ExtMapBuffer[i+3]<StdDevLoBuffer[i+3] && ExtMapBuffer[i+4]<StdDevLoBuffer[i+4] && ExtMapBuffer[i+5]<StdDevLoBuffer[i+5] && ExtMapBuffer[i+6]<StdDevLoBuffer[i+6] && ExtMapBuffer[i+1]<35 && StdDevLoBuffer[i+1]<38)
      || (ExtMapBuffer[i+1]>ExtMapBuffer[i+2]+2 && ExtMapBuffer[i+2]<StdDevLoBuffer[i+2] && StdDevLoBuffer[i+1]>44) 
      ))
      {
      if ( ExtMapBuffer[i+2]<StdDevLoBuffer[i+2] || ExtMapBuffer[i+1]>46 || MathAbs(ExtMapBuffer[i+1]-ExtMapBuffer[i+2])<.44){
         if (Close[i+1]>iMA(symbol,0,480,0,MODE_SMA,PRICE_MEDIAN,i+1) ){
             ObjectCreate("Fail"+IntegerToString(i), OBJ_TEXT, 0, Time[i], iClose(symbol,0,iHighest(symbol,0,MODE_CLOSE,100,i))+60*Point); 
            ObjectSetText("Fail"+IntegerToString(i), " Sell @ "+DoubleToStr(NormalizeDouble(iClose(symbol,0,iHighest(symbol,0,MODE_CLOSE,100,i)),4),4), 31, "Impact", White);
            ObjectCreate("Failx"+IntegerToString(i), OBJ_TEXT, 0, Time[i], iClose(symbol,0,iHighest(symbol,0,MODE_CLOSE,100,i))+60*Point); 
            ObjectSetText("Failx"+IntegerToString(i), "Sell @ "+DoubleToStr(NormalizeDouble(iClose(symbol,0,iHighest(symbol,0,MODE_CLOSE,100,i)),4),4), 31, "Impact", OrangeRed);
           ObjectCreate("Faily"+IntegerToString(i), OBJ_TEXT, 0, Time[i], iClose(symbol,0,iHighest(symbol,0,MODE_CLOSE,100,i))+360*Point); 
            ObjectSetText("Faily"+IntegerToString(i), " Stop @ "+DoubleToStr(NormalizeDouble(iClose(symbol,0,iHighest(symbol,0,MODE_CLOSE,100,i))+300*Point,4),4), 31, "Impact", Maroon);
            ObjectCreate("Failxy"+IntegerToString(i), OBJ_TEXT, 0, Time[i], iClose(symbol,0,iHighest(symbol,0,MODE_CLOSE,100,i))+360*Point); 
            ObjectSetText("Failxy"+IntegerToString(i), "Stop @ "+DoubleToStr(NormalizeDouble(iClose(symbol,0,iHighest(symbol,0,MODE_CLOSE,100,i))+300*Point,4),4), 31, "Impact", Lime);
            
              
            }
         else { 
         ObjectCreate("Fail"+IntegerToString(i), OBJ_TEXT, 0, Time[i], iClose(symbol,0,iLowest(symbol,0,MODE_CLOSE,100,i))-60*Point); 
            ObjectSetText("Fail"+IntegerToString(i), " Buy @ "+DoubleToStr(NormalizeDouble(iClose(symbol,0,iLowest(symbol,0,MODE_CLOSE,100,i)),4),4), 31, "Impact", Maroon);
               ObjectCreate("Failx"+IntegerToString(i), OBJ_TEXT, 0, Time[i], iClose(symbol,0,iLowest(symbol,0,MODE_CLOSE,100,i))-60*Point); 
            ObjectSetText("Failx"+IntegerToString(i), "Buy @ "+DoubleToStr(NormalizeDouble(iClose(symbol,0,iLowest(symbol,0,MODE_CLOSE,100,i)),4),4), 31, "Impact", Lime);
         
         ObjectCreate("Faily"+IntegerToString(i), OBJ_TEXT, 0, Time[i], iClose(symbol,0,iLowest(symbol,0,MODE_CLOSE,100,i))-360*Point); 
            ObjectSetText("Faily"+IntegerToString(i), " Stop @ "+DoubleToStr(NormalizeDouble(iClose(symbol,0,iLowest(symbol,0,MODE_CLOSE,100,i))-300*Point,4),4), 31, "Impact", White);
               ObjectCreate("Failxy"+IntegerToString(i), OBJ_TEXT, 0, Time[i], iClose(symbol,0,iLowest(symbol,0,MODE_CLOSE,100,i))-360*Point); 
            ObjectSetText("Failxy"+IntegerToString(i), "Stop @ "+DoubleToStr(NormalizeDouble(iClose(symbol,0,iLowest(symbol,0,MODE_CLOSE,100,i))-300*Point,4),4), 31, "Impact", OrangeRed);
       }
      }

Story time.

Warning! The curiosity of some of my stories may come close to Nicholas Cage’s double headed snake.

Anatolij, or Tolja in short was the partner of my mom’s best drinking buddy, Csöcsös (cca Keggy or Racky in English). This guy was rather philosophycal, he used to capitalize on the meaningful name: “Tolja” in Hungarian means, “he’s pushing it”.

– Tolja – he said and took a meaningful pause -, but how far (de meddig)?!

So this guy was wise enough to know ahead of time the exact day of his death. After Keggy died in Embolio, he lingered on for a bit, then casually jumped out of the 4th floor.

This was the dry, Russian, communist sense of humor I grew up with.

Speaking of Rabbi(t)s, when my hebrew teacher found out that I was going to go to Egypt, she wanted to refuse educating me any further: “Why are you going to the enemy?” – she asked.

Then there was that semi-croatian girl, that I was thinking of taking with me for the trip, but she declined because she was afraid that I would sell her for camels. I did what anyone else would had done in my place, in her presence I immediately dialled another girl and instructed her to bring her passport to the train station to get the visa started. Then after the return I did what anyone else would had done, visited the first girl and gave her one of the sculptures I bought for a souvenir.

Without Frontiers

In the previous entry I named the upside targets as 1.1190 and 1.1210.

Now, it is becoming more and more clear that a capitulation would be necessary here. It is very much looking like a 5 Wave structure was started and Wave 2 is arriving at its closure.

In some iterations the MA (ribbon) buy is actually spelled as a W2 buy.

About drawing support & resistance lines utilizing the “5/10/20” prints and the dojis.

I was asked recently about dojis. They are often strongholds with break even stops. These lines of course go on the small bodies, not on the end of the tails.

The 6+6 flag move down looks like a classic ABC pattern.

The numbers are getting a bit more involving. I highlight the 5s with size and color if they are outside the 30-sample BB by at least 2/3 of their length.

I’m not saying this is how you do it, I’m saying, this is what I’m doing.

    if (dcount[i]>0 && dcount[i]<=10){
        ObjectCreate("Counterd"+IntegerToString(i), OBJ_TEXT, 0, Time[i], Low[i]-40*Point); 
        ObjectSetText("Counterd"+IntegerToString(i), IntegerToString(dcount[i]), 11, "Impact", Maroon);
        if (iMA(symbol,0,207,0,MODE_EMA,PRICE_HIGH,i)>iMA(symbol,0,356,0,MODE_EMA,PRICE_MEDIAN,i)-270*Point) ObjectSetText("Counterd"+IntegerToString(i), IntegerToString(dcount[i]), 11, "Impact", Gray);
        if (High[i]>E8[i] &&Close[i]>Low[i]+(High[i]-Low[i])/2) ObjectSetText("Counterd"+IntegerToString(i), IntegerToString(dcount[i]), 16, "Impact", DarkGreen);
       if (High[i]<E8[i] && Close[i]<High[i]-(High[i]-Low[i])/2) ObjectSetText("Counterd"+IntegerToString(i), IntegerToString(dcount[i]), 16, "Impact", Red);
          if (dcount[i]==8  && iLow(symbol,0,iLowest(symbol,0,MODE_LOW,3,i))==iLow(symbol,0,iLowest(symbol,0,MODE_LOW,15,i))) ObjectSetText("Counterd"+IntegerToString(i), IntegerToString(dcount[i])+"!!!", 21, "Impact", Maroon);
          else ObjectSetText("Counterd"+IntegerToString(i), IntegerToString(dcount[i]), 21, "Impact", Maroon);
          if (dcount[i]==4 && High[i]<High[i+1] && Low[i]>Low[i+1] && Close[i+1]<E8[i+1])  ObjectSetText("Counterd"+IntegerToString(i), IntegerToString(dcount[i]), 16, "Impact", Red);
 
        else 
       
       if (dcount[i]==4 && Low[i]<Low[i+1] && Close[i]>Low[i+1]) ObjectSetText("Counterd"+IntegerToString(i), IntegerToString(dcount[i]), 16, "Impact", Red);
  if (dcount[i]==4 && High[i]>High[i+1] && !(Close[i]<High[i]-(High[i]-Low[i])/2)) ObjectSetText("Counterd"+IntegerToString(i), IntegerToString(dcount[i]), 16, "Impact", DarkGreen);
 
   if (dcount[i]==4 && Low[i]<iBands(symbol,0,30,2,0,PRICE_MEDIAN,MODE_LOWER,i)) ObjectSetText("Counterd"+IntegerToString(i), IntegerToString(dcount[i]), 16, "Impact", DarkGreen);
 
       
        if (dcount[i]==4) {
               ObjectDelete("Counterp");   
               if (MathAbs(Close[i]-E8[i])<150*Point && !(RSI[i]<60 && High[i]>E8[i]) )  {
                  ObjectCreate("Counterp", OBJ_TEXT, 0, Time[20], Close[0]-40*Point); 
                  ObjectSetText("Counterp", "Sell: "+DoubleToStr(NormalizeDouble(Close[i],4),4), 21, "Impact", Maroon);
               }
               else {
                  ObjectCreate("Counterp", OBJ_TEXT, 0, Time[20], Close[0]-40*Point); 
                  ObjectSetText("Counterp", "Buy: "+DoubleToStr(NormalizeDouble(Close[i],4),4), 21, "Impact", Blue);
                  if (High[i]>E8[i]) ObjectSetText("Counterp", "Buy Support "+DoubleToStr(NormalizeDouble(iHigh(symbol,0,iLowest(symbol,0,MODE_HIGH,40,i)),4),4), 21, "Impact", Blue);
               }
            
        
   
        }
        if (dcount[i]==5) {ObjectSetText("Counterd"+IntegerToString(i), IntegerToString(dcount[i]), 31, "Impact", Maroon);
         if (iMA(symbol,0,207,0,MODE_EMA,PRICE_HIGH,i)>iMA(symbol,0,356,0,MODE_EMA,PRICE_MEDIAN,i)-270*Point) ObjectSetText("Counterd"+IntegerToString(i), IntegerToString(dcount[i]), 31, "Impact", Gray);
           if ((High[i]<iBands(symbol,0,30,2,0,PRICE_MEDIAN,MODE_LOWER,i) || (High[i]-(High[i]-Low[i])/3<iBands(symbol,0,30,2,0,PRICE_MEDIAN,MODE_LOWER,i))) && RSI[i]<lower2[i]+2) ObjectSetText("Counterd"+IntegerToString(i), IntegerToString(dcount[i]), 39, "Impact", Green);
         }
      }
     if (dcount[i]>=5) dir[i]=-1; 
   
      if (dcount[i]==10) if (High[i]<iBands(symbol,0,30,2,0,PRICE_MEDIAN,MODE_LOWER,i) || (High[i]-(High[i]-Low[i])/3<iBands(symbol,0,30,2,0,PRICE_MEDIAN,MODE_LOWER,i))) ObjectSetText("Counterd"+IntegerToString(i), IntegerToString(dcount[i]), 39, "Impact", Green);
   
    if (dcount[i]==20) {
    ObjectCreate("Counterd"+IntegerToString(i), OBJ_TEXT, 0, Time[i], Low[i]-40*Point); 
        ObjectSetText("Counterd"+IntegerToString(i), IntegerToString(dcount[i]), 31, "Impact", Maroon);
    if (RSI[i]<lower[i]) ObjectSetText("Counterd"+IntegerToString(i), IntegerToString(dcount[i]), 39, "Impact", Green);
         
   }
   
   
   if (ucount[i]>0 && ucount[i]<=10){ 
        ObjectCreate("Counteru"+IntegerToString(i), OBJ_TEXT, 0, Time[i], High[i]+110*Point); 
        ObjectSetText("Counteru"+IntegerToString(i), IntegerToString(ucount[i]), 11, "Impact", Blue);
        if (iMA(symbol,0,207,0,MODE_EMA,PRICE_LOW,i)<iMA(symbol,0,356,0,MODE_EMA,PRICE_MEDIAN,i)+270*Point) ObjectSetText("Counteru"+IntegerToString(i), IntegerToString(ucount[i]), 11, "Impact", Gray);
        
        if (MathAbs(Close[i]-iMA(symbol,0,120,0,MODE_SMA,PRICE_MEDIAN,i))>150*Point)      ObjectSetText("Counteru"+IntegerToString(i), IntegerToString(ucount[i]), 11, "Impact", clrNONE);
            if (Low[i]<E8[i] &&Close[i]<High[i]-(High[i]-Low[i])/2) ObjectSetText("Counteru"+IntegerToString(i), IntegerToString(ucount[i]), 16, "Impact", Red);
            if (Low[i]>E8[i] && Close[i]>Low[i]+(High[i]-Low[i])/2) ObjectSetText("Counteru"+IntegerToString(i), IntegerToString(ucount[i]), 16, "Impact", DarkGreen);
            if (ucount[i]==8 && iHigh(symbol,0,iHighest(symbol,0,MODE_HIGH,3,i))==iHigh(symbol,0,iHighest(symbol,0,MODE_HIGH,15,i))) ObjectSetText("Counteru"+IntegerToString(i), IntegerToString(ucount[i])+"!!!", 21, "Impact", Blue);  
        else ObjectSetText("Counteru"+IntegerToString(i), IntegerToString(ucount[i]), 21, "Impact", Blue);  

        if (ucount[i]==4 && High[i]<High[i+1] && Low[i]>Low[i+1] && Close[i+1]>E8[i+1])  ObjectSetText("Counteru"+IntegerToString(i), IntegerToString(ucount[i]), 16, "Impact", DarkGreen);
 
        else if (ucount[i]==4 && High[i]<High[i+1] && Close[i]<High[i+1])  ObjectSetText("Counteru"+IntegerToString(i), IntegerToString(ucount[i]), 16, "Impact", DarkGreen);
 
        if (ucount[i]==4 && High[i]<High[i+1] && Low[i]>Low[i+1] && MathAbs(Close[i]-Open[i])<20*Point && Close[i]>E8[i]+180*Point)  ObjectSetText("Counteru"+IntegerToString(i), IntegerToString(ucount[i]), 16, "Impact", Red);
  
         
         if (ucount[i]==5) {ObjectSetText("Counteru"+IntegerToString(i), IntegerToString(ucount[i]), 31, "Impact", Blue);
            if (iMA(symbol,0,207,0,MODE_EMA,PRICE_LOW,i)<iMA(symbol,0,356,0,MODE_EMA,PRICE_MEDIAN,i)+270*Point) ObjectSetText("Counteru"+IntegerToString(i), IntegerToString(ucount[i]), 31, "Impact", Gray);
            if ((Low[i]>iBands(symbol,0,30,2,0,PRICE_MEDIAN,MODE_UPPER,i) || (Low[i]+(High[i]-Low[i])/3>iBands(symbol,0,30,2,0,PRICE_MEDIAN,MODE_UPPER,i))) && RSI[i]>upper2[i]) ObjectSetText("Counteru"+IntegerToString(i), IntegerToString(ucount[i]), 39, "Impact", Red);
         }
     
         if (ucount[i]==10) if ((Low[i]>iBands(symbol,0,30,2,0,PRICE_MEDIAN,MODE_UPPER,i) || (High[i]>iBands(symbol,0,30,2,0,PRICE_MEDIAN,MODE_UPPER,i) && Close[i]>High[i]-(High[i]-Low[i])/3)) && RSI[i]>upper2[i]) ObjectSetText("Counteru"+IntegerToString(i), IntegerToString(ucount[i]), 39, "Impact", Red);
         if (ucount[i]==10) if (RSI[i]<AVG[i] && RSI[i]>upper[i] && RSI[i]>70) ObjectSetText("Counteru"+IntegerToString(i), IntegerToString(ucount[i]), 59, "Impact", Red);

 }
 
 if (ucount[i]==20) {ObjectCreate("Counteru"+IntegerToString(i), OBJ_TEXT, 0, Time[i], High[i]+110*Point); 
 ObjectSetText("Counteru"+IntegerToString(i), IntegerToString(ucount[i]), 31, "Impact", Blue);
  if (RSI[i]>upper[i]) ObjectSetText("Counteru"+IntegerToString(i), IntegerToString(ucount[i]), 39, "Impact", Red);
 }
          
      if (ucount[i]==4) {
              
               if (MathAbs(Close[i]-E8[i])>150*Point)  {
                   ObjectDelete("Counterp");   
                  ObjectCreate("Counterp", OBJ_TEXT, 0, Time[20], Close[0]-40*Point); 
                  ObjectSetText("Counterp", "Sell: "+DoubleToStr(NormalizeDouble(Close[i],4),4), 21, "Impact", Maroon);
                  if (iMA(symbol,0,207,0,MODE_EMA,PRICE_HIGH,i)>iMA(symbol,0,356,0,MODE_EMA,PRICE_MEDIAN,i)-270*Point) ObjectSetText("Counterp", "Sell: "+DoubleToStr(NormalizeDouble(Close[i],4),4), 21, "Impact", Gray);
               }
               else if (MathAbs(Close[i]-iMA(symbol,0,120,0,MODE_SMA,PRICE_MEDIAN,i))>150*Point){
                   ObjectDelete("Counterp");   
                  ObjectCreate("Counterp", OBJ_TEXT, 0, Time[20], Close[0]-40*Point); 
                  ObjectSetText("Counterp", "Buy: "+DoubleToStr(NormalizeDouble(Close[i],4),4), 21, "Impact", Blue); 
                  if (iMA(symbol,0,207,0,MODE_EMA,PRICE_LOW,i)<iMA(symbol,0,356,0,MODE_EMA,PRICE_MEDIAN,i)+270*Point) ObjectSetText("Counterp", "Buy: "+DoubleToStr(NormalizeDouble(Close[i],4),4), 21, "Impact", Gray); 
               }
               
      }
     if (ucount[i]>=5) dir[i]=1; 
  } 
}