النتائج 1 إلى 2 من 2
  1. #1
    الصورة الرمزية Shereftiger
    Shereftiger غير متواجد حالياً عضو المتداول العربي
    تاريخ التسجيل
    Apr 2005
    الإقامة
    مصر
    المشاركات
    10

    افتراضي Trailing Stop Trailing Step Trailing Profit

    Trailing Stop Trailing Step Trailing Profit
    ممكن عمل اكسبيرت زي التريلنج استوب يكون للترينج لوس
    بمعني السعر اذا اتحرك للاعلي وانا عامل امر شراء وبيع كل ما السعر يطلع 60 نقطه
    امر الشراء يعمل استوب عند 30
    وامر البيع يحرك الاستوب عند 30
    والاستب عدد النقاط اللي احددها
    وشكرا

  2. #2
    الصورة الرمزية elassari
    elassari غير متواجد حالياً عضو المتداول العربي
    تاريخ التسجيل
    Feb 2016
    الإقامة
    المغرب
    العمر
    34
    المشاركات
    143

    افتراضي

    جرب هدا الكود
    كود PHP:
    void MoveTrailingBuy(){
       for(
    int cnt=0;cnt<OrdersTotal();cnt++){
          
    bool select=OrderSelect(cnt,SELECT_BY_POS,MODE_TRADES);
          if(
    OrderSymbol()==Symbol()&&OrderMagicNumber()==magic){
            if(
    OrderType()==OP_BUY){
              if(
    TrailingStop>0&&NormalizeDouble(Bid-TrailingStep*point,Digits)>NormalizeDouble(OrderOpenPrice()+TrailingStop*point,Digits)){
                   if((
    NormalizeDouble(OrderStopLoss(),Digits)<NormalizeDouble(Bid-TrailingStop*point,Digits))||(OrderStopLoss()==0)){
                      
    bool modify=OrderModify(OrderTicket(),OrderOpenPrice(),NormalizeDouble(Bid-TrailingStop*point,Digits),TakeProfit,0,Blue);
                      }}}      
                            if(
    OrderType()==OP_SELL){
                               if(
    TrailingStop>0&&NormalizeDouble(Ask-TrailingStep*point,Digits)>NormalizeDouble(OrderOpenPrice()+TrailingStop*point,Digits)){
                                  if(
    NormalizeDouble(OrderTakeProfit(),Digits)<NormalizeDouble(Ask-TrailingStop*point,Digits)||(OrderTakeProfit()==0)){
                                     
    bool modify=OrderModify(OrderTicket(),OrderOpenPrice(),StopLoss,NormalizeDouble(Ask-TrailingStop*point,Digits),0,Red);
                                     }}}
    }
       }
          }                                 
    void MoveTrailingSell(){
       for(
    int cnt=0;cnt<OrdersTotal();cnt++){
          
    bool select=OrderSelect(cnt,SELECT_BY_POS,MODE_TRADES);
          if(
    OrderSymbol()==Symbol()&&OrderMagicNumber()==magic){
             if(
    OrderType()==OP_BUY){
                if(
    TrailingStop>0&&NormalizeDouble(Bid+TrailingStep*point,Digits)<NormalizeDouble(OrderOpenPrice()-TrailingStop*point,Digits)){                 
                   if(
    NormalizeDouble(OrderTakeProfit(),Digits)>(NormalizeDouble(Bid+TrailingStop*point,Digits))||(OrderTakeProfit()==0)){
                      
    bool modify=OrderModify(OrderTicket(),OrderOpenPrice(),StopLoss,NormalizeDouble(Bid+TrailingStop*point,Digits),0,Red);
                         }}}
                            if(
    OrderType()==OP_SELL){
                               if(
    TrailingStop>0&&NormalizeDouble(Ask+TrailingStep*point,Digits)<NormalizeDouble(OrderOpenPrice()-TrailingStop*point,Digits)){                 
                                  if(
    NormalizeDouble(OrderStopLoss(),Digits)>(NormalizeDouble(Ask+TrailingStop*point,Digits))||OrderStopLoss()==0){
                                     
    bool modify=OrderModify(OrderTicket(),OrderOpenPrice(),NormalizeDouble(Ask+TrailingStop*point,Digits),TakeProfit,0,Blue);
                                     }}}
           }                        
       }



1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17