[ARŞİV!] Forumu kirletmemek için herhangi bir acemi sorusu. Profesyonel, kaçırmayın. Sensiz hiçbir yerde - 4. - sayfa 314
![MQL5 - MetaTrader 5 müşteri terminalinde yerleşik ticaret stratejileri dili](https://c.mql5.com/i/registerlandings/logo-2.png)
Ticaret fırsatlarını kaçırıyorsunuz:
- Ücretsiz ticaret uygulamaları
- İşlem kopyalama için 8.000'den fazla sinyal
- Finansal piyasaları keşfetmek için ekonomik haberler
Kayıt
Giriş yap
Gizlilik ve Veri Koruma Politikasını ve MQL5.com Kullanım Şartlarını kabul edersiniz
Hesabınız yoksa, lütfen kaydolun
Çok boyutlu dizilerle ilk defa uğraşıyorum :)
Çok boyutlu bir diziyi başka bir şey olarak hayal ederseniz, yönlendirme daha kolay olacaktır. Yani: Bir dizi için özünü yansıtan bir model bulursanız, modeli gözünüzün önünde tutmak daha kolay olur.
Tek boyutlu bir dizi, bir çizgi üzerindeki nesnelerdir (sıfırdan başlayan koordinat ışını). Böyle bir diziye örnek olarak bir mağazadaki kuyruk verilebilir. Sıradaki ilk kişi, şimdi satın alan kişinin hemen arkasındaki kişidir. Alıcı, sıradaki ilk kişi olarak adlandırılamaz - satın alır - sıfırdır. Tek boyutlu bir dizinin sıfır hücresinin içinde bulunur.
İki boyutlu bir dizi, bir düzlemdeki nesnelerdir (koordinat düzlemi). Bir örnek bir oditoryum olabilir. Böyle ve böyle bir sıra, böyle ve böyle bir yer. Bu modele bir sıfır satırı ve bir sıfır yeri ekleyin ve iki boyutlu bir dizinin tam bir modelini elde edeceksiniz.
Üç boyutlu bir dizi, uzaydaki nesnelerdir (koordinat alanı) - bir nesnenin koordinatı üç değerle verilir. Kesik kenarları olan bir küp. Model, giriş numarası sıfır, kat numarası sıfır ve daire numarası (diğerlerinin yanı sıra) olan bir konut binası olabilir. Her girişte daire numaralandırmasının sıfırdan başlaması şartıyla.
Dört boyutlu bir dizi, tek boyutlu bir diziye benzer. Bu, tüm noktaları üç boyutlu diziler olan bir koordinat ışınıdır. Model - sokak. Koordinat şu değerlerle verilecektir: ev numarası, giriş numarası, kat numarası, daire numarası.
Ve n-boyutunda - sokaklardan semtlere, şehir semtlerinden, semtlerden şehirlere, şehirlerden ülkelere, ülkelerden gezegenlere...
Açılan siparişin barın herhangi bir anında ve bir sonraki siparişin sadece bir sonraki barda açılabilmesi için nasıl yapıldığını biri açıklayabilir mi?
Siparişler listesinde dolaşın. Bir sonraki emrin açılış zamanı mevcut çubuğun açılış zamanından büyük veya ona eşitse (Zaman[0]), o zaman bu döviz çiftinde emirlerin açılmasını yasaklayan bir bayrak koyarız. Bir sonraki mumda, döngü böyle bir emir olmadığını tespit edecek ve bir yasak koymayacak - yani, açılış emirlerini yasaklamak için bayrağı kaldıracaktır.
Siparişler listesinde dolaşın. Bir sonraki emrin açılış zamanı mevcut çubuğun açılış zamanından büyük veya ona eşitse (Zaman[0]), o zaman bu döviz çiftinde emirlerin açılmasını yasaklayan bir bayrak koyarız.
aaaa çok teşekkür ederim
Kod yalnızca bir döviz çifti için çalışıyorsa, satırdaki diğer çiftler için siparişlerin filtrelenmesini ayarlayın
Kod yalnızca bir döviz çifti için çalışıyorsa, satırdaki diğer çiftler için siparişlerin filtrelenmesini ayarlayın
Yapabilir.
Yapabilir.
bool Times=true;
if (OrdersTotal()>0){
for(int g=OrdersTotal()-1; g>=0; g--){
tarihsaat t;
Sipariş Seçimi (g,SELECT_BY_POS);
if (OrderMagicNumber()!=MagicNumber){devam;}
if (t<OrderOpenTime() || g==OrdersTotal()-1) t=OrderOpenTime();
if (t>=Zaman[0]) Times=false;}}
bu gibi değil mi?
bool Times=true;
if (OrdersTotal()>0){
for(int g=OrdersTotal()-1; g>=0; g--){
tarihsaat t;
OrderSelect(g,SELECT_BY_POS);
if (OrderMagicNumber()!=MagicNumber){devam;}
if (t<OrderOpenTime() || g==OrdersTotal()-1) t=OrderOpenTime();
if (t>=Zaman[0]) Times=false;}}
böyle değil mi?
Numara. Her yinelemede döngü içinde bir değişken bildirmek gerekli değildir.
bool Times=true;
if (OrdersTotal()>0){
for(int g=OrdersTotal()-1; g>=0; g--){
tarihsaat t;
OrderSelect(g,SELECT_BY_POS);
if (OrderMagicNumber()!=MagicNumber){devam;}
if (t<OrderOpenTime() || g==OrdersTotal()-1) t=OrderOpenTime();
if (t>=Zaman[0]) Times=false;}}
bu gibi değil mi?
bool Times=true;
tarihsaat t=Saat[1];
if (OrdersTotal()>0){
for(int g=OrdersTotal()-1; g>=0; g--){
Sipariş Seçimi (g,SELECT_BY_POS);
if (OrderMagicNumber()!=MagicNumber){devam;}
if (t<OrderOpenTime()) t=OrderOpenTime();
if (t>=Zaman[0]) Times=false;}}
bu gibi değil mi?