Passwortschutz für EA

 

Hallo Leute

wie lautet der Code, um einen Passwortschutz für EA zu haben?

und ist es möglich, unsere EA arbeiten in interbank fx Server haben

jede Hilfe ist willkommen

Auf Wiedersehen

shwetha

 
shwetha:
Hallo Leute

Wie lautet der Code, um einen Passwortschutz für EA zu haben?

und ist es möglich, dass unser EA auf dem Interbank-FX-Server funktioniert?

Jede Hilfe ist willkommen

Auf Wiedersehen

shwetha

Hallo Shwetha,

sehr einfach, mein Freund!

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);

....

}

Dann kompilieren Sie den EA und ENJOY

 
Mohammed:
Hallo Shwetha,

sehr einfach, mein Freund!

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);

....

}
Dann kompiliere den EA und GENIEßE

Übrigens, warum wollen Sie Ihren EA schützen? Sind wir nicht hier, um unser Wissen zu teilen?

 

Fehler anzeigen

Hallo Mohammed

Vielen Dank für die Antwort, aber wenn ich kompiliert seine zeigt die folgenden Fehler

'{' - Ausdruck im globalen Bereich nicht erlaubt

'\end_of_program' - endende Klammer '}' erwartet

Ich warte auf Ihre Antwort

Auf Wiedersehen

shwetha

 
shwetha:
Hallo Mohammed

Vielen Dank für die Antwort, aber wenn ich kompiliert seine zeigt die folgenden Fehler

'{' - Ausdruck im globalen Bereich nicht erlaubt

'\end_of_program' - endende Klammer '}' erwartet

Ich warte auf Ihre Antwort

Auf Wiedersehen

shwetha

shwetha,

Es war nur eine Idee, wie der Code geschrieben werden muss.

Nun, der Code sollte so sein (Angewandt auf den Lehr-EA von 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);

}

//+------------------------------------------------------------------+
 

Warum?

Sie haben mir noch nicht geantwortet ; was wollen Sie, um die EA zu schützen? Sind wir nicht hier, um unser Wissen zu teilen und uns gegenseitig zu helfen? (Erinnern Sie sich, dass ich einen kostenlosen EA von Coders Guru verwendet habe, um Ihnen meinen kostenlosen Code zu zeigen) ?

 

ist auch möglich Trial EA mit Metatrader Build Version :

EA läuft nur auf Metatrader Build Version 190 !

wenn MT Build != 190 dann EA löschen !

--

 

Oder wenn Sie ein IB sind und ein System für neue Konten anbieten, können Sie das System an Ihr IB-Konto binden. Der neue Händler wird in der Lage sein, das System auf seinem Konto mit Ihnen nur zu verwenden. So sind Sie davor geschützt, dass er es auf Konten einsetzt, die Ihnen keine Provisionen einbringen.

Ich frage auch, warum PassWord? Es wird einen Unterschied machen, wie man den Code schützt.

Der CockeyedCowboy

 

mein Build 191

meine Meta Trader Version ist 4 build191

 

Nun, es gibt Hunderte von Methoden, um Ihren EA zu schützen:

1- Sie können den von mir vorgeschlagenen Code verwenden (hart kodiertes Passwort).

2- Sie können einen Algorithmus machen etwas zu sammeln und vergleichen Sie es mit dem Passwort. (Zum Beispiel: die Kontomarge x Datum des Kaufs / 100).

3- Sie können eine DLL erstellen und mit dem EA ausliefern, die das Passwort verwaltet (sie kann sich mit Ihrer Website verbinden und das Passwort abrufen).

4- Sie können den EA mit der Kontonummer des Benutzers verknüpfen. Sie bitten ihn per E-Mail, Ihnen die Kontonummer mitzuteilen, die Sie dann in den EA einfügen, kompilieren und die kompilierte Version an den Benutzer senden.

5- Sie können den EA nur mit einer bestimmten MT-Version arbeiten lassen.

6- Sie können die Anzahl der Durchläufe des EAs begrenzen.

7- Sie können die Tage begrenzen, an denen der EA verwendet wird.

8- Sie können den EA kostenlos weitergeben und den Benutzer bitten, Ihnen zu spenden, wenn er ihn mag. REOMMENDED

 

Hallo

Mohammed:
Sie haben mir noch nicht geantwortet ; warum wollen Sie den EA schützen? Sind wir nicht hier, um das Wissen zu teilen und uns gegenseitig zu helfen? (Erinnern Sie sich, dass ich einen kostenlosen EA von Coders Guru verwendet habe, um Ihnen meinen kostenlosen Code zu zeigen) ?

hallo mohammed

ich benötige einen Passwortschutz, falls ich meinen EA auf den Server des Brokers laden möchte. nicht, dass ich nicht mit dem Forum teilen möchte. ich hoffe, dass es jetzt klar ist.

tschüss

danke

shwetha

Grund der Beschwerde: