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
DistMarketAndPos() işlevi.
İyi! Daha ilginç özellikler alalım! Örneğin, piyasa ile en yakın konum arasındaki nokta cinsinden mesafeyi döndüren. Kontrol edilen konumların daha doğru seçimi, harici parametreler tarafından belirlenir:
DistMarketAndPos() işlevi.
İyi! Daha ilginç özellikler alalım! Örneğin, piyasa ile en yakın konum arasındaki nokta cinsinden mesafeyi döndüren. Kontrol edilen konumların daha doğru seçimi, harici parametreler tarafından belirlenir:
Sevgili Igor Kim, bu çok iyi bir işlev, onu ileri geri çalıştırmaya çalışıyorum ve onunla ileri geri emirler açmaya çalışıyorum, bir hatam var, ondan kurtulamıyorum, düzeltmeme yardım et. aşağıdaki hata yorumu
harici int TakeProfit = 150;
harici çift Parti = 0.01;
harici int MAGIC=1234;
int başlangıç()
{
if (DistMarketAndPos()>150)
{
OrderSend(Symbol(),OP_BUY,Lot,Ask,3,0,Ask+TakeProfit*Puan);
}
dönüş(0);
}
int DistMarketAndPos(dize sy="", int op=OP_BUY, int mn=-1)
{
çift d,p;
int i, k=SiparişToplam(), r=1000000;
if (sy=="" || sy=="0") sy=Symbol();
p=MarketInfo(sy, MODE_POINT);
if (p==0) if (StringFind(sy, "")<0) p=0.00001; başka p=0.01;
(i=0; i<k; i++) için
{
if ( OrderSelect (i, SELECT_BY_POS, MODE_TRADES))
{
if ((OrderSymbol()==sy) && (op<0 || OrderType()==op))
{
if (mn<0 || OrderMagicNumber()==dk)
{
if (OrderType()==OP_BUY)
{
d=MathAbs(MarketInfo(sy, MODE_ASK)-OrderOpenPrice())/p;
if (r>d) r=NormalizeÇift(d, 0);
}
if (OrderType()==OP_SEL)
{
d=MathAbs(OrderOpenPrice()-MarketInfo(sy, MODE_BID))/p;
if (r>d) r=NormalizeÇift(d, 0);
}
}
}
}
}
//------------------------------------------------ -------------------------------------------------- --------------------------------------------------
if (DistMarketAndPos()>150)
{
OrderSend(Symbol(),OP_SELL,Lot,Ask,3,0,Ask-TakeProfit*Puan);
}
dönüş(0);
{
int DistMarketAndPos(string sy="", int op=OP_SELL, int mn=-1) //bu satır 1 hata veriyor,
// bu satır kaldırılırsa,
//sonra derler ama sonra
//op=OP_SELL ayarlamayacağım,
// ve onsuz, danışman düşünecek
// hesaplamanın sırası nedir
//mesafe - OP_BUY
if (sy=="" || sy=="0") sy=Symbol();
p=MarketInfo(sy, MODE_POINT);
if (p==0) if (StringFind(sy, "")<0) p=0.00001; başka p=0.01;
(i=0; i<k; i++) için
{
if (OrderSelect(i, SELECT_BY_POS, MODE_TRADES))
{
if ((OrderSymbol()==sy) && (op<0 || OrderType()==op))
{
if (mn<0 || OrderMagicNumber()==dk)
{
if (OrderType()==OP_BUY)
{
d=MathAbs(MarketInfo(sy, MODE_ASK)-OrderOpenPrice())/p;
if (r>d) r=NormalizeÇift(d, 0);
}
if (OrderType()==OP_SEL)
{
d=MathAbs(OrderOpenPrice()-MarketInfo(sy, MODE_BID))/p;
if (r>d) r=NormalizeÇift(d, 0);
}
}
}
}
}
dönüş(r);
dönüş(r);
}
}
//------------------------------------------------ -------------------------------------------------
TEŞEKKÜR EDERİM
Sevgili Igor Kim, bu çok iyi bir işlev, onu ileri geri çalıştırmaya çalışıyorum ve onunla ileri geri emirler açmaya çalışıyorum, bir hatam var, ondan kurtulamıyorum, düzeltmeme yardım et. aşağıdaki hata yorumu
TEŞEKKÜR EDERİM
Denemek:
Ve burada sorularla ...
MovingInWL() işlevi.
Çalışmayan işlevlerin neden gönderildiğini açıklayan var mı?
'LevelWLoss' - bildirilmemiş tanımlayıcı
'LevelProfit' - bildirilmemiş tanımlayıcı
'ModifyOrder' - işlev tanımlı değil
'LevelWLoss' - bildirilmemiş tanımlayıcı
'LevelProfit' - bildirilmemiş tanımlayıcı
'ModifyOrder' - işlev tanımlı değil
6 hata(lar), 0 uyarı(lar)
ve bu işlevin kendi içinde
Çalışmayan işlevlerin neden gönderildiğini açıklayan var mı?
'LevelWLoss' - bildirilmemiş tanımlayıcı
'LevelProfit' - bildirilmemiş tanımlayıcı
'ModifyOrder' - işlev tanımlı değil
'LevelWLoss' - bildirilmemiş tanımlayıcı
'LevelProfit' - bildirilmemiş tanımlayıcı
'ModifyOrder' - işlev tanımlı değil
6 hata(lar), 0 uyarı(lar)
ve bu işlevin kendi içinde
İşlev çalışıyor, ancak danışman koduna eklenmesi gereken ModifyOrder işlevini çağırıyor ve LevelWLoss ve LevelProfit değişkenleri de danışmana eklenmelidir, bunun gibi bir şey
harici int LevelProfit = 1000;
harici int SeviyeWKayıp = 50;
Bu forum başlığı için çok teşekkür ederim. Özellikler için lurii Tokman'a çok teşekkürler. Şahsen, onu neredeyse Stroustrup ile eşitlemeye hazırım.
Teşekkür ederim!
GetAmountLotFromOpenPos() işlevi.
Bu işlev, birçok açık pozisyonun toplamını döndürür. Dikkate alınacak pozisyonların daha doğru seçimi harici parametreler tarafından belirlenir:
dönmüyor!!!
ne yaparsam yapayım, ya sıfırlar ya da "olay işleme işlevi bulunamadı 4.mq4 1 1
"
Bu forum başlığı için çok teşekkür ederim. Özellikler için lurii Tokman'a çok teşekkürler. Şahsen, onu neredeyse Stroustrup ile eşitlemeye hazırım.
Teşekkür ederim!