If You Were an Institution…

…what would you be buying?

I don’t know about you, but I would be buying at 90% discount.

90% discount is the deeply oversold level = 10% on the comfort levels.

Why not at 95%? Because 5% from the low almost all players are under water and the easier play is the lower low (path of least resistance) to squeeze them beyond their tolerance.

To maximize your odds, one final touch is to lag in into the keel back to the desired level. Remember, you need to accumulate gradually, and your price would be an average of all the buys.

Why?

1. Not to immediately move the markets.

2. To be able to accumulate the most possible volume.

Institutions do not need much fine tuning beyond the commitment to the percentage levels, but for you a tell tale of their presence is

  1. Trending, peak trending-exhaustion
  2. Short term wave counting becomes useless

Your best tools for spotting them therefore are

  1. Consolidation indicator (CI) sample size 7
  2. Monitoring for peak trending

I talk of peak peak trending after the 4th open above overbought / below oversold.

During peak trending the trend can turn on itself (i.e. wedge), there may not be a thrust / beat occurring.

As far as institutions go, they don’t care about wave counts, they care about the numbers and they would be holding until the trade would be feasible to let go of.

What does this mean on the gauge? They would roll in and out on a 15% span at the very minimum to have an average of a 10% move. Again, the measurement is the long term range.

They would need to get buyers interested, so they would utilize the “out of oversold” level for the roll out. That is, if they do not have longer term goals with the currency – if they do, then we are talking 30%, 50% and 70% travel holdings. They might let the price drop to their desired level multiple times if they need to purchase more.

Rinse and repeat.

Wave 1: Smart Money Buys

Wave 3: Institutions Buy

Wave 5: the Retail Buys

PKTE= peak trending exhaustion

15-min Mean Reversion

What does mean reversion really mean? How does it work (for real)?

Mean reversion kicks in when an overly extended condition finally lets go. Much like the rubber band that reverts to slap your skin.

What is the mean? There are different means for different time frames, but the one I am using is the 15-minute LEMA. This means 828 sample, but since I have 30-minute charts open, I use 414 EMAs pulled on the highs and the lows. This band gets re-visited 3 times per month on average with the certainty of death VS a 200 day MA that may not be seen back for years.

It can be stated that all mean reversions start from Bull Zone 1 and Bear Zone 1.

I define these zones being 1-3 fluctuation maximums away from the individual bands of the mean.

Sort term bulls/bears would manage to stretch the price not much further than the 1x fluctuation maximum, whilst middle weight, better capitalized players would cover about 2.5-3x fluctuation maximum away. Anything beyond this level of stretch would be an institutional buying: constant accumulation is needed to keep up the overstretched condition.

A valid let go thus occurs in the Zone 1 and a sharpened stochastic bars can help you find the spot.

What happens next is an impulse wave structure (5 waves) that would take you back to… where the mean was at the time of the trigger (end of wave 3), and an extension on top of that (wave 5).

Figure shows the (wave 3) target at hand.

Wave 5 would normally beat the touch down by 1/2 of the fluctuation size to fluctuation maximum.


In this particular instance wave 2 was brought on by price hitting the spark zone, but as a General guide you should be thinking of the possibility of a fake out at the other side of Mr. Maroon.


Wave 3 started upon a fake out of 1-hour LEMA.
Fibonacci Who?

The move back up and the fall back half way after the wave 5 target was reached, was the settlement, the reset, not a wave of any sort, this is something that E.W. can not account for when wanting to call every move a part of a structure.

This is everything you need to be able to make a killing in Forex.

I did not learn any of the above from anyone, these are my own findings.

The lingo traders use helped me with what to look for. Being a Hungarian I am very much used to the language passing down thinking logic.

The above version of LEMA30N can be obtained gratis when purchasing a copy of my book.

Stochastic Bars Mixed can be downloaded freely from this blog.

Everything You Always Wanted To Know

..but never dared to ask about trading.

What is risk in trading?

Number one: you die without ever making any money.
Number two: you loose all the money on the account.

What do you need to speed up money making?
Leverage. A broker can give you leverage on your money (500:1 is accessible). If you want the most volume of fish, you’d better be fishing with dynamite.
You can get leverage on your time by making the computer trade for you part time (automatization).

Why do you trade Forex?
Because the ability to hedge at no extra cost means the possibility to take losses on your own terms.
Why do you trade EUR/USD?
Because you can make 1.5 pip net from a 2.2-pip move in your favor.
The second cheapest instrument would cost you twice as much in commission and spread (GBP/USD).

It is possible to make 50%-100% gains in a week. In 2 weeks the account can be doubled.
High leverage means that you can keep your own risk low.
If you put up 1% of your net worth, and you would take this money back 2 weeks later, your risk from then on would be 0. You see, everything is relative. The only money that is yours, is what you have taken out of the trading account. If you loose one time a 1% account, and by then you would have multiple one percents lined up ready to open a new account, your loss would merely be time: a couple weeks of no productivity.

This wasn’t the risk management the academics were pushing on you?
Nobody would become the richest person in the world by doing everything the same way others do.

Which part of this is not sustainable?
Well you do need a good understanding of what is happening.
There are only two fundamental things in trading: people want to make money, and fear is stronger than greed.
I do not follow any of the news. To make 2.2 pips on a trade they have 0 relevance.

Of course you can also speed things up by gaining proper understanding and read on what is happening.
For instance, knowing where the spark zone is, where the Bull Zone1 starts and what is happening there is already more than all the “knowledge” you managed to obtain to date.

If you learn mean reversion well, you can be the king of the traders.

Math.

If you want to use a mathematical formula in trading, here it is: if you make $100 ten times, you just made $1000.

Pips.

You cannot express gains in pips: it is meaningless if you do not disclose your multiplier (position size).
On the trading floor there was Sebastian sitting behind me (the only other older guy). He said: 10 pips a day will make you rich – and he spent all his efforts seeking out the smallest bodied candle up to a year back – like this was what trading was about.
How about 70 pips a day then out of 2-pip trades and virtually no losses. Could that make you rich? (EUR/USD does not even move 60 pips on most days.)

As you can see the lump sum if I was to cash in after 2 weeks is 200% gains.

The pips division is a bit off: you should not factor in the days when there was no trading; the 746 pips total has to be divided by 10, not 14.

I have done 415% before in 3 weeks (475% not factoring in the open positions), and now you know, if anyone would crack 1000% gains trading Forex in a month, that would be me.

Here is a video about what a difference the right person can make.

The original title of this post was intended to be Clubbed to Death

& another video to put our insignificance in perspective.

Oh yeah, if I haven’t mentioned yet, I am furnishing these numbers while holding a full time job.

1 Answer

So, you can learn from Scott Barkley that there are only two reversal patterns: a wedge and a head-and-shoulders, and all other patterns are continuation patterns.

Then you might decide to educate yourself further, and start reading my blog to find out, that there is only one reversal pattern, an RSI2 reversal divergence. The difference between the two patterns mentioned earlier, is that the wedge comes with a the RSI2 divergence between the last two fractals while the H&S has an RSI2 divergence between the right shoulder and the left shoulder.

Even Better Than The Real Thing – Pigging Out

In short, I had to come up with a better logic for hedging than anything before. (I had both my D-Day Hedger and the DDI Turn routines open positions in the wrong direction the other day while I was trying to trade in the proper direction – and all of this happened right after the RSI2 Hedger wasn’t supposed to open a hedge.) Since my RSI2 mania hasn’t been subsiding for about an eternity, I decided to use the pig in the attic and the pig in the basement for a change of direction. Interestingly, the reversals down seem to overwhelmingly happen in the Bull Zone 1 – when the bulls cover and tip the scale – and the reversals up, you can guess after this. A pig would get called off upon a re-visit of its block, and in general the price has the first 30 minutes available for it to leave for good.

Among the filters I am looking for a wick that is larger than 5.5 pips and an RSI2 sharpie sequence.

The black, filled triangles are the primary entries, the black triangle outlines are the secondary entries, and the white admiral cross marks the exit condition. To better understand, primary means quality = put plenty of the fire, the secondary means to throw a log.

As for an additional deciding factor, I started plotting again a 12-sample choppiness oscillator – I intend to measure bull/bear strength with it.

I do realize that I may need to add further filters in the future, but this is not at all a bad start. See for yourself!


Advanced Automated Trading #2

In this piece I’ll show some examples that are some of the less obvious ways automated trading can chip in with correcting human errors.

Human can have a fixation of wanting to do this or that and override/ignore signs that would suggest otherwise.

With all the good intentions, the human has to learn to comply as well.

I, as a human being with all the possible flaws in the world failed to acknowledge a zillion signs:

  • the fake-out of Mr. Maroon (in Maroon, see “F”)
  • the failure at the Lower Guard Rail (chartreuse)
  • the wave count down to 1 – corresponding “# sell label”
  • the wave 4 warning (purple stripe below)
  • the BURN plot highlighting a starting move down
  • wasn’t acknowledging the navy slim line up as a wave 5 or B up
  • that the market made a thrust into the thrust box (image at bottom)
  • that the market spiked over the red line (image at bottom)
  • (not to mention the pause before the lower reversal zone at 1.1176)
  • and above all the Golfer on the RSI2

The computer did notice it, and it kept on cutting my longs.

(Buy adding a stop loss of other than 0, you are submitting the trade for a review by the croppers.)

This frustrated me, because my croppers should be programmed not to take a loss. These losses were miniscule, $4 and $9.

My first impression was that I would have to change this and implement a protection for cutting only after a pip of gain, so that I can have some chump change left after the commission.

…and I did change it… and then I realized that the program was right all along. You may not get the luxury of a full pip in your favor. So I had to revert it back.

Here is the golf cropper for a long, now the bid line (that was inserted on an implusive decision unnecessarily, commented back out)

////Exit Long (Golfer On Top)
    if( OrderType()==OP_BUY && OrderMagicNumber()!=48 && OrderMagicNumber()!=50 && OrderMagicNumber()!=51 && OrderMagicNumber()!=52 && OrderMagicNumber()!=53 && OrderMagicNumber()!=54 && OrderProfit()>0 &&
    //Bid>OrderOpenPrice+10*Point &&
    omegam[0]<0 && RSI2[0]<60 && RSI2[1]>75 && RSI2[2]<75  ) 
        {OrderClose( OrderTicket(), OrderLots(), MarketInfo(OrderSymbol(), MODE_BID), 5, Red );
            Print("Golfer Cropper Closed LONG @ "+MarketInfo(OrderSymbol(), MODE_BID)+" for ", OrderProfit());} 

The second thing to talk about having to always update the system – which usually would come down to adding filters as problems arise.

The Slope Trader was most definitely missing a filter. You do not try to short near a fresh bottom.

There was a short opened on the spike low, and this was not the fault of the automated trading system, this was the fault of the designer not thinking things through.

 if (
      (Period()==30 && (trianglehigh[1] || trianglehigh[2] ||  trianglehigh[3] || trianglehigh[4] || trianglehigh[5] || trianglehigh[6]) && RSI2[0]>95 && Close[0]<iMA(NULL,240,207,0,MODE_EMA, PRICE_LOW,0))
    ||  (Period()==30 && (trianglelow[1] || trianglelow[2] ||  trianglelow[3] || trianglelow[4] ||  trianglelow[5] || trianglelow[6]) && RSI2[0]<5 && Close[0]<iMA(NULL,240,207,0,MODE_EMA, PRICE_LOW,0))
  &&!(iRSI(Symbol(),240,2,PRICE_MEDIAN,1)<3)
&&!(iRSI(Symbol(),240,2,PRICE_MEDIAN,2)<3)
&&!(iRSI(Symbol(),240,2,PRICE_MEDIAN,3)<3)
&&!(positive[10]==50 || positive[9]==50 ||  positive[9]==50 || positive[8]==50 || positive[7]==50 || positive[6]==50 || positive[5]==50 || positive[4]==50 || positive[3]==50 || positive[2]==50 || positive[1]==50 || positive[0]==50)
 && omegam[0]<0 && omegam[2]<0
 && DayOfWeek()!=0
///here comes the too close to the bottom filter 
 && Bid> iLow(symbol,30,iLowest(symbol,30,MODE_LOW,200,1))+FSize*10*Point
  )

Correction was made, but I am still traveling with the surplus weight of the short.

This is an excuse for having longs of course, but is a head ache as well.

Gotta think forward: if there was a short already opened occupying the maximum lot size, this trade would not had been opened or merely with insignificant size.

So, as a further prevention measure, I must allow the new Porker routine to open trades even if there are no counter-directional trades open. This of course does change the identity from a hedger to a trader.

Edit 1: (now equal included)

if (overhedging_allowed &&  Close[0]<iMA(symbol,30,135,0,MODE_EMA, PRICE_LOW,0)&& overdrivecounter<1 && no53s==0) {  
//now 0 longs = 0 shorts is a legitimate opening condition   
if (nshorts<=nlongs && piginthesky  ) {

Shadings show a directional logic.

Edit 2: New orders now can be opened with the equity dependent Max Lots size

if (i < 0){
      if (nlongs>0) if (OrderSend(symbol, OP_SELL, NormalizeDouble((nlongs-nshorts)*1.25,2), open_price, 3, stop_loss_price, take_profit_price, magic_number4+" OVERHEDGE SELL 0/0", magic_number4,1) < 0)
        Print("Error: ", ErrorDescription(_LastError));
              if (nlongs==0) if (OrderSend(symbol, OP_SELL, NormalizeDouble(MaxLots-nshorts,2), open_price, 3, stop_loss_price, take_profit_price, magic_number4+" OVERHEDGE SELL 0/0", magic_number4,1) < 0)
        Print("Error: ", ErrorDescription(_LastError));
        }
// Max Lots calculation for 1:200+ leverage
  extern int SLoss = 25;
extern double Leverage = 1.5;
extern double AF=1.3;
extern double LT=333;

double MaxLots = NormalizeDouble(LT/3000000*account*AF*Leverage/SLoss*260/2,2);     
  double comparison = AccountEquity()/AccountBalance();

Edit 3 and 4 are the counter part long overhedge lines.

One dilemma is reinstating the Rope trade at 15% equity draw down.

Lately I had only 50% hedge at 80% equity/balance ratio and 100% hedge at 70% ratio (for equity hedging, but there are plenty of other hedge warranting conditions), because it all may end up being a juggling act having to deal with too many hedge positions.

I recently added additional 2 hedges further down the equity line in case the human does bad things again.

image: thrust into the thrust box, spike over the red line

Advanced Automated Trading

Let’s see what this account did since last night’s open.

The 2S trader opened a long at midnight (server time), and a 4% cropper killed it 5.5 hours later. Pretty straightforward so far.

As for the other trade there is a whole lot to talk about. I cannot find any more which routine opened it, because the comment lines were overwritten by the system with to/from, and the magic number was lost. The experts history by now is littered with stop loss attempt entries, so the open has been pushed out from the log. The size is somewhat of a clue. It had to be a hedger routine with a which ever is larger logic or an overhedger. 5.63×1.25 = 7.0375. So this order was opened by the Porker Overhedger (that I coded yesterday), and the magic number was 54.

Since the sell order was opened two hours after the long, if may had been a hedge order. By this I mean, that the short possibly would had never gotten opened if there weren’t any longs on the books.

Lesson number one is an order is merely an excuse to make money. You should not be afraid from being in the market most of the time, and nor should you be afraid of leverage. In a sense you need to provoke yourself into making money. You need to think things through properly at the designing table is all. Remember that both trades were opened with “codes” instead of stop losses, that determined which kind of trail stop / crop can be applied. You must always think of the individual routines as a part of a well oiled system.

Lesson number two is the way the hedge trade was eliminated. The first close out had to be triggered by a cropper (doji cropper, golf cropper or star cropper), but these croppers were intelligent enough to leave 1 micro lot open from the full size upon closing. Why? Because of keeping the magic number in the order list would prevent the hedger from wanting to re-open the hedge in case the opening trigger is still valid. As you can see, the smart trail stop was entrusted with finishing off the micro lot that was left behind.

This was a well orchestrated effort from an automated trading system.

The Pig in the Sky & the Utmost Condition

The pig is an RSI2 divergence that remains untouched. This is bet the farm condition #1.

Yes, it is an embedded oversold market, thus we need to look above to find the starting point of the down move.

The pig is the pink/purple rectangle by the overbought neckline on the image.

The first number is the 1.3x daily true range deducted from the last 15-minute closing value where the 12- sample fractal energy crossed above 53.

  i=0;
   while (!(ChoppinessIndex(12*4,i+1)<53 && ChoppinessIndex(12*4,i)>53))    
   i++;

Close15 = iClose(NULL,15,i);

Finding the pig:

i2=0;
   while (i2<500){
      i=i2+2;
      if (ExtUpFractalsBuffer[i2]!=EMPTY_VALUE)     
      while (i<i2+26 ){
            if ( RSI2[i2]<RSI2[i] && iFractals(Symbol(),0,MODE_UPPER,i) && High[i2]>=High[i]+10*Point ) break;
         i++;}
      if (ExtUpFractalsBuffer[i]!=EMPTY_VALUE  && ExtUpFractalsBuffer[i2]!=EMPTY_VALUE && RSI2[i2]<RSI2[i] && High[i2]>=High[i]+10*Point ) break;
               i2++;}  


if (ExtUpFractalsBuffer[i]!=EMPTY_VALUE  && ExtUpFractalsBuffer[i2]!=EMPTY_VALUE &&  i2<500 && High[i2]>=High[i]+10*Point) { UpFractalTime_2=iTime(NULL, 0,i2);    UpFractalTime_1=iTime(NULL, 0,i);   }
 
 
if (i<500 && i<i2+26) {   ObjectDelete(0,"HNNN3_1");
         ObjectCreate(0,"HNNN3_1",OBJ_TREND,0,UpFractalTime_1,High[i],UpFractalTime_2,High[i2]);
          ObjectSetInteger(0,"HNNN3_1",OBJPROP_RAY_RIGHT,false);
         ObjectSet("HNNN3_1",OBJPROP_COLOR,indicator_color8);
         ObjectSet("HNNN3_1",OBJPROP_WIDTH,8);
      UFT2=UpFractalTime_2;
      if (plot_divergence_labels){
              ObjectCreate("elixir 40"+High[i2], OBJ_TEXT, 0, Time[i2], High[i2]+FSize*1.5*Point); 
      ObjectSetText("elixir 40"+High[i2], "Rev/DVG", 22, "Tahoma", White);}
 
 
  k=1;
while (k<i2-1) {
     if (High[k]>High[i])  break;   
    k++;  }
    
    if (k>i2-2) {
   ObjectCreate("Virgin"+i, OBJ_RECTANGLE, 0,  Time[i2], High[i], Time[1], High[i2]);
  ObjectSetInteger(0,"Virgin"+i,OBJPROP_COLOR,clrPink);
  ObjectSet("Virgin"+i,OBJPROP_BACK,0);
  ObjectSet("Virgin"+i,OBJPROP_WIDTH,8);
      }

Adding the label

ObjectCreate("Virgin__"+i, OBJ_TEXT, 0, Time[i2-2], High[i2]); 
       ObjectSetText("Virgin__"+i, "P/"+NormalizeDouble(Close15-ATRAVG[1]*1.3,4)+", "+NormalizeDouble(Close15-ATRAVG[1]*1.3-FSize/2*10*Point,4) ,28, "Arial Black", Black);

The second number is the estimated location of the no break extension – FSize is still 32.

The utmost condition is a White Stripe and an RSI2 divergence. This is bet the farm condition #2.

The White Stripe is the End of a Stochastic Bar Overdrive sequence.

Stochastic bar calculation with elimination of values above the lower guard rail:

extern int    K_Period  = 25;
extern int    K_Period2  = 60;
extern int    K_Period3  = 100;
extern int    D_Period  = 3;
extern int    Slowing  = 3;
extern int    TopBorder=90;
extern int    BotBorder=10;
extern int    BotBorder2=5;
extern int    BotBorder3=3;

for(i = 550; i >= 0; i--)
   {  
           
      double St=iStochastic(NULL,0,K_Period,D_Period,Slowing,MAType,PriceType,MODE_MAIN,i);
      double St2=iStochastic(NULL,0,K_Period2,D_Period,Slowing,MAType,PriceType,MODE_MAIN,i);
      double St3=iStochastic(NULL,0,K_Period3,D_Period,Slowing,MAType,PriceType,MODE_MAIN,i);
      ExtMapBuffer2[i] = EMPTY_VALUE;
      ExtMapBuffer3[i] = EMPTY_VALUE;
         if (St2<BotBorder2 && (St<BotBorder || St3<BotBorder3)) ExtMapBuffer2[i] = 15;
         if (St>TopBorder && !((High[i]-iMA(symbol,30,414,0,MODE_EMA, PRICE_HIGH,i))<FSize*10*Point && embeddedoversold)) ExtMapBuffer3[i] = 85;}

White stripe plot

   if ((ExtMapBuffer3[i+1]==85 && ExtMapBuffer3[i]!=85) || (ExtMapBuffer2[i+1]==15 && ExtMapBuffer2[i]!=15)  ) {
   ObjectCreate("Utmost"+i, OBJ_RECTANGLE, 0,  Time[i+2], iHigh(Symbol(),0,iHighest(Symbol(),0,MODE_HIGH,262,i)), Time[i], iLow(Symbol(),0,iLowest(Symbol(),0,MODE_LOW,262,i) ));
  ObjectSetInteger(0,"Utmost"+i,OBJPROP_COLOR,clrWhite);
  ObjectSet("Utmost"+i,OBJPROP_BACK,1);
  ObjectSet("Utmost"+i,OBJPROP_WIDTH,5);
   }

Modified Fractals for 30 minute

 int    nCountedBars;
   bool   bFound;
   double dCurrent;
   nCountedBars=IndicatorCounted();
//---- last counted bar will be recounted    
   if(nCountedBars<=2)
      i=Bars-nCountedBars-3;
   if(nCountedBars>2)
     {
      nCountedBars--;
      i=500;
     }
//----Up and Down Fractals
   while(i>=2)
     {
      //----Fractals up
      bFound=false;
      dCurrent=High[i];
      if(dCurrent>High[i+1]  && dCurrent>High[i-1] && dCurrent>High[i-2])
       //&& dCurrent>High[i+2]
        {
         bFound=true;
         ExtUpFractalsBuffer[i]=dCurrent;
        }
      //----6 bars Fractal
      if(!bFound && (Bars-i-1)>=3)
        {
         if(dCurrent==High[i+1] && dCurrent>High[i+2]  
         //&& dCurrent>High[i+3]
            && dCurrent>High[i-1] )
            //&& dCurrent>High[i-2]
           {
            bFound=true;
            ExtUpFractalsBuffer[i]=dCurrent;
           }
        }        
      //----7 bars Fractal
      if(!bFound && (Bars-i-1)>=4)
        {  
         if(dCurrent>=High[i+1]  && dCurrent>High[i+3] && dCurrent>High[i+4] &&  dCurrent==High[i+2]
            && dCurrent>High[i-1] )
            //&& dCurrent>High[i-2]
           {
            bFound=true;
            ExtUpFractalsBuffer[i]=dCurrent;
           }
        }  
      //----8 bars Fractal                          
      if(!bFound && (Bars-i-1)>=5)
        {  
         if(dCurrent>=High[i+1] && dCurrent==High[i+2] && dCurrent==High[i+3] && dCurrent>High[i+4]  &&
         
        //&& dCurrent>High[i+5]
            dCurrent>High[i-1] )
            //&& dCurrent>High[i-2]
           {
            bFound=true;
            ExtUpFractalsBuffer[i]=dCurrent;
           }
        }
      //----9 bars Fractal                                        
      if(!bFound && (Bars-i-1)>=6)
        {  
         if(dCurrent>=High[i+1] && dCurrent==High[i+2] && dCurrent>=High[i+3] && dCurrent==High[i+4] && dCurrent>High[i+5]  && dCurrent>High[i-1] )
         //&& dCurrent>High[i-2]
           //&&             dCurrent>High[i+6]
           {
            bFound=true;
            ExtUpFractalsBuffer[i]=dCurrent;
           }
        }                                    
      //----Fractals down
      bFound=false;
      dCurrent=Low[i];
      if(dCurrent<Low[i+1]  && dCurrent<Low[i-1] )
      //&& dCurrent<Low[i-2]
        //&& dCurrent<Low[i+2]
        {
         bFound=true;
         ExtDownFractalsBuffer[i]=dCurrent;
        }
      //----6 bars Fractal
      if(!bFound && (Bars-i-1)>=3)
        {
         if(dCurrent==Low[i+1] && dCurrent<Low[i+2]  &&
            dCurrent<Low[i-1] )
            //&& dCurrent<Low[i-2]
           //&& dCurrent<Low[i+3]
           {
            bFound=true;
            ExtDownFractalsBuffer[i]=dCurrent;
           }                      
        }        
      //----7 bars Fractal
      if(!bFound && (Bars-i-1)>=4)
        {  
         if(dCurrent<=Low[i+1] && dCurrent==Low[i+2] && dCurrent<Low[i+3]  &&
            dCurrent<Low[i-1] )
            //&& dCurrent<Low[i-2]
          //&& dCurrent<Low[i+4]  
           {
            bFound=true;
            ExtDownFractalsBuffer[i]=dCurrent;
           }                      
        }  
      //----8 bars Fractal                          
      if(!bFound && (Bars-i-1)>=5)
        {  
         if(dCurrent<=Low[i+1] && dCurrent==Low[i+2] && dCurrent==Low[i+3] && dCurrent<Low[i+4]  &&
            dCurrent<Low[i-1] )
            //&& dCurrent<Low[i-2]
           //&& dCurrent<Low[i+5] 
           {
            bFound=true;
            ExtDownFractalsBuffer[i]=dCurrent;
           }                      
        }
      //----9 bars Fractal                                        
      if(!bFound && (Bars-i-1)>=6)
        {  
         if(dCurrent<=Low[i+1] && dCurrent==Low[i+2] && dCurrent<=Low[i+3] && dCurrent==Low[i+4] && dCurrent<Low[i+5]  && dCurrent<Low[i-1] )
         //&& dCurrent<Low[i-2]
           //&&             dCurrent<Low[i+6]
           {
            bFound=true;
            ExtDownFractalsBuffer[i]=dCurrent;
           }                      
        }                                    
      i--;
     }

Influences


As I mentioned, I am not following on anyone’s path, but there were people that handed me some tools to work with.
Props for George Lane with his works in Stochastics.
J. Welles Wilder… what would I have achieved without your RSI?
I am grateful to all those contributed in the development of the MT4 platform and the mql language.

I saw the use of RSI2 first from Craig Severson (although he only used it on daily charts for his swing trade), and a lot of the lingo I use came from him.
Credits to Ira Epstein for hammering away at stochastic embedding.
Credits to Simple Ton, who showed that there is no need to be afraid of saying things out loud.
Scott Barkley was an influencer even if in a backward manner: his statements helped me to disprove redundant things.
Like when he mentioned about “Big Boys” having Fibonacci built into their tools. Simple Ton said it first: Fibonacci is only in your head.
It is entertainment for the retail trying to act scientific about something that has no science behind – I could add.
Scott kept on pulling his phrase out from somewhere saying “The retail trader makes 5-8 pips on a trade. If you are doing that, you would have to be right 90% of the time for the rest of your life”. I have disproved every stupidity in this sentence countless times. I had 10% plus days with 2.2 pips average trade gains, with 60%-70% percent trade success rate. I can do a 100% gains in 2 weeks, or even in a week. I made 94.5% last week with 5.5 pips average gain size. A 100% gain means that you can withdraw all of your initial capital and your risk from then on would drop to 0: now you are trading with capital that did not even exist a week or two earlier.
Scott, you just keep at trying to fish out the largest pip size trade – perhaps one day they would start selling bread for the largest pips instead of cash. It would look good certainly hanging your largest sizes on the wall, something to show for and sing ballads about to a grand kid. Keep putting those lines on your charts – especially the heart one, that’s very cute.
I myself haven’t been drawing trend lines and retracements for ages and I intend to keep up the habit till I live.

In closing, I would mention, that I am judgemental of the redundant phrase, “price action”. As Simple Ton put it, “What happened to people’s brain? Did it turn into mash?”


2.4 pips on average per trade did not prevent from making 52.4% gains in 21 hours.

72.55% of the long trades and 60.78% of the short trades being successful did not prevent from making profits.