• 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 :)
General chit-chat
Help Users
  • No one is chatting at the moment.

      Answered Membuat Fungsi Hidden Trailing Stop EA MT4

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

      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.
       
      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
       

      Attachments

      baru blajar oprek, gmna solusinya digambar ini master2
       

      Attachments

      • Untitled.png
        Untitled.png
        260.6 KB · Views: 156
      • Untitled1.png
        Untitled1.png
        185.9 KB · Views: 109
      • Untitled2.png
        Untitled2.png
        201 KB · Views: 98
      • Untitled3.png
        Untitled3.png
        224.1 KB · Views: 98
      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.
       
      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.
       
      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
       
      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)
       
      wow, proyeknya sadis juga ya. 73 pair butuh latency yagn bener2 rendah tuh mas
      tapi tar aja dah kalo mas dah gak sibuk
       
      Assalamualaikum,

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

      Terimakasih
      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
       
      baru blajar oprek, gmna solusinya digambar ini master2
      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.
       
      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:
       
      Maaf newbie bertanya,gimana mau masukkan hidden tp ts sl dalam ea? Ada yg bisa bantu explain?
      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.
       
      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.
      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
       
      Back
      Top