H2 – The Game

It had a few more names.

You coud already sense my engagement with forex, as in the scroller, the second line (after briefly mentioning deflation) I was citing the CHF against the GBP topping 1.58.

In this game idea of mine, your character was a Weird Al look alike.

The game was sniping off the H2 tanks on top of the new buses. If the tank you hit escaped and tackled the skyscraper you were on, you lost one life.

Yes, I know what you are thinking. Yes, I took that picture and the bus was the famous 205.


This I can’t explain yet: the final divergence (Blue) on the upside always appear after an Odd Number (3,5) and always after an Even Number on the downside (2,4,6).

(Now with Final Burnout Added)

Waiting on the Final Divergence Cousteau

Centripetroleum

My answer to the FVG, Inner City Mama, is this:

If you care about liquidity, the plots would need 4 more candles (the first 2 hours of the open) to appear.

Do pay attention to what’s going on down there, too.

   if (mfi[i]<mfi[i+1] && mfi[i+2]<mfi[i+1] && mfi[i+1]>79 && iStochastic(symbol,0,120,3,3,MODE_SMA,PRICE_MEDIAN,MODE_MAIN,i)>72 && iStochastic(symbol,0,120,3,3,MODE_SMA,PRICE_MEDIAN,MODE_MAIN,i)<92 && mfi[ArrayMaximum(mfi,3,i)]>mfi[ArrayMaximum(mfi,23,i+3)] 
         ){
                     
                ObjectCreate("RayTX"+IntegerToString(i),OBJ_TREND,0, Time[i+1], iHigh(symbol,0,iHighest(symbol,0,MODE_HIGH,8,i)), Time[i+6], iHigh(symbol,0,iHighest(symbol,0,MODE_HIGH,8,i)), Time[i]);
                ObjectSet("RayTX"+IntegerToString(i),OBJPROP_COLOR,clrTeal);
                ObjectSet("RayTX"+IntegerToString(i),OBJPROP_RAY_RIGHT,false);
                ObjectSet("RayTX"+IntegerToString(i),OBJPROP_WIDTH,5);
                
                
                ObjectCreate("RayT2X"+IntegerToString(i),OBJ_TREND,0, Time[i+1], iLow(symbol,0,iLowest(symbol,0,MODE_LOW,2,i+1)), Time[i+6], iLow(symbol,0,iLowest(symbol,0,MODE_LOW,2,i+1)), Time[i]);
                ObjectSet("RayT2X"+IntegerToString(i),OBJPROP_COLOR,clrDeepPink);
                ObjectSet("RayT2X"+IntegerToString(i),OBJPROP_RAY_RIGHT,false);
                ObjectSet("RayT2X"+IntegerToString(i),OBJPROP_WIDTH,5);
         
      
      }


      if (mfi[i]>mfi[i+1] && mfi[i+2]>mfi[i+1] && mfi[i+1]<21 && iStochastic(symbol,0,120,3,3,MODE_SMA,PRICE_MEDIAN,MODE_MAIN,i)<28 && iStochastic(symbol,0,120,3,3,MODE_SMA,PRICE_MEDIAN,MODE_MAIN,i)>6 
      //&& mfi[ArrayMinimum(mfi,3,i)]<mfi[ArrayMinimum(mfi,23,i+3)]
       ){
                     
                        
                ObjectCreate("RayTX"+IntegerToString(i),OBJ_TREND,0, Time[i+1], iHigh(symbol,0,iHighest(symbol,0,MODE_HIGH,2,i)), Time[i+6], iHigh(symbol,0,iHighest(symbol,0,MODE_HIGH,2,i)), Time[i]);
                ObjectSet("RayTX"+IntegerToString(i),OBJPROP_COLOR,clrTeal);
                ObjectSet("RayTX"+IntegerToString(i),OBJPROP_RAY_RIGHT,false);
                ObjectSet("RayTX"+IntegerToString(i),OBJPROP_WIDTH,5);
                
                
                ObjectCreate("RayT2X"+IntegerToString(i),OBJ_TREND,0, Time[i+1], iLow(symbol,0,iLowest(symbol,0,MODE_LOW,8,i+1)), Time[i+6], iLow(symbol,0,iLowest(symbol,0,MODE_LOW,8,i+1)), Time[i]);
                ObjectSet("RayT2X"+IntegerToString(i),OBJPROP_COLOR,clrDeepPink);
                ObjectSet("RayT2X"+IntegerToString(i),OBJPROP_RAY_RIGHT,false);
                ObjectSet("RayT2X"+IntegerToString(i),OBJPROP_WIDTH,5);
         
      
      }

Insane Clown Posse Mentorship

Horizontal levels – everybody has them.

In the middle of the candle – no woder that they get hit, but do they actually mean anything?

Support & persitance.

People latched onto this FVG gap and the word, “liquidity” like two holy grails at once.

Nobody understands what Howard talks about and their models can’t seem to be duplicated for measuring illusive crap like global liquidity.

Do you know what I would call liquidity?

When the account holders commit more of their equity to the broker, i.e. opening new positions.

Wanna see the worst ICP imitation?

Don’t forget to add a dislike. He is charging for this crap. I would be ashamed to go among people after posting something like that. The market does not ever progress in two different direction at the same time. If it is in a bull count, you don’t look for a downside target next.

There is nothing but scammers on YouTube it seems, no real knowledge, no for real understanding.

By plotting my R1, R2, marking up the RSI2 divergence and counting 9 candles (to call a bottom) + plotting the regression virgin levels on the right margin I came closer to the truth than these schmucks ever will get by trying to trade multiple instruments and seeking for something universal. All they do is make up a narrative. Close to 50% chance they roll with.

Look at this crap: write Liquidity everywhere on the chart and feel like a genius.

Time Taker

How long will time take?

Here’s the essence of the sigh I made back in 2014 about how the world’s progressing.

I used to commute by the 205 bus. It had a diesel engine back in the days. The long commute (bladder starts to fill up), diesel vibration onto the body, a bit of male boredom and with good odds I got off a the bus with a mild erection. Then they chaned the fleet abruptly. High torque electric acceleration and deceleration was the new sign of times. Thanks to the “progress” they made, after the change instead of having a boner I felt like vomiting myself upon arrival.

Now, this is how the B36 9 cnt can call the bottom for you: a too quick re-visit of the low (<9 hours) is bound to fail.

5 is less than 9. The key of this B print is missing the 30-sample hourly BB

if (i>0 && RSI2[i]<RSI2[i+1] && RSI2[i-1]>RSI2[i] && RSI2[i]>3 && RSI2[i]<12 && iRSI(symbol,0,14,PRICE_MEDIAN,i)<30 && Low[i]<iBands(symbol,0,30,2,0,PRICE_MEDIAN,MODE_MAIN,i)
 && RSI2[ArrayMinimum(RSI2,19,i+1)]<RSI2[i]
 ){
      ObjectCreate("Talm"+DoubleToStr(i), OBJ_TEXT, 0, Time[i], Low[i]- 50*Point); 
            if (Low[i]>iBands(symbol,0,30,2,0,PRICE_MEDIAN,MODE_LOWER,i)

I guess I did have a problem with hydrogen tanks appearing on the road en masse.

Batteries are chronically dangerous. I have a laptop at home with a blown up battery inside, that bent the casing all over. I work by generators. One day a battey blew its lid, barely missing my coworker’s head. The acid squirt that followed left rough marks in the concrete as a constant reminder. Chemical burn produces its own fuel. It does not need oxygen.

Today the trade was Fade R2 Cover R1. I shared the plot at least 15 times already.

I did some of the trades acceptably.

The upside isn’t over yet by a long shot.

If 1.0716 gets hit, price would go to 1.0742 the minmum.

MFI – The Sequel

Definr Closing Outside. By 2 pips? 1 pip? 0.5 pips?

Exactly. Nothing to do other than dusting off my Hoffman and changing the code. 0.5-pip discount to call the Regression high.

This was a major squaring event. Obviously there were those wanting to get out of Euro longs for a break even / small loss.

There was the Money Flow making a peak & there were those selling the upper 30-sample Bollinger Band getting its first tag in 3 months (this alone should tell you that you have a measuring leg made to the upside).

 ////upside progression
   if (redcount[i+1]==redcount[i+7] &&
   Close[i+1]>iBands(symbol,30,30,2,0,PRICE_MEDIAN,MODE_UPPER,i+1)+5*Point && Close[i]<iBands(symbol,30,30,2,0,PRICE_MEDIAN,MODE_UPPER,i)-10*Point){
       ObjectCreate("120BPM"+IntegerToString(i),OBJ_TREND,0, Time[i+1], 0.8, Time[i+1], Close[i+1]);
      ObjectSet("120BPM"+IntegerToString(i),OBJPROP_COLOR,clrCoral);
      ObjectSet("120BPM"+IntegerToString(i),OBJPROP_RAY_RIGHT,false);
      //upside regression
      if (iHigh(symbol,0,iHighest(symbol,0,MODE_HIGH,2,i+1))<iHigh(symbol,0,iHighest(symbol,0,MODE_HIGH,36,i+3))-20*Point) {ObjectSet("120BPM"+IntegerToString(i),OBJPROP_COLOR,clrGray);
         if (iHigh(symbol,0,iHighest(symbol,0,MODE_HIGH,2,i+1))-iLow(symbol,0,iLowest(symbol,0,MODE_LOW,36,i+3))>640*Point) greencount[i]=0;
         else if (greencount[i]>0 && greencount[i+1]==greencount[i+2] && greencount[i+2]==greencount[i+3] && greencount[i+3]==greencount[i+4] && greencount[i+4]==greencount[i+5] && greencount[i+5]==greencount[i+6]) greencount[i]++;
           ObjectCreate("120BPMc"+IntegerToString(i), OBJ_TEXT, 0, Time[i+2], Low[i+1]-60*Point); 
             ObjectSetText("120BPMc"+IntegerToString(i), greencount[i], 42, "Impact", clrLime);
             if (greencount[i]==0){
                j=i-4;
               while (j>0){
                  if (High[j]>Close[i+1]) break;
                  j--;}
              if (j<0) j=0;    
                if (Close[i+1]>Open[i+1]) ObjectCreate("120BPMg"+IntegerToString(i),OBJ_TREND,0, Time[i+1], Close[i+1], Time[j], Close[i+1]);
                 else ObjectCreate("120BPMg"+IntegerToString(i),OBJ_TREND,0, Time[i+2], Open[i+1], Time[j], Open[i+1]);
                ObjectSet("120BPMg"+IntegerToString(i),OBJPROP_COLOR,clrGold);
                
                ObjectSet("120BPMg"+IntegerToString(i),OBJPROP_RAY_RIGHT,false);
                ObjectSet("120BPMg"+IntegerToString(i),OBJPROP_WIDTH,7);
                }
      }
      else {
      dir[i]=-1;   
      redcount[i]++;
      if (redcount[i]>2) greencount[i]=0;
             ObjectCreate("120BPMc"+IntegerToString(i), OBJ_TEXT, 0, Time[i+2], High[i+1]+110*Point); 
             ObjectSetText("120BPMc"+IntegerToString(i), redcount[i], 42, "Impact", clrRed);
             if (redcount[i]==3 || redcount[i]==4) {
               j=i-4;
               while (j>0){
                  if ((High[j]>Close[i+1] && Close[i+1]>=Open[i+1]) || (High[j]>Open[i+1] && Close[i+1]<Open[i+1] && Open[i+1]>Open[i+2]) || (High[j]>Open[i+2] && Close[i+1]<Open[i+1]) ) break;
                  j--;}
              if (j<0) j=0;    
                if (Close[i+1]>=Open[i+1]) ObjectCreate("120BPMr"+IntegerToString(i),OBJ_TREND,0, Time[i+1], Close[i+1], Time[j], Close[i+1]);
                 else if (Close[i+1]<=Open[i+1]) ObjectCreate("120BPMr"+IntegerToString(i),OBJ_TREND,0, Time[i+2], Open[i+2], Time[j], Open[i+2]);
                 else ObjectCreate("120BPMr"+IntegerToString(i),OBJ_TREND,0, Time[i+1], Open[i+1], Time[j], Open[i+1]);
                ObjectCreate("120BPMr"+IntegerToString(i),OBJ_TREND,0, Time[i+2], Open[i+2], Time[j], Open[i+2]);
                ObjectSet("120BPMr"+IntegerToString(i),OBJPROP_COLOR,clrCyan);
                if (redcount[i]==4) ObjectSet("120BPMr"+IntegerToString(i),OBJPROP_COLOR,clrDeepPink);
                ObjectSet("120BPMr"+IntegerToString(i),OBJPROP_RAY_RIGHT,false);
                ObjectSet("120BPMr"+IntegerToString(i),OBJPROP_WIDTH,7);
             }
                   
      }
      ObjectSet("120BPM"+IntegerToString(i),OBJPROP_WIDTH,5);
      ObjectSet("120BPM"+IntegerToString(i),OBJPROP_BACK,1);
      
   }
   //downside progression   
     if (greencount[i+1]==greencount[i+7] &&
     Close[i+1]<iBands(symbol,30,30,2,0,PRICE_MEDIAN,MODE_LOWER,i+1)-5*Point && Close[i]>iBands(symbol,30,30,2,0,PRICE_MEDIAN,MODE_LOWER,i)){
       ObjectCreate("120BPM"+IntegerToString(i),OBJ_TREND,0, Time[i+1], 1.4, Time[i+1], Close[i+1]);
      ObjectSet("120BPM"+IntegerToString(i),OBJPROP_COLOR,clrTeal);
      ObjectSet("120BPM"+IntegerToString(i),OBJPROP_RAY_RIGHT,false);
      //downside regression
      if (iLow(symbol,0,iLowest(symbol,0,MODE_LOW,2,i+1))>iLow(symbol,0,iLowest(symbol,0,MODE_LOW,36,i+3))+20*Point) {ObjectSet("120BPM"+IntegerToString(i),OBJPROP_COLOR,clrGray); 
      if (iHigh(symbol,0,iHighest(symbol,0,MODE_HIGH,30,i+1))-iLow(symbol,0,iLowest(symbol,0,MODE_LOW,2,i+1))>640*Point) redcount[i]=0;
         else if (redcount[i]>0 && redcount[i+1]==redcount[i+2] && redcount[i+2]==redcount[i+3] && redcount[i+3]==redcount[i+4] && redcount[i+4]==redcount[i+5] && redcount[i+5]==redcount[i+6])  redcount[i]++;
         ObjectCreate("120BPMc"+IntegerToString(i), OBJ_TEXT, 0, Time[i+2], High[i+1]+110*Point); 
             ObjectSetText("120BPMc"+IntegerToString(i), redcount[i], 42, "Impact", clrPink);
               if (redcount[i]==0){
                        j=i-4;
               while (j>0){
                  if (Low[j]<Close[i+1]) break;
                  j--;}
              if (j<0) j=0;    
                if (Close[i+1]<Open[i+1]) ObjectCreate("120BPMg"+IntegerToString(i),OBJ_TREND,0, Time[i+1], Close[i+1], Time[j], Close[i+1]);
                 else if (Open[i+2]<Open[i+1]) ObjectCreate("120BPMg"+IntegerToString(i),OBJ_TREND,0, Time[i+2], Open[i+2], Time[j], Open[i+2]);
                 else ObjectCreate("120BPMg"+IntegerToString(i),OBJ_TREND,0, Time[i+1], Open[i+1], Time[j], Open[i+1]);
                ObjectSet("120BPMg"+IntegerToString(i),OBJPROP_COLOR,clrGold);
                
                ObjectSet("120BPMg"+IntegerToString(i),OBJPROP_RAY_RIGHT,false);
                ObjectSet("120BPMg"+IntegerToString(i),OBJPROP_WIDTH,7);
            }
      } 
      else {
       dir[i]=1;
       greencount[i]++;
       if (redcount[i]>2) redcount[i]=0;
        if (greencount[i]==3 || greencount[i]==4 || greencount[i]==5) {
               j=i-4;
               while (j>0){
                  if ((Low[j]<Close[i+1] && Close[i+1]<Open[i+1]) || (Low[j]<Open[i+2] && Close[i+1]>Open[i+1]) ) break;
                  j--;}
              if (j<0) j=0;    
                if (Close[i+1]<Open[i+1]) ObjectCreate("120BPMr"+IntegerToString(i),OBJ_TREND,0, Time[i+1], Close[i+1], Time[j], Close[i+1]);
                 else ObjectCreate("120BPMr"+IntegerToString(i),OBJ_TREND,0, Time[i+2], Open[i+2], Time[j], Open[i+2]);
                ObjectSet("120BPMr"+IntegerToString(i),OBJPROP_COLOR,clrCyan);
                if (greencount[i]==4) ObjectSet("120BPMr"+IntegerToString(i),OBJPROP_COLOR,clrDeepPink);
                ObjectSet("120BPMr"+IntegerToString(i),OBJPROP_RAY_RIGHT,false);
                ObjectSet("120BPMr"+IntegerToString(i),OBJPROP_WIDTH,7);
             }
       
       
             ObjectCreate("120BPMc"+IntegerToString(i), OBJ_TEXT, 0, Time[i+2], Low[i+1]-40*Point); 
             ObjectSetText("120BPMc"+IntegerToString(i), greencount[i], 42, "Impact", clrDarkGreen);
             if (greencount[i]==2) {
             ObjectCreate("120BPMcc"+IntegerToString(i), OBJ_TEXT, 0, Time[i+2], Low[i+1]-110*Point); ObjectSetText("120BPMcc"+IntegerToString(i), " cnt 27 LClose-4 pips =cover", 22, "Impact", clrDarkGreen);
       
       }
      }
      ObjectSet("120BPM"+IntegerToString(i),OBJPROP_WIDTH,5);
      ObjectSet("120BPM"+IntegerToString(i),OBJPROP_BACK,1);
   }

I was gonna make a post with a title of Centripetal Petals, but I’ll just include the whole thing here.

A money flow peak may not receive an echo if the fade is too overwhelming. Hence the plot for acknowledging a spin-out. Yes, the sample sizes are yet again arbitrary picks.

 if (mfi[i]<mfi[i+1] && mfi[i+2]<mfi[i+1] && mfi[i+1]>79 && iStochastic(symbol,0,120,3,3,MODE_SMA,PRICE_MEDIAN,MODE_MAIN,i)>72 && mfi[ArrayMaximum(mfi,3,i)]>mfi[ArrayMaximum(mfi,23,i+3)] 
         ){
                     
                ObjectCreate("RayTX"+IntegerToString(i),OBJ_TREND,0, Time[i+1], iHigh(symbol,0,iHighest(symbol,0,MODE_HIGH,8,i)), Time[i+6], iHigh(symbol,0,iHighest(symbol,0,MODE_HIGH,8,i)), Time[i]);
                ObjectSet("RayTX"+IntegerToString(i),OBJPROP_COLOR,clrTeal);
                ObjectSet("RayTX"+IntegerToString(i),OBJPROP_RAY_RIGHT,false);
                ObjectSet("RayTX"+IntegerToString(i),OBJPROP_WIDTH,5);
                
                
                ObjectCreate("RayT2X"+IntegerToString(i),OBJ_TREND,0, Time[i+1], iLow(symbol,0,iLowest(symbol,0,MODE_LOW,2,i+1)), Time[i+6], iLow(symbol,0,iLowest(symbol,0,MODE_LOW,2,i+1)), Time[i]);
                ObjectSet("RayT2X"+IntegerToString(i),OBJPROP_COLOR,clrDeepPink);
                ObjectSet("RayT2X"+IntegerToString(i),OBJPROP_RAY_RIGHT,false);
                ObjectSet("RayT2X"+IntegerToString(i),OBJPROP_WIDTH,5);
         
      
      }

Also, the Napoleon Dynamite plot is money flow peak dip w/ overbought / oversold extreme. A fade, color coded.


    if (mfi[i]<9 && iStochastic(symbol,0,120,3,3,MODE_SMA,PRICE_MEDIAN,MODE_MAIN,i)>67){
            ObjectCreate("Roef"+DoubleToStr(i), OBJ_TEXT, 1, Time[i], 21); 
            ObjectSetText("Roef"+DoubleToStr(i), CharToStr(77), 44, "WingDings", DarkGreen);
    } 
    
    if (mfi[i]>91 && iStochastic(symbol,0,120,3,3,MODE_SMA,PRICE_MEDIAN,MODE_MAIN,i)<33){
            ObjectCreate("Roef"+DoubleToStr(i), OBJ_TEXT, 1, Time[i], 99); 
            ObjectSetText("Roef"+DoubleToStr(i), CharToStr(77), 44, "WingDings", DeepPink);
    } 
    

Talking about polishing the one-eyed clown, son, I had high hopes for you.

Favourite movie? Edward Snowdenhands.

This looks like a formidable bottom still…

…but one more trip down to round out the Money Flow Beat reversal isn’t out of the question.

Sometimes all you get is the touch of the grey box (starting 0-8 pips out).

   ObjectCreate("RayRect"+IntegerToString(i),OBJ_RECTANGLE,0, Time[i], iHigh(symbol,0,iHighest(symbol,0,MODE_HIGH,16,i+1))+80*Point, Time[i+13], iHigh(symbol,0,iHighest(symbol,0,MODE_HIGH,16,i+1)));
                ObjectSet("RayRect"+IntegerToString(i),OBJPROP_COLOR,clrLightGray);
                ObjectSet("RayRect"+IntegerToString(i),OBJPROP_WIDTH,3);
                ObjectSet("RayRect"+IntegerToString(i),OBJPROP_BACK,0);

MFI – In Theory

If you want to learn how to spot a money flow exhaustion beat, you are in luck.

Ingredients for one person:

240 sample 2 DS Bollinger Bands over halves (for better sense of location) – Dark Blue.

14 samle MFI on 30 min, lines at 21 and 79 – Light Blue.

120 sample stochastic D over halves, lines at 28 and 72 – Brown.

Once you get a warning shot, you need to keep an eye out for a reversal.

A reversal is taking place in two steps, in the form of a Money Flow divergence.

The first step is the money boost and the consecutive measuring exhaustion and the second step is a beat made by less enthusiasm before the complete turn.

The first thing you need is the Stochastic being in the upper or the lower third.

The warning shots are optimal conditions for a money flow extreme to develop. The width of the 240 Bollinger has to be over 80 pips, the stochastic needs to be deeply oversold / deeply overbought (10 / 90), the Money flow needs to be below 23 / above 77 and the 30-minute low/high outside the Bollinger or below 29 / above 71 and the entire canle outside the Bollinger.

i.e.:
(mfi[i]<23  && Low[i]<iBands(symbol,0,240,2,0,PRICE_MEDIAN,MODE_LOWER,i) && High[i]>iBands(symbol,0,60,2,0,PRICE_MEDIAN,MODE_LOWER,i)   || (mfi[i]<29 && High[i]<iBands(symbol,0,60,2,0,PRICE_MEDIAN,MODE_LOWER,i) && iStochastic(symbol,0,120,3,3,MODE_SMA,PRICE_MEDIAN,MODE_MAIN,i)<10)))
     && iBands(symbol,0,240,2,0,PRICE_MEDIAN,MODE_UPPER,i)-iBands(symbol,0,240,2,0,PRICE_MEDIAN,MODE_LOWER,i)>800*Point

This by itself does not mean much. The Money Flow needs to hit an extreme.

There is a 6 hours long moratorium from the physical peak print on the oscilator that I use to record the lowest / highest price level reading. This means no projection for 12 candles.

I put the MFI readings into an Array to be able to spot a new MFI low / high in relation to the history. For instance, the value made by the MFI peak has to be a new, 8-sample extreme.

mfi[ArrayMinimum(mfi,3,i+11)]<mfi[ArrayMinimum(mfi,8,i+14)


The projection zone gets printed beyond the "measuring leg / push". 

The static displacement sizes for the 4 lines are 8 pips, 14, 22 pips (upto this point would you expect the divergent leg / echo to get barring further money input) and 32 for the continuation.

The 26 pips suggested double down comes from statistical examinations.

The example below shows a “continuation” that only got to 16 pips. I would suggest to slap on a better than breakeven stop loss for the double sized position when at 10+ pips gains.

The crown is missing. Money flow step one hasn’t been made.

The Girl with the Dragon Tampon

– Taylor Swift is a biloionaire now – I told my musician coworker.

– That does not make sense – he responded -, Mick Jagger is not a billionaire after 60 years of sold out concerts.

I can name exactly 1 song she made, probably out of 20 albums. The only way she touched my life was me wanting to look up music made by Saylor Twift on SoundCloud out of curiosity: who the hell has the same urge to twist names the same way I do, and what else can they do?

This is a cup & handle (rounding bottom) with 2 more progression highs to be expected.

MFI – Simply The Best

Been wanting to make this plot to prove how accurate the money flow beat reversal zone is for pinning down a turn.

if (mfi[i+12]>mfi[i+13] && mfi[i+12]>mfi[i+11] && mfi[ArrayMaximum(mfi,3,i+11)]>mfi[ArrayMaximum(mfi,23,i+15)] && mfi[i+12]>79 && iStochastic(symbol,0,120,3,3,MODE_SMA,PRICE_MEDIAN,MODE_MAIN,i)>28){
            ObjectCreate("Sal"+DoubleToStr(i), OBJ_TEXT, indicator_window+1, Time[i+10], mfi[i]+mfi[i]*.2); 
         ObjectSetText("Sal"+DoubleToStr(i), "Sell Beats: "+DoubleToString(NormalizeDouble(iHigh(symbol,0,iHighest(symbol,0,MODE_HIGH,16,i+1))+80*Point,4),4)+", "+DoubleToString(NormalizeDouble(iHigh(symbol,0,iHighest(symbol,0,MODE_HIGH,16,i+1))+140*Point,4),4)+", shy of "+DoubleToString(NormalizeDouble(iHigh(symbol,0,iHighest(symbol,0,MODE_HIGH,16,i+1))+220*Point,4),4), 22, "Impact", Black); 
         
         
                        
         
         
          
         if (iStochastic(symbol,0,120,3,3,MODE_SMA,PRICE_MEDIAN,MODE_MAIN,i+12)<88 || iStochastic(symbol,0,120,3,3,MODE_SMA,PRICE_MEDIAN,MODE_MAIN,i+12)>96.8) ObjectSetText("Sal"+DoubleToStr(i), "MFI strength", 12, "Impact", DimGray);  
          else {
          ObjectCreate("Salz"+DoubleToStr(i), OBJ_TEXT, indicator_window+1, Time[i], mfi[i]+mfi[i]*.6); 
              ObjectSetText("Salz"+DoubleToStr(i), "2xBuy: "+DoubleToString(NormalizeDouble(iHigh(symbol,0,iHighest(symbol,0,MODE_HIGH,16,i+1))+320*Point,4),4)+", cover: "+DoubleToString(NormalizeDouble(iHigh(symbol,0,iHighest(symbol,0,MODE_HIGH,16,i+1))+680*Point,4),4)+" 3x stretch -> E9", 22, "Impact", DarkGreen); 
         
         
             x=i+8;
               while (x>0){
                  if (High[x]>iHigh(symbol,0,iHighest(symbol,0,MODE_HIGH,16,i+1))+80*Point) break;
                  x--;}
              if (x<0) x=0;
  
                ObjectCreate("RayXX"+IntegerToString(i),OBJ_TREND,0, Time[i+1], iHigh(symbol,0,iHighest(symbol,0,MODE_HIGH,16,i+1))+80*Point, Time[x], iHigh(symbol,0,iHighest(symbol,0,MODE_HIGH,16,i+1))+80*Point);
                ObjectSet("RayXX"+IntegerToString(i),OBJPROP_COLOR,clrBrown);
                ObjectSet("RayXX"+IntegerToString(i),OBJPROP_RAY_RIGHT,false);
                ObjectSet("RayXX"+IntegerToString(i),OBJPROP_WIDTH,3);
                
                ObjectCreate("RayXLX"+DoubleToStr(i), OBJ_TEXT, 0, Time[i+15], iHigh(symbol,0,iHighest(symbol,0,MODE_HIGH,16,i+1))+100*Point); 
             ObjectSetText("RayXLX"+DoubleToStr(i), "Cover / Go Short "+DoubleToString(NormalizeDouble(iHigh(symbol,0,iHighest(symbol,0,MODE_HIGH,16,i+1))+80*Point,4),4), 12, "Arial Black", Red); 
               
                
              
                  y=i+8;
               while (y>0){
                  if (High[y]>iHigh(symbol,0,iHighest(symbol,0,MODE_HIGH,16,i+1))+140*Point) break;
                  y--;}
              if (y<0) y=0;
              
                ObjectCreate("RayYY"+IntegerToString(i),OBJ_TREND,0, Time[i+1], iHigh(symbol,0,iHighest(symbol,0,MODE_HIGH,16,i+1))+140*Point, Time[y], iHigh(symbol,0,iHighest(symbol,0,MODE_HIGH,16,i+1))+140*Point);
                ObjectSet("RayYY"+IntegerToString(i),OBJPROP_COLOR,clrBrown);
                ObjectSet("RayYY"+IntegerToString(i),OBJPROP_RAY_RIGHT,false);
                ObjectSet("RayYY"+IntegerToString(i),OBJPROP_WIDTH,3);
                ObjectCreate("RayYLY"+DoubleToStr(i), OBJ_TEXT, 0, Time[i+12],  iHigh(symbol,0,iHighest(symbol,0,MODE_HIGH,16,i+1))+160*Point); 
             ObjectSetText("RayYLY"+DoubleToStr(i), "Add Short "+DoubleToString(NormalizeDouble(iHigh(symbol,0,iHighest(symbol,0,MODE_HIGH,16,i+1))+140*Point,4),4), 12, "Arial Black", Red);
             
                
                z=i+8;
               while (z>0){
                  if (High[z]>iHigh(symbol,0,iHighest(symbol,0,MODE_HIGH,16,i+1))+220*Point) break;
                  z--;}
              if (z<0) z=0; 
             
                ObjectCreate("RayZZ"+IntegerToString(i),OBJ_TREND,0, Time[i+1], iHigh(symbol,0,iHighest(symbol,0,MODE_HIGH,16,i+1))+220*Point, Time[z], iHigh(symbol,0,iHighest(symbol,0,MODE_HIGH,16,i+1))+220*Point);
                ObjectSet("RayZZ"+IntegerToString(i),OBJPROP_COLOR,clrRed);
                ObjectSet("RayZZ"+IntegerToString(i),OBJPROP_RAY_RIGHT,false);
                ObjectSet("RayZZ"+IntegerToString(i),OBJPROP_WIDTH,1);
                ObjectSet("RayZZ"+IntegerToString(i),OBJPROP_TYPE,1);
                
                           ObjectCreate("RayZLZ"+DoubleToStr(i), OBJ_TEXT, 0, Time[i+12],  iHigh(symbol,0,iHighest(symbol,0,MODE_HIGH,16,i+1))+240*Point); 
             ObjectSetText("RayZLZ"+DoubleToStr(i), "Sell shy of "+DoubleToString(NormalizeDouble(iHigh(symbol,0,iHighest(symbol,0,MODE_HIGH,16,i+1))+80*Point,4),4), 12, "Arial Black", Black); 
               

                
                  
                     y=i+8;
               while (y>0){
                  if (High[y]>iHigh(symbol,0,iHighest(symbol,0,MODE_HIGH,16,i+1))+320*Point) break;
                  y--;}
              if (y<0) y=0;    
                if (0<i-74) y=i-74;
                ObjectCreate("RayJJ"+IntegerToString(i),OBJ_TREND,0, Time[i+1], iHigh(symbol,0,iHighest(symbol,0,MODE_HIGH,16,i+1))+320*Point, Time[j], iHigh(symbol,0,iHighest(symbol,0,MODE_HIGH,16,i+1))+320*Point);
                ObjectSet("RayJJ"+IntegerToString(i),OBJPROP_COLOR,clrDarkGreen);
                ObjectSet("RayJJ"+IntegerToString(i),OBJPROP_RAY_RIGHT,false);
                ObjectSet("RayJJ"+IntegerToString(i),OBJPROP_WIDTH,3);   
               ObjectCreate("RayJLJ"+DoubleToStr(i), OBJ_TEXT, 0, Time[i+16],  iHigh(symbol,0,iHighest(symbol,0,MODE_HIGH,16,i+1))+400*Point); 
             ObjectSetText("RayJLJ"+DoubleToStr(i), "2xBuy: "+DoubleToString(NormalizeDouble(iHigh(symbol,0,iHighest(symbol,0,MODE_HIGH,16,i+1))+320*Point,4),4)+", cover: "+DoubleToString(NormalizeDouble(iHigh(symbol,0,iHighest(symbol,0,MODE_HIGH,16,i+1))+680*Point,4),4)+", 3x stretch -> E9", 22, "Impact", DarkGreen); 

         
         
         
         
         }
      
      }
        
         if (mfi[i+12]<mfi[i+13] && mfi[i+12]<mfi[i+11] && mfi[ArrayMinimum(mfi,3,i+11)]<mfi[ArrayMinimum(mfi,23,i+15)] && mfi[i+12]<21 && iStochastic(symbol,0,120,3,3,MODE_SMA,PRICE_MEDIAN,MODE_MAIN,i)<72){
            ObjectCreate("Sals"+DoubleToStr(i), OBJ_TEXT, indicator_window+1, Time[i+10], mfi[i]*1.4); 
         if (Low[i]<iBands(symbol,0,240,2,0,PRICE_MEDIAN,MODE_LOWER,i)) ObjectSetText("Sals"+DoubleToStr(i), "Sell Retract: "+DoubleToString(NormalizeDouble(iHigh(symbol,0,iHighest(symbol,0,MODE_HIGH,8,i+1))+80*Point,4),4), 22, "Impact", Crimson); 
        else if (Low[i+12]<iBands(symbol,0,240,2,0,PRICE_MEDIAN,MODE_LOWER,i+12)) ObjectSetText("Sals"+DoubleToStr(i), "Buy Beats: "+DoubleToString(NormalizeDouble(iLow(symbol,0,iLowest(symbol,0,MODE_LOW,16,i+1))-80*Point,4),4)+", "+DoubleToString(NormalizeDouble(iLow(symbol,0,iLowest(symbol,0,MODE_LOW,16,i+1))-140*Point,4),4)+", ["+DoubleToString(NormalizeDouble(iLow(symbol,0,iLowest(symbol,0,MODE_LOW,16,i+1))-220*Point,4),4)+" -> "+DoubleToString(NormalizeDouble(iLow(symbol,0,iLowest(symbol,0,MODE_LOW,16,i+1))-500*Point,4),4)+"]", 22, "Impact", Black); 
        else  {
               ObjectSetText("Sals"+DoubleToStr(i), "Buy Beats: "+DoubleToString(NormalizeDouble(iLow(symbol,0,iLowest(symbol,0,MODE_LOW,16,i+1))-80*Point,4),4)+", "+DoubleToString(NormalizeDouble(iLow(symbol,0,iLowest(symbol,0,MODE_LOW,16,i+1))-140*Point,4),4)+", shy of "+DoubleToString(NormalizeDouble(iLow(symbol,0,iLowest(symbol,0,MODE_LOW,16,i+1))-220*Point,4),4), 22, "Impact", Black); 
               
            
                        
          
          if (iStochastic(symbol,0,120,3,3,MODE_SMA,PRICE_MEDIAN,MODE_MAIN,i+12)<10){      ObjectCreate("Salz"+DoubleToStr(i), OBJ_TEXT, indicator_window+1, Time[i], mfi[i]*1.1); 
             ObjectSetText("Salz"+DoubleToStr(i), "2xSell: "+DoubleToString(NormalizeDouble(iLow(symbol,0,iLowest(symbol,0,MODE_LOW,16,i+1))-320*Point,4),4)+", cover: "+DoubleToString(NormalizeDouble(iLow(symbol,0,iLowest(symbol,0,MODE_LOW,16,i+1))-680*Point,4),4)+", 3x stretch -> E9", 22, "Impact", Crimson); 
             
                x=i+8;
               while (x>0){
                  if (Low[x]<iLow(symbol,0,iLowest(symbol,0,MODE_LOW,16,i+1))-80*Point) break;
                  x--;}
              if (x<0) x=0;
  
                ObjectCreate("RayX"+IntegerToString(i),OBJ_TREND,0, Time[i+1], iLow(symbol,0,iLowest(symbol,0,MODE_LOW,16,i+1))-80*Point, Time[x], iLow(symbol,0,iLowest(symbol,0,MODE_LOW,16,i+1))-80*Point);
                ObjectSet("RayX"+IntegerToString(i),OBJPROP_COLOR,clrBrown);
                ObjectSet("RayX"+IntegerToString(i),OBJPROP_RAY_RIGHT,false);
                ObjectSet("RayX"+IntegerToString(i),OBJPROP_WIDTH,3);
                
                ObjectCreate("RayXL"+DoubleToStr(i), OBJ_TEXT, 0, Time[i+15],  iLow(symbol,0,iLowest(symbol,0,MODE_LOW,16,i+1))-60*Point ); 
             ObjectSetText("RayXL"+DoubleToStr(i), "Cover / Go Long "+DoubleToString(NormalizeDouble(iLow(symbol,0,iLowest(symbol,0,MODE_LOW,16,i+1))-80*Point,4),4), 12, "Arial Black", DarkGreen); 
               
                
              
                  y=i+8;
               while (y>0){
                  if (Low[y]<iLow(symbol,0,iLowest(symbol,0,MODE_LOW,16,i+1))-140*Point) break;
                  y--;}
              if (y<0) y=0;
              
                ObjectCreate("RayY"+IntegerToString(i),OBJ_TREND,0, Time[i+1], iLow(symbol,0,iLowest(symbol,0,MODE_LOW,16,i+1))-140*Point, Time[y], iLow(symbol,0,iLowest(symbol,0,MODE_LOW,16,i+1))-140*Point);
                ObjectSet("RayY"+IntegerToString(i),OBJPROP_COLOR,clrBrown);
                ObjectSet("RayY"+IntegerToString(i),OBJPROP_RAY_RIGHT,false);
                ObjectSet("RayY"+IntegerToString(i),OBJPROP_WIDTH,3);
                ObjectCreate("RayYL"+DoubleToStr(i), OBJ_TEXT, 0, Time[i+12],  iLow(symbol,0,iLowest(symbol,0,MODE_LOW,16,i+1))-120*Point ); 
             ObjectSetText("RayYL"+DoubleToStr(i), "Add Long "+DoubleToString(NormalizeDouble(iLow(symbol,0,iLowest(symbol,0,MODE_LOW,16,i+1))-140*Point,4),4), 12, "Arial Black", DarkGreen);
             
                
                z=i+8;
               while (z>0){
                  if (Low[z]<iLow(symbol,0,iLowest(symbol,0,MODE_LOW,16,i+1))-220*Point) break;
                  z--;}
              if (z<0) z=0; 
             
                ObjectCreate("RayZ"+IntegerToString(i),OBJ_TREND,0, Time[i+1], iLow(symbol,0,iLowest(symbol,0,MODE_LOW,16,i+1))-220*Point, Time[z], iLow(symbol,0,iLowest(symbol,0,MODE_LOW,16,i+1))-220*Point);
                ObjectSet("RayZ"+IntegerToString(i),OBJPROP_COLOR,clrDarkGreen);
                ObjectSet("RayZ"+IntegerToString(i),OBJPROP_RAY_RIGHT,false);
                ObjectSet("RayZ"+IntegerToString(i),OBJPROP_WIDTH,1);
                ObjectSet("RayZ"+IntegerToString(i),OBJPROP_TYPE,1);
                
                           ObjectCreate("RayZL"+DoubleToStr(i), OBJ_TEXT, 0, Time[i+12],  iLow(symbol,0,iLowest(symbol,0,MODE_LOW,16,i+1))-200*Point ); 
             ObjectSetText("RayZL"+DoubleToStr(i), "Buy shy of "+DoubleToString(NormalizeDouble(iLow(symbol,0,iLowest(symbol,0,MODE_LOW,16,i+1))-220*Point,4),4), 12, "Arial Black", Black); 
               

                
                  
                     y=i+8;
               while (y>0){
                  if (Low[y]<iLow(symbol,0,iLowest(symbol,0,MODE_LOW,16,i+1))-320*Point) break;
                  y--;}
              if (y<0) y=0;    
                if (0<i-74) y=i-74;
                ObjectCreate("RayJ"+IntegerToString(i),OBJ_TREND,0, Time[i+1], iLow(symbol,0,iLowest(symbol,0,MODE_LOW,16,i+1))-320*Point, Time[j], iLow(symbol,0,iLowest(symbol,0,MODE_LOW,16,i+1))-320*Point);
                ObjectSet("RayJ"+IntegerToString(i),OBJPROP_COLOR,clrRed);
                ObjectSet("RayJ"+IntegerToString(i),OBJPROP_RAY_RIGHT,false);
                ObjectSet("RayJ"+IntegerToString(i),OBJPROP_WIDTH,3);   
               ObjectCreate("RayJL"+DoubleToStr(i), OBJ_TEXT, 0, Time[i+16],  iLow(symbol,0,iLowest(symbol,0,MODE_LOW,16,i+1))-320*Point ); 
             ObjectSetText("RayJL"+DoubleToStr(i), "2xSell: "+DoubleToString(NormalizeDouble(iLow(symbol,0,iLowest(symbol,0,MODE_LOW,16,i+1))-320*Point,4),4)+", cover: "+DoubleToString(NormalizeDouble(iLow(symbol,0,iLowest(symbol,0,MODE_LOW,16,i+1))-680*Point,4),4)+", 3x stretch -> E9", 22, "Impact", Crimson); 

             
             }
      }
         if (Low[i+12]<(stratod[i+12]-400*Point)) ObjectSetText("Sals"+DoubleToStr(i), "Buy Beat: "+" ("+DoubleToString(NormalizeDouble(iLow(symbol,0,iLowest(symbol,0,MODE_LOW,16,i+1))-220*Point,4),4)+")-> LL", 22, "Impact", Magenta); 
         if (iStochastic(symbol,0,120,3,3,MODE_SMA,PRICE_MEDIAN,MODE_MAIN,i+12)>10) ObjectSetText("Sals"+DoubleToStr(i), "MFI weakness", 12, "Impact", DimGray); 
        
         
      }

The rest is entertainment

& since I qoted Tina,

Trash For Trunkers

It’s been a hard day’s night, and I’ve been twerking like a dog…

In search of the final divergence.

Blue underscores


 if (iFractals(symbol,0,MODE_LOWER,i) && greencount[i]>=2 && Low[i]<iBands(symbol,30,30,2,0,PRICE_MEDIAN,MODE_LOWER,i)+10*Point
  ){
   j=i+1;
   while (j<=i+7){
      if (RSI2[j]<RSI2[j+1] 
      && RSI2[j]<RSI2[j-1] 
      && RSI2[j]<7.5 
      && RSI2[j]<RSI2[i]
       && Low[j]>Low[i]-20*Point
      ) break;
    j++;  
   }
  if (RSI2[j]<RSI2[j+1]
  && RSI2[j]<RSI2[j-1] 
  && RSI2[j]<7.5
   && RSI2[j]<RSI2[i]
  && Low[j]>Low[i]-20*Point
 // && Low[j]<iBands(symbol,30,30,2,0,PRICE_MEDIAN,MODE_LOWER,j)
  && High[j]>iBands(symbol,30,30,2,0,PRICE_MEDIAN,MODE_LOWER,j)-10*Point  
   ){
         ObjectCreate("120BPMMM"+IntegerToString(i),OBJ_TREND,0, Time[i], Low[i], Time[j], Low[j]);
      ObjectSet("120BPMMM"+IntegerToString(i),OBJPROP_COLOR,clrBlue);
      ObjectSet("120BPMMM"+IntegerToString(i),OBJPROP_WIDTH,12);
      ObjectSet("120BPMMM"+IntegerToString(i),OBJPROP_RAY_RIGHT,false);
   }
 } 

Larger Than Bribes

Homie, hit ’em while they are coked up and weeded.

I had to seriously think about all possibilities and dojis.

Current code brings out the untested levels to the end.

for(i=880; i>0; i--){
dir[i]=dir[i+1];
greencount[i]=greencount[i+1];
redcount[i]=redcount[i+1];
   ////upside progression
   if (redcount[i+1]==redcount[i+7] &&
   Close[i+1]>iBands(symbol,30,30,2,0,PRICE_MEDIAN,MODE_UPPER,i+1)+10*Point && Close[i]<iBands(symbol,30,30,2,0,PRICE_MEDIAN,MODE_UPPER,i)-10*Point){
       ObjectCreate("120BPM"+IntegerToString(i),OBJ_TREND,0, Time[i+1], 0.8, Time[i+1], Close[i+1]);
      ObjectSet("120BPM"+IntegerToString(i),OBJPROP_COLOR,clrCoral);
      ObjectSet("120BPM"+IntegerToString(i),OBJPROP_RAY_RIGHT,false);
      //upside regression
      if (iHigh(symbol,0,iHighest(symbol,0,MODE_HIGH,2,i+1))<iHigh(symbol,0,iHighest(symbol,0,MODE_HIGH,36,i+3))-20*Point) {ObjectSet("120BPM"+IntegerToString(i),OBJPROP_COLOR,clrGray);
         if (iHigh(symbol,0,iHighest(symbol,0,MODE_HIGH,2,i+1))-iLow(symbol,0,iLowest(symbol,0,MODE_LOW,36,i+3))>640*Point) greencount[i]=0;
         else if (greencount[i]>0 && greencount[i+1]==greencount[i+2] && greencount[i+2]==greencount[i+3] && greencount[i+3]==greencount[i+4] && greencount[i+4]==greencount[i+5] && greencount[i+5]==greencount[i+6]) greencount[i]++;
           ObjectCreate("120BPMc"+IntegerToString(i), OBJ_TEXT, 0, Time[i+2], Low[i+1]-60*Point); 
             ObjectSetText("120BPMc"+IntegerToString(i), greencount[i], 42, "Impact", clrLime);
             if (greencount[i]==0){
                j=i-4;
               while (j>0){
                  if (High[j]>Close[i+1]) break;
                  j--;}
              if (j<0) j=0;    
                if (Close[i+1]>Open[i+1]) ObjectCreate("120BPMg"+IntegerToString(i),OBJ_TREND,0, Time[i+1], Close[i+1], Time[j], Close[i+1]);
                 else ObjectCreate("120BPMg"+IntegerToString(i),OBJ_TREND,0, Time[i+2], Open[i+1], Time[j], Open[i+1]);
                ObjectSet("120BPMg"+IntegerToString(i),OBJPROP_COLOR,clrGold);
                
                ObjectSet("120BPMg"+IntegerToString(i),OBJPROP_RAY_RIGHT,false);
                ObjectSet("120BPMg"+IntegerToString(i),OBJPROP_WIDTH,7);
                }
      }
      else {
      dir[i]=-1;   
      redcount[i]++;
      if (redcount[i]>2) greencount[i]=0;
             ObjectCreate("120BPMc"+IntegerToString(i), OBJ_TEXT, 0, Time[i+2], High[i+1]+110*Point); 
             ObjectSetText("120BPMc"+IntegerToString(i), redcount[i], 42, "Impact", clrRed);
             if (redcount[i]==3 || redcount[i]==4) {
               j=i-4;
               while (j>0){
                  if ((High[j]>Close[i+1] && Close[i+1]>=Open[i+1]) || (High[j]>Open[i+1] && Close[i+1]<Open[i+1] && Open[i+1]>Open[i+2]) || (High[j]>Open[i+2] && Close[i+1]<Open[i+1]) ) break;
                  j--;}
              if (j<0) j=0;    
                if (Close[i+1]>=Open[i+1]) ObjectCreate("120BPMr"+IntegerToString(i),OBJ_TREND,0, Time[i+1], Close[i+1], Time[j], Close[i+1]);
                 else if (Close[i+1]<=Open[i+1]) ObjectCreate("120BPMr"+IntegerToString(i),OBJ_TREND,0, Time[i+2], Open[i+2], Time[j], Open[i+2]);
                 else ObjectCreate("120BPMr"+IntegerToString(i),OBJ_TREND,0, Time[i+1], Open[i+1], Time[j], Open[i+1]);
                ObjectCreate("120BPMr"+IntegerToString(i),OBJ_TREND,0, Time[i+2], Open[i+2], Time[j], Open[i+2]);
                ObjectSet("120BPMr"+IntegerToString(i),OBJPROP_COLOR,clrCyan);
                if (redcount[i]==4) ObjectSet("120BPMr"+IntegerToString(i),OBJPROP_COLOR,clrDeepPink);
                ObjectSet("120BPMr"+IntegerToString(i),OBJPROP_RAY_RIGHT,false);
                ObjectSet("120BPMr"+IntegerToString(i),OBJPROP_WIDTH,7);
             }
                   
      }
      ObjectSet("120BPM"+IntegerToString(i),OBJPROP_WIDTH,5);
      ObjectSet("120BPM"+IntegerToString(i),OBJPROP_BACK,1);
      
   }
   //downside progression   
     if (greencount[i+1]==greencount[i+7] &&
     Close[i+1]<iBands(symbol,30,30,2,0,PRICE_MEDIAN,MODE_LOWER,i+1)-15*Point && Close[i]>iBands(symbol,30,30,2,0,PRICE_MEDIAN,MODE_LOWER,i)){
       ObjectCreate("120BPM"+IntegerToString(i),OBJ_TREND,0, Time[i+1], 1.4, Time[i+1], Close[i+1]);
      ObjectSet("120BPM"+IntegerToString(i),OBJPROP_COLOR,clrTeal);
      ObjectSet("120BPM"+IntegerToString(i),OBJPROP_RAY_RIGHT,false);
      //downside regression
      if (iLow(symbol,0,iLowest(symbol,0,MODE_LOW,2,i+1))>iLow(symbol,0,iLowest(symbol,0,MODE_LOW,36,i+3))+20*Point) {ObjectSet("120BPM"+IntegerToString(i),OBJPROP_COLOR,clrGray); 
      if (iHigh(symbol,0,iHighest(symbol,0,MODE_HIGH,30,i+1))-iLow(symbol,0,iLowest(symbol,0,MODE_LOW,2,i+1))>640*Point) redcount[i]=0;
         else if (redcount[i]>0 && redcount[i+1]==redcount[i+2] && redcount[i+2]==redcount[i+3] && redcount[i+3]==redcount[i+4] && redcount[i+4]==redcount[i+5] && redcount[i+5]==redcount[i+6])  redcount[i]++;
         ObjectCreate("120BPMc"+IntegerToString(i), OBJ_TEXT, 0, Time[i+2], High[i+1]+110*Point); 
             ObjectSetText("120BPMc"+IntegerToString(i), redcount[i], 42, "Impact", clrPink);
               if (redcount[i]==0){
                        j=i-4;
               while (j>0){
                  if (Low[j]<Close[i+1]) break;
                  j--;}
              if (j<0) j=0;    
                if (Close[i+1]<Open[i+1]) ObjectCreate("120BPMg"+IntegerToString(i),OBJ_TREND,0, Time[i+1], Close[i+1], Time[j], Close[i+1]);
                 else if (Open[i+2]<Open[i+1]) ObjectCreate("120BPMg"+IntegerToString(i),OBJ_TREND,0, Time[i+2], Open[i+2], Time[j], Open[i+2]);
                 else ObjectCreate("120BPMg"+IntegerToString(i),OBJ_TREND,0, Time[i+1], Open[i+1], Time[j], Open[i+1]);
                ObjectSet("120BPMg"+IntegerToString(i),OBJPROP_COLOR,clrGold);
                
                ObjectSet("120BPMg"+IntegerToString(i),OBJPROP_RAY_RIGHT,false);
                ObjectSet("120BPMg"+IntegerToString(i),OBJPROP_WIDTH,7);
            }
      } 
      else {
       dir[i]=1;
       greencount[i]++;
       if (redcount[i]>2) redcount[i]=0;
        if (greencount[i]==3 || greencount[i]==4 || greencount[i]==5) {
               j=i-4;
               while (j>0){
                  if ((Low[j]<Close[i+1] && Close[i+1]<Open[i+1]) || (Low[j]<Open[i+2] && Close[i+1]>Open[i+1]) ) break;
                  j--;}
              if (j<0) j=0;    
                if (Close[i+1]<Open[i+1]) ObjectCreate("120BPMr"+IntegerToString(i),OBJ_TREND,0, Time[i+1], Close[i+1], Time[j], Close[i+1]);
                 else ObjectCreate("120BPMr"+IntegerToString(i),OBJ_TREND,0, Time[i+2], Open[i+2], Time[j], Open[i+2]);
                ObjectSet("120BPMr"+IntegerToString(i),OBJPROP_COLOR,clrCyan);
                if (greencount[i]==4) ObjectSet("120BPMr"+IntegerToString(i),OBJPROP_COLOR,clrDeepPink);
                ObjectSet("120BPMr"+IntegerToString(i),OBJPROP_RAY_RIGHT,false);
                ObjectSet("120BPMr"+IntegerToString(i),OBJPROP_WIDTH,7);
             }
       
       
             ObjectCreate("120BPMc"+IntegerToString(i), OBJ_TEXT, 0, Time[i+2], Low[i+1]-40*Point); 
             ObjectSetText("120BPMc"+IntegerToString(i), greencount[i], 42, "Impact", clrDarkGreen);
             if (greencount[i]==2) {
             ObjectCreate("120BPMcc"+IntegerToString(i), OBJ_TEXT, 0, Time[i+2], Low[i+1]-110*Point); ObjectSetText("120BPMcc"+IntegerToString(i), " cnt 27 LClose-4 pips =cover", 22, "Impact", clrDarkGreen);
       
       }
      }
      ObjectSet("120BPM"+IntegerToString(i),OBJPROP_WIDTH,5);
      ObjectSet("120BPM"+IntegerToString(i),OBJPROP_BACK,1);
   }
   if (iFractals(symbol,0,MODE_UPPER,i+1)&& High[i+1]<iBands(symbol,30,30,2,0,PRICE_MEDIAN,MODE_UPPER,i+1) && High[i+1]==iHigh(symbol,0,iHighest(symbol,0,MODE_HIGH,200,i+1))
      && redcount[i]>1){
           ObjectCreate("Punktums"+i,OBJ_TEXT, 0, Time[i], High[i]+50*Point);   
        ObjectSetText("Punktums"+i, "   "+CharToStr(126), 56, "Webdings", clrBlack);
     ObjectCreate("Punktumss"+i,OBJ_TEXT, 0, Time[i], High[i]+50*Point);   
        ObjectSetText("Punktumss"+i, "   "+CharToStr(126), 61, "Webdings", clrGold); if (redcount[i+1]==redcount[i+2] && redcount[i+2]==redcount[i+3] && redcount[i+3]==redcount[i+4] && redcount[i+4]==redcount[i+5] && redcount[i+5]==redcount[i+6] && redcount[i+6]==redcount[i+7])  redcount[i]++; 
         ObjectCreate("120BPMc"+IntegerToString(i), OBJ_TEXT, 0, Time[i+2], High[i+1]+110*Point); 
             ObjectSetText("120BPMc"+IntegerToString(i), redcount[i], 42, "Impact", clrPink);
            }
   
      if (iFractals(symbol,0,MODE_LOWER,i+1)&& Low[i+1]>iBands(symbol,30,30,2,0,PRICE_MEDIAN,MODE_LOWER,i+1) && Low[i+1]==iLow(symbol,0,iLowest(symbol,0,MODE_LOW,200,i+1))
      && greencount[i]>1){
           ObjectCreate("Punktums"+i,OBJ_TEXT, 0, Time[i], Low[i]-70*Point);   
        ObjectSetText("Punktums"+i, "   "+CharToStr(126), 56, "Webdings", clrBlack);
     ObjectCreate("Punktumss"+i,OBJ_TEXT, 0, Time[i], Low[i]-70*Point);   
        ObjectSetText("Punktumss"+i, "   "+CharToStr(126), 61, "Webdings", clrGold); if ( greencount[i]==greencount[i+1] && greencount[i+1]==greencount[i+2] && greencount[i+2]==greencount[i+3] && greencount[i+3]==greencount[i+4] && greencount[i+4]==greencount[i+5] && greencount[i+5]==greencount[i+6] && greencount[i+6]==greencount[i+7] && greencount[i+7]==greencount[i+8] && greencount[i+8]==greencount[i+9]) greencount[i]++; 
                 ObjectCreate("120BPMc"+IntegerToString(i), OBJ_TEXT, 0, Time[i+2], Low[i+1]-60*Point); 
             ObjectSetText("120BPMc"+IntegerToString(i), greencount[i], 42, "Impact", clrLime);
             }

The arrows are in a separate cycle, but you have to unserstand what they mean: a move against the most recent directional move. Fade? Not necessarily, if you recall the #2 count on the downside plus 27* 30 minutes story. On the upside 3 for a clean run 4 for a mixed one still.

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


  if (Period()==30){
   if ((Low[i]<iBands(symbol,30,30,2,0,PRICE_MEDIAN,MODE_LOWER,i)+50*Point && ((dir[i]<0 && redcount[i]<3 && redcount[i]>0) || (dir[i]>0 && greencount[i]==3))) && (redcount[i]!=3 || (redcount[i+1]==3 && redcount[i+11]==3)) && (greencount[i]!=2 || (greencount[i+1]==2 && greencount[i+47]==2)) ) {
              ObjectCreate("120BPM__"+IntegerToString(i), OBJ_TEXT, 0, Time[i], Low[i]-20*Point); 
              ObjectSetText("120BPM__"+IntegerToString(i), CharToStr(241), 28, "Wingdings", clrBlack);
   }
    if ((High[i]>iBands(symbol,30,30,2,0,PRICE_MEDIAN,MODE_UPPER,i)-50*Point && ((dir[i]>0 && greencount[i]<3 && greencount[i]>0) || (dir[i]<0 && redcount[i]==3))) && (greencount[i]!=2 || (greencount[i+1]==2 && greencount[i+47]==2)) && (redcount[i]!=3 || (redcount[i+1]==3 && redcount[i+11]==3)) ) {
              ObjectCreate("120BPM_"+IntegerToString(i), OBJ_TEXT, 0, Time[i], High[i]+50*Point); 
              ObjectSetText("120BPM_"+IntegerToString(i), CharToStr(242), 28, "Wingdings", clrBlack);
      
   }
}

Let’s continue with the WTF am I looking at? section.

There ain’t many Forex options, even less on shore for US consumers. By law they cap out leverage at 50:1 versus the European 30:1.

To make 11 million+ dollars on a 60-pip move you would need 3,055 lots open. To be able to afford this kind of an open, you would need 21,385,000 USD on your account to avoid an istant margin call. These people are so bad in Math that they must be from the US. No need to discuss that you are not going to meet a Forex broker’s owner at a convention. Apoarently he stopped trading since, because that is what everyone sane would fo after a big win, but now he makes YouTube videos that are run as a back test to show if you bought 1 futures contract there, you could have made several hundred dollars given that you had the stop loss and the target at just the right spot. Nobody seems to worry about the 6 orders of magnitude between the hindsight, simulated trades and the claimed bank he made. The tatoo in the middle of the forehead shows where the brain should had been inserted through.

He remided me of a guy whom was so thick that I used to say: your life is in danger for knowing him.

I don’t look at Istagram, I don’t seek out forgeies (i.e. his claimed screenshot & PayPal statement), I just get some of these videos in the YouTube digest, so I have an upset stomach.

Cringe, pain, scam, cringe->

These 2 are fun to look at as a pair:

I can’t comment anything on the trading other than the obvious crypto abuse displayed by the second one. Crypto and Forex are not the same.

Also, he claims to make $1 million per month, not the $3.8 million / day as both headlines say.

#4 made

Just A Little Backtest

This would be about the behaviour of the Zero.

The Zero in essence is a significant Lower High / Higher Low print.

Price can just accelerate from that point on, but at some point there would be a back test, and a reaction is likely there.

Here’s a sample: after a little incubation, a move away, the use of the spring board an off we go:

I use the inner body end of the candle for a support line.

When there is no immediate / subsequent back test, that may be a sign of the servo being in place. See, algorithms can be gamma positive or negative – by choice. They can fade or aid a move.

The big arrow zero – wasn’t really a lower high on a closing basis. The gamma (expansion) positive behavior and the opening gap combination was a simple continuation line drawn in Gold.

Friday’s opex pinning came with a Gamma negative behavior. They kept driving price back to the zero support line.

I would not read much into that “1” print, since the bands narrowed back in too much. Yes, it flipped the promoted side and now the liquidity break line is down there by the last major swing low.

The 1.0469 level remains untested still. If we get a zero at the other end, that may chnage things around. Otherwise I would think a Green #1 down, a break, and a #2 print, which brings me to the last piece of info I have. It only affects the down side.

After the #2 count 27 candles out. The support level is the lowest recent 30-minute close – and you have a play of 4-10 pips beyond that, this “Cover Level” is to be taken seriously.

The sample size isn’t large, but this is a feature I’ve pick up on.