Wszystkie pytania dozwolone początkujących programistów

O jezykach programowania w platformach i nie tylko.
Awatar użytkownika
personov
Pasjonat
Pasjonat
Posty: 1525
Rejestracja: 09 sie 2009, 21:27

Nieprzeczytany post autor: personov »

A spróbuj CurTime()
Albo wpisz dowolny inny numer Magic.
Solą życia jest kasa.

Awatar użytkownika
siersciuch
Pasjonat
Pasjonat
Posty: 407
Rejestracja: 06 kwie 2010, 20:31

Nieprzeczytany post autor: siersciuch »

CurTime() niedziała, wogule nie podświetla,ze to funkcja jakaś,
magic nie działa też hmmmm, niemam pojecia jak to zrobić, szukałem na necie, ale duzo stron jest nie aktywnych zwiazanych z programowaniem mql4
jeżeli będziesz uparty, prawdopodobnie częściej odniesiesz sukces, niż doznasz porażki.

Awatar użytkownika
personov
Pasjonat
Pasjonat
Posty: 1525
Rejestracja: 09 sie 2009, 21:27

Nieprzeczytany post autor: personov »

Kod :

Kod: Zaznacz cały

OrderSend(Symbol(),BUYSTOP,lots,......,CurTime()+Current*60);
działa na pewno.
Ja bym doszukiwal się błędu gdzieś w cenie zlecenia, Sl lub TP.
A może zlecenie jest zbyt blisko ?
Spróbuj postawić ręcznie BUYSTOP 15 pips powyżej aktualnej ceny.
Solą życia jest kasa.

Awatar użytkownika
siersciuch
Pasjonat
Pasjonat
Posty: 407
Rejestracja: 06 kwie 2010, 20:31

Nieprzeczytany post autor: siersciuch »

działa, tylko jak dam, ze Currnet=1 czyli minute to juz nie, hmmm, nie moge ustawić na tak krótko?? jak sądzisz?
jeżeli będziesz uparty, prawdopodobnie częściej odniesiesz sukces, niż doznasz porażki.

Awatar użytkownika
Pierz Andrzej
Przyjaciel Forum
Przyjaciel Forum
Posty: 1200
Rejestracja: 02 lip 2006, 14:17

Nieprzeczytany post autor: Pierz Andrzej »

Kod: Zaznacz cały

CurTime() to stara nazwa :)
teraz jest to pod nazwą

Kod: Zaznacz cały

TimeCurrency()
a co do limitu minut to bodajże się jest najmniej 11 minut
pozdrawiam
Andrzej Pierz
z poważaniem
Andrzej Pierz
FOREX-SERVICE

Awatar użytkownika
siersciuch
Pasjonat
Pasjonat
Posty: 407
Rejestracja: 06 kwie 2010, 20:31

Nieprzeczytany post autor: siersciuch »

dzięki za info, roziwazałem problem przez OrderDelete.

Macie pomysł na warunek, "jeśli zlecenie oczekujace zostanie aktywowane==true" ?

ps. sorki za błedy ale niemam polskiej przegladarki, a na ortografi sie nieznam niestety
jeżeli będziesz uparty, prawdopodobnie częściej odniesiesz sukces, niż doznasz porażki.

Pjetja
Bywalec
Bywalec
Posty: 20
Rejestracja: 22 lip 2011, 18:53

Nieprzeczytany post autor: Pjetja »

Witam ponownie szanowne grono forumowiczów.
Po raz drugi mam problem i nie wiem szczerze mówiąc jak go rozwiązać. Nie wiem jak powinno się zajmować pozycje i walczę z tym nie wiedząc nawet z czym dokładnie :wink:
Mam taką funkcję która ma zajmować i odwracać zajęte pozycje zgodnie z podanymi warunkami. Problem w tym że zajmuje mi kilkanaście pozycji długich a potem je zamyka. Co tam trzeba dodać lub zmienić?
Poniżej wspomniana funkcja:

Kod: Zaznacz cały

void ReversPos()
   {
   if((Short[i+1]==0)&&(Short[i]>0))                                  //jeżeli pada sygnał na krótką
      {
      if (OrdersTotal()==0)                                           //jeżeli nie ma otwartych pozycji
         { 
         OrderSend(Symbol(),OP_SELL,Lot,Bid,3,0,0,"",MAGICV,0,Red);   //zajmij pozycję krótką
         }     
      for(int j=0;j<OrdersTotal();j++)                                //dla wszystkich owartych pozycji
         {
         if(OrderType()==OP_BUY)                                      //jezeli otwarte długie
            {
            OrderClose(OrderTicket(),OrderLots(),Bid,3,White);        //zamknij
            OrderSend(Symbol(),OP_SELL,Lot,Bid,3,0,0,"",MAGICV,0,Red);  //otwórz krótką
            }
         }//END for
      }//END sygnał na krótką 
  
   else if((Long[i+1]==0)&&(Long[i]>0))                               //jeżeli sygnał pada na długą
      {
      if (OrdersTotal()==0)                                           //jeżeli nie ma otwartych pozycji
         {
         OrderSend(Symbol(),OP_BUY,Lot,Ask,3,0,0,"",MAGICV,0,Blue);   //zajmij pozycję długą
         }
      for(int k=0;k<OrdersTotal();k++)                                //dla wszystkich owartych pozycji
         {
         if(OrderType()==OP_SELL)                                     //jezeli otwarta krótka
            {
            OrderClose(OrderTicket(),OrderLots(),Ask,3,White);        //zamknij 
            OrderSend(Symbol(),OP_BUY,Lot,Ask,3,0,0,"",MAGICV,0,Blue);  //otwórz długą
            }
         }//END for
      }//END sygnał na długą  
   
    
   }//END ReversPos()

Awatar użytkownika
Pierz Andrzej
Przyjaciel Forum
Przyjaciel Forum
Posty: 1200
Rejestracja: 02 lip 2006, 14:17

Nieprzeczytany post autor: Pierz Andrzej »

przy pętlach otwartych zleceń brakuje Ci :

Kod: Zaznacz cały

OrderSelect(..............);
pzdr Andrzej
z poważaniem
Andrzej Pierz
FOREX-SERVICE

kargi
Bywalec
Bywalec
Posty: 7
Rejestracja: 30 cze 2011, 12:50

Nieprzeczytany post autor: kargi »

Panowie kombinuje od dluzszego czasu ale jakos nie moge wpasc na to w jaki sposob zapamietac swieczke na ktorej otworzono zlecenie tak aby pozniej moc sie wzgledem niej odwolywać.

dla przykladu otworzylem zlecenie o 14:45 na swieczce X
i teraz wzgledem niej intreesuje mnie dajmy na to swieczka (X+3) czyli 15:30 albo inna (X+10)

Ktos moze ma pomysl?

Awatar użytkownika
Tig3r
Przyjaciel Forum
Przyjaciel Forum
Posty: 2310
Rejestracja: 02 sty 2008, 10:46

Nieprzeczytany post autor: Tig3r »

kargi pisze:Panowie kombinuje od dluzszego czasu ale jakos nie moge wpasc na to w jaki sposob zapamietac swieczke na ktorej otworzono zlecenie tak aby pozniej moc sie wzgledem niej odwolywać.
świeczki identyfikować najlepiej czasem otwarcia zlecenia (może być też czas otwarcia świeczki na której wykonane jest zlecenie - zależy jak chcesz się do tego odwołać później).
dla przykladu otworzylem zlecenie o 14:45 na swieczce X
i teraz wzgledem niej intreesuje mnie dajmy na to swieczka (X+3) czyli 15:30 albo inna (X+10)
jak masz czas (otwarcia zlecenia) to już możesz sprawdzić ile to świec wstecz funkcją iBarShift()
======================================================
Nie głupi ten co nie wie, lecz ten który nie chce się nauczyć..

ODPOWIEDZ