Forex Community Place

Dapatkan hingga
$50000
karena mengundang teman
untuk memperoleh Bonus StartUp
dari InstaForex
Tidak perlu investasi!
Mulai trading tanpa
risiko dan investasi
Dengan Bonus Permulaan 1000$
Dapatkan bonus
55%
ke akun anda!
Page 23 of 23
FirstFirst ... 13 21 22 23
Results 221 to 227 of 227

Thread: How to protect ea

  1. #221
    Poster Honorer
    Kesepian
     
    eddyhendra1 is a jewel in the rough eddyhendra1 is a jewel in the rough eddyhendra1 is a jewel in the rough eddyhendra1's Avatar
    Join Date
    Nov 2012
    Location
    borneo
    Posts
    1,864
    Accumulated bonus
    230 USD (What is this?)
    Thanks
    692
    Thanked 295 Times in 273 Posts
    Quote Originally Posted by dedialifx     
    Spoiler Spoiler:
    saya ada contoh EA
    cara selipin kode2 protect EA dimana ya... sya test di bawah int start kok errror teruss

    mohon pencerahannya para master



    //+------------------------------------------------------------------+
    //| Three moving averages EA |
    //| Copyright © 2008, TradingSytemForex |
    //| http://www.tradingsystemforex.com |
    //+------------------------------------------------------------------+

    #property copyright "Copyright © 2008, TradingSytemForex"
    #property link "http://www.tradingsystemforex.com"

    #define OrSt "Three moving averages EA"

    extern string IS="---------------- Indicator Settings";
    extern double Short_Period=5;
    extern double Middle_Period=15;
    extern double Long_Period=30;
    extern double Mode_MA=0; //0=simple, 1=exponential, 2=smoothed, 3=linea weighted
    extern string LM="---------------- Lot Management";
    extern double Lots=0.1;
    extern bool MM=false; //money management
    extern double Risk=10; //risk in percentage
    extern string TSTB="---------------- TP SL TS BE";
    bool RealSL_Enabled=false;
    int RealSL=5; //stop loss under 15 p?ps
    bool RealTP_Enabled=false;
    int RealTP=10; //take profit under 10 p?ps
    extern int SL=0; //stop loss
    extern int TP=0; //take profit
    extern int TS=0; //trailing stop
    extern int TS_Step=1; //trailing stop step
    extern int BE=0; //breakeven
    extern string EXT="---------------- Extras";
    extern bool Reverse=false;
    extern bool Add_Positions=true; //positions cumulated
    extern int MaxOrders=100; //maximum number of orders
    extern int Magic=0;

    int Slip=3;static int TL=0;double MML=0;

    // expert start function
    int start(){int j=0,limit=1;double BV=0,SV=0;BV=0;SV=0;double SMA1a,SMA1b,SMA2a,SMA2b,SMA3a,SMA3b;
    if(CntO(OP_BUY,Magic)>0) TL=1;if(CntO(OP_SELL,Magic)>0) TL=-1;for(int i=1;i<=limit;i++){

    SMA1a=iMA(Symbol(),0,Short_Period,0,Mode_MA,PRICE_ CLOSE,i+1);
    SMA1b=iMA(Symbol(),0,Short_Period,0,Mode_MA,PRICE_ CLOSE,i);
    SMA2a=iMA(Symbol(),0,Middle_Period,0,Mode_MA,PRICE _CLOSE,i+1);
    SMA2b=iMA(Symbol(),0,Middle_Period,0,Mode_MA,PRICE _CLOSE,i);
    SMA3a=iMA(Symbol(),0,Long_Period,0,Mode_MA,PRICE_C LOSE,i+1);
    SMA3b=iMA(Symbol(),0,Long_Period,0,Mode_MA,PRICE_C LOSE,i);

    if((SMA1a<SMA3a && SMA1b>SMA3b)||(SMA1a<SMA2a && SMA1b>SMA2b && SMA2b>SMA3b)){if(Reverse) SV=1; else BV=1; break;}
    if((SMA1a>SMA3a && SMA1b<SMA3b)||(SMA1a>SMA2a && SMA1b<SMA2b && SMA2b<SMA3b)){if(Reverse) BV=1; else SV=1; break;}}

    // expert money management
    if(MM){if(Risk<0.1 || Risk>100) {Comment("Invalid Risk Value."); return(0);}
    else {MML=MathFloor((AccountFreeMargin() *AccountLeverage()*Risk*Point*100)/(Ask*MarketInfo(Symbol(),MODE_LOTSIZE)*MarketInfo( Symbol(),MODE_MINLOT )))*MarketInfo(Symbol(),MODE_MINLOT );}}
    if(MM==false){MML=Lots;}

    // expert init positions
    int cnt=0,OP=0,OS=0,OB=0,CS=0,CB=0;OP=0;for(cnt=0; cnt<OrdersTotal();cnt++) {OrderSelect(cnt, SELECT_BY_POS, MODE_TRADES);
    if((OrderType()==OP_SELL || OrderType()==OP_BUY) && OrderSymbol()==Symbol() && ((OrderMagicNumber()==Magic) || Magic==0)) OP=OP+1;}
    if(OP>=1){OS=0; OB=0;}OB=0;OS=0;CB=0;CS=0;

    // expert conditions to open position
    if(SV>0){OS=1;OB=0;}if(BV>0){OB=1;OS=0;}

    // expert conditions to close position
    if((SV>0) || (RealSL_Enabled && (OrderOpenPrice()-Bid)/Point>=RealSL)||(RealTP_Enabled && (Ask-OrderOpenPrice())/Point>=RealTP)){CB=1;}
    if((BV>0) || (RealSL_Enabled && (Ask-OrderOpenPrice())/Point>=RealSL)||(RealTP_Enabled && (OrderOpenPrice()-Bid)/Point>=RealTP)){CS=1;}
    for(cnt=0;cnt<OrdersTotal();cnt++){OrderSelect(cnt ,SELECT_BY_POS,MODE_TRADES);
    if(OrderType()==OP_BUY && OrderSymbol()==Symbol() && ((OrderMagicNumber()==Magic) || Magic==0)){if (CB==1){OrderClose(OrderTicket(),OrderLots(),Bid,S lip,Red); return(0);}}
    if(OrderType()==OP_SELL && OrderSymbol()==Symbol() && ((OrderMagicNumber()==Magic) || Magic==0)){
    if(CS==1){OrderClose(OrderTicket(),OrderLots(),Ask ,Slip,Red);return(0);}}}double SLI=0,TPI=0;int TK=0;

    // expert open position value
    if((AddP() && Add_Positions && OP<=MaxOrders) || (OP==0 && !Add_Positions)) {
    if(OS==1){if (TP==0) TPI=0; else TPI=Bid-TP*Point;if (SL==0) SLI=0; else SLI=Bid+SL*Point;TK=OrderSend(Symbol(),OP_SELL,MML ,Bid,Slip,SLI,TPI,OrSt,Magic,0,Red);OS=0;return(0) ;}
    if(OB==1){if(TP==0) TPI=0; else TPI=Ask+TP*Point;if(SL==0) SLI=0; else SLI=Ask-SL*Point;TK=OrderSend(Symbol(),OP_BUY,MML,Ask,Slip ,SLI,TPI,OrSt,Magic,0,Lime);OB=0; return(0);}}
    for(j=0;j<OrdersTotal();j++){if(OrderSelect(j,SELE CT_BY_POS, MODE_TRADES)){if (OrderSymbol()==Symbol() && ((OrderMagicNumber()==Magic) || Magic==0)) {TrP();}}}return(0);}

    // expert number of orders
    int CntO(int Type,int Magic){int _CntO;_CntO=0;
    for(int j=0;j<OrdersTotal();j++){OrderSelect(j, SELECT_BY_POS, MODE_TRADES);if(OrderSymbol()==Symbol()) {if((OrderType()==Type && (OrderMagicNumber()==Magic) || Magic==0)) _CntO++;}}return(_CntO);}

    // expert trailing stop
    void TrP(){double pb,pa,pp;pp=MarketInfo(OrderSymbol(),MODE_POINT);i f (OrderType()==OP_BUY){pb=MarketInfo(OrderSymbol(), MODE_BID);

    //expert breakeven
    if(BE>0){if((pb-OrderOpenPrice())>BE*pp){if((OrderStopLoss()-OrderOpenPrice())<0){ModSL(OrderOpenPrice()+0*pp); }}}
    if(TS>0){if((pb-OrderOpenPrice())>TS*pp){if(OrderStopLoss()<pb-(TS+TS_Step-1)*pp){ModSL(pb-TS*pp);return;}}}}
    if(OrderType()==OP_SELL){pa=MarketInfo(OrderSymbol (),MODE_ASK);if(BE>0){if((OrderOpenPrice()-pa)>BE*pp){if((OrderOpenPrice()-OrderStopLoss())<0){ModSL(OrderOpenPrice()-0*pp);}}}
    if (TS>0){if (OrderOpenPrice()-pa>TS*pp){if (OrderStopLoss()>pa+(TS+TS_Step-1)*pp || OrderStopLoss()==0){ModSL(pa+TS*pp);return;}}}}}

    //expert stoploss
    void ModSL(double ldSL){bool fm;fm=OrderModify(OrderTicket(),OrderOpenPrice(),l dSL,OrderTakeProfit(),0,CLR_NONE);}

    //expert add positions function
    bool AddP(){int _num=0; int _ot=0;
    for (int j=0;j<OrdersTotal();j++){if(OrderSelect(j,SELECT_B Y_POS)==true && OrderSymbol()==Symbol() && OrderType()<3 && ((OrderMagicNumber()==Magic) || Magic==0)) {
    _num++;if(OrderOpenTime()>_ot) _ot=OrderOpenTime();}}
    if(_num==0) return(true);if(_num>0 && ((Time[0]-_ot))>0) return(true);else return(false);}
    nah ntu gan...ane coba jg error pas di compile.liat komen udah pada panjang2 kirain udah pada berhasil semua...
    udah coba paste diatas... dibawah... ditengah...haslnya tetap error.nunggu yg ngasih pencerahan deh
    hidup diawali dgn huruf B (birth) dan diakhiri dgn huruf D (die),diantara itu ada huruf C (choice),life is simple,make ur choice and never regret it

  2. #222
    Anggota
    ----
     
    ironedaspen is on a distinguished road ironedaspen's Avatar
    Join Date
    Nov 2014
    Location
    selong
    Posts
    196
    Accumulated bonus
    36 USD (What is this?)
    Thanks
    3
    Thanked 22 Times in 16 Posts
    Quote Originally Posted by eddyhendra1     
    nah ntu gan...ane coba jg error pas di compile.liat komen udah pada panjang2 kirain udah pada berhasil semua...
    udah coba paste diatas... dibawah... ditengah...haslnya tetap error.nunggu yg ngasih pencerahan deh
    untuk membuat password taruh kode di bawah int start


    if (password != "indo.mt5") //change to the password you give the user!
    {
    Alert ("Wrong password!");
    return (0);
    }

    dan untuk kode " extern string Please_Enter_Password = "0"; " taruh di input mode , ganti " Please_Enter_Password " menjadi " Password " atau yang lain asalkan sesuai dengan parameter yang di taruh di bawah int start..

  3. #223
    Newbie
    ----
     
    pomenkomputer is an unknown quantity at this point pomenkomputer's Avatar
    Join Date
    Aug 2012
    Location
    Malaysia
    Posts
    47
    Accumulated bonus
    13 USD (What is this?)
    Thanks
    0
    Thanked 8 Times in 3 Posts
    Quote Originally Posted by haizen     
    HOW TO PROTECT EA

    Mohon Ijin sama momod buat newbie buka thread ini. Kalau di rasa tidak bermanfaat di hapus saja.

    Nah kita mulai saja, banyak yang telah berhasil membuat EA yang profitable dan di cari para trader hehe... Nah disini saya ingin kita saling share bagaimana sih cara kita memprotect EA kita agar EA kita yang profitable itu tidak di salah gunakan. Karena banyak modus dengan hanya menggunakan decompiler EA, ea kita di rubah dan diperjual belikan diluar sepengetahuan kita
    Banyak dari kita yang sudah susah payah membuat EA dan pada akhirnya EA kita di bajak dan disalah gunakan. Nah di sini saya coba memberikan beberapa informasi tentang cara memprotect ea kita semoga bisa bermanfaat bagi master2 sekalian.. Dan semoga ada kesediaan juga berbagi bagaimana cara memprotect ea kita hehe....

    Ada Beberapa Ide dalam memprotect EA:

    1. Password protection code:

    Metode ini banyak di gunakan untuk memprotect EA. Cara kerjanya dengan memberikan password untuk melock ea kita.

    Spoiler Spoiler:
    Code ini dapat digunakan:

    int start()
    {
    extern string Please_Enter_Password = "0";
    // your code here....
    int start()
    {
    if (password != "indo.mt5") //change to the password you give the user!
    {
    Alert ("Wrong password!");
    return (0);
    }
    // your code here....
    }

    Pada code diatas password yang digunakan adalah "indo.mt5" dimana sudah di tuliskan di dalam MQL4 file dan kita hanya tinggal mengcompile program kita.


    2. Trial period protection:

    Memberikan batas waktu bagi user sehingga bila mencapai limit waktu penggunaan maka EA tidak dapat berfungsi lagi.

    Spoiler Spoiler:

    int start()
    {
    string expire_date = "2006.31.06"; //<-- hard coded datetime
    datetime e_d = StrToTime(expire_date);

    if (CurTime() >= e_d)
    {
    Alert ("The trial version has been expired!");
    return(0);
    }
    // your normal code!
    return(0);
    }


    3. Limited account number protection:

    Digunakan untuk menglock penggunaan EA pada account tertentu saja.

    Spoiler Spoiler:

    int start()
    {

    int hard_accnt = 11111; //<-- type the user account here before compiling
    int accnt = AccountNumber();

    if (accnt != hard_accnt)
    {
    Alert ("You can not use this account (" + DoubleToStr(accnt,0) + ") with this program!");
    return(0);
    }
    // your normal code!
    return(0);
    }


    4. Limited account type protection:

    Cara ini membatasi user hanya pada demo account saja.

    Spoiler Spoiler:

    int start()
    {

    bool demo_account = IsDemo();

    if (!demo_account)
    {
    Alert ("You can not use the program with a real account!");
    return(0);
    }
    // your normal code!
    return(0);
    }


    5. DLL protection:

    Metode ini dengan menuliskan DLL dan di export ke dalam MQL4 kita.

    Credit to : http://www.metatrader.info/node/132

    Semoga yang lain dapat berbagi cara memprotect ea kita yang lain.

    Bagaimana pula untuk protect ea menggunakan nama akaun atau sebahagian nama sahaja?

    Contohnya nama akaun : Ahmad Albab Bin Ali

    Kita menetapkan supaya ea akan mencari perkataan 'Albab/albab' tanpa pedulikan huruf besar atau huruf kecil.

    Ea hanya mencari perkataan 'Albab' untuk verify.

  4. #224
    Poster Setia
    Tiba-tiba
     
    Anti Gengsi has a reputation beyond repute Anti Gengsi has a reputation beyond repute Anti Gengsi has a reputation beyond repute Anti Gengsi has a reputation beyond repute Anti Gengsi has a reputation beyond repute Anti Gengsi has a reputation beyond repute Anti Gengsi has a reputation beyond repute Anti Gengsi has a reputation beyond repute Anti Gengsi has a reputation beyond repute Anti Gengsi has a reputation beyond repute Anti Gengsi has a reputation beyond repute Anti Gengsi's Avatar
    Join Date
    Dec 2016
    Location
    Ganti Gas LPG
    Posts
    2,670
    Accumulated bonus
    1852 USD (What is this?)
    Saya bertemu tamu
    1 (detail lebih lanjut)
    Thanks
    1,601
    Thanked 6,674 Times in 2,650 Posts
    Quote Originally Posted by pomenkomputer     
    Bagaimana pula untuk protect ea menggunakan nama akaun atau sebahagian nama sahaja?

    Contohnya nama akaun : Ahmad Albab Bin Ali

    Kita menetapkan supaya ea akan mencari perkataan 'Albab/albab' tanpa pedulikan huruf besar atau huruf kecil.

    Ea hanya mencari perkataan 'Albab' untuk verify.
    Coba begini bukan?

    Spoiler Spoiler:
    string NamaAkun = "Ahmad Albab Bin Ali";
    {
    if( AccountName() != NamaAkun)
    { Alert ("Hayo Bukan Robot Anda Ya ?? Hohohohohoho "); return (0);}
    }
    Last edited by Anti Gengsi; 09-30-2017 at 23:11.

  5. #225
    Orang Asing
    ----
     
    eful is an unknown quantity at this point eful's Avatar
    Join Date
    Aug 2017
    Location
    In The Matrix
    Posts
    10
    Accumulated bonus
    6 USD (What is this?)
    Thanks
    3
    Thanked 1 Time in 1 Post
    Saya ada codenya, nanti saya coba kirim...

    ---------- Post added at 01:49 AM ---------- Previous post was at 01:21 AM ----------

    Quote Originally Posted by pomenkomputer     
    Bagaimana pula untuk protect ea menggunakan nama akaun atau sebahagian nama sahaja?

    Contohnya nama akaun : Ahmad Albab Bin Ali

    Kita menetapkan supaya ea akan mencari perkataan 'Albab/albab' tanpa pedulikan huruf besar atau huruf kecil.

    Ea hanya mencari perkataan 'Albab' untuk verify.
    ni gan kodenya...

    Spoiler Spoiler:

    //on tick
    if(!cek_nama("albab"))return(0);

    //bikin fungsi dibawah
    bool cek_nama(string data){
    bool cek=false;
    string nama=AccountName();

    StringToUpper(nama);
    StringToUpper(data);
    if(StringFind(nama,data,0)>=0)cek=true;

    return(cek);
    }

  6. #226
    Poster Setia
    Tiba-tiba
     
    Anti Gengsi has a reputation beyond repute Anti Gengsi has a reputation beyond repute Anti Gengsi has a reputation beyond repute Anti Gengsi has a reputation beyond repute Anti Gengsi has a reputation beyond repute Anti Gengsi has a reputation beyond repute Anti Gengsi has a reputation beyond repute Anti Gengsi has a reputation beyond repute Anti Gengsi has a reputation beyond repute Anti Gengsi has a reputation beyond repute Anti Gengsi has a reputation beyond repute Anti Gengsi's Avatar
    Join Date
    Dec 2016
    Location
    Ganti Gas LPG
    Posts
    2,670
    Accumulated bonus
    1852 USD (What is this?)
    Saya bertemu tamu
    1 (detail lebih lanjut)
    Thanks
    1,601
    Thanked 6,674 Times in 2,650 Posts
    Quote Originally Posted by Anti Gengsi     
    Coba begini bukan?

    Spoiler Spoiler:
    string NamaAkun = "Ahmad Albab Bin Ali";
    {
    if( AccountName() != NamaAkun)
    { Alert ("Hayo Bukan Robot Anda Ya ?? Hohohohohoho "); return (0);}
    }
    Klo ngga seperti ini om lebih extrim lagi

    Spoiler Spoiler:
    string NamaAkun = "Ahmad Albab Bin Ali";
    {
    if( AccountName() != NamaAkun)
    { Alert ("Hayo Bukan Robot Anda Ya ? Awas balance anda akan habis hohohoho "); Close All();}
    }

  7. <a href="">Forex Portal MT5</a>
  8. #227
    Poster Honorer
    Riang
     
    rachmandiksi has a reputation beyond repute rachmandiksi has a reputation beyond repute rachmandiksi has a reputation beyond repute rachmandiksi has a reputation beyond repute rachmandiksi has a reputation beyond repute rachmandiksi has a reputation beyond repute rachmandiksi has a reputation beyond repute rachmandiksi has a reputation beyond repute rachmandiksi has a reputation beyond repute rachmandiksi has a reputation beyond repute rachmandiksi has a reputation beyond repute rachmandiksi's Avatar
    Join Date
    Nov 2011
    Location
    Sumenep
    Posts
    1,939
    Accumulated bonus
    563 USD (What is this?)
    Thanks
    2,200
    Thanked 2,355 Times in 1,039 Posts
    Quote Originally Posted by haizen     
    HOW TO PROTECT EA

    Mohon Ijin sama momod buat newbie buka thread ini. Kalau di rasa tidak bermanfaat di hapus saja.

    Nah kita mulai saja, banyak yang telah berhasil membuat EA yang profitable dan di cari para trader hehe... Nah disini saya ingin kita saling share bagaimana sih cara kita memprotect EA kita agar EA kita yang profitable itu tidak di salah gunakan. Karena banyak modus dengan hanya menggunakan decompiler EA, ea kita di rubah dan diperjual belikan diluar sepengetahuan kita
    Banyak dari kita yang sudah susah payah membuat EA dan pada akhirnya EA kita di bajak dan disalah gunakan. Nah di sini saya coba memberikan beberapa informasi tentang cara memprotect ea kita semoga bisa bermanfaat bagi master2 sekalian.. Dan semoga ada kesediaan juga berbagi bagaimana cara memprotect ea kita hehe....

    Ada Beberapa Ide dalam memprotect EA:

    1. Password protection code:

    Metode ini banyak di gunakan untuk memprotect EA. Cara kerjanya dengan memberikan password untuk melock ea kita.

    Spoiler Spoiler:
    Code ini dapat digunakan:

    int start()
    {
    extern string Please_Enter_Password = "0";
    // your code here....
    int start()
    {
    if (password != "indo.mt5") //change to the password you give the user!
    {
    Alert ("Wrong password!");
    return (0);
    }
    // your code here....
    }

    Pada code diatas password yang digunakan adalah "indo.mt5" dimana sudah di tuliskan di dalam MQL4 file dan kita hanya tinggal mengcompile program kita.


    2. Trial period protection:

    Memberikan batas waktu bagi user sehingga bila mencapai limit waktu penggunaan maka EA tidak dapat berfungsi lagi.

    Spoiler Spoiler:

    int start()
    {
    string expire_date = "2006.31.06"; //<-- hard coded datetime
    datetime e_d = StrToTime(expire_date);

    if (CurTime() >= e_d)
    {
    Alert ("The trial version has been expired!");
    return(0);
    }
    // your normal code!
    return(0);
    }


    3. Limited account number protection:

    Digunakan untuk menglock penggunaan EA pada account tertentu saja.

    Spoiler Spoiler:

    int start()
    {

    int hard_accnt = 11111; //<-- type the user account here before compiling
    int accnt = AccountNumber();

    if (accnt != hard_accnt)
    {
    Alert ("You can not use this account (" + DoubleToStr(accnt,0) + ") with this program!");
    return(0);
    }
    // your normal code!
    return(0);
    }


    4. Limited account type protection:

    Cara ini membatasi user hanya pada demo account saja.

    Spoiler Spoiler:

    int start()
    {

    bool demo_account = IsDemo();

    if (!demo_account)
    {
    Alert ("You can not use the program with a real account!");
    return(0);
    }
    // your normal code!
    return(0);
    }


    5. DLL protection:

    Metode ini dengan menuliskan DLL dan di export ke dalam MQL4 kita.

    Credit to : http://www.metatrader.info/node/132

    Semoga yang lain dapat berbagi cara memprotect ea kita yang lain.
    Wah good share nich om haizen, mohon ijin buat copas lumayan buat tambah-tambah script coding MQL4. Karena dari thread anda diatas untuk cara protect menggunakan nomor akun dan tanggal sudah pernah saya coba namun untuk cara lainnya perlu saya uji lebih lanjut demi kenyamanan dan kemaslahatan EA saya. Sekali lagi terima kasih sudah berbagi coding dimari.

    Orang sukses akan mengambil keuntungan dari kesalahan dan mencoba lagi dengan cara yang berbeda
    karena Saat kamu memutuskan tuk tetap berjuang dan berdoa, maka Allah akan mengiringi jalanmu.
    Never Give Up!

    Temukan saya di telegram :TheXpProject

Page 23 of 23
FirstFirst ... 13 21 22 23

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts