MQL4 ve MQL5 ile ilgili herhangi bir acemi sorusu, algoritmalar ve kodlar hakkında yardım ve tartışma - sayfa 1687

 
Peki ya endeksleriniz ve iade edilen sipariş miktarı. Birkaç sipariş oluşturun ve bunlar arasında dolaşın. Geçiş bir dizi aracılığıyla olmayacak, ancak OrdersTotal tarafından normal bir işlev olarak döndürülecek bir sayı olacaktır, adresi siparişlerin depolandığı dizi dizinine döndürmez.
 

Dizi boyutu , dizi öğelerinin (veya örneğin siparişlerin) sayısıdır.

ilk elemanın indeksi 0, her zaman,

sonuncusu dizinin boyutundan bir küçüktür.


Tek elemanlı bir dizi oluşturmak istiyorsanız, bu elemana yalnızca arr[0] ile erişebilirsiniz. Diğer tüm durumlarda, bir sınır dışı dizi hatası alırsınız.

Emirlerde de hata yoktur, ancak aksi takdirde ilk öğeye (düzene) ulaşamazsınız.

 
Документация по MQL5: Операции с массивами
Документация по MQL5: Операции с массивами
  • www.mql5.com
Операции с массивами - Справочник MQL5 - Справочник по языку алгоритмического/автоматического трейдинга для MetaTrader 5
 
OrdersTotal'ın yalnızca miktarı verdiğini ve siparişe erişmek içinOrderSelect'i kullandığımızı anlıyorum ve şimdi zaten dizi üzerinde yineleniyor. Bu anı özledim.
 
Evet doğru. Sipariş Seçimi (0,


 
Nerd Trader dizi dizinine döndürmez.

Numaraya göre değil, ticaret hesabınızın emir listesine göre geçiyorsunuz! Ve sipariş sayısı sadece bir sayı.. onu geçemezsiniz.. 100 sayısını nasıl geçersiniz? Olmaz.. Ve 100 satırın olduğu listeye göre her satırın geçişini yapabilirsiniz.

OrdersTotal() işlevi tarafından döndürülen sayı bir asal sayıdır, ANCAK DAİMA listedeki sipariş sayısıyla aynı olacak şekilde tasarlanmıştır.

Her zaman sadece 1 siparişiniz olduğunu biliyorsanız, o zaman herhangi bir OrdersTotal() olmadan "0" sipariş numarasıyla çalışmanız yeterlidir...

 
Nikolay Ivanov # :

Numaraya göre değil, ticaret hesabınızın emir listesine göre geçiyorsunuz! Ve sipariş sayısı sadece bir sayı.. onu geçemezsiniz.. 100 sayısını nasıl geçersiniz? Olmaz.. Ve 100 satırın olduğu listeye göre her satırın geçişini yapabilirsiniz.

OrdersTotal() işlevi tarafından döndürülen sayı bir asal sayıdır, ANCAK DAİMA listedeki sipariş sayısıyla aynı olacak şekilde tasarlanmıştır.

Her zaman sadece 1 siparişiniz olduğunu biliyorsanız, o zaman herhangi bir OrdersTotal() olmadan "0" sipariş numarasıyla çalışmanız yeterlidir...

Alexey Stepanenko # :

Dizi boyutu , dizi öğelerinin (veya örneğin siparişlerin) sayısıdır.

ilk elemanın indeksi 0, her zaman,

sonuncusu dizinin boyutundan bir küçüktür.


Tek elemanlı bir dizi oluşturmak istiyorsanız, bu elemana yalnızca arr[0] ile erişebilirsiniz. Diğer tüm durumlarda, bir sınır dışı dizi hatası alırsınız.

Emirlerde de hata yoktur, ancak aksi takdirde ilk öğeye (düzene) ulaşamazsınız.

Evet bu doğru.
 
Nerd Trader OrderSelect'i kullandığımızı anlıyorum ve şimdi zaten dizi üzerinde yineleniyor. Bu anı özledim.

Bir dizi (liste) bir LOOP boyunca yinelenir. VeOrderSelect , yalnızca bu döngüde seri numarası oluşturulan siparişi daha sonraki işler için seçer.

Документация по MQL5: Торговые функции / OrderSelect
Документация по MQL5: Торговые функции / OrderSelect
  • www.mql5.com
OrderSelect - Торговые функции - Справочник MQL5 - Справочник по языку алгоритмического/автоматического трейдинга для MetaTrader 5
 
Nerd Trader dizi dizinine döndürmez.
Mesele şu ki, handikap uygun çünkü pozisyon sayısını vererek herhangi bir diziyi doldurabilir. 0 beslenirse benim için her şey bozulur, çünkü ArrayResize konum sayısına bağlıdır. Bu nedenle, pozisyon sayısı 0'dan büyükse ek bir şartım var, o zaman bu döngü. Ben de bununla sürekli kafam karışıyor, şimdi her şeyi tekrar kontrol ettim. Doğru tavsiyede bulunurlar, çünkü aksi takdirde ön kısım, ön kısmın gerekli olduğu dizinin sıfır elemanını doldurmaz.
 
Harika arkadaşlar, bir fikir birliğimiz var.