Forex
Google

Go Back   Forex Trading > Discussion Areas > General Discussion
Forex Forum Register FAQ Members List Calendar Search Today's Posts Mark Forums Read


Register in Forex TSD!
Trading Systems Leaders in this forum (automated trading systems) are winning more than 3000 pips in a month (30000$ investing one lot every time).
Click here to register and get more information

Reply
 
LinkBack Thread Tools Display Modes
  #1 (permalink)  
Old 03-03-2006, 12:03 PM
shwetha's Avatar
shwetha shwetha is offline
Member
 
Join Date: Feb 2006
Posts: 52
shwetha is on a distinguished road
Exclamation password protection to EA

hi guys


whats the code to have a password protection to EA


and is it possible to have our EA working in interbank fx server


any help reg this is appreciated

bye
shwetha
Digg this Post!Add Post to del.icio.usBookmark Post in TechnoratiFurl this Post!
Reply With Quote
  #2 (permalink)  
Old 03-03-2006, 10:08 PM
Mohammed's Avatar
Mohammed Mohammed is offline
Senior Member
 
Join Date: Mar 2006
Posts: 119
Mohammed is on a distinguished road
Lightbulb

Quote:
Originally Posted by shwetha
hi guys


whats the code to have a password protection to EA


and is it possible to have our EA working in interbank fx server


any help reg this is appreciated

bye
shwetha
Hi shwetha,

very easy friend!

PHP Code:
extern string password "000000";
....
int start()
{
if (
password != 123456//change the 123456 to the password you will give to the user!
{
Alert ("Wrong password! Do you want to cheat my system which I spent my life developing!");
return (
0);  
....

Then compile the EA and ENJOY

Last edited by Mohammed : 03-03-2006 at 10:10 PM.
Digg this Post!Add Post to del.icio.usBookmark Post in TechnoratiFurl this Post!
Reply With Quote
  #3 (permalink)  
Old 03-03-2006, 11:10 PM
Mohammed's Avatar
Mohammed Mohammed is offline
Senior Member
 
Join Date: Mar 2006
Posts: 119
Mohammed is on a distinguished road
Unhappy

Quote:
Originally Posted by Mohammed
Hi shwetha,

very easy friend!

PHP Code:
extern string password "000000";
....
int start()
{
if (
password != 123456//change the 123456 to the password you will give to the user!
{
Alert ("Wrong password! Do you want to cheat my system which I spent my life developing!");
return (
0);  
....

Then compile the EA and ENJOY
By the way, Why do you want to protect your EA? Aren't we share the knowledge here?
Digg this Post!Add Post to del.icio.usBookmark Post in TechnoratiFurl this Post!
Reply With Quote
  #4 (permalink)  
Old 03-04-2006, 08:09 AM
shwetha's Avatar
shwetha shwetha is offline
Member
 
Join Date: Feb 2006
Posts: 52
shwetha is on a distinguished road
showing errors

hi mohammed

thank you for the reply.but when i compiled its showing the following errors

'{' - expression on global scope not allowed
'\end_of_program' - ending bracket '}' expected

waiting for your response

bye
shwetha
Digg this Post!Add Post to del.icio.usBookmark Post in TechnoratiFurl this Post!
Reply With Quote
  #5 (permalink)  
Old 03-04-2006, 12:21 PM
Mohammed's Avatar
Mohammed Mohammed is offline
Senior Member
 
Join Date: Mar 2006
Posts: 119
Mohammed is on a distinguished road
Arrow

Quote:
Originally Posted by shwetha
hi mohammed

thank you for the reply.but when i compiled its showing the following errors

'{' - expression on global scope not allowed
'\end_of_program' - ending bracket '}' expected

waiting for your response

bye
shwetha
shwetha,

It was only an idea of how the code has to be written.
Well, the code should be like that (Applied to the educational EA of Coders Guru "My First EA" :

PHP Code:
//+------------------------------------------------------------------+
//|                                                  My_First_EA.mq4 |
//|                                                      Coders Guru |
//|                                         http://www.forex-tsd.com |
//+------------------------------------------------------------------+
#property copyright "Coders Guru"
#property link      "http://www.forex-tsd.com"

//---- input parameters
extern double    TakeProfit=250.0;
extern double    Lots=0.1;
extern double    TrailingStop=35.0;

extern string password "000000"
//+------------------------------------------------------------------+
//| expert initialization function                                   |
//+------------------------------------------------------------------+
int init()
  {
//---- 
   
//----
   
return(0);
  }
//+------------------------------------------------------------------+
//| expert deinitialization function                                 |
//+------------------------------------------------------------------+
int deinit()
  {
//---- 
   
//----
   
return(0);
  }

int Crossed (double line1 double line2)
   {
      static 
int last_direction 0;
      static 
int current_dirction 0;
      
      if(
line1>line2)current_dirction 1//up
      
if(line1<line2)current_dirction 2//down



      
if(current_dirction != last_direction//changed 
      
{
            
last_direction current_dirction;
            return (
last_direction);
      }
      else
      {
            return (
0);
      }
   } 
//+------------------------------------------------------------------+
//| expert start function                                            |
//+------------------------------------------------------------------+
int start()
  {
//---- 

   
if(StringFind(password"123456"0) == -1//change the 123456 to the password you will give to the user! 
      

         
Alert ("Wrong password! Do you want to cheat my system which I spent my life developing!"); 
         return (
0);   
      } 
   
   
int cnttickettotal;
   
double shortEmalongEma;
   
   
   if(
Bars<100)
     {
      Print(
"bars less than 100");
      return(
0);  
     }
   if(
TakeProfit<10)
     {
      Print(
"TakeProfit less than 10");
      return(
0);  // check TakeProfit
     
}
     
     
   
shortEma iMA(NULL,0,8,0,MODE_EMA,PRICE_CLOSE,0);
   
longEma iMA(NULL,0,13,0,MODE_EMA,PRICE_CLOSE,0);
   
   
int isCrossed  Crossed (shortEma,longEma);
   
   
total  OrdersTotal(); 
   if(
total 1
     {
       if(
isCrossed == 1)
         {
            
ticket=OrderSend(Symbol(),OP_BUY,Lots,Ask,3,0,Ask+TakeProfit*Point,"My EA",12345,0,Green);
            if(
ticket>0)
              {
               if(
OrderSelect(ticket,SELECT_BY_TICKET,MODE_TRADES)) Print("BUY order opened : ",OrderOpenPrice());
              }
            else Print(
"Error opening BUY order : ",GetLastError()); 
            return(
0);
         }
         if(
isCrossed == 2)
         {

            
ticket=OrderSend(Symbol(),OP_SELL,Lots,Bid,3,0,Bid-TakeProfit*Point,"My EA",12345,0,Red);
            if(
ticket>0)
              {
               if(
OrderSelect(ticket,SELECT_BY_TICKET,MODE_TRADES)) Print("SELL order opened : ",OrderOpenPrice());
              }
            else Print(
"Error opening SELL order : ",GetLastError()); 
            return(
0);
         }
         return(
0);
     }
   for(
cnt=0;cnt<total;cnt++)
     {
      
OrderSelect(cntSELECT_BY_POSMODE_TRADES);
      if(
OrderType()<=OP_SELL && OrderSymbol()==Symbol())
        {
         if(
OrderType()==OP_BUY)   // long position is opened
           
{
            
// should it be closed?
           
if(isCrossed == 2)
                {
                 
OrderClose(OrderTicket(),OrderLots(),Bid,3,Violet); // close position
                 
return(0); // exit
                
}
            
// check for trailing stop
            
if(TrailingStop>0)  
              {                 
               if(
Bid-OrderOpenPrice()>Point*TrailingStop)
                 {
                  if(
OrderStopLoss()<Bid-Point*TrailingStop)
                    {
                     
OrderModify(OrderTicket(),OrderOpenPrice(),Bid-Point*TrailingStop,OrderTakeProfit(),0,Green);
                     return(
0);
                    }
                 }
              }
           }
         else 
// go to short position
           
{
            
// should it be closed?
            
if(isCrossed == 1)
              {
               
OrderClose(OrderTicket(),OrderLots(),Ask,3,Violet); // close position
               
return(0); // exit
              
}
            
// check for trailing stop
            
if(TrailingStop>0)  
              {                 
               if((
OrderOpenPrice()-Ask)>(Point*TrailingStop))
                 {
                  if((
OrderStopLoss()>(Ask+Point*TrailingStop)) || (OrderStopLoss()==0))
                    {
                     
OrderModify(OrderTicket(),OrderOpenPrice(),Ask+Point*TrailingStop,OrderTakeProfit(),0,Red);
                     return(
0);
                    }
                 }
              }
           }
        }
     }
   return(
0);
  }
//+------------------------------------------------------------------+ 
Digg this Post!Add Post to del.icio.usBookmark Post in TechnoratiFurl this Post!
Reply With Quote
  #6 (permalink)  
Old 03-04-2006, 12:23 PM
Mohammed's Avatar
Mohammed Mohammed is offline
Senior Member
 
Join Date: Mar 2006
Posts: 119
Mohammed is on a distinguished road
Question Why?

You didn't reply me yet ; what do you want to protect the EA? Aren't we here to share the knowledge and help each others? (Remember that I used a free EA of Coders Guru to show you my free code) ???
Digg this Post!Add Post to del.icio.usBookmark Post in TechnoratiFurl this Post!
Reply With Quote
  #7 (permalink)  
Old 03-04-2006, 01:27 PM
Alex.Piech.FinGeR's Avatar
Alex.Piech.FinGeR Alex.Piech.FinGeR is offline
Senior Member
 
Join Date: Oct 2005
Location: Germany
Posts: 305
Alex.Piech.FinGeR has much to be proud ofAlex.Piech.FinGeR has much to be proud ofAlex.Piech.FinGeR has much to be proud ofAlex.Piech.FinGeR has much to be proud ofAlex.Piech.FinGeR has much to be proud ofAlex.Piech.FinGeR has much to be proud ofAlex.Piech.FinGeR has much to be proud ofAlex.Piech.FinGeR has much to be proud of
is also possible Trial EA with Metatrader Build Version :
EA run only on MetaTrader Build Version 190 !
if MT Build != 190 then erase EA !


--
Digg this Post!Add Post to del.icio.usBookmark Post in TechnoratiFurl this Post!
Reply With Quote
  #8 (permalink)  
Old 03-04-2006, 01:43 PM
cockeyedcowboy's Avatar
cockeyedcowboy cockeyedcowboy is offline
Senior Member
 
Join Date: Nov 2005
Posts: 267
cockeyedcowboy is on a distinguished road
Or if your an IB and giving a system for new accounts, you can tie the system to your IB account. The new trader will be abile to use the system on his account with you only. Protecting you from him using it on accounts that will not generate any commissions to you.


I ask too why PassWord? It will make difference how to protect the code.


The CockeyedCowboy
Digg this Post!Add Post to del.icio.usBookmark Post in TechnoratiFurl this Post!
Reply With Quote
  #9 (permalink)  
Old 03-04-2006, 01:46 PM
shwetha's Avatar
shwetha shwetha is offline
Member
 
Join Date: Feb 2006
Posts: 52
shwetha is on a distinguished road
mine build 191

my meta trader version is 4 build191
Digg this Post!Add Post to del.icio.usBookmark Post in TechnoratiFurl this Post!
Reply With Quote
  #10 (permalink)  
Old 03-04-2006, 01:53 PM
Mohammed's Avatar
Mohammed Mohammed is offline
Senior Member
 
Join Date: Mar 2006
Posts: 119
Mohammed is on a distinguished road
Talking

Well, there are hundreds of methods to protect you EA:

1- You can use the code I submitted (hard coded password).
2- You can make an algorism to collect something and compare it to the password. (For example: the account margin x date of purchase / 100).
3- You can create a dll and ship it with the EA and the dll will handle the password (it can connect to your web site and get the password).
4- You can tie the EA with the account number of the user. You ask him by email to give you the account number then you but it in the EA and compile it then send the compiled version to the user.
5- You can the EA works with a specified MT version only.
6- You can limit the numbers of running of the EA.
7- You can limit the days of using the EA.

8- You can share the EA for free and ask the user if he like it to donate you. REOMMENDED
Digg this Post!Add Post to del.icio.usBookmark Post in TechnoratiFurl this Post!
Reply With Quote
Reply


Thread Tools
Display Modes

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

vB code is On
Smilies are On
[IMG] code is On
HTML code is Off
Trackbacks are On
Pingbacks are On
Refbacks are On
Forum Jump


Similar Threads
Thread Thread Starter Forum Replies Last Post
EA Protection request FX-Hedger Expert Advisors - Metatrader 4 5 06-06-2006 09:58 PM


All times are GMT. The time now is 07:59 PM.