Quantify

Heavy quantifying is going on these days.

Sure, it might look like a game, but thrust me, I’m dead serious. Not gonna write a bunch of lines of code for nothing.

//////////drive down         
      if (Low[i]<L80[i] 
      && iHigh(symbol,0,iHighest(symbol,0,MODE_HIGH,10,i))-iLow(symbol,0,iLowest(symbol,0,MODE_LOW,4,i))>460*Point 
      && (Low[i]<cover[i]+100*Point || Low[i+1]<cover[i+1]+100*Point || Low[i+2]<cover[i+2]+100*Point)
       && (MFI[i]<12 || MFI[i+1]<12 || MFI[i+2]<12)
       && ((High[i+5]<L80[i+5] && High[i+9]<L80[i+9] && High[i+8]<L80[i+8] && High[i+7]<L80[i+7] && High[i+6]<L80[i+6]) || iHigh(symbol,0,iHighest(symbol,0,MODE_HIGH,10,i))-iLow(symbol,0,iLowest(symbol,0,MODE_LOW,4,i))>1100*Point)  
        ){
                     ObjectCreate("Drive"+IntegerToString(i), OBJ_TREND, 0,  Time[iLowest(symbol,0,MODE_LOW,4,i)], iLow(symbol,0,iLowest(symbol,0,MODE_LOW,4,i)), Time[iHighest(symbol,0,MODE_HIGH,10,i)], iHigh(symbol,0,iHighest(symbol,0,MODE_HIGH,10,i)));
                     ObjectSetInteger(0,"Drive"+IntegerToString(i),OBJPROP_COLOR,clrOrangeRed);
                     ObjectSet("Drive"+IntegerToString(i),OBJPROP_BACK,1);
                     ObjectSet("Drive"+IntegerToString(i),OBJPROP_RAY_RIGHT,false);
                     ObjectSet("Drive"+IntegerToString(i),OBJPROP_WIDTH,12);
                     
                      if (Low[i]<iBands(symbol,0,120,2,0,PRICE_MEDIAN,MODE_LOWER,i)+150*Point && Drive[i+2]>-1 && Drive[i+3]>-1 && Drive[i+4]>-1){
                            ObjectCreate("PINUSX"+IntegerToString(i),OBJ_TEXT, 0, Time[i],(Low[i]+High[i])/2-100*Point);
                           ObjectSetText("PINUSX"+IntegerToString(i),"Lift 13-39 Pips", 26, "Impact", clrDarkGreen);}
                     
                     
                     Drive[iLowest(symbol,0,MODE_LOW,4,i)]=-1;
                     }
   
   
   //////////Thrust down         
      if (i>0 && (High[i+1]>iMA(symbol,0,8,0,MODE_EMA,PRICE_MEDIAN,i+1) || High[i+2]>iMA(symbol,0,8,0,MODE_EMA,PRICE_MEDIAN,i+2)  || High[i+3]>iMA(symbol,0,8,0,MODE_EMA,PRICE_MEDIAN,i+3) || High[i+4]>iMA(symbol,0,8,0,MODE_EMA,PRICE_MEDIAN,i+4)  || High[i+5]>iMA(symbol,0,8,0,MODE_EMA,PRICE_MEDIAN,i+5) || High[i+6]>iMA(symbol,0,8,0,MODE_EMA,PRICE_MEDIAN,i+6) )
       && High[i]<iMA(symbol,0,8,0,MODE_EMA,PRICE_MEDIAN,i)+50*Point
       && Low[i-1]>Low[i] && Low[i]<cover[i]+100*Point 
       && Drive[ArrayMinimum(Drive,40,i)]<0
       && Drive[ArrayMinimum(Drive,8,i)]==0
       && High[i+1]<L53[i+1]
       && High[i+2]<L53[i+2]
       && High[i+3]<L80[i+3]
       && High[i+2]<L80[i+2]
       
       && High[i+7]<L80[i+7]
       && High[i+8]<L80[i+8]
        ){
                     ObjectCreate("Thrust"+IntegerToString(i), OBJ_TREND, 0,  Time[iLowest(symbol,0,MODE_LOW,4,i)], iLow(symbol,0,iLowest(symbol,0,MODE_LOW,4,i)), Time[iHighest(symbol,0,MODE_HIGH,5,i)], iHigh(symbol,0,iHighest(symbol,0,MODE_HIGH,5,i)));
                     ObjectSetInteger(0,"Thrust"+IntegerToString(i),OBJPROP_COLOR,clrMediumPurple);
                     ObjectSet("Thrust"+IntegerToString(i),OBJPROP_BACK,1);
                     ObjectSet("Thrust"+IntegerToString(i),OBJPROP_RAY_RIGHT,false);
                     ObjectSet("Thrust"+IntegerToString(i),OBJPROP_WIDTH,12);
        
                     if (Low[i]<cover[i] && Low[i]<iBands(symbol,0,120,2,0,PRICE_MEDIAN,MODE_LOWER,i)){
                            ObjectCreate("PINUSX"+IntegerToString(i),OBJ_TEXT, 0, Time[i],(Low[i]+High[i])/2-100*Point);
                           ObjectSetText("PINUSX"+IntegerToString(i),"Ding! Ding! Ding!", 26, "Impact", clrDarkGreen);}
                  else         {
                            ObjectCreate("PINUSX"+IntegerToString(i),OBJ_TEXT, 0, Time[i+6],(Low[i]+High[i])/2-100*Point);
                           ObjectSetText("PINUSX"+IntegerToString(i),"Weak for a thrust", 16, "Impact", clrGray);}
                                 
       }
       else if (i>0 && Low[i+1]>Low[i] && Low[i-1]>Low[i] && Low[i]<iBands(symbol,0,120,2,0,PRICE_MEDIAN,MODE_LOWER,i) && Low[i]<cover[i]
       // && Drive[ArrayMinimum(Drive,40,i)]<0
         && Drive[ArrayMinimum(Drive,38,i)]==0
       
       ){
                            ObjectCreate("PINUSX"+IntegerToString(i),OBJ_TEXT, 0, Time[i+6],(Low[i]+High[i])/2-100*Point);
                           ObjectSetText("PINUSX"+IntegerToString(i),"Strong for a thrust", 16, "Impact", clrGray);
       }

A new thing is the 120-sample BB as a filter.

The upside has failed with a double divergence, and the market went Jackson 5 and said “I wanna be starting something”. The sequence of the events is always the same.

There are 3 elements. The drive section has an acceleration followed by a Lower Low. The last part is the Thrust – but it cannot be too strong or too weak.


The 3rd song for album #39 after the Sum Of All Pitbulls and the Memory Metal is

Achilles Dent: Quantify My Love