[Arşivle!] Forumu kirletmemek için herhangi bir acemi sorusu. Profesyonel, kaçırmayın. Sensiz hiçbir yerde - 2. - sayfa 459

 
Maximov7 :

İşte bir soru daha…. açık bir emir var, şunu söyleyelim:

OrderSend("EURUSD",OP_BUY,0.1,C1,10,Bid-0.0017-0.0017,Ask+0.0017);

(eğer) kar al ile kapatılacaksa başka bir emir nasıl açılır????


kitabı okudun mu??? (en azından eğlence için)
 
3 kez yeniden okuyun ..... ve henüz?
 
Maximov7 :
3 kez yeniden okuyun ..... ve henüz?


Kapatılan siparişlerin geçmişindeki döngüde, "bu" siparişi bulun, ardından TP tarafından kapatılıp kapatılmadığını kontrol edin, öyleyse "başka bir tane" açın. Herşey.

Daha fazla ayrıntı için buraya bakın - ihtiyacınız olan f-ii'yi seçin, programınıza bağlayın ve hepsi bu kadar.

 
Çok teşekkürler!
 
Maximov7 :
Çok teşekkürler!

Sevinç için kullanın.
 

İyi akşamlar!

Lütfen koda bakın:

for(i=1;i<=OrdersTotal();i++) // takip eden siparişler üzerinde yineleme

{

if ( OrderSelect (i-1,SELECT_BY_POS)==true)

{

if (OrderSymbol()!=Instr)

devam etmek;

if(OrderType()==0)

{

if ((Bid-(OrderOpenPrice()+TralingStop*Point))>0)

dönüş(55);}

if(OrderType()==1)

{

if ((Ask-(OrderOpenPrice()-TralingStop*Nokta))<0)

dönüş(55);

}

}

Sorunun ne olduğunu anlamıyorum, içeride Alert ile test ediyorum, Instr'den sonra hiçbir yerde çalışmıyor

 
demlin :

İyi akşamlar!

Lütfen koda bakın:

for(i=1;i<=OrdersTotal();i++) // takip eden siparişler üzerinde yineleme

{

if (OrderSelect(i-1,SELECT_BY_POS)==true)

{

if (OrderSymbol()!=Instr)

devam etmek;

if(OrderType()==0)

{

if ((Bid-(OrderOpenPrice()+TralingStop*Point))>0)

dönüş(55);}

if(OrderType()==1)

{

if ((Ask-(OrderOpenPrice()-TralingStop*Nokta))<0)

dönüş(55);

}

}

Sorunun ne olduğunu anlamıyorum, içeride Alert ile test ediyorum, Instr'den sonra hiçbir yerde çalışmıyor


Kodun üstünde böyle bir satır var mı?
 string Instr;
Kodu normal şekilde yapıştırıyorsunuz - editördeki SRC aracılığıyla... :-)))
 
Roman. :

Kodun üstünde böyle bir satır var mı? Kodu normal şekilde yapıştırıyorsunuz - editördeki SRC aracılığıyla... :-)))
Evet, Instr var, üzgünüm SRC'nin ne olduğunu bilmiyorum
 
demlin :
Evet, Instr var, üzgünüm SRC'nin ne olduğunu bilmiyorum

Kodu gönderinize yapıştırdığınızda, CTRL + ALT + M - tuşlarına basın, ardından kodu oraya (pencereye) koyun (CTRL + C - kopyala, CTRL + V - yapıştır arabelleği aracılığıyla), ardından "yapıştır" düğmesini tıklayın pencerenin alt kısmında.
 
demlin :

İyi akşamlar!

Lütfen koda bakın:

for(i=1;i<=OrdersTotal();i++) // takip eden siparişler üzerinde yineleme

{

if (OrderSelect(i-1,SELECT_BY_POS)==true)

{

if (OrderSymbol()!=Instr)

devam etmek;

if(OrderType()==0)

{

if ((Bid-(OrderOpenPrice()+TralingStop*Point))>0)

dönüş(55);}

if(OrderType()==1)

{

if ((Ask-(OrderOpenPrice()-TralingStop*Nokta))<0)

dönüş(55);

}

}

Sorunun ne olduğunu anlamıyorum, içeride Alert ile test ediyorum, Instr'den sonra hiçbir yerde çalışmıyor


Bu seçeneği deneyin - benzer bir tasarımı bu şekilde organize ettim.


// ------------------------------------------------Ищем наш ордер---------------------------------

int orderType;
   for ( int orderIndex = ( OrdersTotal () - 1 ); orderIndex >= 0 ; orderIndex--)
   {
       if (! OrderSelect (orderIndex, SELECT_BY_POS))
      {
         continue ;
      }

       if ((OrderSymbol() != Symbol ()) || (OrderMagicNumber() != MagicNumber))
      {
         continue ;
      }

      orderType = OrderType();
       if ((orderType != OP_BUY) && (orderType != OP_SELL))
      {
         continue ;
      }
          ticket = OrderTicket( );                         // Номер ордера
          orderLots = OrderLots();                         // Lots   
          orderProfit = OrderProfit() + OrderSwap();       // Profit
          Price = OrderOpenPrice();                         // Цена открытия рыночного ордера
          SL =  OrderStopLoss();                           // Значение StopLoss ордера
          TP = OrderTakeProfit();                           // Значение TakeProfit ордера
          
             if (ticket> 0 )                                               // Если позиция открылась
                    {
                             while ( OrderSelect (ticket,SELECT_BY_TICKET)==false)       // Если ордер выбран
                                 {
                                   Sleep ( 100 );
                                 }
                                   double OpenPrice=OrderOpenPrice();
                                      
                                  
                    
                                if (orderType == OP_BUY) 
                                     {
                                       //здесь трал покупки
                                     }
            
                                if (orderType == OP_SELL) 
                                      {
                                        //здесь трал продажи
                                      }   
                            
                    }
        
   }