Ciao ragazzi
qual è il codice per avere una password di protezione per EA
ed è possibile avere il nostro EA che lavora nel server fx interbancario
qualsiasi aiuto reg questo è apprezzato
ciao
shwethaCiao shwetha
molto facile amico!
....
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);
....
}Poi compila l'EA e GODITI
Ciao shwetha,
molto facile amico!
....
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);
....
}A proposito, perché vuoi proteggere il tuo EA? Non condividiamo la conoscenza qui?
ciao mohammed
grazie per la risposta, ma quando ho compilato, mostra i seguenti errori
'{' - espressione sull'ambito globale non consentita
'\fine_di_programma' - attesa la parentesi finale '}'.
aspettando la tua risposta
ciao
shwethashwetha,
Era solo un'idea di come il codice deve essere scritto.
Bene, il codice dovrebbe essere così (Applicato all'EA educativo di Coders Guru "My First EA" :
//| My_First_EA.mq4 |
//| Coders Guru |
//| https://www.forex-tsd.com |
//+------------------------------------------------------------------+
#property copyright "Coders Guru"
#property link "https://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 cnt, ticket, total;
double shortEma, longEma;
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(cnt, SELECT_BY_POS, MODE_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);
}
//+------------------------------------------------------------------+Perché?
Non mi hai ancora risposto ; cosa vuoi per proteggere l'EA? Non siamo qui per condividere la conoscenza e aiutarci a vicenda? (Ricorda che ho usato un EA gratuito di Coders Guru per mostrarti il mio codice gratuito) ???
è anche possibile Trial EA con Metatrader Build Version:
EA funziona solo su MetaTrader Build Version 190!
se MT Build != 190 allora cancella EA !
--
O se sei un IB e dai un sistema per i nuovi conti, puoi legare il sistema al tuo conto IB. Il nuovo trader sarà in grado di utilizzare il sistema sul suo conto solo con te. Proteggendoti dal suo utilizzo su conti che non genereranno alcuna commissione per te.
Chiedo anche perché PassWord? Farà differenza come proteggere il codice.
Il CockeyedCowboy
la mia build 191
la mia versione di meta trader è 4 build191
Beh, ci sono centinaia di metodi per proteggere il tuo EA:
1- Puoi usare il codice che ho presentato (password hard coded).
2- Si può fare un algoritmo per raccogliere qualcosa e confrontarlo con la password. (Per esempio: il margine del conto x la data di acquisto / 100).
3- Puoi creare una dll e spedirla con l'EA e la dll gestirà la password (può connettersi al tuo sito web e ottenere la password).
4- Puoi legare l'EA con il numero di conto dell'utente. Gli chiedi via email di darti il numero di conto, poi lo inserisci nell'EA e lo compili, poi mandi la versione compilata all'utente.
5- Puoi far funzionare l'EA solo con una determinata versione di MT.
6- Puoi limitare i numeri di esecuzione dell'EA.
7- Puoi limitare i giorni di utilizzo dell'EA.
8- Puoi condividere l'EA gratuitamente e chiedere all'utente se gli piace di donarlo. RIMANDATO
ciao
Non mi hai ancora risposto ; cosa vuoi per proteggere l'EA? Non siamo qui per condividere la conoscenza e aiutarci a vicenda? (Ricorda che ho usato un EA gratuito di Coders Guru per mostrarti il mio codice gratuito) ???
ciao mohammed
ho bisogno di protezione con password, nel caso in cui voglio caricare il mio EA con il server del broker. non che io non voglia condividere con il forum. spero che ora sia chiaro.
ciao
grazie
shwetha
- App di trading gratuite
- Oltre 8.000 segnali per il copy trading
- Notizie economiche per esplorare i mercati finanziari
Accetti la politica del sito e le condizioni d’uso
ciao ragazzi
qual è il codice per avere una password di protezione per EA
ed è possibile avere il nostro EA che lavora nel server fx interbancario
qualsiasi aiuto reg questo è apprezzato
ciao
shwetha