Forumu kirletmemek için herhangi bir acemi sorusu. Profesyonel, kaçırmayın. Sensiz, hiçbir yerde - 6. - sayfa 756
![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
Kendi arşivleme sistemime alışkınım.
Tünaydın.
Bir egzersiz programı yazdı. Nedense çalışmıyor.
29 Eylül - 15 Ekim tarihleri arasında strateji test cihazında test edilmiştir.
Program şu şekilde çalışmalıdır: bir satın alma yapılır. Fiyat 0.010 düştüğünde, zararla satış gerçekleşmelidir.
Satın alma işlemi devam ediyor. Satış gerçekleşmez. Görselleştirmeyi açıyorum, fiyatın sadece 0,010 değil, aynı zamanda çok daha düşük göründüğünü görüyorum. Garip.
// -------- değişkenler --- Başlangıç -----
dış çift L1=0.01; // satın almak için parti büyüklüğü
dış çift L1n=0.01; // satın almak için parti büyüklüğü (normalleştirilmiş parti)
harici çift AktualAsk=0.0; // geçerli satın alma fiyatı
harici çift AktualBid=0.0; // gerçek satış fiyatı
extern int ticketlackmus=1; // sipariş açma başarısının göstergesi
harici int bilet1=0; // bilet
harici bool PozOtk1=true;
// -------- değişkenler --- Bitiş -----
int init()
{
dönüş(0);
}
int başlangıç()
{
if (PozOtk1==doğru)
{
// Pozisyon açma
bilet bolluğu=1;
while (ticketlackmus>0)
{
Uyarı ("İlk pozisyonun açılması");
Yeniler(); // Veriyi güncelle
AktualAsk=NormalizeÇift(Sor, Rakamlar); //fiyat için
L1n=NormalizeÇift(L1,2); // parti için.
bilet1=OrderSend("GBPUSD", OP_BUY, L1n, AktualAsk, 5, 0, 0, 0, 0, CLR_NONE );
if (ticket1>0) ticketlackmus=-1;
{
Alert("SİPARİŞ AÇIK", bilet1, "", biletsiz);
}
}
PozOtk1=yanlış;
Alert("PozOtk1", PozOtk1);
}
Yeniler(); // Veriyi güncelle
AktualBid=NormalizeDouble(Teklif,Rakamlar); //fiyat için
if (AktualBid<=AktualAsk-0.010 && PozOtk1==yanlış)
{
Yeniler(); // Veriyi güncelle
OrderSelect(bilet1, SELECT_BY_TICKET);
L1n=NormalizeÇift(L1,2); // lot için
SiparişKapat(bilet1, L1n, AktualBid, 5);
PozOtk1=doğru;
}
dönüş(0);
}
int tanım()
{
dönüş(0);
}
Göl.
Lütfen kodu yapıştırırken sihirli SRC düğmesini kullanın:
Kodu foruma doğru şekilde yapıştırın
Belirli bir sembol üzerinde bir pozisyon açılırsa (bu durumda, "GBPUSD"), o zaman bu sembol için tüm verilerin pazarlama bilgileri yoluyla alınması arzu edilir, yani sadece AktualAsk=NormalizeDouble(Ask, Digits ); a AktualAsk=MarketInfo( "GBPUSD" ,MODE_ASK);
Ve bundan kaçınmak için herhangi bir piyasa verisi almalısınız.
Belirli bir sembol üzerinde bir pozisyon açılırsa (bu durumda, "GBPUSD"), o zaman bu sembol için tüm verilerin pazarlama bilgileri yoluyla alınması tavsiye edilir, yani sadece AktualAsk=NormalizeDouble(Ask,Digits); a AktualAsk=MarketInfo( "GBPUSD" ,MODE_ASK);
Ve bundan kaçınmak için herhangi bir piyasa verisi almalısınız.
Teşekkürler Evilive!
Değişiklikler yaptı. Ama satın alma devam etti. Değişikliklerden sonra satış gerçekleşmez. M15'i 30 Eylül 2014'ten Ekim ortasına kadar test edin.
Teşekkürler Evilive!
Değişiklikler yaptı. Ama satın alma devam etti. Değişikliklerden sonra satış gerçekleşmez. M15'i 30 Eylül 2014'ten Ekim ortasına kadar test edin.
OrderClose (ticket1, L1n, AktualBid, 5);