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
Igor! Bana söyler misin? Göstergeden ( iMA ) bir şey Uzman Danışmana 4 ondalık basamakla geliyor, ancak çalışmak için 5'e ihtiyacınız var!? NormalizeDouble(iMA,Digits) denedim - hala 4 basamak. 5 basamak elde etmek için tüm göstergeyi bir Uzman Danışmanın alt rutin işlevine yeniden yazmak gerçekten gerekli mi?!!!
Yardım: Uyarı(), Yorum(), Yazdır()
Çift veri, noktadan sonra 4 ondalık basamakla verilir.
Sayıları daha hassas bir şekilde görüntülemek için DoubleToStr() işlevini kullanın.
İyi akşamlar,
Pozisyonların doğru kapanmasıyla baş edemiyorum. Koşullara göre iki kapanış koşulu vardır: 1. bir pozisyon açıksa; 2. iki (veya daha fazla) pozisyon açıksa. Her iki durumda da parti hacmi = 0.03. İlk durumda, lot 0.01'de ayrı ayrı kapatılır (yukarıdaki gönderilerde çalışıldı). İkinci durumda, iki lotun her ikisi de 0,03'te kapanmalıdır. Buna göre, eğer:
sonra ilk kapatma seçeneği ve eğer:
sonra diğeri (benim versiyonumda (başlangıçta) her iki pozisyonun kâr toplamı > 0 ise, o zaman her iki pozisyon da kapatılmalıdır). Şuna benziyor:
Aslında, her iki lotu da kapatma koşulları göründüğünde, ilkinin tamamen kapandığı ve ikincisinin BuyTotalOp==1 kapatma koşullarını "üstlendiği" ve kendi koşullarına göre kapandığı ortaya çıkıyor.
Kapanış koşullarında neyin yanlış olduğunu ve her iki partiyi aynı anda kapanmaya nasıl zorlayacağınızı söyleyin? Şimdiden teşekkürler.
sinekleri pirzolalardan ayırın.. bazı faydalı fonksiyonlar yazın..
örneğin, açık emirlerin sayısını emir tipine göre sayma, emir tipine göre kapatma emirleri vb.
o zaman her şey daha kolay olacak.
aksi halde yeterince yeriniz yok } ve tam olarak ne yapıldığı genellikle belirsiz hale geliyor .. aynı anda siparişlerin sayısını saymaya ve onları hemen silmeye mi çalışıyorsunuz, yoksa ne? bekleyen siparişler, varsa kodu kesmek yerine atlamak mantıklı olabilir mi?
iyi bir seçenek, verilen koşullara göre, onları kapatabileceğiniz açık siparişlerin parametreleriyle bir dizi oluşturacak bir işlev olacaktır .. genel olarak yapı üzerinde çalışın ..
Teşekkürler keekkenen, son zamanlarda bir dizi oluşturmayı düşünüyordum. Onunla hiç çalışmadım ve daha basit bir çözüm olduğunu, zaten "göz kırpan" bir görünüme sahip olduğumu ve yeni gözleri olan birinin baktıktan sonra "evet, Noel ağaçları, ama nerede böyle ve böyle" diyeceğini umdum. bir hesap...." Sonuçta, bir döngüdeki tüm satın alma siparişlerinin bir sayısı vardır:
ve OrderClose onları takip etmiyor ...
Evet, bu açıkça "aşırı bilgelik" .......Ve dürüst olmak gerekirse, bunu anlamıyorum.
ve bu, özellikle partinin 3'e bölünmesi ?? Sipariş açıldığı gibi aynı lot ile kapatılır.
neden her iki durumda da olmasın?
neden her iki durumda da olmasın?
CloseTicketCl = OrderTicket () genel olarak bunu yapabilirsiniz...
ve bu, özellikle partinin 3'e bölünmesi ?? Sipariş açıldığı gibi aynı lot ile kapatılır.
Ans = OrderClose ( CloseTicketCl , LotCloseBuy / 3 , Bid , 0 , Red ) ; // Закрытие Buy
aynı değil. Partinin üçte biri kapandı (koşullardan birine göre - fiyatın +150 puana ulaştığını varsayalım). İkinci üçte biri, örneğin açılıştan +300 pp olduğunda vb. kapanacaktır.
Ve dürüst olmak gerekirse, bunu anlamıyorum.
Ans = OrderClose ( CloseTicketCl , Lots , Bid , 0 , Red ) ; // Закрытие Buy
burada Çok ve OrderLots() evet, aynı şey.hayır, bu işe yaramaz.. bir sipariş - bir lot, lot 3 ile bir sipariş açarsanız, lotu istediğiniz gibi bölemezsiniz - önce 1, sonra 1 ve sonra 1 - sipariş tamamen kapanır , yani sipariş açılan lot ile kapatılır, siparişleri parça parça kapatamazsınız..