• Welcome back! Thank you for being a part of this Traders Community. Let's discuss and share :)
    Selamat datang kembali! Trimakasih telah menjadi bagian dari Komunitas Trader ini. Mari berdiskusi dan berbagi :)

Tutorial Buat EA Mudah Rame-rame seru (by WAME)

codebase OrderSend
  • Yasir Arafat

    Member
    Credits
    0
    Disini ane mau kasih tips bagi para programer nubie yang memang sedang dalam tahap pembelajaran mengenai seputar coding MQL.

    Oke tanpa basa basi langsung aja ke POKOK PEMBAHASAN.
    sesuai dengan judul kita akan bahas cara-cara coding mudah yang biasa dipakai para programer MQL, berikut penjelasannya :

    Biasanya para Programer EA sudah punya kumpulan script-script dan koding-koding di database mereka, nah oleh karena itu nanti disini ane akan share kumpulan script-script dan koding-koding yang biasa dipakai.

    PEMBAHASAN 1 ===ORDER===

    pada pembahasan ini kita akan bahas seputar order, kalau ane order disini ane bagi menjadi 4 macam :
    1. Order langsung ( Buy / Sell )
    2. Order Tidak Langsung ( Pending Buy / Sell )
    3. Order Perubah ( Modify )
    4. Order Penutup ( Close / Delete )

    berikut codebasenya.
    Paste Code ini didalam OnInit
    Code:
       if(Digits==3||Digits==5){pt=Point*10;}else {pt=Point*1;}

    Paste Code ini dbagian paling bawah koding
    Code:
    double pt;
    void myOrderSend(double myAsk,double myBid,string myPair,int StepOP,double ManualPrice,int OPType,double Lots,double myStopLoss,double myTakeProfit,string myCom){
       double myPrice=0,mySL=0,myTP=0,ticket=0;
       if(OPType==0){myPrice=myAsk;//Buy
       if(StopLoss>0){mySL=myPrice-StopLoss*pt;}else{mySL=0;}
       if(TakeProfit>0){myTP=myPrice+TakeProfit*pt;}else{myTP=0;}}else
       if(OPType==1){myPrice=myBid;//Sell
       if(StopLoss>0){mySL=myPrice+StopLoss*pt;}else{mySL=0;}
       if(TakeProfit>0){myTP=myPrice-TakeProfit*pt;}else{myTP=0;}}else
       if(OPType==2){if(ManualPrice==0)myPrice=myAsk-StepOP*pt;else myPrice=ManualPrice;//BuyLimit
       if(StopLoss>0){mySL=myPrice-StopLoss*pt;}else{mySL=0;}
       if(TakeProfit>0){myTP=myPrice+TakeProfit*pt;}else{myTP=0;}}else
       if(OPType==3){if(ManualPrice==0)myPrice=myBid+StepOP*pt;else myPrice=ManualPrice;//SellLimit
       if(StopLoss>0){mySL=myPrice-StopLoss*pt;}else{mySL=0;}
       if(TakeProfit>0){myTP=myPrice+TakeProfit*pt;}else{myTP=0;}}else
       if(OPType==4){if(ManualPrice==0)myPrice=myAsk+StepOP*pt;else myPrice=ManualPrice;//BuyStop
       if(StopLoss>0){mySL=myPrice-StopLoss*pt;}else{mySL=0;}
       if(TakeProfit>0){myTP=myPrice+TakeProfit*pt;}else{myTP=0;}}else
       if(OPType==5){if(ManualPrice==0)myPrice=myBid-StepOP*pt;else myPrice=ManualPrice;//SellStop
       if(StopLoss>0){mySL=myPrice-StopLoss*pt;}else{mySL=0;}
       if(TakeProfit>0){myTP=myPrice+TakeProfit*pt;}else{myTP=0;}}
       ticket=OrderSend(myPair,OPType,Lots,myPrice,Slippage,mySL,myTP,myCom,Magic,0,clrNONE);}

    Penjelasan codebase :
    2. Saat ingin melakukan order tinggal panggil aja dengan mengetikkan myOrderSend(isi parameternya)
    3. Semua nilai sudah dalam ukuran satuan Pips, jadi jika kita mau input stoploss 20 pips dari harga order ya tinggal diisi aja parameter Stoplossnya dengan 20.
    4. Codebase diatas sudah mencakup banyak kebutuhan dari ordersend.

    oke sekian dulu pembahasannya nanti dilanjut lagi.
    jika ada yang mau ditanyakan silahkan ditanyakan disini atau langsung hubungi ane langsung juga bisa, welcome kapan aja bagi yang mau bertanya seputar coding simple.
     
    Back
    Top