[ARŞİV] Forumu kirletmemek için herhangi bir acemi sorusu. Profesyonel, kaçırmayın. Sensiz hiçbir yerde - 3. - sayfa 241

 
artmedia70 :

Nedenini hemen yazmışsın. Bu, i++ veya i-- ile ilgili değil, ancak siparişleri silmeye hangi sondan başlayacağınızla ilgili - listenin başından (sizin gibi) veya listenin sonundan (bu durumda gerektiği gibi)

Emirler silindiğinde ne olduğunu anlamak için emirlerin bir dizide nasıl saklandığını bilmeniz ve anlamanız gerekir.

İlk sırayı sildiğinizde (i=0 ile indekslenir), sonra tüm emirlerin indeksleri dizide kaydırılır - ilk olan sıfır olur, ikincisi birinci olur, üçüncüsü ikinci olur, ve benzeri. Bu nedenle tüm emirler tamamen silinmez - sonuçta, i 6'ya eşit olduğunda, altıncı sıra emirler dizisindeki beşinci pozisyona kaydırılır ve emir sadece indeks 6'da seçilmez.

Listenin sonundan siparişleri kaldırdığınızda, herhangi bir kayma olmaz - ilk sipariş listede sıfır konumuna sahip olduğu için onu almaya devam eder. 10. sıra 9. sıraya sahipti, silindi, ardından listede 8. sıraya sahip olan 9. sıra silindi vb. sipariş dizisinde sıfır konumu olan ilk sıraya.

Ayrıntılı yanıt için BÜYÜK TEŞEKKÜR artmedia70, sadece teşekkürler - ilunga ... peki, ve nadya da katıldığınız için ... en iyi şekilde ...
 
Söyle bana, lütfen, bir pencereden birkaç para birimiyle çalışmak için bir çoklu para birimi kurun. Ancak sorun şu ki, para birimleri arasında geçiş o kadar hızlı ki, siparişin açılması için zaman kalmıyor. 3 dakikada 4 emir + 4 bekleyen emir açıldı. Ve para birimleri arasında çok fazla geçiş vardı.
 
volshebnik :
Nasıl daha iyi ve neden? )
Benzersiz isimler yapın ve onları hatırlayın. Görevinizi bilmiyorum, belki buna ihtiyacınız yoktur.
 
forexnew :
Söyle bana, lütfen, bir pencereden birkaç para birimiyle çalışmak için bir çoklu para birimi kurun. Ancak sorun şu ki, para birimleri arasında geçiş o kadar hızlı ki, siparişin açılması için zaman kalmıyor. 3 dakikada 4 emir + 4 bekleyen emir açıldı. Ve para birimleri arasında çok fazla geçiş vardı.

http://vinin.ucoz.ru/forum/11
 

Mod_1 ve Mod_2 olmak üzere 2 özel değişiklik var

her iki durumda da değişiklik koşulu:

double TS;
int Min_Dist=MarketInfo(Symb,MODE_STOPLEVEL);

if (TS < Min_Dist)
TS=Min_Dist;

Satın alma durdurma kaybı , izleme durdurmadan daha az olduğu için, değişikliğin zararı durdurma koşulu altında gerçekleşmemesi için nasıl değiştirilir,

ve satışlar için, stop loss, iz stop'tan daha büyüktür

 

Merhaba.

Lütfen hatayı bulmama yardım edin.

Demoda böyle bir sorun yokken aşağıdaki kod test cihazında çalışmıyor. Günlükte herhangi bir hata yok.

Şimdiden teşekkür ederim.

   //====================== Отлавливаем прибыль по рынку ===========================================
   if (RinProfit) {
     if (SchBuyLots> 0 || SchBuyLots777> 0 )
     {
       if ((SchSellStop_b(MAGIC)> 0 && (maM_fast<maM_slow || maH_fast<maH_slow || maOtk_fast<maOtk_slow)) ||
         (SchSellStop_b(MAGIC)> 0 && (speedup_H1_ff<( 10000 +H1_MA_factor_ff) || speedup_H1_ss<( 10000 +H1_MA_factor_ss) ||
                                     speedup_M15_ff<( 10000 +M15_MA_factor_ff) || speedup_M15_ss<( 10000 +M15_MA_factor_ss))) ||
         (SchSellStop_b(MAGIC)> 0 && ((maHXX<=H1_point_min  && speedup_H1_ss<( 10000 +H1_MA_factor_ss)) || maHXX>=H1_point_max)) ||
         (SchSellStop_b(MAGIC)> 0 && Fractal_fibo_buy>Fibo_prohibit) ||
         (SchSellStop_b(MAGIC)> 0 && TF1S> 0 && TF2S> 0 && timf1s!= 0 && timf2s!= 0 && TF1S<TF2S) ||
         (SchSellStop_b(MAGIC)> 0 && TF1S> 0 && TF2S> 0 && timf1s!= 0 && timf2s!= 0 && TF1S>=TF2S && Bid<price_S))
       {
         while (SchBuyLots+SchBuyLots777> 0 && SchSellLots+SchSellLots777> 0 )
         {
          CloseVstrechnye(MAGIC);
           return ( 0 );
         }
        CloseAll_bMAGIC(Proskalz, MAGIC);
        CloseAll777_b(Proskalz);
        DeleteOtlozhMAGIC(MAGIC);
        DeleteOtlozh777();
         Alert ( "Позиции Buy закрыты согласно рыночной ситуации." );
         RefreshRates ();
         if (Timeout_Trade> 0 && ProfHist<= 0 )
         {
           Comment (SMB, ": ТАЙМАУТ ТОРГОВЛИ " ); 
           Sleep (Timeout_Trade* 60000 );
         } 
         RefreshRates ();
       }
    }
     if (SchSellLots> 0 || SchSellLots777> 0 )
     {
       if ((SchBuyStop_b(MAGIC)> 0 && (maM_fast>maM_slow || maH_fast>maH_slow || maOtk_fast>maOtk_slow)) ||
         (SchBuyStop_b(MAGIC)> 0 && (speedup_H1_ff>( 10000 -H1_MA_factor_ff) || speedup_H1_ss>( 10000 -H1_MA_factor_ss) ||
                                    speedup_M15_ff>( 10000 -M15_MA_factor_ff) || speedup_M15_ss>( 10000 -M15_MA_factor_ss))) ||
         (SchBuyStop_b(MAGIC)> 0 && ((maHXX<=H1_point_min  && speedup_H1_ss>( 10000 -H1_MA_factor_ss)) || maHXX>=H1_point_max)) ||
         (SchBuyStop_b(MAGIC)> 0 && Fractal_fibo_sell>Fibo_prohibit) ||
         (SchBuyStop_b(MAGIC)> 0 && TF1B> 0 && TF2B> 0 && timf1b!= 0 && timf2b!= 0 && TF1B>TF2B) ||
         (SchBuyStop_b(MAGIC)> 0 && TF1B> 0 && TF2B> 0 && timf1b!= 0 && timf2b!= 0 && TF1B<=TF2B && Bid>price_B))
       {
         while (SchBuyLots+SchBuyLots777> 0 && SchSellLots+SchSellLots777> 0 )
         {
          CloseVstrechnye(MAGIC);
           return ( 0 );
         }
        CloseAll_bMAGIC(Proskalz, MAGIC);
        CloseAll777_b(Proskalz);
        DeleteOtlozhMAGIC(MAGIC);
        DeleteOtlozh777();
         Alert ( "Позиции Sell закрыты согласно рыночной ситуации." );
         RefreshRates ();
         if (Timeout_Trade> 0 && ProfHist<= 0 )
         {
           Comment (SMB, ": ТАЙМАУТ ТОРГОВЛИ " ); 
           Sleep (Timeout_Trade* 60000 );
         } 
         RefreshRates ();
       }
     } 
   }
   //===============================================================================================  
 

MT5'ten MT4'te dll'den işlevleri çağırma arasındaki fark nedir? Dll'yi derliyorum, MT5'te harika çalışıyor, ancak MT4'te hata veriyor:

2011.10.06 23:00:34 Solaris yürütücüsü EURUSDm,M1: 'Solaris.dll' dll'sinden 'InfoOfTrading' işlevini çağıramaz ( hata 127 )

yarasa nedir? - tüm beyin zaten kırıldı. :(

 
win32 dll projesi yap
 
sergeev :
win32 dll projesi yap
ama MT5'te iyi çalışıyor!
 

Yukarıdaki soruma devam edeceğim.

Yukarıdaki kod benim tarafımdan başka bir Expert Advisor'da da kullanılmaktadır. Bu Expert Advisor ile, kod koşullarının tam tersi gözlemlenmesiyle (demoda yine her şey hatasız çalıştı) tek farkla açıklanana benzer bir durum vardı. Ancak, bir anda test cihazı doğru çalıştı ve kod, içinde belirtilen koşullara göre çalışmaya başladı.

Bir çeşit mistik.

Ayrıca, nedense bazen optimizasyonu sürmüyorum. Kendisi için bir şeyi yeniden hesapladığı oluyor, ancak bir nedenden dolayı tüm sonuçları sıfırlıyor. Ve böylece farklı brokerlerin terminallerinde. Aynı zamanda, tüm yıldızlar ve takımyıldızlar muhtemelen gökyüzünde birleştiğinde, her şey beklendiği gibi çalışmaya başlar.