Zamykanie zlecenia po podanej liczbie świeczek

Greg prosił w komentarzu pod jednym z ostatnich wpisów o kod EA, który będzie zamykał podane zlecenie po upływie N świeczek.

W dalszej części wpisu znajdziecie takowy kod. Odnośnie parametrów:

  • ticket – ticket zlecenia (czyli jego ID, numer)
  • closeAfter – liczba świeczek, po których nastąpi zamknięcie zlecenia ticket, liczone wg świeczek na TF na którym pracuje to EA

A oto kod:

extern int ticket;
extern int closeAfter=2;

void start() {

 static int prevTime;
 static int bars;

 if(Time[0]!=prevTime) {
  bars++;
  prevTime=Time[0];
 }

 if(bars>closeAfter) {
  if(OrderSelect(ticket,SELECT_BY_TICKET)) {
   if(OrderType()==OP_SELL) {
    OrderClose(ticket,OrderLots(),MarketInfo(OrderSymbol(),MODE_ASK),0,CLR_NONE);
   }
   if(OrderType()==OP_BUY) {
    OrderClose(ticket,OrderLots(),MarketInfo(OrderSymbol(),MODE_BID),0,CLR_NONE);
   }
  }
 }

}

Autor: Łukasz Tomaszkiewicz

Podziel się ze znajomymi:

Prześlij nam swoje uwagi

Imię i nazwisko (wymagane)

Adres email (wymagane)

Treść wiadomości

  • Facebook