1. This site uses cookies. By continuing to use this site, you are agreeing to our use of cookies. Learn More.
  2. 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 :)
    Dismiss Notice

Answered Membuat Fungsi Hidden Trailing Stop EA MT4

Discussion in 'Belajar MQL dari Nol' started by funkfunkfunk, 02 Aug 2015.

  1. funkfunkfunk

    funkfunkfunk Member Credit Hunter

    Equity
    Credit
    Ref Point
    Assalamualaikum,

    Adakah mastah yang bisa share fungsi hidden trailing stop untuk EA MT4 ?

    Terimakasih
     
  2. popay

    popay Member Credit Hunter

    Equity
    Credit
    Ref Point
    saya punya begini om
    tinggal di atas kasi

    extern int step = 10;

    Code:
    void trailing()
    {
      double newSL, oldSL, commission = 0.0;
     
      for (int i = 0; i < OrdersTotal(); i++) {
          chkCmd = OrderSelect(i, SELECT_BY_POS, MODE_TRADES);
          if (!chkCmd) continue;
          if (step < MarketInfo(Symbol(), MODE_STOPLEVEL)) step = MathRound(MarketInfo(Symbol(), MODE_STOPLEVEL));
         
          if (OrderSymbol() == Symbol() && OrderMagicNumber() == magicNum) {
           
            if (OrderStopLoss() == 0.0) { oldSL = OrderOpenPrice(); } else { oldSL = OrderStopLoss(); } 
           
            if (OrderCommission() > 0.0) commission = NormalizeDouble((OrderCommission()/OrderLots()*Point), Digits);
           
            if (OrderType() == OP_BUY) {
                if (Bid - (oldSL + commission)> step * Point) {
                  newSL = Bid - commission - (step * Point);
                  if (newSL > oldSL) {
                      RefreshRates();
                      chkCmd = OrderModify(OrderTicket(), OrderOpenPrice(),
                                        newSL, OrderTakeProfit(), 0, Blue);
                      if (!chkCmd) Print ("Error to modify BUY");
                  }
                }
            }
           
            if (OrderType() == OP_SELL) {
                if ((oldSL - commission) - Ask > step * Point) {
                  newSL = Ask + commission + (step * Point);
                  if (newSL < oldSL) {
                      RefreshRates();
                      chkCmd = OrderModify(OrderTicket(), OrderOpenPrice(),
                                        newSL, OrderTakeProfit(), 0, Pink);
                      if (!chkCmd) Print ("Error to modify SELL");
                  }
                } 
            }
           
          }     
        }
        return;
    }
    mohon koreksi bila salah
     
    • Like Like x 1
  3. funkfunkfunk

    funkfunkfunk Member Credit Hunter

    Equity
    Credit
    Ref Point
    Sepertinya itu bukan hidden trailing stop , setahu saya kalo hidden itu stop loss nya nggak kelihatan ter modify, tahu-tahu kalo kesenggol sama Ask/Bid dia ter-close profit.
     
  4. luwakfx

    luwakfx New Member

    Equity
    Credit
    Ref Point
    biar tidak kelihatan,pakailah warna sesuai background MT4,atau di none-kan...:p:p
     
  5. Amir Syarifudin

    Amir Syarifudin Member Credit Hunter

    Equity
    Credit
    Ref Point
    berhubung tidak ada yang menjawab, ini EA yang ane buat dari EA Waygrow yang ane modif, pake virtual BUYSTOP/SELLSTOP dan virtual TRAILINGSTOP, saat di backtest tidak ada result modify karena modifnya secara virtual/tersembunyi. Untuk perbandingan silahkan BT EA Waygrow dan EA ane ini untuk melihat trailingstop yang terhidden
     

    Attached Files:

    • Like Like x 6
    • Winner Winner x 1
  6. popay

    popay Member Credit Hunter

    Equity
    Credit
    Ref Point
    • Like Like x 2
  7. yadi yadi

    yadi yadi Member Credit Hunter

    Equity
    Credit
    Ref Point
    baru blajar oprek, gmna solusinya digambar ini master2
     

    Attached Files:

  8. Amir Syarifudin

    Amir Syarifudin Member Credit Hunter

    Equity
    Credit
    Ref Point
    deklarasikan dulu suatu variable interger misal: int n;
    lalu
    n=OrderSend....
     
    • Like Like x 1
  9. popay

    popay Member Credit Hunter

    Equity
    Credit
    Ref Point
    kalau saya liat itu warning aja mas yadi yadi
    tapi kalau emang mau ngecek, bisa seperti contoh dari mas Amir Syarifudin atau pakai langsung if
    misal nih
    if (!OrderSelect................) Print ("OrderSelect Error. ", GetLastError());

    Mas Amir Syarifudin lagi ada project gak?
    ane lagi ada ea yang butuh di pres nih. Tapi ane gak punya tandem buat memaksimalkannya.
     
  10. yadi yadi

    yadi yadi Member Credit Hunter

    Equity
    Credit
    Ref Point
    ok trima kasih semuanya
     
  11. Amir Syarifudin

    Amir Syarifudin Member Credit Hunter

    Equity
    Credit
    Ref Point
    popay , iya dong,,, projectnya nggak kelar-kelar nih, membuat EA yang trading disemua pair tapi EAnya hanya dijalankan di satu chart saja disembarang pair, ini sedang forward test, strategynya seperti EA Waygrow tapi akan memonitor pergerakan harga disemua pair dan akan open posisi bila syarat terpenuhi.
     
  12. popay

    popay Member Credit Hunter

    Equity
    Credit
    Ref Point
    wah, lagi ada proyek ya...
    gak berani ganggu dah kalo gitu

    kalo pake ordersend gitu aja emang gak bisa ya?
    biasanya yang make kayak gitu kan ea korelasi
     
  13. Amir Syarifudin

    Amir Syarifudin Member Credit Hunter

    Equity
    Credit
    Ref Point
    nggak apa-apa, kalau ada ea yang mau dioprek saya bisa bantu, tapi nanti setelah tidak sibuk,,,hari ini sampai hari kamis sibuk buat bahan presentasi bos dan besok pagi mau ke jakarta balik hari kamis.

    saya sudah buat ea korelasi tapi selalu loss, ea arbitrase juga sudah buat tapi hampir nggak pernah open posisi dan walaupun open posisi selalu rugi karena spread.
    sejauh ini saya belum ketemu ada EA All in One (misalnya di attach di chart EURUSD tapi tradingnya di 73 pair kalau di tickmill)
     
    • Like Like x 1
  14. popay

    popay Member Credit Hunter

    Equity
    Credit
    Ref Point
    wow, proyeknya sadis juga ya. 73 pair butuh latency yagn bener2 rendah tuh mas
    tapi tar aja dah kalo mas dah gak sibuk
     
  15. Amir Syarifudin

    Amir Syarifudin Member Credit Hunter

    Equity
    Credit
    Ref Point
    nggak pake syarat latency karena trading biasa bukan arbitrase
     
  16. MbahGugel

    MbahGugel New Member

    Equity
    Credit
    Ref Point
    Kalo menurut saya sih begini:
    Langkah pertama kita harus tau dulu bagaimana membuat hidden stoploss
    Langkah kedua setelah tau bagaimana membuat hidden stoploss baru kita tambahkan modifikasi hidden stoploss yang telah kita buat tadi
     
    kalo pengen yang simpel bisa dicompile pake mql4 versi yang lama kalau tidak, ya codingnya harus dirubah karena format penulisannya emang ada sedikit perubahan untuk versi yang baru.
     
  17. yadi yadi

    yadi yadi Member Credit Hunter

    Equity
    Credit
    Ref Point
    bener MbahGugel,ternyata awal blajar pake mql4 versi lama lalu pas ganti ke versi baru rubah lagi :D . oh ya kenapa ketika buat ordersend, EA open posisinya berulang-ulang/terus menerus tiap tiknya ketika suatu sinyal tertentu tercapai. misal ketika ada sinyal tercapai lalu ea melakukan OP,tapi terus membuat OP tiap tiknya, saya maunya 1 OP saja. :lipssealed::tmi:
     
  18. Gegakgempita

    Gegakgempita New Member

    Equity
    Credit
    Ref Point
    Maaf newbie bertanya,gimana mau masukkan hidden tp ts sl dalam ea? Ada yg bisa bantu explain?
     
  19. MbahGugel

    MbahGugel New Member

    Equity
    Credit
    Ref Point
    yang saya tau di mql tidak ada fungsi hidden sl/tp nya tapi kita bisa mengakali.
    Dulu saya pernah bikin hidden sl/tp dengan cara menghitung points, jika jumlah points melebihi batas yang telah kita tentukan maka EA kita perintah untuk mengirimkan OrderClose secara otomatis.

    Tapi jangan senang dulu..
    hanya sekedar masukan:
    walaupun kita sudah menggunakan hidden sl/tp dan EA tersebut kita tradingkan pada akun real di broker nakal, saya rasa broker nakal juga bayak akal, mereka bisa saja menggagalkan OrderClose yang dikirimkan oleh EA tersebut. Seakan-akan jaringan internetnya yang trobel walaupun jaringan internet kita baik2 saja.
     
    • Like Like x 1
  20. rahmadjatayu

    rahmadjatayu Member Credit Hunter

    Equity
    Credit
    Ref Point
    setuju ama agan satu ini,Hiden SL/TP itu adalah perintah close Order.
    saya pernah menggunakan TP in money untuk ea martingale dan hasilnya kacau karna ea close satu per satu,harganya keburu lari bung :D
    jadi yah enakan pake TP bersama
    sekali harga menyentuh TP maka semua Order terclose.
    dan satu lagi masalah hiden TP/SL kita harus selalu terkonek ke server. :D
     

Share This Page