Alım-satım fırsatlarını kaçırıyorsunuz:
- Ücretsiz alım-satım 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
İki dizi oluşturuyoruz. Biri bilet numarasına göre, ikincisi fiyata göre. Ardından bilet numaralarını taşırken (bağlantıyı kesmeden) diziyi fiyata göre sıralıyoruz. Ardından dizinin bir ucundan en küçük fiyat, diğerinden en yüksek fiyat olacaktır. Aşırı emirlerinden birini değiştirmeye devam ediyor.
Sayesinde.
Pratik olarak henüz dizilerle çalışmadı.
Örneğin, 10 BYSTOP siparişim var. Kurulumları için fiyatları belirledim:
Daha sonra, 1. sıra şu anki değere en yakın olacak şekilde bir dizi kurulum fiyatı belirledim. fiyat
int Fiyat Dizisi = {fiyat1,fiyat2,fiyat3,fiyat4,fiyat5,fiyat6,fiyat7,fiyat8,fiyat9,fiyat10 }
Ve biletlerle nasıl bir dizi oluşturulacağı benim için net değil. Bilet siparişi nereden alabilirim?
benzer nedir
Kod test edilmediGörünüşe göre işlev şöyle çalışıyor:
MiniMaxOrderPrice(string lSymbol="", int lMagic=-1, int lOP=-1, int reversi=0)
Seçenekler:
lSymbol= - sembol adı ("" - herhangi bir sembol, NULL - geçerli sembol)
lOP=-1- işlem (-1 - herhangi bir sipariş, bizim özel durumumuzda -OP_BUYSTOP )
lMagic=-1 - MagicNumber (-1 - herhangi bir büyü)
//------------------------------------------------ -------------------------------------------------- --
Ancak "int reversi=0" ne anlama geliyor - tam olarak anlamıyorum!
İşlev normal şekilde çalıştı.Belki:
0 - en düşük fiyat
1 - en büyüğü?
//------------------------------------------------ --------------------
Ve bir şey daha, neden fiyat için zararı durdurduk?
Ve neden açılış fiyatını değiştiremiyoruz?
OP_BUYSTOP - Sonuçta, bunlar bekleyen emirlerdir (ve hiç pozisyon değil) ve etkinliğin nihai sonucu, özel olarak seçilmiş bir emrin açılış (aktivasyon) fiyatını değiştirmektir.
Görünüşe göre işlev şöyle çalışıyor:
MiniMaxOrderPrice(string lSymbol="", int lMagic=-1, int lOP=-1, int reversi=0)
Seçenekler:
lSymbol= - sembol adı ("" - herhangi bir sembol, NULL - geçerli sembol)
lOP=-1- işlem (-1 - herhangi bir sipariş, bizim özel durumumuzda -OP_BUYSTOP )
lMagic=-1 - MagicNumber (-1 - herhangi bir büyü)
//------------------------------------------------ -------------------------------------------------- --
Ama "int reversi=0" ne anlama geliyor - tam olarak anlamıyorum!
İşlev normal şekilde çalıştı.Belki:
0 - en düşük fiyat
1 - en büyüğü?
//------------------------------------------------ --------------------
Ve bir şey daha, neden fiyat için zararı durdurduk?
Ve neden açılış fiyatını değiştiremiyoruz?
OP_BUYSTOP - Sonuçta, bunlar bekleyen emirlerdir (ve hiç pozisyon değil) ve etkinliğin nihai sonucu, özel olarak seçilmiş bir emrin açılış (aktivasyon) fiyatını değiştirmektir.
O yüzden istediğiniz fiyatı alın. Erteleyenler için açılış fiyatı. Ben sadece örnek olarak yaptım.
Ve bence, iki boyutlu bir dizi ayarlamak ve ilk boyuta göre sıralamak daha kolay. Orada sırasıyla ihtiyacınız olanı sürün. Senin durumunda, fiyat.
Ve bence, iki boyutlu bir dizi ayarlamak ve ilk boyuta göre sıralamak daha kolay. Orada sırasıyla ihtiyacınız olanı sürün. Senin durumunda, fiyat.
O yüzden istediğiniz fiyatı alın. Erteleyenler için açılış fiyatı. Ben sadece örnek olarak yaptım.
BURADA, diyelim ki 10 adet buystop siparişim var. Sırayla değil, sıra dışı olarak listelenirler.
Şu anda mevcut fiyattan en uzak olan siparişi silmem gerekiyor.
Bu siparişi bulmanın doğru yolu bu mu? -
//***********************************
ps
Fonksiyonu yoruma ekledim.
Comment( MiniMaxOrderPrice(NULL, -1, OP_BUYSTOP, 1 ));
Ancak işlev her zaman "-1" döndürür. Grafikte 5 ila 10 sipariş olmasına rağmen.
bir yerde bir yanlışlık var...
BURADA, diyelim ki 10 adet buystop siparişim var. Sırayla değil, sıra dışı olarak listelenirler.
Şu anda mevcut fiyattan en uzak olan siparişi silmem gerekiyor.
Bu siparişi bulmanın doğru yolu bu mu? -
//***********************************
ps
Fonksiyonu yoruma ekledim.
Comment( MiniMaxOrderPrice(NULL, -1, OP_BUYSTOP, 1 ));
Ancak işlev her zaman "-1" döndürür. Grafikte 5 ila 10 sipariş olmasına rağmen.
bir yerde bir yanlışlık var...
Yorum( MiniMaxOrderPrice("", -1, OP_BUYSTOP, 1 )); // herhangi bir karakter
Yorum( MiniMaxOrderPrice(Symbol(), -1, OP_BUYSTOP, 1 )); // geçerli karakter
TAMAM! Teşekkürler Vinin!
Özellik çalışıyor gibi görünüyor! Şimdi daha fazla araştıracağım!