Çaydanlıktan gelen sorular - sayfa 64

 
Europa :
Lütfen bana uyarının neden Orders_Total=1 verdiğini söyleyin, aslında bir pozisyon ve bir emir varken, yani. teorik olarak 1 değil 2 vermeli

Döngüyü sondan ters yönde çalıştırmaya çalışın.

 string Symb= "EURUSD" ;
   for (i= OrdersTotal ()+ PositionsTotal ()- 1 ;i>= 0 ;i--)
     {
       if (Symb== PositionGetSymbol (i)) Orders_Total++;
     }
     Alert (Orders_Total);
 
tol64 :

Döngüyü sondan ters yönde çalıştırmaya çalışın.

Yardım etmedi ;(
 
Europa :
Yardım etmedi ;(

Ve sadece pozisyonu kontrol edersiniz:

 if (Symb== PositionGetSymbol (i)) Orders_Total++;
Burada sadece pozisyonlar dikkate alınır.
 
tol64 :

Ve sadece pozisyonu kontrol edersiniz:

Burada sadece pozisyonlar dikkate alınır.
KESİNLİKLE!!!! Çok teşekkürler!!!
 
tol64 :

Yardım diyor ki:

Tarih (yıl, ay, gün) veya saat (saat, dakika, saniye) veya hepsi birlikte atlanabilir. Değer aralığı 1 Ocak 1970 ile 31 Aralık 3000 arasındadır.

Örnekler:

D'2004.01.01 00:00' // Yeni Yıl
D'1980.07.19 12:30:27'
D'19.07.1980 12:30:27'
D'19.07.1980 12' //D'1980.07.19 12:00:00' ile eşdeğer
D'01.01.2004' //D'01.01.2004 00:00:00' ile eşdeğer
D'12:30:27' //D'[derleme tarihi] 12:30:27'ye eşdeğer
D'' //D'[derleme tarihi] 00:00:00' ile eşdeğer

...

Yoksa ben mi yanlış anlıyorum?

Kılavuz, gelecekte bunun olmasını önlemek için değiştirilecektir. Teşekkür ederim.
 
Europa :
Yardım etmedi ;(

Ve pirzola ile ne ekliyorsunuz ve ardından toplamda kaç tane pirzola belirliyorsunuz?

Siparişleri ayrı, pozisyonları ayrı sayın. PositionGetSymbol() yalnızca sembole göre bir konumun varlığını döndürür ve siparişler hakkında hiçbir şey söylemez. Sadece bir pozisyon olduğu için 1 verir. Ve yine de şanslısınız, çünkü loop parametresi izin verilen değerlerin ( PositionsTotal) ötesine geçtiğinden, her şeyi alabilirsiniz.

PS Zaten yanıtladı, çok geç.

 
Dahili bir işlev veya özellik bulamadığım bir şey, bir grafik nesnesine seçilebilir özelliğin nasıl verileceği (varsayılan olarak, nesne fare ile seçme yeteneği olmadan programlı olarak çizilir), onu yalnızca ekli grafik kitaplığında buldum. Açıkça soru şudur: Bir grafik nesnesine ek kütüphaneler ve diğer hileler olmadan düzenli olarak böyle bir özellik vermek mümkün müdür?
 
x100intraday :
Bir iç işlev veya özellik bulamadığım bir şey, bir grafik nesnesine seçilebilir özelliğin nasıl verileceği (varsayılan olarak, nesne fare ile seçme yeteneği olmadan programlı olarak çizilir), onu yalnızca ekli grafik kitaplığında buldum. Açıkça soru şudur: Bir grafik nesnesine ek kütüphaneler ve diğer hileler olmadan düzenli olarak böyle bir özellik vermek mümkün müdür?

Nesne KümesiTamsayı

ile prop_id = OBJPROP_SELECTABLE

 
Valmars :

Nesne KümesiTamsayı

prop_id ile = OBJPROP_SELECTABLE

Büyük merhamet.
 
bool ExtFunc ( string str, int P, int i)
  {
   if (high[i] < high[i- 1 ]) return ( false );
   return ( true );   
  }

int OnCalculate ( const int rates_total,
                 const int prev_calculated,
                 const datetime &time[],
                 const double &open[],
                 const double &high[],
                 const double &low[],
                 const double &close[],
                 const long &tick_volume[],
                 const long &volume[],
                 const int &spread[])
  {
   int i= 0 ;
   if ExtFunc( "s" , 60 ,i) == 1 )
     Buffer[i] = high[i];
  }

OnCalculate'de indekse göre yüksek gibi dizi öğelerini kolayca kullanabilirim . ExtFunc'ta bu dizinin indeks elemanlarına da erişmek mümkün müdür? İşlevimi çağırırken, dizi argümanını referansla, bir işaretçi aracılığıyla veya başka bir şeyle iletin mi? Şu ana kadar hata mesajlarını en aza indirebildim: "'high' - parametre dönüştürmeye izin verilmez" ve "'high' - sabit değişken referans olarak geçirilemez" işlev çağrımın bir diziyle aynı dizesinde OnCalculate'den argüman. Umutsuz mu yoksa bir çözüm var mı?

OnCalculate'deyken yüksekten başka bir diziye kopyalamaya başvuruyorum:

 ArrayCopy (CopyOfHigh,high, 0 , 0 , WHOLE_ARRAY );
ve ardından yüksek diziyi doğrudan kullanmak yerine ExtFunc'ta CopyOfHigh'ı kullanın.