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

Question Mohon bantuan tuk Close ALL Seluruh BUY / Seluruh SELL bila TP $ Tercapai

Discussion in 'Belajar MQL dari Nol' started by resa2410, 05 Sep 2015.

  1. resa2410

    resa2410 Well-Known Member Credit Hunter

    Equity
    Credit
    Ref Point
    Masta2 sekalian, ane mohon bantuannya..

    Ane nemu script tuk close posisi yg profit (yg di eksekusi dengan hot key)... Script ini menutup SELURUH POSISI (baik BUY maupun SELL) yang sudah profit..

    Nah, ane mengharapkan tuk CLOSE ALL BUY atau CLOSE ALL SELL bila target $ tercapai (walau mungkin ada beberapa posisi buy yg minus tapi jika total BUY sdh opit $$ sekian, maka SELURUH BUY ditutup, ini berlaku juga dengan SELL) di PAIR tempat chart dilihat (misal ane sedang buka chart EU, maka yg di eksekusi hanya di pair EU saja)...

    Jadi nantinya, misal hotkey ane pilih
    ALT+B >> Close All Posisi Buy bila posisi sdh opit $$ sekian
    ALT+S >> Close All Posisi SELL bila posisi sdh opit $$ sekian

    Misalnya nanti ane pas buka chart EU, kemudian ane tekan ALT+B, maka SELURUH POSISI BUY di chart EU akan di close bila profit $$ tercapai. Bila tdk dalam posisi profit, maka tdk bisa dieksekusi alias script tdk bekerja.

    Kode script-nya bagaimana dan ditambahkan dimana dalam scirpt ya.. Mohon bantuannya..

    Code:
    #include <stderror.mqh>
    #include <stdlib.mqh>
    //+------------------------------------------------------------------+
    //| script program start function                                    |
    //+------------------------------------------------------------------+
    int start()
    {
      bool closeResult;
      int count_deals_to_close;
      bool started = false;
     
      while(count_deals_to_close != 0 || started==false)
      {
          count_deals_to_close = 0;
          started = true;
         
          for(int pos=OrdersTotal()-1; pos>=0; pos--)
          {     
            if(OrderSelect(pos, SELECT_BY_POS) == false) continue;     
            if(OrderProfit()<=0) continue;   
         
            Print("TryToClose: "+OrderTicket());
            count_deals_to_close++;
               
            closeResult = OrderClose(OrderTicket(), OrderLots(), OrderClosePrice(), MarketInfo(Symbol(), MODE_SPREAD), White);
         
            if(closeResult == false)
            {
              Print("OrderClose failed #"+OrderTicket()+" Err:"+ErrorDescription(GetLastError()));
              Sleep(1000);
            }//if closing failed
            else count_deals_to_close--;
          }//for
      }//while
    
    return(0);
    }
    //+------------------------------------------------------------------+

    Soalnya ane mau coba trading manualan, berdasarkan indi, jadi mungkin ane berkali2 buka OP Buy dan berkali2 juga OP SELL, di banyak pair dan semuanya tdk memakai TP.. Klo di close manual satu persatu posisi satu arah (misalnya seluruh BUY atau seluruh SELL) ane bingung, apakah sdh opit apa belum (total seluruh posisi yg satu arah itu) pada posisi pair yg ane ingin close..

    Jadi sekali lagi, mohon bantuan masta2 disini tuk menambahkan / memodifikasi script itu.. Soalnya ane sudah cari2 di google ga dapet juga.. Mungkin ini bisa jadi script pertama yg bisa close all seluruh posisi yang satu arah bila target profit sudah tercapai dalam 1 pair tempat chart dibuka.. :D
     
  2. humus

    humus Member

    Equity
    Credit
    Ref Point
    tak sundul gan moga ada agan2 yang punya scripnya...sekalian nanti juga ikut nebeng download....:party::party::party:
     
  3. mahoo bar

    mahoo bar Member Credit Hunter

    Equity
    Credit
    Ref Point
    om resa2410 tak coba buat latihan ya...
     
  4. sipoltakrajaminyak

    sipoltakrajaminyak Member Credit Hunter

    Equity
    Credit
    Ref Point
    nyimak juragan walaupun agak membingungkan juga maksudnya juragan seperti apa

    diawal bilang CLOSE ALL BUY atau CLOSE ALL SELL bila target $ tercapai

    ditengah bilangnya
    Jadi nantinya, misal hotkey ane pilih
    ALT+B >> Close All Posisi Buy bila posisi sdh opit $$ sekian
    ALT+S >> Close All Posisi SELL bila posisi sdh opit $$ sekian

    yang awal otomatis, yang tengah manual.
    otomatis apa manual juragan?
     
  5. mahoo bar

    mahoo bar Member Credit Hunter

    Equity
    Credit
    Ref Point
  6. resa2410

    resa2410 Well-Known Member Credit Hunter

    Equity
    Credit
    Ref Point
    Betul kata agan mahoo bar :)
     
  7. Trancexe

    Trancexe Active Member Credit Hunter

    Equity
    Credit
    Ref Point
    coba bisa dibongkar ini ea. ea ini akan close all order jika profit dalam $ dan % bahkan bisa close all kapanpun (tinggal variable close all di set true.. nanti di set false klo mau meneruskan trading lagi)

    langsung pakai ini aja :D
     

    Attached Files:

  8. resa2410

    resa2410 Well-Known Member Credit Hunter

    Equity
    Credit
    Ref Point
    ini bisa close basket tdk gan? artinya close seluruh OP di posisi searah ( misal seluruh OP Buy) spt itu?
     
  9. Trancexe

    Trancexe Active Member Credit Hunter

    Equity
    Credit
    Ref Point
    Wah ga bisa. Rubah logicnya dulu...
    ><
    Gan reza mau coba BTS kah?
     
  10. resa2410

    resa2410 Well-Known Member Credit Hunter

    Equity
    Credit
    Ref Point
    wah, BTS itu apaan kah?

    EDITED
    Ah, mungkin maksudnya : Basket Trading System ya... Kirain Bad Trading System... :rofl:
     
    Last edited: 20 Nov 2015
  11. Trancexe

    Trancexe Active Member Credit Hunter

    Equity
    Credit
    Ref Point
    Basket trading system... Main di 14 pair.. 7 pair buy 7 pair sell.. Cuma ane masih baca2 gmn open en exitnya
     
  12. resa2410

    resa2410 Well-Known Member Credit Hunter

    Equity
    Credit
    Ref Point
    Iya gan, bisa jadi spt itu.. Intinya sih klo dah ada yg memenuhi syarat OP di pair mana aja, akan OP, baik buy maupun sell.. Nah close-nya itu yg susah klo banyak OP buy dan OP sell, di berbagai pair.. :D
     
  13. Trancexe

    Trancexe Active Member Credit Hunter

    Equity
    Credit
    Ref Point
    Hahaha iya juga ya.
    Ane ikut nunggu.. Siapa tau ada master merapat
     
  14. mahoo bar

    mahoo bar Member Credit Hunter

    Equity
    Credit
    Ref Point
    om resa2410 silahkan dites, udah sesuai apa belum
    Code:
    void OnStart()
      {
    //---
      double Target = 5;
      if(Profit(0)>= Target) closeall(0); else Alert ("Target Belum Tercapai");
    
      }
    //+------------------------------------------------------------------+
    //Fungsi Menghitung Jumlah Profit Buy only ato Sell only
    double  Profit(int myCmd=0){
      double result = 0;
      for(int i=OrdersTotal()-1; i>=0; i--){
          if(!OrderSelect(i,SELECT_BY_POS)) continue;
          if(OrderSymbol()!=Symbol()) continue;
          if(OrderType()!= myCmd) continue;
          result+=OrderProfit();
      }
    return(result); }
    
    //+------------------------------------------------------------------+
    //Fungsi Perintah Close Order
    void closeall(int myCmd=0){
        int ticket = 0;
        for (int i = OrdersTotal() - 1; i >= 0; i--) {
          ticket = OrderSelect(i, SELECT_BY_POS, MODE_TRADES);
          if(OrderSymbol()!=Symbol()) continue;
          if(OrderType()!= myCmd) continue;
         
          switch(myCmd){
          case 0:
             ticket = OrderClose(OrderTicket(), OrderLots(), Bid, 3, CLR_NONE);
             break;
          case 1:
             ticket = OrderClose(OrderTicket(), OrderLots(), Ask, 3, CLR_NONE); 
             break;
          }
       }
    }
    
     
    • Like Like x 1
  15. resa2410

    resa2410 Well-Known Member Credit Hunter

    Equity
    Credit
    Ref Point
    Makasih gan.. ntar ane coba pas FT.. soalnya ga bisa BT klo script.. :D

    O'ya, itu target-nya udah dalam bentuk $ ya gan? Di isi = 5 ya? Dan dia tdk akan close order lain yg chart-nya ga tampil khan gan?
     
  16. mahoo bar

    mahoo bar Member Credit Hunter

    Equity
    Credit
    Ref Point
    semalam belum sempat tes juga om, target itu ane isi ngawur tinggal diganti aja, ini untuk buy aja ya om kl untuk sell angka 0 nya diganti 1, alurnya pertama cek target dulu baru kalo udah memenuhi syarat baru eksekusi perintah close order,

    untuk pertanyaan ini ya dijalankan dipair dimana script dipasang...tp jadi muncul pertanyaan nih om emang ada rencana disanding dengan EA ya om dengan pair yg sama... kalo iya filternya mesti ditambah lagi
     
  17. resa2410

    resa2410 Well-Known Member Credit Hunter

    Equity
    Credit
    Ref Point
    Ah.. iya juga ya gan.. Klo misalnya di pair yg sama ada OP dari EA, maka akan ikut di close jg ya... Klo boleh, minta tolong agar sekalian ditambah filternya agar hanya nutup OP yg manual aja, alias OP yg tanpa magic #... :)
     
  18. mahoo bar

    mahoo bar Member Credit Hunter

    Equity
    Credit
    Ref Point
    di dalam fungsi di bawahnya
    "if(OrderSymbol()!=Symbol()) continue;"

    coba ditambahkan
    if (OrderMagicNumber()<1) continue;

    jangan lupa tes dulu ya om, maklum masih belajar
     
  19. resa2410

    resa2410 Well-Known Member Credit Hunter

    Equity
    Credit
    Ref Point
    waduh, ane ga ngerti gmn maksud "di dalam fungsi dibawahnya".. ane bkn programmer gan, jadi klo boleh, tolong sekalian agan tempelin di script itu gt, terus code-nya di paste lagi disini... :D
     
  20. mahoo bar

    mahoo bar Member Credit Hunter

    Equity
    Credit
    Ref Point
    ini om
     
    • Like Like x 3

Share This Page