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

 
alsu :

Göstergenin mantığını tamamen analiz edin.

Başlamak için değiştirin

üzerinde

Ayrıca,

Başka olmazsa, önce ilk blok, ardından ikincisi yürütülür. Başka ile - ya birincisi ya da ikincisi.



Ltd! mantığa bakılırsa, başka bir şey yok!) Yakında değiştireceğim! evet ve ayrıca hemen: metne 4'ten değil 3'ten her yere yazarsam, şöyle:
 iFractals ( Symbol (), PERIOD_H1 ,MODE_UPPER, 3 );

o zaman benim için hiçbir anlaşma yapılmaz, 3'e kadar barlar her şeyin yürümesi için yeterli görünse de, burada sorun ne?

ve göstergenin mantığına gelince, görevin özünü tam olarak anlamadım. Göstergenin nasıl çalıştığını biliyorum, sadece algoritmaya ihtiyacım var, böylece ifraktaller sıfıra eşit olmaz ve siz bu koşulu kaldırmamı önerirsiniz, gereksiz mi? görmek iki kez mi yazayım? neden kaldırılmalı?

 
alsu :

Göstergenin mantığını tamamen analiz edin.

Başlamak için değiştirin

üzerinde

Ayrıca,

Başka olmazsa, önce ilk blok, ardından ikincisi yürütülür. Başka ile - ya birincisi ya da ikincisi.



genel olarak, her şeyi değiştirdim, ancak yine de bir nedenden dolayı aynı şekilde atlıyor ... ((((((((((((((((((((((((
 
Vinin :

Dövüşebilirsin ve danışmanın işi kesintiye uğrayabilir. Sadece yaklaşımın değiştirilmesi gerekiyor.


Nasıl?

Kodun başında, tüm açık siparişleri yineleyin, sipariş biletlerinin değerlerini bulun ve atayın , yoksa başka bir şekilde mümkün mü?

 
Cruc :


Kodun başında, tüm açık siparişleri yineleyin, sipariş biletlerinin değerlerini bulun ve atayın, yoksa başka bir şekilde mümkün mü?


Bu mümkündür ve tabii ki danışman bir veya iki pozisyon açmadıkça.
 
Expert Advisor'ın neden test cihazında çalışmayı bıraktığını kim bilebilir?
 
Vinin :

Bu mümkündür ve tabii ki danışman bir veya iki pozisyon açmadıkça.

Expert Advisor çoklu para birimidir, bu nedenle görünüşte basit işlemler her zaman hemen çözülmez ((. Ve deneyim yoktur.
 
Cruc :

Expert Advisor çoklu para birimidir, bu nedenle görünüşte basit işlemler her zaman hemen çözülmez ((. Ve deneyim yoktur.


Sadece siparişlerin doğru muhasebesini yapmanız gerekiyor. Bir sürü örnek.

Ve tecrübe. Tecrübe bir kazançtır, gelecektir. hiçbir yere gitmeyecek

 
Vinin :


Sadece siparişlerin doğru muhasebesini yapmanız gerekiyor. Bir sürü örnek.

Ve tecrübe. Tecrübe bir kazançtır, gelecektir. hiçbir yere gitmeyecek


Cevaplar için teşekkürler, arşivleri inceleyeceğim.
 
skyjet :

İyi akşamlar! Çok para birimli bir MACD Uzman Danışmanıyla ilgili yardıma ihtiyacım var. EA, pozisyon açma kriterlerini doğru bir şekilde takip eder, ancak "koşullara göre" kapatma çalışmaz. Tabii ki, arka stop kullanmaya başladım, ancak doğru kapanış bana huzur vermiyor.

Ana bölüm böyle görünüyor

Ve bu kapanış bloğu. Lütfen hatayı bulmaya yardım edin!


Tekrar ettiğim için özür dilerim ama ne kadar denersem deneyeyim bir hata bulamıyorum!

 //+------------------------------------------------------------------+
string lSymbol;
int init ()
{ 
 lSymbol = Symbol ();
 return ( 0 );
}
int deinit()
{ return ( 0 );}
int start()
  {
   double MacdCurrent, MacdPrevious, SignalCurrent;
   double SignalPrevious, MaCurrent, MaPrevious;
   double bid, ask, point, digits;
   int cnt, ticket, total;
   
  total = SymbolOrdersTotal (lSymbol);
  
   if (total< 1 );
  {
    bid   = MarketInfo (lSymbol,MODE_BID);
    ask   = MarketInfo (lSymbol,MODE_ASK);
    point = MarketInfo (lSymbol,MODE_POINT);
    digits= MarketInfo (lSymbol,MODE_DIGITS);



Так выглядит оснавная часть, а это злопалучный блок закрытия



 for (cnt= 0 ;cnt<total;cnt++)
     {
       OrderSelect (cnt, SELECT_BY_POS, MODE_TRADES);
       if ( OrderType ()<=OP_SELL &&   // check for opened position 
         OrderSymbol ()==lSymbol())   // check for symbol
        {
         if ( OrderType ()==OP_BUY)   // long position is opened
           {
             // should it be closed?
             if (MacdCurrent> 0 && MacdCurrent<SignalCurrent && MacdPrevious>SignalPrevious &&
               MacdCurrent>(MACDCloseLevel*point))
                {
                 OrderClose ( OrderTicket (), OrderLots (),bid, 3 , Violet ); // close position
                 return ( 0 ); // exit
                }
             // check for trailing stop
             if (TrailingStop> 0 )  
              {                 
               if (bid- OrderOpenPrice ()>point*TrailingStop)
                 {
                   if ( OrderStopLoss ()<bid-point*TrailingStop)
                    {
                     OrderModify ( OrderTicket (), OrderOpenPrice (),bid-point*TrailingStop, OrderTakeProfit (), 0 , Green );
                     return ( 0 );
                    }
                 }
              }
           }
         else // go to short position
           {
             // should it be closed?
             if (MacdCurrent< 0 && MacdCurrent>SignalCurrent &&
               MacdPrevious<SignalPrevious && MathAbs (MacdCurrent)>(MACDCloseLevel*point))
              {
               OrderClose ( OrderTicket (), OrderLots (),ask, 3 , Violet ); // close position
               return ( 0 ); // exit
              }
             // check for trailing stop
             if (TrailingStop> 0 )  
              {                 
               if (( OrderOpenPrice ()-ask)>(point*TrailingStop))
                 {
                   if (( OrderStopLoss ()>(ask+point*TrailingStop)) || ( OrderStopLoss ()== 0 ))
                    {
                     OrderModify ( OrderTicket (), OrderOpenPrice (),ask+point*TrailingStop, OrderTakeProfit (), 0 , Red );
                     return ( 0 );
                    }
                }
              }
           }
        }
     }
   return ( 0 );
  }
  
   
   int SymbolOrdersTotal( string lSymbol)
{
   int Res= 0 ;
   int total= OrdersTotal ();
   for ( int i= 0 ;i<total;i++) 
   {
       if ( OrderSelect (i, SELECT_BY_POS))
      {
         if ( OrderSymbol ()==lSymbol)
         {
            Res++;
         }
      }
   }
   return (Res);
}
// the end.
 
Qwertee :
genel olarak, her şeyi değiştirdim, ancak yine de bir nedenden dolayı tamamen aynı şekilde atlıyor ... ((((((((((((((((((((
ne olduğunu ve günlüğe hangi mesajları yazdırdığınızı yazın