ruchomy TP

O jezykach programowania w platformach i nie tylko.
Awatar użytkownika
oswarek
Gaduła
Gaduła
Posty: 203
Rejestracja: 15 mar 2013, 11:09

ruchomy TP

Nieprzeczytany post autor: oswarek »

czy ktoś zna lub potrafi napisać EA lub skrypt który przesuwałby TP na mniejszy zysk jeśli pozycja będzie na minusie. Chodzi dokładnie o to żeby to było takie przeciwieństwo TS... np: kupuje po 1,0000 i ustawiam TP na 1,1000 i jeśli kurs spada na 0,9990 to moje TP spada na 1,0990 i tak już zostaje chyba że cena znowu spadnie poniżej 0,9990 to TP dalej jest zmniejszane.. Dodatkowo EA mogłoby mieć SL i TS..

Awatar użytkownika
bucho1504
Stały bywalec
Stały bywalec
Posty: 55
Rejestracja: 01 sie 2008, 21:46

Re: ruchomy TP

Nieprzeczytany post autor: bucho1504 »

Nie wiem czy oto chodzi ?

Kod: Zaznacz cały

int Modyfikacja_Zlecen ()
{
int ticket;
double LOWER = Low[iLowest(NULL,0,MODE_LOW,7,1)];
double UPPER = High[iHighest(NULL,0,MODE_HIGH,7,1)];

 for(int i=0; i<OrdersTotal(); i++) 
        {
         if( OrderSelect(OrdersTotal()-1,SELECT_BY_POS))
     
            //--------------- Modyfikacja Zlecenia SELL ---------------//                 
             {
              if (OrderType() == Typ_Zlecenia_Sell && OrderMagicNumber () = 1 )
              if (TimeDayOfYear(TimeCurrent()) > TimeDayOfYear(OrderOpenTime()))                                  
              {
              ticket = OrderModify(OrderTicket(),NormalizeDouble(LOWER,Digits),NormalizeDouble(UPPER,Digits),
                   NormalizeDouble(LOWER,Digits)-0.0005,OrderExpiration(), Gold);
               }
               return(true);                 
              }                                                             
       //---------------- Modyfikacja Zlecenia BUY ----------------//                                        
        {
         if (OrderType() == Typ_Zlecenia_Buy && OrderMagicNumber () = 2)
         if (TimeDayOfYear(TimeCurrent()) > TimeDayOfYear(OrderOpenTime())) 
          {
           ticket = OrderModify(OrderTicket(),NormalizeDouble(UPPER,Digits),(NormalizeDouble(LOWER,Digits)), 
                    NormalizeDouble(UPPER,Digits)+0.0005,OrderExpiration(), Gold);            
           } 
          return(true);      
        }                 
       }
       return(0);     
      }
:)
Ten nie popełnia błędów kto nic nie robi

ODPOWIEDZ