Experts: EA SmartAssTrade. - page 19

 
piusato1:

which link can I download this expert advisor please.

 

thanks 

Hi piusato1,

 On this page: https://www.mql5.com/en/code/11137 

EA SmartAssTrade
EA SmartAssTrade
  • votes: 41
  • 2014.02.26
  • 3rjfx
  • www.mql5.com
This EA just using a very simple formula, but according to my experience, the formula was accurate enough to make a profit.
 
I want to download SAT3, but link web address: "gol2you" has died.
Does anyone upload this ea for me okay ? please !
 

I am interested in SAT3 too and would appreciate a download link!

But I do have another question about SmartAss.

From the code I read that your trading window is every working day 00:00 - 00:16:

..
   else if (DayOfWeek()==1 && Hour()==0 && Minute()<17) {NoOrder=true; StartTrading();} // from Monday
   else if                   (Hour()==0 && Minute()<17) {NoOrder=true; StartTrading();} // 'till Friday 
..

But what is the the time-zone of 00:00 - 00:16 or what is your GMT-Offset?

Doesn't it matter?

Thanks, calli

 

I used SAT3 and smartasstrade-v2, I see SAT3 better. But my computer has been reinstall window, so I lost file SAT3 ea.


Please send it to me via messages ! Thank you very much !

 
SmartAss shows very nice profit on my backtest (GBPUSD, 1H, starting 2015-8-20), however, I never see a buy trade, even when moving the start date to avoid sell trades.  Is that by design or just a kink in the EA?
 
calli:

I am interested in SAT3 too and would appreciate a download link!

But I do have another question about SmartAss.

From the code I read that your trading window is every working day 00:00 - 00:16:

But what is the the time-zone of 00:00 - 00:16 or what is your GMT-Offset?

Doesn't it matter?

Thanks, calli

Hi Calli, it is the server time (TimeCurrent)
 
uli43:
SmartAss shows very nice profit on my backtest (GBPUSD, 1H, starting 2015-8-20), however, I never see a buy trade, even when moving the start date to avoid sell trades.  Is that by design or just a kink in the EA?
/*
int SmartAss() //--function: Check trend and calculation order.
   {
 etc....
*/

for(x=0;x<3;x++)
  {
    if(iOsMA(symbol,TFX[x],12,26,9,6,0)>iOsMA(symbol,TFX[x],12,26,9,6,1))
       {osb++;}
    if(iOsMA(symbol,TFX[x],12,26,9,6,0)<iOsMA(symbol,TFX[x],12,26,9,6,1))
       {oss++;}
    //--
    if(iMA(symbol,TFX[x],20,0,0,0,0)>iMA(symbol,TFX[x],20,0,0,1,0))
       {upm++;}
       else {dnm++;}
  }
//--
if (osb==3 && upm>=2) {Upward=true;}  
if (oss==3 && dnm>=2) {Upward=false;}

//------ try changing the code above, like this: (I hope that the result may be changed or different)


for(x=0;x<3;x++)
  {
    if(iOsMA(symbol,TFX[x],12,26,9,6,0)>iOsMA(symbol,TFX[x],12,26,9,6,1))
       {osb++;}
    else if(iOsMA(symbol,TFX[x],12,26,9,6,0)<iOsMA(symbol,TFX[x],12,26,9,6,1))
       {oss++;}
    //--
    if(iMA(symbol,TFX[x],20,0,0,0,0)>iMA(symbol,TFX[x],20,0,0,1,0))
       {upm++;}
    else if(iMA(symbol,TFX[x],20,0,0,0,0)<iMA(symbol,TFX[x],20,0,0,1,0))
       {dnm++;}
  }
//--
if (osb==3 && upm>=2) {Upward=true;}  
else if (oss==3 && dnm>=2) {Upward=false;}

/*

etc...

*/

 
3rjfx:

Hi: I went through the code, it seems the problem is the variable Upward - it is initialised to false and stays that way regardless of oss and osb etc. However, even with the fix, oss and osb never get to 3 as required, so no trade ever.

 

My attempt to fix the problem:

 

int SmartAss() //--function: Check trend and calculation order.

   {

     //----

     SignalBuy=false;

     SignalSell=false;

     bool FlgUpward = false;   // add this variable

     bool Upward;

     bool OrHdg;

     int upm,dnm;

     int osb,oss,x;

     ResetLastError();

     RefreshRates();

     //--

     for(x=0;x<3;x++)

       {

          if (iOsMA(symbol,TFX[x],12,26,9,6,0)>iOsMA(symbol,TFX[x],12,26,9,6,1))

             {osb++;}

          if (iOsMA(symbol,TFX[x],12,26,9,6,0)<iOsMA(symbol,TFX[x],12,26,9,6,1))

             {oss++;}

             

          

          //--

          if (iMA(symbol,TFX[x],20,0,0,0,0)>iMA(symbol,TFX[x],20,0,0,1,0))

            {upm++;}

          else {dnm++;}

       }

     //--

     if (osb==3 && upm>=2)

         {

            Upward=true;

            FlgUpward = true;    //      change here

         }

        

     if (oss==3 && dnm>=2) 

         {

           Upward=false;

           FlgUpward = true; //      change here

         }

     if (FlgUpward == false);

         {return(0);}     // return if FlgUpward has not flipped

     //-- 

 
Thanks for your system. I will try. ;)
 
uli43:

Hi: I went through the code, it seems the problem is the variable Upward - it is initialised to false and stays that way regardless of oss and osb etc. However, even with the fix, oss and osb never get to 3 as required, so no trade ever.

 

My attempt to fix the problem:

 

int SmartAss() //--function: Check trend and calculation order.

   {

     //----

     SignalBuy=false;

     SignalSell=false;

     bool FlgUpward = false;   // add this variable

     bool Upward;

     bool OrHdg;

     int upm,dnm;

     int osb,oss,x;

     ResetLastError();

     RefreshRates();

     //--

     for(x=0;x<3;x++)

       {

          if (iOsMA(symbol,TFX[x],12,26,9,6,0)>iOsMA(symbol,TFX[x],12,26,9,6,1))

             {osb++;}

          if (iOsMA(symbol,TFX[x],12,26,9,6,0)<iOsMA(symbol,TFX[x],12,26,9,6,1))

             {oss++;}

             

          

          //--

          if (iMA(symbol,TFX[x],20,0,0,0,0)>iMA(symbol,TFX[x],20,0,0,1,0))

            {upm++;}

          else {dnm++;}

       }

     //--

     if (osb==3 && upm>=2)

         {

            Upward=true;

            FlgUpward = true;    //      change here

         }

        

     if (oss==3 && dnm>=2) 

         {

           Upward=false;

           FlgUpward = true; //      change here

         }

     if (FlgUpward == false);

         {return(0);}     // return if FlgUpward has not flipped

     //-- 


You do not fully follow the code I gave the example above, if and else if
You may also make a 2 bool variable: upward and dnward;