[ARŞİV!] Forumu kirletmemek için herhangi bir acemi sorusu. Profesyonel, kaçırmayın. Sensiz hiçbir yerde - 4. - sayfa 300
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
Beşli ile birlikte olan çocuklar arkadaş canlısıdır. Bak, lütfen şampiyonluk göstergesim. Sıkıştım - karar veremiyorum ...
4'ten beşe çeviri - orada forumda - sessizlik. Kodu şubeye gönderdim - bu sayfada . Açıklama - bir öncekinde.
Sayesinde.
bool isCloseLastPosByTake(string sy="", int op=-1, int mn=-1) {
tarihsaat t;
çift işlem, otp;
int dg, i, j=-1, k=OrdersHistoryTotal();
if (sy=="0") sy=Symbol();
for (i=0; i<k; i++) {
if (OrderSelect(i, SELECT_BY_POS, MODE_HISTORY)) {
if (OrderSymbol()==sy || sy=="") {
if (OrderType()==OP_BUY || OrderType()==OP_SELL) {
if (op<0 || OrderType()==op) {
if (mn<0 || OrderMagicNumber()==dk) {
if (t<SiparişKapatZamanı()) {
t=SiparişKapatZamanı();
j=i;
}
}
}
}
}
}
}
// !!!!!!!!!!!!?????? BURADA BAŞLAYAN KOD SATIRLARININ ANLAMINI AÇIKLAYABİLİR Mİ?
if (OrderSelect(j, SELECT_BY_POS, MODE_HISTORY)) {// İşlem geçmişinin bir sonraki sırası seçilirse, o zaman
dg=MarketInfo(sy, MODE_DIGITS);// dg değişkeni, adı sy değişkeninde olan döviz çifti için rakamın değerini alacaktır.
// sonra, parantezlere doğru bir şekilde öncelik vermeyebilirim, ama aslında şöyle olmalı:
if (dg==0){// rakamlar sıfır ise, o zaman
if(StringFind(OrderSymbol(),"JPY")<0){// siparişin aracının adında bir alt dize bulunursa (yalnızca bu doğru yazılmaz - işlev > 1 değeri döndürebilir)
dg=4;// basamaklar = 4 değerini alır
}
başka{// başka
dg=2;// basamaklar = 2 değerini alır
}
}
ocp=NormalizeDouble(OrderClosePrice(), dg);// emir kapanış fiyatının normalleştirilmesi
otp=NormalizeDouble(OrderTakeProfit(), dg);// siparişin normalleştirilmesi TakeProfit fiyatı
if (ocp==otp) dönüş(Doğru);
}
return(False);// alt programdan "false" değerini döndürme komutu
}
teşekkürler, rakam nedir?
Bir ticaret enstrümanının önemi - ondalık noktasından sonra kaç tane sayıya sahip olduğu.
Bir ticaret enstrümanının önemi - ondalık noktasından sonra kaç tane sayıya sahip olduğu.
yani, 4 basamak olduğunu biliyorsam, kod şu şekilde kısaltılabilir mi?:
int dg = 4;
................kod
if (OrderSelect(j, SELECT_BY_POS, MODE_HISTORY)) {
ocp=NormalizeDouble(OrderClosePrice(), dg);// emir kapanış fiyatının normalleştirilmesiotp=NormalizeDouble(OrderTakeProfit(), dg);// siparişin normalleştirilmesi TakeProfit fiyatı
if (ocp==otp) dönüş(Doğru);
}
dönüş(yanlış);
}
Söyleyin lütfen, işlem sürecine dahil olan tüm çiftler için toplam açık sipariş sayısını sayan bir gösterge var mı?